feat: migrate omni.isaac.* imports to isaacsim.* via compat layer

- Add core/compat.py: compatibility module with try/except imports
  supporting both IS 4.x (omni.isaac.*) and IS 5.x+ (isaacsim.*)
- Migrate 152 imports across 47 files from direct omni.isaac.* to core.compat
- Handle class renames: RigidPrim→SingleRigidPrim, GeometryPrim→SingleGeometryPrim,
  XFormPrim→SingleXFormPrim, Articulation→SingleArticulation (aliased for compatibility)
- Add migerate/migrate_imports.py: automated migration script for future use
- Leave debug_draw and env_loader try/except imports as-is

This eliminates ~100 deprecation warnings from our code on IS 5.0,
and future-proofs for IS 6.x when old APIs may be removed.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Tangger
2026-04-03 15:09:50 +08:00
parent 6032b12c59
commit b178aafe40
47 changed files with 546 additions and 249 deletions

View File

@@ -34,15 +34,12 @@ from curobo.wrap.reacher.motion_gen import (
MotionGenPlanConfig,
PoseCostMetric,
)
from omni.isaac.core import World
from omni.isaac.core.controllers import BaseController
from omni.isaac.core.tasks import BaseTask
from omni.isaac.core.utils.prims import get_prim_at_path
from omni.isaac.core.utils.transformations import (
get_relative_transform,
pose_from_tf_matrix,
)
from omni.isaac.core.utils.types import ArticulationAction
from core.compat import World
from core.compat import BaseController
from core.compat import BaseTask
from core.compat import get_prim_at_path
from core.compat import get_relative_transform, pose_from_tf_matrix
from core.compat import ArticulationAction
# pylint: disable=line-too-long,unused-argument