Build Information
Failed to build InputFence, reference v1.0.0 (c2e513), with Swift 6.2 for Android on 23 Aug 2025 05:58:06 UTC.
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.67.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/PalmeiraLabs/InputFence.git
Reference: v1.0.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/PalmeiraLabs/InputFence
* tag v1.0.0 -> FETCH_HEAD
HEAD is now at c2e5137 Add full documentation.
Cloned https://github.com/PalmeiraLabs/InputFence.git
Revision (git rev-parse @):
c2e5137a94367026d727f7c386d1f37fbaf31f35
SUCCESS checkout https://github.com/PalmeiraLabs/InputFence.git at v1.0.0
========================================
Build
========================================
Selected platform: android
Swift version: 6.2
Building package at path: $PWD
https://github.com/PalmeiraLabs/InputFence.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:android-6.2-latest swift build --swift-sdk aarch64-unknown-linux-android28 2>&1
android-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:b7c4a6b4153ff40ef9277e2157e708f835b8eb011095d53bd8db4594eb2b7798
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:android-6.2-latest
Fetching https://github.com/marmelroy/PhoneNumberKit.git
[1/7113] Fetching phonenumberkit
Fetched https://github.com/marmelroy/PhoneNumberKit.git from cache (0.75s)
Computing version for https://github.com/marmelroy/PhoneNumberKit.git
Computed https://github.com/marmelroy/PhoneNumberKit.git at 3.8.0 (2.93s)
Creating working copy for https://github.com/marmelroy/PhoneNumberKit.git
Working copy of https://github.com/marmelroy/PhoneNumberKit.git resolved at 3.8.0
Building for debugging...
[0/5] Write sources
[1/5] Copying PrivacyInfo.xcprivacy
[3/5] Copying PhoneNumberMetadata.json
[4/5] Write swift-version-8C5A4AE7A8CE2BA.txt
[6/23] Compiling PhoneNumberKit CountryCodePickerOptions.swift
[7/23] Compiling PhoneNumberKit CountryCodePickerViewController.swift
[8/25] Compiling PhoneNumberKit PhoneNumberTextField.swift
[9/25] Compiling PhoneNumberKit resource_bundle_accessor.swift
[10/25] Compiling PhoneNumberKit Bundle+Resources.swift
[11/25] Compiling PhoneNumberKit Constants.swift
[12/25] Compiling PhoneNumberKit Formatter.swift
[13/25] Compiling PhoneNumberKit PhoneNumber+Codable.swift
[14/25] Compiling PhoneNumberKit PhoneNumber.swift
[15/25] Emitting module PhoneNumberKit
[16/25] Compiling PhoneNumberKit PhoneNumberFormatter.swift
[17/25] Compiling PhoneNumberKit PhoneNumberKit.swift
[18/25] Compiling PhoneNumberKit PhoneNumberParser.swift
[19/25] Compiling PhoneNumberKit RegexManager.swift
[20/25] Compiling PhoneNumberKit NSRegularExpression+Swift.swift
[21/25] Compiling PhoneNumberKit ParseManager.swift
[22/25] Compiling PhoneNumberKit PartialFormatter.swift
[23/25] Compiling PhoneNumberKit MetadataManager.swift
[24/25] Compiling PhoneNumberKit MetadataParsing.swift
[25/25] Compiling PhoneNumberKit MetadataTypes.swift
[27/40] Compiling InputFence FieldValidatorAliases.swift
[28/41] Compiling InputFence AdvancedNameValidator.swift
[29/41] Compiling InputFence PasswordValidatorParameters.swift
[30/41] Compiling InputFence ValidatorProtocol.swift
[31/41] Compiling InputFence AdvancedPasswordValidator.swift
[32/41] Compiling InputFence PhoneValidatorParameters.swift
[33/41] Compiling InputFence AdvancedPhoneValidator.swift
[34/41] Compiling InputFence FieldValidator.swift
[35/41] Compiling InputFence DateOfBirthValidatorParameters.swift
[36/41] Compiling InputFence AdvancedDateOfBirthValidator.swift
[37/41] Emitting module InputFence
[38/41] Compiling InputFence SmartEmailValidator.swift
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SmartEmailValidator.swift:34:35: error: cannot find 'NSDataDetector' in scope
32 | /// - Returns: `true` if the string is detected as an email link covering the entire string, `false` otherwise.
33 | public func isValid(_ value: String) -> Bool {
34 | guard let detector = try? NSDataDetector(types: NSTextCheckingResult.CheckingType.link.rawValue) else {
| `- error: cannot find 'NSDataDetector' in scope
35 | return false
36 | }
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SmartEmailValidator.swift:41:24: error: type '(_) -> Bool' cannot conform to 'Collection' [#ProtocolTypeNonConformance]
39 |
40 | let matches: [NSTextCheckingResult] = detector.matches(in: value, options: [], range: range)
41 | return matches.contains { $0.url?.scheme == "mailto" && $0.range.length == value.count }
| |- error: type '(_) -> Bool' cannot conform to 'Collection' [#ProtocolTypeNonConformance]
| |- note: only concrete types such as structs, enums and classes can conform to protocols
| `- note: required by instance method 'contains' where 'C' = '(_) -> Bool'
42 | }
43 | }
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SmartEmailValidator.swift:41:33: error: cannot infer type of closure parameter '$0' without a type annotation
39 |
40 | let matches: [NSTextCheckingResult] = detector.matches(in: value, options: [], range: range)
41 | return matches.contains { $0.url?.scheme == "mailto" && $0.range.length == value.count }
| `- error: cannot infer type of closure parameter '$0' without a type annotation
42 | }
43 | }
[#ProtocolTypeNonConformance]: <https://docs.swift.org/compiler/documentation/diagnostics/protocol-type-non-conformance>
[39/41] Compiling InputFence NameValidatorParameters.swift
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SmartEmailValidator.swift:34:35: error: cannot find 'NSDataDetector' in scope
32 | /// - Returns: `true` if the string is detected as an email link covering the entire string, `false` otherwise.
33 | public func isValid(_ value: String) -> Bool {
34 | guard let detector = try? NSDataDetector(types: NSTextCheckingResult.CheckingType.link.rawValue) else {
| `- error: cannot find 'NSDataDetector' in scope
35 | return false
36 | }
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SmartEmailValidator.swift:41:24: error: type '(_) -> Bool' cannot conform to 'Collection' [#ProtocolTypeNonConformance]
39 |
40 | let matches: [NSTextCheckingResult] = detector.matches(in: value, options: [], range: range)
41 | return matches.contains { $0.url?.scheme == "mailto" && $0.range.length == value.count }
| |- error: type '(_) -> Bool' cannot conform to 'Collection' [#ProtocolTypeNonConformance]
| |- note: only concrete types such as structs, enums and classes can conform to protocols
| `- note: required by instance method 'contains' where 'C' = '(_) -> Bool'
42 | }
43 | }
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SmartEmailValidator.swift:41:33: error: cannot infer type of closure parameter '$0' without a type annotation
39 |
40 | let matches: [NSTextCheckingResult] = detector.matches(in: value, options: [], range: range)
41 | return matches.contains { $0.url?.scheme == "mailto" && $0.range.length == value.count }
| `- error: cannot infer type of closure parameter '$0' without a type annotation
42 | }
43 | }
[#ProtocolTypeNonConformance]: <https://docs.swift.org/compiler/documentation/diagnostics/protocol-type-non-conformance>
[40/41] Compiling InputFence RFCCompliantEmailValidator.swift
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/RFCCompliantEmailValidator.swift:44:30: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
42 | let emailRegEx = "(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,}|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|[a-zA-Z0-9-]*[a-zA-Z0-9]:.+)\\])"
43 |
44 | let emailPredicate = NSPredicate(format:"SELF MATCHES[c] %@", emailRegEx) // [c] case-insensitive
| `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
45 | return emailPredicate.evaluate(with: value)
46 | }
Foundation.NSPredicate.init:3:22: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | class NSPredicate {
2 | @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 | public convenience init(format predicateFormat: String, _ args: any CVarArg...)}
| `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 |
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SimpleEmailValidator.swift:35:16: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
33 | public func isValid(_ value: String) -> Bool {
34 | let regex = "^[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$"
35 | return NSPredicate(format: "SELF MATCHES %@", regex).evaluate(with: value)
| `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
36 | }
37 | }
Foundation.NSPredicate.init:3:22: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | class NSPredicate {
2 | @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 | public convenience init(format predicateFormat: String, _ args: any CVarArg...)}
| `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 |
[41/41] Compiling InputFence SimpleEmailValidator.swift
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/RFCCompliantEmailValidator.swift:44:30: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
42 | let emailRegEx = "(?:[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+(?:\\.[a-zA-Z0-9!#$%&'*+/=?^_`{|}~-]+)*|\"(?:[\\x01-\\x08\\x0b\\x0c\\x0e-\\x1f\\x21\\x23-\\x5b\\x5d-\\x7f]|\\\\[\\x01-\\x09\\x0b\\x0c\\x0e-\\x7f])*\")@(?:(?:[a-zA-Z0-9](?:[a-zA-Z0-9-]*[a-zA-Z0-9])?\\.)+[a-zA-Z]{2,}|\\[(?:(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}|[a-zA-Z0-9-]*[a-zA-Z0-9]:.+)\\])"
43 |
44 | let emailPredicate = NSPredicate(format:"SELF MATCHES[c] %@", emailRegEx) // [c] case-insensitive
| `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
45 | return emailPredicate.evaluate(with: value)
46 | }
Foundation.NSPredicate.init:3:22: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | class NSPredicate {
2 | @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 | public convenience init(format predicateFormat: String, _ args: any CVarArg...)}
| `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 |
/host/spi-builder-workspace/Sources/InputFence/EmailValidators/SpecificValidators/SimpleEmailValidator.swift:35:16: error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
33 | public func isValid(_ value: String) -> Bool {
34 | let regex = "^[A-Z0-9a-z._%+-]+@[A-Za-z0-9.-]+\\.[A-Za-z]{2,}$"
35 | return NSPredicate(format: "SELF MATCHES %@", regex).evaluate(with: value)
| `- error: 'init(format:_:)' has been renamed to 'init(block:)': Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.
36 | }
37 | }
Foundation.NSPredicate.init:3:22: note: 'init(format:_:)' has been explicitly marked unavailable here
1 | class NSPredicate {
2 | @available(*, unavailable, renamed: "init(block:)", message: "Predicate strings and key-value coding are not supported in swift-corelibs-foundation. Use a closure instead if possible.")
3 | public convenience init(format predicateFormat: String, _ args: any CVarArg...)}
| `- note: 'init(format:_:)' has been explicitly marked unavailable here
4 |
BUILD FAILURE 6.2 android