Context
The isaacteleop wheel ships compiled modules (oxr, schema, deviceio), so pip install -e does not work for library development. Iterating on pure-Python subpackages (e.g., retargeters/) currently requires an undocumented workaround.
What we do today
Symlink the pure-Python package from a source checkout into site-packages:
rm -rf $VENV/lib/python3.12/site-packages/isaacteleop/retargeters
ln -s ~/src/IsaacTeleop/src/retargeters $VENV/lib/python3.12/site-packages/isaacteleop/retargeters
Branch changes then run live against the installed wheel. It works (we developed and tested PR #727 this way, 99 tests against the real wheel) — but it's fragile, invisible to pip, and tribal knowledge.
Proposal
Any of:
- Document the symlink pattern in a CONTRIBUTING/dev-setup section (cheapest),
- Split pure-Python subpackages so they can be installed editable alongside the binary wheel,
- Provide a
dev-install helper script that sets up the symlinks and verifies import resolution.
Related packaging note
The retargeters extra does not resolve on aarch64; retargeters-lite is the de-facto supported path there. Worth stating in the install docs — aarch64 is a first-class robotics target (Jetson/DGX-class devices).
Part of the field-integration feedback series (SO-101 + reBot DevArm, June 29 – July 6). Priority suggestion: P2.
Context
The
isaacteleopwheel ships compiled modules (oxr,schema,deviceio), sopip install -edoes not work for library development. Iterating on pure-Python subpackages (e.g.,retargeters/) currently requires an undocumented workaround.What we do today
Symlink the pure-Python package from a source checkout into site-packages:
Branch changes then run live against the installed wheel. It works (we developed and tested PR #727 this way, 99 tests against the real wheel) — but it's fragile, invisible to pip, and tribal knowledge.
Proposal
Any of:
dev-installhelper script that sets up the symlinks and verifies import resolution.Related packaging note
The
retargetersextra does not resolve on aarch64;retargeters-liteis the de-facto supported path there. Worth stating in the install docs — aarch64 is a first-class robotics target (Jetson/DGX-class devices).Part of the field-integration feedback series (SO-101 + reBot DevArm, June 29 – July 6). Priority suggestion: P2.