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

Swift 6 data race errors: 5

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/sindresorhus/ExtendedAttributes.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/sindresorhus/ExtendedAttributes
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 98fb028 Add link to docs
Cloned https://github.com/sindresorhus/ExtendedAttributes.git
Revision (git rev-parse @):
98fb02886e708235221efc30be42a9fdfdc6fe6a
SPI manifest file found: $workDir/.spi.yml
SUCCESS checkout https://github.com/sindresorhus/ExtendedAttributes.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/sindresorhus/ExtendedAttributes.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/2] Write sources
[1/2] Write swift-version-6F35C1178C84523A.txt
[3/7] Compiling ExtendedAttributes ExtendedAttributes+Flags.swift
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:8:21: warning: static property 'noExport' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
 7 | 		*/
 8 | 		public static let noExport = Self(rawValue: XATTR_FLAG_NO_EXPORT)
   |                     |- warning: static property 'noExport' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'noExport' 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
 9 |
10 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:15:21: warning: static property 'contentDependent' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
13 | 		This property causes the attribute to be preserved for copy and share, but not for safe save. In a safe save, the attriubte exists on the original, and will not be copied to the new version.
14 | 		*/
15 | 		public static let contentDependent = Self(rawValue: XATTR_FLAG_CONTENT_DEPENDENT)
   |                     |- warning: static property 'contentDependent' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'contentDependent' 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
16 |
17 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:20:21: warning: static property 'neverPreserve' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
18 | 		Declares that the attribute is never to be copied, for any intention type.
19 | 		*/
20 | 		public static let neverPreserve = Self(rawValue: XATTR_FLAG_NEVER_PRESERVE)
   |                     |- warning: static property 'neverPreserve' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'neverPreserve' 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
21 |
22 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:25:21: warning: static property 'syncable' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
23 | 		Declares that the attribute is to be synced, used by the `XATTR_OPERATION_ITENT_SYNC` intention. Syncing tends to want to minimize the amount of metadata synced around, hence the default behavior is for the attribute NOT to be synced, even if it would else be preserved for the `XATTR_OPERATION_ITENT_COPY` intention.
24 | 		*/
25 | 		public static let syncable = Self(rawValue: XATTR_FLAG_SYNCABLE)
   |                     |- warning: static property 'syncable' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'syncable' 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
26 |
27 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:30:21: warning: static property 'onlyBackup' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
28 | 		Declares that the attribute should only be copied if the intention is `XATTR_OPERATION_INTENT_BACKUP`. That intention is distinct from the `XATTR_OPERATION_INTENT_SYNC` intention in that there is no desire to minimize the amount of metadata being moved.
29 | 		*/
30 | 		public static let onlyBackup = Self(rawValue: XATTR_FLAG_ONLY_BACKUP)
   |                     |- warning: static property 'onlyBackup' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'onlyBackup' 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
31 |
32 | 		public var rawValue: xattr_flags_t
[4/7] Compiling ExtendedAttributes ExtendedAttributes.swift
[5/7] Emitting module ExtendedAttributes
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:8:21: warning: static property 'noExport' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
 7 | 		*/
 8 | 		public static let noExport = Self(rawValue: XATTR_FLAG_NO_EXPORT)
   |                     |- warning: static property 'noExport' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'noExport' 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
 9 |
10 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:15:21: warning: static property 'contentDependent' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
13 | 		This property causes the attribute to be preserved for copy and share, but not for safe save. In a safe save, the attriubte exists on the original, and will not be copied to the new version.
14 | 		*/
15 | 		public static let contentDependent = Self(rawValue: XATTR_FLAG_CONTENT_DEPENDENT)
   |                     |- warning: static property 'contentDependent' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'contentDependent' 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
16 |
17 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:20:21: warning: static property 'neverPreserve' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
18 | 		Declares that the attribute is never to be copied, for any intention type.
19 | 		*/
20 | 		public static let neverPreserve = Self(rawValue: XATTR_FLAG_NEVER_PRESERVE)
   |                     |- warning: static property 'neverPreserve' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'neverPreserve' 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
21 |
22 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:25:21: warning: static property 'syncable' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
23 | 		Declares that the attribute is to be synced, used by the `XATTR_OPERATION_ITENT_SYNC` intention. Syncing tends to want to minimize the amount of metadata synced around, hence the default behavior is for the attribute NOT to be synced, even if it would else be preserved for the `XATTR_OPERATION_ITENT_COPY` intention.
24 | 		*/
25 | 		public static let syncable = Self(rawValue: XATTR_FLAG_SYNCABLE)
   |                     |- warning: static property 'syncable' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'syncable' 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
26 |
27 | 		/**
/Users/admin/builder/spi-builder-workspace/Sources/ExtendedAttributes/ExtendedAttributes+Flags.swift:30:21: warning: static property 'onlyBackup' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
 2 |
 3 | extension ExtendedAttributes {
 4 | 	public struct Flags: OptionSet {
   |                `- note: consider making struct 'Flags' conform to the 'Sendable' protocol
 5 | 		/**
 6 | 		Declare that the attribute should not be exported. This is deliberately a bit vague, but this is used by `XATTR_OPERATION_INTENT_SHARE` to indicate not to preserve the attribute.
   :
28 | 		Declares that the attribute should only be copied if the intention is `XATTR_OPERATION_INTENT_BACKUP`. That intention is distinct from the `XATTR_OPERATION_INTENT_SYNC` intention in that there is no desire to minimize the amount of metadata being moved.
29 | 		*/
30 | 		public static let onlyBackup = Self(rawValue: XATTR_FLAG_ONLY_BACKUP)
   |                     |- warning: static property 'onlyBackup' is not concurrency-safe because non-'Sendable' type 'ExtendedAttributes.Flags' may have shared mutable state; this is an error in the Swift 6 language mode
   |                     |- note: annotate 'onlyBackup' 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
31 |
32 | 		public var rawValue: xattr_flags_t
[6/7] Compiling ExtendedAttributes Utilities.swift
[7/7] Compiling ExtendedAttributes SystemMetadata.swift
Build complete! (18.39s)
Build complete.
{
  "dependencies" : [
  ],
  "manifest_display_name" : "ExtendedAttributes",
  "name" : "ExtendedAttributes",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "11.0"
    },
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "tvos",
      "version" : "14.0"
    },
    {
      "name" : "watchos",
      "version" : "7.0"
    },
    {
      "name" : "visionos",
      "version" : "1.0"
    }
  ],
  "products" : [
    {
      "name" : "ExtendedAttributes",
      "targets" : [
        "ExtendedAttributes"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ExtendedAttributesTests",
      "module_type" : "SwiftTarget",
      "name" : "ExtendedAttributesTests",
      "path" : "Tests/ExtendedAttributesTests",
      "sources" : [
        "ExtendedAttributesTests.swift"
      ],
      "target_dependencies" : [
        "ExtendedAttributes"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ExtendedAttributes",
      "module_type" : "SwiftTarget",
      "name" : "ExtendedAttributes",
      "path" : "Sources/ExtendedAttributes",
      "product_memberships" : [
        "ExtendedAttributes"
      ],
      "sources" : [
        "ExtendedAttributes+Flags.swift",
        "ExtendedAttributes.swift",
        "SystemMetadata.swift",
        "Utilities.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.9"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.