This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.

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 TraceLogAdaptiveWriter with Swift 6.0 for macOS (SPM).

Swift 6 data race errors: 1

Build Command

env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete

Build Log

========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/tonystone/tracelog-adaptive-writer.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/tonystone/tracelog-adaptive-writer
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 4ce5385 Merge pull request #13 from tonystone/tracelog-5
Cloned https://github.com/tonystone/tracelog-adaptive-writer.git
Revision (git rev-parse @):
4ce53855505a61861f0520e257795521cd65af99
SUCCESS checkout https://github.com/tonystone/tracelog-adaptive-writer.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/tonystone/tracelog-adaptive-writer.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-15.3.0.app xcrun --toolchain org.swift.600202405261a swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/8] Write sources
[2/8] Write swift-version-6F35C1178C84523A.txt
[4/38] Compiling TraceLog RuntimeContext.swift
[5/38] Compiling TraceLog StaticContext.swift
[6/38] Compiling TraceLog Writer.swift
[7/41] Compiling TraceLog FileStrategy+Rotate.swift
[8/41] Compiling TraceLog FileStrategyManager.swift
[9/41] Compiling TraceLog FileWriter.swift
[10/41] Compiling TraceLog SyncWriterProxy.swift
[11/41] Compiling TraceLog WriterProxy.swift
[12/41] Compiling TraceLog BlockTimer.swift
[13/41] Compiling TraceLog ConcurrencyMode.swift
[14/41] Compiling TraceLog Environment.swift
[15/41] Compiling TraceLog JSONFormat.swift
[16/41] Compiling TraceLog TextFormat.swift
[17/41] Compiling TraceLog Configuration.swift
[18/41] Compiling TraceLog Logger.swift
[19/41] Compiling TraceLog AsyncWriterProxy.swift
[20/41] Compiling TraceLog DirectWriterProxy.swift
[21/41] Compiling TraceLog CharacterSet+InternalExtensions.swift
[22/41] Compiling TraceLog Mutex.swift
[23/41] Compiling TraceLog FileOutputStream.swift
[24/41] Compiling TraceLog RawOutputStream.swift
[25/41] Compiling TraceLog StandardStream.swift
[26/41] Compiling TraceLog String+InternalExtensions.swift
[27/41] Emitting module TraceLog
[28/41] Compiling TraceLog LogLevel.swift
[29/41] Compiling TraceLog OutputStreamFormatter.swift
[30/41] Compiling TraceLog OutputStreamWriter.swift
[31/41] Compiling TraceLog FileOutputStreamError+Posix.swift
[32/41] Compiling TraceLog OutputStream.swift
[33/41] Compiling TraceLog OutputStreamError+Posix.swift
[34/41] Compiling TraceLog TraceLog.swift
[35/41] Compiling TraceLog ConsoleWriter.swift
[36/41] Compiling TraceLog FileStrategy+Fixed.swift
[36/41] Compiling TraceLogObjC TraceLog.m
[37/41] Write Objects.LinkFileList
[38/41] Linking libTraceLog.dylib
[40/47] Compiling TraceLogAdaptiveWriter PlatformWriter.swift
[41/47] Compiling TraceLogAdaptiveWriter AdaptiveWriter.swift
/Users/admin/builder/spi-builder-workspace/Sources/TraceLogAdaptiveWriter/Platform/DarwinPlatformWriter.swift:40:16: warning: static property 'defaultLogLevelConversion' is not concurrency-safe because non-'Sendable' type '[LogLevel : Platform.LogLevel]' (aka 'Dictionary<LogLevel, Int32>') may have shared mutable state; this is an error in the Swift 6 language mode
38 |     /// The default LogLevel Conversion Table.
39 |     ///
40 |     static let defaultLogLevelConversion: [TraceLog.LogLevel: Platform.LogLevel] = [
   |                `- warning: static property 'defaultLogLevelConversion' is not concurrency-safe because non-'Sendable' type '[LogLevel : Platform.LogLevel]' (aka 'Dictionary<LogLevel, Int32>') may have shared mutable state; this is an error in the Swift 6 language mode
41 |         .error:   Platform.LogLevel(OSLogType.error.rawValue),
42 |         .warning: Platform.LogLevel(OSLogType.default.rawValue),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/tracelog/Sources/TraceLog/SDK/LogLevel.swift:26:13: note: enum 'LogLevel' does not conform to the 'Sendable' protocol
 24 | /// environment variables that can be set to configure TraceLog.
 25 | ///
 26 | public enum LogLevel: Int, CaseIterable, Comparable {
    |             `- note: enum 'LogLevel' does not conform to the 'Sendable' protocol
 27 |
 28 |     // MARK: Available Levels
/Users/admin/builder/spi-builder-workspace/Sources/TraceLogAdaptiveWriter/Platform/DarwinPlatformWriter.swift:23:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'TraceLog'
21 |
22 | import Foundation
23 | import TraceLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'TraceLog'
24 |
25 | import os.log
   :
38 |     /// The default LogLevel Conversion Table.
39 |     ///
40 |     static let defaultLogLevelConversion: [TraceLog.LogLevel: Platform.LogLevel] = [
   |                |- note: annotate 'defaultLogLevelConversion' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |         .error:   Platform.LogLevel(OSLogType.error.rawValue),
42 |         .warning: Platform.LogLevel(OSLogType.default.rawValue),
[42/47] Compiling TraceLogAdaptiveWriter LinuxPlatformWriter.swift
[43/47] Compiling TraceLogAdaptiveWriter Platform.swift
[44/47] Compiling TraceLogAdaptiveWriter DarwinPlatformWriter.swift
/Users/admin/builder/spi-builder-workspace/Sources/TraceLogAdaptiveWriter/Platform/DarwinPlatformWriter.swift:40:16: warning: static property 'defaultLogLevelConversion' is not concurrency-safe because non-'Sendable' type '[LogLevel : Platform.LogLevel]' (aka 'Dictionary<LogLevel, Int32>') may have shared mutable state; this is an error in the Swift 6 language mode
38 |     /// The default LogLevel Conversion Table.
39 |     ///
40 |     static let defaultLogLevelConversion: [TraceLog.LogLevel: Platform.LogLevel] = [
   |                `- warning: static property 'defaultLogLevelConversion' is not concurrency-safe because non-'Sendable' type '[LogLevel : Platform.LogLevel]' (aka 'Dictionary<LogLevel, Int32>') may have shared mutable state; this is an error in the Swift 6 language mode
41 |         .error:   Platform.LogLevel(OSLogType.error.rawValue),
42 |         .warning: Platform.LogLevel(OSLogType.default.rawValue),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/tracelog/Sources/TraceLog/SDK/LogLevel.swift:26:13: note: enum 'LogLevel' does not conform to the 'Sendable' protocol
 24 | /// environment variables that can be set to configure TraceLog.
 25 | ///
 26 | public enum LogLevel: Int, CaseIterable, Comparable {
    |             `- note: enum 'LogLevel' does not conform to the 'Sendable' protocol
 27 |
 28 |     // MARK: Available Levels
/Users/admin/builder/spi-builder-workspace/Sources/TraceLogAdaptiveWriter/Platform/DarwinPlatformWriter.swift:23:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'TraceLog'
21 |
22 | import Foundation
23 | import TraceLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'TraceLog'
24 |
25 | import os.log
   :
38 |     /// The default LogLevel Conversion Table.
39 |     ///
40 |     static let defaultLogLevelConversion: [TraceLog.LogLevel: Platform.LogLevel] = [
   |                |- note: annotate 'defaultLogLevelConversion' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |         .error:   Platform.LogLevel(OSLogType.error.rawValue),
42 |         .warning: Platform.LogLevel(OSLogType.default.rawValue),
[45/47] Emitting module TraceLogAdaptiveWriter
/Users/admin/builder/spi-builder-workspace/Sources/TraceLogAdaptiveWriter/Platform/DarwinPlatformWriter.swift:40:16: warning: static property 'defaultLogLevelConversion' is not concurrency-safe because non-'Sendable' type '[LogLevel : Platform.LogLevel]' (aka 'Dictionary<LogLevel, Int32>') may have shared mutable state; this is an error in the Swift 6 language mode
38 |     /// The default LogLevel Conversion Table.
39 |     ///
40 |     static let defaultLogLevelConversion: [TraceLog.LogLevel: Platform.LogLevel] = [
   |                `- warning: static property 'defaultLogLevelConversion' is not concurrency-safe because non-'Sendable' type '[LogLevel : Platform.LogLevel]' (aka 'Dictionary<LogLevel, Int32>') may have shared mutable state; this is an error in the Swift 6 language mode
41 |         .error:   Platform.LogLevel(OSLogType.error.rawValue),
42 |         .warning: Platform.LogLevel(OSLogType.default.rawValue),
/Users/admin/builder/spi-builder-workspace/.build/checkouts/tracelog/Sources/TraceLog/SDK/LogLevel.swift:26:13: note: enum 'LogLevel' does not conform to the 'Sendable' protocol
 24 | /// environment variables that can be set to configure TraceLog.
 25 | ///
 26 | public enum LogLevel: Int, CaseIterable, Comparable {
    |             `- note: enum 'LogLevel' does not conform to the 'Sendable' protocol
 27 |
 28 |     // MARK: Available Levels
/Users/admin/builder/spi-builder-workspace/Sources/TraceLogAdaptiveWriter/Platform/DarwinPlatformWriter.swift:23:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'TraceLog'
21 |
22 | import Foundation
23 | import TraceLog
   | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'TraceLog'
24 |
25 | import os.log
   :
38 |     /// The default LogLevel Conversion Table.
39 |     ///
40 |     static let defaultLogLevelConversion: [TraceLog.LogLevel: Platform.LogLevel] = [
   |                |- note: annotate 'defaultLogLevelConversion' with '@MainActor' if property should only be accessed from the main actor
   |                `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
41 |         .error:   Platform.LogLevel(OSLogType.error.rawValue),
42 |         .warning: Platform.LogLevel(OSLogType.default.rawValue),
[45/47] Write Objects.LinkFileList
[46/47] Linking libTraceLogAdaptiveWriter.dylib
Build complete! (28.16s)
Fetching https://github.com/tonystone/tracelog.git
[1/5678] Fetching tracelog
Fetched https://github.com/tonystone/tracelog.git from cache (1.24s)
Computing version for https://github.com/tonystone/tracelog.git
Computed https://github.com/tonystone/tracelog.git at 5.0.1 (0.68s)
Creating working copy for https://github.com/tonystone/tracelog.git
Working copy of https://github.com/tonystone/tracelog.git resolved at 5.0.1
warning: failed to retrieve search paths with pkg-config; maybe pkg-config is not installed
warning: couldn't find pc file for libsystemd
Build complete.
{
  "dependencies" : [
    {
      "identity" : "tracelog",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "5.0.0",
            "upper_bound" : "6.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/tonystone/tracelog.git"
    }
  ],
  "manifest_display_name" : "TraceLogAdaptiveWriter",
  "name" : "TraceLogAdaptiveWriter",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "TraceLogAdaptiveWriter",
      "targets" : [
        "TraceLogAdaptiveWriter"
      ],
      "type" : {
        "library" : [
          "dynamic"
        ]
      }
    }
  ],
  "swift_languages_versions" : [
    "5"
  ],
  "targets" : [
    {
      "c99name" : "systemd",
      "module_type" : "SystemLibraryTarget",
      "name" : "systemd",
      "path" : "Sources/systemd",
      "product_memberships" : [
        "TraceLogAdaptiveWriter"
      ],
      "sources" : [
      ],
      "type" : "system-target"
    },
    {
      "c99name" : "TraceLogAdaptiveWriterTests",
      "module_type" : "SwiftTarget",
      "name" : "TraceLogAdaptiveWriterTests",
      "path" : "Tests/TraceLogAdaptiveWriterTests",
      "product_dependencies" : [
        "TraceLog"
      ],
      "sources" : [
        "AdaptiveWriterTests.swift",
        "Platform.swift",
        "Platform/DarwinPlatformReader.swift",
        "Platform/LinuxPlatformReader.swift",
        "TestHarness/BufferReader.swift",
        "TestHarness/BufferWriter.swift",
        "TestHarness/TestHarness.swift",
        "TestHarness/TestUtilities.swift",
        "TestWriters/TestContext.swift"
      ],
      "target_dependencies" : [
        "TraceLogAdaptiveWriter"
      ],
      "type" : "test"
    },
    {
      "c99name" : "TraceLogAdaptiveWriter",
      "module_type" : "SwiftTarget",
      "name" : "TraceLogAdaptiveWriter",
      "path" : "Sources/TraceLogAdaptiveWriter",
      "product_dependencies" : [
        "TraceLog"
      ],
      "product_memberships" : [
        "TraceLogAdaptiveWriter"
      ],
      "sources" : [
        "AdaptiveWriter.swift",
        "Platform.swift",
        "Platform/DarwinPlatformWriter.swift",
        "Platform/LinuxPlatformWriter.swift",
        "PlatformWriter.swift"
      ],
      "target_dependencies" : [
        "systemd"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.0"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.