Genesis-Embodied-AI/genesis-world · error · DeprecationError
This property has been removed.
Error message
This property has been removed.
What it means
RigidLink.is_free has been removed and raises DeprecationError on access. Free-floating status must now be derived from the link's root_joint (a link is free-floating when its root joint is a free joint) or from the entity-level API.
Source
Thrown at genesis/engine/entities/rigid_entity/rigid_link.py:1258
return sum([geom.n_verts for geom in self._geoms])
@property
def n_faces(self) -> int:
"""
Number of faces of all the link's geoms.
"""
return sum([geom.n_faces for geom in self._geoms])
@property
def n_edges(self) -> int:
"""
Number of edges of all the link's geoms.
"""
return sum([geom.n_edges for geom in self._geoms])
@property
def is_free(self):
raise DeprecationError("This property has been removed.")
View on GitHub (pinned to 56e4aa5d82)
Solutions
- Derive mobility from the link's root joint, e.g. link.root_joint is not None and link.root_joint.type == gs.JOINT_TYPE.FREE
- Check link.is_fixed for the fixed/free distinction if that is what you need
- Grep for '.is_free' across link loops and replace with the root-joint or is_fixed check
Example fix
# before
if link.is_free:
...
# after
if link.is_fixed is False and link.root_joint is not None and link.root_joint.type == gs.JOINT_TYPE.FREE:
... Defensive patterns
Strategy: validation
Type guard
def link_is_free_floating(link) -> bool:
return link.root_joint is not None and link.root_joint.type == gs.JOINT_TYPE.FREE
Try / catch
try:
val = link.is_free
except DeprecationError:
val = link.root_joint is not None and link.root_joint.type == gs.JOINT_TYPE.FREE
Prevention
- Derive mobility from root joint type or link.is_fixed instead of removed booleans
- Centralize per-link mobility checks in one helper so API removals break one place
When it happens
Trigger: Accessing link.is_free on a RigidLink, e.g. in per-link gravity compensation, sleep/hibernation logic, or custom contact handling written for an older Genesis.
Common situations: Migrating simulation code after the link API refactor removed boolean mobility shortcuts; scripts that looped over entity.links and branched on link.is_free for applying forces or damping.
Related errors
- This property has been removed.
- This property has been removed.
- This method has been removed. Please consider operating at l
- This method has been removed. Please consider operating at l
- This method has been removed. Please use 'get_AABB()' instea
AI-assisted analysis of Genesis-Embodied-AI/genesis-world@56e4aa5d82 (2026-08-28).
Data as JSON: /api/errors/45bdc5687284f670.
Report an issue: GitHub.