Port from 4.2 branch (PR #2996):
- Fix dangling pointer in SpineSkeletonDataResource destructor by using
ObjectID validation instead of direct EditorFileSystem access
- Register format loaders/savers at CORE level for GDExtension to fix
loader/saver registration issues (#2899)
Additional fix for GDExtension:
- Fix crash on editor shutdown by properly removing import/inspector
plugins in NOTIFICATION_PREDELETE before the extension is unloaded
- Update MoltenVK.xcframework path for new SDK structure
- VulkanSDK 1.4.328.1 moved MoltenVK from root to macOS/lib/
- Fixes build error: cp: /Users/runner/VulkanSDK/1.3.250.1/MoltenVK/MoltenVK.xcframework: No such file or directory
- Tested locally with successful 300MB ios.zip generation
Adds compiler flag -Wno-error=module-import-in-extern-c to suppress compilation errors when building for iOS with newer Xcode versions. The Vulkan headers include stdint.h inside extern "C" blocks, which conflicts with C++ modules.
The fix is applied via a patch file during setup.sh execution.
The setup.sh script was always trying to generate compile_commands.json
for IDE integration, which triggered SCons platform auto-detection. On
Ubuntu runners without X11 libraries (used for Android/Web builds),
this caused the build to fail.
Changes:
- Only generate compile_commands.json in dev mode (CI uses dev=false)
- Explicitly specify the platform parameter for SCons
- On Linux, check if X11 libraries are available before attempting generation
- Skip generation gracefully if X11 is not available
This fixes the Android and Web template builds in GitHub Actions.
- Updated spine-flutter/example/pubspec.lock to reflect version 4.3.1
- Updated spine-flutter/test/pubspec.lock to reflect version 4.3.1
- Updated GeneratedPluginRegistrant.swift with Flutter-generated formatting
These files were out of sync with the main pubspec.yaml version, causing
CI format checks to fail when flutter pub get regenerated them.
- standard user can import spine-c based api without c warning
- dedicated user can import cpp interface with explict import and enabling cpp interp
- objective-c user can not import cpp using objective-c++ without issue