Repository navigation
Input, outline, pairing and soundtrack fixes on the new layout; macOS context declarations - #2
Merged
Adubbz merged 10 commits intoOct 13, 2026
Conversation
Compose movement and look from independent device samples without recursive pad reads. Reset latch timing on initialization and shutdown, and advance the display epoch when motion is discarded so presentation does not replay stale input. Cover simultaneous keyboard/controller look, mouse-bound movement, lifetime resets, released capture and discarded motion in shared keyboard regressions.
Use caller-provided visible presentation vertices and clear rectangles for model composites. Remove tick-bound region metadata because endpoint bounds do not prove coverage of interpolated rotations, skinning or display camera motion. Require part geometry identity before resynchronizing matched surfaces. Retain upstream scratch-clear behavior and its filtered-outline regression alongside rotating-thin-part and geometry-replacement coverage.
…iness Keep bounded failed-load keys outside the decoded PCM budget so missing tracks cannot evict playable audio. Release evicted decoded tracks before publishing request readiness, preserving deterministic cache lifetime observations. Cover repeated missing loads, bounded negative-cache state, decoded-budget retention and readiness ordering.
…verage Prefix suites that create a graphics device with GfxGpu so consumers can label and exclude them consistently. Include the upstream filtered-outline test in the same classification and describe shared pairing, lifetime and presentation regressions.
Use plain renderer options in CPU recording-reservation checks while retaining all state, capacity and lifetime assertions. Remove the standalone four-light draw duplicated by the indexed/immediate test with the same 50,60,30 oracle.
Define _XOPEN_SOURCE 700 before system headers in the cooperative thread translation unit on Apple, unless the build already supplied it. This exposes getcontext, makecontext and swapcontext in the macOS SDK without changing Windows or Linux preprocessing.
carrdylan52
force-pushed
the
native-presentation-input-audio
branch
from
October 13, 2026 16:11
c629291 to
e5dfd75
Compare
Directory iteration order is unspecified and differs on APFS, so a host could pick a newer matching stage over the one it had just released. Sorting the candidates keeps stage reuse deterministic on every platform.
winit's macOS keyboard handling calls the Text Input Source and keyboard layout functions (TISCopyCurrentKeyboardLayoutInputSource, TISGetInputSourceProperty, kTISPropertyUnicodeKeyLayoutData, LMGetKbdType), which live in Carbon. Linking the static Rust archive from C++ needs the framework listed explicitly, like the other system frameworks.
`SDL_Event event{}` only initialises the union's first member, so the key
fields the test then sets sit beside indeterminate bytes; with stack
pattern initialisation `key.repeat` reads as set and F12 never releases
capture. SDL_zero clears the whole event.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Follow-up fixes on top of the layout change in a393a0b, rebased so it applies cleanly to current main.
GfxGpusuite prefix so consumers can exclude them on GPU-less runners with one filter; a few slow device tests are trimmed or deduplicated to stay within hosted CI limits._XOPEN_SOURCE.Validation: Kazarov's own suite (135 cases) and Python tests pass; ChronicleTwo's Windows and Linux suites pass on this exact pin, and its dungeon, town and prologue captures (and eight display phases in town) are byte-identical to an upstream build on freshly published data.
For Chronicle when it updates its pin: classify
GfxGpu*as GPU-dependent, and check moving immediate-mode meshes that do not opt into vertex blending, since pairing now requires matching geometry.Also: the Rust data stage reuse no longer depends on directory order (the macOS rust test was failing on main and was flaky on Linux), Carbon is linked for winit on macOS, the host library is built with
-ffp-contract=offlike the game (arm64 fused a multiply-add in the logical-to-pixel mapping and landed a pixel off), and the mouse capture tests zero their SDL events.