v0.2.197
New Features
Cross-compile to Windows via lld-link on Linux
- Windows cross-compilation from Linux using
lld-link— no MSVC toolchain required /FORCE:UNRESOLVEDflag for lld-link to handle missing UI symbols gracefully- Stub generation for missing UI symbols on Windows regardless of
needs_uiflag
iOS game loop support
--features ios-game-loopenables CADisplayLink-based game loop for iOS targets
Cross-platform menu APIs
perry_ui_menu_clearandperry_ui_menu_add_standard_actionFFI added to all 6 platforms (were macOS-only)- Windows RefCell re-entrancy fix for
dispatch_menu_item(extract callback before calling)
Bug Fixes
perry publishwrong platform display: Windows and Web targets were incorrectly showing as "macOS" — also fixedis_macosflag to exclude Windows/Web from signing/notarization logic- Menu callback RefCell re-entrancy panic: extract callback from RefCell before invoking, matching macOS pattern
- macOS textfield focus ring: disable focus ring when textfield is borderless
- i32 module variable write-back: fix incorrect write-back for i32-typed module variables
- Geisterhand compile fix: remove unused Bloom input injection extern declarations
Android Improvements
- Force 16 KB page alignment when building native libs (required by newer Android NDK/devices)
- Copy companion
.sofiles next to output for proper library resolution
Full Changelog
6227c88 chore: remove Bloom input injection from geisterhand + update Cargo.lock
7c4a034 Force 16 KB page alignment when building native libs for Android
26db150 fix: cross-platform menuClear/menuAddStandardAction + Windows RefCell re-entrancy
e1bf24b Copy companion .so files next to output for Android builds
d76b380 fix: add /FORCE:UNRESOLVED to lld-link for Windows cross-compilation
a39217b fix: generate stubs for missing UI symbols on Windows regardless of needs_ui
d94631b fix: perry publish showing wrong platform for Windows/Web targets
665398e fix: disable macOS focus ring when textfield is borderless
c543332 feat: iOS game loop support (--features ios-game-loop)
491d259 fix: menu callback RefCell re-entrancy panic + add menuClear API
4766761 fix: i32 module variable write-back + geisterhand input injection + compile fix
642d94a feat: cross-compile to Windows via lld-link on Linux