Build Information
Failed to build PerfectXML, reference 3.1.3 (977d27), with Swift 6.3 for Linux on 10 Apr 2026 08:54:05 UTC.
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/swiftpackageindex/spi-images:basic-6.3-latest swift build --triple x86_64-unknown-linux-gnu 2>&1Build Log
========================================
RunAll
========================================
Builder version: 4.70.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/perfectlysoft/perfect-xml.git
Reference: 3.1.3
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
* tag 3.1.3 -> FETCH_HEAD
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 3.1.3
========================================
Build
========================================
Selected platform: linux
Swift version: 6.3
Building package at path: $PWD
https://github.com/perfectlysoft/perfect-xml.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/swiftpackageindex/spi-images:basic-6.3-latest swift build --triple x86_64-unknown-linux-gnu 2>&1
basic-6.3-latest: Pulling from swiftpackageindex/spi-images
Digest: sha256:5a7d791d2ead8a924b1292cb31bf3288eabcfe8880e0b005b00b45b71a5bc36a
Status: Image is up to date for registry.gitlab.com/swiftpackageindex/spi-images:basic-6.3-latest
Fetching https://github.com/PerfectlySoft/Perfect-libxml2.git
[1/89] Fetching perfect-libxml2
Fetched https://github.com/PerfectlySoft/Perfect-libxml2.git from cache (0.21s)
Computing version for https://github.com/PerfectlySoft/Perfect-libxml2.git
Computed https://github.com/PerfectlySoft/Perfect-libxml2.git at 3.0.1 (0.67s)
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 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:99:8: warning: immutable value 'errorTracker' was never used; consider replacing with '_' or removing it [#no-usage]
97 | return
98 | }
99 | let errorTracker: XErrorTracker = Unmanaged.fromOpaque(userData).takeUnretainedValue()
| `- warning: immutable value 'errorTracker' was never used; consider replacing with '_' or removing it [#no-usage]
100 |
101 | print("help")
/usr/lib/swift/_foundation_unicode/utypes.h:511:14: error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
509 | * @stable ICU 2.0
510 | */
511 | typedef enum UErrorCode {
| `- error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
512 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
513 | * and is that way because VC++ debugger displays first encountered constant,
/usr/include/unicode/utypes.h:415:14: note: but in 'perfectxml2' found enum with 163 elements
413 | * @stable ICU 2.0
414 | */
415 | typedef enum UErrorCode {
| `- note: but in 'perfectxml2' found enum with 163 elements
416 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
417 | * and is that way because VC++ debugger displays first encountered constant,
[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 [#TemporaryPointers]
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 [#TemporaryPointers]
106 | return xmlParseChunk(ctx, $0, Int32(d.count), 0)
107 | }
[#TemporaryPointers]: <https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers>
[5/8] Compiling PerfectXML XMLStream.swift
/usr/lib/swift/_foundation_unicode/utypes.h:511:14: error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
509 | * @stable ICU 2.0
510 | */
511 | typedef enum UErrorCode {
| `- error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
512 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
513 | * and is that way because VC++ debugger displays first encountered constant,
/usr/include/unicode/utypes.h:415:14: note: but in 'perfectxml2' found enum with 163 elements
413 | * @stable ICU 2.0
414 | */
415 | typedef enum UErrorCode {
| `- note: but in 'perfectxml2' found enum with 163 elements
416 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
417 | * and is that way because VC++ debugger displays first encountered constant,
[6/8] Compiling PerfectXML XMLDOM.swift
/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 [#TemporaryPointers]
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 [#TemporaryPointers]
332 | guard let doc = htmlParseDoc(p, encoding) else {
333 | return nil
/usr/lib/swift/_foundation_unicode/utypes.h:511:14: error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
509 | * @stable ICU 2.0
510 | */
511 | typedef enum UErrorCode {
| `- error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
512 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
513 | * and is that way because VC++ debugger displays first encountered constant,
/usr/include/unicode/utypes.h:415:14: note: but in 'perfectxml2' found enum with 163 elements
413 | * @stable ICU 2.0
414 | */
415 | typedef enum UErrorCode {
| `- note: but in 'perfectxml2' found enum with 163 elements
416 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
417 | * and is that way because VC++ debugger displays first encountered constant,
[#TemporaryPointers]: <https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers>
[7/8] Emitting module PerfectXML
/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
/usr/lib/swift/_foundation_unicode/utypes.h:511:14: error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
509 | * @stable ICU 2.0
510 | */
511 | typedef enum UErrorCode {
| `- error: 'UErrorCode' has different definitions in different modules; definition in module '_FoundationICU' first difference is enum with 175 elements
512 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
513 | * and is that way because VC++ debugger displays first encountered constant,
/usr/include/unicode/utypes.h:415:14: note: but in 'perfectxml2' found enum with 163 elements
413 | * @stable ICU 2.0
414 | */
415 | typedef enum UErrorCode {
| `- note: but in 'perfectxml2' found enum with 163 elements
416 | /* The ordering of U_ERROR_INFO_START Vs U_USING_FALLBACK_WARNING looks weird
417 | * and is that way because VC++ debugger displays first encountered constant,
BUILD FAILURE 6.3 linux