The Swift Package Index logo.Swift Package Index

Build Information

Successful build of PerfectHTTPServer, reference master (4843cd), with Swift 6.4 for macOS (SPM) on 15 Sep 2026 18:37:35 UTC.

Swift 6 data race errors: 0

Build Command

env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64

Build Log

========================================
RunAll
========================================
Builder version: 5.1.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/perfectlysoft/perfect-httpserver.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/perfectlysoft/perfect-httpserver
 * branch            master     -> FETCH_HEAD
 * [new branch]      master     -> origin/master
HEAD is now at 4843cd5 Merge pull request #49 from 123FLO321/hasher
Cloned https://github.com/perfectlysoft/perfect-httpserver.git
Revision (git rev-parse @):
4843cd54762d59b7e70841663ae561b279b80946
SUCCESS checkout https://github.com/perfectlysoft/perfect-httpserver.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.4
Building package at path:  $PWD
https://github.com/perfectlysoft/perfect-httpserver.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-27.0.0-Release.Candidate.app xcrun swift build --arch arm64
Building for debugging...
[Computing dependencies]
[Pre-planning 1 / 308]
[Planning deferred tasks]
[55 / 605]
[65 / 607] PerfectCZlib
[84 / 634] PerfectLib
[88 / 634] PerfectThread
[92 / 634] PerfectThread
[98 / 634] PerfectThread-product
[101 / 634] PerfectCZlib
[104 / 634] PerfectCZlib
[114 / 634] PerfectThread-product
[116 / 634] PerfectLib-product
[117 / 634] PerfectLib-product
[123 / 634] PerfectCZlib
[140 / 644] COpenSSL
[155 / 644]
[171 / 644] COpenSSL
[185 / 644] COpenSSL
[201 / 644] COpenSSL
[227 / 644] COpenSSL
[248 / 644] COpenSSL
[268 / 644] COpenSSL
[286 / 644] COpenSSL
[308 / 644] COpenSSL
[331 / 644] COpenSSL
[356 / 644] COpenSSL
[380 / 644] COpenSSL
[408 / 644] COpenSSL
[431 / 644] COpenSSL
[456 / 644] COpenSSL
[481 / 644] COpenSSL
[508 / 644] COpenSSL
[534 / 644] COpenSSL
[558 / 644] COpenSSL
[580 / 644] COpenSSL
[601 / 644] COpenSSL
[618 / 654] PerfectCrypto
[620 / 654] COpenSSL
[621 / 654] PerfectCrypto
[636 / 663] PerfectNet
[636 / 663] PerfectCrypto
[650 / 675] PerfectHTTP
[654 / 675] PerfectHTTP
[656 / 675] PerfectHTTP
[667 / 687] PerfectHTTPServer
[671 / 687] PerfectNet
[675 / 687] PerfectHTTPServer
[684 / 687] PerfectHTTPServer
Build complete! (10.68 sec)
Fetching https://github.com/PerfectlySoft/Perfect-HTTP.git
Fetching https://github.com/PerfectlySoft/Perfect-CZlib-src.git
Fetching https://github.com/PerfectlySoft/Perfect-Net.git
[1/570] Fetching perfect-net
[64/1378] Fetching perfect-net, perfect-http
[65/1715] Fetching perfect-net, perfect-http, perfect-czlib-src
Fetched https://github.com/PerfectlySoft/Perfect-CZlib-src.git (1.22s)
Fetched https://github.com/PerfectlySoft/Perfect-HTTP.git (1.22s)
Fetched https://github.com/PerfectlySoft/Perfect-Net.git (1.22s)
Computing version for https://github.com/PerfectlySoft/Perfect-CZlib-src.git
Computed https://github.com/PerfectlySoft/Perfect-CZlib-src.git at 0.0.4 (1.95s)
Computing version for https://github.com/PerfectlySoft/Perfect-Net.git
Computed https://github.com/PerfectlySoft/Perfect-Net.git at 3.3.0 (0.71s)
Fetching https://github.com/PerfectlySoft/Perfect-Crypto.git
Fetching https://github.com/PerfectlySoft/Perfect-Thread.git
[1/379] Fetching perfect-thread
[380/991] Fetching perfect-thread, perfect-crypto
Fetched https://github.com/PerfectlySoft/Perfect-Thread.git (1.52s)
Fetched https://github.com/PerfectlySoft/Perfect-Crypto.git (1.52s)
Computing version for https://github.com/PerfectlySoft/Perfect-Crypto.git
Computed https://github.com/PerfectlySoft/Perfect-Crypto.git at 3.3.0 (2.23s)
Fetching https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Fetching https://github.com/PerfectlySoft/PerfectLib.git
[1/10784] Fetching perfectlib
[1403/14745] Fetching perfectlib, perfect-copenssl
Fetched https://github.com/PerfectlySoft/PerfectLib.git (6.32s)
Fetched https://github.com/PerfectlySoft/Perfect-COpenSSL.git (6.32s)
Computing version for https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Computed https://github.com/PerfectlySoft/Perfect-COpenSSL.git at 4.0.2 (7.01s)
Computing version for https://github.com/PerfectlySoft/Perfect-Thread.git
Computed https://github.com/PerfectlySoft/Perfect-Thread.git at 3.0.7 (0.66s)
Computing version for https://github.com/PerfectlySoft/PerfectLib.git
Computed https://github.com/PerfectlySoft/PerfectLib.git at 3.1.4 (0.65s)
Computing version for https://github.com/PerfectlySoft/Perfect-HTTP.git
Computed https://github.com/PerfectlySoft/Perfect-HTTP.git at 3.3.0 (0.65s)
Creating working copy for https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Working copy of https://github.com/PerfectlySoft/Perfect-COpenSSL.git resolved at 4.0.2
Creating working copy for https://github.com/PerfectlySoft/Perfect-HTTP.git
Working copy of https://github.com/PerfectlySoft/Perfect-HTTP.git resolved at 3.3.0
Creating working copy for https://github.com/PerfectlySoft/Perfect-Crypto.git
Working copy of https://github.com/PerfectlySoft/Perfect-Crypto.git resolved at 3.3.0
Creating working copy for https://github.com/PerfectlySoft/Perfect-Net.git
Working copy of https://github.com/PerfectlySoft/Perfect-Net.git resolved at 3.3.0
Creating working copy for https://github.com/PerfectlySoft/Perfect-CZlib-src.git
Working copy of https://github.com/PerfectlySoft/Perfect-CZlib-src.git resolved at 0.0.4
Creating working copy for https://github.com/PerfectlySoft/PerfectLib.git
Working copy of https://github.com/PerfectlySoft/PerfectLib.git resolved at 3.1.4
Creating working copy for https://github.com/PerfectlySoft/Perfect-Thread.git
Working copy of https://github.com/PerfectlySoft/Perfect-Thread.git resolved at 3.0.7
<module-includes>:1:9: note: in file included from <module-includes>:1:
1 | #import "czlib.h"
  |         `- note: in file included from <module-includes>:1:
2 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-CZlib-src/PerfectCZlib/include/czlib.h:4:10: note: in file included from /Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-CZlib-src/PerfectCZlib/include/czlib.h:4:
2 | #include "../zconf.h"
3 | #include "../zlib.h"
4 | #include "../zutil.h"
  |          `- note: in file included from /Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-CZlib-src/PerfectCZlib/include/czlib.h:4:
