The Swift Package Index logo.Swift Package Index

Build Information

Successful build of PerfectHTTPServer, reference master (871f3d), with Swift 6.1 for macOS (SPM) on 28 Oct 2026 18:35:22 UTC.

Swift 6 data race errors: 11

Build Command

env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures

Build Log

========================================
RunAll
========================================
Builder version: 5.1.3
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 871f3db Deprecate in favour of Perfect-NIO
Cloned https://github.com/perfectlysoft/perfect-httpserver.git
Revision (git rev-parse @):
871f3dbaecc6a2a1c9e860b6e0666f9a46cc6984
SUCCESS checkout https://github.com/perfectlysoft/perfect-httpserver.git at master
========================================
Build
========================================
Selected platform:         macosSpm
Swift version:             6.1
Building package at path:  $PWD
https://github.com/perfectlysoft/perfect-httpserver.git
https://github.com/perfectlysoft/perfect-httpserver.git
{
  "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"
}
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.3.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete -Xswiftc -enable-upcoming-feature -Xswiftc StrictConcurrency -Xswiftc -enable-upcoming-feature -Xswiftc DisableOutwardActorInference -Xswiftc -enable-upcoming-feature -Xswiftc GlobalActorIsolatedTypesUsability -Xswiftc -enable-upcoming-feature -Xswiftc InferSendableFromCaptures
Building for debugging...
[0/256] Write sources
[6/256] Write swift-version-2F0A5646E1D333AE.txt
[7/256] Compiling PerfectCZlib uncompr.c
[8/256] Compiling PerfectCZlib inftrees.c
[9/256] Compiling PerfectCZlib inffast.c
[10/256] Compiling PerfectCZlib infback.c
[11/256] Compiling PerfectCZlib trees.c
[12/256] Compiling PerfectCZlib inflate.c
[13/256] Compiling PerfectCZlib crc32.c
[14/260] Compiling PerfectCZlib deflate.c
[15/260] Compiling PerfectCZlib compress.c
[16/260] Compiling PerfectCZlib adler32.c
[17/270] Compiling COpenSSL xts128.c
[18/270] Compiling PerfectCHTTPParser http_parser.c
[19/270] Compiling COpenSSL xcbc_enc.c
[20/270] Compiling COpenSSL x_.c
[21/270] Compiling COpenSSL x509type.c
[22/270] Compiling COpenSSL x509spki.c
[23/270] Compiling COpenSSL x509rset.c
[24/270] Compiling COpenSSL x509cset.c
[25/270] Compiling COpenSSL x509name.c
[26/270] Compiling COpenSSL wrap128.c
[27/270] Compiling COpenSSL wp_.c
[28/270] Compiling PerfectCZlib gzclose.c
[29/270] Compiling PerfectCZlib gzlib.c
[30/270] Compiling COpenSSL v3err.c
[31/270] Compiling COpenSSL v3_lib.c
[32/270] Compiling PerfectCZlib gzread.c
[33/270] Compiling COpenSSL x509_.c
[34/270] Compiling COpenSSL uid.c
[35/270] Compiling COpenSSL ui_.c
[36/270] Compiling COpenSSL txt_db.c
[37/270] Compiling COpenSSL th-lock.c
[38/270] Compiling COpenSSL tls_srp.c
[39/270] Compiling COpenSSL tb_store.c
[40/270] Compiling PerfectCZlib gzwrite.c
[41/270] Compiling COpenSSL tb_rsa.c
[42/270] Compiling COpenSSL v3_.c
[43/270] Compiling COpenSSL ts_.c
[44/270] Compiling COpenSSL tb_rand.c
[45/270] Compiling COpenSSL tb_pkmeth.c
[46/270] Compiling COpenSSL tb_ecdsa.c
[47/270] Compiling COpenSSL tb_ecdh.c
[48/270] Compiling COpenSSL tb_dsa.c
[49/270] Compiling COpenSSL tb_digest.c
[50/270] Compiling COpenSSL tb_dh.c
[51/270] Compiling COpenSSL tb_cipher.c
[52/270] Compiling PerfectCZlib zutil.c
[53/270] Compiling COpenSSL str2key.c
[54/270] Compiling COpenSSL tb_asnmth.c
[55/270] Compiling COpenSSL stack.c
[56/270] Compiling COpenSSL t_.c
[57/270] Compiling COpenSSL tasn_.c
[58/270] Compiling COpenSSL sha_.c
[59/270] Compiling COpenSSL sha512.c
[60/270] Compiling COpenSSL srp_.c
[61/270] Compiling COpenSSL sha256.c
[62/270] Compiling COpenSSL sha1dgst.c
[63/270] Compiling COpenSSL sha1_one.c
[64/270] Compiling COpenSSL t1_.c
[65/270] Compiling COpenSSL set_key.c
[66/270] Compiling COpenSSL seed_.c
[67/270] Compiling COpenSSL rsaz_exp.c
[68/270] Compiling COpenSSL seed.c
[69/270] Compiling COpenSSL rpc_enc.c
[70/270] Compiling COpenSSL s2_.c
[71/270] Compiling COpenSSL read2pwd.c
[72/270] Compiling COpenSSL rmd_.c
[73/270] Compiling COpenSSL s23_.c
[74/270] Compiling COpenSSL rc2ofb64.c
[75/270] Compiling COpenSSL rc2cfb64.c
[76/270] Compiling COpenSSL ssl_.c
[77/270] Compiling COpenSSL rc4_.c
[78/270] Compiling COpenSSL rc2_.c
[79/270] Compiling COpenSSL qud_cksm.c
[80/270] Compiling COpenSSL randfile.c
[81/270] Compiling COpenSSL rsa_.c
[82/270] Compiling COpenSSL pqueue.c
[83/270] Compiling COpenSSL rand_.c
[84/270] Compiling COpenSSL pvkfmt.c
[85/270] Compiling COpenSSL pkcs7err.c
[85/270] Compiling COpenSSL s3_.c
[87/270] Compiling COpenSSL pk12err.c
[88/270] Compiling COpenSSL pmeth_.c
[89/270] Compiling COpenSSL pcbc_enc.c
[90/270] Compiling COpenSSL p8_pkey.c
[91/270] Compiling COpenSSL pk7_.c
[92/270] Compiling COpenSSL p_.c
[93/270] Compiling COpenSSL pem_.c
[94/270] Compiling COpenSSL openbsd_hw.c
[95/270] Compiling COpenSSL pcy_.c
[96/270] Compiling COpenSSL p5_.c
[97/270] Compiling COpenSSL ofb64enc.c
[98/270] Compiling COpenSSL ofb_enc.c
[99/270] Compiling COpenSSL ofb128.c
[100/270] Compiling COpenSSL ofb64ede.c
[101/270] Compiling COpenSSL p12_.c
[102/270] Compiling COpenSSL ocsp_.c
[103/270] Compiling COpenSSL obj_.c
[104/270] Compiling COpenSSL o_.c
[105/270] Compiling COpenSSL mdc2dgst.c
[106/270] Compiling COpenSSL mem.c
[107/270] Compiling COpenSSL mem_.c
[108/270] Compiling COpenSSL nsseq.c
[109/270] Compiling COpenSSL names.c
[110/270] Compiling COpenSSL mdc2_one.c
[111/270] Compiling COpenSSL n_pkey.c
[112/270] Compiling COpenSSL md_rand.c
[113/270] Compiling COpenSSL md5_.c
[114/270] Compiling COpenSSL md4_.c
[115/270] Compiling COpenSSL m_wp.c
[116/270] Compiling COpenSSL m_sha1.c
[117/270] Compiling COpenSSL m_sha.c
[118/270] Compiling COpenSSL m_ripemd.c
[119/270] Compiling COpenSSL m_sigver.c
[120/270] Compiling COpenSSL m_null.c
[121/270] Compiling COpenSSL m_mdc2.c
[122/270] Compiling COpenSSL m_md5.c
[123/270] Compiling COpenSSL m_md2.c
[124/270] Compiling COpenSSL m_md4.c
[125/270] Compiling COpenSSL lhash.c
[126/270] Compiling COpenSSL m_dss1.c
[127/270] Compiling COpenSSL m_dss.c
[128/270] Compiling COpenSSL m_ecdsa.c
[129/270] Compiling COpenSSL lh_stats.c
[130/270] Compiling COpenSSL krb5_asn.c
[131/270] Compiling COpenSSL kssl.c
[132/270] Compiling COpenSSL gosthash.c
[133/270] Compiling COpenSSL i_.c
[134/270] Compiling COpenSSL hmac.c
[135/270] Compiling COpenSSL i2d_.c
[136/270] Compiling COpenSSL hm_.c
[137/270] Compiling COpenSSL gost89.c
[138/270] Compiling COpenSSL fips_ers.c
[139/270] Compiling COpenSSL gost94_keyx.c
[140/270] Compiling COpenSSL getenv.c
[141/270] Compiling COpenSSL gost2001_keyx.c
[142/270] Compiling COpenSSL gcm128.c
[143/270] Compiling COpenSSL gost_.c
[144/270] Compiling COpenSSL gost2001.c
[145/270] Compiling COpenSSL fcrypt_b.c
[146/270] Compiling COpenSSL fcrypt.c
[147/270] Compiling COpenSSL f_.c
[148/270] Compiling COpenSSL ex_data.c
[149/270] Compiling COpenSSL err.c
[150/270] Compiling COpenSSL enc_.c
[151/270] Compiling COpenSSL encode.c
[152/270] Compiling COpenSSL err_.c
[153/270] Compiling COpenSSL ede_cbcm_enc.c
[154/270] Compiling COpenSSL evp_.c
[155/270] Compiling COpenSSL ecp_nistputil.c
[156/270] Compiling COpenSSL ecp_nistp521.c
[157/270] Compiling COpenSSL ecp_nistp256.c
[158/270] Compiling COpenSSL ecp_nistp224.c
[159/270] Compiling COpenSSL ecs_.c
[160/270] Compiling COpenSSL eng_.c
[161/270] Compiling COpenSSL ecp_oct.c
[162/270] Compiling COpenSSL ecp_smpl.c
[163/270] Compiling COpenSSL ecp_nist.c
[164/270] Compiling COpenSSL ecp_mont.c
[165/270] Compiling COpenSSL ecb3_enc.c
[166/270] Compiling COpenSSL ecb_enc.c
[167/270] Compiling COpenSSL ebcdic.c
[168/270] Compiling COpenSSL eck_prn.c
[169/270] Compiling COpenSSL ech_.c
[170/270] Compiling COpenSSL ec2_.c
[171/270] Compiling COpenSSL e_xcbc_d.c
[172/270] Compiling COpenSSL e_ubsec_err.c
[173/270] Compiling COpenSSL e_sureware_err.c
[174/270] Compiling COpenSSL e_seed.c
[175/270] Compiling COpenSSL e_rc5.c
[175/270] Compiling COpenSSL e_ubsec.c
[177/270] Compiling COpenSSL e_sureware.c
[178/270] Compiling COpenSSL e_rc4_hmac_md5.c
[179/270] Compiling COpenSSL e_rc4.c
[180/270] Compiling COpenSSL e_rc2.c
[181/270] Compiling COpenSSL ec_.c
[182/270] Compiling COpenSSL e_nuron_err.c
[183/270] Compiling COpenSSL e_old.c
[184/270] Compiling COpenSSL e_padlock.c
[185/270] Compiling COpenSSL e_gost_err.c
[186/270] Compiling COpenSSL e_null.c
[187/270] Compiling COpenSSL e_nuron.c
[188/270] Compiling COpenSSL e_gmp_err.c
[189/270] Compiling COpenSSL e_idea.c
[190/270] Compiling COpenSSL e_gmp.c
[191/270] Compiling COpenSSL e_des.c
[192/270] Compiling COpenSSL e_des3.c
[193/270] Compiling COpenSSL e_cswift_err.c
[194/270] Compiling COpenSSL e_chil_err.c
[195/270] Compiling COpenSSL e_capi_err.c
[196/270] Compiling COpenSSL e_cast.c
[197/270] Compiling COpenSSL e_cswift.c
[198/270] Compiling COpenSSL e_atalla_err.c
[199/270] Compiling COpenSSL e_chil.c
[200/270] Compiling COpenSSL e_capi.c
[201/270] Compiling COpenSSL e_camellia.c
[202/270] Compiling COpenSSL e_bf.c
[203/270] Compiling COpenSSL e_aes_cbc_hmac_sha256.c
[204/270] Compiling COpenSSL e_atalla.c
[205/270] Compiling COpenSSL e_aes_cbc_hmac_sha1.c
[206/270] Compiling COpenSSL e_aep_err.c
[207/270] Compiling COpenSSL e_4758cca_err.c
[208/270] Compiling COpenSSL des_old2.c
[209/270] Compiling COpenSSL e_aes.c
[210/270] Compiling COpenSSL dso_.c
[211/270] Compiling COpenSSL e_aep.c
[212/270] Compiling COpenSSL e_4758cca.c
[213/270] Compiling COpenSSL des_old.c
[214/270] Compiling COpenSSL digest.c
[215/270] Compiling COpenSSL cversion.c
[216/270] Compiling COpenSSL ctr128.c
[217/270] Compiling COpenSSL des_enc.c
[218/270] Compiling COpenSSL d2i_.c
[219/270] Compiling COpenSSL cpt_err.c
[220/270] Compiling COpenSSL dh_.c
[221/270] Compiling COpenSSL cryptlib.c
[222/270] Compiling COpenSSL dsa_.c
[223/270] Compiling COpenSSL comp_.c
[224/270] Compiling COpenSSL cmll_.c
[225/270] Compiling COpenSSL cmac.c
[226/270] Compiling COpenSSL d1_lib.c
[227/270] Compiling COpenSSL cfb_enc.c
[228/270] Compiling COpenSSL cfb64enc.c
[229/270] Compiling COpenSSL cm_.c
[230/270] Compiling COpenSSL cfb128.c
[231/270] Compiling COpenSSL cfb64ede.c
[231/270] Compiling COpenSSL conf_.c
[233/270] Compiling COpenSSL ccm128.c
[234/270] Compiling COpenSSL cbc3_enc.c
[235/270] Compiling COpenSSL cbc_.c
[236/270] Compiling COpenSSL d1_.c
[237/270] Compiling COpenSSL cbc128.c
[238/270] Compiling COpenSSL camellia.c
[239/270] Compiling COpenSSL buffer.c
[240/270] Compiling COpenSSL buf_.c
[241/270] Compiling COpenSSL by_.c
[242/270] Compiling COpenSSL c_.c
[243/270] Compiling COpenSSL b_sock.c
[244/270] Compiling COpenSSL bf_.c
[245/270] Compiling COpenSSL b_print.c
[246/270] Compiling COpenSSL bss_.c
[247/270] Compiling COpenSSL b_dump.c
[248/270] Compiling COpenSSL asn_.c
[249/270] Compiling COpenSSL aes_.c
[250/270] Compiling COpenSSL ameth_lib.c
[251/270] Compiling COpenSSL cms_.c
[252/270] Compiling COpenSSL bio_.c
[253/270] Compiling COpenSSL asn1_.c
[254/270] Compiling COpenSSL a_.c
[255/270] Compiling COpenSSL bn_.c
[257/270] Emitting module PerfectLib
[258/270] Compiling PerfectLib File.swift
[259/270] Compiling PerfectLib Dir.swift
[260/270] Compiling PerfectLib PerfectServer.swift
[261/270] Compiling PerfectLib SysProcess.swift
[262/270] Compiling PerfectLib Log.swift
[263/270] Compiling PerfectLib PerfectError.swift
[264/270] Compiling PerfectThread Threading.swift
[265/270] Compiling PerfectLib JSONConvertible.swift
[266/270] Compiling PerfectLib Utilities.swift
[267/270] Compiling PerfectThread Promise.swift
[268/270] Compiling PerfectLib Bytes.swift
[269/270] Emitting module PerfectThread
[270/270] Compiling PerfectThread ThreadQueue.swift
[271/279] Emitting module PerfectCrypto
[272/279] Compiling PerfectCrypto JWT.swift
[273/279] Compiling PerfectCrypto PerfectCrypto.swift
[274/279] Compiling PerfectCrypto OpenSSLInternal.swift
[275/279] Compiling PerfectCrypto Algorithms.swift
[276/279] Compiling PerfectCrypto Keys.swift
[277/279] Compiling PerfectCrypto Extensions.swift
[278/279] Compiling PerfectCrypto JWK.swift
[279/279] Compiling PerfectCrypto ByteIO.swift
[280/287] Compiling PerfectNet NetUDP.swift
[281/287] Compiling PerfectNet NetTCP.swift
[282/287] Compiling PerfectNet NetEvent.swift
[283/287] Compiling PerfectNet NetAddress.swift
[284/287] Emitting module PerfectNet
[285/287] Compiling PerfectNet NetNamedPipe.swift
[286/287] Compiling PerfectNet Net.swift
[287/287] Compiling PerfectNet NetTCPSSL.swift
[288/297] Emitting module PerfectHTTP
[289/297] Compiling PerfectHTTP MimeReader.swift
[290/297] Compiling PerfectHTTP HTTPFilter.swift
[291/297] Compiling PerfectHTTP HTTPRequest.swift
[292/298] Compiling PerfectHTTP StaticFileHandler.swift
[293/298] Compiling PerfectHTTP HTTPHeaders.swift
[294/298] Compiling PerfectHTTP Routing.swift
[295/298] Compiling PerfectHTTP HTTPMethod.swift
[296/298] Compiling PerfectHTTP HTTPResponse.swift
[297/298] Compiling PerfectHTTP MimeType.swift
[298/298] Compiling PerfectHTTP TypedRoutes.swift
[299/316] Compiling PerfectHTTPServer HTTP2PrefaceValidator.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Request.swift:282:4: warning: capture of 'self' with non-sendable type 'HTTP2Request' in a '@Sendable' closure
 24 |
 25 |
 26 | final class HTTP2Request: HTTPRequest, HeaderListener {
    |             `- note: class 'HTTP2Request' does not conform to the 'Sendable' protocol
 27 | 	var method: HTTPMethod = .get
 28 | 	var path: String {
    :
280 | 		let response = HTTP2Response(self)
281 | 		netHandleQueue.async { // get off the frame read thread
282 | 			self.routeRequest(response: response)
    |    `- warning: capture of 'self' with non-sendable type 'HTTP2Request' in a '@Sendable' closure
283 | 		}
284 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Request.swift:282:32: warning: capture of 'response' with non-sendable type 'HTTP2Response' in a '@Sendable' closure
280 | 		let response = HTTP2Response(self)
281 | 		netHandleQueue.async { // get off the frame read thread
282 | 			self.routeRequest(response: response)
    |                                `- warning: capture of 'response' with non-sendable type 'HTTP2Response' in a '@Sendable' closure
283 | 		}
284 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Response.swift:24:13: note: class 'HTTP2Response' does not conform to the 'Sendable' protocol
 22 | import PerfectThread
 23 |
 24 | final class HTTP2Response: HTTPResponse {
    |             `- note: class 'HTTP2Response' does not conform to the 'Sendable' protocol
 25 | 	var request: HTTPRequest
 26 | 	var status: HTTPResponseStatus = .ok
/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
 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
 74 | 	#endif
 75 |
[300/316] Compiling PerfectHTTPServer HTTP2Request.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Request.swift:282:4: warning: capture of 'self' with non-sendable type 'HTTP2Request' in a '@Sendable' closure
 24 |
 25 |
 26 | final class HTTP2Request: HTTPRequest, HeaderListener {
    |             `- note: class 'HTTP2Request' does not conform to the 'Sendable' protocol
 27 | 	var method: HTTPMethod = .get
 28 | 	var path: String {
    :
280 | 		let response = HTTP2Response(self)
281 | 		netHandleQueue.async { // get off the frame read thread
282 | 			self.routeRequest(response: response)
    |    `- warning: capture of 'self' with non-sendable type 'HTTP2Request' in a '@Sendable' closure
283 | 		}
284 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Request.swift:282:32: warning: capture of 'response' with non-sendable type 'HTTP2Response' in a '@Sendable' closure
280 | 		let response = HTTP2Response(self)
281 | 		netHandleQueue.async { // get off the frame read thread
282 | 			self.routeRequest(response: response)
    |                                `- warning: capture of 'response' with non-sendable type 'HTTP2Response' in a '@Sendable' closure
283 | 		}
284 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Response.swift:24:13: note: class 'HTTP2Response' does not conform to the 'Sendable' protocol
 22 | import PerfectThread
 23 |
 24 | final class HTTP2Response: HTTPResponse {
    |             `- note: class 'HTTP2Response' does not conform to the 'Sendable' protocol
 25 | 	var request: HTTPRequest
 26 | 	var status: HTTPResponseStatus = .ok
/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
 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
 74 | 	#endif
 75 |
[301/316] Compiling PerfectHTTPServer HTTP2FrameReader.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameReader.swift:54:4: warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in a '@Sendable' closure
 21 | }
 22 |
 23 | class HTTP2FrameReader {
    |       `- note: class 'HTTP2FrameReader' does not conform to the 'Sendable' protocol
 24 | 	private let net: NetTCP
 25 | 	private weak var errorDelegate: HTTP2NetErrorDelegate?
    :
 52 | 	private func startReadFrames() {
 53 | 		readFramesThread.async {
 54 | 			self.readHTTP2Frame {
    |    `- warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in a '@Sendable' closure
 55 | 				frame in
 56 | 				if let frame = frame, let frameReceiver = self.frameReceiver {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameReader.swift:56:47: warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in an isolated closure; this is an error in the Swift 6 language mode
 21 | }
 22 |
 23 | class HTTP2FrameReader {
    |       `- note: class 'HTTP2FrameReader' does not conform to the 'Sendable' protocol
 24 | 	private let net: NetTCP
 25 | 	private weak var errorDelegate: HTTP2NetErrorDelegate?
    :
 54 | 			self.readHTTP2Frame {
 55 | 				frame in
 56 | 				if let frame = frame, let frameReceiver = self.frameReceiver {
    |                                               `- warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in an isolated closure; this is an error in the Swift 6 language mode
 57 | 					frameReceiver.receiveFrame(frame)
 58 | 					self.startReadFrames() // evaluate if this should just be a loop
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameWriter.swift:65:4: warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in a '@Sendable' closure
11 | import Dispatch
12 |
13 | class HTTP2FrameWriter {
   |       `- note: class 'HTTP2FrameWriter' does not conform to the 'Sendable' protocol
14 | 	private let net: NetTCP
15 | 	private var enqueuedFrames = [HTTP2Frame]()
   :
63 | 		}
64 | 		writeFramesThread.async {
65 | 			self.enqueuedFramesLock.lock()
   |    `- warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in a '@Sendable' closure
66 | 			if self.enqueuedFrames.isEmpty {
67 | 				_ = self.enqueuedFramesLock.wait(seconds: 0.5)
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameWriter.swift:81:6: warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in an isolated closure; this is an error in the Swift 6 language mode
11 | import Dispatch
12 |
13 | class HTTP2FrameWriter {
   |       `- note: class 'HTTP2FrameWriter' does not conform to the 'Sendable' protocol
14 | 	private let net: NetTCP
15 | 	private var enqueuedFrames = [HTTP2Frame]()
   :
79 | 				guard wrote == bytes.count else {
80 | 					frame.sentCallback?(false)
81 | 					self.signalNetworkError()
   |      `- warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in an isolated closure; this is an error in the Swift 6 language mode
82 | 					return
83 | 				}
[302/316] Compiling PerfectHTTPServer HTTP2FrameWriter.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameReader.swift:54:4: warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in a '@Sendable' closure
 21 | }
 22 |
 23 | class HTTP2FrameReader {
    |       `- note: class 'HTTP2FrameReader' does not conform to the 'Sendable' protocol
 24 | 	private let net: NetTCP
 25 | 	private weak var errorDelegate: HTTP2NetErrorDelegate?
    :
 52 | 	private func startReadFrames() {
 53 | 		readFramesThread.async {
 54 | 			self.readHTTP2Frame {
    |    `- warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in a '@Sendable' closure
 55 | 				frame in
 56 | 				if let frame = frame, let frameReceiver = self.frameReceiver {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameReader.swift:56:47: warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in an isolated closure; this is an error in the Swift 6 language mode
 21 | }
 22 |
 23 | class HTTP2FrameReader {
    |       `- note: class 'HTTP2FrameReader' does not conform to the 'Sendable' protocol
 24 | 	private let net: NetTCP
 25 | 	private weak var errorDelegate: HTTP2NetErrorDelegate?
    :
 54 | 			self.readHTTP2Frame {
 55 | 				frame in
 56 | 				if let frame = frame, let frameReceiver = self.frameReceiver {
    |                                               `- warning: capture of 'self' with non-sendable type 'HTTP2FrameReader' in an isolated closure; this is an error in the Swift 6 language mode
 57 | 					frameReceiver.receiveFrame(frame)
 58 | 					self.startReadFrames() // evaluate if this should just be a loop
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameWriter.swift:65:4: warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in a '@Sendable' closure
11 | import Dispatch
12 |
13 | class HTTP2FrameWriter {
   |       `- note: class 'HTTP2FrameWriter' does not conform to the 'Sendable' protocol
14 | 	private let net: NetTCP
15 | 	private var enqueuedFrames = [HTTP2Frame]()
   :
63 | 		}
64 | 		writeFramesThread.async {
65 | 			self.enqueuedFramesLock.lock()
   |    `- warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in a '@Sendable' closure
66 | 			if self.enqueuedFrames.isEmpty {
67 | 				_ = self.enqueuedFramesLock.wait(seconds: 0.5)
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2FrameWriter.swift:81:6: warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in an isolated closure; this is an error in the Swift 6 language mode
11 | import Dispatch
12 |
13 | class HTTP2FrameWriter {
   |       `- note: class 'HTTP2FrameWriter' does not conform to the 'Sendable' protocol
14 | 	private let net: NetTCP
15 | 	private var enqueuedFrames = [HTTP2Frame]()
   :
79 | 				guard wrote == bytes.count else {
80 | 					frame.sentCallback?(false)
81 | 					self.signalNetworkError()
   |      `- warning: capture of 'self' with non-sendable type 'HTTP2FrameWriter' in an isolated closure; this is an error in the Swift 6 language mode
82 | 					return
83 | 				}
[303/317] Compiling PerfectHTTPServer HTTPServerEx.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerEx.swift:16:20: warning: static property 'defaultCipherList' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 14 |
 15 | public struct TLSConfiguration {
 16 | 	public static var defaultCipherList = [
    |                    |- warning: static property 'defaultCipherList' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'defaultCipherList' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'defaultCipherList' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 17 | 		"ECDHE-ECDSA-AES256-GCM-SHA384",
 18 | 		"ECDHE-ECDSA-AES128-GCM-SHA256",
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerEx.swift:69:13: warning: var 'processRunAs' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 67 | }
 68 |
 69 | private var processRunAs: String?
    |             |- warning: var 'processRunAs' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'processRunAs' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: add '@MainActor' to make var 'processRunAs' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 70 |
 71 | public extension HTTPServer {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerEx.swift:198:7: warning: stored property 'configuration' of 'Sendable'-conforming struct 'LaunchFailure' has non-sendable type 'HTTPServer.Server'; this is an error in the Swift 6 language mode
 76 | 	}
 77 |
 78 | 	struct Server {
    |         `- note: consider making struct 'Server' conform to the 'Sendable' protocol
 79 | 		public let name: String
 80 | 		public let port: Int
    :
196 | 	struct LaunchFailure: Error {
197 | 		let message: String
198 | 		let configuration: Server
    |       `- warning: stored property 'configuration' of 'Sendable'-conforming struct 'LaunchFailure' has non-sendable type 'HTTPServer.Server'; this is an error in the Swift 6 language mode
199 | 	}
200 |
[304/317] Compiling PerfectHTTPServer HTTP2SessionSettings.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPContentCompression.swift:52:21: warning: initialization of 'UnsafeMutablePointer<UInt8>' results in a dangling pointer
 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
 53 | 			stream.avail_in = uInt(bytes.count)
 54 | 		} else {
[305/317] Compiling PerfectHTTPServer HTTPContentCompression.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPContentCompression.swift:52:21: warning: initialization of 'UnsafeMutablePointer<UInt8>' results in a dangling pointer
 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
 53 | 			stream.avail_in = uInt(bytes.count)
 54 | 		} else {
[306/317] Compiling PerfectHTTPServer HTTP2Response.swift
/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
 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
 74 | 	#endif
 75 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:61:21: warning: static property 'pinLock' is not concurrency-safe because non-'Sendable' type 'Threading.Lock' may have shared mutable state; this is an error in the Swift 6 language mode
 59 | 	}
 60 |
 61 | 	private static let pinLock = Threading.Lock()
    |                     `- warning: static property 'pinLock' is not concurrency-safe because non-'Sendable' type 'Threading.Lock' may have shared mutable state; this is an error in the Swift 6 language mode
 62 | 	private static var pins = Set<HTTP2Session>()
 63 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Thread/Sources/PerfectThread/Threading.swift:68:8: note: class 'Lock' does not conform to the 'Sendable' protocol
 66 | 	/// The lock can be held by only one thread. Other threads attempting to secure the lock while it is held will block.
 67 | 	/// The lock is initialized as being recursive. The locking thread may lock multiple times, but each lock should be accompanied by an unlock.
 68 | 	class Lock {
    |        `- note: class 'Lock' does not conform to the 'Sendable' protocol
 69 | 		var mutex = pthread_mutex_t()
 70 | 		/// Initialize a new lock object.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:11:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
  9 | import PerfectNet
 10 | import PerfectLib
 11 | import PerfectThread
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
 12 | import PerfectHTTP
 13 |
    :
 59 | 	}
 60 |
 61 | 	private static let pinLock = Threading.Lock()
    |                     |- note: add '@MainActor' to make static property 'pinLock' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 | 	private static var pins = Set<HTTP2Session>()
 63 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:62:21: warning: static property 'pins' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 60 |
 61 | 	private static let pinLock = Threading.Lock()
 62 | 	private static var pins = Set<HTTP2Session>()
    |                     |- warning: static property 'pins' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'pins' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'pins' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 63 |
 64 | 	static func ==(lhs: HTTP2Session, rhs: HTTP2Session) -> Bool {
[307/317] Compiling PerfectHTTPServer HTTP2Session.swift
/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
 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
 74 | 	#endif
 75 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:61:21: warning: static property 'pinLock' is not concurrency-safe because non-'Sendable' type 'Threading.Lock' may have shared mutable state; this is an error in the Swift 6 language mode
 59 | 	}
 60 |
 61 | 	private static let pinLock = Threading.Lock()
    |                     `- warning: static property 'pinLock' is not concurrency-safe because non-'Sendable' type 'Threading.Lock' may have shared mutable state; this is an error in the Swift 6 language mode
 62 | 	private static var pins = Set<HTTP2Session>()
 63 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Thread/Sources/PerfectThread/Threading.swift:68:8: note: class 'Lock' does not conform to the 'Sendable' protocol
 66 | 	/// The lock can be held by only one thread. Other threads attempting to secure the lock while it is held will block.
 67 | 	/// The lock is initialized as being recursive. The locking thread may lock multiple times, but each lock should be accompanied by an unlock.
 68 | 	class Lock {
    |        `- note: class 'Lock' does not conform to the 'Sendable' protocol
 69 | 		var mutex = pthread_mutex_t()
 70 | 		/// Initialize a new lock object.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:11:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
  9 | import PerfectNet
 10 | import PerfectLib
 11 | import PerfectThread
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
 12 | import PerfectHTTP
 13 |
    :
 59 | 	}
 60 |
 61 | 	private static let pinLock = Threading.Lock()
    |                     |- note: add '@MainActor' to make static property 'pinLock' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 | 	private static var pins = Set<HTTP2Session>()
 63 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:62:21: warning: static property 'pins' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 60 |
 61 | 	private static let pinLock = Threading.Lock()
 62 | 	private static var pins = Set<HTTP2Session>()
    |                     |- warning: static property 'pins' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'pins' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'pins' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 63 |
 64 | 	static func ==(lhs: HTTP2Session, rhs: HTTP2Session) -> Bool {
[308/317] Compiling PerfectHTTPServer HTTPMultiplexer.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:230:4: warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
 31 |
 32 | /// Stand-alone HTTP server.
 33 | public class HTTPServer: ServerInstance {
    |              `- note: class 'HTTPServer' does not conform to the 'Sendable' protocol
 34 | 	public typealias certKeyPair = (sslCert: String, sslKey: String)
 35 | 	private var net: NetTCP?
    :
228 | 	func accepted(net: NetTCP) {
229 | 		netHandleQueue.async {
230 | 			self.handleConnection(net)
    |    `- warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
231 | 		}
232 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:230:26: warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
228 | 	func accepted(net: NetTCP) {
229 | 		netHandleQueue.async {
230 | 			self.handleConnection(net)
    |                          `- warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
231 | 		}
232 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Net/Sources/PerfectNet/NetTCP.swift:32:14: note: class 'NetTCP' does not conform to the 'Sendable' protocol
 30 | /// Provides an asynchronous IO wrapper around a file descriptor.
 31 | /// Fully realized for TCP socket types but can also serve as a base for sockets from other families, such as with `NetNamedPipe`/AF_UNIX.
 32 | public class NetTCP: Net {
    |              `- note: class 'NetTCP' does not conform to the 'Sendable' protocol
 33 |
 34 | 	private var networkFailure: Bool = false
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:20:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectNet'
 18 | //
 19 |
 20 | import PerfectNet
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectNet'
 21 | import PerfectThread
 22 | import PerfectLib
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:236:25: warning: reference to var 'compatRoutes' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
234 | 	private func startInner() throws {
235 | 		// 1.0 compatability ONLY
236 | 		if let compatRoutes = compatRoutes {
    |                         `- warning: reference to var 'compatRoutes' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
237 | 			self.addRoutes(compatRoutes)
238 | 		}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-HTTP/Sources/PerfectHTTP/Routing.swift:594:12: note: var declared here
592 | // ALL code below this is obsolete but remains to provide compatability 1.0 based solutions.
593 | // For 1.0 compatability only.
594 | public var compatRoutes: Routes?
    |            `- note: var declared here
595 |
596 | // Holds the registered routes.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:296:7: warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
 31 |
 32 | /// Stand-alone HTTP server.
 33 | public class HTTPServer: ServerInstance {
    |              `- note: class 'HTTPServer' does not conform to the 'Sendable' protocol
 34 | 	public typealias certKeyPair = (sslCert: String, sslKey: String)
 35 | 	private var net: NetTCP?
    :
294 | 				if let `self` = self {
295 | 					netHandleQueue.async {
296 | 						self.handleConnection(net)
    |       `- warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
297 | 					}
298 | 				}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:296:29: warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
294 | 				if let `self` = self {
295 | 					netHandleQueue.async {
296 | 						self.handleConnection(net)
    |                             `- warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
297 | 					}
298 | 				}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Net/Sources/PerfectNet/NetTCP.swift:32:14: note: class 'NetTCP' does not conform to the 'Sendable' protocol
 30 | /// Provides an asynchronous IO wrapper around a file descriptor.
 31 | /// Fully realized for TCP socket types but can also serve as a base for sockets from other families, such as with `NetNamedPipe`/AF_UNIX.
 32 | public class NetTCP: Net {
    |              `- note: class 'NetTCP' does not conform to the 'Sendable' protocol
 33 |
 34 | 	private var networkFailure: Bool = false
[309/317] Compiling PerfectHTTPServer HTTPServer.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:230:4: warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
 31 |
 32 | /// Stand-alone HTTP server.
 33 | public class HTTPServer: ServerInstance {
    |              `- note: class 'HTTPServer' does not conform to the 'Sendable' protocol
 34 | 	public typealias certKeyPair = (sslCert: String, sslKey: String)
 35 | 	private var net: NetTCP?
    :
228 | 	func accepted(net: NetTCP) {
229 | 		netHandleQueue.async {
230 | 			self.handleConnection(net)
    |    `- warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
231 | 		}
232 | 	}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:230:26: warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
228 | 	func accepted(net: NetTCP) {
229 | 		netHandleQueue.async {
230 | 			self.handleConnection(net)
    |                          `- warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
231 | 		}
232 | 	}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Net/Sources/PerfectNet/NetTCP.swift:32:14: note: class 'NetTCP' does not conform to the 'Sendable' protocol
 30 | /// Provides an asynchronous IO wrapper around a file descriptor.
 31 | /// Fully realized for TCP socket types but can also serve as a base for sockets from other families, such as with `NetNamedPipe`/AF_UNIX.
 32 | public class NetTCP: Net {
    |              `- note: class 'NetTCP' does not conform to the 'Sendable' protocol
 33 |
 34 | 	private var networkFailure: Bool = false
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:20:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectNet'
 18 | //
 19 |
 20 | import PerfectNet
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectNet'
 21 | import PerfectThread
 22 | import PerfectLib
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:236:25: warning: reference to var 'compatRoutes' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
234 | 	private func startInner() throws {
235 | 		// 1.0 compatability ONLY
236 | 		if let compatRoutes = compatRoutes {
    |                         `- warning: reference to var 'compatRoutes' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
237 | 			self.addRoutes(compatRoutes)
238 | 		}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-HTTP/Sources/PerfectHTTP/Routing.swift:594:12: note: var declared here
592 | // ALL code below this is obsolete but remains to provide compatability 1.0 based solutions.
593 | // For 1.0 compatability only.
594 | public var compatRoutes: Routes?
    |            `- note: var declared here
595 |
596 | // Holds the registered routes.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:296:7: warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
 31 |
 32 | /// Stand-alone HTTP server.
 33 | public class HTTPServer: ServerInstance {
    |              `- note: class 'HTTPServer' does not conform to the 'Sendable' protocol
 34 | 	public typealias certKeyPair = (sslCert: String, sslKey: String)
 35 | 	private var net: NetTCP?
    :
294 | 				if let `self` = self {
295 | 					netHandleQueue.async {
296 | 						self.handleConnection(net)
    |       `- warning: capture of 'self' with non-sendable type 'HTTPServer' in a '@Sendable' closure
297 | 					}
298 | 				}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServer.swift:296:29: warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
294 | 				if let `self` = self {
295 | 					netHandleQueue.async {
296 | 						self.handleConnection(net)
    |                             `- warning: capture of 'net' with non-sendable type 'NetTCP' in a '@Sendable' closure
297 | 					}
298 | 				}
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Net/Sources/PerfectNet/NetTCP.swift:32:14: note: class 'NetTCP' does not conform to the 'Sendable' protocol
 30 | /// Provides an asynchronous IO wrapper around a file descriptor.
 31 | /// Fully realized for TCP socket types but can also serve as a base for sockets from other families, such as with `NetNamedPipe`/AF_UNIX.
 32 | public class NetTCP: Net {
    |              `- note: class 'NetTCP' does not conform to the 'Sendable' protocol
 33 |
 34 | 	private var networkFailure: Bool = false
[310/317] Compiling PerfectHTTPServer HPACK.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:178:13: warning: static property 'table' is not concurrency-safe because non-'Sendable' type '[HeaderField]' may have shared mutable state; this is an error in the Swift 6 language mode
  24 | // Which is an implimentation of https://tools.ietf.org/html/rfc7541
  25 |
  26 | class HeaderField {
     |       `- note: class 'HeaderField' does not conform to the 'Sendable' protocol
  27 | 	static let headerEntryOverhead = 32
  28 |
     :
 176 | private struct StaticTable {
 177 |
 178 | 	static let table = [
     |             |- warning: static property 'table' is not concurrency-safe because non-'Sendable' type '[HeaderField]' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make static property 'table' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 179 | 		HeaderField(name: ":authority"),
 180 | 		HeaderField(name: ":method", value: "GET"),
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:749:13: warning: let 'huffmanEncoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanEncoder' may have shared mutable state; this is an error in the Swift 6 language mode
 588 | private let huffmanEOS = 256
 589 |
 590 | final class HuffmanEncoder {
     |             `- note: class 'HuffmanEncoder' does not conform to the 'Sendable' protocol
 591 |
 592 | 	let codes: [Int]
     :
 747 | }
 748 |
 749 | private let huffmanEncoderInstance = HuffmanEncoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
     |             |- warning: let 'huffmanEncoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanEncoder' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make let 'huffmanEncoderInstance' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
 751 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:750:13: warning: let 'huffmanDecoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanDecoder' may have shared mutable state; this is an error in the Swift 6 language mode
 640 | }
 641 |
 642 | final class HuffmanDecoder {
     |             `- note: class 'HuffmanDecoder' does not conform to the 'Sendable' protocol
 643 |
 644 | 	enum Exception: Error {
     :
 748 |
 749 | private let huffmanEncoderInstance = HuffmanEncoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
 750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
     |             |- warning: let 'huffmanDecoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanDecoder' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make let 'huffmanDecoderInstance' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 751 |
 752 | /// Encodes headers according to the HPACK standard.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2.swift:29:12: warning: var 'http2Debug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 | let http2ConnectionPreface = "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n"
28 |
29 | public var http2Debug = false
   |            |- warning: var 'http2Debug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'http2Debug' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: add '@MainActor' to make var 'http2Debug' part of global actor 'MainActor'
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |
31 | enum HTTP2StreamState {
[311/317] Compiling PerfectHTTPServer HTTP2.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:178:13: warning: static property 'table' is not concurrency-safe because non-'Sendable' type '[HeaderField]' may have shared mutable state; this is an error in the Swift 6 language mode
  24 | // Which is an implimentation of https://tools.ietf.org/html/rfc7541
  25 |
  26 | class HeaderField {
     |       `- note: class 'HeaderField' does not conform to the 'Sendable' protocol
  27 | 	static let headerEntryOverhead = 32
  28 |
     :
 176 | private struct StaticTable {
 177 |
 178 | 	static let table = [
     |             |- warning: static property 'table' is not concurrency-safe because non-'Sendable' type '[HeaderField]' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make static property 'table' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 179 | 		HeaderField(name: ":authority"),
 180 | 		HeaderField(name: ":method", value: "GET"),
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:749:13: warning: let 'huffmanEncoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanEncoder' may have shared mutable state; this is an error in the Swift 6 language mode
 588 | private let huffmanEOS = 256
 589 |
 590 | final class HuffmanEncoder {
     |             `- note: class 'HuffmanEncoder' does not conform to the 'Sendable' protocol
 591 |
 592 | 	let codes: [Int]
     :
 747 | }
 748 |
 749 | private let huffmanEncoderInstance = HuffmanEncoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
     |             |- warning: let 'huffmanEncoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanEncoder' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make let 'huffmanEncoderInstance' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
 751 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:750:13: warning: let 'huffmanDecoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanDecoder' may have shared mutable state; this is an error in the Swift 6 language mode
 640 | }
 641 |
 642 | final class HuffmanDecoder {
     |             `- note: class 'HuffmanDecoder' does not conform to the 'Sendable' protocol
 643 |
 644 | 	enum Exception: Error {
     :
 748 |
 749 | private let huffmanEncoderInstance = HuffmanEncoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
 750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
     |             |- warning: let 'huffmanDecoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanDecoder' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make let 'huffmanDecoderInstance' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 751 |
 752 | /// Encodes headers according to the HPACK standard.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2.swift:29:12: warning: var 'http2Debug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 | let http2ConnectionPreface = "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n"
28 |
29 | public var http2Debug = false
   |            |- warning: var 'http2Debug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'http2Debug' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: add '@MainActor' to make var 'http2Debug' part of global actor 'MainActor'
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |
31 | enum HTTP2StreamState {
[312/317] Compiling PerfectHTTPServer HTTP2Client.swift
[313/317] Compiling PerfectHTTPServer HTTP2Frame.swift
[314/317] Emitting module PerfectHTTPServer
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:178:13: warning: static property 'table' is not concurrency-safe because non-'Sendable' type '[HeaderField]' may have shared mutable state; this is an error in the Swift 6 language mode
  24 | // Which is an implimentation of https://tools.ietf.org/html/rfc7541
  25 |
  26 | class HeaderField {
     |       `- note: class 'HeaderField' does not conform to the 'Sendable' protocol
  27 | 	static let headerEntryOverhead = 32
  28 |
     :
 176 | private struct StaticTable {
 177 |
 178 | 	static let table = [
     |             |- warning: static property 'table' is not concurrency-safe because non-'Sendable' type '[HeaderField]' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make static property 'table' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 179 | 		HeaderField(name: ":authority"),
 180 | 		HeaderField(name: ":method", value: "GET"),
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:749:13: warning: let 'huffmanEncoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanEncoder' may have shared mutable state; this is an error in the Swift 6 language mode
 588 | private let huffmanEOS = 256
 589 |
 590 | final class HuffmanEncoder {
     |             `- note: class 'HuffmanEncoder' does not conform to the 'Sendable' protocol
 591 |
 592 | 	let codes: [Int]
     :
 747 | }
 748 |
 749 | private let huffmanEncoderInstance = HuffmanEncoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
     |             |- warning: let 'huffmanEncoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanEncoder' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make let 'huffmanEncoderInstance' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
 751 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HPACK.swift:750:13: warning: let 'huffmanDecoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanDecoder' may have shared mutable state; this is an error in the Swift 6 language mode
 640 | }
 641 |
 642 | final class HuffmanDecoder {
     |             `- note: class 'HuffmanDecoder' does not conform to the 'Sendable' protocol
 643 |
 644 | 	enum Exception: Error {
     :
 748 |
 749 | private let huffmanEncoderInstance = HuffmanEncoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
 750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
     |             |- warning: let 'huffmanDecoderInstance' is not concurrency-safe because non-'Sendable' type 'HuffmanDecoder' may have shared mutable state; this is an error in the Swift 6 language mode
     |             |- note: add '@MainActor' to make let 'huffmanDecoderInstance' part of global actor 'MainActor'
     |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 751 |
 752 | /// Encodes headers according to the HPACK standard.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2.swift:29:12: warning: var 'http2Debug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
27 | let http2ConnectionPreface = "PRI * HTTP/2.0\r\n\r\nSM\r\n\r\n"
28 |
29 | public var http2Debug = false
   |            |- warning: var 'http2Debug' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
   |            |- note: convert 'http2Debug' to a 'let' constant to make 'Sendable' shared state immutable
   |            |- note: add '@MainActor' to make var 'http2Debug' part of global actor 'MainActor'
   |            `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |
31 | enum HTTP2StreamState {
/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
 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
 74 | 	#endif
 75 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:61:21: warning: static property 'pinLock' is not concurrency-safe because non-'Sendable' type 'Threading.Lock' may have shared mutable state; this is an error in the Swift 6 language mode
 59 | 	}
 60 |
 61 | 	private static let pinLock = Threading.Lock()
    |                     `- warning: static property 'pinLock' is not concurrency-safe because non-'Sendable' type 'Threading.Lock' may have shared mutable state; this is an error in the Swift 6 language mode
 62 | 	private static var pins = Set<HTTP2Session>()
 63 |
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Thread/Sources/PerfectThread/Threading.swift:68:8: note: class 'Lock' does not conform to the 'Sendable' protocol
 66 | 	/// The lock can be held by only one thread. Other threads attempting to secure the lock while it is held will block.
 67 | 	/// The lock is initialized as being recursive. The locking thread may lock multiple times, but each lock should be accompanied by an unlock.
 68 | 	class Lock {
    |        `- note: class 'Lock' does not conform to the 'Sendable' protocol
 69 | 		var mutex = pthread_mutex_t()
 70 | 		/// Initialize a new lock object.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:11:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
  9 | import PerfectNet
 10 | import PerfectLib
 11 | import PerfectThread
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
 12 | import PerfectHTTP
 13 |
    :
 59 | 	}
 60 |
 61 | 	private static let pinLock = Threading.Lock()
    |                     |- note: add '@MainActor' to make static property 'pinLock' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 62 | 	private static var pins = Set<HTTP2Session>()
 63 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP2/HTTP2Session.swift:62:21: warning: static property 'pins' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 60 |
 61 | 	private static let pinLock = Threading.Lock()
 62 | 	private static var pins = Set<HTTP2Session>()
    |                     |- warning: static property 'pins' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                     |- note: convert 'pins' to a 'let' constant to make 'Sendable' shared state immutable
    |                     |- note: add '@MainActor' to make static property 'pins' part of global actor 'MainActor'
    |                     `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 63 |
 64 | 	static func ==(lhs: HTTP2Session, rhs: HTTP2Session) -> Bool {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerEx.swift:16:20: warning: static property 'defaultCipherList' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 14 |
 15 | public struct TLSConfiguration {
 16 | 	public static var defaultCipherList = [
    |                    |- warning: static property 'defaultCipherList' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |                    |- note: convert 'defaultCipherList' to a 'let' constant to make 'Sendable' shared state immutable
    |                    |- note: add '@MainActor' to make static property 'defaultCipherList' part of global actor 'MainActor'
    |                    `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 17 | 		"ECDHE-ECDSA-AES256-GCM-SHA384",
 18 | 		"ECDHE-ECDSA-AES128-GCM-SHA256",
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerEx.swift:69:13: warning: var 'processRunAs' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
 67 | }
 68 |
 69 | private var processRunAs: String?
    |             |- warning: var 'processRunAs' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: convert 'processRunAs' to a 'let' constant to make 'Sendable' shared state immutable
    |             |- note: add '@MainActor' to make var 'processRunAs' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 70 |
 71 | public extension HTTPServer {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerEx.swift:198:7: warning: stored property 'configuration' of 'Sendable'-conforming struct 'LaunchFailure' has non-sendable type 'HTTPServer.Server'; this is an error in the Swift 6 language mode
 76 | 	}
 77 |
 78 | 	struct Server {
    |         `- note: consider making struct 'Server' conform to the 'Sendable' protocol
 79 | 		public let name: String
 80 | 		public let port: Int
    :
196 | 	struct LaunchFailure: Error {
197 | 		let message: String
198 | 		let configuration: Server
    |       `- warning: stored property 'configuration' of 'Sendable'-conforming struct 'LaunchFailure' has non-sendable type 'HTTPServer.Server'; this is an error in the Swift 6 language mode
199 | 	}
200 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerExConfig.swift:45:13: warning: let 'exeHandle' is not concurrency-safe because non-'Sendable' type 'UnsafeMutableRawPointer?' may have shared mutable state; this is an error in the Swift 6 language mode
 43 | //__TZFV17PerfectHTTPServer11HTTPHandler8redirectfzT4dataGVs10DictionarySSP___FTP11PerfectHTTP11HTTPRequest_PS2_12HTTPResponse__T_
 44 | private let symbolPrefixes = ["_TF", "_TFV", "_TZFC", "_TZFO", "_TZFOV", "_TZFV"]
 45 | private let exeHandle = dlopen(nil, RTLD_NOW)
    |             |- warning: let 'exeHandle' is not concurrency-safe because non-'Sendable' type 'UnsafeMutableRawPointer?' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: add '@MainActor' to make let 'exeHandle' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 | private func findFunc(_ named: String, suffixes: [String]) -> UnsafeMutableRawPointer? {
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerExConfig.swift:192:13: warning: let 'kv' is not concurrency-safe because non-'Sendable' type '[String : HTTPFilterPriority]' may have shared mutable state; this is an error in the Swift 6 language mode
190 | // DRAGONS GONE -------------------------------------------
191 |
192 | private let kv: [String:HTTPFilterPriority] = ["low":.low, "medium":.medium, "high":.high]
    |             `- warning: let 'kv' is not concurrency-safe because non-'Sendable' type '[String : HTTPFilterPriority]' may have shared mutable state; this is an error in the Swift 6 language mode
193 |
194 | func filtersFrom(data: [[String:Any]]) throws -> [(HTTPRequestFilter, HTTPFilterPriority)] {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-HTTP/Sources/PerfectHTTP/HTTPFilter.swift:21:13: note: enum 'HTTPFilterPriority' does not conform to the 'Sendable' protocol
19 |
20 | /// Execution priority for request filters.
21 | public enum HTTPFilterPriority {
   |             `- note: enum 'HTTPFilterPriority' does not conform to the 'Sendable' protocol
22 | 	/// Lowest priority. Run last.
23 | 	case low
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerExConfig.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectHTTP'
  6 | //
  7 |
  8 | import PerfectHTTP
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectHTTP'
  9 | import PerfectLib
 10 | import PerfectNet
    :
190 | // DRAGONS GONE -------------------------------------------
191 |
192 | private let kv: [String:HTTPFilterPriority] = ["low":.low, "medium":.medium, "high":.high]
    |             |- note: add '@MainActor' to make let 'kv' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
193 |
194 | func filtersFrom(data: [[String:Any]]) throws -> [(HTTPRequestFilter, HTTPFilterPriority)] {
[315/317] Compiling PerfectHTTPServer HTTP11Request.swift
<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/HTTP11/HTTP11Request.swift:386:44: warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
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
387 | 			workingBuffer.removeAll()
388 | 		case .headerValue:
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:443:8: warning: capture of 'self' with non-sendable type 'HTTP11Request' in a '@Sendable' closure
 43 |
 44 |
 45 | class HTTP11Request: HTTPRequest {
    |       `- note: class 'HTTP11Request' does not conform to the 'Sendable' protocol
 46 | 	var method: HTTPMethod = .get
 47 | 	var path: String {
    :
441 | 					if b.count == httpReadSize {
442 | 						netHandleQueue.async {
443 | 							self.readRequest(callback: callback)
    |        `- warning: capture of 'self' with non-sendable type 'HTTP11Request' in a '@Sendable' closure
444 | 						}
445 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:443:35: warning: capture of 'callback' with non-sendable type 'HTTP11Request.StatusCallback' (aka '(HTTPResponseStatus) -> ()') in a '@Sendable' closure
441 | 					if b.count == httpReadSize {
442 | 						netHandleQueue.async {
443 | 							self.readRequest(callback: callback)
    |                                   |- warning: capture of 'callback' with non-sendable type 'HTTP11Request.StatusCallback' (aka '(HTTPResponseStatus) -> ()') in a '@Sendable' closure
    |                                   `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
444 | 						}
445 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:467:7: warning: initialization of 'UnsafePointer<UInt8>' results in a dangling pointer
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
468 | 			http_parser_execute(&parser, &parserSettings, $0, b.count)
469 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Response.swift:303:17: warning: capture of 'callback' with non-sendable type '(Bool) -> ()' in a '@Sendable' closure
301 |             }
302 |             netHandleQueue.async {
303 |                 callback(true)
    |                 |- warning: capture of 'callback' with non-sendable type '(Bool) -> ()' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
304 |             }
305 |         }
[316/317] Compiling PerfectHTTPServer HTTP11Response.swift
<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/HTTP11/HTTP11Request.swift:386:44: warning: initialization of 'UnsafeMutableRawPointer' results in a dangling pointer
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
387 | 			workingBuffer.removeAll()
388 | 		case .headerValue:
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:443:8: warning: capture of 'self' with non-sendable type 'HTTP11Request' in a '@Sendable' closure
 43 |
 44 |
 45 | class HTTP11Request: HTTPRequest {
    |       `- note: class 'HTTP11Request' does not conform to the 'Sendable' protocol
 46 | 	var method: HTTPMethod = .get
 47 | 	var path: String {
    :
441 | 					if b.count == httpReadSize {
442 | 						netHandleQueue.async {
443 | 							self.readRequest(callback: callback)
    |        `- warning: capture of 'self' with non-sendable type 'HTTP11Request' in a '@Sendable' closure
444 | 						}
445 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:443:35: warning: capture of 'callback' with non-sendable type 'HTTP11Request.StatusCallback' (aka '(HTTPResponseStatus) -> ()') in a '@Sendable' closure
441 | 					if b.count == httpReadSize {
442 | 						netHandleQueue.async {
443 | 							self.readRequest(callback: callback)
    |                                   |- warning: capture of 'callback' with non-sendable type 'HTTP11Request.StatusCallback' (aka '(HTTPResponseStatus) -> ()') in a '@Sendable' closure
    |                                   `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
444 | 						}
445 | 					} else {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Request.swift:467:7: warning: initialization of 'UnsafePointer<UInt8>' results in a dangling pointer
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
468 | 			http_parser_execute(&parser, &parserSettings, $0, b.count)
469 | 		}
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTP11/HTTP11Response.swift:303:17: warning: capture of 'callback' with non-sendable type '(Bool) -> ()' in a '@Sendable' closure
301 |             }
302 |             netHandleQueue.async {
303 |                 callback(true)
    |                 |- warning: capture of 'callback' with non-sendable type '(Bool) -> ()' in a '@Sendable' closure
    |                 `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
304 |             }
305 |         }
[317/317] Compiling PerfectHTTPServer HTTPServerExConfig.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerExConfig.swift:45:13: warning: let 'exeHandle' is not concurrency-safe because non-'Sendable' type 'UnsafeMutableRawPointer?' may have shared mutable state; this is an error in the Swift 6 language mode
 43 | //__TZFV17PerfectHTTPServer11HTTPHandler8redirectfzT4dataGVs10DictionarySSP___FTP11PerfectHTTP11HTTPRequest_PS2_12HTTPResponse__T_
 44 | private let symbolPrefixes = ["_TF", "_TFV", "_TZFC", "_TZFO", "_TZFOV", "_TZFV"]
 45 | private let exeHandle = dlopen(nil, RTLD_NOW)
    |             |- warning: let 'exeHandle' is not concurrency-safe because non-'Sendable' type 'UnsafeMutableRawPointer?' may have shared mutable state; this is an error in the Swift 6 language mode
    |             |- note: add '@MainActor' to make let 'exeHandle' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
 46 |
 47 | private func findFunc(_ named: String, suffixes: [String]) -> UnsafeMutableRawPointer? {
Swift.Optional:1:21: note: generic enum 'Optional' does not conform to the 'Sendable' protocol
1 | @frozen public enum Optional<Wrapped> : ~Copyable where Wrapped : ~Copyable {
  |                     `- note: generic enum 'Optional' does not conform to the 'Sendable' protocol
2 |     case none
3 |     case some(Wrapped)
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerExConfig.swift:192:13: warning: let 'kv' is not concurrency-safe because non-'Sendable' type '[String : HTTPFilterPriority]' may have shared mutable state; this is an error in the Swift 6 language mode
190 | // DRAGONS GONE -------------------------------------------
191 |
192 | private let kv: [String:HTTPFilterPriority] = ["low":.low, "medium":.medium, "high":.high]
    |             `- warning: let 'kv' is not concurrency-safe because non-'Sendable' type '[String : HTTPFilterPriority]' may have shared mutable state; this is an error in the Swift 6 language mode
193 |
194 | func filtersFrom(data: [[String:Any]]) throws -> [(HTTPRequestFilter, HTTPFilterPriority)] {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-HTTP/Sources/PerfectHTTP/HTTPFilter.swift:21:13: note: enum 'HTTPFilterPriority' does not conform to the 'Sendable' protocol
19 |
20 | /// Execution priority for request filters.
21 | public enum HTTPFilterPriority {
   |             `- note: enum 'HTTPFilterPriority' does not conform to the 'Sendable' protocol
22 | 	/// Lowest priority. Run last.
23 | 	case low
/Users/admin/builder/spi-builder-workspace/Sources/PerfectHTTPServer/HTTPServerExConfig.swift:8:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectHTTP'
  6 | //
  7 |
  8 | import PerfectHTTP
    | `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectHTTP'
  9 | import PerfectLib
 10 | import PerfectNet
    :
190 | // DRAGONS GONE -------------------------------------------
191 |
192 | private let kv: [String:HTTPFilterPriority] = ["low":.low, "medium":.medium, "high":.high]
    |             |- note: add '@MainActor' to make let 'kv' part of global actor 'MainActor'
    |             `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
193 |
194 | func filtersFrom(data: [[String:Any]]) throws -> [(HTTPRequestFilter, HTTPFilterPriority)] {
Build complete! (50.93s)
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/810] Fetching perfect-http
[2/1379] Fetching perfect-http, perfect-net
[489/1715] Fetching perfect-http, perfect-net, perfect-czlib-src
Fetched https://github.com/PerfectlySoft/Perfect-HTTP.git from cache (1.46s)
Fetched https://github.com/PerfectlySoft/Perfect-Net.git from cache (1.46s)
Fetched https://github.com/PerfectlySoft/Perfect-CZlib-src.git from cache (1.46s)
Computing version for https://github.com/PerfectlySoft/Perfect-CZlib-src.git
Computed https://github.com/PerfectlySoft/Perfect-CZlib-src.git at 0.0.4 (2.07s)
Computing version for https://github.com/PerfectlySoft/Perfect-Net.git
Computed https://github.com/PerfectlySoft/Perfect-Net.git at 3.3.0 (0.60s)
Fetching https://github.com/PerfectlySoft/Perfect-Thread.git
Fetching https://github.com/PerfectlySoft/Perfect-Crypto.git
[1/379] Fetching perfect-thread
[161/984] Fetching perfect-thread, perfect-crypto
Fetched https://github.com/PerfectlySoft/Perfect-Crypto.git from cache (1.27s)
Fetched https://github.com/PerfectlySoft/Perfect-Thread.git from cache (1.27s)
Computing version for https://github.com/PerfectlySoft/Perfect-Crypto.git
Computed https://github.com/PerfectlySoft/Perfect-Crypto.git at 3.3.0 (1.86s)
Fetching https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Fetching https://github.com/PerfectlySoft/PerfectLib.git
[1/10765] Fetching perfectlib
[2/14725] Fetching perfectlib, perfect-copenssl
Fetched https://github.com/PerfectlySoft/Perfect-COpenSSL.git from cache (28.25s)
Fetched https://github.com/PerfectlySoft/PerfectLib.git from cache (28.25s)
Computing version for https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Computed https://github.com/PerfectlySoft/Perfect-COpenSSL.git at 4.0.2 (28.85s)
Computing version for https://github.com/PerfectlySoft/Perfect-Thread.git
Computed https://github.com/PerfectlySoft/Perfect-Thread.git at 3.0.7 (0.58s)
Computing version for https://github.com/PerfectlySoft/PerfectLib.git
Computed https://github.com/PerfectlySoft/PerfectLib.git at 3.1.4 (0.92s)
Computing version for https://github.com/PerfectlySoft/Perfect-HTTP.git
Computed https://github.com/PerfectlySoft/Perfect-HTTP.git at 3.3.0 (0.59s)
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-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-Thread.git
Working copy of https://github.com/PerfectlySoft/Perfect-Thread.git resolved at 3.0.7
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-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-Net.git
Working copy of https://github.com/PerfectlySoft/Perfect-Net.git resolved at 3.3.0
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.