Skip to content

Conversation

@hougantc-nvda
Copy link
Contributor

Description

Updating to IsaacSim 6.0 requires additional changes for Teleop support without which Teleop would error out.

  • Fixed URDF importer extension version pinning logic to support Isaac Sim 6.0 by only pinning the older version for Isaac Sim 5.1-5.x.
  • Updated XR bundle extension from omni.kit.xr.profile.ar to omni.kit.xr.bundle.generic for Isaac Sim 6.0 compatibility.
  • Fixed shader creation parameter from name to prim_name in :func:~isaaclab.sim.spawners.materials.visual_materials.spawn_preview_surface.
  • Updated Python version requirement from 3.11 to 3.12 in environment configuration.

Fixes # (issue)

Type of change

  • Bug fix (non-breaking change which fixes an issue)

Screenshots

Please attach before and after screenshots of the change if applicable.

Checklist

  • I have read and understood the contribution guidelines
  • I have run the pre-commit checks with ./isaaclab.sh --format
  • I have made corresponding changes to the documentation
  • 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

@greptile-apps
Copy link
Contributor

greptile-apps bot commented Jan 22, 2026

Greptile Summary

This PR updates IsaacLab to support Isaac Sim 6.0 while maintaining backward compatibility with 5.1-5.x versions. The changes address four key compatibility issues that would prevent Teleop functionality from working after upgrading to Isaac Sim 6.0.

  • Updated URDF importer version pinning logic to only apply to Isaac Sim 5.1-5.x by adding an upper bound check (< Version("6.0")), allowing Isaac Sim 6.0 to use the default URDF extension instead of the pinned 2.4.31 version
  • Changed XR extension dependency from omni.kit.xr.profile.ar to omni.kit.xr.bundle.generic for Isaac Sim 6.0 XR/Teleop support
  • Fixed API breaking change in shader creation by updating parameter from name to prim_name in CreateShaderPrimFromSdrCommand
  • Updated Python version requirement from 3.11 to 3.12 to align with Isaac Sim 6.0 requirements

All changes are properly documented in the changelog and consistently applied across the main code and test fixtures.

Confidence Score: 5/5

  • This PR is safe to merge with minimal risk
  • The changes are straightforward compatibility fixes with clear intent and consistent implementation. The version check logic properly constrains the legacy behavior to Isaac Sim 5.1-5.x, the XR extension update follows official migration paths, the API parameter rename is a direct 1:1 replacement, and the Python version bump is required for Isaac Sim 6.0. All changes are applied consistently across production code and test fixtures, with proper documentation in the changelog.
  • No files require special attention

Important Files Changed

Filename Overview
apps/isaaclab.python.xr.openxr.kit Updated XR extension from omni.kit.xr.profile.ar to omni.kit.xr.bundle.generic for Isaac Sim 6.0
environment.yml Updated Python version requirement from 3.11 to 3.12 for Isaac Sim 6.0 compatibility
source/isaaclab/isaaclab/sim/converters/urdf_converter.py Added upper bound check to version condition, pinning older URDF extension only for Isaac Sim 5.1-5.x
source/isaaclab/isaaclab/sim/spawners/materials/visual_materials.py Fixed parameter name from name to prim_name in CreateShaderPrimFromSdrCommand for Isaac Sim 6.0 API

Sequence Diagram

sequenceDiagram
    participant User
    participant IsaacLabApp
    participant ExtensionManager
    participant UrdfConverter
    participant VersionUtils
    participant CreateShaderCommand

    User->>IsaacLabApp: Initialize with isaaclab.python.kit
    IsaacLabApp->>ExtensionManager: Load URDF extension
    Note over ExtensionManager: Isaac Sim 6.0: Use default URDF version<br/>Isaac Sim 5.1-5.x: Use pinned version 2.4.31

    User->>IsaacLabApp: Initialize XR mode with isaaclab.python.xr.openxr.kit
    IsaacLabApp->>ExtensionManager: Load omni.kit.xr.bundle.generic
    Note over ExtensionManager: Updated from omni.kit.xr.profile.ar

    User->>UrdfConverter: Create UrdfConverter instance
    UrdfConverter->>VersionUtils: get_isaac_sim_version()
    VersionUtils-->>UrdfConverter: Returns version (e.g., 6.0.0)
    
    alt Isaac Sim 5.1 <= version < 6.0
        UrdfConverter->>ExtensionManager: Enable isaacsim.asset.importer.urdf-2.4.31
        Note over ExtensionManager: Pin to older version for backward compatibility
    else Isaac Sim 6.0+
        Note over UrdfConverter: Use default URDF extension
    end

    User->>CreateShaderCommand: spawn_preview_surface()
    CreateShaderCommand->>CreateShaderCommand: CreateShaderPrimFromSdrCommand(prim_name="Shader")
    Note over CreateShaderCommand: Parameter changed from 'name' to 'prim_name'
    CreateShaderCommand-->>User: Shader created successfully
Loading

@hougantc-nvda
Copy link
Contributor Author

Closing. Kelly suggested putting this into the feature/isaacsim-6-0 branch instead:
#4408

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working infrastructure isaac-lab Related to Isaac Lab team isaac-sim Related to Isaac Sim team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant