Skip to content

feat: Add macOS support to Swift Package Manager build system #1293

feat: Add macOS support to Swift Package Manager build system

feat: Add macOS support to Swift Package Manager build system #1293

Triggered via pull request March 26, 2026 03:43
Status Cancelled
Total duration 10m 16s
Artifacts 1

microsoft-pr.yml

on: pull_request
Matrix: Build RNTester / build-rntester
Build SPM  /  Build Hermes
1m 36s
Build SPM / Build Hermes
Lint PR title
22s
Lint PR title
NPM Publish (Dry Run)
48s
NPM Publish (Dry Run)
Check Yarn Constraints
43s
Check Yarn Constraints
JavaScript Tests
2m 53s
JavaScript Tests
Test react-native-macos init  /  Test react-native-macos init
Test react-native-macos init / Test react-native-macos init
Build the website  /  Build the website
50s
Build the website / Build the website
Matrix: Build SPM / build-spm
Fit to window
Zoom out
Zoom in

Annotations

15 errors and 50 warnings
Build SPM / Build Hermes
Process completed with exit code 1.
Build RNTester / ios, newarch
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
Build RNTester / ios, newarch
The operation was canceled.
Build RNTester / ios, oldarch
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
Build RNTester / ios, oldarch
The operation was canceled.
Build RNTester / macos, oldarch
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
Build RNTester / macos, oldarch
The operation was canceled.
Build RNTester / macos, newarch
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
Build RNTester / macos, newarch
The operation was canceled.
Build RNTester / visionos, newarch
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
Build RNTester / visionos, newarch
The operation was canceled.
Build RNTester / visionos, oldarch
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
PR
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
Build RNTester / visionos, oldarch
The operation was canceled.
PR
Canceling since a higher priority waiting request for PR-refs/pull/2815/merge-feature/spm-macos-support exists
Lint PR title
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Check Yarn Constraints
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
NPM Publish (Dry Run)
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build the website / Build the website
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4, actions/upload-artifact@v4. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Node.js 20 will be removed from the runner on September 16th, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
JavaScript Tests
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build SPM / Build Hermes
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build RNTester / ios, newarch
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build RNTester / ios, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m#L54
'SecTrustGetCertificateAtIndex' is deprecated: first deprecated in iOS 15.0 [-Wdeprecated-declarations]
Build RNTester / ios, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Utilities/SRURLUtilities.m#L63
'NSURLNetworkServiceTypeVoIP' is deprecated: first deprecated in iOS 13.0 - Use PushKit for VoIP control purposes [-Wdeprecated-declarations]
Build RNTester / ios, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m#L54
'SecTrustGetCertificateAtIndex' is deprecated: first deprecated in iOS 15.0 [-Wdeprecated-declarations]
Build RNTester / ios, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Utilities/SRURLUtilities.m#L63
'NSURLNetworkServiceTypeVoIP' is deprecated: first deprecated in iOS 13.0 - Use PushKit for VoIP control purposes [-Wdeprecated-declarations]
Build RNTester / ios, newarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / ios, newarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / ios, newarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / ios, newarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / ios, newarch
ld: ignoring duplicate libraries: '../../external/llvh/lib/Support/libLLVHSupport.a', '../../lib/AST/libhermesAST.a', '../../lib/Parser/libhermesParser.a', '../../lib/Support/libhermesSupport.a'
Build RNTester / ios, newarch
/Applications/Xcode_26.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: libhermesFlowParser.a the table of contents is empty (no object file members in the library define global symbols)
Build RNTester / ios, oldarch
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build RNTester / ios, oldarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m#L54
'SecTrustGetCertificateAtIndex' is deprecated: first deprecated in iOS 15.0 [-Wdeprecated-declarations]
Build RNTester / ios, oldarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Utilities/SRURLUtilities.m#L63
'NSURLNetworkServiceTypeVoIP' is deprecated: first deprecated in iOS 13.0 - Use PushKit for VoIP control purposes [-Wdeprecated-declarations]
Build RNTester / ios, oldarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m#L54
'SecTrustGetCertificateAtIndex' is deprecated: first deprecated in iOS 15.0 [-Wdeprecated-declarations]
Build RNTester / ios, oldarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Utilities/SRURLUtilities.m#L63
'NSURLNetworkServiceTypeVoIP' is deprecated: first deprecated in iOS 13.0 - Use PushKit for VoIP control purposes [-Wdeprecated-declarations]
Build RNTester / ios, oldarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / ios, oldarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / ios, oldarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / ios, oldarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / ios, oldarch
ld: ignoring duplicate libraries: '../../external/llvh/lib/Support/libLLVHSupport.a', '../../lib/AST/libhermesAST.a', '../../lib/Parser/libhermesParser.a', '../../lib/Support/libhermesSupport.a'
Build RNTester / ios, oldarch
/Applications/Xcode_26.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: libhermesFlowParser.a the table of contents is empty (no object file members in the library define global symbols)
Build RNTester / macos, oldarch
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build RNTester / macos, oldarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / macos, oldarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / macos, oldarch
ld: ignoring duplicate libraries: '../../external/llvh/lib/Support/libLLVHSupport.a', '../../lib/AST/libhermesAST.a', '../../lib/Parser/libhermesParser.a', '../../lib/Support/libhermesSupport.a'
Build RNTester / macos, oldarch
/Applications/Xcode_26.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: libhermesFlowParser.a the table of contents is empty (no object file members in the library define global symbols)
Build RNTester / macos, newarch
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build RNTester / macos, newarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / macos, newarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / macos, newarch
ld: ignoring duplicate libraries: '../../external/llvh/lib/Support/libLLVHSupport.a', '../../lib/AST/libhermesAST.a', '../../lib/Parser/libhermesParser.a', '../../lib/Support/libhermesSupport.a'
Build RNTester / macos, newarch
/Applications/Xcode_26.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: libhermesFlowParser.a the table of contents is empty (no object file members in the library define global symbols)
Build RNTester / visionos, newarch
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/
Build RNTester / visionos, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m#L54
'SecTrustGetCertificateAtIndex' is deprecated: first deprecated in visionOS 1.0 [-Wdeprecated-declarations]
Build RNTester / visionos, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Utilities/SRURLUtilities.m#L63
'NSURLNetworkServiceTypeVoIP' is deprecated: first deprecated in visionOS 1.0 - Use PushKit for VoIP control purposes [-Wdeprecated-declarations]
Build RNTester / visionos, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Security/SRPinningSecurityPolicy.m#L54
'SecTrustGetCertificateAtIndex' is deprecated: first deprecated in visionOS 1.0 [-Wdeprecated-declarations]
Build RNTester / visionos, newarch: packages/rn-tester/Pods/SocketRocket/SocketRocket/Internal/Utilities/SRURLUtilities.m#L63
'NSURLNetworkServiceTypeVoIP' is deprecated: first deprecated in visionOS 1.0 - Use PushKit for VoIP control purposes [-Wdeprecated-declarations]
Build RNTester / visionos, newarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / visionos, newarch: packages/react-native/ReactCommon/jsinspector-modern/tracing/RuntimeSamplingProfileTraceEventSerializer.h#L101
parameter 'profileStartUnixTimestamp' not found in the function declaration [-Wdocumentation]
Build RNTester / visionos, newarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / visionos, newarch: packages/react-native/ReactCommon/reactperflogger/fusebox/FuseboxTracer.h#L26
declaration is marked with '@deprecated' command but does not have a deprecation attribute [-Wdocumentation-deprecated-sync]
Build RNTester / visionos, newarch
ld: ignoring duplicate libraries: '../../external/llvh/lib/Support/libLLVHSupport.a', '../../lib/AST/libhermesAST.a', '../../lib/Parser/libhermesParser.a', '../../lib/Support/libhermesSupport.a'
Build RNTester / visionos, newarch
/Applications/Xcode_26.2.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ranlib: archive library: libhermesFlowParser.a the table of contents is empty (no object file members in the library define global symbols)
Build RNTester / visionos, oldarch
Node.js 20 actions are deprecated. The following actions are running on Node.js 20 and may not work as expected: actions/checkout@v4, actions/setup-node@v4.4.0. Actions will be forced to run with Node.js 24 by default starting June 2nd, 2026. Please check if updated versions of these actions are available that support Node.js 24. To opt into Node.js 24 now, set the FORCE_JAVASCRIPT_ACTIONS_TO_NODE24=true environment variable on the runner or in your workflow file. Once Node.js 24 becomes the default, you can temporarily opt out by setting ACTIONS_ALLOW_USE_UNSECURE_NODE_VERSION=true. For more information see: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/

Artifacts

Produced during runtime
Name Size Digest
website-build
2.67 MB
sha256:ca5a3550c3516b71dc167507bad00ad9cdb525bed77a0ac951ededd25166f107