Build Information
Successful build of PerfectXML with Swift 6.0 for Linux.
Swift 6 data race errors: 1
Build Command
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Build Log
========================================
RunAll
========================================
Builder version: 4.40.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/perfectlysoft/perfect-xml.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/perfectlysoft/perfect-xml
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 977d277 Updated import
Cloned https://github.com/perfectlysoft/perfect-xml.git
Revision (git rev-parse @):
977d27770b74f8e73653b9f569b7dac1bfea4150
SUCCESS checkout https://github.com/perfectlysoft/perfect-xml.git at master
========================================
Build
========================================
Selected platform: linux
Swift version: 6.0
Building package at path: $workDir
https://github.com/perfectlysoft/perfect-xml.git
Running build ...
bash -c docker run --rm -v "checkouts-4609320-0":/host -w "$workDir" registry.gitlab.com/finestructure/spi-images:basic-6.0-latest swift build --triple x86_64-unknown-linux-gnu -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete 2>&1
Fetching https://github.com/PerfectlySoft/Perfect-libxml2.git
[1/89] Fetching perfect-libxml2
Fetched https://github.com/PerfectlySoft/Perfect-libxml2.git from cache (0.22s)
Computing version for https://github.com/PerfectlySoft/Perfect-libxml2.git
Computed https://github.com/PerfectlySoft/Perfect-libxml2.git at 3.0.1 (0.51s)
Creating working copy for https://github.com/PerfectlySoft/Perfect-libxml2.git
Working copy of https://github.com/PerfectlySoft/Perfect-libxml2.git resolved at 3.0.1
warning: 'perfect-libxml2': ignoring declared target(s) 'libxml2' in the system package
warning: 'spi-builder-workspace': dependency 'perfect-libxml2' is not used by any target
Building for debugging...
[0/2] Write sources
[1/2] Write swift-version-24593BA9C3E375BF.txt
[3/8] Compiling PerfectXML XMLDOM.swift
/host/spi-builder-workspace/Sources/PerfectXML/XMLDOM.swift:269:13: warning: static property 'initialize' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
267 | public class XDocument: XNode {
268 |
269 | static var initialize: Bool = {
| |- warning: static property 'initialize' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'initialize' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'initialize' 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
270 | xmlInitParser()
271 | xmlXPathInit()
/host/spi-builder-workspace/Sources/PerfectXML/XMLDOM.swift:105:4: warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
103 | }
104 | defer {
105 | xmlFree(content)
| `- warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
106 | }
107 | return String(validatingUTF8: UnsafeMutableRawPointer(content).assumingMemoryBound(to: Int8.self))
perfectxml2.xmlFree:1:12: note: var declared here
1 | public var xmlFree: xmlFreeFunc!
| `- note: var declared here
/host/spi-builder-workspace/Sources/PerfectXML/XMLDOM.swift:200:4: warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
198 | }
199 | defer {
200 | xmlFree(localPart)
| `- warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
201 | if nil != prefix {
202 | xmlFree(prefix)
perfectxml2.xmlFree:1:12: note: var declared here
1 | public var xmlFree: xmlFreeFunc!
| `- note: var declared here
/host/spi-builder-workspace/Sources/PerfectXML/XMLDOM.swift:202:5: warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
200 | xmlFree(localPart)
201 | if nil != prefix {
202 | xmlFree(prefix)
| `- warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
203 | }
204 | }
perfectxml2.xmlFree:1:12: note: var declared here
1 | public var xmlFree: xmlFreeFunc!
| `- note: var declared here
/host/spi-builder-workspace/Sources/PerfectXML/XMLDOM.swift:331:49: warning: initialization of 'UnsafePointer<String.UTF8View.Element>' (aka 'UnsafePointer<UInt8>') results in a dangling pointer
329 | _ = XDocument.initialize
330 | let src = Array(fromSource.utf8)
331 | let p = UnsafeMutablePointer<UInt8>(mutating: UnsafePointer(src))
| | |- note: implicit argument conversion from '[String.UTF8View.Element]' (aka 'Array<UInt8>') to 'UnsafePointer<String.UTF8View.Element>' (aka 'UnsafePointer<UInt8>') produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafePointer<String.UTF8View.Element>' (aka 'UnsafePointer<UInt8>') results in a dangling pointer
332 | guard let doc = htmlParseDoc(p, encoding) else {
333 | return nil
[4/8] Compiling PerfectXML SAX.swift
/host/spi-builder-workspace/Sources/PerfectXML/SAX.swift:105:14: warning: initialization of 'UnsafePointer<UInt8>' results in a dangling pointer
103 | public func pushData(_ d: [UInt8]) throws {
104 | let ctx = try getCtxt()
105 | let code = UnsafePointer(d).withMemoryRebound(to: Int8.self, capacity: d.count) {
| | |- note: implicit argument conversion from '[UInt8]' to 'UnsafePointer<UInt8>' produces a pointer valid only for the duration of the call to 'init(_:)'
| | `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
| `- warning: initialization of 'UnsafePointer<UInt8>' results in a dangling pointer
106 | return xmlParseChunk(ctx, $0, Int32(d.count), 0)
107 | }
[5/8] Compiling PerfectXML XPath.swift
/host/spi-builder-workspace/Sources/PerfectXML/XPath.swift:84:2: warning: 'public' modifier is redundant for instance method declared in a public extension
82 | /// Execute the XPath and return the result(s).
83 | /// Accepts and array of tuples holding namespace prefixes and uris.
84 | public func extract(path: String, namespaces: [(String, String)] = [(String, String)]()) -> XPathObject {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
85 | guard let ctx = initializeContext() else {
86 | return .none
/host/spi-builder-workspace/Sources/PerfectXML/XPath.swift:118:2: warning: 'public' modifier is redundant for instance method declared in a public extension
116 | /// Execute the XPath and return a single resul tnode or nil.
117 | /// Accepts and array of tuples holding namespace prefixes and uris.
118 | public func extractOne(path: String, namespaces: [(String, String)] = [(String, String)]()) -> XNode? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
119 | guard case .nodeSet(let nodes) = extract(path: path, namespaces: namespaces) else {
120 | return nil
/host/spi-builder-workspace/Sources/PerfectXML/XPath.swift:77:5: warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
75 | }
76 | defer {
77 | xmlFree(chars)
| `- warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
78 | }
79 | return .string(String(validatingUTF8: UnsafeRawPointer(chars).assumingMemoryBound(to: Int8.self)) ?? "")
perfectxml2.xmlFree:1:12: note: var declared here
1 | public var xmlFree: xmlFreeFunc!
| `- note: var declared here
/host/spi-builder-workspace/Sources/PerfectXML/XPath.swift:99:8: warning: immutable value 'errorTracker' was never used; consider replacing with '_' or removing it
97 | return
98 | }
99 | let errorTracker: XErrorTracker = Unmanaged.fromOpaque(userData).takeUnretainedValue()
| `- warning: immutable value 'errorTracker' was never used; consider replacing with '_' or removing it
100 |
101 | print("help")
[6/8] Compiling PerfectXML XMLStream.swift
/host/spi-builder-workspace/Sources/PerfectXML/XMLStream.swift:195:4: warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
193 | }
194 | defer {
195 | xmlFree(n)
| `- warning: reference to var 'xmlFree' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
196 | }
197 | return n.withMemoryRebound(to: Int8.self, capacity: 0) {
perfectxml2.xmlFree:1:12: note: var declared here
1 | public var xmlFree: xmlFreeFunc!
| `- note: var declared here
[7/8] Emitting module PerfectXML
/host/spi-builder-workspace/Sources/PerfectXML/XMLDOM.swift:269:13: warning: static property 'initialize' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
267 | public class XDocument: XNode {
268 |
269 | static var initialize: Bool = {
| |- warning: static property 'initialize' is not concurrency-safe because it is non-isolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'initialize' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'initialize' 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
270 | xmlInitParser()
271 | xmlXPathInit()
/host/spi-builder-workspace/Sources/PerfectXML/XPath.swift:84:2: warning: 'public' modifier is redundant for instance method declared in a public extension
82 | /// Execute the XPath and return the result(s).
83 | /// Accepts and array of tuples holding namespace prefixes and uris.
84 | public func extract(path: String, namespaces: [(String, String)] = [(String, String)]()) -> XPathObject {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
85 | guard let ctx = initializeContext() else {
86 | return .none
/host/spi-builder-workspace/Sources/PerfectXML/XPath.swift:118:2: warning: 'public' modifier is redundant for instance method declared in a public extension
116 | /// Execute the XPath and return a single resul tnode or nil.
117 | /// Accepts and array of tuples holding namespace prefixes and uris.
118 | public func extractOne(path: String, namespaces: [(String, String)] = [(String, String)]()) -> XNode? {
| `- warning: 'public' modifier is redundant for instance method declared in a public extension
119 | guard case .nodeSet(let nodes) = extract(path: path, namespaces: namespaces) else {
120 | return nil
[8/8] Compiling PerfectXML Codable.swift
Build complete! (13.70s)
Build complete.
{
"dependencies" : [
{
"identity" : "perfect-libxml2",
"requirement" : {
"range" : [
{
"lower_bound" : "3.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/PerfectlySoft/Perfect-libxml2.git"
}
],
"manifest_display_name" : "PerfectXML",
"name" : "PerfectXML",
"path" : "/host/spi-builder-workspace",
"platforms" : [
],
"products" : [
{
"name" : "PerfectXML",
"targets" : [
"PerfectXML"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "PerfectXMLTests",
"module_type" : "SwiftTarget",
"name" : "PerfectXMLTests",
"path" : "Tests/PerfectXMLTests",
"sources" : [
"PerfectXMLTests.swift"
],
"target_dependencies" : [
"PerfectXML"
],
"type" : "test"
},
{
"c99name" : "PerfectXML",
"module_type" : "SwiftTarget",
"name" : "PerfectXML",
"path" : "Sources/PerfectXML",
"product_memberships" : [
"PerfectXML"
],
"sources" : [
"Codable.swift",
"SAX.swift",
"XMLDOM.swift",
"XMLStream.swift",
"XPath.swift"
],
"type" : "library"
}
],
"tools_version" : "4.0"
}
Done.