Build Information
Successful build of swift-nio-mtproto, reference 1.2.1 (d736b1), with Swift 6.4 for Android on 20 Oct 2026 12:34:12 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-54344849-0":/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.3
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/UInt8Co/swift-nio-mtproto.git
Reference: 1.2.1
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/UInt8Co/swift-nio-mtproto
* tag 1.2.1 -> FETCH_HEAD
HEAD is now at d736b1f Recover pending pings and preserve server errors during session resume
Cloned https://github.com/UInt8Co/swift-nio-mtproto.git
Revision (git rev-parse @):
d736b1fcf276a7d8f82005356502652685689f8c
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/UInt8Co/swift-nio-mtproto.git at 1.2.1
========================================
Build
========================================
Selected platform: android
Swift version: 6.4
Building package at path: $PWD
https://github.com/UInt8Co/swift-nio-mtproto.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-54344849-0":/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:d9a84d7647394b4473e054b8d8a8f0e0b43300080afc6972ec459a3a608366e4
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/UInt8Co/swift-mtproto.git
[1/18702] Fetching swift-crypto
[2/18997] Fetching swift-crypto, swift-mtproto
[3850/105600] Fetching swift-crypto, swift-mtproto, swift-nio
Fetched https://github.com/UInt8Co/swift-mtproto.git (1.49s)
[76727/105305] Fetching swift-crypto, swift-nio
Fetched https://github.com/apple/swift-crypto.git (3.10s)
Fetched https://github.com/apple/swift-nio.git (3.12s)
Computing version for https://github.com/apple/swift-nio.git
Computed https://github.com/apple/swift-nio.git at 2.104.0 (3.38s)
Fetching https://github.com/apple/swift-collections.git
Fetching https://github.com/apple/swift-system.git
Fetching https://github.com/apple/swift-atomics.git
[1/1889] Fetching swift-atomics
[1890/9220] Fetching swift-atomics, swift-system
[2184/38124] Fetching swift-atomics, swift-system, swift-collections
Fetched https://github.com/apple/swift-atomics.git (0.81s)
Fetched https://github.com/apple/swift-system.git (0.82s)
[9539/28904] Fetching swift-collections
Fetched https://github.com/apple/swift-collections.git (1.25s)
Computing version for https://github.com/UInt8Co/swift-mtproto.git
Computed https://github.com/UInt8Co/swift-mtproto.git at 2.2.0 (1.40s)
Fetching https://github.com/swiftlang/swift-syntax.git
Fetching https://github.com/apple/swift-argument-parser.git
[1/19137] Fetching swift-argument-parser
Fetched https://github.com/apple/swift-argument-parser.git (0.91s)
[1/80889] Fetching swift-syntax
Fetched https://github.com/swiftlang/swift-syntax.git (3.29s)
Computing version for https://github.com/apple/swift-system.git
Computed https://github.com/apple/swift-system.git at 1.8.1 (3.47s)
Computing version for https://github.com/apple/swift-argument-parser.git
Computed https://github.com/apple/swift-argument-parser.git at 1.8.2 (0.14s)
Computing version for https://github.com/swiftlang/swift-syntax.git
Computed https://github.com/swiftlang/swift-syntax.git at 604.0.0 (0.93s)
Computing version for https://github.com/apple/swift-crypto.git
Computed https://github.com/apple/swift-crypto.git at 5.0.3 (0.91s)
Fetching https://github.com/apple/swift-asn1.git
[1/2051] Fetching swift-asn1
Fetched https://github.com/apple/swift-asn1.git (0.41s)
Computing version for https://github.com/apple/swift-atomics.git
Computed https://github.com/apple/swift-atomics.git at 1.3.1 (0.55s)
Computing version for https://github.com/apple/swift-asn1.git
Computed https://github.com/apple/swift-asn1.git at 1.7.3 (0.16s)
Computing version for https://github.com/apple/swift-collections.git
Computed https://github.com/apple/swift-collections.git at 1.7.3 (0.21s)
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
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.3
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/UInt8Co/swift-mtproto.git
Working copy of https://github.com/UInt8Co/swift-mtproto.git resolved at 2.2.0
Creating working copy for https://github.com/apple/swift-nio.git
Working copy of https://github.com/apple/swift-nio.git resolved at 2.104.0
Creating working copy for https://github.com/swiftlang/swift-syntax.git
Working copy of https://github.com/swiftlang/swift-syntax.git resolved at 604.0.0
Creating working copy for https://github.com/apple/swift-argument-parser.git
Working copy of https://github.com/apple/swift-argument-parser.git resolved at 1.8.2
Creating working copy for https://github.com/apple/swift-crypto.git
Working copy of https://github.com/apple/swift-crypto.git resolved at 5.0.3
Downloading package prebuilt https://download.swift.org/prebuilts/swift-syntax/604.0.0/swift-6.4.0-RELEASE-ubuntu_noble_x86_64-MacroSupport.tar.gz
Downloaded https://download.swift.org/prebuilts/swift-syntax/604.0.0/swift-6.4.0-RELEASE-ubuntu_noble_x86_64-MacroSupport.tar.gz (0.29s)
Building for debugging...
[Computing dependencies]
[Constructing description]
[Pre-planning 1 / 1135]
[Planning deferred tasks]
[Starting]
[105 / 731] MTProtoBaseSchema
[205 / 790] InternalCollectionsUtilities
[217 / 790] _NIODataStructures
[217 / 790] NIOConcurrencyHelpers
[231 / 790] TLCodingMacros
[231 / 790] CryptoBoringWrapper
[242 / 790] TLCodingMacros
[245 / 790] _NIODataStructures
[251 / 790] SwiftASN1
[258 / 792] _NIOBase64
[260 / 792] SwiftASN1
[263 / 792] NIOConcurrencyHelpers
[263 / 792] TLCodingMacros
[269 / 793] TLCodingMacros
[272 / 793] NIOConcurrencyHelpers-product
[274 / 793] MTProtoUtils
[280 / 794] SpanPreview
[287 / 795] MTProtoUtils
[288 / 795] TLCodingMacros
[293 / 795] CryptoBoringWrapper
[294 / 795] SwiftASN1
[303 / 798] InternalCollectionsUtilities
[313 / 807] Atomics
[317 / 807] Atomics
[326 / 807]
[343 / 812] CNIOLinux
[355 / 813] CCryptoBoringSSL
[356 / 814] CCryptoBoringSSL
[357 / 814] CCryptoBoringSSL
[361 / 814] CCryptoBoringSSL
[368 / 814] CCryptoBoringSSL
[369 / 814] CCryptoBoringSSL
[378 / 815] CCryptoBoringSSL
[381 / 815] CCryptoBoringSSL
[382 / 815] CCryptoBoringSSL
[384 / 815] CCryptoBoringSSL
[388 / 815] CCryptoBoringSSL
[390 / 815] CCryptoBoringSSL
[391 / 815] CCryptoBoringSSL
[395 / 815] CCryptoBoringSSL
[397 / 815] CCryptoBoringSSL
[404 / 815] CCryptoBoringSSL
[408 / 815] CCryptoBoringSSL
[410 / 815] CCryptoBoringSSL
[413 / 815] CCryptoBoringSSL
[416 / 815] CCryptoBoringSSL
[418 / 815] CCryptoBoringSSL
[421 / 815] CCryptoBoringSSL
[425 / 815] CCryptoBoringSSL
[426 / 815] CCryptoBoringSSL
[429 / 815] CCryptoBoringSSL
[432 / 815] CCryptoBoringSSL
[434 / 815] CCryptoBoringSSL
[438 / 815] CCryptoBoringSSL
[439 / 815] CCryptoBoringSSL
[442 / 815] CCryptoBoringSSL
[446 / 815] CCryptoBoringSSL
[448 / 815] CCryptoBoringSSL
[452 / 815] CCryptoBoringSSL
[454 / 815] CCryptoBoringSSL
[455 / 815] CCryptoBoringSSL
[459 / 815] CCryptoBoringSSL
[466 / 815] CCryptoBoringSSL
[477 / 815] CCryptoBoringSSL
[489 / 815] CCryptoBoringSSL
[491 / 815] CCryptoBoringSSL
[495 / 815] CCryptoBoringSSL
[499 / 815] CCryptoBoringSSL
[500 / 815] CCryptoBoringSSL
[506 / 815] CCryptoBoringSSL
[508 / 815] CCryptoBoringSSL
[513 / 815] CCryptoBoringSSL
[514 / 815] CCryptoBoringSSL
[517 / 815] CCryptoBoringSSL
[520 / 815] CCryptoBoringSSL
[524 / 815] CCryptoBoringSSL
[527 / 815] CCryptoBoringSSL
[530 / 815] CCryptoBoringSSL
[532 / 815] CCryptoBoringSSL
[535 / 815] CCryptoBoringSSL
[540 / 815] CCryptoBoringSSL
[548 / 815] CCryptoBoringSSL
[553 / 815] CCryptoBoringSSL
[557 / 815] CCryptoBoringSSL
[560 / 815] CCryptoBoringSSL
[563 / 815] CCryptoBoringSSL
[565 / 815] CCryptoBoringSSL
[571 / 815] CCryptoBoringSSL
[586 / 815] CCryptoBoringSSL
[590 / 815] CCryptoBoringSSL
[596 / 815] CCryptoBoringSSL
[600 / 815] CCryptoBoringSSL
[601 / 815] CCryptoBoringSSL
[606 / 815] CCryptoBoringSSL
[607 / 815] CCryptoBoringSSL
[613 / 815] CCryptoBoringSSL
[618 / 815] CCryptoBoringSSL
[620 / 815] CCryptoBoringSSL
[621 / 815] CCryptoBoringSSL
[626 / 815] CCryptoBoringSSL
[628 / 815] CCryptoBoringSSL
[630 / 815] CCryptoBoringSSL
[633 / 815] CCryptoBoringSSL
[635 / 815] CCryptoBoringSSL
[636 / 815] CCryptoBoringSSL
[639 / 815] CCryptoBoringSSL
[647 / 815] CCryptoBoringSSL
[653 / 815] CCryptoBoringSSL
[662 / 815] CCryptoBoringSSL
[666 / 815] CCryptoBoringSSL
[670 / 815] CCryptoBoringSSL
[672 / 815] CCryptoBoringSSL
[676 / 815] CCryptoBoringSSL
[678 / 815] CCryptoBoringSSL
[679 / 815] CCryptoBoringSSL
[685 / 815] CCryptoBoringSSL
[695 / 815] CCryptoBoringSSL
[705 / 815] CCryptoBoringSSL
[708 / 815] CCryptoBoringSSL
[711 / 815] CCryptoBoringSSL
[713 / 815] CCryptoBoringSSL
[715 / 815] CCryptoBoringSSL
[718 / 815] CCryptoBoringSSL
[721 / 815] CCryptoBoringSSL
[724 / 815] InternalCollectionsUtilities
[731 / 816] Atomics
[736 / 835] CCryptoBoringSSL
[741 / 835] TLCoding
[747 / 835] TLCoding
[754 / 836] Crypto
[757 / 836] Crypto
[757 / 836] CNIOPosix
[768 / 848] TLCoding-product
[771 / 866] TLCoding-product
[774 / 866] MTProtoBaseSchema
[777 / 866] MTProtoBaseSchema
[782 / 866] CryptoExtras
[786 / 866] CryptoExtras
[792 / 866] DequeModule
[795 / 867] MTProtoBaseSchema
[796 / 867] DequeModule
[799 / 867] DequeModule
[801 / 867] CryptoExtras
[806 / 868] DequeModule
[809 / 868] MTProtoCrypto
[810 / 868] MTProtoCrypto
[811 / 868] CCryptoBoringSSL
[814 / 868] Crypto
[820 / 870] MTProtoCrypto
[824 / 888] NIOCore
[828 / 889] NIOCore
[829 / 889] MTProtoCrypto
[831 / 889] MTProtoCrypto
[836 / 889] NIOCore
[837 / 890] NIOCore
[837 / 890] MTProtoCrypto
[838 / 890] MTProtoCrypto-product
[840 / 890] NIOCore
[844 / 890] DequeModule
[852 / 897] NIOMTProtoEncryption
[859 / 897] NIOMTProtoEncryption
[860 / 897] NIOMTProtoEncryption-product
[862 / 897] NIOMTProtoEncryption
[868 / 899] NIOMTProtoEncryption
[869 / 899] NIOCore
[869 / 900] NIOCore
[886 / 920] NIOPosix
[891 / 920] NIOMTProtoTransport
[897 / 920] NIOMTProtoTransport
[899 / 920] NIOPosix
[899 / 920] NIOMTProtoTransport
[902 / 920]
[902 / 920] NIOMTProtoTransport
[906 / 921] NIOMTProtoTransport-product
[906 / 921] NIOPosix
[917 / 931] MTProtoClientKit
[925 / 931] MTProtoClientKit
[926 / 931] MTProtoClientKit-product
[926 / 931] NIOPosix
[926 / 931] MTProtoClientKit
[926 / 931] NIOPosix
[929 / 932] MTProtoClientKit
Build complete! (35.38 secs)
Build complete.
{
"dependencies" : [
{
"identity" : "swift-mtproto",
"requirement" : {
"range" : [
{
"lower_bound" : "2.0.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/UInt8Co/swift-mtproto.git"
},
{
"identity" : "swift-crypto",
"requirement" : {
"range" : [
{
"lower_bound" : "5.0.0",
"upper_bound" : "6.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-crypto.git"
},
{
"identity" : "swift-nio",
"requirement" : {
"range" : [
{
"lower_bound" : "2.103.0",
"upper_bound" : "3.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/apple/swift-nio.git"
}
],
"manifest_display_name" : "swift-nio-mtproto",
"name" : "swift-nio-mtproto",
"path" : "/host/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "15.0"
},
{
"name" : "ios",
"version" : "18.0"
},
{
"name" : "tvos",
"version" : "18.0"
},
{
"name" : "watchos",
"version" : "11.0"
},
{
"name" : "maccatalyst",
"version" : "18.0"
}
],
"products" : [
{
"name" : "NIOMTProtoTransport",
"targets" : [
"NIOMTProtoTransport"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "NIOMTProtoEncryption",
"targets" : [
"NIOMTProtoEncryption"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "MTProtoClientKit",
"targets" : [
"MTProtoClientKit"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"swift_languages_versions" : [
"6"
],
"targets" : [
{
"c99name" : "NIOMTProtoTransportTests",
"module_type" : "SwiftTarget",
"name" : "NIOMTProtoTransportTests",
"path" : "Tests/NIOMTProtoTransportTests",
"product_dependencies" : [
"MTProtoUtils",
"NIOCore",
"NIOEmbedded"
],
"sources" : [
"MTProtoTransportTests.swift"
],
"target_dependencies" : [
"NIOMTProtoTransport"
],
"type" : "test"
},
{
"c99name" : "NIOMTProtoTransport",
"module_type" : "SwiftTarget",
"name" : "NIOMTProtoTransport",
"path" : "Sources/NIOMTProtoTransport",
"product_dependencies" : [
"MTProtoUtils",
"NIOCore",
"Crypto",
"CryptoExtras"
],
"product_memberships" : [
"NIOMTProtoTransport",
"MTProtoClientKit"
],
"sources" : [
"AESCTRStream.swift",
"MTProtoClearPreambleHandler.swift",
"MTProtoFrameDecoder.swift",
"MTProtoFrameEncoder.swift",
"MTProtoObfuscation.swift",
"MTProtoObfuscationHandler.swift",
"MTProtoTransport.swift",
"MTProtoTransportError.swift",
"MTProtoTransportPipeline.swift"
],
"type" : "library"
},
{
"c99name" : "NIOMTProtoEncryptionTests",
"module_type" : "SwiftTarget",
"name" : "NIOMTProtoEncryptionTests",
"path" : "Tests/NIOMTProtoEncryptionTests",
"product_dependencies" : [
"MTProtoCrypto",
"TLCoding"
],
"sources" : [
"InMemoryAuthKeyStoreTests.swift",
"MTProtoEncryptedMessageTests.swift",
"MTProtoGzipTests.swift"
],
"target_dependencies" : [
"NIOMTProtoEncryption"
],
"type" : "test"
},
{
"c99name" : "NIOMTProtoEncryption",
"module_type" : "SwiftTarget",
"name" : "NIOMTProtoEncryption",
"path" : "Sources/NIOMTProtoEncryption",
"product_dependencies" : [
"TLCoding",
"MTProtoCrypto"
],
"product_memberships" : [
"NIOMTProtoEncryption",
"MTProtoClientKit"
],
"sources" : [
"MTProtoAuthKeyStore.swift",
"MTProtoDHParameters.swift",
"MTProtoEncryptedMessage.swift",
"MTProtoGzip.swift",
"MTProtoSessionKeys.swift"
],
"target_dependencies" : [
"CZlib"
],
"type" : "library"
},
{
"c99name" : "MTProtoClientKitTests",
"module_type" : "SwiftTarget",
"name" : "MTProtoClientKitTests",
"path" : "Tests/MTProtoClientKitTests",
"product_dependencies" : [
"NIOCore",
"NIOEmbedded",
"TLCoding",
"MTProtoBaseSchema",
"MTProtoCrypto",
"Crypto"
],
"sources" : [
"ClientChannelSecurityTests.swift",
"ClientCryptoTests.swift",
"ClientHandshakeSecurityTests.swift",
"ClientInboundValidatorTests.swift",
"ClientMessageSecurityTests.swift",
"ClientPingRecoveryTests.swift",
"Fixtures.swift",
"RSASignatureTests.swift",
"SessionBindingTests.swift"
],
"target_dependencies" : [
"MTProtoClientKit",
"NIOMTProtoEncryption"
],
"type" : "test"
},
{
"c99name" : "MTProtoClientKit",
"module_type" : "SwiftTarget",
"name" : "MTProtoClientKit",
"path" : "Sources/MTProtoClientKit",
"product_dependencies" : [
"TLCoding",
"MTProtoBaseSchema",
"MTProtoCrypto",
"NIOCore",
"NIOPosix",
"NIOConcurrencyHelpers",
"Crypto"
],
"product_memberships" : [
"MTProtoClientKit"
],
"sources" : [
"MTProtoClient.swift",
"MTProtoClientChannelHandler.swift",
"MTProtoClientConnection.swift",
"MTProtoClientErrors.swift",
"MTProtoClientHandshake.swift",
"MTProtoClientInboundValidator.swift",
"MTProtoClientSessionCrypto.swift",
"MTProtoSessionBinding.swift",
"PQFactorization.swift",
"RSAPublicKey+PEM.swift",
"RSAPublicKey.swift",
"RSASignature.swift"
],
"target_dependencies" : [
"NIOMTProtoTransport",
"NIOMTProtoEncryption"
],
"type" : "library"
},
{
"c99name" : "CZlib",
"module_type" : "ClangTarget",
"name" : "CZlib",
"path" : "Sources/CZlib",
"product_memberships" : [
"NIOMTProtoEncryption",
"MTProtoClientKit"
],
"sources" : [
"czlib.c"
],
"type" : "library"
}
],
"tools_version" : "6.4"
}
android-6.4-latest: Pulling from saguaro1/spi-images
Digest: sha256:d9a84d7647394b4473e054b8d8a8f0e0b43300080afc6972ec459a3a608366e4
Status: Image is up to date for registry.gitlab.com/saguaro1/spi-images:android-6.4-latest
Done.