Build Information
Successful build of swift-nio-ssh, reference 0.15.0 (3ec281), with Swift 6.4 for Android on 26 Sep 2026 18:48:28 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-53886770-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/apple/swift-nio-ssh.git
Reference: 0.15.0
Initialized empty Git repository in /host/spi-builder-workspace/.git/
hint: Using 'master' as the name for the initial branch. This default branch name
hint: is subject to change. To configure the initial branch name to use in all
hint: of your new repositories, which will suppress this warning, call:
hint:
hint: git config --global init.defaultBranch <name>
hint:
hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
hint: 'development'. The just-created branch can be renamed via this command:
hint:
hint: git branch -m <name>
From https://github.com/apple/swift-nio-ssh
* tag 0.15.0 -> FETCH_HEAD
HEAD is now at 3ec2814 Limit client auth attempts (#247)
Cloned https://github.com/apple/swift-nio-ssh.git
Revision (git rev-parse @):
3ec281496f28a3b6581afd946b759e2642f5cd8d
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/apple/swift-nio-ssh.git at 0.15.0
========================================
Build
========================================
Selected platform: android
Swift version: 6.4
Building package at path: $PWD
https://github.com/apple/swift-nio-ssh.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-53886770-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/saguaro1/spi-images:android-6.4-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:abadcff584c273feba50641b454858d377ba30b35ea7287a94f45ebd8afd0ea0
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Fetching https://github.com/apple/swift-nio.git
Fetching https://github.com/apple/swift-crypto.git
Fetching https://github.com/apple/swift-atomics.git
[1/18562] Fetching swift-crypto
[2/20447] Fetching swift-crypto, swift-atomics
Fetched https://github.com/apple/swift-atomics.git (0.57s)
[186/18562] Fetching swift-crypto
[1858/104730] Fetching swift-crypto, swift-nio
Fetched https://github.com/apple/swift-crypto.git (2.75s)
Fetched https://github.com/apple/swift-nio.git (2.78s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.3.1 (2.98s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.103.0 (0.36s)
Fetching https://github.com/apple/swift-system.git
Fetching https://github.com/apple/swift-collections.git
[1/6983] Fetching swift-system
[420/34762] Fetching swift-system, swift-collections
Fetched https://github.com/apple/swift-system.git (1.10s)
Fetched https://github.com/apple/swift-collections.git (1.11s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.7.1 (1.42s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.8.1 (0.23s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 4.5.2 (1.16s)
Fetching https://github.com/apple/swift-asn1.git
[1/1986] Fetching swift-asn1
Fetched https://github.com/apple/swift-asn1.git (0.50s)
Computing version for https://github.com/apple/swift-asn1.git
Computed https://github.com/apple/swift-asn1.git at 1.7.3 (0.73s)
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.103.0
Creating working copy for https://github.com/apple/swift-collections.git
Working copy of https://github.com/apple/swift-collections.git resolved at 1.7.1
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 4.5.2
Creating working copy for https://github.com/apple/swift-system.git
Working copy of https://github.com/apple/swift-system.git resolved at 1.8.1
Creating working copy for https://github.com/apple/swift-atomics.git
Working copy of https://github.com/apple/swift-atomics.git resolved at 1.3.1
Creating working copy for https://github.com/apple/swift-asn1.git
Working copy of https://github.com/apple/swift-asn1.git resolved at 1.7.3
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 1015]
[Planning deferred tasks]
[Starting]
[137 / 688] CNIOLinux
[183 / 723] _NIOBase64
[195 / 723] _NIOBase64
[196 / 723] _AtomicsShims
[197 / 723] InternalCollectionsUtilities
[209 / 723] NIOConcurrencyHelpers
[209 / 723] CryptoBoringWrapper
[220 / 723] NIOConcurrencyHelpers-product
[228 / 725] _NIODataStructures
[229 / 725] _NIODataStructures
[233 / 725] _NIODataStructures
[237 / 725] CryptoBoringWrapper
[238 / 726] InternalCollectionsUtilities
[241 / 726] InternalCollectionsUtilities
[246 / 726] CXKCP
[254 / 741] CNIOOpenBSD
[261 / 741] SpanPreview
[265 / 742] Atomics
[267 / 742] Atomics
[271 / 743] InternalCollectionsUtilities
[274 / 743] Atomics
[278 / 743] _NIOBase64
[286 / 744] CNIOAtomics
[286 / 753] CryptoBoringWrapper
[291 / 753] Atomics
[297 / 753] CCryptoBoringSSL
[299 / 755] CCryptoBoringSSL
[300 / 755] CNIOAtomics
[302 / 755] CCryptoBoringSSL
[304 / 755] CCryptoBoringSSL
[306 / 755] CCryptoBoringSSL
[308 / 755] CCryptoBoringSSL
[311 / 755] CCryptoBoringSSL
[318 / 755] CCryptoBoringSSL
[319 / 755] CCryptoBoringSSL
[320 / 755] Crypto
[321 / 755] CCryptoBoringSSL
[330 / 755] CCryptoBoringSSL
[331 / 755] CCryptoBoringSSL
[333 / 755] CCryptoBoringSSL
[335 / 755] CCryptoBoringSSL
[337 / 755] CCryptoBoringSSL
[339 / 755] CCryptoBoringSSL
[345 / 755] CCryptoBoringSSL
[353 / 755] CCryptoBoringSSL
[356 / 755] CCryptoBoringSSL
[359 / 755] CCryptoBoringSSL
[361 / 755] CCryptoBoringSSL
[363 / 755] CCryptoBoringSSL
[367 / 755] CCryptoBoringSSL
[368 / 755] CCryptoBoringSSL
[371 / 755] CCryptoBoringSSL
[376 / 755] CCryptoBoringSSL
[379 / 755] CCryptoBoringSSL
[380 / 755] CCryptoBoringSSL
[382 / 755] CCryptoBoringSSL
[384 / 755] CCryptoBoringSSL
[386 / 755] CCryptoBoringSSL
[388 / 755] CCryptoBoringSSL
[393 / 755] CCryptoBoringSSL
[394 / 755] CCryptoBoringSSL
[397 / 755] CCryptoBoringSSL
[398 / 755] CCryptoBoringSSL
[403 / 755] CCryptoBoringSSL
[413 / 755] CCryptoBoringSSL
[422 / 755] CCryptoBoringSSL
[431 / 755] CCryptoBoringSSL
[433 / 755] CCryptoBoringSSL
[436 / 755] CCryptoBoringSSL
[440 / 755] CCryptoBoringSSL
[442 / 755] CCryptoBoringSSL
[448 / 755] CCryptoBoringSSL
[451 / 755] CCryptoBoringSSL
[453 / 755] CCryptoBoringSSL
[455 / 755] CCryptoBoringSSL
[456 / 755] CCryptoBoringSSL
[457 / 755] CCryptoBoringSSL
[459 / 755] CCryptoBoringSSL
[462 / 755] CCryptoBoringSSL
[465 / 755] CCryptoBoringSSL
[467 / 755] CCryptoBoringSSL
[468 / 755] CCryptoBoringSSL
[470 / 755] CCryptoBoringSSL
[472 / 755] CCryptoBoringSSL
[474 / 755] CCryptoBoringSSL
[476 / 755] CCryptoBoringSSL
[477 / 755] CCryptoBoringSSL
[478 / 755] CCryptoBoringSSL
[482 / 755] CCryptoBoringSSL
[491 / 755] CCryptoBoringSSL
[494 / 755] CCryptoBoringSSL
[496 / 755] CCryptoBoringSSL
[501 / 755] CCryptoBoringSSL
[504 / 755] CCryptoBoringSSL
[506 / 755] CCryptoBoringSSL
[510 / 755] CCryptoBoringSSL
[518 / 755] CCryptoBoringSSL
[525 / 755] CCryptoBoringSSL
[531 / 755] CCryptoBoringSSL
[533 / 755] CCryptoBoringSSL
[534 / 755] CCryptoBoringSSL
[539 / 755] CCryptoBoringSSL
[540 / 755] CCryptoBoringSSL
[542 / 755] CCryptoBoringSSL
[547 / 755] CCryptoBoringSSL
[550 / 755] CCryptoBoringSSL
[553 / 755] CCryptoBoringSSL
[555 / 755] CCryptoBoringSSL
[558 / 755] CCryptoBoringSSL
[561 / 755] CCryptoBoringSSL
[564 / 755] CCryptoBoringSSL
[566 / 755] CCryptoBoringSSL
[569 / 755] CCryptoBoringSSL
[572 / 755] CCryptoBoringSSL
[573 / 755] CCryptoBoringSSL
[578 / 755] CCryptoBoringSSL
[580 / 755] CCryptoBoringSSL
[582 / 755] CCryptoBoringSSL
[588 / 755] CCryptoBoringSSL
[592 / 755] CCryptoBoringSSL
[596 / 755] CCryptoBoringSSL
[603 / 755] CCryptoBoringSSL
[607 / 755] CCryptoBoringSSL
[610 / 755] CCryptoBoringSSL
[613 / 755] CCryptoBoringSSL
[616 / 755] CCryptoBoringSSL
[620 / 755] CCryptoBoringSSL
[621 / 755] CCryptoBoringSSL
[624 / 755] CCryptoBoringSSL
[633 / 755] CCryptoBoringSSL
[640 / 755] CCryptoBoringSSL
[648 / 755] CCryptoBoringSSL
[651 / 755] CCryptoBoringSSL
[652 / 755] CCryptoBoringSSL
[654 / 755] CCryptoBoringSSL
[656 / 755] CCryptoBoringSSL
[660 / 755] CCryptoBoringSSL
[663 / 755] CCryptoBoringSSL
[664 / 755] CCryptoBoringSSL
[666 / 755] CryptoBoringWrapper
[668 / 755] CCryptoBoringSSL
[671 / 755] CCryptoBoringSSL
[673 / 755] Crypto
[673 / 755] CCryptoBoringSSL
[674 / 755] Crypto
[675 / 755] CXKCP
[679 / 755] Atomics
[685 / 765] NIOConcurrencyHelpers
[686 / 765] Crypto
[689 / 765] DequeModule
[691 / 765] DequeModule
[691 / 765] CXKCPShims
[691 / 765] DequeModule
[693 / 766] DequeModule
[693 / 767] CCryptoBoringSSL
[696 / 767] CryptoBoringWrapper
[704 / 768] DequeModule
[714 / 777] NIOCore
[715 / 777] DequeModule
[715 / 777] NIOCore
[715 / 778] NIOCore
[733 / 797] NIOPosix
[734 / 797] NIOCore
[736 / 797] NIOFoundationEssentialsCompat
[742 / 797] NIOPosix
[742 / 797] NIOEmbedded
[745 / 797] NIOEmbedded
[749 / 797] NIOFoundationEssentialsCompat
[750 / 798] NIOEmbedded
[752 / 799] NIOPosix
[752 / 799] NIOFoundationEssentialsCompat
[755 / 799] NIOEmbedded
[760 / 799] NIOFoundationEssentialsCompat
[763 / 799] NIOCore-product
[765 / 802] NIO
[772 / 803]
[775 / 808] NIOFoundationCompat
[776 / 808] NIOFoundationCompat
[777 / 808] NIOFoundationCompat
[778 / 808] NIOFoundationCompat
[784 / 810] NIOSSH
[788 / 818] NIOSSH
[790 / 818] NIOSSH
[792 / 819] NIOSSH
[793 / 819] NIOSSH
[796 / 820] NIOSSH
[803 / 820] NIOPosix
[804 / 822] NIOSSHServer-product
[810 / 827] NIOSSHServer-product
[817 / 843] NIOSSHClient-product
[821 / 843] NIOSSHPerformanceTester-product
[822 / 843] NIOSSHPerformanceTester-product
[826 / 843] NIOSSHClient-product
[832 / 844] NIOSSHPerformanceTester-product
[835 / 844] NIO
[836 / 844] NIOSSHClient-product
[839 / 845] NIOSSH
[842 / 846] NIOSSH
[846 / 846] NIOSSH-product
[846 / 846] NIOSSHClient-product
Build complete! (50.70 secs)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-nio",
"requirement" : {
"range" : [
{
"lower_bound" : "2.81.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-nio.git"
},
{
"identity" : "swift-crypto",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-crypto.git"
},
{
"identity" : "swift-atomics",
"requirement" : {
"range" : [
{
"lower_bound" : "1.0.2",
"upper_bound" : "2.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-atomics.git"
}
],
"manifest_display_name" : "swift-nio-ssh",
"name" : "swift-nio-ssh",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
},
{
"name" : "ios",
"version" : "13.0"
},
{
"name" : "watchos",
"version" : "6.0"
},
{
"name" : "tvos",
"version" : "13.0"
}
],
"products" : [
{
"name" : "NIOSSH",
"targets" : [
"NIOSSH"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "NIOSSHServer",
"targets" : [
"NIOSSHServer"
],
"type" : {
"executable" : null
}
},
{
"name" : "NIOSSHPerformanceTester",
"targets" : [
"NIOSSHPerformanceTester"
],
"type" : {
"executable" : null
}
},
{
"name" : "NIOSSHClient",
"targets" : [
"NIOSSHClient"
],
"type" : {
"executable" : null
}
}
],
"targets" : [
{
"c99name" : "NIOSSHTests",
"module_type" : "SwiftTarget",
"name" : "NIOSSHTests",
"path" : "Tests/NIOSSHTests",
"product_dependencies" : [
"NIOCore",
"NIOEmbedded",
"NIOFoundationCompat"
],
"sources" : [
"AESGCMTests.swift",
"ByteBuffer+SSHTests.swift",
"CertifiedKeyTests.swift",
"ChildChannelMultiplexerTests.swift",
"ECKeyExchangeTests.swift",
"EndToEndTests.swift",
"FuzzResultTests.swift",
"HostKeyTests.swift",
"NIOSSHSignatureTests.swift",
"SSHConnectionStateMachineTests.swift",
"SSHEncryptedTrafficTests.swift",
"SSHHandlerTests.swift",
"SSHKeyExchangeStateMachineTests.swift",
"SSHMessagesTests.swift",
"SSHPackerSerializerTests.swift",
"SSHPacketParserTests.swift",
"UserAuthenticationStateMachineTests.swift",
"Utilities.swift",
"UtilitiesTests.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "test"
},
{
"c99name" : "NIOSSHServer",
"module_type" : "SwiftTarget",
"name" : "NIOSSHServer",
"path" : "Sources/NIOSSHServer",
"product_dependencies" : [
"NIOCore",
"NIOPosix",
"NIOFoundationCompat",
"Crypto"
],
"product_memberships" : [
"NIOSSHServer"
],
"sources" : [
"DataToBufferCodec.swift",
"ExecHandler.swift",
"GlueHandler.swift",
"RemotePortForwarding.swift",
"main.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "executable"
},
{
"c99name" : "NIOSSHPerformanceTester",
"module_type" : "SwiftTarget",
"name" : "NIOSSHPerformanceTester",
"path" : "Sources/NIOSSHPerformanceTester",
"product_dependencies" : [
"NIOCore",
"NIOEmbedded",
"Crypto"
],
"product_memberships" : [
"NIOSSHPerformanceTester"
],
"sources" : [
"Benchmark.swift",
"BenchmarkHandshake.swift",
"BenchmarkLinearThroughput.swift",
"main.swift",
"shared.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "executable"
},
{
"c99name" : "NIOSSHClient",
"module_type" : "SwiftTarget",
"name" : "NIOSSHClient",
"path" : "Sources/NIOSSHClient",
"product_dependencies" : [
"NIOCore",
"NIOPosix",
"NIOConcurrencyHelpers"
],
"product_memberships" : [
"NIOSSHClient"
],
"sources" : [
"ExecHandler.swift",
"GlueHandler.swift",
"InteractivePasswordPromptDelegate.swift",
"PortForwardingServer.swift",
"SimpleCLIParser.swift",
"main.swift"
],
"target_dependencies" : [
"NIOSSH"
],
"type" : "executable"
},
{
"c99name" : "NIOSSH",
"module_type" : "SwiftTarget",
"name" : "NIOSSH",
"path" : "Sources/NIOSSH",
"product_dependencies" : [
"NIOCore",
"NIOConcurrencyHelpers",
"NIOFoundationCompat",
"Crypto",
"Atomics"
],
"product_memberships" : [
"NIOSSH",
"NIOSSHServer",
"NIOSSHPerformanceTester",
"NIOSSHClient"
],
"sources" : [
"ByteBuffer+SSH.swift",
"CSPRNG/CSPRNG.swift",
"Child Channels/ChildChannelOptions.swift",
"Child Channels/ChildChannelStateMachine.swift",
"Child Channels/ChildChannelUserEvents.swift",
"Child Channels/ChildChannelWindowManager.swift",
"Child Channels/ChildChannelWritabilityManager.swift",
"Child Channels/OutboundFlowController.swift",
"Child Channels/SSHChannelData.swift",
"Child Channels/SSHChannelIdentifier.swift",
"Child Channels/SSHChannelMultiplexer.swift",
"Child Channels/SSHChannelType.swift",
"Child Channels/SSHChildChannel.swift",
"Connection State Machine/Operations/AcceptsChannelMessages.swift",
"Connection State Machine/Operations/AcceptsKeyExchangeMessages.swift",
"Connection State Machine/Operations/AcceptsUserAuthMessages.swift",
"Connection State Machine/Operations/AcceptsVersionMessages.swift",
"Connection State Machine/Operations/SendsChannelMessages.swift",
"Connection State Machine/Operations/SendsKeyExchangeMessages.swift",
"Connection State Machine/Operations/SendsUserAuthMessages.swift",
"Connection State Machine/SSHConnectionStateMachine.swift",
"Connection State Machine/States/ActiveState.swift",
"Connection State Machine/States/IdleState.swift",
"Connection State Machine/States/KeyExchangeState.swift",
"Connection State Machine/States/ReceivedKexInitWhenActiveState.swift",
"Connection State Machine/States/ReceivedNewKeysState.swift",
"Connection State Machine/States/RekeyingReceivedNewKeysState.swift",
"Connection State Machine/States/RekeyingSentNewKeysState.swift",
"Connection State Machine/States/RekeyingState.swift",
"Connection State Machine/States/SentKexInitWhenActiveState.swift",
"Connection State Machine/States/SentNewKeysState.swift",
"Connection State Machine/States/SentVersionState.swift",
"Connection State Machine/States/UserAuthenticationState.swift",
"Constants.swift",
"GlobalRequestDelegate.swift",
"Key Exchange/ECDHCompatibleKey.swift",
"Key Exchange/EllipticCurveKeyExchange.swift",
"Key Exchange/SSHKeyExchangeResult.swift",
"Key Exchange/SSHKeyExchangeStateMachine.swift",
"Keys And Signatures/ClientServerAuthenticationDelegate.swift",
"Keys And Signatures/NIOSSHCertifiedPublicKey.swift",
"Keys And Signatures/NIOSSHPrivateKey.swift",
"Keys And Signatures/NIOSSHPublicKey.swift",
"Keys And Signatures/NIOSSHSignature.swift",
"NIOSSHError.swift",
"NIOSSHHandler.swift",
"Role.swift",
"SSHClientConfiguration.swift",
"SSHEncryptablePacketPayload.swift",
"SSHMessages.swift",
"SSHPacketParser.swift",
"SSHPacketSerializer.swift",
"SSHServerConfiguration.swift",
"SSHTerminalModes.swift",
"TransportProtection/AESGCM.swift",
"TransportProtection/SSHTransportProtection.swift",
"User Authentication/ClientUserAuthenticationDelegate.swift",
"User Authentication/DenyAllServerAuthDelegate.swift",
"User Authentication/ServerUserAuthenticationDelegate.swift",
"User Authentication/SimplePasswordDelegate.swift",
"User Authentication/UserAuthDelegate.swift",
"User Authentication/UserAuthSignablePayload.swift",
"User Authentication/UserAuthenticationMethod.swift",
"User Authentication/UserAuthenticationStateMachine.swift",
"_NIOSSHSendableMetatype.swift"
],
"type" : "library"
}
],
"tools_version" : "6.1"
}
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:abadcff584c273feba50641b454858d377ba30b35ea7287a94f45ebd8afd0ea0
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Done.