5 | #include "../inftrees.h"
6 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:73:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'HTTP2Session' to 'Hashable' by implementing 'hash(into:)' instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 71 | 		}
 72 | 	#else
 73 | 		var hashValue: Int { return Int(net.fd.fd) }
    |       `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'HTTP2Session' to 'Hashable' by implementing 'hash(into:)' instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 74 | 	#endif
 75 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPContentCompression.swift:52:21: warning: initialization of 'UnsafeMutablePointer<UInt8>' results in a dangling pointer [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
 50 | 		}
 51 | 		if !bytes.isEmpty {
 52 | 			stream.next_in = UnsafeMutablePointer(mutating: bytes)
    |                     |                              |- note: implicit argument conversion from '[UInt8]' to 'UnsafePointer<UInt8>' produces a pointer valid only for the duration of the call to 'init(mutating:)'
    |                     |                              `- note: use the 'withUnsafeBufferPointer' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
    |                     `- warning: initialization of 'UnsafeMutablePointer<UInt8>' results in a dangling pointer [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
 53 | 			stream.avail_in = uInt(bytes.count)
 54 | 		} else {
[#TemporaryPointers]: <https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers>
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:73:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'HTTP2Session' to 'Hashable' by implementing 'hash(into:)' instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 71 | 		}
 72 | 	#else
 73 | 		var hashValue: Int { return Int(net.fd.fd) }
    |       `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'HTTP2Session' to 'Hashable' by implementing 'hash(into:)' instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 74 | 	#endif
 75 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:73:7: warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'HTTP2Session' to 'Hashable' by implementing 'hash(into:)' instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 71 | 		}
 72 | 	#else
 73 | 		var hashValue: Int { return Int(net.fd.fd) }
    |       `- warning: 'Hashable.hashValue' is deprecated as a protocol requirement; conform type 'HTTP2Session' to 'Hashable' by implementing 'hash(into:)' instead [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration\DeprecatedDeclaration]8;;\]
 74 | 	#endif
 75 |
[#DeprecatedDeclaration]: <https://docs.swift.org/compiler/documentation/diagnostics/deprecated-declaration>
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:386:44: warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
384 | 		case .headerField:
385 | 			workingBuffer.append(0)
386 | 			lastHeaderName = String(validatingUTF8: UnsafeMutableRawPointer(mutating: workingBuffer).assumingMemoryBound(to: Int8.self))
    |                                            |                                 |- note: implicit argument conversion from '[UInt8]' to 'UnsafeRawPointer' produces a pointer valid only for the duration of the call to 'init(mutating:)'
    |                                            |                                 `- note: use the 'withUnsafeBytes' method on Array in order to explicitly convert argument to buffer pointer valid for a defined scope
    |                                            `- warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
387 | 			workingBuffer.removeAll()
388 | 		case .headerValue:
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:467:7: warning: initialization of 'UnsafePointer<UInt8>' results in a dangling pointer [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
465 | 	//	either way no further action should be taken
466 | 	func didReadSomeBytes(_ b: [UInt8], callback: @escaping StatusCallback) -> Bool {
467 | 		_ = UnsafePointer(b).withMemoryRebound(to: Int8.self, capacity: b.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 [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers\TemporaryPointers]8;;\]
468 | 			http_parser_execute(&parser, &parserSettings, $0, b.count)
469 | 		}
[#TemporaryPointers]: <https://docs.swift.org/compiler/documentation/diagnostics/temporary-pointers>
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Client.swift:143:45: warning: 'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
140 |
141 | 	func readOneFrame() {
142 | 		Threading.dispatch {
    |                      |- note: 'self' implicitly strongly captured here
    |                      `- note: add 'self' as a capture list item to silence
