Deprecate IO descriptors - #7042
Conversation
Mark IO descriptor APIs and CLI options for removal in Isaac Lab 3.2 while preserving their compatibility behavior.\n\nRemove the deployment tutorial and generated YAML examples so new users are directed toward LEAPP where supported.
Greptile SummaryDeprecates the stable and Warp-specific IO descriptor APIs ahead of removal in Isaac Lab 3.2 while preserving their compatibility behavior.
Confidence Score: 5/5The PR appears safe to merge, with descriptor compatibility and Warp runtime metadata behavior preserved throughout the deprecation window. Public descriptor use now emits a warning while internal collection retains the previous output behavior, and normal Warp initialization continues to read dimension metadata directly without entering deprecated export paths. Important Files Changed
Reviews (1): Last reviewed commit: "Deprecate IO descriptors" | Re-trigger Greptile |
There was a problem hiding this comment.
Isaac Lab Review Bot
The deprecation preserves IO descriptor behavior while adding FutureWarning emissions at public collection and export boundaries. Documentation, CLI help, and package changelog fragments consistently identify the Isaac Lab 3.2 removal target and LEAPP migration path.
- Design and architecture: The public warning/private collector split avoids duplicate warnings during nested environment-to-manager collection. Stable and Warp-first paths remain aligned, while Warp output-dimension metadata is explicitly retained for runtime buffer planning.
- API: Existing descriptor return structures, export behavior, and the
--export_io_descriptorsflag remain available during the deprecation window. A non-blocking compatibility tradeoff is that environment exports now call private manager collectors directly, so downstream subclasses overriding only the public descriptor property will no longer customize that path. - Implementation: The stable and experimental environment collectors resolve to corresponding action and observation manager helpers, preserving the prior formatting and YAML generation logic. Warning stack levels point to external callers, and the removed tutorial, toctree entry, and referenced generated YAML examples were deleted together.
No blocking issues. No inline issue met the actionable-evidence threshold; the assessment above records the review feedback.
Automated review; human maintainers own approval decisions.
| class GenericActionIODescriptor: | ||
| """Generic action IO descriptor. | ||
|
|
||
| .. deprecated:: 3.0 |
There was a problem hiding this comment.
Can't we just deprecate it altogether without warning, and just keep it in the migration guide?
There was a problem hiding this comment.
It should only warn if the users collect the descriptors and the docstring lets the users know this is getting removed. It feels like the right balance to me.
|
are we sure nobody is using these? I think Isaac Sim team might still be depending on the IO descriptors for their policy deployment work. |
|
@kellyguo11 it's not removing them, just removing them from the doc, and pushing folks to use Leapp instead! |
Description
Deprecate IO descriptors in Isaac Lab 3.0 ahead of their removal in Isaac Lab
3.2.
This change:
FutureWarningfrom public descriptor collection/export entrypoints;--export_io_descriptorstraining option as deprecated;Warp observation-dimension metadata remains temporarily because the Warp
frontend still consumes it for runtime buffer planning. LEAPP does not yet
replace that Warp-first path.
Type of change
Screenshots
Not applicable.
Verification
./isaaclab.sh -f./isaaclab.sh -dNo deprecation-specific tests were added; the public behavior remains available
during the deprecation window.
Checklist
./isaaclab.sh -fCONTRIBUTORS.md