The Swift Package Index logo.Swift Package Index

Has it really been five years since Swift Package Index launched? Read our anniversary blog post!

Build Information

Successful build of Stringly, reference master (3a87de), with Swift 6.0 for Linux on 31 Oct 2025 10:39:07 UTC.

Swift 6 data race errors: 0

Build Command

bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1

Build Log

========================================
RunAll
========================================
Builder version: 4.68.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/yonaskolb/Stringly.git
Reference: master
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/yonaskolb/Stringly
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 3a87de9 test toml and yaml are equal
Cloned https://github.com/yonaskolb/Stringly.git
Revision (git rev-parse @):
3a87de99fb8638a36990b19a66cae02e93be4c6c
SUCCESS checkout https://github.com/yonaskolb/Stringly.git at master
========================================
Build
========================================
Selected platform:         linux
Swift version:             6.0
Building package at path:  $PWD
https://github.com/yonaskolb/Stringly.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4606859-1":/host -w "$PWD" -e JAVA_HOME="/root/.sdkman/candidates/java/current" -e SPI_BUILD="1" -e SPI_PROCESSING="1" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:046a2cda21bb64b2d09e6d52c84584e938ec1698de194871f3d7088597b2bb28
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Fetching https://github.com/jakeheis/SwiftCLI
Fetching https://github.com/yonaskolb/Codability
Fetching https://github.com/jpsim/Yams
Fetching https://github.com/onevcat/Rainbow
Fetching https://github.com/kylef/PathKit
Fetching https://github.com/dduan/TOMLDeserializer
[1/126] Fetching codability
[121/1465] Fetching codability, rainbow
[275/2268] Fetching codability, rainbow, tomldeserializer
[433/7342] Fetching codability, rainbow, tomldeserializer, swiftcli
[948/8780] Fetching codability, rainbow, tomldeserializer, swiftcli, pathkit
[6600/20035] Fetching codability, rainbow, tomldeserializer, swiftcli, pathkit, yams
Fetched https://github.com/onevcat/Rainbow from cache (0.38s)
Fetched https://github.com/dduan/TOMLDeserializer from cache (0.38s)
[7651/17893] Fetching codability, swiftcli, pathkit, yams
Fetched https://github.com/kylef/PathKit from cache (0.39s)
[6326/16455] Fetching codability, swiftcli, yams
Fetched https://github.com/yonaskolb/Codability from cache (0.45s)
Fetched https://github.com/jakeheis/SwiftCLI from cache (0.45s)
[1689/11255] Fetching yams
Fetched https://github.com/jpsim/Yams from cache (1.42s)
Computing version for https://github.com/yonaskolb/Codability
Computed https://github.com/yonaskolb/Codability at 0.2.1 (2.23s)
Computing version for https://github.com/jakeheis/SwiftCLI
Computed https://github.com/jakeheis/SwiftCLI at 6.0.3 (0.63s)
Computing version for https://github.com/kylef/PathKit
Computed https://github.com/kylef/PathKit at 1.0.1 (2.24s)
Fetching https://github.com/kylef/Spectre.git
[1/1021] Fetching spectre
Fetched https://github.com/kylef/Spectre.git from cache (0.26s)
Computing version for https://github.com/dduan/TOMLDeserializer
Computed https://github.com/dduan/TOMLDeserializer at 0.2.5 (0.73s)
Fetching https://github.com/dduan/NetTime
[1/411] Fetching nettime
Fetched https://github.com/dduan/NetTime from cache (0.32s)
Computing version for https://github.com/dduan/NetTime
Computed https://github.com/dduan/NetTime at 0.2.3 (0.59s)
Computing version for https://github.com/kylef/Spectre.git
Computed https://github.com/kylef/Spectre.git at 0.10.1 (0.66s)
Computing version for https://github.com/jpsim/Yams
Computed https://github.com/jpsim/Yams at 1.0.2 (0.71s)
Computing version for https://github.com/onevcat/Rainbow
Computed https://github.com/onevcat/Rainbow at 3.2.0 (1.03s)
Creating working copy for https://github.com/jpsim/Yams
Working copy of https://github.com/jpsim/Yams resolved at 1.0.2
Creating working copy for https://github.com/dduan/NetTime
Working copy of https://github.com/dduan/NetTime resolved at 0.2.3
Creating working copy for https://github.com/onevcat/Rainbow
Working copy of https://github.com/onevcat/Rainbow resolved at 3.2.0
Creating working copy for https://github.com/yonaskolb/Codability
Working copy of https://github.com/yonaskolb/Codability resolved at 0.2.1
Creating working copy for https://github.com/kylef/PathKit
Working copy of https://github.com/kylef/PathKit resolved at 1.0.1
Creating working copy for https://github.com/dduan/TOMLDeserializer
Working copy of https://github.com/dduan/TOMLDeserializer resolved at 0.2.5
Creating working copy for https://github.com/jakeheis/SwiftCLI
Working copy of https://github.com/jakeheis/SwiftCLI resolved at 6.0.3
Creating working copy for https://github.com/kylef/Spectre.git
Working copy of https://github.com/kylef/Spectre.git resolved at 0.10.1
Building for debugging...
[0/29] Write sources
[10/29] Compiling writer.c
[11/29] Compiling reader.c
[12/29] Compiling parser.c
[13/29] Compiling api.c
[14/29] Compiling emitter.c
[15/29] Compiling scanner.c
[16/29] Write swift-version-24593BA9C3E375BF.txt
[18/93] Emitting module NetTime
[19/93] Emitting module SwiftCLI
[20/95] Compiling Rainbow Style.swift
[21/96] Compiling SwiftCLI Error.swift
[22/96] Compiling Yams Node.Scalar.swift
[23/96] Compiling Yams Node.Sequence.swift
[24/96] Compiling NetTime LocalDateTime.swift
[25/96] Compiling SwiftCLI Command.swift
[26/96] Compiling SwiftCLI Compatibility.swift
[27/96] Compiling SwiftCLI CompletionGenerator.swift
[29/96] Compiling NetTime DateTimeRepresentable.swift
[30/96] Compiling NetTime LocalDate.swift
[31/96] Compiling SwiftCLI ValueBox.swift
[32/96] Compiling SwiftCLI VersionCommand.swift
[33/96] Compiling Rainbow String+Rainbow.swift
[34/96] Compiling NetTime TimeOffset.swift
[35/96] Compiling NetTime constants.swift
[36/96] Compiling Rainbow StringGenerator.swift
[37/96] Compiling Rainbow XcodeColorsSupport.swift
[38/96] Compiling NetTime LocalTime.swift
[39/96] Compiling NetTime DateTime.swift
[40/97] Compiling Codability GenericDecodingContainer.swift
[41/97] Emitting module Rainbow
[44/97] Compiling Codability KeyedEncodingContainer+Any.swift
[45/97] Compiling Yams String+Yams.swift
[46/97] Compiling Yams Tag.swift
[47/99] Compiling Rainbow Rainbow.swift
[52/100] Compiling Codability KeyedDecodingContainer+Any.swift
[53/100] Compiling Codability RawCodingKey.swift
[54/100] Compiling Yams Representer.swift
[55/100] Compiling Yams Resolver.swift
[58/100] Emitting module Yams
[61/100] Compiling SwiftCLI Term.swift
[62/100] Compiling SwiftCLI Validation.swift
[64/100] Emitting module Codability
[65/100] Compiling Codability InvalidElementStrategy.swift
[66/100] Compiling Codability AnyCodable.swift
[67/100] Compiling Yams shim.swift
[68/101] Compiling SwiftCLI Stream.swift
[69/101] Compiling SwiftCLI Task.swift
[72/101] Compiling Yams YamlError.swift
[73/101] Compiling Yams Mark.swift
[74/101] Compiling Yams Node.Mapping.swift
[75/101] Compiling Yams Node.swift
[76/101] Compiling Yams Parser.swift
[88/103] Wrapping AST for NetTime for debugging
[89/103] Wrapping AST for Codability for debugging
[90/103] Wrapping AST for SwiftCLI for debugging
[91/103] Wrapping AST for Rainbow for debugging
[93/103] Emitting module PathKit
[94/103] Compiling PathKit PathKit.swift
[96/118] Wrapping AST for Yams for debugging
[97/118] Wrapping AST for PathKit for debugging
[99/118] Compiling TOMLDeserializer Location.swift
[100/118] Emitting module TOMLDeserializer
[101/118] Compiling TOMLDeserializer Errors.swift
[102/118] Compiling TOMLDeserializer TOMLDeserializer.swift
[103/118] Compiling TOMLDeserializer constants.swift
[104/118] Compiling StringlyKit StringsDictGenerator.swift
[105/118] Compiling StringlyKit StringsGenerator.swift
[106/118] Compiling StringlyKit SwiftGenerator.swift
[107/118] Compiling StringlyKit Generator.swift
[108/118] Emitting module StringlyKit
[109/118] Compiling StringlyKit StringGroup.swift
[110/118] Compiling StringlyKit StringLocalization.swift
/host/spi-builder-workspace/Sources/StringlyKit/StringLocalization.swift:168:51: warning: trailing closure in this context is confusable with the body of the statement; pass as a parenthesized argument to silence this warning
166 |                     let stringPlaceholders = Self.parsePlaceholders(string)
167 |                     for placeholder in stringPlaceholders {
168 |                         if !placeholders.contains { $0.name == placeholder.name } {
    |                                                   `- warning: trailing closure in this context is confusable with the body of the statement; pass as a parenthesized argument to silence this warning
169 |                             placeholders.append(placeholder)
170 |                         }
[111/119] Wrapping AST for StringlyKit for debugging
[113/119] Compiling TOMLDeserializer Parser.swift
[114/119] Compiling TOMLDeserializer Scanner.swift
[115/120] Wrapping AST for TOMLDeserializer for debugging
[117/128] Compiling StringlyCLI GenerateError.swift
[118/128] Compiling StringlyCLI Loader.swift
[119/129] Compiling StringlyCLI FileWriter.swift
[120/129] Compiling StringlyCLI FileType.swift
[121/129] Compiling StringlyCLI GenerateFileCommand.swift
[122/129] Compiling StringlyCLI CLI.swift
/host/spi-builder-workspace/Sources/StringlyCLI/CLI.swift:33:1: warning: extension declares a conformance of imported type 'Path' to imported protocol 'ConvertibleFromString'; this will not behave correctly if the owners of 'PathKit' introduce this conformance in the future
31 | }
32 |
33 | extension Path: ConvertibleFromString {
   | |- warning: extension declares a conformance of imported type 'Path' to imported protocol 'ConvertibleFromString'; this will not behave correctly if the owners of 'PathKit' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
34 |     public init?(input: String) {
35 |         self.init(input)
[123/129] Compiling StringlyCLI GenerateCommand.swift
[124/129] Emitting module StringlyCLI
/host/spi-builder-workspace/Sources/StringlyCLI/CLI.swift:33:1: warning: extension declares a conformance of imported type 'Path' to imported protocol 'ConvertibleFromString'; this will not behave correctly if the owners of 'PathKit' introduce this conformance in the future
31 | }
32 |
33 | extension Path: ConvertibleFromString {
   | |- warning: extension declares a conformance of imported type 'Path' to imported protocol 'ConvertibleFromString'; this will not behave correctly if the owners of 'PathKit' introduce this conformance in the future
   | `- note: add '@retroactive' to silence this warning
34 |     public init?(input: String) {
35 |         self.init(input)
[125/129] Compiling StringlyCLI PlatformType.swift
[126/130] Wrapping AST for StringlyCLI for debugging
[128/132] Emitting module Stringly
[129/132] Compiling Stringly main.swift
[130/133] Wrapping AST for Stringly for debugging
[131/133] Write Objects.LinkFileList
[132/133] Linking stringly
Build complete! (31.92s)
Build complete.
{
  "dependencies" : [
    {
      "identity" : "yams",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.0",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/jpsim/Yams"
    },
    {
      "identity" : "pathkit",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "1.0.1",
            "upper_bound" : "2.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/kylef/PathKit"
    },
    {
      "identity" : "rainbow",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "3.1.0",
            "upper_bound" : "4.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/onevcat/Rainbow"
    },
    {
      "identity" : "swiftcli",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "6.0.3",
            "upper_bound" : "7.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/jakeheis/SwiftCLI"
    },
    {
      "identity" : "tomldeserializer",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.2.4",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/dduan/TOMLDeserializer"
    },
    {
      "identity" : "codability",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.2.1",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/yonaskolb/Codability"
    }
  ],
  "manifest_display_name" : "Stringly",
  "name" : "Stringly",
  "path" : "/host/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "stringly",
      "targets" : [
        "Stringly"
      ],
      "type" : {
        "executable" : null
      }
    },
    {
      "name" : "StringlyKit",
      "targets" : [
        "StringlyKit"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "StringlyKitTests",
      "module_type" : "SwiftTarget",
      "name" : "StringlyKitTests",
      "path" : "Tests/StringlyKitTests",
      "product_dependencies" : [
        "PathKit"
      ],
      "sources" : [
        "StringlyKitTests.swift"
      ],
      "target_dependencies" : [
        "StringlyKit"
      ],
      "type" : "test"
    },
    {
      "c99name" : "StringlyKit",
      "module_type" : "SwiftTarget",
      "name" : "StringlyKit",
      "path" : "Sources/StringlyKit",
      "product_dependencies" : [
        "Codability"
      ],
      "product_memberships" : [
        "stringly",
        "StringlyKit"
      ],
      "sources" : [
        "Generator.swift",
        "Generators/StringsDictGenerator.swift",
        "Generators/StringsGenerator.swift",
        "Generators/SwiftGenerator.swift",
        "StringGroup.swift",
        "StringLocalization.swift"
      ],
      "type" : "library"
    },
    {
      "c99name" : "StringlyCLITests",
      "module_type" : "SwiftTarget",
      "name" : "StringlyCLITests",
      "path" : "Tests/StringlyCLITests",
      "product_dependencies" : [
        "PathKit"
      ],
      "sources" : [
        "StringDiff.swift",
        "StringlyCLITests.swift",
        "TestHelpers.swift"
      ],
      "target_dependencies" : [
        "StringlyCLI"
      ],
      "type" : "test"
    },
    {
      "c99name" : "StringlyCLI",
      "module_type" : "SwiftTarget",
      "name" : "StringlyCLI",
      "path" : "Sources/StringlyCLI",
      "product_dependencies" : [
        "Yams",
        "Rainbow",
        "SwiftCLI",
        "PathKit",
        "TOMLDeserializer"
      ],
      "product_memberships" : [
        "stringly"
      ],
      "sources" : [
        "CLI.swift",
        "Commands/GenerateCommand.swift",
        "Commands/GenerateFileCommand.swift",
        "FileType.swift",
        "FileWriter.swift",
        "GenerateError.swift",
        "Loader.swift",
        "PlatformType.swift"
      ],
      "target_dependencies" : [
        "StringlyKit"
      ],
      "type" : "library"
    },
    {
      "c99name" : "Stringly",
      "module_type" : "SwiftTarget",
      "name" : "Stringly",
      "path" : "Sources/Stringly",
      "product_memberships" : [
        "stringly"
      ],
      "sources" : [
        "main.swift"
      ],
      "target_dependencies" : [
        "StringlyCLI"
      ],
      "type" : "executable"
    }
  ],
  "tools_version" : "5.1"
}
basic-6.0-latest: Pulling from finestructure/spi-images
Digest: sha256:046a2cda21bb64b2d09e6d52c84584e938ec1698de194871f3d7088597b2bb28
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.0-latest
Done.