The Swift Package Index logo.Swift Package Index

Track the adoption of Swift 6 strict concurrency checks for data race safety. How many packages are Ready for Swift 6?

Build Information

Failed to build Engine, reference 0.1.0 (979796), with Swift 6.0 for Linux on 17 Feb 2025 03:52:00 UTC.

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.60.1
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/blackjacx/engine.git
Reference: 0.1.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/blackjacx/engine
 * tag               0.1.0      -> FETCH_HEAD
HEAD is now at 9797968 Merge branch 'release/0.1.0'
Cloned https://github.com/blackjacx/engine.git
Revision (git rev-parse @):
9797968aec667217cdd83a4e3b45972d4bf5a861
SPI manifest file found: $PWD/.spi.yml
SUCCESS checkout https://github.com/blackjacx/engine.git at 0.1.0
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/blackjacx/engine.git
https://github.com/blackjacx/engine.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "swiftkeychainwrapper",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "4.0.1",
            "upper_bound" : "5.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/jrendel/SwiftKeychainWrapper"
    }
  ],
  "manifest_display_name" : "Engine",
  "name" : "Engine",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "13.0"
    },
    {
      "name" : "ios",
      "version" : "15.0"
    },
    {
      "name" : "tvos",
      "version" : "15.0"
    },
    {
      "name" : "watchos",
      "version" : "8.0"
    }
  ],
  "products" : [
    {
      "name" : "Engine",
      "targets" : [
        "Engine"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "EngineTests",
      "module_type" : "SwiftTarget",
      "name" : "EngineTests",
      "path" : "Tests/EngineTests",
      "sources" : [
        "Foundation/URLTests.swift",
        "JWT/JWTTests.swift",
        "PropertyWrapper/ClampingTests.swift",
        "UIKit/UIColorTests.swift"
      ],
      "target_dependencies" : [
        "Engine"
      ],
      "type" : "test"
    },
    {
      "c99name" : "Engine",
      "module_type" : "SwiftTarget",
      "name" : "Engine",
      "path" : "Sources/Engine",
      "product_dependencies" : [
        "SwiftKeychainWrapper"
      ],
      "product_memberships" : [
        "Engine"
      ],
      "sources" : [
        "Engine.swift",
        "Foundation/Bundle+Extensions.swift",
        "Foundation/FileManager+Extensions.swift",
        "Foundation/ProcessInfo+Extensions.swift",
        "Foundation/String+Extensions.swift",
        "Foundation/String+Random.swift",
        "Foundation/URL+Extensions.swift",
        "Foundation/URLRequest+Extensions.swift",
        "JWT/JWT.swift",
        "JWT/JWTClaims.swift",
        "JWT/JWTHeader.swift",
        "Keychain/Keychain.swift",
        "Networking/Endpoint.swift",
        "Networking/HTTPMethod.swift",
        "Networking/Json.swift",
        "Networking/LoggableError.swift",
        "Networking/Network.swift",
        "Networking/NetworkError.swift",
        "Networking/Service.swift",
        "Networking/models/DataWrapper.swift",
        "Networking/models/EmptyResponse.swift",
        "PropertyWrapper/Clamping.swift",
        "PropertyWrapper/UserDefaults+PropertyWrapper.swift",
        "UIKit/UIColor+Extensions.swift",
        "UIKit/UIView+Extensions.swift",
        "UIKit/UIViewController+Extensions.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.10"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/jrendel/SwiftKeychainWrapper
[1/1666] Fetching swiftkeychainwrapper
Fetched https://github.com/jrendel/SwiftKeychainWrapper from cache (0.24s)
Computing version for https://github.com/jrendel/SwiftKeychainWrapper
Computed https://github.com/jrendel/SwiftKeychainWrapper at 4.0.1 (2.31s)
Creating working copy for https://github.com/jrendel/SwiftKeychainWrapper
Working copy of https://github.com/jrendel/SwiftKeychainWrapper resolved at 4.0.1
Building for debugging...
[0/3] Write sources
[2/3] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[4/7] Compiling SwiftKeychainWrapper KeychainWrapperSubscript.swift
[5/7] Emitting module SwiftKeychainWrapper
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
 29 |
 30 | protocol KeychainAttrRepresentable {
 31 |     var keychainAttrValue: CFString { get }
    |                            `- error: cannot find type 'CFString' in scope
 32 | }
 33 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
 92 |     case whenUnlockedThisDeviceOnly
 93 |
 94 |     static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
    |                                                                     `- error: cannot find type 'CFString' in scope
 95 |         for (key, value) in keychainItemAccessibilityLookup {
 96 |             if value == keychainAttrValue {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:105:73: error: cannot find type 'CFString' in scope
103 | }
104 |
105 | private let keychainItemAccessibilityLookup: [KeychainItemAccessibility:CFString] = {
    |                                                                         `- error: cannot find type 'CFString' in scope
106 |     var lookup: [KeychainItemAccessibility:CFString] = [
107 |         .afterFirstUnlock: kSecAttrAccessibleAfterFirstUnlock,
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
118 |
119 | extension KeychainItemAccessibility : KeychainAttrRepresentable {
120 |     internal var keychainAttrValue: CFString {
    |                                     `- error: cannot find type 'CFString' in scope
121 |         return keychainItemAccessibilityLookup[self]!
122 |     }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:31:38: error: cannot find 'kSecMatchLimit' in scope
 29 |
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
    |                                      `- error: cannot find 'kSecMatchLimit' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:32:38: error: cannot find 'kSecReturnData' in scope
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
    |                                      `- error: cannot find 'kSecReturnData' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:33:47: error: cannot find 'kSecReturnPersistentRef' in scope
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
    |                                               `- error: cannot find 'kSecReturnPersistentRef' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:34:37: error: cannot find 'kSecValueData' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
    |                                     `- error: cannot find 'kSecValueData' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:35:42: error: cannot find 'kSecAttrAccessible' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
    |                                          `- error: cannot find 'kSecAttrAccessible' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:36:33: error: cannot find 'kSecClass' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
    |                                 `- error: cannot find 'kSecClass' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:37:39: error: cannot find 'kSecAttrService' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
    |                                       `- error: cannot find 'kSecAttrService' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:38:39: error: cannot find 'kSecAttrGeneric' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
    |                                       `- error: cannot find 'kSecAttrGeneric' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:39:39: error: cannot find 'kSecAttrAccount' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
    |                                       `- error: cannot find 'kSecAttrAccount' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:40:43: error: cannot find 'kSecAttrAccessGroup' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
    |                                           `- error: cannot find 'kSecAttrAccessGroup' in scope
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:41:43: error: cannot find 'kSecReturnAttributes' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
    |                                           `- error: cannot find 'kSecReturnAttributes' in scope
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
 43 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:42:45: error: cannot find 'kSecAttrSynchronizable' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
    |                                             `- error: cannot find 'kSecAttrSynchronizable' in scope
 43 |
 44 | /// KeychainWrapper is a class to help make Keychain access in Swift more straightforward. It is designed to make accessing the Keychain services more like using NSUserDefaults, which is much more familiar to people.
[6/7] Compiling SwiftKeychainWrapper KeychainWrapper.swift
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:31:38: error: cannot find 'kSecMatchLimit' in scope
 29 |
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
    |                                      `- error: cannot find 'kSecMatchLimit' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:32:38: error: cannot find 'kSecReturnData' in scope
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
    |                                      `- error: cannot find 'kSecReturnData' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:33:47: error: cannot find 'kSecReturnPersistentRef' in scope
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
    |                                               `- error: cannot find 'kSecReturnPersistentRef' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:34:37: error: cannot find 'kSecValueData' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
    |                                     `- error: cannot find 'kSecValueData' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:35:42: error: cannot find 'kSecAttrAccessible' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
    |                                          `- error: cannot find 'kSecAttrAccessible' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:36:33: error: cannot find 'kSecClass' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
    |                                 `- error: cannot find 'kSecClass' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:37:39: error: cannot find 'kSecAttrService' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
    |                                       `- error: cannot find 'kSecAttrService' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:38:39: error: cannot find 'kSecAttrGeneric' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
    |                                       `- error: cannot find 'kSecAttrGeneric' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:39:39: error: cannot find 'kSecAttrAccount' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
    |                                       `- error: cannot find 'kSecAttrAccount' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:40:43: error: cannot find 'kSecAttrAccessGroup' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
    |                                           `- error: cannot find 'kSecAttrAccessGroup' in scope
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:41:43: error: cannot find 'kSecReturnAttributes' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
    |                                           `- error: cannot find 'kSecReturnAttributes' in scope
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
 43 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:42:45: error: cannot find 'kSecAttrSynchronizable' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
    |                                             `- error: cannot find 'kSecAttrSynchronizable' in scope
 43 |
 44 | /// KeychainWrapper is a class to help make Keychain access in Swift more straightforward. It is designed to make accessing the Keychain services more like using NSUserDefaults, which is much more familiar to people.
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:99:50: error: cannot find 'kSecMatchLimitOne' in scope
 97 |
 98 |         // Limit search results to one
 99 |         keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
    |                                                  `- error: cannot find 'kSecMatchLimitOne' in scope
100 |
101 |         // Specify we want SecAttrAccessible returned
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:102:56: error: cannot find 'kCFBooleanTrue' in scope
100 |
101 |         // Specify we want SecAttrAccessible returned
102 |         keychainQueryDictionary[SecReturnAttributes] = kCFBooleanTrue
    |                                                        `- error: cannot find 'kCFBooleanTrue' in scope
103 |
104 |         // Search
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:106:22: error: cannot find 'SecItemCopyMatching' in scope
104 |         // Search
105 |         var result: AnyObject?
106 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
107 |
108 |         guard status == noErr, let resultsDictionary = result as? [String:AnyObject], let accessibilityAttrValue = resultsDictionary[SecAttrAccessible] as? String else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:106:69: error: cannot find type 'CFDictionary' in scope
104 |         // Search
105 |         var result: AnyObject?
106 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
107 |
108 |         guard status == noErr, let resultsDictionary = result as? [String:AnyObject], let accessibilityAttrValue = resultsDictionary[SecAttrAccessible] as? String else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:108:25: error: cannot find 'noErr' in scope
106 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
107 |
108 |         guard status == noErr, let resultsDictionary = result as? [String:AnyObject], let accessibilityAttrValue = resultsDictionary[SecAttrAccessible] as? String else {
    |                         `- error: cannot find 'noErr' in scope
109 |             return nil
110 |         }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
 92 |     case whenUnlockedThisDeviceOnly
 93 |
 94 |     static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
    |                                                                     `- error: cannot find type 'CFString' in scope
 95 |         for (key, value) in keychainItemAccessibilityLookup {
 96 |             if value == keychainAttrValue {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:112:99: error: cannot find type 'CFString' in scope
110 |         }
111 |
112 |         return KeychainItemAccessibility.accessibilityForAttributeValue(accessibilityAttrValue as CFString)
    |                                                                                                   `- error: cannot find type 'CFString' in scope
113 |     }
114 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:118:23: error: cannot find 'kSecClassGenericPassword' in scope
116 |     open func allKeys() -> Set<String> {
117 |         var keychainQueryDictionary: [String:Any] = [
118 |             SecClass: kSecClassGenericPassword,
    |                       `- error: cannot find 'kSecClassGenericPassword' in scope
119 |             SecAttrService: serviceName,
120 |             SecReturnAttributes: kCFBooleanTrue!,
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:120:34: error: cannot find 'kCFBooleanTrue' in scope
118 |             SecClass: kSecClassGenericPassword,
119 |             SecAttrService: serviceName,
120 |             SecReturnAttributes: kCFBooleanTrue!,
    |                                  `- error: cannot find 'kCFBooleanTrue' in scope
121 |             SecMatchLimit: kSecMatchLimitAll,
122 |         ]
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:121:28: error: cannot find 'kSecMatchLimitAll' in scope
119 |             SecAttrService: serviceName,
120 |             SecReturnAttributes: kCFBooleanTrue!,
121 |             SecMatchLimit: kSecMatchLimitAll,
    |                            `- error: cannot find 'kSecMatchLimitAll' in scope
122 |         ]
123 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:129:22: error: cannot find 'SecItemCopyMatching' in scope
127 |
128 |         var result: AnyObject?
129 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
130 |
131 |         guard status == errSecSuccess else { return [] }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:129:69: error: cannot find type 'CFDictionary' in scope
127 |
128 |         var result: AnyObject?
129 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
130 |
131 |         guard status == errSecSuccess else { return [] }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:131:25: error: cannot find 'errSecSuccess' in scope
129 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
130 |
131 |         guard status == errSecSuccess else { return [] }
    |                         `- error: cannot find 'errSecSuccess' in scope
132 |
133 |         var keys = Set<String>()
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:139:56: error: cannot find 'kSecAttrAccount' in scope
137 |                     let key = String(data: accountData, encoding: String.Encoding.utf8) {
138 |                     keys.insert(key)
139 |                 } else if let accountData = attributes[kSecAttrAccount] as? Data,
    |                                                        `- error: cannot find 'kSecAttrAccount' in scope
140 |                     let key = String(data: accountData, encoding: String.Encoding.utf8) {
141 |                     keys.insert(key)
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:221:50: error: cannot find 'kSecMatchLimitOne' in scope
219 |
220 |         // Limit search results to one
221 |         keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
    |                                                  `- error: cannot find 'kSecMatchLimitOne' in scope
222 |
223 |         // Specify we want Data/CFData returned
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:224:50: error: cannot find 'kCFBooleanTrue' in scope
222 |
223 |         // Specify we want Data/CFData returned
224 |         keychainQueryDictionary[SecReturnData] = kCFBooleanTrue
    |                                                  `- error: cannot find 'kCFBooleanTrue' in scope
225 |
226 |         // Search
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:228:22: error: cannot find 'SecItemCopyMatching' in scope
226 |         // Search
227 |         var result: AnyObject?
228 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
229 |
230 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:228:69: error: cannot find type 'CFDictionary' in scope
226 |         // Search
227 |         var result: AnyObject?
228 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
229 |
230 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:230:26: error: cannot find 'noErr' in scope
228 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
229 |
230 |         return status == noErr ? result as? Data : nil
    |                          `- error: cannot find 'noErr' in scope
231 |     }
232 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:244:50: error: cannot find 'kSecMatchLimitOne' in scope
242 |
243 |         // Limit search results to one
244 |         keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
    |                                                  `- error: cannot find 'kSecMatchLimitOne' in scope
245 |
246 |         // Specify we want persistent Data/CFData reference returned
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:247:59: error: cannot find 'kCFBooleanTrue' in scope
245 |
246 |         // Specify we want persistent Data/CFData reference returned
247 |         keychainQueryDictionary[SecReturnPersistentRef] = kCFBooleanTrue
    |                                                           `- error: cannot find 'kCFBooleanTrue' in scope
248 |
249 |         // Search
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:251:22: error: cannot find 'SecItemCopyMatching' in scope
249 |         // Search
250 |         var result: AnyObject?
251 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
252 |
253 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:251:69: error: cannot find type 'CFDictionary' in scope
249 |         // Search
250 |         var result: AnyObject?
251 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
252 |
253 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:253:26: error: cannot find 'noErr' in scope
251 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
252 |
253 |         return status == noErr ? result as? Data : nil
    |                          `- error: cannot find 'noErr' in scope
254 |     }
255 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
 29 |
 30 | protocol KeychainAttrRepresentable {
 31 |     var keychainAttrValue: CFString { get }
    |                            `- error: cannot find type 'CFString' in scope
 32 | }
 33 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
118 |
119 | extension KeychainItemAccessibility : KeychainAttrRepresentable {
120 |     internal var keychainAttrValue: CFString {
    |                                     `- error: cannot find type 'CFString' in scope
121 |         return keychainItemAccessibilityLookup[self]!
122 |     }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:321:21: error: cannot find type 'OSStatus' in scope
319 |         }
320 |
321 |         let status: OSStatus = SecItemAdd(keychainQueryDictionary as CFDictionary, nil)
    |                     `- error: cannot find type 'OSStatus' in scope
322 |
323 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:323:22: error: cannot find 'errSecSuccess' in scope
321 |         let status: OSStatus = SecItemAdd(keychainQueryDictionary as CFDictionary, nil)
322 |
323 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
324 |             return true
325 |         } else if status == errSecDuplicateItem {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:325:29: error: cannot find 'errSecDuplicateItem' in scope
323 |         if status == errSecSuccess {
324 |             return true
325 |         } else if status == errSecDuplicateItem {
    |                             `- error: cannot find 'errSecDuplicateItem' in scope
326 |             return update(value, forKey: key, withAccessibility: accessibility, isSynchronizable: isSynchronizable)
327 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:347:21: error: cannot find type 'OSStatus' in scope
345 |
346 |         // Delete
347 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
348 |
349 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:349:22: error: cannot find 'errSecSuccess' in scope
347 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
348 |
349 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
350 |             return true
351 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:359:63: error: cannot find 'kSecClassGenericPassword' in scope
357 |     @discardableResult open func removeAllKeys() -> Bool {
358 |         // Setup dictionary to access keychain and specify we are using a generic password (rather than a certificate, internet password, etc)
359 |         var keychainQueryDictionary: [String:Any] = [SecClass:kSecClassGenericPassword]
    |                                                               `- error: cannot find 'kSecClassGenericPassword' in scope
360 |
361 |         // Uniquely identify this keychain accessor
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:369:21: error: cannot find type 'OSStatus' in scope
367 |         }
368 |
369 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
370 |
371 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:371:22: error: cannot find 'errSecSuccess' in scope
369 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
370 |
371 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
372 |             return true
373 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:383:32: error: cannot find 'kSecClassGenericPassword' in scope
381 |     ///
382 |     open class func wipeKeychain() {
383 |         deleteKeychainSecClass(kSecClassGenericPassword) // Generic password items
    |                                `- error: cannot find 'kSecClassGenericPassword' in scope
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:384:32: error: cannot find 'kSecClassInternetPassword' in scope
382 |     open class func wipeKeychain() {
383 |         deleteKeychainSecClass(kSecClassGenericPassword) // Generic password items
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
    |                                `- error: cannot find 'kSecClassInternetPassword' in scope
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:385:32: error: cannot find 'kSecClassCertificate' in scope
383 |         deleteKeychainSecClass(kSecClassGenericPassword) // Generic password items
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
    |                                `- error: cannot find 'kSecClassCertificate' in scope
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
387 |         deleteKeychainSecClass(kSecClassIdentity) // Identity items
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:386:32: error: cannot find 'kSecClassKey' in scope
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
    |                                `- error: cannot find 'kSecClassKey' in scope
387 |         deleteKeychainSecClass(kSecClassIdentity) // Identity items
388 |     }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:387:32: error: cannot find 'kSecClassIdentity' in scope
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
387 |         deleteKeychainSecClass(kSecClassIdentity) // Identity items
    |                                `- error: cannot find 'kSecClassIdentity' in scope
388 |     }
389 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:397:21: error: cannot find type 'OSStatus' in scope
395 |     @discardableResult private class func deleteKeychainSecClass(_ secClass: AnyObject) -> Bool {
396 |         let query = [SecClass: secClass]
397 |         let status: OSStatus = SecItemDelete(query as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
398 |
399 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:399:22: error: cannot find 'errSecSuccess' in scope
397 |         let status: OSStatus = SecItemDelete(query as CFDictionary)
398 |
399 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
400 |             return true
401 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:417:21: error: cannot find type 'OSStatus' in scope
415 |
416 |         // Update
417 |         let status: OSStatus = SecItemUpdate(keychainQueryDictionary as CFDictionary, updateDictionary as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
418 |
419 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:419:22: error: cannot find 'errSecSuccess' in scope
417 |         let status: OSStatus = SecItemUpdate(keychainQueryDictionary as CFDictionary, updateDictionary as CFDictionary)
418 |
419 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
420 |             return true
421 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:434:63: error: cannot find 'kSecClassGenericPassword' in scope
432 |     private func setupKeychainQueryDictionary(forKey key: String, withAccessibility accessibility: KeychainItemAccessibility? = nil, isSynchronizable: Bool = false) -> [String:Any] {
433 |         // Setup default access as generic password (rather than a certificate, internet password, etc)
434 |         var keychainQueryDictionary: [String:Any] = [SecClass:kSecClassGenericPassword]
    |                                                               `- error: cannot find 'kSecClassGenericPassword' in scope
435 |
436 |         // Uniquely identify this keychain accessor
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:456:77: error: cannot find 'kCFBooleanTrue' in scope
454 |         keychainQueryDictionary[SecAttrAccount] = encodedIdentifier
455 |
456 |         keychainQueryDictionary[SecAttrSynchronizable] = isSynchronizable ? kCFBooleanTrue : kCFBooleanFalse
    |                                                                             `- error: cannot find 'kCFBooleanTrue' in scope
457 |
458 |         return keychainQueryDictionary
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:456:94: error: cannot find 'kCFBooleanFalse' in scope
454 |         keychainQueryDictionary[SecAttrAccount] = encodedIdentifier
455 |
456 |         keychainQueryDictionary[SecAttrSynchronizable] = isSynchronizable ? kCFBooleanTrue : kCFBooleanFalse
    |                                                                                              `- error: cannot find 'kCFBooleanFalse' in scope
457 |
458 |         return keychainQueryDictionary
[7/7] Compiling SwiftKeychainWrapper KeychainItemAccessibility.swift
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
 29 |
 30 | protocol KeychainAttrRepresentable {
 31 |     var keychainAttrValue: CFString { get }
    |                            `- error: cannot find type 'CFString' in scope
 32 | }
 33 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
 92 |     case whenUnlockedThisDeviceOnly
 93 |
 94 |     static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
    |                                                                     `- error: cannot find type 'CFString' in scope
 95 |         for (key, value) in keychainItemAccessibilityLookup {
 96 |             if value == keychainAttrValue {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:105:73: error: cannot find type 'CFString' in scope
103 | }
104 |
105 | private let keychainItemAccessibilityLookup: [KeychainItemAccessibility:CFString] = {
    |                                                                         `- error: cannot find type 'CFString' in scope
106 |     var lookup: [KeychainItemAccessibility:CFString] = [
107 |         .afterFirstUnlock: kSecAttrAccessibleAfterFirstUnlock,
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
118 |
119 | extension KeychainItemAccessibility : KeychainAttrRepresentable {
120 |     internal var keychainAttrValue: CFString {
    |                                     `- error: cannot find type 'CFString' in scope
121 |         return keychainItemAccessibilityLookup[self]!
122 |     }
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-2":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:081dcf4fb829aea9d08447f4790431afbdfbcc335bfeed728ca69c6f181ae2aa
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
[0/1] Planning build
Building for debugging...
[0/1] Write swift-version-24593BA9C3E375BF.txt
error: emit-module command failed with exit code 1 (use -v to see invocation)
[2/5] Compiling SwiftKeychainWrapper KeychainWrapperSubscript.swift
[3/5] Emitting module SwiftKeychainWrapper
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
 29 |
 30 | protocol KeychainAttrRepresentable {
 31 |     var keychainAttrValue: CFString { get }
    |                            `- error: cannot find type 'CFString' in scope
 32 | }
 33 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
 92 |     case whenUnlockedThisDeviceOnly
 93 |
 94 |     static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
    |                                                                     `- error: cannot find type 'CFString' in scope
 95 |         for (key, value) in keychainItemAccessibilityLookup {
 96 |             if value == keychainAttrValue {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:105:73: error: cannot find type 'CFString' in scope
103 | }
104 |
105 | private let keychainItemAccessibilityLookup: [KeychainItemAccessibility:CFString] = {
    |                                                                         `- error: cannot find type 'CFString' in scope
106 |     var lookup: [KeychainItemAccessibility:CFString] = [
107 |         .afterFirstUnlock: kSecAttrAccessibleAfterFirstUnlock,
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
118 |
119 | extension KeychainItemAccessibility : KeychainAttrRepresentable {
120 |     internal var keychainAttrValue: CFString {
    |                                     `- error: cannot find type 'CFString' in scope
121 |         return keychainItemAccessibilityLookup[self]!
122 |     }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:31:38: error: cannot find 'kSecMatchLimit' in scope
 29 |
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
    |                                      `- error: cannot find 'kSecMatchLimit' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:32:38: error: cannot find 'kSecReturnData' in scope
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
    |                                      `- error: cannot find 'kSecReturnData' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:33:47: error: cannot find 'kSecReturnPersistentRef' in scope
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
    |                                               `- error: cannot find 'kSecReturnPersistentRef' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:34:37: error: cannot find 'kSecValueData' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
    |                                     `- error: cannot find 'kSecValueData' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:35:42: error: cannot find 'kSecAttrAccessible' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
    |                                          `- error: cannot find 'kSecAttrAccessible' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:36:33: error: cannot find 'kSecClass' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
    |                                 `- error: cannot find 'kSecClass' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:37:39: error: cannot find 'kSecAttrService' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
    |                                       `- error: cannot find 'kSecAttrService' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:38:39: error: cannot find 'kSecAttrGeneric' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
    |                                       `- error: cannot find 'kSecAttrGeneric' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:39:39: error: cannot find 'kSecAttrAccount' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
    |                                       `- error: cannot find 'kSecAttrAccount' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:40:43: error: cannot find 'kSecAttrAccessGroup' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
    |                                           `- error: cannot find 'kSecAttrAccessGroup' in scope
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:41:43: error: cannot find 'kSecReturnAttributes' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
    |                                           `- error: cannot find 'kSecReturnAttributes' in scope
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
 43 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:42:45: error: cannot find 'kSecAttrSynchronizable' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
    |                                             `- error: cannot find 'kSecAttrSynchronizable' in scope
 43 |
 44 | /// KeychainWrapper is a class to help make Keychain access in Swift more straightforward. It is designed to make accessing the Keychain services more like using NSUserDefaults, which is much more familiar to people.
[4/5] Compiling SwiftKeychainWrapper KeychainItemAccessibility.swift
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
 29 |
 30 | protocol KeychainAttrRepresentable {
 31 |     var keychainAttrValue: CFString { get }
    |                            `- error: cannot find type 'CFString' in scope
 32 | }
 33 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
 92 |     case whenUnlockedThisDeviceOnly
 93 |
 94 |     static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
    |                                                                     `- error: cannot find type 'CFString' in scope
 95 |         for (key, value) in keychainItemAccessibilityLookup {
 96 |             if value == keychainAttrValue {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:105:73: error: cannot find type 'CFString' in scope
103 | }
104 |
105 | private let keychainItemAccessibilityLookup: [KeychainItemAccessibility:CFString] = {
    |                                                                         `- error: cannot find type 'CFString' in scope
106 |     var lookup: [KeychainItemAccessibility:CFString] = [
107 |         .afterFirstUnlock: kSecAttrAccessibleAfterFirstUnlock,
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
118 |
119 | extension KeychainItemAccessibility : KeychainAttrRepresentable {
120 |     internal var keychainAttrValue: CFString {
    |                                     `- error: cannot find type 'CFString' in scope
121 |         return keychainItemAccessibilityLookup[self]!
122 |     }
[5/5] Compiling SwiftKeychainWrapper KeychainWrapper.swift
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:31:38: error: cannot find 'kSecMatchLimit' in scope
 29 |
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
    |                                      `- error: cannot find 'kSecMatchLimit' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:32:38: error: cannot find 'kSecReturnData' in scope
 30 |
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
    |                                      `- error: cannot find 'kSecReturnData' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:33:47: error: cannot find 'kSecReturnPersistentRef' in scope
 31 | private let SecMatchLimit: String! = kSecMatchLimit as String
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
    |                                               `- error: cannot find 'kSecReturnPersistentRef' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:34:37: error: cannot find 'kSecValueData' in scope
 32 | private let SecReturnData: String! = kSecReturnData as String
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
    |                                     `- error: cannot find 'kSecValueData' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:35:42: error: cannot find 'kSecAttrAccessible' in scope
 33 | private let SecReturnPersistentRef: String! = kSecReturnPersistentRef as String
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
    |                                          `- error: cannot find 'kSecAttrAccessible' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:36:33: error: cannot find 'kSecClass' in scope
 34 | private let SecValueData: String! = kSecValueData as String
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
    |                                 `- error: cannot find 'kSecClass' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:37:39: error: cannot find 'kSecAttrService' in scope
 35 | private let SecAttrAccessible: String! = kSecAttrAccessible as String
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
    |                                       `- error: cannot find 'kSecAttrService' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:38:39: error: cannot find 'kSecAttrGeneric' in scope
 36 | private let SecClass: String! = kSecClass as String
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
    |                                       `- error: cannot find 'kSecAttrGeneric' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:39:39: error: cannot find 'kSecAttrAccount' in scope
 37 | private let SecAttrService: String! = kSecAttrService as String
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
    |                                       `- error: cannot find 'kSecAttrAccount' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:40:43: error: cannot find 'kSecAttrAccessGroup' in scope
 38 | private let SecAttrGeneric: String! = kSecAttrGeneric as String
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
    |                                           `- error: cannot find 'kSecAttrAccessGroup' in scope
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:41:43: error: cannot find 'kSecReturnAttributes' in scope
 39 | private let SecAttrAccount: String! = kSecAttrAccount as String
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
    |                                           `- error: cannot find 'kSecReturnAttributes' in scope
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
 43 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:42:45: error: cannot find 'kSecAttrSynchronizable' in scope
 40 | private let SecAttrAccessGroup: String! = kSecAttrAccessGroup as String
 41 | private let SecReturnAttributes: String = kSecReturnAttributes as String
 42 | private let SecAttrSynchronizable: String = kSecAttrSynchronizable as String
    |                                             `- error: cannot find 'kSecAttrSynchronizable' in scope
 43 |
 44 | /// KeychainWrapper is a class to help make Keychain access in Swift more straightforward. It is designed to make accessing the Keychain services more like using NSUserDefaults, which is much more familiar to people.
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:99:50: error: cannot find 'kSecMatchLimitOne' in scope
 97 |
 98 |         // Limit search results to one
 99 |         keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
    |                                                  `- error: cannot find 'kSecMatchLimitOne' in scope
100 |
101 |         // Specify we want SecAttrAccessible returned
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:102:56: error: cannot find 'kCFBooleanTrue' in scope
100 |
101 |         // Specify we want SecAttrAccessible returned
102 |         keychainQueryDictionary[SecReturnAttributes] = kCFBooleanTrue
    |                                                        `- error: cannot find 'kCFBooleanTrue' in scope
103 |
104 |         // Search
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:106:22: error: cannot find 'SecItemCopyMatching' in scope
104 |         // Search
105 |         var result: AnyObject?
106 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
107 |
108 |         guard status == noErr, let resultsDictionary = result as? [String:AnyObject], let accessibilityAttrValue = resultsDictionary[SecAttrAccessible] as? String else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:106:69: error: cannot find type 'CFDictionary' in scope
104 |         // Search
105 |         var result: AnyObject?
106 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
107 |
108 |         guard status == noErr, let resultsDictionary = result as? [String:AnyObject], let accessibilityAttrValue = resultsDictionary[SecAttrAccessible] as? String else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:108:25: error: cannot find 'noErr' in scope
106 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
107 |
108 |         guard status == noErr, let resultsDictionary = result as? [String:AnyObject], let accessibilityAttrValue = resultsDictionary[SecAttrAccessible] as? String else {
    |                         `- error: cannot find 'noErr' in scope
109 |             return nil
110 |         }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:94:69: error: cannot find type 'CFString' in scope
 92 |     case whenUnlockedThisDeviceOnly
 93 |
 94 |     static func accessibilityForAttributeValue(_ keychainAttrValue: CFString) -> KeychainItemAccessibility? {
    |                                                                     `- error: cannot find type 'CFString' in scope
 95 |         for (key, value) in keychainItemAccessibilityLookup {
 96 |             if value == keychainAttrValue {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:112:99: error: cannot find type 'CFString' in scope
110 |         }
111 |
112 |         return KeychainItemAccessibility.accessibilityForAttributeValue(accessibilityAttrValue as CFString)
    |                                                                                                   `- error: cannot find type 'CFString' in scope
113 |     }
114 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:118:23: error: cannot find 'kSecClassGenericPassword' in scope
116 |     open func allKeys() -> Set<String> {
117 |         var keychainQueryDictionary: [String:Any] = [
118 |             SecClass: kSecClassGenericPassword,
    |                       `- error: cannot find 'kSecClassGenericPassword' in scope
119 |             SecAttrService: serviceName,
120 |             SecReturnAttributes: kCFBooleanTrue!,
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:120:34: error: cannot find 'kCFBooleanTrue' in scope
118 |             SecClass: kSecClassGenericPassword,
119 |             SecAttrService: serviceName,
120 |             SecReturnAttributes: kCFBooleanTrue!,
    |                                  `- error: cannot find 'kCFBooleanTrue' in scope
121 |             SecMatchLimit: kSecMatchLimitAll,
122 |         ]
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:121:28: error: cannot find 'kSecMatchLimitAll' in scope
119 |             SecAttrService: serviceName,
120 |             SecReturnAttributes: kCFBooleanTrue!,
121 |             SecMatchLimit: kSecMatchLimitAll,
    |                            `- error: cannot find 'kSecMatchLimitAll' in scope
122 |         ]
123 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:129:22: error: cannot find 'SecItemCopyMatching' in scope
127 |
128 |         var result: AnyObject?
129 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
130 |
131 |         guard status == errSecSuccess else { return [] }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:129:69: error: cannot find type 'CFDictionary' in scope
127 |
128 |         var result: AnyObject?
129 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
130 |
131 |         guard status == errSecSuccess else { return [] }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:131:25: error: cannot find 'errSecSuccess' in scope
129 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
130 |
131 |         guard status == errSecSuccess else { return [] }
    |                         `- error: cannot find 'errSecSuccess' in scope
132 |
133 |         var keys = Set<String>()
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:139:56: error: cannot find 'kSecAttrAccount' in scope
137 |                     let key = String(data: accountData, encoding: String.Encoding.utf8) {
138 |                     keys.insert(key)
139 |                 } else if let accountData = attributes[kSecAttrAccount] as? Data,
    |                                                        `- error: cannot find 'kSecAttrAccount' in scope
140 |                     let key = String(data: accountData, encoding: String.Encoding.utf8) {
141 |                     keys.insert(key)
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:221:50: error: cannot find 'kSecMatchLimitOne' in scope
219 |
220 |         // Limit search results to one
221 |         keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
    |                                                  `- error: cannot find 'kSecMatchLimitOne' in scope
222 |
223 |         // Specify we want Data/CFData returned
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:224:50: error: cannot find 'kCFBooleanTrue' in scope
222 |
223 |         // Specify we want Data/CFData returned
224 |         keychainQueryDictionary[SecReturnData] = kCFBooleanTrue
    |                                                  `- error: cannot find 'kCFBooleanTrue' in scope
225 |
226 |         // Search
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:228:22: error: cannot find 'SecItemCopyMatching' in scope
226 |         // Search
227 |         var result: AnyObject?
228 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
229 |
230 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:228:69: error: cannot find type 'CFDictionary' in scope
226 |         // Search
227 |         var result: AnyObject?
228 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
229 |
230 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:230:26: error: cannot find 'noErr' in scope
228 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
229 |
230 |         return status == noErr ? result as? Data : nil
    |                          `- error: cannot find 'noErr' in scope
231 |     }
232 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:244:50: error: cannot find 'kSecMatchLimitOne' in scope
242 |
243 |         // Limit search results to one
244 |         keychainQueryDictionary[SecMatchLimit] = kSecMatchLimitOne
    |                                                  `- error: cannot find 'kSecMatchLimitOne' in scope
245 |
246 |         // Specify we want persistent Data/CFData reference returned
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:247:59: error: cannot find 'kCFBooleanTrue' in scope
245 |
246 |         // Specify we want persistent Data/CFData reference returned
247 |         keychainQueryDictionary[SecReturnPersistentRef] = kCFBooleanTrue
    |                                                           `- error: cannot find 'kCFBooleanTrue' in scope
248 |
249 |         // Search
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:251:22: error: cannot find 'SecItemCopyMatching' in scope
249 |         // Search
250 |         var result: AnyObject?
251 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                      `- error: cannot find 'SecItemCopyMatching' in scope
252 |
253 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:251:69: error: cannot find type 'CFDictionary' in scope
249 |         // Search
250 |         var result: AnyObject?
251 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
    |                                                                     `- error: cannot find type 'CFDictionary' in scope
252 |
253 |         return status == noErr ? result as? Data : nil
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:253:26: error: cannot find 'noErr' in scope
251 |         let status = SecItemCopyMatching(keychainQueryDictionary as CFDictionary, &result)
252 |
253 |         return status == noErr ? result as? Data : nil
    |                          `- error: cannot find 'noErr' in scope
254 |     }
255 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:31:28: error: cannot find type 'CFString' in scope
 29 |
 30 | protocol KeychainAttrRepresentable {
 31 |     var keychainAttrValue: CFString { get }
    |                            `- error: cannot find type 'CFString' in scope
 32 | }
 33 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainItemAccessibility.swift:120:37: error: cannot find type 'CFString' in scope
118 |
119 | extension KeychainItemAccessibility : KeychainAttrRepresentable {
120 |     internal var keychainAttrValue: CFString {
    |                                     `- error: cannot find type 'CFString' in scope
121 |         return keychainItemAccessibilityLookup[self]!
122 |     }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:321:21: error: cannot find type 'OSStatus' in scope
319 |         }
320 |
321 |         let status: OSStatus = SecItemAdd(keychainQueryDictionary as CFDictionary, nil)
    |                     `- error: cannot find type 'OSStatus' in scope
322 |
323 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:323:22: error: cannot find 'errSecSuccess' in scope
321 |         let status: OSStatus = SecItemAdd(keychainQueryDictionary as CFDictionary, nil)
322 |
323 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
324 |             return true
325 |         } else if status == errSecDuplicateItem {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:325:29: error: cannot find 'errSecDuplicateItem' in scope
323 |         if status == errSecSuccess {
324 |             return true
325 |         } else if status == errSecDuplicateItem {
    |                             `- error: cannot find 'errSecDuplicateItem' in scope
326 |             return update(value, forKey: key, withAccessibility: accessibility, isSynchronizable: isSynchronizable)
327 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:347:21: error: cannot find type 'OSStatus' in scope
345 |
346 |         // Delete
347 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
348 |
349 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:349:22: error: cannot find 'errSecSuccess' in scope
347 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
348 |
349 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
350 |             return true
351 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:359:63: error: cannot find 'kSecClassGenericPassword' in scope
357 |     @discardableResult open func removeAllKeys() -> Bool {
358 |         // Setup dictionary to access keychain and specify we are using a generic password (rather than a certificate, internet password, etc)
359 |         var keychainQueryDictionary: [String:Any] = [SecClass:kSecClassGenericPassword]
    |                                                               `- error: cannot find 'kSecClassGenericPassword' in scope
360 |
361 |         // Uniquely identify this keychain accessor
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:369:21: error: cannot find type 'OSStatus' in scope
367 |         }
368 |
369 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
370 |
371 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:371:22: error: cannot find 'errSecSuccess' in scope
369 |         let status: OSStatus = SecItemDelete(keychainQueryDictionary as CFDictionary)
370 |
371 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
372 |             return true
373 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:383:32: error: cannot find 'kSecClassGenericPassword' in scope
381 |     ///
382 |     open class func wipeKeychain() {
383 |         deleteKeychainSecClass(kSecClassGenericPassword) // Generic password items
    |                                `- error: cannot find 'kSecClassGenericPassword' in scope
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:384:32: error: cannot find 'kSecClassInternetPassword' in scope
382 |     open class func wipeKeychain() {
383 |         deleteKeychainSecClass(kSecClassGenericPassword) // Generic password items
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
    |                                `- error: cannot find 'kSecClassInternetPassword' in scope
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:385:32: error: cannot find 'kSecClassCertificate' in scope
383 |         deleteKeychainSecClass(kSecClassGenericPassword) // Generic password items
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
    |                                `- error: cannot find 'kSecClassCertificate' in scope
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
387 |         deleteKeychainSecClass(kSecClassIdentity) // Identity items
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:386:32: error: cannot find 'kSecClassKey' in scope
384 |         deleteKeychainSecClass(kSecClassInternetPassword) // Internet password items
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
    |                                `- error: cannot find 'kSecClassKey' in scope
387 |         deleteKeychainSecClass(kSecClassIdentity) // Identity items
388 |     }
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:387:32: error: cannot find 'kSecClassIdentity' in scope
385 |         deleteKeychainSecClass(kSecClassCertificate) // Certificate items
386 |         deleteKeychainSecClass(kSecClassKey) // Cryptographic key items
387 |         deleteKeychainSecClass(kSecClassIdentity) // Identity items
    |                                `- error: cannot find 'kSecClassIdentity' in scope
388 |     }
389 |
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:397:21: error: cannot find type 'OSStatus' in scope
395 |     @discardableResult private class func deleteKeychainSecClass(_ secClass: AnyObject) -> Bool {
396 |         let query = [SecClass: secClass]
397 |         let status: OSStatus = SecItemDelete(query as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
398 |
399 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:399:22: error: cannot find 'errSecSuccess' in scope
397 |         let status: OSStatus = SecItemDelete(query as CFDictionary)
398 |
399 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
400 |             return true
401 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:417:21: error: cannot find type 'OSStatus' in scope
415 |
416 |         // Update
417 |         let status: OSStatus = SecItemUpdate(keychainQueryDictionary as CFDictionary, updateDictionary as CFDictionary)
    |                     `- error: cannot find type 'OSStatus' in scope
418 |
419 |         if status == errSecSuccess {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:419:22: error: cannot find 'errSecSuccess' in scope
417 |         let status: OSStatus = SecItemUpdate(keychainQueryDictionary as CFDictionary, updateDictionary as CFDictionary)
418 |
419 |         if status == errSecSuccess {
    |                      `- error: cannot find 'errSecSuccess' in scope
420 |             return true
421 |         } else {
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:434:63: error: cannot find 'kSecClassGenericPassword' in scope
432 |     private func setupKeychainQueryDictionary(forKey key: String, withAccessibility accessibility: KeychainItemAccessibility? = nil, isSynchronizable: Bool = false) -> [String:Any] {
433 |         // Setup default access as generic password (rather than a certificate, internet password, etc)
434 |         var keychainQueryDictionary: [String:Any] = [SecClass:kSecClassGenericPassword]
    |                                                               `- error: cannot find 'kSecClassGenericPassword' in scope
435 |
436 |         // Uniquely identify this keychain accessor
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:456:77: error: cannot find 'kCFBooleanTrue' in scope
454 |         keychainQueryDictionary[SecAttrAccount] = encodedIdentifier
455 |
456 |         keychainQueryDictionary[SecAttrSynchronizable] = isSynchronizable ? kCFBooleanTrue : kCFBooleanFalse
    |                                                                             `- error: cannot find 'kCFBooleanTrue' in scope
457 |
458 |         return keychainQueryDictionary
/host/spi-builder-workspace/.build/checkouts/SwiftKeychainWrapper/SwiftKeychainWrapper/KeychainWrapper.swift:456:94: error: cannot find 'kCFBooleanFalse' in scope
454 |         keychainQueryDictionary[SecAttrAccount] = encodedIdentifier
455 |
456 |         keychainQueryDictionary[SecAttrSynchronizable] = isSynchronizable ? kCFBooleanTrue : kCFBooleanFalse
    |                                                                                              `- error: cannot find 'kCFBooleanFalse' in scope
457 |
458 |         return keychainQueryDictionary
BUILD FAILURE 6.0 linux