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 SemiSingleton 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/Frizlab/SemiSingleton.git
Reference: main
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/Frizlab/SemiSingleton
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at e010f89 Update dependencies and fix Sendability warnings
Cloned https://github.com/Frizlab/SemiSingleton.git
Revision (git rev-parse @):
e010f893ea20cc32fcf58396383859b327185005
SUCCESS checkout https://github.com/Frizlab/SemiSingleton.git at main
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.0
Building package at path:  $workDir
https://github.com/Frizlab/SemiSingleton.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/21] Write sources
[18/21] Write swift-version-6F35C1178C84523A.txt
[20/32] Emitting module SwiftSyntax509
[21/32] Compiling SwiftSyntax509 Empty.swift
[22/32] Compiling SwiftSyntax510 Empty.swift
[23/32] Emitting module SwiftSyntax510
[24/32] Compiling Logging LogHandler.swift
[25/32] Compiling Logging MetadataProvider.swift
[26/32] Compiling Logging Logging.swift
[27/32] Compiling Logging Locks.swift
[28/32] Emitting module Logging
[29/94] Compiling SwiftSyntax AbsolutePosition.swift
[30/94] Compiling SwiftSyntax AbsoluteRawSyntax.swift
[31/94] Compiling SwiftSyntax AbsoluteSyntaxInfo.swift
[32/94] Compiling SwiftSyntax Assert.swift
[33/94] Compiling SwiftSyntax BumpPtrAllocator.swift
[34/94] Compiling SwiftSyntax CommonAncestor.swift
[35/94] Compiling SwiftSyntax Convenience.swift
[36/100] Compiling SwiftSyntax SyntaxHashable.swift
[37/100] Compiling SwiftSyntax SyntaxIdentifier.swift
[38/100] Compiling SwiftSyntax SyntaxNodeStructure.swift
[39/100] Compiling SwiftSyntax SyntaxProtocol.swift
[40/100] Compiling SwiftSyntax SyntaxText.swift
[41/100] Compiling SwiftSyntax SyntaxTreeViewMode.swift
[42/100] Compiling SwiftSyntax TokenDiagnostic.swift
[43/100] Compiling SwiftSyntax MemoryLayout.swift
[44/100] Compiling SwiftSyntax MissingNodeInitializers.swift
[45/100] Compiling SwiftSyntax RawSyntax.swift
[46/100] Compiling SwiftSyntax RawSyntaxLayoutView.swift
[47/100] Compiling SwiftSyntax RawSyntaxNodeProtocol.swift
[48/100] Compiling SwiftSyntax RawSyntaxTokenView.swift
[49/100] Compiling SwiftSyntax SourceLength.swift
[50/100] Emitting module RecursiveSyncDispatch
[51/100] Compiling RecursiveSyncDispatch RecursiveSyncDispatch.swift
[52/100] Compiling SwiftSyntax RenamedNodesCompatibility.swift
[53/100] Compiling SwiftSyntax SyntaxAnyVisitor.swift
[54/100] Compiling SwiftSyntax SyntaxBaseNodes.swift
[55/100] Compiling SwiftSyntax SyntaxCollections.swift
[56/100] Compiling SwiftSyntax SyntaxEnum.swift
[57/100] Compiling SwiftSyntax SyntaxKind.swift
[58/100] Compiling SwiftSyntax SyntaxRewriter.swift
[59/100] Emitting module SwiftSyntax
[60/100] Compiling SwiftSyntax RawSyntaxNodesC.swift
[61/100] Compiling SwiftSyntax RawSyntaxNodesD.swift
[62/100] Compiling SwiftSyntax RawSyntaxNodesEF.swift
[63/100] Compiling SwiftSyntax RawSyntaxNodesGHI.swift
[64/100] Compiling SwiftSyntax RawSyntaxNodesJKLMN.swift
[65/100] Compiling SwiftSyntax RawSyntaxNodesOP.swift
[66/100] Compiling SwiftSyntax SyntaxTraits.swift
[67/100] Compiling SwiftSyntax SyntaxTransform.swift
[68/100] Compiling SwiftSyntax SyntaxVisitor.swift
[69/100] Compiling SwiftSyntax TokenKind.swift
[70/100] Compiling SwiftSyntax Tokens.swift
[71/100] Compiling SwiftSyntax TriviaPieces.swift
[72/100] Compiling SwiftSyntax RawSyntaxNodesAB.swift
[73/100] Compiling SwiftSyntax SourceLocation.swift
[74/100] Compiling SwiftSyntax SourcePresence.swift
[75/100] Compiling SwiftSyntax SwiftSyntaxCompatibility.swift
[76/100] Compiling SwiftSyntax Syntax.swift
[77/100] Compiling SwiftSyntax SyntaxArena.swift
[78/100] Compiling SwiftSyntax SyntaxChildren.swift
[79/100] Compiling SwiftSyntax SyntaxCollection.swift
[80/100] Compiling SwiftSyntax RawSyntaxNodesQRS.swift
[81/100] Compiling SwiftSyntax RawSyntaxNodesTUVWXYZ.swift
[82/100] Compiling SwiftSyntax RawSyntaxValidation.swift
[83/100] Compiling SwiftSyntax SyntaxNodesAB.swift
[84/100] Compiling SwiftSyntax SyntaxNodesC.swift
[85/100] Compiling SwiftSyntax SyntaxNodesD.swift
[86/100] Compiling SwiftSyntax TokenSequence.swift
[87/100] Compiling SwiftSyntax TokenSyntax.swift
[88/100] Compiling SwiftSyntax Trivia.swift
[89/100] Compiling SwiftSyntax Utils.swift
[90/100] Compiling SwiftSyntax ChildNameForKeyPath.swift
[91/100] Compiling SwiftSyntax Keyword.swift
[92/100] Compiling SwiftSyntax RenamedChildrenCompatibility.swift
[93/100] Compiling SwiftSyntax SyntaxNodesEF.swift
[94/100] Compiling SwiftSyntax SyntaxNodesGHI.swift
[95/100] Compiling SwiftSyntax SyntaxNodesJKLMN.swift
[96/100] Compiling SwiftSyntax SyntaxNodesOP.swift
[97/100] Compiling SwiftSyntax SyntaxNodesQRS.swift
[98/100] Compiling SwiftSyntax SyntaxNodesTUVWXYZ.swift
[99/152] Compiling SwiftDiagnostics Message.swift
[100/152] Compiling SwiftDiagnostics Note.swift
[101/152] Compiling SwiftBasicFormat Trivia+FormatExtensions.swift
[102/152] Compiling SwiftBasicFormat SyntaxProtocol+Formatted.swift
[103/152] Compiling SwiftDiagnostics GroupedDiagnostics.swift
[104/152] Emitting module SwiftDiagnostics
[105/152] Compiling SwiftDiagnostics Convenience.swift
[106/152] Compiling SwiftDiagnostics Diagnostic.swift
[107/152] Compiling SwiftDiagnostics DiagnosticsFormatter.swift
[108/152] Compiling SwiftDiagnostics FixIt.swift
[109/152] Emitting module SwiftBasicFormat
[110/152] Compiling SwiftBasicFormat Syntax+Extensions.swift
[111/152] Compiling SwiftBasicFormat BasicFormat.swift
[112/152] Compiling SwiftParser Lexeme.swift
[113/152] Compiling SwiftParser LexemeSequence.swift
[114/152] Compiling SwiftParser Lexer.swift
[115/152] Compiling SwiftParser RegexLiteralLexer.swift
[116/156] Compiling SwiftParser UnicodeScalarExtensions.swift
[117/156] Compiling SwiftParser Lookahead.swift
[118/156] Compiling SwiftParser LoopProgressCondition.swift
[119/156] Compiling SwiftParser Modifiers.swift
[120/156] Compiling SwiftParser Statements.swift
[121/156] Compiling SwiftParser StringLiteralRepresentedLiteralValue.swift
[122/156] Compiling SwiftParser StringLiterals.swift
[123/156] Compiling SwiftParser SwiftParserCompatibility.swift
[124/156] Compiling SwiftParser Names.swift
[125/156] Compiling SwiftParser Nominals.swift
[126/156] Compiling SwiftParser Parameters.swift
[127/156] Compiling SwiftParser ParseSourceFile.swift
[128/156] Compiling SwiftParser SyntaxUtils.swift
[129/156] Compiling SwiftParser TokenConsumer.swift
[130/156] Compiling SwiftParser TokenPrecedence.swift
[131/156] Compiling SwiftParser TokenSpec.swift
[132/156] Compiling SwiftParser Parser.swift
[133/156] Compiling SwiftParser Patterns.swift
[134/156] Compiling SwiftParser Recovery.swift
[135/156] Compiling SwiftParser Specifiers.swift
[136/156] Compiling SwiftParser TokenSpecSet.swift
[137/156] Compiling SwiftParser TopLevel.swift
[138/156] Compiling SwiftParser TriviaParser.swift
[139/156] Compiling SwiftParser Types.swift
[140/156] Compiling SwiftParser Attributes.swift
[141/156] Compiling SwiftParser Availability.swift
[142/156] Compiling SwiftParser CharacterInfo.swift
[143/156] Compiling SwiftParser CollectionNodes+Parsable.swift
[144/156] Compiling SwiftParser Declarations.swift
[145/156] Emitting module SwiftParser
[146/156] Compiling SwiftParser IsLexerClassified.swift
[147/156] Compiling SwiftParser LayoutNodes+Parsable.swift
[148/156] Compiling SwiftParser Parser+TokenSpecSet.swift
[149/156] Compiling SwiftParser TokenSpecStaticMembers.swift
[150/156] Compiling SwiftParser Directives.swift
[151/156] Compiling SwiftParser ExperimentalFeatures.swift
[152/156] Compiling SwiftParser Expressions.swift
[153/156] Compiling SwiftParser IncrementalParseTransition.swift
[154/156] Compiling SwiftParser Cursor.swift
[155/179] Compiling SwiftParserDiagnostics SyntaxKindNameForDiagnostics.swift
[156/180] Compiling SwiftOperators OperatorTable+Defaults.swift
[157/180] Compiling SwiftOperators OperatorTable.swift
[158/180] Compiling SwiftOperators PrecedenceGraph.swift
[159/180] Compiling SwiftOperators PrecedenceGroup.swift
[160/181] Compiling SwiftParserDiagnostics TokenNameForDiagnostics.swift
[161/181] Compiling SwiftOperators SyntaxSynthesis.swift
[162/181] Compiling SwiftOperators OperatorTable+Semantics.swift
[163/181] Compiling SwiftOperators OperatorError.swift
[164/181] Compiling SwiftOperators OperatorError+Diagnostics.swift
[165/181] Compiling SwiftOperators Operator.swift
[166/181] Emitting module SwiftOperators
[167/181] Compiling SwiftOperators OperatorTable+Folding.swift
[168/181] Compiling SwiftParserDiagnostics ParserDiagnosticMessages.swift
[169/181] Compiling SwiftParserDiagnostics Utils.swift
[170/181] Compiling SwiftParserDiagnostics PresenceUtils.swift
[171/181] Compiling SwiftParserDiagnostics ChildNameForDiagnostics.swift
[172/181] Compiling SwiftParserDiagnostics SyntaxExtensions.swift
[173/181] Compiling SwiftParserDiagnostics MissingNodesError.swift
[174/181] Compiling SwiftParserDiagnostics MissingTokenError.swift
[175/181] Compiling SwiftParserDiagnostics DiagnosticExtensions.swift
[176/181] Compiling SwiftParserDiagnostics LexerDiagnosticMessages.swift
[177/181] Emitting module SwiftParserDiagnostics
[178/181] Compiling SwiftParserDiagnostics MultiLineStringLiteralDiagnosticsGenerator.swift
[179/181] Compiling SwiftParserDiagnostics ParseDiagnosticsGenerator.swift
[180/195] Compiling SwiftSyntaxBuilder RenamedChildrenBuilderCompatibility.swift
[181/195] Compiling SwiftSyntaxBuilder WithTrailingCommaSyntax+EnsuringTrailingComma.swift
[182/195] Compiling SwiftSyntaxBuilder BuildableNodes.swift
[183/195] Compiling SwiftSyntaxBuilder ValidatingSyntaxNodes.swift
[184/195] Compiling SwiftSyntaxBuilder SyntaxNodeWithBody.swift
[185/195] Compiling SwiftSyntaxBuilder SyntaxParsable+ExpressibleByStringInterpolation.swift
[186/195] Compiling SwiftSyntaxBuilder SwiftSyntaxBuilderCompatibility.swift
[187/195] Compiling SwiftSyntaxBuilder Syntax+StringInterpolation.swift
[188/195] Compiling SwiftSyntaxBuilder Indenter.swift
[189/195] Compiling SwiftSyntaxBuilder ResultBuilderExtensions.swift
[190/195] Compiling SwiftSyntaxBuilder ConvenienceInitializers.swift
[191/195] Compiling SwiftSyntaxBuilder DeclSyntaxParseable.swift
[192/195] Emitting module SwiftSyntaxBuilder
[193/195] Compiling SwiftSyntaxBuilder ResultBuilders.swift
[194/196] Compiling SwiftSyntaxBuilder SyntaxExpressibleByStringInterpolationConformances.swift
[195/210] Compiling SwiftSyntaxMacros MemberAttributeMacro.swift
[196/210] Compiling SwiftSyntaxMacros MemberMacro.swift
[197/210] Compiling SwiftSyntaxMacros FreestandingMacro.swift
[198/210] Compiling SwiftSyntaxMacros Macro.swift
[199/211] Compiling SwiftSyntaxMacros ExpressionMacro.swift
[200/211] Compiling SwiftSyntaxMacros ExtensionMacro.swift
[201/211] Compiling SwiftSyntaxMacros CodeItemMacro.swift
[202/211] Compiling SwiftSyntaxMacros DeclarationMacro.swift
[203/211] Compiling SwiftSyntaxMacros Macro+Format.swift
[204/211] Compiling SwiftSyntaxMacros AccessorMacro.swift
[205/211] Compiling SwiftSyntaxMacros AttachedMacro.swift
[206/211] Compiling SwiftSyntaxMacros AbstractSourceLocation.swift
[207/211] Compiling SwiftSyntaxMacros MacroExpansionContext.swift
[208/211] Emitting module SwiftSyntaxMacros
[209/211] Compiling SwiftSyntaxMacros PeerMacro.swift
[210/219] Compiling SwiftSyntaxMacroExpansion MacroExpansionDiagnosticMessages.swift
[211/219] Compiling SwiftSyntaxMacroExpansion MacroExpansion.swift
[212/219] Compiling SwiftSyntaxMacroExpansion MacroReplacement.swift
[213/219] Compiling SwiftSyntaxMacroExpansion FunctionParameterUtils.swift
[214/219] Emitting module SwiftSyntaxMacroExpansion
[215/219] Compiling SwiftSyntaxMacroExpansion BasicMacroExpansionContext.swift
[216/219] Compiling SwiftSyntaxMacroExpansion MacroSystem.swift
[217/219] Compiling SwiftSyntaxMacroExpansion IndentationUtils.swift
[218/226] Compiling SwiftCompilerPluginMessageHandling Macros.swift
[219/226] Compiling SwiftCompilerPluginMessageHandling CompilerPluginMessageHandler.swift
[220/226] Compiling SwiftCompilerPluginMessageHandling PluginMacroExpansionContext.swift
[221/226] Compiling SwiftCompilerPluginMessageHandling Diagnostics.swift
[222/226] Compiling SwiftCompilerPluginMessageHandling PluginMessageCompatibility.swift
[223/226] Compiling SwiftCompilerPluginMessageHandling PluginMessages.swift
[224/226] Emitting module SwiftCompilerPluginMessageHandling
[225/228] Emitting module SwiftCompilerPlugin
[226/228] Compiling SwiftCompilerPlugin CompilerPlugin.swift
[227/232] Compiling SafeGlobalMacros  Errors.swift
[228/232] Compiling SafeGlobalMacros SafeGlobalMacro.swift
[229/232] Emitting module SafeGlobalMacros
[230/232] Compiling SafeGlobalMacros SimpleDiagnosticMessage.swift
[230/232] Write Objects.LinkFileList
[231/232] Linking SafeGlobalMacros
[233/236] Compiling SafeGlobal SafeGlobal.swift
[234/236] Compiling SafeGlobal SafeGlobalMacro.swift
[235/236] Compiling SafeGlobal NSLock+Linux.swift
[236/236] Emitting module SafeGlobal
[237/240] Compiling SemiSingleton SemiSingletonConfig.swift
macro expansion @SafeGlobal:1:9: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/SemiSingleton/SemiSingletonConfig.swift:49:76: note: expanded code originates here
47 | #warning("Reevaluate whether nonisolated(unsafe) is still necessary.")
48 | #endif
49 | 	@SafeGlobal nonisolated(unsafe) public static var oslog: OSLog? = .default
   +--- macro expansion @SafeGlobal ------------------------------------
   |1 | private nonisolated (unsafe) static let _oslog: SafeGlobal<OSLog?> = SafeGlobal(wrappedValue: .default)
   |  |         `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
   +--------------------------------------------------------------------
50 | #endif
51 | 	@SafeGlobal public static var logger: Logging.Logger? = {
[238/240] Compiling SemiSingleton LinuxStrongToWeakMapTable.swift
[239/240] Compiling SemiSingleton SemiSingletonStore.swift
[240/240] Emitting module SemiSingleton
macro expansion @SafeGlobal:1:9: warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
`- /Users/admin/builder/spi-builder-workspace/Sources/SemiSingleton/SemiSingletonConfig.swift:49:76: note: expanded code originates here
47 | #warning("Reevaluate whether nonisolated(unsafe) is still necessary.")
48 | #endif
49 | 	@SafeGlobal nonisolated(unsafe) public static var oslog: OSLog? = .default
   +--- macro expansion @SafeGlobal ------------------------------------
   |1 | private nonisolated (unsafe) static let _oslog: SafeGlobal<OSLog?> = SafeGlobal(wrappedValue: .default)
   |  |         `- warning: extraneous whitespace between attribute name and '('; this is an error in the Swift 6 language mode
   +--------------------------------------------------------------------
50 | #endif
51 | 	@SafeGlobal public static var logger: Logging.Logger? = {
Build complete! (63.47s)
Fetching https://github.com/apple/swift-log.git
Fetching https://github.com/Frizlab/RecursiveSyncDispatch.git
Fetching https://github.com/apple/swift-syntax.git
Fetching https://github.com/Frizlab/SafeGlobal.git
[1/174] Fetching recursivesyncdispatch
[175/327] Fetching recursivesyncdispatch, safeglobal
[328/3688] Fetching recursivesyncdispatch, safeglobal, swift-log
[3689/64625] Fetching recursivesyncdispatch, safeglobal, swift-log, swift-syntax
Fetched https://github.com/apple/swift-syntax.git from cache (3.19s)
Fetched https://github.com/Frizlab/RecursiveSyncDispatch.git from cache (3.19s)
Fetched https://github.com/apple/swift-log.git from cache (3.19s)
Fetched https://github.com/Frizlab/SafeGlobal.git from cache (3.19s)
Computing version for https://github.com/Frizlab/SafeGlobal.git
Computed https://github.com/Frizlab/SafeGlobal.git at 0.3.0 (0.53s)
Computing version for https://github.com/Frizlab/RecursiveSyncDispatch.git
Computed https://github.com/Frizlab/RecursiveSyncDispatch.git at 1.0.1 (0.96s)
Computing version for https://github.com/apple/swift-log.git
Computed https://github.com/apple/swift-log.git at 1.5.4 (0.64s)
Computing version for https://github.com/apple/swift-syntax.git
Computed https://github.com/apple/swift-syntax.git at 510.0.0 (0.80s)
Creating working copy for https://github.com/apple/swift-log.git
Working copy of https://github.com/apple/swift-log.git resolved at 1.5.4
Creating working copy for https://github.com/apple/swift-syntax.git
Working copy of https://github.com/apple/swift-syntax.git resolved at 510.0.0
Creating working copy for https://github.com/Frizlab/RecursiveSyncDispatch.git
Working copy of https://github.com/Frizlab/RecursiveSyncDispatch.git resolved at 1.0.1
Creating working copy for https://github.com/Frizlab/SafeGlobal.git
Working copy of https://github.com/Frizlab/SafeGlobal.git resolved at 0.3.0
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-log",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-log.git"
    },
    {
      "identity" : "recursivesyncdispatch",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Frizlab/RecursiveSyncDispatch.git"
    },
    {
      "identity" : "safeglobal",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.3.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/Frizlab/SafeGlobal.git"
    }
  ],
  "manifest_display_name" : "SemiSingleton",
  "name" : "SemiSingleton",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "macos",
      "version" : "10.15"
    },
    {
      "name" : "ios",
      "version" : "13.0"
    },
    {
      "name" : "tvos",
      "version" : "13.0"
    },
    {
      "name" : "watchos",
      "version" : "6.0"
    }
  ],
  "products" : [
    {
      "name" : "SemiSingleton",
      "targets" : [
        "SemiSingleton"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "SemiSingletonTests",
      "module_type" : "SwiftTarget",
      "name" : "SemiSingletonTests",
      "path" : "Tests/SemiSingletonTests",
      "sources" : [
        "Helpers/ActorSemiSingleton.swift",
        "Helpers/ReentrantSemiSingletonInit.swift",
        "Helpers/SimpleSemiSingleton.swift",
        "SemiSingletonTests.swift"
      ],
      "target_dependencies" : [
        "SemiSingleton"
      ],
      "type" : "test"
    },
    {
      "c99name" : "SemiSingleton",
      "module_type" : "SwiftTarget",
      "name" : "SemiSingleton",
      "path" : "Sources/SemiSingleton",
      "product_dependencies" : [
        "Logging",
        "RecursiveSyncDispatch",
        "SafeGlobal"
      ],
      "product_memberships" : [
        "SemiSingleton"
      ],
      "sources" : [
        "LinuxStrongToWeakMapTable.swift",
        "SemiSingletonConfig.swift",
        "SemiSingletonStore.swift"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "5.10"
}
Done.
This is a staging environment. For live and up-to-date package information, visit swiftpackageindex.com.