Skip to content

fix(ci): pin macOS Node.js build to OpenSSL 3 - #1281

Merged
adsharma merged 2 commits into
mainfrom
fix/macos-openssl-nodejs-python
Oct 16, 2026
Merged

adsharma merged 2 commits into
mainfrom
fix/macos-openssl-nodejs-python

Conversation

@adsharma

Copy link
Copy Markdown
Contributor

Same failure class as #1277 and the Java pin: the macos-26 runner image provides Homebrew openssl@4 alongside openssl@3, and CMake's find_package(OpenSSL 3) resolves to 4.x, tripping the OpenSSL 3.x guard in CMakeLists.txt:

-- Found OpenSSL: /opt/homebrew/Cellar/openssl@4/4.0.3/lib/libcrypto.dylib (found suitable version "4.0.3", minimum required is "3")
CMake Error at CMakeLists.txt:536 (message):
  Ladybug requires OpenSSL 3.x but found 4.0.3.

Fixes https://github.com/LadybugDB/ladybug/actions/runs/38963529396/job/117214998838 (build-nodejs macOS job; that run is on branch sync_submodule2, which will pick this up on rebase).

Adds the same Install OpenSSL 3 (macOS) step (brew install openssl@3 when missing, export OPENSSL_ROOT_DIR) ahead of the CMake configure in:

  • nodejs-workflow.yml (the reported failure — make GEN=Ninja nodejs on macOS)
  • python-wheel-workflow.yml (identical latent failure — macOS cibuildwheel runs the same CMake configure)

Follows the pattern from #1277 / the Java pin. The OPENSSL_ROOT_DIR mechanism was already verified end to end (forces 3.6.4 even with openssl@4 first on the search path).

Same failure as the precompiled-bin and Java macOS jobs: the macos-26
runner image now provides Homebrew openssl@4 alongside openssl@3, and
CMake's find_package(OpenSSL 3) (>= 3) resolves to 4.x, tripping the
OpenSSL 3.x version guard in CMakeLists.txt:

  Ladybug requires OpenSSL 3.x but found 4.0.3.

Fixes https://github.com/LadybugDB/ladybug/actions/runs/38963529396/job/117214998838.

Add the same Install OpenSSL 3 (macOS) step (brew install openssl@3
when missing, export OPENSSL_ROOT_DIR) ahead of the CMake configure
in nodejs-workflow.yml and python-wheel-workflow.yml, whose macOS
cibuildwheel/CMake builds hit the identical error.
The Python wheel build runs inside a cibuildwheel builder with its own
OpenSSL, so the Homebrew openssl@3 pin is unnecessary there. Keeps the
nodejs-workflow.yml pin, which is the reported failure.
@adsharma adsharma changed the title fix(ci): pin macOS Node.js and Python wheel builds to OpenSSL 3 fix(ci): pin macOS Node.js build to OpenSSL 3 Oct 16, 2026
@adsharma
adsharma merged commit 11ea45e into main Oct 16, 2026
2 checks passed
@adsharma
adsharma deleted the fix/macos-openssl-nodejs-python branch October 16, 2026 22:58
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant