Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 1 addition & 2 deletions docs/source/concepts/ovphysx.rst
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,7 @@ supported.
Installation
------------

The public ``ovphysx`` extra remains pinned to OvPhysX 0.5.11. Install it from
the repository root with:
The ``ovphysx`` extra requires OvPhysX 0.6.3. Install it from the repository root with:

.. code-block:: bash

Expand Down
14 changes: 7 additions & 7 deletions pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ dependencies = [
"pillow>=12.3.0",
"botocore", # omni.replicator.core S3 backend
"starlette>=1.3.1", # livestream; minimum patched for current security advisories
"omniverseclient==2.72.3",
"omniverseclient==2.74.0",
"filelock",
"lazy_loader>=0.4",
# ----- project template generator -----
Expand Down Expand Up @@ -175,9 +175,9 @@ rerun = [

isaacsim = ["isaacsim[all,extscache]==6.1.0.0"]

ov = ["ovphysx==0.5.11", "ovrtx==0.4.1.364340", "ovstage==0.1.1.355824"]
ovphysx = ["ovphysx==0.5.11", "ovstage==0.1.1.355824"]
ovrtx = ["ovrtx==0.4.1.364340", "ovstage==0.1.1.355824"]
ov = ["ovphysx==0.6.3", "ovrtx==0.5.0.377615", "ovstage==0.2.0.377349"]
ovphysx = ["ovphysx==0.6.3", "ovstage==0.2.0.377349"]
ovrtx = ["ovrtx==0.5.0.377615", "ovstage==0.2.0.377349"]

mimic = [
"isaaclab-mimic",
Expand Down Expand Up @@ -224,9 +224,9 @@ usd_exchange = "2.3.0"
torch = "2.12.0"
torchvision = "0.27.0"
torchaudio = "2.11.0"
ovphysx = "0.5.11"
ovrtx = "0.4.1.364340"
ovstage = "0.1.1.355824"
ovphysx = "0.6.3"
ovrtx = "0.5.0.377615"
ovstage = "0.2.0.377349"
warp = "1.17.0"

[tool.ruff]
Expand Down
1 change: 1 addition & 0 deletions source/isaaclab/changelog.d/esekkin-upgrade-ovrtx-050.skip
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Synchronized OV dependency metadata.
4 changes: 2 additions & 2 deletions source/isaaclab/test/cli/test_uv_run_pyproject.py
Original file line number Diff line number Diff line change
Expand Up @@ -130,8 +130,8 @@ def test_version_single_source_matches_literal_pins(source_checkout_root: Path):
optional = pyproject["project"]["optional-dependencies"]
overrides = pyproject["tool"]["uv"]["override-dependencies"]

assert versions["ovphysx"] == "0.5.11"
assert "omniverseclient==2.72.3" in dependencies
assert versions["ovphysx"] == "0.6.3"
assert "omniverseclient==2.74.0" in dependencies

# Isaac Sim extra mirrors the table; it is the only place the wheel is pinned.
assert optional["isaacsim"] == [f"isaacsim[all,extscache]=={versions['isaacsim']}"]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
Changed
^^^^^^^

* **Breaking:** Updated the optional OV dependencies to ``ovrtx==0.5.0.377615``,
``ovstage==0.2.0.377349``, ``ovphysx==0.6.3``, and ``omniverseclient==2.74.0``. Upgrade
them together with ``uv sync --inexact --extra ov``.
* **Breaking:** OvPhysX CPU-backed property writes require CPU-resident ``values``,
``indices``, and ``mask`` arrays.
3 changes: 1 addition & 2 deletions source/isaaclab_ov/isaaclab_ov/ovstage_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -19,8 +19,7 @@
caller, which keeps this module free of an ``ovstage`` import and therefore importable
wherever the version policy needs to be inspected or tested.

The public extras stay pinned to ``ovstage==0.1.1.355824``; a missing or unparsable
install keeps the OVStage 0.1 host model.
Missing or invalid version metadata selects ``CPU_INCREMENTAL``.
"""

from __future__ import annotations
Expand Down
6 changes: 2 additions & 4 deletions source/isaaclab_ov/isaaclab_ov/physics/ovphysx_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,10 +11,8 @@
the entry-point names are resolved once at import and published as
:data:`OVPHYSX_LIFECYCLE_ENTRY_POINTS`.

The public extras stay pinned to ``ovphysx==0.5.11``; a missing or unparsable
install keeps the 0.5.11 entry points and reversed-joint sign correction.
OvPhysX 0.6 fixes the dynamics tensor signs in the runtime, so that correction
must be disabled on the new release line.
Missing or invalid version metadata selects the 0.5 lifecycle API and
reversed-joint correction.
"""

from __future__ import annotations
Expand Down
3 changes: 1 addition & 2 deletions source/isaaclab_ov/isaaclab_ov/renderers/ovrtx_compat.py
Original file line number Diff line number Diff line change
Expand Up @@ -11,8 +11,7 @@
at import and published as :data:`RENDER_VAR_FRAME_KEYS`; per-frame code indexes that
mapping instead of re-checking the version.

The public extras stay pinned to ``ovrtx==0.4.1.364340``; a missing or unparsable install
keeps the 0.4 key form.
Missing or invalid version metadata selects source-name render-var keys.
"""

from __future__ import annotations
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
raise ModuleNotFoundError(
"The OVRTX renderer requires the optional 'ovrtx' runtime wheel, which is not installed. "
"Run your command with: uv run --extra ovrtx <command> "
"(or, manually: python -m pip install 'ovrtx==0.4.1.364340')."
"(or, manually: python -m pip install 'ovrtx==0.5.0.377615')."
) from exc

from isaaclab.cloner import ClonePlan
Expand Down
2 changes: 1 addition & 1 deletion source/isaaclab_ov/pyproject.toml
Original file line number Diff line number Diff line change
Expand Up @@ -19,7 +19,7 @@ requires-python = ">=3.12"
# Only interpackage dependencies should go here.
dependencies = [
"isaaclab",
"ovstage==0.1.1.355824",
"ovstage==0.2.0.377349",
]

[tool.uv.sources]
Expand Down
6 changes: 4 additions & 2 deletions source/isaaclab_ov/test/assets/test_deformable_object.py
Original file line number Diff line number Diff line change
Expand Up @@ -548,7 +548,8 @@ def test_volume_deformable_reads_writes_targets_materials_and_steps():
material_view.set_attribute(
TT.DEFORMABLE_MATERIAL_YOUNGS_MODULUS,
wp.from_torch(updated_youngs),
indices=wp.array([1], dtype=wp.int32),
# OvPhysX CPU-native material bindings require host-resident indices.
indices=wp.array([1], dtype=wp.int32, device="cpu"),
)
torch.testing.assert_close(
wp.to_torch(material_view.get_attribute(TT.DEFORMABLE_MATERIAL_YOUNGS_MODULUS)), updated_youngs.cpu()
Expand Down Expand Up @@ -649,7 +650,8 @@ def test_surface_deformable_reads_writes_materials_and_steps():
material_view.set_attribute(
TT.DEFORMABLE_MATERIAL_BENDING_DAMPING,
wp.from_torch(updated_bending_damping),
indices=wp.array([0], dtype=wp.int32),
# OvPhysX CPU-native material bindings require host-resident indices.
indices=wp.array([0], dtype=wp.int32, device="cpu"),
Comment thread
nvsekkin marked this conversation as resolved.
)
torch.testing.assert_close(
wp.to_torch(material_view.get_attribute(TT.DEFORMABLE_MATERIAL_BENDING_DAMPING)),
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
Updated deformable rendering references for OVRTX 0.5.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
47 changes: 24 additions & 23 deletions uv.lock

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Loading