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

Successful build of InjectableLoggers, reference develop (e50f0b), with Swift 6.1 for macOS (SPM) on 26 Apr 2025 04:52:06 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/CuratoOpenSource/InjectableLoggers.git
Reference: develop
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/CuratoOpenSource/InjectableLoggers
 * branch            develop    -> FETCH_HEAD
 * [new branch]      develop    -> origin/develop
HEAD is now at e50f0b0 Merge remote-tracking branch 'refs/remotes/origin/develop'
Cloned https://github.com/CuratoOpenSource/InjectableLoggers.git
Revision (git rev-parse @):
e50f0b0ad4c5602bd634dd256bb1e2864f9d9b8a
SUCCESS checkout https://github.com/CuratoOpenSource/InjectableLoggers.git at develop
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
  "identity": ".resolve-product-dependencies",
  "name": "resolve-dependencies",
  "url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "version": "unspecified",
  "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
  "dependencies": [
    {
      "identity": "injectableloggers",
      "name": "InjectableLoggers",
      "url": "https://github.com/CuratoOpenSource/InjectableLoggers.git",
      "version": "unspecified",
      "path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/InjectableLoggers",
      "dependencies": [
      ]
    }
  ]
}
Fetching https://github.com/CuratoOpenSource/InjectableLoggers.git
[15/750] Fetching injectableloggers
Fetched https://github.com/CuratoOpenSource/InjectableLoggers.git from cache (0.74s)
Creating working copy for https://github.com/CuratoOpenSource/InjectableLoggers.git
Working copy of https://github.com/CuratoOpenSource/InjectableLoggers.git resolved at develop (e50f0b0)
warning: '.resolve-product-dependencies': dependency 'injectableloggers' is not used by any target
Found 0 product dependencies
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/CuratoOpenSource/InjectableLoggers.git
https://github.com/CuratoOpenSource/InjectableLoggers.git
{
  "dependencies" : [
  ],
  "manifest_display_name" : "InjectableLoggers",
  "name" : "InjectableLoggers",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "8.0"
    }
  ],
  "products" : [
    {
      "name" : "InjectableLoggers",
      "targets" : [
        "InjectableLoggers"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "InjectableLoggers",
      "module_type" : "SwiftTarget",
      "name" : "InjectableLoggers",
      "path" : "InjectableLoggers",
      "product_memberships" : [
        "InjectableLoggers"
      ],
      "sources" : [
        "Classes/Classes/Logger.swift",
        "Classes/Classes/MockLogger.swift",
        "Classes/Classes/SimpleLogger.swift",
        "Classes/Enums/LogLevel.swift",
        "Classes/ExtendedProtocols/CanLog.swift",
        "Classes/ExtendedProtocols/CanLogAtLevel.swift",
        "Classes/ExtendedProtocols/CanLogMessage.swift",
        "Classes/ExtendedProtocols/CanLogMessageAtLevel.swift",
        "Classes/Protocols/CanFormatMessageInFileInFunctionAtLineWithSettings.swift",
        "Classes/Protocols/CanLogMessageAtLevelInFileInFunctionAtLine.swift",
        "Classes/Protocols/CanLogMessageInFileInFunctionAtLine.swift",
        "Classes/Protocols/HasDefaultLoglevel.swift",
        "Classes/Structs/ConsoleLogger.swift",
        "Classes/Structs/Logger.FormatSettings.swift",
        "Classes/Structs/Logger.Formatter.swift",
        "Classes/Structs/Logger.Settings.swift",
        "Classes/Structs/SimpleLogger.Settings.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -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
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-2F0A5646E1D333AE.txt
[3/19] Compiling InjectableLoggers CanLogMessageInFileInFunctionAtLine.swift
[4/19] Compiling InjectableLoggers HasDefaultLoglevel.swift
[5/19] Compiling InjectableLoggers Logger.Settings.swift
[6/19] Compiling InjectableLoggers ConsoleLogger.swift
[7/19] Compiling InjectableLoggers Logger.FormatSettings.swift
[8/20] Compiling InjectableLoggers SimpleLogger.Settings.swift
[9/20] Compiling InjectableLoggers Logger.Formatter.swift
[10/20] Compiling InjectableLoggers CanLogMessage.swift
[11/20] Compiling InjectableLoggers CanLogMessageAtLevel.swift
[12/20] Compiling InjectableLoggers CanFormatMessageInFileInFunctionAtLineWithSettings.swift
[13/20] Compiling InjectableLoggers CanLogMessageAtLevelInFileInFunctionAtLine.swift
[14/20] Compiling InjectableLoggers CanLog.swift
[15/20] Compiling InjectableLoggers CanLogAtLevel.swift
[16/20] Compiling InjectableLoggers SimpleLogger.swift
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:21:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
19 | extension SimpleLogger {
20 |
21 |     open func format(_ message: Any, with logLevelString: String) -> String {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
22 |
23 |         var formattedMessage = logLevelString
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:36:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
34 |     }
35 |
36 |     open func shouldLog(at level: Loglevel) -> Bool {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
37 |         guard level != .inactive else { return false }
38 |         return level.rawValue >= settings.activeLogLevel.rawValue
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:45:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
43 | extension SimpleLogger: CanLogMessageAtLevel {
44 |
45 |     open func log(_ message: Any, atLevel level: Loglevel) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
46 |         relay?.log(message, atLevel: level)
47 |         guard shouldLog(at: level) else { return }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:55:5: warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
53 | extension SimpleLogger: HasDefaultLoglevel {
54 |
55 |     open var defaultLogLevel: Loglevel {
   |     `- warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
56 |         return settings.defaultLogLevel
57 |     }
[17/20] Compiling InjectableLoggers LogLevel.swift
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:21:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
19 | extension SimpleLogger {
20 |
21 |     open func format(_ message: Any, with logLevelString: String) -> String {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
22 |
23 |         var formattedMessage = logLevelString
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:36:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
34 |     }
35 |
36 |     open func shouldLog(at level: Loglevel) -> Bool {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
37 |         guard level != .inactive else { return false }
38 |         return level.rawValue >= settings.activeLogLevel.rawValue
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:45:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
43 | extension SimpleLogger: CanLogMessageAtLevel {
44 |
45 |     open func log(_ message: Any, atLevel level: Loglevel) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
46 |         relay?.log(message, atLevel: level)
47 |         guard shouldLog(at: level) else { return }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:55:5: warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
53 | extension SimpleLogger: HasDefaultLoglevel {
54 |
55 |     open var defaultLogLevel: Loglevel {
   |     `- warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
56 |         return settings.defaultLogLevel
57 |     }
[18/20] Emitting module InjectableLoggers
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:21:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
19 | extension Logger: CanLogMessageAtLevelInFileInFunctionAtLine {
20 |
21 |     open func log(_ message: Any = "", atLevel level: Loglevel, inFile file: String? = #file, inFunction function: String? = #function, atLine line: Int? = #line) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
22 |         relay?.log(message, atLevel: level, inFile: file, inFunction: function, atLine: line)
23 |         breakWhenBreakPointIsAvailable(for: level)
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:37:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
35 | extension Logger: CanLogMessageInFileInFunctionAtLine {
36 |
37 |     open func log(_ message: Any = "", inFile file: String? = #file, inFunction function: String? = #function, atLine line: Int? = #line) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
38 |         log(message, atLevel: defaultLogLevel, inFile: file, inFunction: function, atLine: line)
39 |     }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:45:5: warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
43 | extension Logger: HasDefaultLoglevel {
44 |
45 |     open var defaultLogLevel: Loglevel {
   |     `- warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
46 |         return settings.defaultLogLevel
47 |     }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:52:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
50 | extension Logger {
51 |
52 |     open func shouldLog(at level: Loglevel) -> Bool {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
53 |         guard level != .inactive else { return false }
54 |         return level.rawValue >= settings.activeLogLevel.rawValue
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:21:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
19 | extension SimpleLogger {
20 |
21 |     open func format(_ message: Any, with logLevelString: String) -> String {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
22 |
23 |         var formattedMessage = logLevelString
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:36:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
34 |     }
35 |
36 |     open func shouldLog(at level: Loglevel) -> Bool {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
37 |         guard level != .inactive else { return false }
38 |         return level.rawValue >= settings.activeLogLevel.rawValue
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:45:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
43 | extension SimpleLogger: CanLogMessageAtLevel {
44 |
45 |     open func log(_ message: Any, atLevel level: Loglevel) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
46 |         relay?.log(message, atLevel: level)
47 |         guard shouldLog(at: level) else { return }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/SimpleLogger.swift:55:5: warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
53 | extension SimpleLogger: HasDefaultLoglevel {
54 |
55 |     open var defaultLogLevel: Loglevel {
   |     `- warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
56 |         return settings.defaultLogLevel
57 |     }
[19/20] Compiling InjectableLoggers Logger.swift
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:21:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
19 | extension Logger: CanLogMessageAtLevelInFileInFunctionAtLine {
20 |
21 |     open func log(_ message: Any = "", atLevel level: Loglevel, inFile file: String? = #file, inFunction function: String? = #function, atLine line: Int? = #line) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
22 |         relay?.log(message, atLevel: level, inFile: file, inFunction: function, atLine: line)
23 |         breakWhenBreakPointIsAvailable(for: level)
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:37:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
35 | extension Logger: CanLogMessageInFileInFunctionAtLine {
36 |
37 |     open func log(_ message: Any = "", inFile file: String? = #file, inFunction function: String? = #function, atLine line: Int? = #line) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
38 |         log(message, atLevel: defaultLogLevel, inFile: file, inFunction: function, atLine: line)
39 |     }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:45:5: warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
43 | extension Logger: HasDefaultLoglevel {
44 |
45 |     open var defaultLogLevel: Loglevel {
   |     `- warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
46 |         return settings.defaultLogLevel
47 |     }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:52:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
50 | extension Logger {
51 |
52 |     open func shouldLog(at level: Loglevel) -> Bool {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
53 |         guard level != .inactive else { return false }
54 |         return level.rawValue >= settings.activeLogLevel.rawValue
[20/20] Compiling InjectableLoggers MockLogger.swift
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:21:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
19 | extension Logger: CanLogMessageAtLevelInFileInFunctionAtLine {
20 |
21 |     open func log(_ message: Any = "", atLevel level: Loglevel, inFile file: String? = #file, inFunction function: String? = #function, atLine line: Int? = #line) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
22 |         relay?.log(message, atLevel: level, inFile: file, inFunction: function, atLine: line)
23 |         breakWhenBreakPointIsAvailable(for: level)
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:37:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
35 | extension Logger: CanLogMessageInFileInFunctionAtLine {
36 |
37 |     open func log(_ message: Any = "", inFile file: String? = #file, inFunction function: String? = #function, atLine line: Int? = #line) {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
38 |         log(message, atLevel: defaultLogLevel, inFile: file, inFunction: function, atLine: line)
39 |     }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:45:5: warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
43 | extension Logger: HasDefaultLoglevel {
44 |
45 |     open var defaultLogLevel: Loglevel {
   |     `- warning: non-'@objc' property in extensions cannot be overridden; use 'public' instead
46 |         return settings.defaultLogLevel
47 |     }
/Users/admin/builder/spi-builder-workspace/InjectableLoggers/Classes/Classes/Logger.swift:52:5: warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
50 | extension Logger {
51 |
52 |     open func shouldLog(at level: Loglevel) -> Bool {
   |     `- warning: non-'@objc' instance method in extensions cannot be overridden; use 'public' instead
53 |         guard level != .inactive else { return false }
54 |         return level.rawValue >= settings.activeLogLevel.rawValue
Build complete! (4.43s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "InjectableLoggers",
  "name" : "InjectableLoggers",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "8.0"
    }
  ],
  "products" : [
    {
      "name" : "InjectableLoggers",
      "targets" : [
        "InjectableLoggers"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "InjectableLoggers",
      "module_type" : "SwiftTarget",
      "name" : "InjectableLoggers",
      "path" : "InjectableLoggers",
      "product_memberships" : [
        "InjectableLoggers"
      ],
      "sources" : [
        "Classes/Classes/Logger.swift",
        "Classes/Classes/MockLogger.swift",
        "Classes/Classes/SimpleLogger.swift",
        "Classes/Enums/LogLevel.swift",
        "Classes/ExtendedProtocols/CanLog.swift",
        "Classes/ExtendedProtocols/CanLogAtLevel.swift",
        "Classes/ExtendedProtocols/CanLogMessage.swift",
        "Classes/ExtendedProtocols/CanLogMessageAtLevel.swift",
        "Classes/Protocols/CanFormatMessageInFileInFunctionAtLineWithSettings.swift",
        "Classes/Protocols/CanLogMessageAtLevelInFileInFunctionAtLine.swift",
        "Classes/Protocols/CanLogMessageInFileInFunctionAtLine.swift",
        "Classes/Protocols/HasDefaultLoglevel.swift",
        "Classes/Structs/ConsoleLogger.swift",
        "Classes/Structs/Logger.FormatSettings.swift",
        "Classes/Structs/Logger.Formatter.swift",
        "Classes/Structs/Logger.Settings.swift",
        "Classes/Structs/SimpleLogger.Settings.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Done.