Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

examples: use proper pyproject.toml setup for all python ones

Abierto
#985 1 comentario 0 reacciones 2 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

@jiwenc-nv ya está trabajando en esto.

Desde el 28/8/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

Partner feedback on #736 (item 5): the Physical AI Developer team copied example code into their own project, hit import failures, and patched their copies with dual-mode import guards. Worth settling a convention rather than leaving each example to pick one.

Two conventions coexist under examples/:

  • mujoco_xr — its own wheel, isaacteleop_examples.mujoco_xr namespace, relative imports, documented as python -m. Copies cleanly.
  • camera_viz and teleop_ros2/python — 21 files import siblings as top-level modules: from pipeline import ..., from sources import ..., from messages import ..., from geometry import .... These resolve only because the script's own directory lands on sys.path.

So the second group breaks under python -m, breaks the moment a file is copied into a package (what the partner hit), and squats on very generic top-level names — pipeline, sources, messages, constants, assets. examples/teleop_ros2/python/pyproject.toml already carries pythonpath = ["."] to keep pytest working around it.

Suggested direction: make both directories real packages with relative imports plus a -m entry point, matching mujoco_xr, and write the convention down for examples. I'd avoid adopting try: from .x / except ImportError: from x guards repo-wide — that doubles every import site to paper over an invocation mistake.

Cross-repo note: huggingface/lerobot's examples/isaac_teleop_to_so101/ uses files(__package__) (common.py:76) and relative imports. Its README documents python -m only, so it works as specified; recording it here for traceability.

Lenguaje dominante
Python
Estrellas
403
Forks
94
Merge medio
2 d 17 min
PR fusionados (30 d)
121

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de NVIDIA/IsaacCapture

Todos los issues de NVIDIA/IsaacCapture

Issues similares

Más issues de Python

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.