Adds presets to environment docs and fix doc build issues#5360
Conversation
Add a new 'Presets' column to all environment tables in the overview documentation page. This shows users which preset values (e.g., newton, physx) are available for each environment when using the presets=... CLI argument. Most environments support the 'newton' and 'physx' presets for switching between simulation backends. Environments without preset support show an empty cell.
The gymnasium package (v1.3.0) has a circular import issue in its __init__.py that prevents autodoc from importing any module that depends on it. This caused 55 warnings during doc builds: - 27 autodoc import failures (isaaclab.envs, isaaclab_mimic, isaaclab_rl.sb3) - 12 autosummary import failures - 9 'don't know which module' warnings (downstream of datagen import failure) - 2 toctree warnings (orphaned rst files from failed autosummary generation) Adding 'gymnasium' to autodoc_mock_imports resolves all warnings, consistent with the existing approach for other heavy dependencies (torch, numpy, scipy, etc.).
Greptile SummaryThis PR adds a "Presets" column to all environment overview tables and the RL task list-table in One documentation consistency concern: the overview grid tables group manager-based and direct environment variants in the same row, so a single Confidence Score: 5/5Safe to merge — documentation-only changes with a minor table annotation inconsistency that does not break functionality. All changes are documentation updates. The docs/source/overview/environments.rst — verify whether direct environment variants (e.g., Isaac-Franka-Cabinet-Direct-v0, Isaac-Velocity-Flat-Anymal-C-Direct-v0) actually support newton/physx presets to reconcile the overview and RL tables. Important Files Changed
Flowchart%%{init: {'theme': 'neutral'}}%%
flowchart TD
A[environments.rst] --> B[Overview Grid Tables]
A --> C[RL Task list-table]
B --> D["Classic / Manipulation /\nFactory / Locomotion /\nNavigation / Others tables"]
D --> E["Add 'Presets' column\n(newton, physx where applicable)"]
C --> F["Add 'Presets' column\nto existing list-table"]
G[conf.py] --> H["Add 'gymnasium' to\nautodoc_mock_imports"]
H --> I["Fixes Sphinx build errors\nwhen gymnasium not installed"]
Reviews (1): Last reviewed commit: "Fix Sphinx build warnings by adding gymn..." | Re-trigger Greptile |
| | |cabi-franka| | |cabi-franka-link| | Grasp the handle of a cabinet's drawer and open it with the Franka robot | ``newton``, ``physx`` | | ||
| | | | | | | ||
| | | |franka-direct-link| | | | | ||
| +-------------------------+------------------------------+-----------------------------------------------------------------------------+-----------------------+ | ||
| | |cube-allegro| | |cube-allegro-link| | In-hand reorientation of a cube using Allegro hand | ``newton``, ``physx`` | | ||
| | | | | | | ||
| | | |allegro-direct-link| | | | |
There was a problem hiding this comment.
Preset annotation spans multiple env variants — may mislead users
The overview table rows group manager-based and direct environments together, so the newton, physx preset annotation in the rightmost cell visually implies it applies to all environment IDs in that row. However, the RL task table below contradicts this for several environments:
- Row for
|cabi-franka|(lines 130-132): includes|franka-direct-link|(Isaac-Franka-Cabinet-Direct-v0) withnewton, physx, but the RL table (line 953) leaves its Presets column empty. - Row for
|cube-allegro|(lines 134-136): includes|allegro-direct-link|, butIsaac-Repose-Cube-Allegro-v0andIsaac-Repose-Cube-Allegro-NoVelObs-v0show no presets in the RL table. - Locomotion rows for Anymal C (flat/rough) include
|velocity-flat-anymal-c-direct-link|/|velocity-rough-anymal-c-direct-link|, butIsaac-Velocity-Flat-Anymal-C-Direct-v0andIsaac-Velocity-Rough-Anymal-C-Direct-v0show no presets in the RL table.
If the direct variants of these environments genuinely do not support newton/physx presets, the overview table is misleading. Consider splitting those rows or adding a note clarifying which variant the preset applies to.
There was a problem hiding this comment.
🤖 Isaac Lab Review Bot
Summary
This PR adds a "Presets" column to all environment documentation tables showing which environments support newton/physx backend presets, and fixes Sphinx build warnings by adding gymnasium to autodoc_mock_imports. The implementation is correct and well-executed.
Architecture Impact
No cross-module impact — both changes are documentation-only. The gymnasium mock addition follows the existing pattern used for other heavy dependencies (torch, numpy, scipy, etc.) and prevents autodoc from attempting to import gymnasium during doc builds.
Implementation Verdict
Ship it — Clean documentation update with no issues found. The presets column provides useful information about backend flexibility, and the gymnasium mock fix addresses a real build warning issue.
Test Coverage
Not required — This is a pure documentation change. The changes do not affect runtime behavior, and the doc build passing in CI validates the changes work correctly.
CI Status
All checks passing ✅
- pre-commit: pass
- license-check: pass
- Build Latest Docs: pass
- Check for Broken Links: pass
Findings
No issues found. The PR is well-structured:
-
docs/conf.py (line 189): The addition of
"gymnasium"toautodoc_mock_importsis consistent with the existing pattern and correctly resolves the circular import issue in gymnasium v1.3.0 that was causing 55+ warnings during doc builds. -
docs/source/overview/environments.rst: The new "Presets" column is consistently applied across all environment tables, correctly uses RST table formatting, and accurately indicates which environments support
newtonandphysxpresets.
Note: The commit messages are clear and well-documented, explaining both the what and why of each change.
Grid tables: Add ovphysx for Direct classic envs, renderer presets (newton_renderer, ovrtx_renderer) for camera-based envs, and full camera/resolution presets for Shadow Hand Vision and Dexsuite. List-table (Table 12): Add complete preset names per environment: - Direct classic: newton, physx, ovphysx - Camera showcase: newton_renderer, ovrtx_renderer, isaacsim_rtx_renderer - Shadow Hand Vision: physics + renderer + all camera data types - Dexsuite: physics + scene + renderer + all resolution variants (rgb/depth/albedo/semantic_segmentation/simple_shading at 64/128/256)
Replace the four individual cartpole camera environment entries (Isaac-Cartpole-RGB-v0, Isaac-Cartpole-Depth-v0, Isaac-Cartpole-RGB-Camera-Direct-v0, Isaac-Cartpole-Depth-Camera-Direct-v0) with the new unified Isaac-Cartpole-Camera-Presets-Direct-v0 task. The new task selects camera data type via the preset system (presets=rgb, presets=depth, presets=albedo, etc.) rather than requiring separate registered environments per data type. Grid table: Single row with all available presets listed. List-table: Single entry with complete preset names.
Replace 78 absolute GitHub links (github.com/isaac-sim/IsaacLab/blob/main/...) with relative paths (../../../source/...) so links work on any branch without depending on files existing on main.
…5360) # Description Adds a new column to the environments list with available presets defined for all example environments. Fixes recent doc build errors. ## Type of change - Documentation update ## Checklist - [x] I have read and understood the [contribution guidelines](https://isaac-sim.github.io/IsaacLab/main/source/refs/contributing.html) - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with `./isaaclab.sh --format` - [x] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [ ] I have added tests that prove my fix is effective or that my feature works - [ ] I have updated the changelog and the corresponding version in the extension's `config/extension.toml` file - [ ] I have added my name to the `CONTRIBUTORS.md` or my name already exists there <!-- As you go through the checklist above, you can mark something as done by putting an x character in it For example, - [x] I have done this task - [ ] I have not done this task --> --------- Co-authored-by: Kelly Guo <kelly@nvidia.com>
Description
Adds a new column to the environments list with available presets defined for all example environments.
Fixes recent doc build errors.
Type of change
Checklist
pre-commitchecks with./isaaclab.sh --formatconfig/extension.tomlfileCONTRIBUTORS.mdor my name already exists there