143 | 			self.readHTTP2Frame(timeout: -1) { [weak self]
    |                                             |- warning: 'weak' ownership of capture 'self' differs from implicitly-captured strong reference in outer scope [#]8;;https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture\ImplicitStrongCapture]8;;\]
    |                                             `- note: explicitly assign the capture list item to silence
144 | 				f in
145 | 				if let frame = f {
[#ImplicitStrongCapture]: <https://docs.swift.org/compiler/documentation/diagnostics/implicit-strong-capture>
Build complete.
{
  "dependencies" : [
    {
      "identity" : "perfect-net",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "3.1.2",
            "upper_bound" : "4.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/PerfectlySoft/Perfect-Net.git"
    },
    {
      "identity" : "perfect-http",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "3.0.12",
            "upper_bound" : "4.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/PerfectlySoft/Perfect-HTTP.git"
    },
    {
      "identity" : "perfect-czlib-src",
      "requirement" : {
        "range" : [
          {
            "lower_bound" : "0.0.0",
            "upper_bound" : "1.0.0"
          }
        ]
      },
      "type" : "sourceControl",
      "url" : "https://github.com/PerfectlySoft/Perfect-CZlib-src.git"
    }
  ],
  "manifest_display_name" : "PerfectHTTPServer",
  "name" : "PerfectHTTPServer",
  "path" : "/Users/admin/builder/spi-builder-workspace",
  "platforms" : [
  ],
  "products" : [
    {
      "name" : "PerfectHTTPServer",
      "targets" : [
        "PerfectHTTPServer"
      ],
      "type" : {
        "library" : [
          "automatic"
        ]
      }
    }
  ],
  "targets" : [
    {
      "c99name" : "PerfectHTTPServerTests",
      "module_type" : "SwiftTarget",
      "name" : "PerfectHTTPServerTests",
      "path" : "Tests/PerfectHTTPServerTests",
      "sources" : [
        "PerfectHTTPServerTests.swift"
      ],
      "target_dependencies" : [
        "PerfectHTTPServer"
      ],
      "type" : "test"
    },
    {
      "c99name" : "PerfectHTTPServer",
      "module_type" : "SwiftTarget",
      "name" : "PerfectHTTPServer",
      "path" : "Sources/PerfectHTTPServer",
      "product_dependencies" : [
        "PerfectNet",
        "PerfectHTTP",
        "PerfectCZlib"
      ],
      "product_memberships" : [
        "PerfectHTTPServer"
      ],
      "sources" : [
        "HTTP11/HTTP11Request.swift",
        "HTTP11/HTTP11Response.swift",
        "HTTP2/HPACK.swift",
        "HTTP2/HTTP2.swift",
        "HTTP2/HTTP2Client.swift",
        "HTTP2/HTTP2Frame.swift",
        "HTTP2/HTTP2FrameReader.swift",
        "HTTP2/HTTP2FrameWriter.swift",
        "HTTP2/HTTP2PrefaceValidator.swift",
        "HTTP2/HTTP2Request.swift",
        "HTTP2/HTTP2Response.swift",
        "HTTP2/HTTP2Session.swift",
        "HTTP2/HTTP2SessionSettings.swift",
        "HTTPContentCompression.swift",
        "HTTPMultiplexer.swift",
        "HTTPServer.swift",
        "HTTPServerEx.swift",
        "HTTPServerExConfig.swift"
      ],
      "target_dependencies" : [
        "PerfectCHTTPParser"
      ],
      "type" : "library"
    },
    {
      "c99name" : "PerfectCHTTPParser",
      "module_type" : "ClangTarget",
      "name" : "PerfectCHTTPParser",
      "path" : "Sources/PerfectCHTTPParser",
      "product_memberships" : [
        "PerfectHTTPServer"
      ],
      "sources" : [
        "http_parser.c"
      ],
      "type" : "library"
    }
  ],
  "tools_version" : "4.1"
}
Done.