examples(noitom): package under isaacteleop_examples - #1041
Conversation
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Enterprise Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
Comment |
c7b4bc0 to
51d8e55
Compare
51d8e55 to
ca5b2fc
Compare
ca5b2fc to
4bd1afe
Compare
4bd1afe to
d84ed1d
Compare
d84ed1d to
14876ea
Compare
ivany-nv
left a comment
There was a problem hiding this comment.
Read the diff line by line: the only changes are four bare intra-example imports becoming relative, plus the new pyproject.toml and namespace __init__.py. No logic change.
Not installed by install_python_example(), so there is no install tree to check, and I have no Noitom hardware here — but the diff carries nothing runnable that the move could break.
14876ea to
1f376e7
Compare
The three modules imported each other as top-level modules, and the README documented the consequence rather than fixing it: every Isaac Lab command carried `PYTHONPATH=~/IsaacTeleop/examples/noitom:$PYTHONPATH`. Move the tree to the layout in examples/README.md and delete the prefix. The example gains its first pyproject.toml. isaaclab and gymnasium are deliberately not dependencies: noitom_tasks.py runs inside an Isaac Lab environment that already provides them and neither installs from PyPI, so the README now says to install into that interpreter -- `./isaaclab.sh -p -m pip install -e` -- which is what replaces the PYTHONPATH prefix. The task callback becomes isaacteleop_examples.noitom.noitom_tasks.register_tasks. One import was inside a function body and indented, so it needed catching separately from the module-level ones. Part of #985. Signed-off-by: Jiwen Cai <jiwenc@nvidia.com>
1f376e7 to
d87282f
Compare
Description
Part of #985. Stacked on #1040.
The three modules imported each other as top-level modules, and the README documented the consequence rather than fixing it — every Isaac Lab command carried
PYTHONPATH=~/IsaacTeleop/examples/noitom:$PYTHONPATH. This moves the tree to the layout inexamples/README.mdand deletes the prefix.The example gains its first
pyproject.toml.isaaclabandgymnasiumare deliberately not dependencies:noitom_tasks.pyruns inside an Isaac Lab environment that already provides them, and neither installs from PyPI. The README now says to install into that interpreter, which is what replaces thePYTHONPATHprefix:./isaaclab.sh -p -m pip install -e ~/IsaacTeleop/examples/noitomand the callback becomes
--external_callback isaacteleop_examples.noitom.noitom_tasks.register_tasks.One import lived inside a function body, indented, so it needed catching separately from the module-level ones — worth knowing if you review the other trees.
Type of change
Testing
x86_64/ Ubuntu, Python 3.12. Wheel ships the four modules underisaacteleop_examples/noitom/with no namespace__init__.py. An AST sweep of the tree confirms no sibling resolves as a top-level import any more.Not covered, and I cannot cover it: nothing here has a Noitom mocap suit or an Isaac Lab install. The dependency list is inferred from imports, and this example never had one before — a missing runtime dep would only show on the machine with the suit attached. Please run both README paths (the MCAP recording and the Isaac Lab teleop task) before merging.
Checklist
SKIP=check-copyright-year pre-commit run --all-filesgit commit -s) per the DCONo tests: this is a move, and no CI has the hardware.