Fix macOS CI: disable curl optional deps and bust stale cache#373
Merged
Conversation
curl 7.75.0's configure was auto-detecting nghttp2 from Homebrew on the runner that built the cache. The cached tree baked in include paths to that Homebrew layout. On the current macos-latest (15.7.4, ARM, /opt/homebrew), `sudo make install` triggers a recompile of altsvc.lo that fails with `'nghttp2/nghttp2.h' file not found`. Disable nghttp2 and other optional library auto-detection (libidn2, libssh2, brotli, zstd, librtmp, libpsl, ldap) so the build is deterministic across runner images. Tests only use basic libcurl HTTP. Cache key bumped to v3 to discard the broken cache. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## master #373 +/- ##
=======================================
Coverage 68.03% 68.03%
=======================================
Files 34 34
Lines 1730 1730
Branches 697 697
=======================================
Hits 1177 1177
Misses 80 80
Partials 473 473 Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
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.
Summary
macos-latestjobs in run 24945169734 failed atInstall CURL (for testing on mac only). The cachedcurl-7.75.0tree (built whenmacos-latesthad a different Homebrew layout) hadnghttp2baked into the configured Makefile; on the current runner (15.7.4 ARM,/opt/homebrew)sudo make installtriggers a recompile ofaltsvc.lothat fails with'nghttp2/nghttp2.h' file not found.--without-nghttp2 --without-libidn2 --without-libssh2 --without-brotli --without-zstd --without-librtmp --without-libpsl --disable-ldap --disable-ldapsto curl's./configureso the build is deterministic across runner images. Tests only need basic libcurl HTTP — none of these optional features are used.…-pre-built-v2to…-pre-built-v3to discard the broken cache. Same change applied torelease.yml.Test plan
macos-latestmatrix entries (gcc/clang × static/dynamic × debug/nodebug).curl-7.75.0rebuilds from scratch on first hit (cache miss expected with new key).sudo make installsucceeds without recompilation errors.🤖 Generated with Claude Code