Build Information
Failed to build SwiftKeychainWrapper with Swift 5.9 for Linux.
Build Command
docker run --rm -v "checkouts-4606859-1":/host -w "/host/spi-builder-workspace" registry.gitlab.com/finestructure/spi-images:basic-5.9-latest swift build 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.19.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/jrendel/SwiftKeychainWrapper.git
Reference: 4.0.1
Cloned https://github.com/jrendel/SwiftKeychainWrapper.git into spi-builder-workspace
SUCCESS checkout https://github.com/jrendel/SwiftKeychainWrapper.git at 4.0.1
========================================
Build
========================================
Selected platform: linux
Swift version: 5.9
Building package at path: spi-builder-workspace
Running build ...
docker run --rm -v "checkouts-4606859-1":/host -w "/host/spi-builder-workspace" registry.gitlab.com/finestructure/spi-images:basic-5.9-latest swift build 2>&1
Building for debugging...
[1/4] Compiling SwiftKeychainWrapper KeychainWrapperSubscript.swift
[2/4] Compiling SwiftKeychainWrapper KeychainWrapper.swift
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:31:38: error: cannot find 'kSecMatchLimit' in scope
private let SecMatchLimit: String! = kSecMatchLimit as String
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:32:38: error: cannot find 'kSecReturnData' in scope
private let SecReturnData: String! = kSecReturnData as String
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:33:47: error: cannot find 'kSecReturnPersistentRef' in scope
private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
^~~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:34:37: error: cannot find 'kSecValueData' in scope
private let SecValueData: String! = kSecValueData as String
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:35:42: error: cannot find 'kSecAttrAccessible' in scope
private let SecAttrAccessible: String! = kSecAttrAccessible as String
^~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:36:33: error: cannot find 'kSecClass' in scope
private let SecClass: String! = kSecClass as String
^~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:37:39: error: cannot find 'kSecAttrService' in scope
private let SecAttrService: String! = kSecAttrService as String
^~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:38:39: error: cannot find 'kSecAttrGeneric' in scope
private let SecAttrGeneric: String! = kSecAttrGeneric as String
^~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:39:39: error: cannot find 'kSecAttrAccount' in scope
private let SecAttrAccount: String! = kSecAttrAccount as String
^~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:40:43: error: cannot find 'kSecAttrAccessGroup' in scope
private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
^~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:41:43: error: cannot find 'kSecReturnAttributes' in scope
private let SecReturnAttributes: String = kSecReturnAttributes as String
^~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:42:45: error: cannot find 'kSecAttrSynchronizable' in scope
private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
^~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:99:50: error: cannot find 'kSecMatchLimitOne' in scope
keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
^~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:102:56: error: cannot find 'kCFBooleanTrue' in scope
keychainQueryDictionary[SecReturnAttributes] = kCFBooleanTrue
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:106:22: error: cannot find 'SecItemCopyMatching' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:106:69: error: cannot find type 'CFDictionary' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:108:25: error: cannot find 'noErr' in scope
guard status == noErr, let resultsDictionary = result as? [String:AnyObject], let accessibilityAttrValue = resultsDictionary[SecAttrAccessible] as? String else {
^~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:112:99: error: cannot find type 'CFString' in scope
return KeychainItemAccessibility.accessibilityForAttributeValue(accessibilityAttrValue as CFString)
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:118:23: error: cannot find 'kSecClassGenericPassword' in scope
SecClass: kSecClassGenericPassword,
^~~~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:120:34: error: cannot find 'kCFBooleanTrue' in scope
SecReturnAttributes: kCFBooleanTrue!,
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:121:28: error: cannot find 'kSecMatchLimitAll' in scope
SecMatchLimit: kSecMatchLimitAll,
^~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:129:22: error: cannot find 'SecItemCopyMatching' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:129:69: error: cannot find type 'CFDictionary' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:131:25: error: cannot find 'errSecSuccess' in scope
guard status == errSecSuccess else { return [] }
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:139:56: error: cannot find 'kSecAttrAccount' in scope
} else if let accountData = attributes[kSecAttrAccount] as? Data,
^~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:221:50: error: cannot find 'kSecMatchLimitOne' in scope
keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
^~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:224:50: error: cannot find 'kCFBooleanTrue' in scope
keychainQueryDictionary[SecReturnData] = kCFBooleanTrue
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:228:22: error: cannot find 'SecItemCopyMatching' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:228:69: error: cannot find type 'CFDictionary' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:230:26: error: cannot find 'noErr' in scope
return status == noErr ? result as? Data : nil
^~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:244:50: error: cannot find 'kSecMatchLimitOne' in scope
keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
^~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:247:59: error: cannot find 'kCFBooleanTrue' in scope
keychainQueryDictionary[SecReturnPersistentRef] = kCFBooleanTrue
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:251:22: error: cannot find 'SecItemCopyMatching' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:251:69: error: cannot find type 'CFDictionary' in scope
let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
^~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:253:26: error: cannot find 'noErr' in scope
return status == noErr ? result as? Data : nil
^~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
var keychainAttrValue: CFString { get }
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
internal var keychainAttrValue: CFString {
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:321:21: error: cannot find type 'OSStatus' in scope
let status: OSStatus = SecItemAdd(keychainQueryDictionary as CFDictionary, nil)
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:323:22: error: cannot find 'errSecSuccess' in scope
if status == errSecSuccess {
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:325:29: error: cannot find 'errSecDuplicateItem' in scope
} else if status == errSecDuplicateItem {
^~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:347:21: error: cannot find type 'OSStatus' in scope
let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:349:22: error: cannot find 'errSecSuccess' in scope
if status == errSecSuccess {
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:359:63: error: cannot find 'kSecClassGenericPassword' in scope
var keychainQueryDictionary: [String:Any] = [SecClass:kSecClassGenericPassword]
^~~~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:369:21: error: cannot find type 'OSStatus' in scope
let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:371:22: error: cannot find 'errSecSuccess' in scope
if status == errSecSuccess {
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:383:32: error: cannot find 'kSecClassGenericPassword' in scope
deleteKeychainSecClass(kSecClassGenericPassword) // Generic password items
^~~~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:384:32: error: cannot find 'kSecClassInternetPassword' in scope
deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
^~~~~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:385:32: error: cannot find 'kSecClassCertificate' in scope
deleteKeychainSecClass(kSecClassCertificate) // Certificate items
^~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:386:32: error: cannot find 'kSecClassKey' in scope
deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
^~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:387:32: error: cannot find 'kSecClassIdentity' in scope
deleteKeychainSecClass(kSecClassIdentity) // Identity items
^~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:397:21: error: cannot find type 'OSStatus' in scope
let status: OSStatus = SecItemDelete(query as CFDictionary)
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:399:22: error: cannot find 'errSecSuccess' in scope
if status == errSecSuccess {
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:417:21: error: cannot find type 'OSStatus' in scope
let status: OSStatus = SecItemUpdate(keychainQueryDictionary as CFDictionary, updateDictionary as CFDictionary)
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:419:22: error: cannot find 'errSecSuccess' in scope
if status == errSecSuccess {
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:434:63: error: cannot find 'kSecClassGenericPassword' in scope
var keychainQueryDictionary: [String:Any] = [SecClass:kSecClassGenericPassword]
^~~~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:456:77: error: cannot find 'kCFBooleanTrue' in scope
keychainQueryDictionary[SecAttrSynchronizable] = isSynchronizable ? kCFBooleanTrue : kCFBooleanFalse
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:456:94: error: cannot find 'kCFBooleanFalse' in scope
keychainQueryDictionary[SecAttrSynchronizable] = isSynchronizable ? kCFBooleanTrue : kCFBooleanFalse
^~~~~~~~~~~~~~~
error: emit-module command failed with exit code 1 (use -v to see invocation)
[3/4] Emitting module SwiftKeychainWrapper
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
var keychainAttrValue: CFString { get }
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:105:73: error: cannot find type 'CFString' in scope
private let keychainItemAccessibilityLookup: [KeychainItemAccessibility:CFString] = {
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
internal var keychainAttrValue: CFString {
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:31:38: error: cannot find 'kSecMatchLimit' in scope
private let SecMatchLimit: String! = kSecMatchLimit as String
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:32:38: error: cannot find 'kSecReturnData' in scope
private let SecReturnData: String! = kSecReturnData as String
^~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:33:47: error: cannot find 'kSecReturnPersistentRef' in scope
private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
^~~~~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:34:37: error: cannot find 'kSecValueData' in scope
private let SecValueData: String! = kSecValueData as String
^~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:35:42: error: cannot find 'kSecAttrAccessible' in scope
private let SecAttrAccessible: String! = kSecAttrAccessible as String
^~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:36:33: error: cannot find 'kSecClass' in scope
private let SecClass: String! = kSecClass as String
^~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:37:39: error: cannot find 'kSecAttrService' in scope
private let SecAttrService: String! = kSecAttrService as String
^~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:38:39: error: cannot find 'kSecAttrGeneric' in scope
private let SecAttrGeneric: String! = kSecAttrGeneric as String
^~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:39:39: error: cannot find 'kSecAttrAccount' in scope
private let SecAttrAccount: String! = kSecAttrAccount as String
^~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:40:43: error: cannot find 'kSecAttrAccessGroup' in scope
private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
^~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:41:43: error: cannot find 'kSecReturnAttributes' in scope
private let SecReturnAttributes: String = kSecReturnAttributes as String
^~~~~~~~~~~~~~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainWrapper.swift:42:45: error: cannot find 'kSecAttrSynchronizable' in scope
private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
^~~~~~~~~~~~~~~~~~~~~~
[4/4] Compiling SwiftKeychainWrapper KeychainItemAccessibility.swift
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
var keychainAttrValue: CFString { get }
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:105:73: error: cannot find type 'CFString' in scope
private let keychainItemAccessibilityLookup: [KeychainItemAccessibility:CFString] = {
^~~~~~~~
/host/spi-builder-workspace/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
internal var keychainAttrValue: CFString {
^~~~~~~~
error: fatalError
BUILD FAILURE 5.9 linux
Build Machine: Linux 1