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 ObservableObject to @Observable Converter, reference main (55b0bf), with Swift 6.1 for Linux on 27 Apr 2025 20:06:19 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-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

Build Log

========================================
RunAll
========================================
Builder version: 4.61.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/Lickability/ObservableConverter.git
Reference: main
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/Lickability/ObservableConverter
 * branch            main       -> FETCH_HEAD
 * [new branch]      main       -> origin/main
HEAD is now at 55b0bf7 Update README.md
Cloned https://github.com/Lickability/ObservableConverter.git
Revision (git rev-parse @):
55b0bf77e931d8779fab0625e3565b04379833c5
SUCCESS checkout https://github.com/Lickability/ObservableConverter.git at main
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.1
Building package at path:  $PWD
https://github.com/Lickability/ObservableConverter.git
https://github.com/Lickability/ObservableConverter.git
WARNING: environment variable SUPPRESS_SWIFT_6_FLAGS is not set
{
  "dependencies" : [
    {
      "identity" : "swift-syntax",
      "requirement" : {
        "exact" : [
          "509.0.0-swift-DEVELOPMENT-SNAPSHOT-2023-08-15-a"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-syntax.git"
    },
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser"
    }
  ],
  "manifest_display_name" : "ObservableObject to @Observable Converter",
  "name" : "ObservableObject to @Observable Converter",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "ObservableConverter",
      "targets" : [
        "ObservableConverter"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "Convert to @Observable",
      "targets" : [
        "Convert Target to Use @Observable"
      ],
      "type" : {
        "plugin" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ObservableConverterTests",
      "module_type" : "SwiftTarget",
      "name" : "ObservableConverterTests",
      "path" : "Tests/ObservableConverterTests",
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Tests/ObservableConverterTests/Resources",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "ObservableConverterTests.swift"
      ],
      "target_dependencies" : [
        "ObservableConverter"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ObservableConverter",
      "module_type" : "SwiftTarget",
      "name" : "ObservableConverter",
      "path" : "Sources/ObservableConverter",
      "product_dependencies" : [
        "SwiftSyntax",
        "SwiftParser",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "ObservableConverter",
        "Convert to @Observable"
      ],
      "sources" : [
        "ObservableConverterCommand.swift",
        "ObservableConverterRewriter.swift",
        "ObservableObjectRecorder.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "Convert_Target_to_Use__Observable",
      "module_type" : "PluginTarget",
      "name" : "Convert Target to Use @Observable",
      "path" : "Plugins",
      "plugin_capability" : {
        "intent" : {
          "description" : "Converts usage of ObservableObjects to the new @Observable, updating associated property wrappers and view modifiers as well.",
          "type" : "custom",
          "verb" : "convert to observable"
        },
        "permissions" : [
          {
            "network_scope" : {
              "none" : {
              }
            },
            "reason" : "To convert usage of ObservableObjects to the new @Observable, updating associated property wrappers and view modifiers as well.",
            "type" : "writeToPackageDirectory"
          }
        ],
        "type" : "command"
      },
      "product_memberships" : [
        "Convert to @Observable"
      ],
      "sources" : [
        "ObservableConverter/ObservableConverterPlugin.swift"
      ],
      "target_dependencies" : [
        "ObservableConverter"
      ],
      "type" : "plugin"
    }
  ],
  "tools_version" : "5.9"
}
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-0":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.1-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.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Fetching https://github.com/apple/swift-syntax.git
Fetching https://github.com/apple/swift-argument-parser
[1/14950] Fetching swift-argument-parser
[14951/85183] Fetching swift-argument-parser, swift-syntax
Fetched https://github.com/apple/swift-argument-parser from cache (3.64s)
Fetched https://github.com/apple/swift-syntax.git from cache (3.68s)
Computing version for https://github.com/apple/swift-argument-parser
Computed https://github.com/apple/swift-argument-parser at 1.5.0 (4.12s)
Computing version for https://github.com/apple/swift-syntax.git
Computed https://github.com/apple/swift-syntax.git at 509.0.0-swift-DEVELOPMENT-SNAPSHOT-2023-08-15-a (1.94s)
Creating working copy for https://github.com/apple/swift-syntax.git
Working copy of https://github.com/apple/swift-syntax.git resolved at 509.0.0-swift-DEVELOPMENT-SNAPSHOT-2023-08-15-a
Creating working copy for https://github.com/apple/swift-argument-parser
Working copy of https://github.com/apple/swift-argument-parser resolved at 1.5.0
[1/1] Compiling plugin Convert Target to Use @Observable
[2/2] Compiling plugin GenerateManual
Building for debugging...
[2/27] Write sources
[12/27] Write swift-version-24593BA9C3E375BF.txt
[14/121] Compiling SwiftSyntax SyntaxCollections.swift
[15/121] Compiling SwiftSyntax SyntaxEnum.swift
[16/121] Compiling SwiftSyntax SyntaxKind.swift
[17/121] Compiling SwiftSyntax SyntaxRewriter.swift
[18/121] Compiling SwiftSyntax SyntaxTraits.swift
[19/121] Compiling SwiftSyntax SyntaxTransform.swift
[20/121] Emitting module ArgumentParserToolInfo
[21/121] Compiling ArgumentParserToolInfo ToolInfo.swift
[22/128] Compiling SwiftSyntax MissingNodeInitializers.swift
[23/128] Compiling SwiftSyntax RawSyntax.swift
[24/128] Compiling SwiftSyntax RawSyntaxLayoutView.swift
[25/128] Compiling SwiftSyntax RawSyntaxNodeProtocol.swift
[26/128] Compiling SwiftSyntax RawSyntaxTokenView.swift
[27/128] Compiling SwiftSyntax SourceLength.swift
[28/128] Compiling SwiftSyntax SourceLocation.swift
[29/128] Compiling SwiftSyntax AbsolutePosition.swift
[30/128] Compiling SwiftSyntax Assert.swift
[31/128] Compiling SwiftSyntax BumpPtrAllocator.swift
[32/128] Compiling SwiftSyntax CommonAncestor.swift
[33/128] Compiling SwiftSyntax Convenience.swift
[34/128] Compiling SwiftSyntax MemoryLayout.swift
[36/134] Compiling ArgumentParserToolInfo ToolInfo.swift
[37/134] Emitting module ArgumentParserToolInfo
[39/135] Wrapping AST for ArgumentParserToolInfo for debugging
[42/211] Compiling ArgumentParser CompletionKind.swift
[43/211] Compiling ArgumentParser Errors.swift
[44/211] Compiling ArgumentParser Flag.swift
[45/211] Compiling ArgumentParser NameSpecification.swift
[46/211] Compiling ArgumentParser Option.swift
[47/211] Compiling ArgumentParser OptionGroup.swift
[48/211] Compiling ArgumentParser AsyncParsableCommand.swift
[49/211] Compiling ArgumentParser ArgumentVisibility.swift
[54/216] Emitting module ArgumentParser
[55/216] Compiling ArgumentParser BashCompletionsGenerator.swift
[56/216] Compiling ArgumentParser CompletionsGenerator.swift
[57/216] Compiling ArgumentParser FishCompletionsGenerator.swift
[58/216] Compiling ArgumentParser ZshCompletionsGenerator.swift
[59/216] Compiling ArgumentParser Argument.swift
[60/216] Compiling ArgumentParser ArgumentHelp.swift
[61/216] Compiling ArgumentParser CollectionExtensions.swift
[62/216] Compiling ArgumentParser Platform.swift
[63/216] Compiling ArgumentParser SequenceExtensions.swift
[64/216] Compiling ArgumentParser StringExtensions.swift
[65/216] Compiling ArgumentParser Tree.swift
[69/216] Compiling ArgumentParser CommandConfiguration.swift
[70/216] Compiling ArgumentParser CommandGroup.swift
[71/216] Compiling ArgumentParser EnumerableFlag.swift
[84/221] Emitting module ArgumentParser
[90/221] Compiling ArgumentParser ExpressibleByArgument.swift
[91/221] Compiling ArgumentParser ParsableArguments.swift
[92/221] Compiling ArgumentParser ParsableArgumentsValidation.swift
[93/221] Compiling ArgumentParser ParsableCommand.swift
[94/221] Compiling ArgumentParser ArgumentDecoder.swift
[95/221] Compiling ArgumentParser ArgumentDefinition.swift
[96/221] Compiling ArgumentParser ArgumentSet.swift
[97/221] Compiling ArgumentParser CommandParser.swift
[98/221] Compiling ArgumentParser InputKey.swift
[99/221] Compiling ArgumentParser InputOrigin.swift
[110/221] Compiling ArgumentParser CollectionExtensions.swift
[111/221] Compiling ArgumentParser Platform.swift
[112/221] Compiling ArgumentParser SequenceExtensions.swift
[113/221] Compiling ArgumentParser StringExtensions.swift
[114/221] Compiling ArgumentParser Tree.swift
[115/221] Compiling ArgumentParser Name.swift
[116/221] Compiling ArgumentParser Parsed.swift
[117/221] Compiling ArgumentParser ParsedValues.swift
[118/221] Compiling ArgumentParser ParserError.swift
[119/221] Compiling ArgumentParser SplitArguments.swift
[120/221] Compiling ArgumentParser DumpHelpGenerator.swift
[121/221] Compiling ArgumentParser HelpCommand.swift
[122/221] Compiling ArgumentParser HelpGenerator.swift
[123/221] Compiling ArgumentParser MessageInfo.swift
[124/221] Compiling ArgumentParser UsageGenerator.swift
[136/223] Wrapping AST for ArgumentParser for debugging
[138/223] Emitting module SwiftSyntax
[138/223] Wrapping AST for ArgumentParser for debugging
[140/223] Emitting module SwiftSyntax
[145/223] Compiling SwiftSyntax RawSyntaxNodes.swift
[146/223] Compiling SwiftSyntax RawSyntaxValidation.swift
[177/223] Compiling SwiftSyntax SyntaxDeclNodes.swift
[178/223] Compiling SwiftSyntax SyntaxExprNodes.swift
[179/223] Compiling SwiftSyntax SyntaxNodes.swift
[180/223] Compiling SwiftSyntax SyntaxPatternNodes.swift
[181/223] Compiling SwiftSyntax SyntaxStmtNodes.swift
[182/223] Compiling SwiftSyntax SyntaxTypeNodes.swift
[195/224] Wrapping AST for SwiftSyntax for debugging
[197/262] Compiling SwiftParser LoopProgressCondition.swift
[198/262] Compiling SwiftParser StringLiteralRepresentedLiteralValue.swift
[199/262] Compiling SwiftParser StringLiterals.swift
[200/262] Compiling SwiftParser SwiftParserCompatibility.swift
[201/262] Compiling SwiftParser SyntaxUtils.swift
[202/262] Compiling SwiftParser TokenConsumer.swift
[203/262] Compiling SwiftParser Nominals.swift
[204/262] Compiling SwiftParser Parameters.swift
[205/262] Compiling SwiftParser ParseSourceFile.swift
[206/262] Compiling SwiftParser Lexer.swift
[207/262] Compiling SwiftParser RegexLiteralLexer.swift
[208/262] Compiling SwiftParser UnicodeScalarExtensions.swift
[209/262] Compiling SwiftParser Lookahead.swift
[210/262] Compiling SwiftParser Attributes.swift
[211/262] Compiling SwiftParser Availability.swift
[212/262] Compiling SwiftParser CharacterInfo.swift
[213/262] Compiling SwiftParser CollectionNodes+Parsable.swift
[214/262] Compiling SwiftParser Declarations.swift
[215/262] Compiling SwiftParser Directives.swift
[217/263] Emitting module SwiftParser
[217/268] Wrapping AST for SwiftSyntax for debugging
[219/306] Compiling SwiftParser TokenPrecedence.swift
[220/306] Compiling SwiftParser TokenSpec.swift
[221/306] Compiling SwiftParser TokenSpecSet.swift
[222/306] Compiling SwiftParser TopLevel.swift
[223/306] Compiling SwiftParser TriviaParser.swift
[224/306] Compiling SwiftParser Attributes.swift
[225/306] Compiling SwiftParser Availability.swift
[226/306] Compiling SwiftParser CharacterInfo.swift
[227/306] Compiling SwiftParser CollectionNodes+Parsable.swift
[228/306] Compiling SwiftParser Declarations.swift
[229/306] Compiling SwiftParser Directives.swift
[230/306] Compiling SwiftParser ExperimentalFeatures.swift
[231/306] Compiling SwiftParser Expressions.swift
[232/306] Compiling SwiftParser IncrementalParseTransition.swift
[233/306] Compiling SwiftParser Cursor.swift
[234/306] Compiling SwiftParser Lexeme.swift
[235/306] Compiling SwiftParser Modifiers.swift
[236/306] Compiling SwiftParser Names.swift
[237/306] Compiling SwiftParser Nominals.swift
[238/306] Compiling SwiftParser Parameters.swift
[239/306] Compiling SwiftParser ParseSourceFile.swift
[240/311] Compiling SwiftParser StringLiteralRepresentedLiteralValue.swift
[241/311] Compiling SwiftParser StringLiterals.swift
[242/311] Compiling SwiftParser SwiftParserCompatibility.swift
[243/311] Compiling SwiftParser SyntaxUtils.swift
[244/311] Compiling SwiftParser TokenConsumer.swift
[250/311] Compiling SwiftParser Lexer.swift
[251/311] Compiling SwiftParser RegexLiteralLexer.swift
[252/311] Compiling SwiftParser UnicodeScalarExtensions.swift
[253/311] Compiling SwiftParser Lookahead.swift
[254/311] Compiling SwiftParser LoopProgressCondition.swift
[255/311] Compiling SwiftParser Parser.swift
[256/311] Compiling SwiftParser Patterns.swift
[257/311] Compiling SwiftParser Recovery.swift
[258/311] Compiling SwiftParser Specifiers.swift
[259/311] Compiling SwiftParser Statements.swift
[276/311] Compiling SwiftParser LexemeSequence.swift
[281/311] Compiling SwiftParser Types.swift
[282/311] Compiling SwiftParser IsLexerClassified.swift
[283/311] Compiling SwiftParser LayoutNodes+Parsable.swift
[284/311] Compiling SwiftParser Parser+TokenSpecSet.swift
[285/311] Compiling SwiftParser TokenSpecStaticMembers.swift
[286/312] Wrapping AST for SwiftParser for debugging
[288/316] Compiling ObservableConverter ObservableConverterCommand.swift
[289/316] Emitting module ObservableConverter
[290/316] Compiling ObservableConverter ObservableObjectRecorder.swift
[291/316] Compiling ObservableConverter ObservableConverterRewriter.swift
[299/317] Emitting module SwiftParser
[305/317] Wrapping AST for ObservableConverter for debugging
[306/317] Write Objects.LinkFileList
[313/318] Wrapping AST for SwiftParser for debugging
[315/322] Compiling ObservableConverter ObservableObjectRecorder.swift
[316/322] Compiling ObservableConverter ObservableConverterCommand.swift
[317/322] Emitting module ObservableConverter
[318/322] Compiling ObservableConverter ObservableConverterRewriter.swift
[319/323] Linking ObservableConverter
[320/323] Wrapping AST for ObservableConverter for debugging
[321/323] Write Objects.LinkFileList
[322/323] Linking ObservableConverter-tool
Build complete! (92.28s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "swift-syntax",
      "requirement" : {
        "exact" : [
          "509.0.0-swift-DEVELOPMENT-SNAPSHOT-2023-08-15-a"
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-syntax.git"
    },
    {
      "identity" : "swift-argument-parser",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.2.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/apple/swift-argument-parser"
    }
  ],
  "manifest_display_name" : "ObservableObject to @Observable Converter",
  "name" : "ObservableObject to @Observable Converter",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
    {
      "name" : "ios",
      "version" : "14.0"
    },
    {
      "name" : "macos",
      "version" : "12.0"
    }
  ],
  "products" : [
    {
      "name" : "ObservableConverter",
      "targets" : [
        "ObservableConverter"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "Convert to @Observable",
      "targets" : [
        "Convert Target to Use @Observable"
      ],
      "type" : {
        "plugin" : null
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "ObservableConverterTests",
      "module_type" : "SwiftTarget",
      "name" : "ObservableConverterTests",
      "path" : "Tests/ObservableConverterTests",
      "resources" : [
        {
          "path" : "/host/spi-builder-workspace/Tests/ObservableConverterTests/Resources",
          "rule" : {
            "copy" : {
            }
          }
        }
      ],
      "sources" : [
        "ObservableConverterTests.swift"
      ],
      "target_dependencies" : [
        "ObservableConverter"
      ],
      "type" : "test"
    },
    {
      "c99name" : "ObservableConverter",
      "module_type" : "SwiftTarget",
      "name" : "ObservableConverter",
      "path" : "Sources/ObservableConverter",
      "product_dependencies" : [
        "SwiftSyntax",
        "SwiftParser",
        "ArgumentParser"
      ],
      "product_memberships" : [
        "ObservableConverter",
        "Convert to @Observable"
      ],
      "sources" : [
        "ObservableConverterCommand.swift",
        "ObservableConverterRewriter.swift",
        "ObservableObjectRecorder.swift"
      ],
      "type" : "executable"
    },
    {
      "c99name" : "Convert_Target_to_Use__Observable",
      "module_type" : "PluginTarget",
      "name" : "Convert Target to Use @Observable",
      "path" : "Plugins",
      "plugin_capability" : {
        "intent" : {
          "description" : "Converts usage of ObservableObjects to the new @Observable, updating associated property wrappers and view modifiers as well.",
          "type" : "custom",
          "verb" : "convert to observable"
        },
        "permissions" : [
          {
            "network_scope" : {
              "none" : {
              }
            },
            "reason" : "To convert usage of ObservableObjects to the new @Observable, updating associated property wrappers and view modifiers as well.",
            "type" : "writeToPackageDirectory"
          }
        ],
        "type" : "command"
      },
      "product_memberships" : [
        "Convert to @Observable"
      ],
      "sources" : [
        "ObservableConverter/ObservableConverterPlugin.swift"
      ],
      "target_dependencies" : [
        "ObservableConverter"
      ],
      "type" : "plugin"
    }
  ],
  "tools_version" : "5.9"
}
basic-6.1-latest: Pulling from finestructure/spi-images
Digest: sha256:3bdcac04179f4ed3e5b8e9dbd6e74bbf5ebc0f4fde48bbaad7d1e5c757e65bcb
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.1-latest
Done.