Chore/bump maplibre native terrain 3d - #34
Merged
Merged
Conversation
…uget.org v5.0.0-pre.1 pushed three packages and then failed the fourth with a bare 413: MapLibreNative.Maui.Vulkan is over nuget.org's 250 MB limit. It was 141.7 MiB at 4.5.1, when pack-vulkan reused the Metal build for Apple. It now carries real Apple Vulkan slices -- iOS device, iOS simulator, and a universal macCatalyst archive -- four amalgams, each merging every .a in the build tree, which is what pushed it over. The Xcode generator's Release configuration still compiles with -g, so every object in those amalgams carried DWARF. Strip it (strip -S, then ranlib) and strip the Android .so with llvm-strip --strip-unneeded, on the OpenGL legs as well as Vulkan -- the OpenGL package is at 189.4 MiB and heading for the same wall. Exported symbols are untouched, so the archives still link and P/Invoke still resolves. Both pack jobs now print each package's size and fail with a clear error above the limit, instead of reaching the push step and getting a 413. VERSION goes to 5.0.0-pre.2: nuget.org will not accept a re-upload of 5.0.0-pre.1 for the three packages already pushed, so that version can never be made consistent. CHANGELOG follows the transformation bump-version.yml applies -- master section renamed, fresh master prepended -- so the release-notes extraction finds the section. Sizes are unverified locally; no macOS or NDK toolchain here. The new size report will show the real numbers on the next run. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
samples-mobile was the tail of the release: on run 33704482667 it started at 45.4 min and ran 57.6, with the GitHub release job right behind it at 103.1 -- a 105 min run whose last 60 min were one job. It waited on `pack`, which waits on `build-windows`, whose arm64 leg is a 35.4 min outlier (x64 is 19.9). But the mobile sample needs only the Android and Apple natives, and those were ready at 22.5 min; the Windows DLLs it was waiting for are in the package but never opened. It now stages the Android and Apple natives itself -- the same layout `pack` builds, minus win-x64/win-arm64 -- and builds MauiSample through the ProjectReference path instead of the packed NuGet. _MlnNativeDir already defaults to bindings/native/, and every native item in the bindings project is Exists()-guarded, so the missing Windows DLLs are a no-op for the android, ios and maccatalyst target frameworks. Trade-off: the mobile legs no longer exercise the packed artifact. pack-wpf still does, for all three Windows samples. Also moves the Xcode selection above the xcframework creation so xcodebuild and the iOS build agree on a toolchain. Note for whoever looks next: parallelising the three sample builds is not worth it. Android is 4.4 min and macCatalyst 1.6; the iOS simulator build alone is 49.0. That step links a ~200 MB amalgam with -force_load, and until the previous commit it carried DWARF for every object -- the strip change may cut it on its own. ci.yml has the same shape and pays it too. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
acalcutt
force-pushed
the
chore/bump-maplibre-native-terrain-3d
branch
from
September 3, 2026 04:02
f598ca8 to
9481d7b
Compare
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.
No description provided.