Build Information
Successful build of PerfectNotifications, reference master (1ae0fa
), with Swift 6.0 for macOS (SPM) on 31 Oct 2024 04:00:40 UTC.
Swift 6 data race errors: 10
Build Command
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Build Log
========================================
RunAll
========================================
Builder version: 4.56.0
Interrupt handler set up.
========================================
Checkout
========================================
Clone URL: https://github.com/perfectlysoft/perfect-notifications.git
Reference: master
Initialized empty Git repository in /Users/admin/builder/spi-builder-workspace/.git/
From https://github.com/perfectlysoft/perfect-notifications
* branch master -> FETCH_HEAD
* [new branch] master -> origin/master
HEAD is now at 1ae0fa9 readmes
Cloned https://github.com/perfectlysoft/perfect-notifications.git
Revision (git rev-parse @):
1ae0fa989ea305f0e36bb7acbb8f455f24650144
SUCCESS checkout https://github.com/perfectlysoft/perfect-notifications.git at master
Fetching https://github.com/PerfectlySoft/Perfect-Thread.git
Fetching https://github.com/PerfectlySoft/Perfect-Net.git
[1/570] Fetching perfect-net
[24/949] Fetching perfect-net, perfect-thread
Fetched https://github.com/PerfectlySoft/Perfect-Net.git from cache (0.77s)
[141/379] Fetching perfect-thread
Fetched https://github.com/PerfectlySoft/Perfect-Thread.git from cache (0.90s)
Computing version for https://github.com/PerfectlySoft/Perfect-Net.git
Computed https://github.com/PerfectlySoft/Perfect-Net.git at 4.0.0 (0.67s)
Fetching https://github.com/PerfectlySoft/Perfect-Crypto.git
[1/612] Fetching perfect-crypto
Fetched https://github.com/PerfectlySoft/Perfect-Crypto.git from cache (0.88s)
Computing version for https://github.com/PerfectlySoft/Perfect-Crypto.git
Computed https://github.com/PerfectlySoft/Perfect-Crypto.git at 4.0.0 (0.68s)
Fetching https://github.com/PerfectlySoft/PerfectLib.git
Fetching https://github.com/PerfectlySoft/Perfect-COpenSSL.git
[1/3961] Fetching perfect-copenssl
[81/14745] Fetching perfect-copenssl, perfectlib
Fetched https://github.com/PerfectlySoft/PerfectLib.git from cache (7.45s)
Fetched https://github.com/PerfectlySoft/Perfect-COpenSSL.git from cache (7.45s)
Computing version for https://github.com/PerfectlySoft/PerfectLib.git
Computed https://github.com/PerfectlySoft/PerfectLib.git at 4.0.1 (0.65s)
Computing version for https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Computed https://github.com/PerfectlySoft/Perfect-COpenSSL.git at 4.0.2 (2.65s)
Computing version for https://github.com/PerfectlySoft/Perfect-Thread.git
Computed https://github.com/PerfectlySoft/Perfect-Thread.git at 3.0.7 (0.67s)
Creating working copy for https://github.com/PerfectlySoft/PerfectLib.git
Working copy of https://github.com/PerfectlySoft/PerfectLib.git resolved at 4.0.1
Creating working copy for https://github.com/PerfectlySoft/Perfect-Crypto.git
Working copy of https://github.com/PerfectlySoft/Perfect-Crypto.git resolved at 4.0.0
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-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-Net.git
Working copy of https://github.com/PerfectlySoft/Perfect-Net.git resolved at 4.0.0
========================================
ResolveProductDependencies
========================================
Resolving dependencies ...
{
"identity": ".resolve-product-dependencies",
"name": "resolve-dependencies",
"url": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies",
"dependencies": [
{
"identity": "perfect-notifications",
"name": "PerfectNotifications",
"url": "https://github.com/perfectlysoft/perfect-notifications.git",
"version": "unspecified",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/perfect-notifications",
"dependencies": [
{
"identity": "perfect-net",
"name": "PerfectNet",
"url": "https://github.com/PerfectlySoft/Perfect-Net.git",
"version": "4.0.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Perfect-Net",
"dependencies": [
{
"identity": "perfect-crypto",
"name": "PerfectCrypto",
"url": "https://github.com/PerfectlySoft/Perfect-Crypto.git",
"version": "4.0.0",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Perfect-Crypto",
"dependencies": [
{
"identity": "perfectlib",
"name": "PerfectLib",
"url": "https://github.com/PerfectlySoft/PerfectLib.git",
"version": "4.0.1",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/PerfectLib",
"dependencies": [
]
},
{
"identity": "perfect-thread",
"name": "PerfectThread",
"url": "https://github.com/PerfectlySoft/Perfect-Thread.git",
"version": "3.0.7",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Perfect-Thread",
"dependencies": [
]
},
{
"identity": "perfect-copenssl",
"name": "COpenSSL",
"url": "https://github.com/PerfectlySoft/Perfect-COpenSSL.git",
"version": "4.0.2",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Perfect-COpenSSL",
"dependencies": [
]
}
]
},
{
"identity": "perfect-thread",
"name": "PerfectThread",
"url": "https://github.com/PerfectlySoft/Perfect-Thread.git",
"version": "3.0.7",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Perfect-Thread",
"dependencies": [
]
}
]
},
{
"identity": "perfect-thread",
"name": "PerfectThread",
"url": "https://github.com/PerfectlySoft/Perfect-Thread.git",
"version": "3.0.7",
"path": "/Users/admin/builder/spi-builder-workspace/.resolve-product-dependencies/.build/checkouts/Perfect-Thread",
"dependencies": [
]
}
]
}
]
}
Fetching https://github.com/perfectlysoft/perfect-notifications.git
[1/282] Fetching perfect-notifications
Fetched https://github.com/perfectlysoft/perfect-notifications.git from cache (0.80s)
Fetching https://github.com/PerfectlySoft/Perfect-Thread.git from cache
Fetching https://github.com/PerfectlySoft/Perfect-Net.git from cache
Fetched https://github.com/PerfectlySoft/Perfect-Net.git from cache (0.50s)
Fetched https://github.com/PerfectlySoft/Perfect-Thread.git from cache (0.50s)
Computing version for https://github.com/PerfectlySoft/Perfect-Net.git
Computed https://github.com/PerfectlySoft/Perfect-Net.git at 4.0.0 (0.02s)
Fetching https://github.com/PerfectlySoft/Perfect-Crypto.git from cache
Fetched https://github.com/PerfectlySoft/Perfect-Crypto.git from cache (0.48s)
Computing version for https://github.com/PerfectlySoft/Perfect-Crypto.git
Computed https://github.com/PerfectlySoft/Perfect-Crypto.git at 4.0.0 (0.02s)
Fetching https://github.com/PerfectlySoft/PerfectLib.git from cache
Fetching https://github.com/PerfectlySoft/Perfect-COpenSSL.git from cache
Fetched https://github.com/PerfectlySoft/PerfectLib.git from cache (0.47s)
Fetched https://github.com/PerfectlySoft/Perfect-COpenSSL.git from cache (0.47s)
Computing version for https://github.com/PerfectlySoft/PerfectLib.git
Computed https://github.com/PerfectlySoft/PerfectLib.git at 4.0.1 (0.03s)
Computing version for https://github.com/PerfectlySoft/Perfect-COpenSSL.git
Computed https://github.com/PerfectlySoft/Perfect-COpenSSL.git at 4.0.2 (0.02s)
Computing version for https://github.com/PerfectlySoft/Perfect-Thread.git
Computed https://github.com/PerfectlySoft/Perfect-Thread.git at 3.0.7 (0.02s)
Creating working copy for https://github.com/PerfectlySoft/Perfect-Net.git
Working copy of https://github.com/PerfectlySoft/Perfect-Net.git resolved at 4.0.0
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-notifications.git
Working copy of https://github.com/perfectlysoft/perfect-notifications.git resolved at master (1ae0fa9)
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/PerfectLib.git
Working copy of https://github.com/PerfectlySoft/PerfectLib.git resolved at 4.0.1
Creating working copy for https://github.com/PerfectlySoft/Perfect-Crypto.git
Working copy of https://github.com/PerfectlySoft/Perfect-Crypto.git resolved at 4.0.0
warning: '.resolve-product-dependencies': dependency 'perfect-notifications' is not used by any target
Found 2 product dependencies
- PerfectNet
- PerfectThread
========================================
Build
========================================
Selected platform: macosSpm
Swift version: 6.0
Building package at path: $PWD
https://github.com/perfectlysoft/perfect-notifications.git
Running build ...
env DEVELOPER_DIR=/Applications/Xcode-16.1.0.app xcrun swift build --arch arm64 -Xswiftc -Xfrontend -Xswiftc -stats-output-dir -Xswiftc -Xfrontend -Xswiftc .stats -Xswiftc -strict-concurrency=complete
Building for debugging...
[0/239] Write sources
[5/239] Write swift-version--7754E27361AE5C74.txt
[6/239] Compiling COpenSSL xts128.c
[7/239] Compiling COpenSSL md5_.c
[8/239] Compiling COpenSSL md_rand.c
[9/239] Compiling COpenSSL ech_.c
[10/239] Compiling COpenSSL x509spki.c
[11/239] Compiling COpenSSL mdc2_one.c
[12/239] Compiling COpenSSL x509type.c
[13/239] Compiling COpenSSL x_.c
[14/253] Compiling COpenSSL x509rset.c
[15/253] Compiling COpenSSL xcbc_enc.c
[16/253] Compiling COpenSSL x509name.c
[17/253] Compiling COpenSSL x509cset.c
[18/253] Compiling COpenSSL wrap128.c
[19/253] Compiling COpenSSL wp_.c
[20/253] Compiling COpenSSL uid.c
[21/253] Compiling COpenSSL v3err.c
[22/253] Compiling COpenSSL txt_db.c
[23/253] Compiling COpenSSL v3_lib.c
[24/253] Compiling COpenSSL x509_.c
[25/253] Compiling COpenSSL tb_store.c
[26/253] Compiling COpenSSL tb_rsa.c
[27/253] Compiling COpenSSL v3_.c
[28/253] Compiling COpenSSL tb_rand.c
[29/253] Compiling COpenSSL tb_ecdsa.c
[30/253] Compiling COpenSSL tb_pkmeth.c
[31/253] Compiling COpenSSL tb_ecdh.c
[32/253] Compiling COpenSSL tb_dsa.c
[33/253] Compiling COpenSSL tb_digest.c
[33/253] Compiling COpenSSL tb_dh.c
[34/253] Compiling COpenSSL tb_cipher.c
[36/253] Compiling COpenSSL tb_asnmth.c
[37/253] Compiling COpenSSL str2key.c
[38/253] Compiling COpenSSL t_.c
[39/253] Compiling COpenSSL tasn_.c
[40/253] Compiling COpenSSL stack.c
[41/253] Compiling COpenSSL ui_.c
[42/253] Compiling COpenSSL sha_.c
[43/253] Compiling COpenSSL srp_.c
[44/253] Compiling COpenSSL sha512.c
[45/253] Compiling COpenSSL sha256.c
[46/253] Compiling COpenSSL t1_.c
[47/253] Compiling COpenSSL sha1dgst.c
[48/253] Compiling COpenSSL th-lock.c
[49/253] Compiling COpenSSL sha1_one.c
[50/253] Compiling COpenSSL set_key.c
[51/253] Compiling COpenSSL seed_.c
[52/253] Compiling COpenSSL ts_.c
[53/253] Compiling COpenSSL rsaz_exp.c
[54/253] Compiling COpenSSL seed.c
[55/253] Compiling COpenSSL ssl_.c
[56/253] Compiling COpenSSL rpc_enc.c
[57/253] Compiling COpenSSL s2_.c
[58/253] Compiling COpenSSL read2pwd.c
[59/253] Compiling COpenSSL rmd_.c
[60/253] Compiling COpenSSL rc2ofb64.c
[61/253] Compiling COpenSSL s23_.c
[62/253] Compiling COpenSSL rc2cfb64.c
[63/253] Compiling COpenSSL rc4_.c
[64/253] Compiling COpenSSL tls_srp.c
[65/253] Compiling COpenSSL rc2_.c
[66/253] Compiling COpenSSL qud_cksm.c
[67/253] Compiling COpenSSL randfile.c
[68/253] Compiling COpenSSL rsa_.c
[69/253] Compiling COpenSSL pqueue.c
[70/253] Compiling COpenSSL rand_.c
[71/253] Compiling COpenSSL s3_.c
[72/253] Compiling COpenSSL pvkfmt.c
[73/253] Compiling COpenSSL pkcs7err.c
[74/253] Compiling COpenSSL pmeth_.c
[75/253] Compiling COpenSSL pk12err.c
[76/253] Compiling COpenSSL pcbc_enc.c
[77/253] Compiling COpenSSL pk7_.c
[78/253] Compiling COpenSSL pcy_.c
[79/253] Compiling COpenSSL p8_pkey.c
[80/253] Compiling COpenSSL p_.c
[81/253] Compiling COpenSSL pem_.c
[82/253] Compiling COpenSSL ofb_enc.c
[83/253] Compiling COpenSSL openbsd_hw.c
[84/253] Compiling COpenSSL ofb64enc.c
[85/253] Compiling COpenSSL ofb64ede.c
[86/253] Compiling COpenSSL p5_.c
[87/253] Compiling COpenSSL ofb128.c
[88/253] Compiling COpenSSL p12_.c
[89/253] Compiling COpenSSL obj_.c
[90/253] Compiling COpenSSL ocsp_.c
[91/253] Compiling COpenSSL nsseq.c
[92/253] Compiling COpenSSL mem_.c
[93/253] Compiling COpenSSL o_.c
[94/253] Compiling COpenSSL names.c
[95/253] Compiling COpenSSL n_pkey.c
[96/253] Compiling COpenSSL mem.c
[97/253] Compiling COpenSSL mdc2dgst.c
[98/253] Compiling COpenSSL md4_.c
[99/253] Compiling COpenSSL m_wp.c
[100/253] Compiling COpenSSL m_sha1.c
[101/253] Compiling COpenSSL m_sigver.c
[102/253] Compiling COpenSSL m_sha.c
[103/253] Compiling COpenSSL m_ripemd.c
[104/253] Compiling COpenSSL m_null.c
[105/253] Compiling COpenSSL m_mdc2.c
[106/253] Compiling COpenSSL m_md5.c
[107/253] Compiling COpenSSL m_md4.c
[108/253] Compiling COpenSSL m_md2.c
[109/253] Compiling COpenSSL lhash.c
[110/253] Compiling COpenSSL m_dss1.c
[111/253] Compiling COpenSSL m_dss.c
[112/253] Compiling COpenSSL lh_stats.c
[113/253] Compiling COpenSSL m_ecdsa.c
[114/253] Compiling COpenSSL krb5_asn.c
[115/253] Compiling COpenSSL i_.c
[116/253] Compiling COpenSSL kssl.c
[117/253] Compiling COpenSSL i2d_.c
[118/253] Compiling COpenSSL hmac.c
[119/253] Compiling COpenSSL hm_.c
[120/253] Compiling COpenSSL gosthash.c
[121/253] Compiling COpenSSL fips_ers.c
[122/253] Compiling COpenSSL gost89.c
[123/253] Compiling COpenSSL gost_.c
[124/253] Compiling COpenSSL gost94_keyx.c
[125/253] Compiling COpenSSL getenv.c
[126/253] Compiling COpenSSL gost2001_keyx.c
[127/253] Compiling COpenSSL gcm128.c
[128/253] Compiling COpenSSL fcrypt_b.c
[129/253] Compiling COpenSSL fcrypt.c
[130/253] Compiling COpenSSL gost2001.c
[131/253] Compiling COpenSSL f_.c
[132/253] Compiling COpenSSL ex_data.c
[133/253] Compiling COpenSSL evp_.c
[134/253] Compiling COpenSSL err.c
[135/253] Compiling COpenSSL enc_.c
[136/253] Compiling COpenSSL err_.c
[137/253] Compiling COpenSSL ede_cbcm_enc.c
[138/253] Compiling COpenSSL encode.c
[139/253] Compiling COpenSSL ecp_nistp256.c
[140/253] Compiling COpenSSL ecp_nistp521.c
[140/253] Compiling COpenSSL ecp_nistputil.c
[142/253] Compiling COpenSSL ecp_nistp224.c
[143/253] Compiling COpenSSL ecs_.c
[144/253] Compiling COpenSSL eng_.c
[145/253] Compiling COpenSSL ecp_oct.c
[146/253] Compiling COpenSSL ecp_smpl.c
[147/253] Compiling COpenSSL ebcdic.c
[148/253] Compiling COpenSSL ecb_enc.c
[149/253] Compiling COpenSSL ecp_mont.c
[150/253] Compiling COpenSSL ecp_nist.c
[151/253] Compiling COpenSSL ecb3_enc.c
[152/253] Compiling COpenSSL e_xcbc_d.c
[153/253] Compiling COpenSSL eck_prn.c
[154/253] Compiling COpenSSL e_ubsec_err.c
[155/253] Compiling COpenSSL ec2_.c
[156/253] Compiling COpenSSL e_sureware_err.c
[157/253] Compiling COpenSSL e_rc5.c
[158/253] Compiling COpenSSL e_ubsec.c
[159/253] Compiling COpenSSL e_seed.c
[160/253] Compiling COpenSSL e_rc4_hmac_md5.c
[161/253] Compiling COpenSSL e_sureware.c
[162/253] Compiling COpenSSL e_rc4.c
[163/253] Compiling COpenSSL e_rc2.c
[164/253] Compiling COpenSSL e_nuron_err.c
[165/253] Compiling COpenSSL ec_.c
[166/253] Compiling COpenSSL e_old.c
[167/253] Compiling COpenSSL e_padlock.c
[168/253] Compiling COpenSSL e_null.c
[169/253] Compiling COpenSSL e_gost_err.c
[170/253] Compiling COpenSSL e_nuron.c
[171/253] Compiling COpenSSL e_idea.c
[172/253] Compiling COpenSSL e_gmp_err.c
[173/253] Compiling COpenSSL e_gmp.c
[174/253] Compiling COpenSSL e_des3.c
[175/253] Compiling COpenSSL e_des.c
[176/253] Compiling COpenSSL e_chil_err.c
[177/253] Compiling COpenSSL e_cswift_err.c
[178/253] Compiling COpenSSL e_cast.c
[179/253] Compiling COpenSSL e_chil.c
[180/253] Compiling COpenSSL e_capi_err.c
[181/253] Compiling COpenSSL e_cswift.c
[182/253] Compiling COpenSSL e_capi.c
[183/253] Compiling COpenSSL e_camellia.c
[184/253] Compiling COpenSSL e_atalla_err.c
[185/253] Compiling COpenSSL e_4758cca_err.c
[186/253] Compiling COpenSSL e_bf.c
[187/253] Compiling COpenSSL e_aep_err.c
[188/253] Compiling COpenSSL e_aes_cbc_hmac_sha256.c
[189/253] Compiling COpenSSL e_aes_cbc_hmac_sha1.c
[190/253] Compiling COpenSSL e_atalla.c
[191/253] Compiling COpenSSL dso_.c
[192/253] Compiling COpenSSL e_aes.c
[193/253] Compiling COpenSSL des_old2.c
[194/253] Compiling COpenSSL e_4758cca.c
[195/253] Compiling COpenSSL des_old.c
[196/253] Compiling COpenSSL e_aep.c
[197/253] Compiling COpenSSL digest.c
[198/253] Compiling COpenSSL cversion.c
[199/253] Compiling COpenSSL ctr128.c
[200/253] Compiling COpenSSL des_enc.c
[201/253] Compiling COpenSSL dsa_.c
[202/253] Compiling COpenSSL dh_.c
[203/253] Compiling COpenSSL cryptlib.c
[204/253] Compiling COpenSSL d2i_.c
[205/253] Compiling COpenSSL cpt_err.c
[206/253] Compiling COpenSSL d1_lib.c
[207/253] Compiling COpenSSL comp_.c
[208/253] Compiling COpenSSL cmll_.c
[209/253] Compiling COpenSSL cfb_enc.c
[210/253] Compiling COpenSSL cfb64enc.c
[211/253] Compiling COpenSSL cfb64ede.c
[212/253] Compiling COpenSSL cm_.c
[213/253] Compiling COpenSSL cmac.c
[214/253] Compiling COpenSSL cfb128.c
[215/253] Compiling COpenSSL d1_.c
[216/253] Compiling COpenSSL ccm128.c
[217/253] Compiling COpenSSL cbc3_enc.c
[218/253] Compiling COpenSSL cbc128.c
[219/253] Compiling COpenSSL cbc_.c
[220/253] Compiling COpenSSL camellia.c
[221/253] Compiling COpenSSL conf_.c
[222/253] Compiling COpenSSL buf_.c
[223/253] Compiling COpenSSL buffer.c
[224/253] Compiling COpenSSL by_.c
[225/253] Compiling COpenSSL b_sock.c
[226/253] Compiling COpenSSL c_.c
[227/253] Compiling COpenSSL bf_.c
[228/253] Compiling COpenSSL bss_.c
[229/253] Compiling COpenSSL b_dump.c
[230/253] Compiling COpenSSL b_print.c
[231/253] Compiling COpenSSL cms_.c
[232/253] Compiling COpenSSL ameth_lib.c
[233/253] Compiling COpenSSL aes_.c
[234/253] Compiling COpenSSL asn_.c
[235/253] Compiling COpenSSL bio_.c
[236/253] Compiling COpenSSL asn1_.c
[237/253] Compiling COpenSSL a_.c
[238/253] Compiling COpenSSL bn_.c
[240/253] Compiling PerfectThread Threading.swift
[241/253] Compiling PerfectLib File.swift
[242/253] Compiling PerfectLib Dir.swift
[243/253] Compiling PerfectLib Bytes.swift
[244/253] Emitting module PerfectLib
[245/253] Compiling PerfectThread Promise.swift
[246/253] Emitting module PerfectThread
[247/253] Compiling PerfectThread ThreadQueue.swift
[248/253] Compiling PerfectLib SysProcess.swift
[249/253] Compiling PerfectLib PerfectError.swift
[250/253] Compiling PerfectLib PerfectServer.swift
[251/253] Compiling PerfectLib Log.swift
[252/253] Compiling PerfectLib Utilities.swift
[253/253] Compiling PerfectLib JSONConvertible.swift
[254/262] Compiling PerfectCrypto PerfectCrypto.swift
[255/262] Compiling PerfectCrypto JWT.swift
[256/262] Compiling PerfectCrypto Keys.swift
[257/262] Compiling PerfectCrypto JWK.swift
[258/262] Compiling PerfectCrypto OpenSSLInternal.swift
[259/262] Compiling PerfectCrypto Extensions.swift
[260/262] Emitting module PerfectCrypto
[261/262] Compiling PerfectCrypto ByteIO.swift
[262/262] Compiling PerfectCrypto Algorithms.swift
[263/270] Compiling PerfectNet NetUDP.swift
[264/270] Compiling PerfectNet NetAddress.swift
[265/270] Emitting module PerfectNet
[266/270] Compiling PerfectNet Net.swift
[267/270] Compiling PerfectNet NetNamedPipe.swift
[268/270] Compiling PerfectNet NetTCP.swift
[269/270] Compiling PerfectNet NetEvent.swift
[270/270] Compiling PerfectNet NetTCPSSL.swift
[271/280] Compiling PerfectNotifications HTTPMethod.swift
[272/281] Compiling PerfectNotifications JWTokenMaker.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/JWTokenMaker.swift:29:5: warning: let 'jwtSigAlgo' is not concurrency-safe because non-'Sendable' type 'JWT.Alg' may have shared mutable state; this is an error in the Swift 6 language mode
27 | #endif
28 |
29 | let jwtSigAlgo = JWT.Alg.es256
| `- warning: let 'jwtSigAlgo' is not concurrency-safe because non-'Sendable' type 'JWT.Alg' may have shared mutable state; this is an error in the Swift 6 language mode
30 |
31 | func makeSignature(keyId: String, teamId: String, privateKeyPath: String) -> String? {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Crypto/Sources/PerfectCrypto/JWT.swift:30:14: note: enum 'Alg' does not conform to the 'Sendable' protocol
28 | public struct JWT {
29 | /// Supported JWT alg types
30 | public enum Alg {
| `- note: enum 'Alg' does not conform to the 'Sendable' protocol
31 | case hs256, hs384, hs512
32 | case rs256, rs384, rs512
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/JWTokenMaker.swift:20:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectCrypto'
18 | //
19 |
20 | import PerfectCrypto
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectCrypto'
21 | import PerfectLib
22 |
:
27 | #endif
28 |
29 | let jwtSigAlgo = JWT.Alg.es256
| |- note: annotate 'jwtSigAlgo' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |
31 | func makeSignature(keyId: String, teamId: String, privateKeyPath: String) -> String? {
[273/281] Compiling PerfectNotifications HTTPResponse.swift
[274/281] Compiling PerfectNotifications HTTPHeaders.swift
[275/281] Compiling PerfectNotifications HTTPRequest.swift
[276/281] Compiling PerfectNotifications HTTP2Client.swift
[277/281] Compiling PerfectNotifications HTTP2Frame.swift
[278/281] Compiling PerfectNotifications NotificationPusher.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:219:20: warning: static property 'development' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
217 | /// Toggle development or production on a global basis.
218 | // TODO: deprecate
219 | public static var development = false
| |- warning: static property 'development' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'development' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'development' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
220 |
221 | /// Sets the apns-topic which will be used for iOS notifications.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:229:13: warning: static property 'idCounter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
227 | var responses = [NotificationResponse]()
228 |
229 | static var idCounter = 0
| |- warning: static property 'idCounter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'idCounter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'idCounter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
230 |
231 | static let configurationsLock = Threading.Lock()
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:231:13: warning: static property 'configurationsLock' 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
229 | static var idCounter = 0
230 |
231 | static let configurationsLock = Threading.Lock()
| `- warning: static property 'configurationsLock' 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
232 | static var iosConfigurations = [String:NotificationConfiguration]()
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
/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/PerfectNotifications/NotificationPusher.swift:22:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
20 | import PerfectLib
21 | import PerfectNet
22 | import PerfectThread
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
23 | import PerfectCrypto
24 | import Foundation
:
229 | static var idCounter = 0
230 |
231 | static let configurationsLock = Threading.Lock()
| |- note: annotate 'configurationsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
232 | static var iosConfigurations = [String:NotificationConfiguration]()
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:232:13: warning: static property 'iosConfigurations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
230 |
231 | static let configurationsLock = Threading.Lock()
232 | static var iosConfigurations = [String:NotificationConfiguration]()
| |- warning: static property 'iosConfigurations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iosConfigurations' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iosConfigurations' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
234 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:233:13: warning: static property 'activeStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
231 | static let configurationsLock = Threading.Lock()
232 | static var iosConfigurations = [String:NotificationConfiguration]()
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
| |- warning: static property 'activeStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'activeStreams' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'activeStreams' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
234 |
235 | /// Initialize given an apns-topic string.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:404:6: warning: capture of 'self' with non-sendable type 'NotificationPusher' in a `@Sendable` closure; this is an error in the Swift 6 language mode
208 |
209 | /// The interface for APNS notifications.
210 | public class NotificationPusher {
| `- note: class 'NotificationPusher' does not conform to the 'Sendable' protocol
211 |
212 | typealias ComponentGenerator = IndexingIterator<[String]>
:
402 | self.responses.append(response)
403 | DispatchQueue.global().async {
404 | self.pushAPNS(client, config: config, deviceTokens: remainingDeviceTokens, notificationJson: notificationJson, callback: callback)
| `- warning: capture of 'self' with non-sendable type 'NotificationPusher' in a `@Sendable` closure; this is an error in the Swift 6 language mode
405 | }
406 | }
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:404:20: warning: capture of 'client' with non-sendable type 'HTTP2Client' in a `@Sendable` closure; this is an error in the Swift 6 language mode
402 | self.responses.append(response)
403 | DispatchQueue.global().async {
404 | self.pushAPNS(client, config: config, deviceTokens: remainingDeviceTokens, notificationJson: notificationJson, callback: callback)
| `- warning: capture of 'client' with non-sendable type 'HTTP2Client' in a `@Sendable` closure; this is an error in the Swift 6 language mode
405 | }
406 | }
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/HTTP2Client.swift:62:7: note: class 'HTTP2Client' does not conform to the 'Sendable' protocol
60 | }
61 |
62 | class HTTP2Client {
| `- note: class 'HTTP2Client' does not conform to the 'Sendable' protocol
63 |
64 | enum StreamState {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:404:36: warning: capture of 'config' with non-sendable type 'NotificationConfiguration' in a `@Sendable` closure; this is an error in the Swift 6 language mode
101 | }
102 |
103 | class NotificationConfiguration {
| `- note: class 'NotificationConfiguration' does not conform to the 'Sendable' protocol
104 | let name: String
105 | let configurator: NotificationPusher.netConfigurator
:
402 | self.responses.append(response)
403 | DispatchQueue.global().async {
404 | self.pushAPNS(client, config: config, deviceTokens: remainingDeviceTokens, notificationJson: notificationJson, callback: callback)
| `- warning: capture of 'config' with non-sendable type 'NotificationConfiguration' in a `@Sendable` closure; this is an error in the Swift 6 language mode
405 | }
406 | }
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:404:127: warning: capture of 'callback' with non-sendable type '([NotificationResponse]) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
402 | self.responses.append(response)
403 | DispatchQueue.global().async {
404 | self.pushAPNS(client, config: config, deviceTokens: remainingDeviceTokens, notificationJson: notificationJson, callback: callback)
| |- warning: capture of 'callback' with non-sendable type '([NotificationResponse]) -> ()' in a `@Sendable` closure; this is an error in the Swift 6 language mode
| `- note: a function type must be marked '@Sendable' to conform to 'Sendable'
405 | }
406 | }
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:490:21: warning: reference to static property 'isInitialized' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
488 | /// Add an APNS configuration which can be later used to push notifications.
489 | static func addConfigurationAPNS(name: String, production: Bool, keyId: String, teamId: String, privateKeyPath: String) {
490 | _ = PerfectCrypto.isInitialized
| `- warning: reference to static property 'isInitialized' is not concurrency-safe because it involves shared mutable state; this is an error in the Swift 6 language mode
491 | guard File(privateKeyPath).exists else {
492 | fatalError("The private key file \"\(privateKeyPath)\" does not exist. Current working directory: \(Dir.workingDir.path)")
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Crypto/Sources/PerfectCrypto/PerfectCrypto.swift:21:20: note: static property declared here
19 |
20 | public enum PerfectCrypto {
21 | public static var isInitialized: Bool = {
| `- note: static property declared here
22 | return OpenSSLInternal.isInitialized
23 | }()
[279/281] Emitting module PerfectNotifications
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/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: annotate 'table' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
179 | HeaderField(name: ":authority"),
180 | HeaderField(name: ":method", value: "GET"),
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/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: annotate 'huffmanEncoderInstance' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
751 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/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: annotate 'huffmanDecoderInstance' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
751 |
752 | /// Encodes headers according to the HPACK standard.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/HTTP2.swift:29:5: 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 | 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: annotate 'http2Debug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |
31 | enum HTTP2StreamState {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/JWTokenMaker.swift:29:5: warning: let 'jwtSigAlgo' is not concurrency-safe because non-'Sendable' type 'JWT.Alg' may have shared mutable state; this is an error in the Swift 6 language mode
27 | #endif
28 |
29 | let jwtSigAlgo = JWT.Alg.es256
| `- warning: let 'jwtSigAlgo' is not concurrency-safe because non-'Sendable' type 'JWT.Alg' may have shared mutable state; this is an error in the Swift 6 language mode
30 |
31 | func makeSignature(keyId: String, teamId: String, privateKeyPath: String) -> String? {
/Users/admin/builder/spi-builder-workspace/.build/checkouts/Perfect-Crypto/Sources/PerfectCrypto/JWT.swift:30:14: note: enum 'Alg' does not conform to the 'Sendable' protocol
28 | public struct JWT {
29 | /// Supported JWT alg types
30 | public enum Alg {
| `- note: enum 'Alg' does not conform to the 'Sendable' protocol
31 | case hs256, hs384, hs512
32 | case rs256, rs384, rs512
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/JWTokenMaker.swift:20:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectCrypto'
18 | //
19 |
20 | import PerfectCrypto
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectCrypto'
21 | import PerfectLib
22 |
:
27 | #endif
28 |
29 | let jwtSigAlgo = JWT.Alg.es256
| |- note: annotate 'jwtSigAlgo' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |
31 | func makeSignature(keyId: String, teamId: String, privateKeyPath: String) -> String? {
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:219:20: warning: static property 'development' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
217 | /// Toggle development or production on a global basis.
218 | // TODO: deprecate
219 | public static var development = false
| |- warning: static property 'development' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'development' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'development' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
220 |
221 | /// Sets the apns-topic which will be used for iOS notifications.
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:229:13: warning: static property 'idCounter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
227 | var responses = [NotificationResponse]()
228 |
229 | static var idCounter = 0
| |- warning: static property 'idCounter' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'idCounter' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'idCounter' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
230 |
231 | static let configurationsLock = Threading.Lock()
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:231:13: warning: static property 'configurationsLock' 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
229 | static var idCounter = 0
230 |
231 | static let configurationsLock = Threading.Lock()
| `- warning: static property 'configurationsLock' 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
232 | static var iosConfigurations = [String:NotificationConfiguration]()
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
/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/PerfectNotifications/NotificationPusher.swift:22:1: warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
20 | import PerfectLib
21 | import PerfectNet
22 | import PerfectThread
| `- warning: add '@preconcurrency' to suppress 'Sendable'-related warnings from module 'PerfectThread'
23 | import PerfectCrypto
24 | import Foundation
:
229 | static var idCounter = 0
230 |
231 | static let configurationsLock = Threading.Lock()
| |- note: annotate 'configurationsLock' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
232 | static var iosConfigurations = [String:NotificationConfiguration]()
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:232:13: warning: static property 'iosConfigurations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
230 |
231 | static let configurationsLock = Threading.Lock()
232 | static var iosConfigurations = [String:NotificationConfiguration]()
| |- warning: static property 'iosConfigurations' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'iosConfigurations' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'iosConfigurations' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
234 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/NotificationPusher.swift:233:13: warning: static property 'activeStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
231 | static let configurationsLock = Threading.Lock()
232 | static var iosConfigurations = [String:NotificationConfiguration]()
233 | static var activeStreams = [Int:NotificationHTTP2Client]()
| |- warning: static property 'activeStreams' is not concurrency-safe because it is nonisolated global shared mutable state; this is an error in the Swift 6 language mode
| |- note: convert 'activeStreams' to a 'let' constant to make 'Sendable' shared state immutable
| |- note: annotate 'activeStreams' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
234 |
235 | /// Initialize given an apns-topic string.
[280/281] Compiling PerfectNotifications HTTP2.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/HTTP2.swift:29:5: 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 | 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: annotate 'http2Debug' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
30 |
31 | enum HTTP2StreamState {
[281/281] Compiling PerfectNotifications HPACK.swift
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/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: annotate 'table' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
179 | HeaderField(name: ":authority"),
180 | HeaderField(name: ":method", value: "GET"),
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/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: annotate 'huffmanEncoderInstance' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
750 | private let huffmanDecoderInstance = HuffmanDecoder(codes: huffmanCodes, lengths: huffmanCodeLengths)
751 |
/Users/admin/builder/spi-builder-workspace/Sources/PerfectNotifications/HTTP/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: annotate 'huffmanDecoderInstance' with '@MainActor' if property should only be accessed from the main actor
| `- note: disable concurrency-safety checks if accesses are protected by an external synchronization mechanism
751 |
752 | /// Encodes headers according to the HPACK standard.
Build complete! (24.66s)
Build complete.
{
"dependencies" : [
{
"identity" : "perfect-net",
"requirement" : {
"range" : [
{
"lower_bound" : "4.0.0",
"upper_bound" : "5.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/PerfectlySoft/Perfect-Net.git"
},
{
"identity" : "perfect-thread",
"requirement" : {
"range" : [
{
"lower_bound" : "3.0.0",
"upper_bound" : "4.0.0"
}
]
},
"type" : "sourceControl",
"url" : "https://github.com/PerfectlySoft/Perfect-Thread.git"
}
],
"manifest_display_name" : "PerfectNotifications",
"name" : "PerfectNotifications",
"path" : "/Users/admin/builder/spi-builder-workspace",
"platforms" : [
{
"name" : "macos",
"version" : "10.15"
}
],
"products" : [
{
"name" : "PerfectNotifications",
"targets" : [
"PerfectNotifications"
],
"type" : {
"library" : [
"automatic"
]
}
}
],
"targets" : [
{
"c99name" : "PerfectNotifications",
"module_type" : "SwiftTarget",
"name" : "PerfectNotifications",
"path" : "Sources/PerfectNotifications",
"product_dependencies" : [
"PerfectNet",
"PerfectThread"
],
"product_memberships" : [
"PerfectNotifications"
],
"sources" : [
"HTTP/HPACK.swift",
"HTTP/HTTP2.swift",
"HTTP/HTTP2Client.swift",
"HTTP/HTTP2Frame.swift",
"HTTP/HTTPHeaders.swift",
"HTTP/HTTPMethod.swift",
"HTTP/HTTPRequest.swift",
"HTTP/HTTPResponse.swift",
"JWTokenMaker.swift",
"NotificationPusher.swift"
],
"type" : "library"
}
],
"tools_version" : "5.1"
}
Done.