You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The downstream migration guide (v1.0, 2026-04-27) documented only the
v0.1.1->v1.0.0 Mesh-alias migration and asserted 'existing code keeps
working' — but v1.4.0 shipped the #187 breaking renames with no aliases,
which that guide (cited by #257 as the rename-migration authority) never
covered. Add a prominent 'v1.4.0 Breaking Renames (#187)' section:
rename map (skeletonize->peel_layers, _skeletonize/_layerize->_peel,
reskeletonize_local->repeel_local, skeletonize_diff->layers_diff),
smooth_mesh keyword-only sdf/size_fn (#251), a cross-version getattr
shim, and pin guidance. Mapping verified against installed chilmesh
1.4.1. Version-compat table + header/footer refreshed. Docs-only.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_018NbQPRUP1Z7n7iWgicuimW
@@ -12,6 +12,75 @@ Guide for developers of downstream research projects integrating with CHILmesh v
12
12
13
13
**TL;DR:** Existing code keeps working — `CHILmesh` is still importable. The new `Mesh` alias is the v1.0.0 preferred idiom; adopt it when convenient. Optional C++ backend gives 46× speedup with bit-identical output.
14
14
15
+
> **⚠️ v1.4.0 is the exception to "existing code keeps working."** The #187 lexicon
16
+
> ratification renamed several public/semi-public symbols **without compatibility
17
+
> aliases**. If you allow `chilmesh` 1.4.x and still call an old name, you break on
18
+
> upgrade (silently at install, `AttributeError` at runtime). See
19
+
> [v1.4.0 Breaking Renames](#-v140-breaking-renames-187) below **before** widening a pin.
20
+
21
+
---
22
+
23
+
## ⚠️ v1.4.0 Breaking Renames (#187)
24
+
25
+
v1.4.0 (2026-07-11) ratified the CHILmesh skeleton/layer lexicon (#187) and renamed
26
+
the symbols below **with no compatibility aliases**. Because it shipped as a *minor*
27
+
bump, a `chilmesh>=1.x,<2` / caret pin does **not** exclude it — a consumer that (a)
28
+
admits 1.4.x and (b) still calls a renamed symbol breaks on upgrade. The
29
+
`smooth_mesh` signature change (#251) shipped in the same release and is a second
30
+
break vector.
31
+
32
+
### Rename map
33
+
34
+
| Old (≤1.3.x) | New (≥1.4.0) | Surface |
35
+
|---|---|---|
36
+
|`mesh.skeletonize()`|`mesh.peel_layers()`|`CHILmesh` public |
37
+
|`mesh._skeletonize()`|`mesh._peel()`|`CHILmesh` private (**removed** — no alias) |
0 commit comments