1. 09 Mar, 2024 1 commit
    • Nikita Rudin's avatar
      Adds terrain-based 2D-pose command and reset (#424) · c7f42931
      Nikita Rudin authored
      # Description
      
      * Added functionality to sample flat patches on a generated terrain.
      Added separate normal and terrain-based position commands. Terrain-based
      commands rely on the terrain to sample flat patches.
      * Added a terrain-based root reset function to reset the robot to a
      random flat patch.
      
      The MR includes the following fixes:
      
      * Fixed command resample termination function.
      
      ## Type of change
      
      - Bug fix (non-breaking change which fixes an issue)
      - New feature (non-breaking change which adds functionality)
      - This change requires a documentation update
      
      ## Screenshots
      
      ![poses](https://github.com/isaac-orbit/orbit/assets/12863862/678d3cde-63da-4c57-8aae-4c84440f55e3)
      
      ## 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
      
      ---------
      Co-authored-by: 's avatarMayank Mittal <mittalma@leggedrobotics.com>
      c7f42931
  2. 07 Mar, 2024 2 commits
  3. 06 Mar, 2024 2 commits
    • Hunter Hansen's avatar
      Adapts certain utils.math functions to process tensors of higher dimensions (#441) · c104ccdf
      Hunter Hansen authored
      # Description
      
      As reported in [this
      issue](https://github.com/NVIDIA-Omniverse/orbit/issues/252), we have a
      mismatch between the behavior described in the documentation and the
      actual behavior of `orbit.utils.math.axis_angle_from_quat`. We currently
      only accept tensors of the form (N,4), but this PR allows us to accept
      (...,4) as described. A corresponding change has been made to
      `orbit.utils.math.quat_error_magnitude` as it is a reasonable extension
      requested in the original issue.
      
      I have also added tests for these functions.
      
      ## 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
      - [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
      c104ccdf
    • Mayank Mittal's avatar
  4. 04 Mar, 2024 1 commit
    • David Hoeller's avatar
      Checks default joint states are configured within the limits (#439) · c86481bf
      David Hoeller authored
      # Description
      
      Adds checks that the default joint states are within the limits, and
      raises an Error for out-of-limit situations.
      
      ## 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
      - [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>
      c86481bf
  5. 01 Mar, 2024 2 commits
    • David Hoeller's avatar
      Fixes joint and body sub-indexing for observations and rewards (#434) · d682c8dd
      David Hoeller authored
      # Description
      
      Replaces the default values for `joint_ids` and `body_ids` from `None`
      to `slice(None)` in the `SceneEntityCfg` and adapted rewards and
      observations so that the user can query a sub-set of joints and bodies.
      
      ## 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
      d682c8dd
    • Mayank Mittal's avatar
      Fixes docs building for the `orbit.envs` submodule (#438) · 8f1ba9aa
      Mayank Mittal authored
      # Description
      
      With recent upgrade to Python 3.10, the linter was forcing changing of
      types to use the new syntax that uses "|" operator.
      
      This means that the line in `base_env.py` was getting converted to this
      type as well:
      
      ```python
      # old
      VecEnvObs = Dict[str, torch.Tensor | Dict[str, torch.Tensor]]
      
      # new
      VecEnvObs = dict[str, torch.Tensor | dict[str, torch.Tensor]]
      ```
      
      Unfortunately, Pytorch does not support this type of alias yet. This
      leads to errors when building the documentation. The MR reverts to the
      old setting and disables `pyupgrade` linter check for that file
      (currently not possible to disable the linter for a line itself).
      
      Fixes #432
      
      ## 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
      8f1ba9aa
  6. 29 Feb, 2024 5 commits
    • AutonomousHansen's avatar
      Drops support for Isaac Sim 2022.2.2 and earlier (#431) · 71c81cbf
      AutonomousHansen authored
      # Description
      
      Fully deprecates Isaac 2022.2 and Python3.7. Removes all
      checks/accommodations for 2022.2, defaults to 2023.1 behavior. Also
      changes `.env` to default to `ISAACSIM_VERSION` 2023.1.1.
      
      Fixes #393 
      
      ## 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`
      - [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
      
      <!--
      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 avatarAutonomousHansen <50837800+AutonomousHansen@users.noreply.github.com>
      Signed-off-by: 's avatarMayank Mittal <12863862+Mayankm96@users.noreply.github.com>
      Co-authored-by: 's avatarMayank Mittal <12863862+Mayankm96@users.noreply.github.com>
      Co-authored-by: 's avatarMayank Mittal <mittalma@leggedrobotics.com>
      71c81cbf
    • arbhardwaj98's avatar
      Implements relative and moving average joint position actions (#59) · 203cbefe
      arbhardwaj98 authored
      Added relative joint position actions and moving average joint actions.
      These are useful for "smoothened" out action spaces for environments
      such as in-hand manipulation.
      
      - New feature (non-breaking change which adds functionality)
      
      - [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
      
      ---------
      Co-authored-by: 's avatarMayank Mittal <mittalma@leggedrobotics.com>
      203cbefe
    • 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
  7. 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
  8. 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
  9. 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
  10. 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
  11. 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
  12. 16 Feb, 2024 4 commits
  13. 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
  14. 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
  15. 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
  16. 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
  17. 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
  18. 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
  19. 07 Feb, 2024 3 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