1. 29 Jul, 2025 1 commit
    • Kelly Guo's avatar
      Adds pygame license (#3032) · 3f794ec5
      Kelly Guo authored
      # Description
      
      Adds license file for pygame as it's included as a sub-dependency of
      rl-games.
      
      ## Type of change
      
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      -->
      3f794ec5
  2. 25 Jul, 2025 2 commits
    • Kelly Guo's avatar
      Shifts order of docker deployment documentation (#2984) · 083ca3cd
      Kelly Guo authored
      # Description
      
      There were some confusion with the Automator and docker deployment
      documentation. The order of which these pages were placed didn't make
      too much sense. This change moves the docker deployment up to the top
      section and moves Automator docs to the Resources section.
      
      ## Type of change
      
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      -->
      083ca3cd
    • Kelly Guo's avatar
      Adds additional license files for new dependencies (#3016) · 88e5a73f
      Kelly Guo authored
      # Description
      
      We have introduced a couple of new python dependencies/sub-dependencies.
      Adding license files for them to make sure they are captured in our
      dependencies list.
      
      ## Type of change
      
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      -->
      88e5a73f
  3. 23 Jul, 2025 4 commits
    • James Tigue's avatar
      Fixes DCMotor clipping for negative power and adds actuator tests (#2300) · 24a78b68
      James Tigue authored
      # Description
      
      This PR adds tests for actuator initialization, configuration, and
      computation for Implicit, IdealPD, and DC motor actuators.
      
      This PR also updates the DCMotor model to clip based on a four quadrant
      DC motor model. This will fix improper clipping in the negative power
      regions (i.e. positive torque and negative velocity or negative torque
      and positive velocity).
      
      NOTE: This PR is dependant on the pytest migration in:
      [2034](https://github.com/isaac-sim/IsaacLab/pull/2034)
      This PR includes changes made in
      [2291](https://github.com/isaac-sim/IsaacLab/pull/2291) and would be an
      alternate candidate.
      
      Fixes [#2139](https://github.com/isaac-sim/IsaacLab/issues/2139)
      
      <!-- As a practice, it is recommended to open an issue to have
      discussions on the proposed pull request.
      This makes it easier for the community to keep track of what is being
      developed or added, and if a given feature
      is demanded by more than one party. -->
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshots
      
      
      ![image](https://github.com/user-attachments/assets/c94f877e-b3a9-441a-ad2e-ec6124cc64de)
      
      ## Checklist
      
      - [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
      - [x] I have added tests that prove my fix is effective or that my
      feature works
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] 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
      -->
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Signed-off-by: 's avatarJames Tigue <166445701+jtigue-bdai@users.noreply.github.com>
      Signed-off-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      24a78b68
    • Antoine RICHARD's avatar
      Adds position to set external forces and torques (#1680) · ce2ae923
      Antoine RICHARD authored
      # Description
      
      This PR adds the option to set wrench positions to
      `set_external_force_and_torque`. This is a non-breaking change as the
      positions are passed as an optional argument. When no positions are set,
      the function defaults to the original implementation, that is, no
      positions are passed to PhysX. The PR also adds tests to check that the
      position values are correctly set into their buffer, but does not check
      if the resulting wrenches are correct. I did test the Quadcopter task
      before and after this PR and the training results are exactly the same.
      
      As of now, the function follows the original layout. But it could make
      sense to offer the option to set the position in either the link frame
      or the CoM frame. This would follow the recent changes made to the
      set_pose and set_velocity methods for instance. However, this would be a
      breaking change. Hence, for now, this has not been implemented. One
      could also argue, that this could be done prior to feeding the positions
      outside this method. Please let me know what you feel is best, and I'll
      update the PR accordingly.
      
      If one wanted to test the resulting wrenches, it would require a simple
      test articulation like a 1kg sphere that would be used to accurately
      compute the expected velocities. This is also feasible, but I feel like
      this test is more on the PhysX side of things, let me know.
      
      This change will require an update of the API documentation to include
      the position argument.
      
      Fixes #1678 
      
      ## Type of change
      
      - New feature (non-breaking change which adds functionality)
      - This change requires a documentation update
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] I have made corresponding changes to the documentation
      - [x] My changes generate no new warnings
      - [x] 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
      
      ---------
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      ce2ae923
    • ooctipus's avatar
      Enables hydra for all play.py scripts (#2995) · 3beb2d2b
      ooctipus authored
      # Description
      This PR enables hydra override for all play.py scripts
      I have mannually tested all rl_frameworks and worked.
      
      I remember there is a issue related, but couldn't find it, feel free to
      add to it if you found it.
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] 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
      - [x] 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: 's avatarKelly Guo <kellyguo123@hotmail.com>
      3beb2d2b
    • Kelly Guo's avatar
      Updates torch to 2.7.0 with cuda 12.8 blackwell support (#2998) · 219d001e
      Kelly Guo authored
      # Description
      
      As required by https://github.com/isaac-sim/IsaacLab/pull/2962 and
      vulnerabilities in torch 2.5.1, this change updates torch to 2.7.0
      during the installation of Isaac Lab.
      
      Although inconsistent with Isaac Sim 4.5 (still on torch 2.5.1), Isaac
      Lab should work fine with 2.7.0+cu128. This update will also allow us to
      have better support for blackwell GPUs.
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      - New feature (non-breaking change which adds functionality)
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      -->
      219d001e
  4. 22 Jul, 2025 1 commit
    • ooctipus's avatar
      Supports composite observation space with proper min max in manager based env (#2811) · 1f0be3d2
      ooctipus authored
      # Description
      This PR supports enables ManagerBasedRLEnv to properly support
      gymnaisum's composite observation gym.spaces.Dict at term-level with
      proper min, max specification. The benefit is that this will give
      rl-library a clearer signs how to pre-process the obseravtion data.
      
      Before:
      All terms are assigned with `gym.Spaces.Box(min=-np.inf, max=np.inf)`,
      one problem with this is that from rl-library side, is that some
      rl-libraries network construction depends heavily on observations space
      details. RL-library (e.g. sb3) looks at `gym.Spaces.Box.min` and
      `gym.Spaces.Box.max` to determine if they need to normalize it at
      library side.
      
      After:
      this PR utilizes on obs_terms's clip to determine if gym.Spaces.Box
      should be stricter. For example, environment obs_term returning
      gym.Spaces.Box(min=0, max=255) will be automatically detected by sb3,
      and a proper scalling be applied automatically. whereas
      gym.Spaces.Box(min=-inf, max=inf) will fail.
      
      while no special case is treated for gym.Spaces.Box(min=-1, max=1), but
      this will makes the rl-library easy to figure out that this term is
      already clipped, not more transformation needed.
      
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] I have made corresponding changes to the documentation
      - [x] My changes generate no new warnings
      - [x] I have added tests that prove my fix is effective or that my
      feature works
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] 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
      -->
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      1f0be3d2
  5. 20 Jul, 2025 2 commits
    • Kelly Guo's avatar
      Adds automated job to check for dependency licensing (#2488) · a797c832
      Kelly Guo authored
      # Description
      
      Automated job that runs on every PR to check for any dependencies that
      have non-permissive licenses.
      
      ## Type of change
      
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] 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
      -->
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      a797c832
    • Kelly Guo's avatar
      Adds asset license for Valkyrie robot (#2979) · 2ff2ed29
      Kelly Guo authored
      # Description
      
      Adds license file for the Valkyrie robot in order for us to include it
      into Isaac assets.
      
      
      ## Type of change
      
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      -->
      2ff2ed29
  6. 19 Jul, 2025 1 commit
    • Kelly Guo's avatar
      Adds citation link for the repository (#2935) · 2884d4ee
      Kelly Guo authored
      # Description
      
      Adds a CITATION.cff file for automatically generating citation link.
      
      ## Checklist
      
      - [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
      -->
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      2884d4ee
  7. 18 Jul, 2025 3 commits
    • ooctipus's avatar
      Enables sb3 to load checkpoint to continue training (#2954) · 2f12bb98
      ooctipus authored
      # Description
      
      This PR extend `script/reinforcement_learning/sb3/train.py` with feature
      to continue learning by loading the checkpoint.
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) 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
      - [x] 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: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      2f12bb98
    • Giulio Romualdi's avatar
      Fixes joint out of position limits terminations (#2442) · ed8fe3c4
      Giulio Romualdi authored
      # Description
      
      <!--
      Thank you for your interest in sending a pull request. Please make sure
      to check the contribution guidelines.
      
      Link:
      https://isaac-sim.github.io/IsaacLab/main/source/refs/contributing.html
      -->
      
      This PR fixes shape‑handling bugs in the termination helpers
      **`joint_pos_out_of_limit`** and **`joint_pos_out_of_manual_limit`**:
      
      * **Root cause** – both functions reduced across joints with
      `torch.any(dim=1)` **before** slicing with `asset_cfg.joint_ids`,
      leaving a 1‑D tensor and triggering an `IndexError: too many indices`.
      * **Fix** – construct a single `violations` mask, optionally slice
      joints, **then** reduce with `torch.any(dim=1)`.
      This preserves correct shapes (`[num_envs]`) and works for any
      joint‑selection type (`None`, `slice`, list, or tensor).
      * **Additional improvements**
      
      * Made `asset_cfg` immutable by avoiding in‑place modification of
      `joint_ids`.
        * Added docstring details and harmonised logic between both helpers.
      
      No new dependencies were introduced.
      
      Fixes https://github.com/isaac-sim/IsaacLab/issues/2441
      
      <!-- As a practice, it is recommended to open an issue to have
      discussions on the proposed pull request.
      This makes it easier for the community to keep track of what is being
      developed or added, and if a given feature
      is demanded by more than one party. -->
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      * [x] Bug fix (non-breaking change which fixes an issue)
      * [ ] New feature (non-breaking change which adds functionality)
      * [ ] Breaking change (fix or feature that would cause existing
      functionality to not work as expected)
      * [ ] This change requires a documentation update
      
      ## Screenshots
      
      *Not applicable – logic‑only change.*
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      * [ ] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      * [ ] I have made corresponding changes to the documentation
      * [x] My changes generate no new warnings
      * [x] 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
      * [x] 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
      -->
      
      ---------
      Signed-off-by: 's avatarGiulio Romualdi <giulio.romualdi@gmail.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      ed8fe3c4
    • ooctipus's avatar
      Fixes test_modify_env_param_curr_term (#2950) · ff9c7529
      ooctipus authored
      This PR fixes the bug in the test `test_modify_env_param_curr_term`
      ```
          modify_reset_joint_pos = CurrTerm(
              func=mdp.modify_term_cfg,
              params={
                  "address": "events.reset_pole_position.params.position_range", <------
                  "modify_fn": replace_value,
                  "modify_params": {"value": (-0.0, 0.0), "num_steps": 1},
              },
          )
      ```
      
      it is trying to modify `events.reset_**pole**_position`
      
      but in the assertion, it is checking `events.reset_**cart**_position`
      
      ```
      joint_ids = env.event_manager.cfg.reset_cart_position.params["asset_cfg"].joint_ids
      assert torch.all(robot.data.joint_pos[:, joint_ids] == 0.0)
      ```
      
      it wasn't an error before because reset_joints_by_offset function was
      buggy, and the tests suite passed before right before that bug was
      fixed. Now that bug fixed, we found out this bug.
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] I have made corresponding changes to the documentation
      - [x] My changes generate no new warnings
      - [x] I have added tests that prove my fix is effective or that my
      feature works
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] 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
      -->
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Signed-off-by: 's avatarooctipus <zhengyuz@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      ff9c7529
  8. 16 Jul, 2025 2 commits
    • MinGyu Lee's avatar
      Remove deprecated env variable in docs (#2936) · 0b826f72
      MinGyu Lee authored
      # Description
      
      Remove the usage of the REMOTE_DEPLOYMENT environment variable (e.g.,
      export REMOTE_DEPLOYMENT=3) from the example code blocks in the
      [IsaacLab App
      documentation](https://isaac-sim.github.io/IsaacLab/main/source/api/lab/isaaclab.app.html),
      as this variable has been deprecated.
      
      Fixes #2920  (issue)
      
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Screenshots
      Before
      <img width="817" height="279" alt="isaaclab_app"
      src="https://github.com/user-attachments/assets/cfd45532-8b43-4285-9ed9-81039c7624e1"
      />
      After
      <img width="810" height="256" alt="Screenshot from 2025-07-15 09-54-47"
      src="https://github.com/user-attachments/assets/65838873-7374-4eee-8963-f35ca661725e"
      />
      
      
      
      ## Checklist
      
      - [O] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [O] I have made corresponding changes to the documentation
      - [O] My changes generate no new warnings
      - [O] I have added tests that prove my fix is effective or that my
      feature works
      - [X] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [O] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      0b826f72
    • Bikram Pandit's avatar
      Extends `ContactSensorData` by `force_matrix_w_history` attribute (#2916) · 1e273226
      Bikram Pandit authored
      # Description
      
      This is a follow-up to #1746 by @lukasfro — thanks for the great work
      there!
      
      I’ve been using this feature and found it really helpful. Since the only
      remaining request was to resolve merge conflicts and the PR has been
      quiet for a bit, I went ahead and rebased it on the latest `main` to
      help move things forward.
      
      I branched directly off @lukasfro’s [original
      branch](https://github.com/lukasfro/IsaacLab/tree/feature/force_matrix_w_history)
      to preserve their authorship, and only applied the changes needed to
      resolve the conflicts.
      
      Of course, if @lukasfro prefers to continue the original PR, I’m more
      than happy to close this. Just hoping to be helpful and support getting
      this great addition merged.
      
      All credit for the original work goes to @lukasfro.
      
      Fixes #1720
      
      ## Type of change
      - New feature (non-breaking change which adds functionality)
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) 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
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarlukasfro <lukas.froehlich@swiss-mile.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      1e273226
  9. 15 Jul, 2025 1 commit
    • Antoine RICHARD's avatar
      Updates doc on actuators to include some references (#2656) · f22b5eb8
      Antoine RICHARD authored
      # Description
      
      Expands the documentation on actuators and the importance of the
      armature parameter when using explicit actuators.
      
      ## Type of change
      
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      f22b5eb8
  10. 12 Jul, 2025 7 commits
    • yijieg's avatar
      Removes wandb logging in AutoMate env (#2912) · 3d5ea25d
      yijieg authored
      # Description
      
      wandb logging function is provided in rl_games script. So we remove the
      wandb logging in task level. Also, we edit the task registration style
      to help startup perf.
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      - This change requires a documentation update
      
      ## Checklist
      
      - [ 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
      - [ x ] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      
      ---------
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      3d5ea25d
    • Antoine RICHARD's avatar
      Sets enable_stabilization to false by default. (#2628) · 13965cc3
      Antoine RICHARD authored
      # Description
      
      Changes the default setting for the enable stabilization flag from True
      to False.
      
      Fixes #2319
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Screenshots
      
      | Before | After |
      :-------------------------:|:-------------------------:
      
      ![net_contact_forces_1kz](https://github.com/user-attachments/assets/a9d7851c-d42a-4f22-8ea7-6b187070057e)|
      ![net_contact_forces_after](https://github.com/user-attachments/assets/523b8b5c-d8db-435c-bb66-c4312d2c6c18)
      
      ![force_matrices_1khz](https://github.com/user-attachments/assets/30feb2e1-d1f6-402f-8ca0-3a727bce4424)
      |
      ![force_matrices_after](https://github.com/user-attachments/assets/3294335f-c5d5-4c4d-ac8a-e2c2e995e2a0)
      
      
      
      ## Checklist
      
      - [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
      - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      
      ---------
      Signed-off-by: 's avatarAntoine RICHARD <antoiner@nvidia.com>
      Co-authored-by: 's avatarMayank Mittal <12863862+Mayankm96@users.noreply.github.com>
      13965cc3
    • ooctipus's avatar
      Adds new curriculum mdp that allows modification on any environment parameters (#2777) · cee5027b
      ooctipus authored
      # Description
      
      This PR created two curriculum mdp that can change any parameter in env
      instance.
      namely `modify_term_cfg` and `modify_env_param`.
      
      `modify_env_param` is a more general version that can override any value
      belongs to env, but requires user to know the full path to the value.
      
      `modify_term_cfg` only work with manager_term, but is a more user
      friendly version that simplify path specification, for example, instead
      of write "observation_manager.cfg.policy.joint_pos.noise", you instead
      write "observations.policy.joint_pos.noise", consistent with hydra
      overriding style
      
      Besides path to value is needed, modify_fn, modify_params is also needed
      for telling the term how to modify.
      
      
      
      Demo 1: difficulty-adaptive modification for all python native data type
      ```
      # iv -> initial value, fv -> final value
      def initial_final_interpolate_fn(env: ManagerBasedRLEnv, env_id, data, iv, fv, get_fraction):
          iv_, fv_ = torch.tensor(iv, device=env.device), torch.tensor(fv, device=env.device)
          fraction = eval(get_fraction)
          new_val = fraction * (fv_ - iv_) + iv_
          if isinstance(data, float):
              return new_val.item()
          elif isinstance(data, int):
              return int(new_val.item())
          elif isinstance(data, (tuple, list)):
              raw = new_val.tolist()
              # assume iv is sequence of all ints or all floats:
              is_int = isinstance(iv[0], int)
              casted = [int(x) if is_int else float(x) for x in raw]
              return tuple(casted) if isinstance(data, tuple) else casted
          else:
              raise TypeError(f"Does not support the type {type(data)}")
      ```
      (float)
      ```
          joint_pos_unoise_min_adr = CurrTerm(
              func=mdp.modify_term_cfg,
              params={
                  "address": "observations.policy.joint_pos.noise.n_min",
                  "modify_fn": initial_final_interpolate_fn,
                  "modify_params": {"iv": 0., "fv": -.1, "get_fraction": "env.command_manager.get_command("difficulty")"}
              }
          )
      ```
      
      (tuple or list)
      ```
      command_object_pose_xrange_adr = CurrTerm(
              func=mdp.modify_term_cfg,
              params={
                  "address": "commands.object_pose.ranges.pos_x",
                  "modify_fn": initial_final_interpolate_fn,
                  "modify_params": {"iv": (-.5, -.5), "fv": (-.75, -.25), "get_fraction": "env.command_manager.get_command("difficulty")"}
              }
          )
      ```
      
      Demo 3: overriding entire term on env_step counter rather than adaptive
      ```
      def value_override(env: ManagerBasedRLEnv, env_id, data, new_val, num_steps):
          if env.common_step_counter > num_steps:
              return new_val
          return mdp.modify_term_cfg.NO_CHANGE
      
      object_pos_curriculum = CurrTerm(
              func=mdp.modify_term_cfg,
              params={
                  "address": "commands.object_pose",
                  "modify_fn": value_override,
                  "modify_params": {"new_val": <new_observation_term>, "num_step": 120000 }
              }
          )
      ```
      
      Demo 4: overriding Tensor field within some arbitary class not visible
      from term_cfg
      (you can see that 'address' is not as nice as mdp.modify_term_cfg)
      ```
      def resample_bucket_range(env: ManagerBasedRLEnv, env_id, data, static_friction_range, dynamic_friction_range, restitution_range, num_steps):
          if env.common_step_counter > num_steps:
                range_list = [static_friction_range, dynamic_friction_range, restitution_range]
                ranges = torch.tensor(range_list, device="cpu")
                new_buckets = math_utils.sample_uniform(ranges[:, 0], ranges[:, 1], (len(data), 3), device="cpu")
                return new_buckets
          return mdp.modify_env_param.NO_CHANGE
      
      object_physics_material_curriculum = CurrTerm(
              func=mdp.modify_env_param,
              params={
                  "address": "event_manager.cfg.object_physics_material.func.material_buckets",
                  "modify_fn": resample_bucket_range,
                  "modify_params": {"static_friction_range": [.5, 1.], "dynamic_friction_range": [.3, 1.], "restitution_range": [0.0, 0.5], "num_step": 120000 }
              }
          )
      ```
      
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - New feature (non-breaking change which adds functionality)
      
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] I have made corresponding changes to the documentation
      - [x] My changes generate no new warnings
      - [x] I have added tests that prove my fix is effective or that my
      feature works
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] 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
      -->
      
      ---------
      Signed-off-by: 's avatarooctipus <zhengyuz@nvidia.com>
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      cee5027b
    • ooctipus's avatar
      Fixes reset_joints_by_scale and reset_joints_by_offsets to only affect the... · 9df117c9
      ooctipus authored
      Fixes reset_joints_by_scale and reset_joints_by_offsets to only affect the joint_names specified in SceneEntityCfg (#2899)
      
      # Description
      
      Both reset_joints_by_offsets and reset_joints_by_scale ignores the
      joint_ids specified in SceneEntityCfg passed through asset_cfg and
      affects all joints.
      
      This bug is affecting all cartpole environments. 
      
      After the fix the functions are restricted to only reset the joint
      specified through SceneEntityCfg, Cartpole environment runs and reset
      behaves correctly
      
      Fixes #2800 #980 #1742 
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] 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
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] 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
      -->
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      9df117c9
    • ooctipus's avatar
      Upgrades pillow dependencies for upcoming Kit 107.3.1 (#2908) · e2118ac9
      ooctipus authored
      # Description
      
      @Toni-SM pointed out that Isaac Lab must match Isaac Sim/ Kit
      107.3.1-206797 Pillow 11.2.1
      
      this PR update pillow dependencies to match that of sim and kit
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [] 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
      - [x] 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
      -->
      e2118ac9
    • Pascal Roth's avatar
      Fixes missing `ray_cast_drift` in `RayCasterCamera` (#2901) · e49ab0a1
      Pascal Roth authored
      # Description
      
      Fixes missing  `ray_cast_drift` in `RayCasterCamera`
      
      Fixes #2891 
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [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
      - [x] I have added tests that prove my fix is effective or that my
      feature works
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Signed-off-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      e49ab0a1
    • Patrick Yin's avatar
      Fixes ObservationManager history buffer corrupted by external calls to... · d1ecc377
      Patrick Yin authored
      Fixes ObservationManager history buffer corrupted by external calls to ObservationManager.compute (#2885)
      
      # Description
      
      When observation group has history length greater than zero, calling
      `ObservationManager.compute` modifies history state by appending current
      observation to history. This creates history corruption when
      non-`ManagerBasedEnv` classes invoke `ObservationManager.compute`. This
      PR introduces `update_history` flag (default to `False`) and only
      `ManagerBasedEnv` has the privilege to run `ObservationManager.compute`
      with `update_history=True`. If `update_history=False` and the history
      buffer is `None`, a copy of history is returned instead of the original.
      
      I have added test cases to verify this fix is effective.
      
      Fixes #2884 
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] I have made corresponding changes to the documentation
      - [x] My changes generate no new warnings
      - [x] I have added tests that prove my fix is effective or that my
      feature works
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      
      ---------
      Signed-off-by: 's avatarooctipus <zhengyuz@nvidia.com>
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarooctipus <zhengyuz@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      d1ecc377
  11. 11 Jul, 2025 1 commit
    • James Tigue's avatar
      Adds math tests for transforms, rotations, and conversions (#103) (#2801) · 8e57a3a6
      James Tigue authored
      # Description
      
      this PR adds tests for:
      
      - scale_transform
      - unscale_transform
      - saturate
      - normalize
      - copysign
      - convert_quat
      - quat_conjugate
      - quat_from_euler_xyz
      - quat_from_matrix
      - euler_xyz_from_quat
      - matrix_from_euler
      - quat_from_angle_axis
      - axis_angle_from_quat
      - skew_symmetric_matrix
      - combine_transform
      - subtract_transform
      - compute_pose_error
      
      Fixes # (issue)
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      - New feature (non-breaking change which adds functionality)
      
      ## Checklist
      
      - [ ] I have run the [`pre-commit` checks](https://pre-commit.com/) 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
      
      <!--
      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
      -->
      
      ---------
      Signed-off-by: 's avatarJames Tigue <166445701+jtigue-bdai@users.noreply.github.com>
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      8e57a3a6
  12. 10 Jul, 2025 4 commits
    • James Tigue's avatar
      Fixes deprecation overload for hanging quat_rotate calls in articulation and... · 0eb323ed
      James Tigue authored
      Fixes deprecation overload for hanging quat_rotate calls in articulation and rigid_object_collection (#2867)
      
      # Description
      
      Changes remaining quat_rotate calls to quat_apply calls.
      
      Fixes #2859 
      
      <!-- As a practice, it is recommended to open an issue to have
      discussions on the proposed pull request.
      This makes it easier for the community to keep track of what is being
      developed or added, and if a given feature
      is demanded by more than one party. -->
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [ ] I have run the [`pre-commit` checks](https://pre-commit.com/) 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
      
      <!--
      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
      -->
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Signed-off-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      0eb323ed
    • ooctipus's avatar
      Supports sb3 wrapper to pre-process env's image obs-space to trigger sb3... · 3692aced
      ooctipus authored
      Supports sb3 wrapper to pre-process env's image obs-space to trigger sb3 natively supported cnn creation pipeline (#2812)
      
      # Description
      
      This PR modifies the SB3 Wrapper so that it utilizes the 
      SB3 natively supported encoder creation on properly defined composite
      observation space,
      
      SB3's automatic CNN encoding will apply when
      1. if observation space of that term is of shape, GrayScale, RGB, or
      RGBD
      2. if agent_cfg has normalized flag, expects data to have channel as the
      first dimension, and data pre_normalized
      3. if agent doesn't has normalized flag, expects data to have space
      min=0, max=255, dtype=uint8
      
      This PR makes sure the sb3 wrapper adjust environment image term to meet
      either condition 2 or condition 3 by looking at space's min and max, so
      sb3 creation pipeline will be applied automatically.
      
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] 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
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] 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: 's avatarKelly Guo <kellyg@nvidia.com>
      3692aced
    • James Smith's avatar
      Updates to ray caster ray alignment and more customizable drift sampling (#2556) · d02d3b8a
      James Smith authored
      This PR pushes some changes from our internal RAI fork of Isaac Lab.
      
      The 2 main changes are:
      
      #### Adds a new `ray_alignment` parameter to replace the previous
      `yaw_only` arg.
      
      Now the ray alignment can be aligned to `world`, `yaw`, or `base.
      
      #### Improves drift height sampling
      
      At the moment, the `RayCasterCfg` hosts a parameter called
      `drift_range`. It allows to randomize the position of the sensor in
      world frame, which comes with a couple of downsides:
      * If the projection is done along the gravity vector, the z-component
      drift term cannot be visualized (it is implicitly given in the pose, and
      added to the height scan in the observation term).
      * The perturbation is applied in world frame, i.e., if the ray cast is
      yaw aligned, then the drift varies with the yaw angle
      * The drift is applied to all (x,y,z) components equally
      
      This PR adds a new parameter ray_cast_drift_range. It gives more freedom
      in choosing the drift ranges as x, y and z components can be treated
      separately. It also applies the drift after projecting and rotating the
      ray cast points, i.e. the drift is now invariant under the yaw angle and
      the drift in z is can be visualized
      
      I've added Fabian Jenelten and Jeonghwan Kim to this PR as they worked
      on these changes within RAI - I'm simply helping to push them up 😄
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - New feature (non-breaking change which adds functionality)
      - Breaking change (fix or feature that would cause existing
      functionality to not work as expected)
      
      ## Checklist
      
      - [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
      -->
      
      ---------
      Signed-off-by: 's avatarooctipus <zhengyuz@nvidia.com>
      Co-authored-by: 's avatarooctipus <zhengyuz@nvidia.com>
      d02d3b8a
    • James Tigue's avatar
      Adds ability to set platform height independent of object height for terrain (#2695) · c5fd8ebe
      James Tigue authored
      # Description
      Allow to set platform height independent of the object height.
      
      <!-- As a practice, it is recommended to open an issue to have
      discussions on the proposed pull request.
      This makes it easier for the community to keep track of what is being
      developed or added, and if a given feature
      is demanded by more than one party. -->
      
      ## Type of change
      - New feature (non-breaking change which adds functionality)
      
      ## Checklist
      
      - [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
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      
      Credit: @fjenelten-bdai
      
      ---------
      Signed-off-by: 's avatarJames Tigue <166445701+jtigue-bdai@users.noreply.github.com>
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      c5fd8ebe
  13. 09 Jul, 2025 5 commits
    • James Tigue's avatar
      Fixes export LSTM to onnx file (#2821) · db5c1c32
      James Tigue authored
      # Description
      
      This PR fixes an issue when exporting LSTM to ONNX. The normalizer was
      resetting to zero. This PR calls `eval()` during the `forward()`.
      
      Fixes # (issue)
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Screenshots
      Left: After, Right: Before
      
      
      ![image](https://github.com/user-attachments/assets/9a8f765f-653a-4a57-b9ee-af00e8e0539c)
      
      ## Checklist
      
      - [ ] I have run the [`pre-commit` checks](https://pre-commit.com/) 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
      
      <!--
      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
      -->
      db5c1c32
    • James Tigue's avatar
      Adds absolute and relative noise to `MeshRepeatedObjectsTerrain` (#2830) · bc5a3670
      James Tigue authored
      # Description
      
      This PR expands the noise parameters of the MeshRepeatedObjectsTerrain
      by adding minimum and maximum absolute and relative noise for.
      This adds deprecation warnings to existing parameters but they will
      function normally.
      
      Fixes # (issue)
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      ## Checklist
      
      - [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
      - [x] I have added tests that prove my fix is effective or that my
      feature works
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] 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
      -->
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarFabian Jenelten <162192900+fjenelten-bdai@users.noreply.github.com>
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      bc5a3670
    • James Tigue's avatar
      Fixes articulation and render_cfg tests to be proper pytests (#2851) · 6184b562
      James Tigue authored
      # Description
      
      Fixes some pytest migration errors for test_articulation and
      test_render_cfg
      
      Fixes # (issue)
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] I have made corresponding changes to the documentation
      - [ ] My changes generate no new warnings
      - [x] 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
      -->
      
      ---------
      Signed-off-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Signed-off-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      Co-authored-by: 's avatarKelly Guo <kellyguo123@hotmail.com>
      6184b562
    • Michael Gussert's avatar
      Fixes GitHub edit link (#2873) · 043f045c
      Michael Gussert authored
      I added the path_to_docs key to the html_theme_options dictionary in
      conf.py and set it to docs/
      
      ## Checklist
      
      - [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
      - [X] I have added tests that prove my fix is effective or that my
      feature works
      - [X] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [X] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      043f045c
    • James Tigue's avatar
      Adds IMU projected_gravity_b and IMU computation speed optimizations (#2512) · fde59597
      James Tigue authored
      # Description
      
      <!--
      Thank you for your interest in sending a pull request. Please make sure
      to check the contribution guidelines.
      
      Link:
      https://isaac-sim.github.io/IsaacLab/main/source/refs/contributing.html
      -->
      This PR adds projected_gravity_b data stream as well as speeding up
      computation by during batch rotating of all data streams to base frame
      in one computation rather than each data stream separately.
      
      This PR is dependant on [PR
      2129](https://github.com/isaac-sim/IsaacLab/pull/2129/) and should not
      be merged until that PR is merged.
      
      Fixes # (issue)
      
      <!-- As a practice, it is recommended to open an issue to have
      discussions on the proposed pull request.
      This makes it easier for the community to keep track of what is being
      developed or added, and if a given feature
      is demanded by more than one party. -->
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - New feature (non-breaking change which adds functionality)
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [ ] I have run the [`pre-commit` checks](https://pre-commit.com/) 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
      
      <!--
      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: 's avatarKelly Guo <kellyg@nvidia.com>
      fde59597
  14. 08 Jul, 2025 3 commits
    • Kelly Guo's avatar
      Updates gymnasium to v1.2.0 (#2852) · 75824e8d
      Kelly Guo authored
      # Description
      
      Updates gymnasium to 1.2.0, which includes a fix for memory leak when
      recording videos during training with `--video`.
      
      Fixes #1996 
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      - New feature (non-breaking change which adds functionality)
      - Breaking change (fix or feature that would cause existing
      functionality to not work as expected)
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      -->
      75824e8d
    • ooctipus's avatar
      Fixes numpy ver to <2 for isaaclab_rl and isaaclab_tasks (#2866) · 8d589fc8
      ooctipus authored
      # Description
      
      This PR fixes the numpy version get upgraded to >2 when installing
      rl_packages dependencies
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Screenshots
      
      Please attach before and after screenshots of the change if applicable.
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] 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
      - [x] 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
      - [x] I have not done this task
      -->
      8d589fc8
    • Kelly Guo's avatar
      Allows slicing to be processed from lists (#2853) · 367925cb
      Kelly Guo authored
      # Description
      
      replace_slices_with_strings() and replace_strings_with_slices() in
      [IsaacLab/source/isaaclab/isaaclab/utils/dict.py](https://github.com/isaac-sim/IsaacLab/blob/main/source/isaaclab/isaaclab/utils/dict.py)
      are changed to allow slices being process if a list of dicts is passed
      in as input.
      
      Cherry picks changes from
      https://github.com/isaac-sim/IsaacLab/pull/2571 by @LinghengMeng
      
      Fixes #2481 
      
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [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
      -->
      367925cb
  15. 02 Jul, 2025 1 commit
    • Masoud Moghani's avatar
      Sets robomimic version to v0.4.0 (#2814) · 752be19b
      Masoud Moghani authored
      # Description
      
      <!--
      Thank you for your interest in sending a pull request. Please make sure
      to check the contribution guidelines.
      
      Link:
      https://isaac-sim.github.io/IsaacLab/main/source/refs/contributing.html
      -->
      
      This MR fixes compatibility issues with robomimic by setting its
      installation version to v0.4.0.
      
      <!-- As a practice, it is recommended to open an issue to have
      discussions on the proposed pull request.
      This makes it easier for the community to keep track of what is being
      developed or added, and if a given feature
      is demanded by more than one party. -->
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      
      <!--
      Example:
      
      | Before | After |
      | ------ | ----- |
      | _gif/png before_ | _gif/png after_ |
      
      To upload images to a PR -- simply drag and drop an image while in edit
      mode and it should upload the image directly. You can then paste that
      source into the above before/after sections.
      -->
      
      ## Checklist
      
      - [ ] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./isaaclab.sh --format`
      - [ ] 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
      - [x] 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
      -->
      752be19b
  16. 28 Jun, 2025 2 commits
    • Özhan Özen's avatar
      Fixes the implementation of `quat_inv()` (#2797) · 3d6f55b9
      Özhan Özen authored
      # Description
      
      Corrects `quat_inv()` in utils/math.py: the inverse is now computed as:
      
      `quat_conjugate(q) / q.pow(2).sum(dim=-1, keepdim=True).clamp(min=eps)`
      
      ensuring correct results for **non-unit** quaternions.  
      
      Fixes #1263 (see discussion for details). Also updated `CHANGELOG.rst`
      and corrected a few minor typos within.
      
      ## Type of change
      
      <!-- As you go through the list, delete the ones that are not
      applicable. -->
      
      - Bug fix (non-breaking change which fixes an issue)
      - This change requires a documentation update
      
      ## Checklist
      
      - [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
      - [x] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      - [x] I have added my name to the `CONTRIBUTORS.md` or my name already
      exists there
      
      ---------
      Co-authored-by: 's avatarKelly Guo <kellyg@nvidia.com>
      3d6f55b9
    • Brian Bingham's avatar
      Updates training_jetbot_reward_exploration.rst (#2788) · 4a7d15db
      Brian Bingham authored
      # Description
      
      This is a small change to the Walkthrough documentation to make it
      explicit to change the observation space dimension in the second half of
      the Exploring the RL problem tutorial.
      
      Fixes #2787
      
      ## Type of change
      
      - This change is exclusively documentation
      
      ---------
      Signed-off-by: 's avatarBrian Bingham <briansbingham@gmail.com>
      Signed-off-by: 's avatarMichael Gussert <michael@gussert.com>
      Co-authored-by: 's avatarMichael Gussert <michael@gussert.com>
      4a7d15db