Skip to content

Fix pixi regressions - #49

Merged
Arcod7 merged 4 commits into
feat-pixifrom
aes/fix-pixi-regressions
Sep 2, 2026
Merged

Fix pixi regressions#49
Arcod7 merged 4 commits into
feat-pixifrom
aes/fix-pixi-regressions

Conversation

@Arcod7

@Arcod7 Arcod7 commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

OP#192

  • trimmed comment
  • removed install,sh
  • fix CI
  • fix project close (don't leave orphans processes behind anymore)

…publishers

`ros2 doctor --report` waits on the middleware, and on the macOS runner
Cyclone picked a virtual interface and failed every multicast write to
239.255.0.1, so the job sat there for the full two hours. Scoping discovery to
localhost gets a report in 9s. Pixi task tables take only cmd/depends-on/
description/args, so there is nowhere to hang env off a task; scripts/
ros_doctor.py sets it and also caps the runtime, so a stuck middleware can
never cost two hours again. The headless launch smoke test ran the same bare
command, so point it at the script too.

tests: the tegra-release probe compared a str() of a Path, which is
backslash-separated on Windows and never matched; compare as posix. Windows
has no POSIX mode bits, so only assert 0o700 where it means something. The two
detect_jetson.sh tests shell out to `bash`, which on Windows resolves to the
WSL launcher — one failed outright and the other passed only because WSL also
exits non-zero. Both are POSIX-only, so skip them honestly.

pixi_lucy_launch: the /joint_states stand-in was started through `ros2 run`,
which leaves the node running when the wrapper is terminated; five of them had
piled up from earlier runs, all publishing stale poses against the live stack.
Run the node directly, and only start it once the real stack has had time to
come up and the topic still has no publisher.
…ate stand-in

install.sh only exec'd install.py, so the wrapper is gone and CI, README, the
developer guide, launch_lucy.sh, Lucy.py and build_local_realsense.sh now call
`python3 install.py` directly. launch_lucy.sh also lost two lines describing a
docker/ tree this branch deleted.

install.py printed em dashes that a cp1252 Windows console turns into mojibake,
and finished by pointing at ./launch_lucy.sh, which does not run on Windows;
there it now names the pixi tasks instead.

The /joint_states stand-in never started: it probed the topic with `ros2 topic
info`, whose daemon inherits the pipe, so capturing the output blocked forever
even after the timeout killed the CLI. Ask the graph directly instead.

repos.json points at the matching fix branches; move it back to feat-pixi / dev
once those merge.

Also shortens the .env.example DDS note and the Windows section of the README,
which claimed the robot follows the sliders and is not driveable in one breath.
The NSIS script still listed install.sh as a fatal File entry, so both Windows
installer jobs failed at makensis with "no files found". My earlier sweep for
references filtered by extension and never looked at .nsi.
The `ros2` CLI runs the node as its own child, so signalling or timing out the
handle you hold orphans it. That one mistake caused five separate bugs on this
branch. Fail the suite on any new `ros2 ...` argv built in this repo, with an
allowlist naming why the two existing ones cannot orphan or block.

Verified it fails: a planted `ros2 run` is reported as file:line.
@Arcod7 Arcod7 self-assigned this Sep 2, 2026
@Arcod7
Arcod7 merged commit 7fb1c99 into feat-pixi Sep 2, 2026
7 checks passed
@Arcod7
Arcod7 deleted the aes/fix-pixi-regressions branch September 2, 2026 08:33
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.

3 participants