Skip to content

Update mrbind to make the Python type registration order deterministic - #6545

Closed
Fedr wants to merge 3 commits into
masterfrom
mrbind-deterministic-order
Closed

Update mrbind to make the Python type registration order deterministic#6545
Fedr wants to merge 3 commits into
masterfrom
mrbind-deterministic-order

Conversation

@Fedr

@Fedr Fedr commented Aug 7, 2026

Copy link
Copy Markdown
Contributor

Points thirdparty/mrbind at current mrbind master (f2764c51), which contains the deterministic type registration order (236ba967) and deterministic alias ordering (f2764c51).

This makes the mrmeshpy registration order — and with it mrmeshpy.pyi, the position of __init__ overloads injected from conversion operators, and therefore overload resolution — reproducible across builds of identical source. Previously two same-source builds could differ: e.g. two independent master builds ordered AffineXf3f's conversion-injected constructors differently in the .pyi.

Verified in mrbind by linking the same binding fragment objects in two different orders: the full MRBIND_DEBUG=2 registration dump is byte-identical (MeshInspector/mrbind#43 adds this as a regression check; it is test-only and not needed here).

@Fedr
Fedr marked this pull request as ready for review August 7, 2026 19:54
@Fedr

Fedr commented Aug 7, 2026

Copy link
Copy Markdown
Contributor Author

Superseded by #6553 (identical gitlink bump to f2764c51), which is merged.

@Fedr Fedr closed this Aug 7, 2026
@Fedr
Fedr deleted the mrbind-deterministic-order branch August 7, 2026 20:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant