Skip to content

Commit 3313b71

Browse files
committed
Migration
1 parent eb4c759 commit 3313b71

File tree

10 files changed

+75
-24
lines changed

10 files changed

+75
-24
lines changed

App/AdHoc/AdHoc.xcodeproj/project.pbxproj

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@
272272
attributes = {
273273
BuildIndependentTargetsInParallel = 1;
274274
LastSwiftUpdateCheck = 1510;
275-
LastUpgradeCheck = 1500;
275+
LastUpgradeCheck = 1600;
276276
TargetAttributes = {
277277
CF394FEF2B32E9C00031D75A = {
278278
CreatedOnToolsVersion = 15.1;
@@ -503,6 +503,7 @@
503503
CURRENT_PROJECT_VERSION = 7;
504504
DYLIB_CURRENT_VERSION = 1;
505505
ENABLE_STRICT_OBJC_MSGSEND = YES;
506+
ENABLE_TESTABILITY = YES;
506507
ENABLE_USER_SCRIPT_SANDBOXING = YES;
507508
GCC_C_LANGUAGE_STANDARD = gnu17;
508509
GCC_DYNAMIC_NO_PIC = NO;
@@ -530,6 +531,7 @@
530531
PROVISIONING_PROFILE_SPECIFIER = "match AdHoc moe.nnsnodnb.SSLCertificateCheck";
531532
SDKROOT = iphoneos;
532533
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)";
534+
_EXPERIMENTAL_SWIFT_EXPLICIT_MODULES = YES;
533535
};
534536
name = Debug;
535537
};
@@ -593,13 +595,13 @@
593595
SDKROOT = iphoneos;
594596
SWIFT_COMPILATION_MODE = wholemodule;
595597
VALIDATE_PRODUCT = YES;
598+
_EXPERIMENTAL_SWIFT_EXPLICIT_MODULES = YES;
596599
};
597600
name = Release;
598601
};
599602
CF7E0EFE2AD84688003244D1 /* Debug */ = {
600603
isa = XCBuildConfiguration;
601604
buildSettings = {
602-
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
603605
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
604606
CODE_SIGN_ENTITLEMENTS = AdHoc/AdHoc.entitlements;
605607
DEVELOPMENT_ASSET_PATHS = "\"AdHoc/Preview Content\"";
@@ -628,7 +630,6 @@
628630
CF7E0EFF2AD84688003244D1 /* Release */ = {
629631
isa = XCBuildConfiguration;
630632
buildSettings = {
631-
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
632633
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
633634
CODE_SIGN_ENTITLEMENTS = AdHoc/AdHoc.entitlements;
634635
DEVELOPMENT_ASSET_PATHS = "\"AdHoc/Preview Content\"";

App/AdHoc/AdHoc.xcodeproj/xcshareddata/xcschemes/AdHoc.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1500"
3+
LastUpgradeVersion = "1600"
44
version = "1.7">
55
<BuildAction
66
parallelizeBuildables = "YES"

App/Develop/Develop.xcodeproj/project.pbxproj

Lines changed: 32 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@
272272
attributes = {
273273
BuildIndependentTargetsInParallel = 1;
274274
LastSwiftUpdateCheck = 1500;
275-
LastUpgradeCheck = 1500;
275+
LastUpgradeCheck = 1600;
276276
TargetAttributes = {
277277
CF7E0EB22AD835C7003244D1 = {
278278
CreatedOnToolsVersion = 15.0;
@@ -428,6 +428,7 @@
428428
DEBUG_INFORMATION_FORMAT = dwarf;
429429
DYLIB_CURRENT_VERSION = 1;
430430
ENABLE_STRICT_OBJC_MSGSEND = YES;
431+
ENABLE_TESTABILITY = YES;
431432
ENABLE_USER_SCRIPT_SANDBOXING = YES;
432433
GCC_C_LANGUAGE_STANDARD = gnu17;
433434
GCC_DYNAMIC_NO_PIC = NO;
@@ -456,6 +457,20 @@
456457
SDKROOT = iphoneos;
457458
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)";
458459
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
460+
SWIFT_STRICT_CONCURRENCY = complete;
461+
SWIFT_UPCOMING_FEATURE_CONCISE_MAGIC_FILE = YES;
462+
SWIFT_UPCOMING_FEATURE_DEPRECATE_APPLICATION_MAIN = YES;
463+
SWIFT_UPCOMING_FEATURE_DISABLE_OUTWARD_ACTOR_ISOLATION = YES;
464+
SWIFT_UPCOMING_FEATURE_EXISTENTIAL_ANY = YES;
465+
SWIFT_UPCOMING_FEATURE_FORWARD_TRAILING_CLOSURES = YES;
466+
SWIFT_UPCOMING_FEATURE_GLOBAL_CONCURRENCY = YES;
467+
SWIFT_UPCOMING_FEATURE_IMPLICIT_OPEN_EXISTENTIALS = YES;
468+
SWIFT_UPCOMING_FEATURE_IMPORT_OBJC_FORWARD_DECLS = YES;
469+
SWIFT_UPCOMING_FEATURE_INFER_SENDABLE_FROM_CAPTURES = YES;
470+
SWIFT_UPCOMING_FEATURE_INTERNAL_IMPORTS_BY_DEFAULT = YES;
471+
SWIFT_UPCOMING_FEATURE_ISOLATED_DEFAULT_VALUES = YES;
472+
SWIFT_UPCOMING_FEATURE_REGION_BASED_ISOLATION = YES;
473+
_EXPERIMENTAL_SWIFT_EXPLICIT_MODULES = YES;
459474
};
460475
name = Debug;
461476
};
@@ -520,14 +535,27 @@
520535
PROVISIONING_PROFILE_SPECIFIER = "match Development moe.nnsnodnb.SSLCertificateCheck";
521536
SDKROOT = iphoneos;
522537
SWIFT_COMPILATION_MODE = wholemodule;
538+
SWIFT_STRICT_CONCURRENCY = complete;
539+
SWIFT_UPCOMING_FEATURE_CONCISE_MAGIC_FILE = YES;
540+
SWIFT_UPCOMING_FEATURE_DEPRECATE_APPLICATION_MAIN = YES;
541+
SWIFT_UPCOMING_FEATURE_DISABLE_OUTWARD_ACTOR_ISOLATION = YES;
542+
SWIFT_UPCOMING_FEATURE_EXISTENTIAL_ANY = YES;
543+
SWIFT_UPCOMING_FEATURE_FORWARD_TRAILING_CLOSURES = YES;
544+
SWIFT_UPCOMING_FEATURE_GLOBAL_CONCURRENCY = YES;
545+
SWIFT_UPCOMING_FEATURE_IMPLICIT_OPEN_EXISTENTIALS = YES;
546+
SWIFT_UPCOMING_FEATURE_IMPORT_OBJC_FORWARD_DECLS = YES;
547+
SWIFT_UPCOMING_FEATURE_INFER_SENDABLE_FROM_CAPTURES = YES;
548+
SWIFT_UPCOMING_FEATURE_INTERNAL_IMPORTS_BY_DEFAULT = YES;
549+
SWIFT_UPCOMING_FEATURE_ISOLATED_DEFAULT_VALUES = YES;
550+
SWIFT_UPCOMING_FEATURE_REGION_BASED_ISOLATION = YES;
523551
VALIDATE_PRODUCT = YES;
552+
_EXPERIMENTAL_SWIFT_EXPLICIT_MODULES = YES;
524553
};
525554
name = Release;
526555
};
527556
CF7E0EC22AD835C8003244D1 /* Debug */ = {
528557
isa = XCBuildConfiguration;
529558
buildSettings = {
530-
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
531559
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
532560
CODE_SIGN_ENTITLEMENTS = Develop/Develop.entitlements;
533561
DEVELOPMENT_ASSET_PATHS = "\"Develop/Preview Content\"";
@@ -549,14 +577,14 @@
549577
SUPPORTS_MACCATALYST = NO;
550578
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
551579
SWIFT_EMIT_LOC_STRINGS = YES;
580+
SWIFT_UPCOMING_FEATURE_DEPRECATE_APPLICATION_MAIN = YES;
552581
SWIFT_VERSION = 5.0;
553582
};
554583
name = Debug;
555584
};
556585
CF7E0EC32AD835C8003244D1 /* Release */ = {
557586
isa = XCBuildConfiguration;
558587
buildSettings = {
559-
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
560588
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
561589
CODE_SIGN_ENTITLEMENTS = Develop/Develop.entitlements;
562590
DEVELOPMENT_ASSET_PATHS = "\"Develop/Preview Content\"";
@@ -578,6 +606,7 @@
578606
SUPPORTS_MACCATALYST = NO;
579607
SUPPORTS_MAC_DESIGNED_FOR_IPHONE_IPAD = NO;
580608
SWIFT_EMIT_LOC_STRINGS = YES;
609+
SWIFT_UPCOMING_FEATURE_DEPRECATE_APPLICATION_MAIN = YES;
581610
SWIFT_VERSION = 5.0;
582611
};
583612
name = Release;

App/Develop/Develop.xcodeproj/xcshareddata/xcschemes/Develop.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1500"
3+
LastUpgradeVersion = "1600"
44
version = "1.7">
55
<BuildAction
66
parallelizeBuildables = "YES"

App/Production/Production.xcodeproj/project.pbxproj

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -272,7 +272,7 @@
272272
attributes = {
273273
BuildIndependentTargetsInParallel = 1;
274274
LastSwiftUpdateCheck = 1510;
275-
LastUpgradeCheck = 1500;
275+
LastUpgradeCheck = 1600;
276276
TargetAttributes = {
277277
CF3950092B32F1E70031D75A = {
278278
CreatedOnToolsVersion = 15.1;
@@ -507,6 +507,7 @@
507507
CURRENT_PROJECT_VERSION = 7;
508508
DYLIB_CURRENT_VERSION = 1;
509509
ENABLE_STRICT_OBJC_MSGSEND = YES;
510+
ENABLE_TESTABILITY = YES;
510511
ENABLE_USER_SCRIPT_SANDBOXING = YES;
511512
GCC_C_LANGUAGE_STANDARD = gnu17;
512513
GCC_DYNAMIC_NO_PIC = NO;
@@ -533,6 +534,7 @@
533534
PROVISIONING_PROFILE_SPECIFIER = "match AppStore moe.nnsnodnb.SSLCertificateCheck";
534535
SDKROOT = iphoneos;
535536
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "DEBUG $(inherited)";
537+
_EXPERIMENTAL_SWIFT_EXPLICIT_MODULES = YES;
536538
};
537539
name = Debug;
538540
};
@@ -598,13 +600,13 @@
598600
SWIFT_ACTIVE_COMPILATION_CONDITIONS = RELEASE;
599601
SWIFT_COMPILATION_MODE = wholemodule;
600602
VALIDATE_PRODUCT = YES;
603+
_EXPERIMENTAL_SWIFT_EXPLICIT_MODULES = YES;
601604
};
602605
name = Release;
603606
};
604607
CF7E0EDC2AD835E8003244D1 /* Debug */ = {
605608
isa = XCBuildConfiguration;
606609
buildSettings = {
607-
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
608610
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
609611
CODE_SIGN_ENTITLEMENTS = Production/Production.entitlements;
610612
COPY_PHASE_STRIP = YES;
@@ -634,7 +636,6 @@
634636
CF7E0EDD2AD835E8003244D1 /* Release */ = {
635637
isa = XCBuildConfiguration;
636638
buildSettings = {
637-
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
638639
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
639640
CODE_SIGN_ENTITLEMENTS = Production/Production.entitlements;
640641
COPY_PHASE_STRIP = YES;

App/Production/Production.xcodeproj/xcshareddata/xcschemes/Production.xcscheme

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "1500"
3+
LastUpgradeVersion = "1600"
44
version = "1.7">
55
<BuildAction
66
parallelizeBuildables = "YES"

SSLCertificateCheckPackage/Package.swift

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -139,6 +139,8 @@ extension PackageDescription.SwiftSetting {
139139
/// - Since: SwiftPM 5.10
140140
/// - SeeAlso: [SE-0412: Strict concurrency for global variables](https://github.com/apple/swift-evolution/blob/main/proposals/0412-strict-concurrency-for-global-variables.md)
141141
static let globalConcurrency: Self = .enableUpcomingFeature("GlobalConcurrency")
142+
143+
static let inferSendableFromCaptures: Self = .enableUpcomingFeature("InferSendableFromCaptures")
142144
}
143145

144146
let package = Package(
@@ -297,6 +299,7 @@ let upcomingFeatures: [PackageDescription.SwiftSetting] = [
297299
.deprecateApplicationMain,
298300
.isolatedDefaultValues,
299301
.globalConcurrency,
302+
.inferSendableFromCaptures,
300303
]
301304

302305
for target in package.targets {

SSLCertificateCheckPackage/Sources/Features/SearchFeature/Clients/KeyValueStoreClient.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,10 +40,10 @@ package extension KeyValueStoreClient {
4040
extension KeyValueStoreClient: DependencyKey {
4141
package static let liveValue: KeyValueStoreClient = .init(
4242
getWasRequestReviewFinishFirstSearchExperience: {
43-
await AppStorageActor.shared.getWasRequestReviewFinishFirstSearchExperience()
43+
AppStorageActor.shared.getWasRequestReviewFinishFirstSearchExperience()
4444
},
4545
setWasRequestReviewFinishFirstSearchExperience: {
46-
await AppStorageActor.shared.setWasRequestReviewFinishFirstSearchExperience(value: $0)
46+
AppStorageActor.shared.setWasRequestReviewFinishFirstSearchExperience(value: $0)
4747
}
4848
)
4949
package static let testValue: KeyValueStoreClient = .init()

SSLCertificateCheckPackage/Sources/Features/SearchFeature/Clients/SearchClient.swift

Lines changed: 25 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -33,26 +33,43 @@ private extension SearchClient {
3333
}
3434

3535
static func fetchCertificates(fromURL url: URL) async throws -> [X509] {
36-
let sessionDelegate = SessionDelegate()
37-
let session = URLSession(configuration: .ephemeral, delegate: sessionDelegate, delegateQueue: nil)
38-
_ = try await session.data(from: url)
39-
guard let serverTrust = sessionDelegate.serverTrust else {
40-
throw Error.unknown
36+
return try await withCheckedThrowingContinuation { continuation in
37+
let sessionDelegate = SessionDelegate { serverTrust in
38+
guard let serverTrust else {
39+
continuation.resume(throwing: Error.unknown)
40+
return
41+
}
42+
do {
43+
let x509s = try X509Parser.parse(serverTrust: serverTrust)
44+
continuation.resume(returning: x509s)
45+
} catch {
46+
continuation.resume(throwing: error)
47+
}
48+
}
49+
let session = URLSession(configuration: .ephemeral, delegate: sessionDelegate, delegateQueue: nil)
50+
Task {
51+
_ = try await session.data(from: url)
52+
}
4153
}
42-
return try X509Parser.parse(serverTrust: serverTrust)
4354
}
4455

4556
// MARK: - URLSessionDelegate
4657
private final class SessionDelegate: NSObject, URLSessionDelegate {
4758
// MARK: - Properties
48-
private(set) var serverTrust: SecTrust?
59+
private let serverTrustCompletion: @Sendable (SecTrust?) -> Void
60+
61+
// MARK: - Initialize
62+
init(serverTrustCompletion: @Sendable @escaping (SecTrust?) -> Void) {
63+
self.serverTrustCompletion = serverTrustCompletion
64+
}
4965

5066
// MARK: - URLSessionDelegate
5167
func urlSession(
5268
_ session: URLSession,
5369
didReceive challenge: URLAuthenticationChallenge
5470
) async -> (URLSession.AuthChallengeDisposition, URLCredential?) {
55-
self.serverTrust = challenge.protectionSpace.serverTrust
71+
let serverTrust = challenge.protectionSpace.serverTrust
72+
serverTrustCompletion(serverTrust)
5673
return (.performDefaultHandling, nil)
5774
}
5875
}

SSLCertificateCheckPackage/Sources/Features/SearchFeature/Reducers/Search/SearchReducer.swift

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -259,13 +259,13 @@ package struct SearchReducer {
259259
}
260260
.ifLet(\.searchResult, action: \.searchResult) {
261261
EmptyReducer()
262-
.ifLet(\.value, action: .self) {
262+
.ifLet(\.value, action: \.self) {
263263
SearchResultReducer()
264264
}
265265
}
266266
.ifLet(\.searchResultDetail, action: \.searchResultDetail) {
267267
EmptyReducer()
268-
.ifLet(\.value, action: .self) {
268+
.ifLet(\.value, action: \.self) {
269269
SearchResultDetailReducer()
270270
}
271271
}

0 commit comments

Comments
 (0)