1
- // swift-tools-version:5.10
1
+ // swift-tools-version:6.0
2
2
//===----------------------------------------------------------------------===//
3
3
//
4
4
// This source file is part of the SwiftNIO open source project
14
14
//===----------------------------------------------------------------------===//
15
15
import PackageDescription
16
16
17
+ let strictConcurrencyDevelopment = false
18
+
19
+ let strictConcurrencySettings : [ SwiftSetting ] = {
20
+ var initialSettings : [ SwiftSetting ] = [ ]
21
+
22
+ if strictConcurrencyDevelopment {
23
+ // -warnings-as-errors here is a workaround so that IDE-based development can
24
+ // get tripped up on -require-explicit-sendable.
25
+ initialSettings. append ( . unsafeFlags( [ " -require-explicit-sendable " , " -warnings-as-errors " ] ) )
26
+ }
27
+
28
+ return initialSettings
29
+ } ( )
30
+
17
31
let package = Package (
18
32
name: " swift-http-structured-headers " ,
19
33
products: [
@@ -29,29 +43,27 @@ let package = Package(
29
43
targets: [
30
44
. target(
31
45
name: " RawStructuredFieldValues " ,
32
- dependencies: [ ]
46
+ dependencies: [ ] ,
47
+ swiftSettings: strictConcurrencySettings
33
48
) ,
34
49
. target(
35
50
name: " StructuredFieldValues " ,
36
- dependencies: [ " RawStructuredFieldValues " ]
51
+ dependencies: [ " RawStructuredFieldValues " ] ,
52
+ swiftSettings: strictConcurrencySettings
37
53
) ,
38
54
. executableTarget(
39
55
name: " sh-parser " ,
40
- dependencies: [ " RawStructuredFieldValues " ]
56
+ dependencies: [ " RawStructuredFieldValues " ] ,
57
+ swiftSettings: strictConcurrencySettings
41
58
) ,
42
59
. testTarget(
43
60
name: " StructuredFieldValuesTests " ,
44
- dependencies: [ " RawStructuredFieldValues " , " StructuredFieldValues " ]
61
+ dependencies: [ " RawStructuredFieldValues " , " StructuredFieldValues " ] ,
62
+ swiftSettings: strictConcurrencySettings
45
63
) ,
46
64
]
47
65
)
48
66
49
- for target in package . targets {
50
- var settings = target. swiftSettings ?? [ ]
51
- settings. append ( . enableExperimentalFeature( " StrictConcurrency=complete " ) )
52
- target. swiftSettings = settings
53
- }
54
-
55
67
// --- STANDARD CROSS-REPO SETTINGS DO NOT EDIT --- //
56
68
for target in package . targets {
57
69
switch target. type {
0 commit comments