diff --git a/.changeset/label-declutter.md b/.changeset/label-declutter.md deleted file mode 100644 index e01441b..0000000 --- a/.changeset/label-declutter.md +++ /dev/null @@ -1,19 +0,0 @@ ---- -'@modernrelay/orbit-core': minor ---- - -Label declutter: screen-space overlap culling, on by default. - -Dense clusters used to stack their top-ranked labels into an unreadable -pile — the selector ranked and viewport-culled but never checked where -labels land on screen. Ranked selection now runs a greedy occupancy pass in -rank order: a candidate whose estimated label box intersects an -already-placed label loses its slot to the next-ranked candidate. `showFor` -ids always render and claim their space first. New `LabelConfig` fields: -`overlap: 'hide' (default) | 'allow'` and `overlapPadding` (px, default 2). -Boxes are fixed-per-character estimates — decluttering, not typesetting — -and selection stays overlap-blind when the viewport cannot project. -Note for FakeEngine-based tests: the double projects identity coordinates, -so decluttering engages there too — suites that pin label sets over -tightly-packed fixtures should opt out with `overlap: 'allow'` (this -repo's scheduling-focused suites now do). diff --git a/.changeset/omnigraph-sdk-0-10.md b/.changeset/omnigraph-sdk-0-10.md deleted file mode 100644 index b77d32c..0000000 --- a/.changeset/omnigraph-sdk-0-10.md +++ /dev/null @@ -1,15 +0,0 @@ ---- -'@modernrelay/orbit-omnigraph': minor ---- - -Omnigraph TS SDK 0.10. - -The adapter (and the demo app) now pin `@modernrelay/omnigraph@0.10.0`. -The SDK surface orbit consumes is signature-stable — `export`, -`invokeQuery`, `ingest`, `snapshot`, `schema`, and every type the adapter -imports are unchanged, and the newly exported `ExportRecord` matches the -NDJSON line shape the loader already parses. The SDK-pinned server -generation moves to 0.10, so the version-drift warning now keys off -0.10.x. Recorded test fixtures were regenerated against a real -omnigraph-server 0.10.0 (the fixture recorder also learned the 0.10 CLI -and wire shapes: per-table load counts, snapshot `datasets` entries). diff --git a/packages/core/CHANGELOG.md b/packages/core/CHANGELOG.md index 9748e93..d9a29e4 100644 --- a/packages/core/CHANGELOG.md +++ b/packages/core/CHANGELOG.md @@ -1,5 +1,25 @@ # @modernrelay/orbit-core +## 0.17.0 + +### Minor Changes + +- 214d7f0: Label declutter: screen-space overlap culling, on by default. + + Dense clusters used to stack their top-ranked labels into an unreadable + pile — the selector ranked and viewport-culled but never checked where + labels land on screen. Ranked selection now runs a greedy occupancy pass in + rank order: a candidate whose estimated label box intersects an + already-placed label loses its slot to the next-ranked candidate. `showFor` + ids always render and claim their space first. New `LabelConfig` fields: + `overlap: 'hide' (default) | 'allow'` and `overlapPadding` (px, default 2). + Boxes are fixed-per-character estimates — decluttering, not typesetting — + and selection stays overlap-blind when the viewport cannot project. + Note for FakeEngine-based tests: the double projects identity coordinates, + so decluttering engages there too — suites that pin label sets over + tightly-packed fixtures should opt out with `overlap: 'allow'` (this + repo's scheduling-focused suites now do). + ## 0.16.0 ### Minor Changes diff --git a/packages/core/package.json b/packages/core/package.json index 7d087ae..2d80162 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -1,6 +1,6 @@ { "name": "@modernrelay/orbit-core", - "version": "0.16.0", + "version": "0.17.0", "description": "Headless graph-visualization core: typed declarative snapshots reconciled into atomic engine commits. No React, no DOM, no engine imports.", "license": "MIT", "repository": { diff --git a/packages/data/CHANGELOG.md b/packages/data/CHANGELOG.md index 91ad220..7f114fc 100644 --- a/packages/data/CHANGELOG.md +++ b/packages/data/CHANGELOG.md @@ -1,5 +1,12 @@ # @modernrelay/orbit-data +## 0.17.0 + +### Patch Changes + +- Updated dependencies [214d7f0] + - @modernrelay/orbit-core@0.17.0 + ## 0.16.0 ### Patch Changes diff --git a/packages/data/package.json b/packages/data/package.json index f7070c4..6093450 100644 --- a/packages/data/package.json +++ b/packages/data/package.json @@ -1,6 +1,6 @@ { "name": "@modernrelay/orbit-data", - "version": "0.16.0", + "version": "0.17.0", "description": "Data preparation for Orbit: streaming CSV, JSON paths, Arrow and Parquet into typed graph snapshots.", "license": "MIT", "repository": { diff --git a/packages/engine-cosmos/CHANGELOG.md b/packages/engine-cosmos/CHANGELOG.md index b9bf90e..e7e386b 100644 --- a/packages/engine-cosmos/CHANGELOG.md +++ b/packages/engine-cosmos/CHANGELOG.md @@ -1,5 +1,12 @@ # @modernrelay/orbit-engine-cosmos +## 0.17.0 + +### Patch Changes + +- Updated dependencies [214d7f0] + - @modernrelay/orbit-core@0.17.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/engine-cosmos/package.json b/packages/engine-cosmos/package.json index 61b0704..5f55812 100644 --- a/packages/engine-cosmos/package.json +++ b/packages/engine-cosmos/package.json @@ -1,6 +1,6 @@ { "name": "@modernrelay/orbit-engine-cosmos", - "version": "0.16.0", + "version": "0.17.0", "description": "cosmos.gl engine adapter for Orbit: GPU force layout, native picking, context-loss recovery.", "license": "MIT", "repository": { diff --git a/packages/omnigraph/CHANGELOG.md b/packages/omnigraph/CHANGELOG.md index f0c8369..38024a8 100644 --- a/packages/omnigraph/CHANGELOG.md +++ b/packages/omnigraph/CHANGELOG.md @@ -1,5 +1,26 @@ # @modernrelay/orbit-omnigraph +## 0.17.0 + +### Minor Changes + +- b97de1a: Omnigraph TS SDK 0.10. + + The adapter (and the demo app) now pin `@modernrelay/omnigraph@0.10.0`. + The SDK surface orbit consumes is signature-stable — `export`, + `invokeQuery`, `ingest`, `snapshot`, `schema`, and every type the adapter + imports are unchanged, and the newly exported `ExportRecord` matches the + NDJSON line shape the loader already parses. The SDK-pinned server + generation moves to 0.10, so the version-drift warning now keys off + 0.10.x. Recorded test fixtures were regenerated against a real + omnigraph-server 0.10.0 (the fixture recorder also learned the 0.10 CLI + and wire shapes: per-table load counts, snapshot `datasets` entries). + +### Patch Changes + +- Updated dependencies [214d7f0] + - @modernrelay/orbit-core@0.17.0 + ## 0.16.0 ### Patch Changes diff --git a/packages/omnigraph/package.json b/packages/omnigraph/package.json index f1dac95..3e92544 100644 --- a/packages/omnigraph/package.json +++ b/packages/omnigraph/package.json @@ -1,6 +1,6 @@ { "name": "@modernrelay/orbit-omnigraph", - "version": "0.16.0", + "version": "0.17.0", "description": "Omnigraph adapter for Orbit: og.export() loader with drift policies, .pg schema parser, and typed codegen.", "license": "MIT", "repository": { diff --git a/packages/react/CHANGELOG.md b/packages/react/CHANGELOG.md index f67c55b..f128f42 100644 --- a/packages/react/CHANGELOG.md +++ b/packages/react/CHANGELOG.md @@ -1,5 +1,12 @@ # @modernrelay/orbit-react +## 0.17.0 + +### Patch Changes + +- Updated dependencies [214d7f0] + - @modernrelay/orbit-core@0.17.0 + ## 0.16.0 ### Minor Changes diff --git a/packages/react/package.json b/packages/react/package.json index 96ffa39..f9a30bf 100644 --- a/packages/react/package.json +++ b/packages/react/package.json @@ -1,6 +1,6 @@ { "name": "@modernrelay/orbit-react", - "version": "0.16.0", + "version": "0.17.0", "description": "React binding for Orbit: plus tree-shakeable components (toolbar, search, minimap, tooltip, inspector, table, navigator, and more).", "license": "MIT", "repository": {