citgm
citgm copied to clipboard
chore: skip failing packages on macOS
Checklist
- [x]
npm test
passes - [x] contribution guidelines followed here
Three packages are always failing during the install phase:
Codecov Report
All modified lines are covered by tests :white_check_mark:
Comparison is base (
c47ab10
) 96.44% compared to head (70c4e20
) 95.18%.
Additional details and impacted files
@@ Coverage Diff @@
## main #1006 +/- ##
==========================================
- Coverage 96.44% 95.18% -1.27%
==========================================
Files 28 28
Lines 2139 2139
==========================================
- Hits 2063 2036 -27
- Misses 76 103 +27
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
Could you ping the maintainers of these packages?
Sure! My fault actually:
bufferutil: @3rdeden, @einaros, @lpinca leveldown: @ralphtheninja, @vweevers microtime: @wadey
I'm pinging you since you're listed as the maintainer of the failing packages in the lookup file. Your packages are constantly failing, can you please take a look at the CI reports in the PR description?
For bufferutil the issue is not in the module but in the machine the module is compiled on.
Interesting! Maybe also the other packages can suffer of the same issue due to the machine (in fact, I can confirm that on my macOS machine it works perfectly). @lpinca do you have any insight on how we can fix the root issue?
It also seems that the same issue affects leveldown and microtime.
@lpinca do you have any insight on how we can fix the root issue?
I don't know, are the developer tools correctly installed? Is there any native module that is correctly compiled in that machine?
Maybe the clang version is too old to support the -arch arm64
flag. All three modules (bufferutil, leveldown, microtime) use it.
Shall we open an issue in nodejs/build to ask for help on this topic? I don't have access to the machines
Maybe the clang version is too old to support the
-arch arm64
flag. All three modules (bufferutil, leveldown, microtime) use it.
Quite possibly. The macOS 10.15 VMs are Xcode 11.
We're being forced by Apple to have to move off macOS 10.15 by 1 November 2023 but I'm not sure if that's just the release machines or if we'll also be migrating the test ones https://github.com/nodejs/build/issues/3385.
I have just tested on a macOS 10.15 (10.15.7) VM with Xcode Command Line Tools installed via xcode-select --install
and I can confirm that the issue is caused by the -arch arm64
option. Without it the module is compile correctly.
% clang --version
Apple clang version 12.0.0 (clang-1200.0.32.29)
Target: x86_64-apple-darwin19.6.0
Thread model: posix
InstalledDir: /Library/Developer/CommandLineTools/usr/bin
@lpinca Aye. I've seen that on rocksdb
(has a similar setup as leveldown
) some time ago but didn't get around to fixing it: https://github.com/Level/rocksdb/issues/185#issuecomment-964857602 and https://github.com/Level/leveldown/issues/801#issuecomment-1036424743.
The problem should be fixed for bufferutil. See https://github.com/websockets/bufferutil/commit/3af337566915e9b306c671671939c88fb5ee0ee7.