# Changelog ## [0.9.0] - 2026-03-10 ### Added - **Sensor bodies**: `create_sensor_circle`, `create_sensor_rect`, `get_sensor_overlaps`, `is_sensor` - **Revolute joints**: `create_revolute_joint`, `set_joint_motor`, `set_joint_motor_position` - **Prismatic joints**: `create_prismatic_joint`, `set_prismatic_limits`, `set_prismatic_motor` - **Collision events**: `enable_contact_events`, `clear_collision_events` - **Body sleeping**: `sleep_body`, `wake_body`, `is_sleeping` - **Rope joints**: `create_rope_joint` (max distance constraint) ### Fixed - `apply_force()` → `add_force()` (Rapier2D API) - Pattern binding in `get_bodies_by_tag()` - All dead code warnings suppressed ### Test Coverage - **49 tests** (was 35) ### Joint Family | Type | ID | Functions | |------|---:|-----------| | Spring | 0 | `create_spring_joint` | | Fixed | 1 | `create_fixed_joint` | | Revolute | 2 | `create_revolute_joint`, `set_joint_motor`, `set_joint_motor_position` | | Prismatic | 3 | `create_prismatic_joint`, `set_prismatic_limits`, `set_prismatic_motor` | | Rope | 4 | `create_rope_joint` | ## [0.5.0] - 2026-03-09 - Initial release