Build Information
Successful build of Titan, reference master (0e4995
), with Swift 6.2 (beta) for Linux on 18 Jun 2025 03:07:03 UTC.
Swift 6 data race errors: 0
Build Command
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.64.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/bermudadigitalstudio/titan.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/bermudadigitalstudio/titan
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 0e4995f Merge pull request #97 from bermudadigitalstudio/lint
Cloned https://github.com/bermudadigitalstudio/titan.git
Revision (git rev-parse @):
0e4995ffc271c79ea4421378632d2615b653b2d4
SUCCESS checkout https://github.com/bermudadigitalstudio/titan.git at master
========================================
Build
========================================
Selected platform: linux
Swift version: 6.2
Building package at path: $PWD
https://github.com/bermudadigitalstudio/titan.git
Running build ...
bash -c docker run --pull=always --rm -v "checkouts-4609320-1":/host -w "$PWD" registry.gitlab.com/finestructure/spi-images:basic-6.2-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:f81a7bd7aa87a0f81848d48c5bcc03f5f78deebd37fa5f9be9913077205d3687
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.2-latest
Building for debugging...
[0/11] Write sources
[10/11] Write swift-version-24593BA9C3E375BF.txt
[12/19] Compiling TitanCore TitanResponse.swift
[13/19] Compiling TitanCore TitanLogs.swift
[14/19] Emitting module TitanCore
[15/19] Compiling TitanCore TitanError.swift
[16/19] Compiling TitanCore TitanCore.swift
[17/19] Compiling TitanCore TitanHeader.swift
[18/19] Compiling TitanCore TitanMethod.swift
[19/19] Compiling TitanCore TitanRequest.swift
[21/41] Emitting module Titan404
[22/41] Compiling Titan404 Titan404.swift
[23/41] Emitting module TitanJSON
/host/spi-builder-workspace/Sources/TitanJSON/TitanJSONResponseBody.swift:19:5: warning: 'public' modifier is redundant for initializer declared in a public extension
17 | public extension Response {
18 |
19 | public init(code: Int, json: Any) throws {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
20 | let jsonData = try JSONSerialization.data(withJSONObject: json, options: [])
21 | self.init(code: code, body: jsonData, headers: HTTPHeaders(dictionaryLiteral: ("content-type", "application/json")))
/host/spi-builder-workspace/Sources/TitanJSON/TitanJSONResponseBody.swift:24:5: warning: 'public' modifier is redundant for initializer declared in a public extension
22 | }
23 |
24 | public init<T: Encodable>(code: Int, object: T, jsonEncoder: JSONEncoder = JSONEncoder()) throws {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
25 | let data = try jsonEncoder.encode(object)
26 | self.init(code: code, body: data, headers: HTTPHeaders(dictionaryLiteral: ("content-type", "application/json")))
[24/41] Emitting module TitanErrorHandling
[25/42] Emitting module TitanQueryString
/host/spi-builder-workspace/Sources/TitanQueryString/TitanQueryString.swift:20:5: warning: 'public' modifier is redundant for property declared in a public extension
18 | /// The pairs of keys and values in the query string of the `RequestType`s path.
19 | /// Complexity: 0(n) on all invocations.
20 | public var queryPairs: [(key: String, value: String)] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
21 | // Ensure there is a query string, otherwise return
22 | guard let indexOfQuery = self.path.index(of: "?") else {
/host/spi-builder-workspace/Sources/TitanQueryString/TitanQueryString.swift:57:5: warning: 'public' modifier is redundant for property declared in a public extension
55 | /// Access the query string as a dictionary, with case sensitive keys.
56 | /// Complexity: 0(n) on all invocations.
57 | public var query: [String: String] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
58 | var query: [String: String] = [:]
59 | for (name, value) in self.queryPairs {
[27/42] Compiling TitanRouter TitanParameterizedRoutes.swift
[28/42] Compiling TitanQueryString TitanQueryString.swift
/host/spi-builder-workspace/Sources/TitanQueryString/TitanQueryString.swift:20:5: warning: 'public' modifier is redundant for property declared in a public extension
18 | /// The pairs of keys and values in the query string of the `RequestType`s path.
19 | /// Complexity: 0(n) on all invocations.
20 | public var queryPairs: [(key: String, value: String)] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
21 | // Ensure there is a query string, otherwise return
22 | guard let indexOfQuery = self.path.index(of: "?") else {
/host/spi-builder-workspace/Sources/TitanQueryString/TitanQueryString.swift:57:5: warning: 'public' modifier is redundant for property declared in a public extension
55 | /// Access the query string as a dictionary, with case sensitive keys.
56 | /// Complexity: 0(n) on all invocations.
57 | public var query: [String: String] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
58 | var query: [String: String] = [:]
59 | for (name, value) in self.queryPairs {
[29/42] Compiling TitanErrorHandling TitanErrorHandling.swift
[30/43] Compiling TitanRouter TitanRoutingExtension.swift
[31/43] Compiling TitanRouter TitanRoutesByMethod.swift
[33/44] Compiling TitanFormURLEncodedBodyParser TitanFormURLEncodedBodyParser.swift
/host/spi-builder-workspace/Sources/TitanFormURLEncodedBodyParser/TitanFormURLEncodedBodyParser.swift:19:5: warning: 'public' modifier is redundant for property declared in a public extension
17 | public extension RequestType {
18 |
19 | public var formURLEncodedBody: [(name: String, value: String)] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
20 | guard let bodyString: String = self.body else {
21 | return []
/host/spi-builder-workspace/Sources/TitanFormURLEncodedBodyParser/TitanFormURLEncodedBodyParser.swift:27:5: warning: 'public' modifier is redundant for property declared in a public extension
25 | }
26 |
27 | public var postParams: [String: String] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
28 | var ret = [String: String]()
29 | guard let bodyString: String = self.body else {
[34/44] Emitting module TitanFormURLEncodedBodyParser
/host/spi-builder-workspace/Sources/TitanFormURLEncodedBodyParser/TitanFormURLEncodedBodyParser.swift:19:5: warning: 'public' modifier is redundant for property declared in a public extension
17 | public extension RequestType {
18 |
19 | public var formURLEncodedBody: [(name: String, value: String)] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
20 | guard let bodyString: String = self.body else {
21 | return []
/host/spi-builder-workspace/Sources/TitanFormURLEncodedBodyParser/TitanFormURLEncodedBodyParser.swift:27:5: warning: 'public' modifier is redundant for property declared in a public extension
25 | }
26 |
27 | public var postParams: [String: String] {
| `- warning: 'public' modifier is redundant for property declared in a public extension
28 | var ret = [String: String]()
29 | guard let bodyString: String = self.body else {
[36/45] Compiling TitanCORS TitanCORS.swift
[37/45] Emitting module TitanCORS
[38/46] Compiling TitanJSON TitanJSONResponseBody.swift
/host/spi-builder-workspace/Sources/TitanJSON/TitanJSONResponseBody.swift:19:5: warning: 'public' modifier is redundant for initializer declared in a public extension
17 | public extension Response {
18 |
19 | public init(code: Int, json: Any) throws {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
20 | let jsonData = try JSONSerialization.data(withJSONObject: json, options: [])
21 | self.init(code: code, body: jsonData, headers: HTTPHeaders(dictionaryLiteral: ("content-type", "application/json")))
/host/spi-builder-workspace/Sources/TitanJSON/TitanJSONResponseBody.swift:24:5: warning: 'public' modifier is redundant for initializer declared in a public extension
22 | }
23 |
24 | public init<T: Encodable>(code: Int, object: T, jsonEncoder: JSONEncoder = JSONEncoder()) throws {
| `- warning: 'public' modifier is redundant for initializer declared in a public extension
25 | let data = try jsonEncoder.encode(object)
26 | self.init(code: code, body: data, headers: HTTPHeaders(dictionaryLiteral: ("content-type", "application/json")))
[39/46] Compiling TitanJSON TitanJSONRequestBody.swift
[41/47] Compiling TitanRouter InitializerOverloads.swift
[42/47] Emitting module TitanRouter
[43/47] Compiling TitanRouter PathParameterSupport.swift
[47/48] Emitting module TitanHealthz
[48/48] Compiling TitanHealthz TitanHealthz.swift
[50/51] Emitting module Titan
[51/51] Compiling Titan Titan.swift
Build complete! (14.46s)
Build complete.
{
"dependencies" : [
],
"manifest_display_name" : "Titan",
"name" : "Titan",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "TitanCore",
"targets" : [
"TitanCore"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Titan",
"targets" : [
"Titan"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TitanRouter",
"targets" : [
"TitanRouter"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TitanErrorHandling",
"targets" : [
"TitanErrorHandling"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "Titan404",
"targets" : [
"Titan404"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TitanCORS",
"targets" : [
"TitanCORS"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TitanFormURLEncodedBodyParser",
"targets" : [
"TitanFormURLEncodedBodyParser"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TitanJSON",
"targets" : [
"TitanJSON"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TitanQueryString",
"targets" : [
"TitanQueryString"
],
"type" : {
"library" : [
"automatic"
]
}
},
{
"name" : "TitanHealthz",
"targets" : [
"TitanHealthz"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "TitanTests",
"module_type" : "SwiftTarget",
"name" : "TitanTests",
"path" : "Tests/TitanTests",
"sources" : [
"TitanAPITests.swift"
],
"target_dependencies" : [
"Titan"
],
"type" : "test"
},
{
"c99name" : "TitanRouterTests",
"module_type" : "SwiftTarget",
"name" : "TitanRouterTests",
"path" : "Tests/TitanRouterTests",
"sources" : [
"TitanRouterTests.swift"
],
"target_dependencies" : [
"TitanRouter"
],
"type" : "test"
},
{
"c99name" : "TitanRouter",
"module_type" : "SwiftTarget",
"name" : "TitanRouter",
"path" : "Sources/TitanRouter",
"product_memberships" : [
"Titan",
"TitanRouter"
],
"sources" : [
"InitializerOverloads.swift",
"PathParameterSupport.swift",
"TitanParameterizedRoutes.swift",
"TitanRoutesByMethod.swift",
"TitanRoutingExtension.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "TitanQueryStringTests",
"module_type" : "SwiftTarget",
"name" : "TitanQueryStringTests",
"path" : "Tests/TitanQueryStringTests",
"sources" : [
"TitanQueryStringTests.swift"
],
"target_dependencies" : [
"TitanQueryString"
],
"type" : "test"
},
{
"c99name" : "TitanQueryString",
"module_type" : "SwiftTarget",
"name" : "TitanQueryString",
"path" : "Sources/TitanQueryString",
"product_memberships" : [
"Titan",
"TitanQueryString"
],
"sources" : [
"TitanQueryString.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "TitanJSONTests",
"module_type" : "SwiftTarget",
"name" : "TitanJSONTests",
"path" : "Tests/TitanJSONTests",
"sources" : [
"TitanJSONTests.swift"
],
"target_dependencies" : [
"TitanJSON"
],
"type" : "test"
},
{
"c99name" : "TitanJSON",
"module_type" : "SwiftTarget",
"name" : "TitanJSON",
"path" : "Sources/TitanJSON",
"product_memberships" : [
"Titan",
"TitanJSON"
],
"sources" : [
"TitanJSONRequestBody.swift",
"TitanJSONResponseBody.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "TitanHealthzTests",
"module_type" : "SwiftTarget",
"name" : "TitanHealthzTests",
"path" : "Tests/TitanHealthzTests",
"sources" : [
"TitanHealthzTests.swift"
],
"target_dependencies" : [
"TitanHealthz"
],
"type" : "test"
},
{
"c99name" : "TitanHealthz",
"module_type" : "SwiftTarget",
"name" : "TitanHealthz",
"path" : "Sources/TitanHealthz",
"product_memberships" : [
"TitanHealthz"
],
"sources" : [
"TitanHealthz.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "TitanFormURLEncodedBodyParserTests",
"module_type" : "SwiftTarget",
"name" : "TitanFormURLEncodedBodyParserTests",
"path" : "Tests/TitanFormURLEncodedBodyParserTests",
"sources" : [
"TitanFormURLEncodedBodyParserTests.swift"
],
"target_dependencies" : [
"TitanFormURLEncodedBodyParser"
],
"type" : "test"
},
{
"c99name" : "TitanFormURLEncodedBodyParser",
"module_type" : "SwiftTarget",
"name" : "TitanFormURLEncodedBodyParser",
"path" : "Sources/TitanFormURLEncodedBodyParser",
"product_memberships" : [
"Titan",
"TitanFormURLEncodedBodyParser"
],
"sources" : [
"TitanFormURLEncodedBodyParser.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "TitanErrorHandlingTests",
"module_type" : "SwiftTarget",
"name" : "TitanErrorHandlingTests",
"path" : "Tests/TitanErrorHandlingTests",
"sources" : [
"TitanErrorHandlingTests.swift"
],
"target_dependencies" : [
"TitanErrorHandling"
],
"type" : "test"
},
{
"c99name" : "TitanErrorHandling",
"module_type" : "SwiftTarget",
"name" : "TitanErrorHandling",
"path" : "Sources/TitanErrorHandling",
"product_memberships" : [
"Titan",
"TitanErrorHandling"
],
"sources" : [
"TitanErrorHandling.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "TitanCoreTests",
"module_type" : "SwiftTarget",
"name" : "TitanCoreTests",
"path" : "Tests/TitanCoreTests",
"sources" : [
"TitanCoreTests.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "test"
},
{
"c99name" : "TitanCore",
"module_type" : "SwiftTarget",
"name" : "TitanCore",
"path" : "Sources/TitanCore",
"product_memberships" : [
"TitanCore",
"Titan",
"TitanRouter",
"TitanErrorHandling",
"Titan404",
"TitanCORS",
"TitanFormURLEncodedBodyParser",
"TitanJSON",
"TitanQueryString",
"TitanHealthz"
],
"sources" : [
"TitanCore.swift",
"TitanError.swift",
"TitanHeader.swift",
"TitanLogs.swift",
"TitanMethod.swift",
"TitanRequest.swift",
"TitanResponse.swift"
],
"type" : "library"
},
{
"c99name" : "TitanCORSTests",
"module_type" : "SwiftTarget",
"name" : "TitanCORSTests",
"path" : "Tests/TitanCORSTests",
"sources" : [
"CORSTests.swift"
],
"target_dependencies" : [
"TitanCORS"
],
"type" : "test"
},
{
"c99name" : "TitanCORS",
"module_type" : "SwiftTarget",
"name" : "TitanCORS",
"path" : "Sources/TitanCORS",
"product_memberships" : [
"Titan",
"TitanCORS"
],
"sources" : [
"TitanCORS.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "Titan404Tests",
"module_type" : "SwiftTarget",
"name" : "Titan404Tests",
"path" : "Tests/Titan404Tests",
"sources" : [
"Titan404Tests.swift"
],
"target_dependencies" : [
"Titan404"
],
"type" : "test"
},
{
"c99name" : "Titan404",
"module_type" : "SwiftTarget",
"name" : "Titan404",
"path" : "Sources/Titan404",
"product_memberships" : [
"Titan",
"Titan404"
],
"sources" : [
"Titan404.swift"
],
"target_dependencies" : [
"TitanCore"
],
"type" : "library"
},
{
"c99name" : "Titan",
"module_type" : "SwiftTarget",
"name" : "Titan",
"path" : "Sources/Titan",
"product_memberships" : [
"Titan"
],
"sources" : [
"Titan.swift"
],
"target_dependencies" : [
"TitanCore",
"TitanRouter",
"TitanErrorHandling",
"Titan404",
"TitanCORS",
"TitanFormURLEncodedBodyParser",
"TitanJSON",
"TitanQueryString"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
basic-6.2-latest: Pulling from finestructure/spi-images
Digest: sha256:f81a7bd7aa87a0f81848d48c5bcc03f5f78deebd37fa5f9be9913077205d3687
Status: Image is up to date for registry.gitlab.com/finestructure/spi-images:basic-6.2-latest
Done.