# Changelog

## 1.0.0 - 2026-08-12

First public release.

### Surface diagrams

- Added `physicsplatform-left`, `physicsplatform-right`, and `physicsplatform-both`.
- Platform floors and walls render as one closed patterned polygon, with exact
  sharp miters on the inner edge and no connection seam.
- Added independent `physics left wall angle` and `physics right wall angle` controls.
- Added `physicswedge` with bottom-left, bottom-right, and top right-angle modes.
- Added `physicsground`, `physicsceiling`, `physicswall-left`, and `physicswall-right`.
- Added named floor, wall, corner, wedge, and contact-surface anchors.

### Mechanics and optics

- Added configurable `physicsblock` and `physicspulley` styles.
- Added `\physicsstringoverpulley`, which joins its endpoint coordinates to a
  pulley through exact tangent segments and a circular contact arc.
- Added a default `surface-right` string route and named `over`, `under`, and
  `shortest` presets, plus complete flat-plane, inclined-plane, bent-platform,
  and hanging-mass examples. Surface examples place the pulley so the
  block-side string is exactly parallel to its supporting surface and passes
  over the upper pulley rim; pulley supports are kept compact.
- Added `physicslens`, with front/back surface anchors and parametric arc anchors.

### Shared facilities

- Bare size values are interpreted as centimetres; explicit TeX units are
  preserved.
- Invalid non-positive lengths and degenerate wedge/lens angles produce package
  errors close to the originating key.
- Straight edges and lens arcs expose integer parametric anchors from 0 to 100.
- Added `physics debug/anchors`, `physics debug/keys`, and `physics debug/all` overlays.
- Added an `l3build` regression suite and reproducible CTAN packaging.

### Public API

- All configuration keys use a consistent `physics ...` prefix.
- The project intentionally makes no compatibility promise for pre-release
  prototypes distributed before version 1.0.0.
