OpenUI MC 0.0.10 - NeoForge 26.1.2
Curse Maven Snippet
What's new
OpenUI MC 0.0.10
Modern framework
- Complete the additive declarative runtime roadmap while preserving retained
UIComponentcompatibility. - Add recursive immutable declarative descriptions with keyed reconciliation, deterministic replacement/unmount ordering, nested child ownership, legacy retained-leaf embedding, duplicate-key diagnostics, and external-mutation detection.
- Add
Ui.component,Ui.node,Ui.provide,Ui.styled, andUi.semanticconvenience entry points plusUiBuildScoperemembered state, typed context, and keyed async composition. - Make context provider values reactive for dependency-tracked declarative consumers while retaining layout invalidation for legacy retained consumers.
- Coalesce declarative work on a shared per-runtime
FrameSchedulerwith deterministic queued-pass processing and runaway-loop protection. - Use distinct per-host build and reconciliation scheduler keys so a queued reconcile cannot suppress a later reactive rebuild in the same flush.
- Scope declarative scheduler keys and pending trees to each mount generation so stale queued work cannot suppress or mutate a same-runtime remount.
- Expand
UiScopewith keyed resource ownership andScopedAsyncwith keyed deduplication, unmount cancellation, and stale-result suppression. - Expand the stable drawing SPI with textures via
UiTexture, items, tooltips, clipping, transforms, explicit-width borders, and explicit source/texture dimensions across all supported renderer generations. - Make
Stylecomposition support exact/min/max dimensions, typography intent, and explicit zero/none overrides; apply constraints inStyledBoxmeasurement/layout. - Add narration-ready semantics helpers and keep directional spatial navigation compatible with focus traps and overlays.
- Coalesce declarative component builds themselves at the frame scheduler boundary, not only reconciliation, while preserving reactive dependency tracking.
- Expand binary compatibility checks to protected subclass API and gate the checker with regression tests.
- Expand
UiProfilerwith bounded event/build/layout/paint traces, rebuild counts, update causes, and slow-sample warnings.
Compatibility / distribution
- Compare the candidate JVM ABI against the latest released 0.0.9 Fabric baseline while retaining the legacy 0.0.7 compatibility baseline.
- Keep the precompiled Simply Speakers boot fixture, cross-version source parity gate, and full loader/Minecraft build matrix; derive the fixture candidate version from
gradle.propertiesinstead of hard-coding it. - Allow Maven publication for a valid release tag that remains in
mainhistory even ifmainadvances after the release is created, while manual publication still requires currentmain. - Document the completed modern framework API and stable Maven/SPI usage for downstream component authors.
- Own declarative frame scheduling directly in
UiRuntimeand clear queued work during runtime teardown so closed screens cannot be retained by stale scheduler callbacks.
This mod has no additional files

