1. 29 Feb, 2024 3 commits
    • Mayank Mittal's avatar
      Adds animation recording for environments (#409) · 5d6a4760
      Mayank Mittal authored
      # Description
      
      This MR adds a new button to the UI which allows you to record the
      transforms of the prims into an animation file. This file can then be
      opened in the simulator and played back easily.
      
      ## Type of change
      
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshot
      
      Video Tutorial:
      
      
      https://github.com/isaac-orbit/orbit/assets/12863862/55ddc2b0-5217-4e21-8276-911fce36da6b
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      5d6a4760
    • Alex Zack's avatar
      Fixes typo in the check_instanceable.py script (#248) · a0274e49
      Alex Zack authored
      # Description
      
      In line 106 of the `check_instanceable.py` script, there is a typo
      error.
      
      The line goes as:
      
      ```python
      prim_utils.create_prim("/World/envs/env_0/Asset", "Xform", usd_path=os.path.abspath(args_cli.usd_path))
      ```
      
      but should be:
      
      ```python
      prim_utils.create_prim("/World/envs/env_0/Asset", "Xform", usd_path=os.path.abspath(args_cli.input))
      ```
      
      Fixes #242 
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] I have updated the changelog and the corresponding version in the
      extension's `config/extension.toml` file
      
      Note: These 5 symbols that I changed do not require putting my name on
      the contributors list.
      a0274e49
    • Toni-SM's avatar
      Updates the workflow integration for skrl 1.1.0 (#249) · 6bdf2ba8
      Toni-SM authored
      Updates the workflow integration for `skrl>=1.1.0`.
      
      - Bug fix (non-breaking change which fixes an issue)
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      6bdf2ba8
  2. 27 Feb, 2024 3 commits
    • Farbod Farshidian's avatar
      Adds a viewer camera controller to base environment (#411) · 59e6c680
      Farbod Farshidian authored
      # Description
      
      This PR adds the functionality to set up the view camera with respect to
      different frames: world center, Environment Center, and an assets root
      frame. In the last case, if the asset moves, the camera will track it.
      This is a useful feature for recording videos during the training
      logging.
      
      ## Type of change
      
      - New feature (non-breaking change which adds functionality)
      
      ## Screenshots
      
      Base Env:
      
      https://github.com/isaac-orbit/orbit/assets/142246516/9b4f1580-2bd8-4d6c-b405-843b66a2d0b0
      
      RL Env:
      
      https://github.com/isaac-orbit/orbit/assets/3355155/4f51d6fa-3dfb-4d58-a83b-2845a5a80fe2
      
      
      ## Checklist
      
      - [X] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      
      ---------
      Signed-off-by: 's avatarFarbod Farshidian <ffarshidian@theaiinstitute.com>
      Co-authored-by: 's avatarJames Smith <jsmith@theaiinstitute.com>
      Co-authored-by: 's avatarMayank Mittal <mittalma@leggedrobotics.com>
      59e6c680
    • AutonomousHansen's avatar
      Adds string checking to `orbit.sim.utils` function calls (#429) · ff4b4d02
      AutonomousHansen authored
      # Description
      
      Adds string checking to the functions which accept path-types, casting
      them to a `str` if they are not already. Closing #421 in favor of this
      fix, see discussion for initial rationale. This solution is superior
      because this addresses all of the changes, not just the one causing a
      test to fail.
      
      Fixes #420 
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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 avatarAutonomousHansen <50837800+AutonomousHansen@users.noreply.github.com>
      ff4b4d02
    • Farbod Farshidian's avatar
      Enables contact sensor to measure both in-contact and detached intervals (#412) · e1534550
      Farbod Farshidian authored
      # Description
      
      Previously, the contact sensor only measured the air time (last_air_time
      and current_air_time). In this PR, the book keeps both the air-time and
      contact time. Moreover, the arbitrary thresholding for detecting contact
      is changed to a config parameter.
      
      This is currently a non-breaking feature. But I suggest renaming
      `ContactSensorCfg.track_air_time` to `ContactSensorCfg.track_intervals`.
      This will make the PR a breaking feature.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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 avatarFarbod Farshidian <ffarshidian@theaiinstitute.com>
      Co-authored-by: 's avatarMayank Mittal <mittalma@leggedrobotics.com>
      e1534550
  3. 24 Feb, 2024 1 commit
    • jsmith-bdai's avatar
      Cleans up prints from unit test runner (#433) · e6012c96
      jsmith-bdai authored
      # Description
      
      When I updated `run_all_tests.sh` to be runnable from any dir (#406),
      some debugging prints accidentally made it into the commit 😅
      These make it quite hard to read the test output. This PR removes the
      debugging `print()` calls and replaces a few others with `logging` calls
      for consistency.
      
      <!-- 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
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      -->
      e6012c96
  4. 23 Feb, 2024 1 commit
    • AutonomousHansen's avatar
      Fixes typos in the interpolation test of Scipy library (#430) · 6443c5a5
      AutonomousHansen authored
      # Description
      
      Currently `test_scipy.py` fails with the following error:
      ```
      ======================================================================
      ERROR: test_interpolation (test_scipy.TestScipyOperations)
      Test scipy interpolation 2D method.
      ----------------------------------------------------------------------
      Traceback (most recent call last):
        File "/workspace/orbit/source/extensions/omni.isaac.orbit/test/deps/test_scipy.py", line 58, in test_interpolation
          func_RectBiVariate = interpolate.RectBivariateSpline(y, x, height_field_downsampled)
        File "/isaac-sim/exts/omni.pip.compute/pip_prebundle/scipy/interpolate/_fitpack2.py", line 1494, in __init__
          raise ValueError('x dimension of z must have same number of '
      ValueError: x dimension of z must have same number of elements as x
      
      ----------------------------------------------------------------------
      Ran 1 test in 0.003s
      
      FAILED (errors=1)
      There was an error running python
      ```
      #426 changed the argument in `test_scipy.py` but did not change the
      ordering to be the correct `(x,y)`. This fixes that.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      -->
      6443c5a5
  5. 22 Feb, 2024 3 commits
    • Nikita Rudin's avatar
      Allows loading of initialized configs in `load_cfg_from_registry` (#425) · 3c0626fb
      Nikita Rudin authored
      # Description
      
      Fixed the configuration parsing to give an instanced config instead of
      just a non-instanced class.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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 avatarNikita Rudin <48368649+nikitardn@users.noreply.github.com>
      3c0626fb
    • Nikita Rudin's avatar
      Fixes shape argument ordering in `hf_terrains.random_uniform_terrain` (#426) · 31e42a5c
      Nikita Rudin authored
      # Description
      
      Fixes the shape of arguments in random_uniform_terrain. Previously the
      function would crash if the sizes x and y were different.
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      
      ## Checklist
      
      - [ ] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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 avatarNikita Rudin <48368649+nikitardn@users.noreply.github.com>
      31e42a5c
    • jsmith-bdai's avatar
      Fixes test-runner helper script to run from any directory (#406) · f44129c4
      jsmith-bdai authored
      # Description
      
      Enables running `orbit -t` from any directory
      
      Fixes #405 
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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 avatarjsmith-bdai <142246516+jsmith-bdai@users.noreply.github.com>
      Co-authored-by: 's avatarMayank Mittal <12863862+Mayankm96@users.noreply.github.com>
      f44129c4
  6. 19 Feb, 2024 1 commit
    • Pascal Roth's avatar
      Checks docker version before building singularity image (#402) · 8ff79600
      Pascal Roth authored
      # Description
      
      For the cluster deployment, the latest docker version (25.xx) is not yet
      compatible with the latest apptainer version. This PR adds a check
      before building the singularity image and adds a warning to the docs.
      Also the NOHTTPS warning has been resolved.
      
      Fixes #371 
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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 avatarPascal Roth <57946385+pascal-roth@users.noreply.github.com>
      Co-authored-by: 's avatarMayank Mittal <12863862+Mayankm96@users.noreply.github.com>
      8ff79600
  7. 16 Feb, 2024 4 commits
  8. 15 Feb, 2024 2 commits
    • Mayank Mittal's avatar
      Adds safe checks for input prim path to sim.utils functions (#415) · 8fbd397d
      Mayank Mittal authored
      # Description
      
      A user had a typo in their input prim path to the asset class. They did
      "World/Robot" instead of "/World/Robot". The error message they got
      because of this was out-of-index which is confusing.
      
      This MR adds a check for global paths and gives a cleaner error message.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      8fbd397d
    • Mayank Mittal's avatar
      Fixes divide by zero issue when setting gravity to zero (#399) · 05cab760
      Mayank Mittal authored
      # Description
      
      This PR fixes divide by zero issue when setting gravity to (0, 0, 0).
      
      It was causing unintended effects - position and linear velocity
      remained nan even when modifying root state via
      `RigidObject.write_root_state_to_sim()`.
      
      Fixes #398
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      05cab760
  9. 14 Feb, 2024 3 commits
    • Mayank Mittal's avatar
      Fixes unwanted squeeze in Articulation class for 1-joint assets (#397) · e4d1cdd3
      Mayank Mittal authored
      # Description
      
      This MR fixes the issue with printing articulation joint information
      with the `Articulation` class. When the number of joints are 1, the
      `squeeze(0).tolist()` operation makes the tensor a float item instead of
      a list.
      
      This MR removes the squeeze operation and adds a unit test to check that
      single-joint articulations work.
      
      Fixes https://github.com/NVIDIA-Omniverse/orbit/issues/238
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      e4d1cdd3
    • Mayank Mittal's avatar
      Fixes conda env name matching in orbit.sh (#391) · 1e708cbd
      Mayank Mittal authored
      # Description
      
      Previously, if you had two environments named `orbit` and `orbit_2024`.
      If you delete the environment `orbit` to rename it, the grep search
      would try to match `orbit_2024` with `orbit` and say the environment
      exists.
      
      This MR fixes the grep matching in `orbit.sh` to return success only if
      the entire word matches.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      1e708cbd
    • Mayank Mittal's avatar
      Changes shebang of executables to `/usr/bin/env` (#388) · 6c9cd7ca
      Mayank Mittal authored
      # Description
      
      This MR replaces `#!/bin/bash` with `#!/usr/bin/env bash`. This fetches
      the executable from the `PATH` instead of having the path fixed. This
      makes it more robust on different Unix systems. It should also allow you
      to use bash scripts with zshell as well.
      
      Fixes #384
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      6c9cd7ca
  10. 13 Feb, 2024 2 commits
    • Mayank Mittal's avatar
      Updates pre-commit and setup.py to require Python 3.10 (#389) · 259cc9d3
      Mayank Mittal authored
      # Description
      
      As we are dropping support for Isaac Sim 2022.2, this MR updates the
      pre-commit and setup.py to check for Python 3.10 language. Notable
      changes when the formatter was run:
      
      * `typing-extensions` has been merged to `typing`
      * `collections.abc` is favored over `typing` for importing generic
      types. The latter will be deprecated in future Python releases.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      259cc9d3
    • Mayank Mittal's avatar
      Adds enhanced determinism flag to PhysxCfg (#395) · 9c3db10e
      Mayank Mittal authored
      # Description
      
      This MR adds an `enableEnhancedDeterminism` flag to have improved
      deterministic behavior from the physics engine. By default, this is
      False to remain performant. However, it should be set to true for
      imitation learning-like applications where you want to replay the
      demonstrations.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      9c3db10e
  11. 12 Feb, 2024 1 commit
    • Mayank Mittal's avatar
      Adds known issue docs for simulation stepping (#241) · fa175aaf
      Mayank Mittal authored
      # Description
      
      As pointed out in #234 and #240, the environment returns stale values on
      reset. Since there is no immediate fix for this, this MR adds the issue
      to "Known issues" page in the documentation.
      
      ## Type of change
      
      - This change requires a documentation update
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      fa175aaf
  12. 10 Feb, 2024 2 commits
    • AutonomousHansen's avatar
      Adds mount-cacheing for pip in Dockerfile (#383) · 939a7683
      AutonomousHansen authored
      # Description
      
      We frequently reinstall pip packages when building the docker, even when
      the downloaded packages have not changed between builds. This allows us
      to look in `/root/.cache/pip` (on the image) for cached pip packages.
      This speeds up our build significantly.
      
      Adds a [mount cache
      ](https://docs.docker.com/build/cache/#use-the-dedicated-run-cache)to
      the Dockerfile for the line `${ORBIT_PATH}/orbit.sh --install --extra`,
      significantly increasing speeds by preventing repeated downloads of
      large packages
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      939a7683
    • jsmith-bdai's avatar
      Fixes warp library access in unit tests (#378) · 5b954cc9
      jsmith-bdai authored
      # Description
      
      Recently, tests were discovered that import from `utils`: `from
      omni.isaac.orbit.utils` cause a `ModuleNotFoundError` for `warp` within
      a container workflow fail as they weren't starting up the simulation
      app.
      
      This PR fixes this issue by setting up simulation app in any tests that
      need it.
      
      Fixes #372
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      5b954cc9
  13. 09 Feb, 2024 1 commit
    • David Hoeller's avatar
      Adds entity clearing in scene for proper environment closing (#380) · 477cd6b3
      David Hoeller authored
      # Description
      
      The articulations, objects, and sensors were not cleared properly when
      closing the environment. As a result, the invalidation callbacks were
      not called, leading to problems if you want to open another environment
      right after closing one.
      
      Fixes #342
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      477cd6b3
  14. 07 Feb, 2024 4 commits
    • jsmith-bdai's avatar
      Adds acceptance criteria to the issue templates (#361) · c6bdccfa
      jsmith-bdai authored
      # Description
      
      Adds the "Acceptance Criteria" section to existing issue templates.
      Also, the MR cleans up any unnecessary fields to avoid bloating in the
      templates.
      
      Fixes #359 
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      c6bdccfa
    • AutonomousHansen's avatar
      Specifies the torch version dependency explicitly as 2.0.1 (#376) · 37963a3d
      AutonomousHansen authored
      # Description
      
      This MR pins the torch version to 2.0.1 in installing the `orbit` and
      `orbit_tasks` extensions. This helps fix the torch and typing_extensions
      version incompatibility reported in #373.
      
      Previously, torch version 2.2 was getting downloaded on a fresh
      installation, which caused an error when trying to import it after
      launching Isaac Sim: `NameError: name '_C' is not defined. Did you mean:
      '_'?`
      
      Fixes #373 
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      37963a3d
    • Mayank Mittal's avatar
      Fixes handling of time-out signal in RSL-RL and RL-Games wrapper (#375) · af4e8014
      Mayank Mittal authored
      # Description
      
      On termination of an episode, three conditions arise:
      
      1. **bad** terminations (terminated dones): the agent gets a termination
      penalty
      2. **timeout** terminations (truncated dones):
      * infinite-horizon: bootstrapping by the agent based on terminal state
          * finite-horizon: no penalty or bootstrapping
      
      Currently, we have not handled the last case, which leads to issues when
      training RL tasks with a finite horizon (for instance, Nikita's agile
      locomotion work).
      
      This MR adds a flag to the RLTaskEnvCfg called `is_finite_horizon` that
      helps deal with this case. The flag is consumed by the env wrappers to
      decide how they want to specifically handle the finite horizon problem.
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      - New feature (non-breaking change which adds functionality)
      
      ## Checklist
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      af4e8014
    • AutonomousHansen's avatar
      Set livestream enabled to false unless it is otherwise specified (#374) · 93ec2c60
      AutonomousHansen authored
      From Isaac `2023.1.0-hotfix.1` to `2023.1.1`, `/app/livestream/enabled`
      started to default to True. This breaks our logic w/r/t
      `SimulationContext.render()`, which is now treating a headless instance
      as one that needs full rendering. This causes problems with multiple
      SimulationContext calls, and ultimately this bottoms out with this
      [line](https://github.com/isaac-orbit/orbit/blob/670a8c97db645d50a3ea89b06f7366fc2212fc06/source/extensions/omni.isaac.orbit/omni/isaac/orbit/sim/simulation_context.py#L563)
      sending us into an infinite rendering cycle from which i.e. unittest
      cannot exit.
      
      I fix this problem by setting `/app/livestream/enabled` to explicitly
      False in AppLauncher unless otherwise requested. This corrects the hang.
      
      Ultimately, the answer to this is #238, but in the meantime we need a
      fix or this is a showstopper for unit testing.
      
      Fixes #323
      
      - Bug fix (non-breaking change which fixes an issue)
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      93ec2c60
  15. 30 Jan, 2024 2 commits
    • Nikita Rudin's avatar
      Moves height-scan observation offset to its function's argument (#366) · 670a8c97
      Nikita Rudin authored
      # Description
      
      Adds an optional argument to the height-scan obs term defining the
      offset. Previously, it was hardcoded to 0.5.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ 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
      670a8c97
    • Nikita Rudin's avatar
      Adds approximate torque calculation for implicit actuator (#364) · 882f7c04
      Nikita Rudin authored
      # Description
      
      Adds torque computation to implicit actuators. Previously the reported
      torque was always zero.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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
      882f7c04
  16. 23 Jan, 2024 2 commits
    • renezurbruegg's avatar
      Fixes missing max raycast distance in RayCaster sensor (#48) · b579c503
      renezurbruegg authored
      # Description
      
      This MR fixes a minor issue where the max raycast distance in the config was ignored
      in the raycaster sensor.
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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 avatarPascal <roth.pascal@outlook.de>
      b579c503
    • Pascal Roth's avatar
      Adds `apptainer` version in the cluster guide docs (#357) · 82258319
      Pascal Roth authored
      After reporting binding issues on the cluster, this fix mentions the
      `apptainer version 1.2.5-1.el7` used in our workflow in the cluster
      documentation.
      
      - Bug fix (non-breaking change which fixes an issue)
      
      - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [ ] 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
      82258319
  17. 22 Jan, 2024 2 commits
  18. 12 Jan, 2024 1 commit
    • AutonomousHansen's avatar
      Comments out X11Forwarding bindings in docker-compose.yaml (#348) · 9c3f65f3
      AutonomousHansen authored
      # Description
      
      We currently have X11 forwarding enabled by default. This is convenient
      for certain users who want graphical displays (including IsaacSim
      itself) to be forwarded from within the container. However, it is also
      partially dependent upon the configuration of the host system and
      requires a valid .Xauthority file which may or may not have been
      created. Because this has introduced difficulties for several of our
      users, I submit that we comment this portion out be default, until a
      solution which allows either a `./container.sh` option, a variable in
      `.env`, or both can be used to conveniently enable this option on an
      affirmative basis.
      
      If we can agree on this change, I will update the documentation
      correspondingly.
      
      ## Type of change
      
      - 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
      `./orbit.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
      9c3f65f3
  19. 11 Jan, 2024 2 commits
    • jsmith-bdai's avatar
      Fixes source frame indexing in FrameTransfomer sensor (#350) · 620ce2b0
      jsmith-bdai authored
      # Description
      
      The FrameTransformer sensor always assumed that the source frame index
      is 0 in the parsed regex expression. However, a recent issue appeared
      where this is not the case, and it led to a bug due to the hard-coded
      value. This MR fixes the source frame index in the sensor and also adds
      a unit test to check this behavior.
      
      Fixes: https://github.com/NVIDIA-Omniverse/Orbit/issues/170
      
      ## 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
      `./orbit.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 run all the tests with `./orbit.sh --test` and they pass
      - [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 avatarMayank Mittal <mittalma@leggedrobotics.com>
      620ce2b0
    • Mayank Mittal's avatar