Skip to content

Add CI/CD pipelines - #2

Merged
evan-palmer merged 4 commits into
mainfrom
ci/github-actions
Sep 1, 2026
Merged

Add CI/CD pipelines#2
evan-palmer merged 4 commits into
mainfrom
ci/github-actions

Conversation

@evan-palmer

Copy link
Copy Markdown
Member

This PR adds some CI/CD pipelines and templates.

evan-palmer and others added 4 commits September 1, 2026 13:50
Adds three GitHub Actions workflows plus a pre-commit config:

- format.yml: pre-commit gate (house convention), Python 3.14
- ci.yml: Ruff lint/format check pinned to 0.16.5, and uv.lock freshness
- release.yml: on a `v*` tag push, verifies the tag matches the
  pyproject version, builds sdist+wheel, and creates a GitHub Release
  with auto-generated notes (tags containing `-` marked prerelease)
- dependabot.yml: weekly github-actions updates

Supporting changes:

- Move `jax[cuda]` into a `cuda` extra so the base install is CPU-only;
  document `lrax[cuda]` in the README
- Declare `tqdm`, which trainer.py imports but only resolved transitively
- Fix UP045 in envs/mjx.py, a docstring typo in trainer.py, and a
  codespell hit in the README; ignore `statics` (Equinox jargon)
- Extend .gitignore with dist/ and .ruff_cache/

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018a38TsYHunZKi4F8smG6JQ
lrax/common/envs/mjx.py was three thin pass-throughs over mujoco.mjx
(load_model / reset / step), not re-exported from envs/__init__.py, not
imported anywhere, and with signatures that don't match the AbstractEnv
interface. Drop the module, the `mjx` optional extra, and the README
section. Reintroduce a `mujoco-mjx` dependency when there is an actual
AbstractEnv subclass backed by MJX to justify it.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018a38TsYHunZKi4F8smG6JQ
The envs/ subpackage held only env.py after the MJX removal. Move it to
lrax/common/env.py and update the five relative imports (algorithm.py,
trainer.py, ppo.py, sac.py, shac.py) and the README example.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018a38TsYHunZKi4F8smG6JQ
Mirrors the lab-standard templates from fiber / the rdml repos: a
PULL_REQUEST_TEMPLATE.md and bug-report / feature-request / documentation
issue forms with blank issues disabled. The bug report's environment
prompt is adapted to ask for lrax / Python / JAX versions and CPU vs GPU
rather than the ROS runtime details.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018a38TsYHunZKi4F8smG6JQ
@evan-palmer evan-palmer self-assigned this Sep 1, 2026
@evan-palmer
evan-palmer merged commit 2fb51bb into main Sep 1, 2026
3 checks passed
@evan-palmer
evan-palmer deleted the ci/github-actions branch September 1, 2026 21:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant