Migrate to using pixi for ROS2 environment#90
Open
Ryan4253 wants to merge 7 commits into
Open
Conversation
16d6f4f to
a59b3cc
Compare
b0f2034 to
292c351
Compare
733c840 to
9d09dcd
Compare
113bb2d to
cb965f1
Compare
d3a075f to
b8d79b9
Compare
77849ce to
15849ce
Compare
8d9f2f6 to
302d6c3
Compare
15849ce to
f1c3ce1
Compare
Replace the Dockerfile, docker-build workflow and apt bootstrap with a pixi-managed environment (pyproject + pixi.lock). Update justfile, .envrc, VS Code settings, pyrightconfig generation, vectornav CMakeLists and the CI runner setup to use pixi/just. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
pixi pins Python 3.11, so use stdlib datetime.UTC and typing.assert_never in place of datetime.timezone.utc and typing_extensions.assert_never, and drop the python3-typing-extensions dependency. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
robostack-humble only ships tf2_ros/*.h; the .hpp variants are not added until ROS 2 Jazzy. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…Union ctypes.LittleEndianUnion (Python 3.11+) overlays the raw register value on the bitfield struct directly, replacing the from_buffer_copy/from_uint16 helper. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
The ubuntu/macos matrix was added for the pixi migration; a failing leg should not cancel the other, and per-job timeouts kill a hung build instead of letting it run to the 6h default. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Contributor
Contributor
|
/j i'm sure it's a lock file |
hardy-ethan
requested changes
Jul 7, 2026
| log(f"Repo root: {ROOT}") | ||
|
|
||
| def configure_shell() -> None: | ||
| if Path(os.environ.get("SHELL", "/bin/bash")).name == "zsh": |
Contributor
There was a problem hiding this comment.
unset shell == bash? if the idea is that it should be zsh or <something else>, this should use the single argument overload of .get
Member
Author
|
@hardy-ethan which changes in the list do you think is non port related? From my perspective all the changes are pixi-related so I'd rather keep them in one commit in the future to make reverting easy if needed. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.


Closes #37
What has changed
Migrate software stack to pixi. Motivation can be found here. Related environment setup PR: umigv/nav-environment#6
Detailed list of changes:
Dockerfile,tooling.apt, and update relevant toolingLittleEndianUnion,assert_never, field type annotations, UTC).hheaders for tf2 since the Humble version on pixi doesn't support.hppheaders. It will be supported in Jazzyfind_packagefor GeographicLib since pixi ships a newer version that supports itplaysoundtoplaysound3for e-stop warning as it is a more modern alternativeTesting plan