Mostly bugfix release, but has some pretty important fixes and other useful additions!
v4.5.0
- Multipart form support for Geode web utilities (#1345)
- Use system certificate store for web requests on Windows, should fix some SSL issues (665a000)
- Fix windows file dialogs needing alt tab in full screen (f1a2b1b)
- Improve iOS stack traces in crashlogs, show the memory address that caused the crash (230ad79)
- Shorten DLL paths in Windows crashlogs, for DLLs that are from GD or mods (f6a5fb3)
- Add a
geode::utils::string::pathToStringmethod, which safely handles UTF-16 conversions on Windows (95eed22, 138d071) - Fix base64 utilities not being exported and thus unusable by mods (dcd42df)
- Fix
geode::utils::game::exitandrestartnot linking on all platforms except Windows (50c09b0) - Fix
Mod::getLaunchArgumentNamenot actually existing (#1356) - Fix
openFoldernot working properly on MacOS (b1a8464) - Fix
LazySpritecallback sometimes being called multiple times (d273ce6) - Fix
LazySpritesometimes invoking undefined behavior (6b5146a) - Fix
WeakRefleaking memory if a strong reference outlives all weak references (9587ce3) - Add a way to cancel
LazySpriteloading (3a35321) - Unify destructor fix across all platforms, replace a global map with a stack, fix Windows leaking references (#1350, b0f38ad)
- Add some logs to web utilities and improve error messages (c2caafc)
- Make AxisScaling::grow shrink to initial size if needed (0c80db6, c3b4e3d)
- Make the name of the mod being uninstalled yellow (9a6346a)
- Fix static notification queue object causing crashes when closing the game (#1340)
- Fix compile issues with
gd::vectoron Android (#1351) - Use Clang 19 for windows builds (#1346)
- Additional CCRenderTexture members (#1352)
- Make property macros public (#1364)