From 99f5bb9bad30530edfd5545ea31033ac82c01395 Mon Sep 17 00:00:00 2001 From: Ahmed Shendy Date: Fri, 24 May 2024 16:26:04 +0300 Subject: [PATCH 1/4] use local FelinePine subrepo, and make single change in NSLocking as deprecated --- .../Resources/FelinePine.png | Bin 8928 -> 129 bytes .../Resources/FelinePine@2x.png | Bin 19764 -> 130 bytes .../Resources/FelinePine@3x.png | Bin 30645 -> 130 bytes Sources/FelinePine/Logger.swift | 2 ++ Sources/FelinePine/NSLocking.swift | 1 + 5 files changed, 3 insertions(+) diff --git a/Sources/FelinePine/Documentation.docc/Resources/FelinePine.png b/Sources/FelinePine/Documentation.docc/Resources/FelinePine.png index b2cb758b4b7f795b7cf923e4888a1ac361818871..4f827c953fd03c925eff04393568ab3dc0ef44da 100644 GIT binary patch literal 129 zcmWN?NfN>!5CFhCuiyiQEeuS4!!jdOsiXvR@b%i4zUV#sc*(ZbIS-}oecc{BxBu;v zw=$k;o>bIj#OPJdmaK;(qSlnE^VL_hU@Dh_48_A_&KhgTnnR8V M&WqWxRc<)-CcI_{m%Zk z+w;!!eYbAatE%pv?miQvp{9U^PK*u!0G1*|Rto^Ya0sG7MS$--ycI{_#G{6aj+}z4 z%HdD9-tvH-Iqw$3-_#C9ZNwQj4n=55YwtzLokvT~#yK?%gw4h|Ye?&y$B0ixzH1l^ zosM@pj}(P74Fj-+_;(Hcu3=TpAk%SBZO*5>HOy&3TOUrY5(+l!8~x~RI>9w9P|&vWm+=-GP#MD-4Eja z&kF`G5Z-~_3LkhJxCUPMUNCQwjmrO4`JZMlkn1{L<}gg;f7AEIO7MFBh5g6>OBF7L zF98n=uky}f zYNt|XC7fYzQD~!*W2Ks4Y5LJzHUF(d(p$AiL-j;`8R#4J5N!oN9Stu{byp1yJ5?=9 zC9Ss*Z3B62U0H4TA%nN>CE3MC`1O$Ksime3fDn+;(6Mpx@L#-mNlZ#cPC-jY$H23dsydq+=CZ|}gs$jIo}*!1-5!tdX|7nfI7S6A28*0;8I zcJ}u7_YV$FPR`CRF0Zd|Ztou8+vC&IQ?7imCIFD%D9TFd`2Idv1lbxLk|3Y#Z}4KJ z*QGTIPc_cTE!Ouj?_HDxvmPR z_i`Fb6(3WcI?rDG!Qp12?w&(}qbRDL9}wf3Vh3JQ!X%6?CzSKSKV>#iDk4Gi`DAD_ z;T2BsYl>qA)WFA&ipQ(1`#r^HBC>VKcMb!O);YAwK$hg$cI)vq3XIA^=zEnoddV`n z>D>h)h>Cv5bIKVJeH8z>qV^0GL@Di(>55s&#mEzzRwh8iT@erU6QmP~J`C5X;LK1U+6_zF~h#ZyOJ}^i^mf1^n?@i(*%G zcdusg-{Uh8_B5L(wv!FF)O_%jXa3cEq#2>x$Y9P=tH?~yyhYYjyNn|e10!ZiD{5Z9 z5NOT`iy+rmY@_?Y`&2XPGoKZiAnO~YV{`iF)rwOQ#S47xVl5I$WxF^&-gJL+iud#p zTgPq#nEMOfW@LC3?}w;^_ZBS0SZb1eWthLZ4S*f|!5C;w5aw1qAc$zT9*HH!O-l)+ zZ?4KylL~pSMH+@RtGx@$k!?_7o|#8>@JBIE_1lc%E;dYV4 z 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 GLjMmL``W+& diff --git a/Sources/FelinePine/Documentation.docc/Resources/FelinePine@2x.png b/Sources/FelinePine/Documentation.docc/Resources/FelinePine@2x.png index 4fa3366c575e3cb207bb777b35099c896323c830..d7c5c27e86534e8e62a569e4eaefc1f188f2fbf1 100644 GIT binary patch literal 130 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 SR!#v>dj3@9Nuiu^!2baI)tcJ? diff --git a/Sources/FelinePine/Logger.swift b/Sources/FelinePine/Logger.swift index 1088c4c..04eb485 100644 --- a/Sources/FelinePine/Logger.swift +++ b/Sources/FelinePine/Logger.swift @@ -31,10 +31,12 @@ #if canImport(os) import os.log + /// Standard os.log Logger public typealias Logger = os.Logger #else import Logging + /// swift-log Logging.Logger public typealias Logger = Logging.Logger #endif diff --git a/Sources/FelinePine/NSLocking.swift b/Sources/FelinePine/NSLocking.swift index 7d6e180..4cb60f5 100644 --- a/Sources/FelinePine/NSLocking.swift +++ b/Sources/FelinePine/NSLocking.swift @@ -30,6 +30,7 @@ import Foundation #if !canImport(os) + @available(*, deprecated) extension NSLocking { internal func withLock(_ body: () throws -> R) rethrows -> R { lock() From bfb3d4b2cf513152b065c8b9133ef9eaa2956e7c Mon Sep 17 00:00:00 2001 From: Ahmed Shendy Date: Fri, 24 May 2024 16:50:44 +0300 Subject: [PATCH 2/4] make logger property of Feline as nonisolated --- Sources/FelinePine/Feline.swift | 6 +++++- Sources/FelinePine/LoggingSystem.swift | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/Sources/FelinePine/Feline.swift b/Sources/FelinePine/Feline.swift index d3988da..5fb3e8c 100644 --- a/Sources/FelinePine/Feline.swift +++ b/Sources/FelinePine/Feline.swift @@ -46,8 +46,12 @@ public protocol Feline { } extension Feline where Self: Pine { + #if swift(>=6.0) + #warning("Reevaluate whether this decoration is necessary.") + #endif + /// Use the ``loggingCategory`` to define the shared logger for type. - public static var logger: Logger { + public nonisolated(unsafe) static var logger: Logger { LoggingSystemType.logger(forCategory: loggingCategory) } } diff --git a/Sources/FelinePine/LoggingSystem.swift b/Sources/FelinePine/LoggingSystem.swift index 85b051e..c873c94 100644 --- a/Sources/FelinePine/LoggingSystem.swift +++ b/Sources/FelinePine/LoggingSystem.swift @@ -68,7 +68,7 @@ private class LoggingSystemRepository: @unchecked Sendable { // swiftlint:enable strict_fileprivate /// Defines the logging categories for your application. -public protocol LoggingSystem { +public protocol LoggingSystem: Sendable { /// Logging categories available to types in the application associatedtype Category: Hashable & RawRepresentable where Category.RawValue == String From 24d37003f199bde4064290f78bfbef81fd8111e4 Mon Sep 17 00:00:00 2001 From: Ahmed Shendy Date: Fri, 24 May 2024 17:23:10 +0300 Subject: [PATCH 3/4] remove nonisolated(unsafe) keyword from Feline logger property, and remove the changes in NSLockingl --- Sources/FelinePine/Feline.swift | 2 +- Sources/FelinePine/NSLocking.swift | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/Sources/FelinePine/Feline.swift b/Sources/FelinePine/Feline.swift index 5fb3e8c..cec972f 100644 --- a/Sources/FelinePine/Feline.swift +++ b/Sources/FelinePine/Feline.swift @@ -51,7 +51,7 @@ extension Feline where Self: Pine { #endif /// Use the ``loggingCategory`` to define the shared logger for type. - public nonisolated(unsafe) static var logger: Logger { + public static var logger: Logger { LoggingSystemType.logger(forCategory: loggingCategory) } } diff --git a/Sources/FelinePine/NSLocking.swift b/Sources/FelinePine/NSLocking.swift index 4cb60f5..7d6e180 100644 --- a/Sources/FelinePine/NSLocking.swift +++ b/Sources/FelinePine/NSLocking.swift @@ -30,7 +30,6 @@ import Foundation #if !canImport(os) - @available(*, deprecated) extension NSLocking { internal func withLock(_ body: () throws -> R) rethrows -> R { lock() From 6e0da46074a8f341a178dfbbeb12f1a2aa8cbe12 Mon Sep 17 00:00:00 2001 From: Ahmed Shendy Date: Fri, 24 May 2024 17:24:29 +0300 Subject: [PATCH 4/4] remove the #if swift(>=6.0) from Feline, not needed anymore --- Sources/FelinePine/Feline.swift | 4 ---- 1 file changed, 4 deletions(-) diff --git a/Sources/FelinePine/Feline.swift b/Sources/FelinePine/Feline.swift index cec972f..d3988da 100644 --- a/Sources/FelinePine/Feline.swift +++ b/Sources/FelinePine/Feline.swift @@ -46,10 +46,6 @@ public protocol Feline { } extension Feline where Self: Pine { - #if swift(>=6.0) - #warning("Reevaluate whether this decoration is necessary.") - #endif - /// Use the ``loggingCategory`` to define the shared logger for type. public static var logger: Logger { LoggingSystemType.logger(forCategory: loggingCategory)