isaac-sim / IsaacLab

Unified framework for robot learning built on NVIDIA Isaac Sim
https://isaac-sim.github.io/IsaacLab
Other
2.1k stars 851 forks source link

[Proposal] Move lab_tasks gym registrations out of __init__.py #668

Open davis-openai opened 3 months ago

davis-openai commented 3 months ago

Proposal

Instead of relying on the recursive import of import_packages() in lab_tasks extension make a registry module that imports environments and registers them. Users should build environments anywhere but would register them all in the same file rather than in various places throughout the extension.

Motivation

By relying on recursive imports through the top level init.py it's not possible to import individual modules from the lab_tasks extension. For instance, if I want to extend an environment in my own extension I have to import the entire lab_tasks extension rather than the specific pieces I need.

Alternatives

Checklist

Acceptance Criteria

animesh-garg commented 3 months ago

this is a very useful suggestion. Thanks @davis-openai

@Mayankm96 @Dhoeller19 This change in import structure would enable lower overhead in users extending existing envs. Thoughts?