1
- // swift-tools-version:5.9
1
+ // swift-tools-version:6.0
2
2
3
3
import PackageDescription
4
4
5
+ #if os(macOS)
6
+ let platforms : [ PackageDescription . SupportedPlatform ] ? = [ . macOS( . v15) ]
7
+ #else
8
+ let platforms : [ PackageDescription . SupportedPlatform ] ? = nil
9
+ #endif
10
+
5
11
let package = Package (
6
12
name: " swift-aws-lambda-runtime " ,
7
- platforms: [
8
- . macOS( . v12) ,
9
- . iOS( . v15) ,
10
- . tvOS( . v15) ,
11
- . watchOS( . v8) ,
12
- ] ,
13
+ platforms: platforms,
13
14
products: [
14
15
// this library exports `AWSLambdaRuntimeCore` and adds Foundation convenience methods
15
16
. library( name: " AWSLambdaRuntime " , targets: [ " AWSLambdaRuntime " ] ) ,
16
17
// this has all the main functionality for lambda and it does not link Foundation
17
18
. library( name: " AWSLambdaRuntimeCore " , targets: [ " AWSLambdaRuntimeCore " ] ) ,
18
19
// plugin to package the lambda, creating an archive that can be uploaded to AWS
20
+ // requires Linux or at least macOS v15
19
21
. plugin( name: " AWSLambdaPackager " , targets: [ " AWSLambdaPackager " ] ) ,
20
22
// for testing only
21
23
. library( name: " AWSLambdaTesting " , targets: [ " AWSLambdaTesting " ] ) ,
22
24
] ,
23
25
dependencies: [
24
26
. package ( url: " https://github.com/apple/swift-nio.git " , . upToNextMajor( from: " 2.67.0 " ) ) ,
25
27
. package ( url: " https://github.com/apple/swift-log.git " , . upToNextMajor( from: " 1.5.4 " ) ) ,
26
- . package ( url: " https://github.com/apple/swift-docc-plugin " , exact : " 1.3 .0 " ) ,
28
+ . package ( url: " https://github.com/apple/swift-docc-plugin.git " , from : " 1.0 .0 " ) ,
27
29
] ,
28
30
targets: [
29
31
. target(
@@ -32,7 +34,8 @@ let package = Package(
32
34
. byName( name: " AWSLambdaRuntimeCore " ) ,
33
35
. product( name: " NIOCore " , package : " swift-nio " ) ,
34
36
. product( name: " NIOFoundationCompat " , package : " swift-nio " ) ,
35
- ]
37
+ ] ,
38
+ swiftSettings: [ . swiftLanguageMode( . v5) ]
36
39
) ,
37
40
. target(
38
41
name: " AWSLambdaRuntimeCore " ,
@@ -42,7 +45,8 @@ let package = Package(
42
45
. product( name: " NIOCore " , package : " swift-nio " ) ,
43
46
. product( name: " NIOConcurrencyHelpers " , package : " swift-nio " ) ,
44
47
. product( name: " NIOPosix " , package : " swift-nio " ) ,
45
- ]
48
+ ] ,
49
+ swiftSettings: [ . swiftLanguageMode( . v5) ]
46
50
) ,
47
51
. plugin(
48
52
name: " AWSLambdaPackager " ,
@@ -60,31 +64,39 @@ let package = Package(
60
64
. byName( name: " AWSLambdaRuntimeCore " ) ,
61
65
. product( name: " NIOTestUtils " , package : " swift-nio " ) ,
62
66
. product( name: " NIOFoundationCompat " , package : " swift-nio " ) ,
63
- ]
67
+ ] ,
68
+ swiftSettings: [ . swiftLanguageMode( . v5) ]
64
69
) ,
65
70
. testTarget(
66
71
name: " AWSLambdaRuntimeTests " ,
67
72
dependencies: [
68
73
. byName( name: " AWSLambdaRuntimeCore " ) ,
69
74
. byName( name: " AWSLambdaRuntime " ) ,
70
- ]
75
+ ] ,
76
+ swiftSettings: [ . swiftLanguageMode( . v5) ]
71
77
) ,
72
78
// testing helper
73
79
. target(
74
80
name: " AWSLambdaTesting " ,
75
81
dependencies: [
76
82
. byName( name: " AWSLambdaRuntime " ) ,
77
83
. product( name: " NIO " , package : " swift-nio " ) ,
78
- ]
84
+ ] ,
85
+ swiftSettings: [ . swiftLanguageMode( . v5) ]
86
+ ) ,
87
+ . testTarget(
88
+ name: " AWSLambdaTestingTests " ,
89
+ dependencies: [ " AWSLambdaTesting " ] ,
90
+ swiftSettings: [ . swiftLanguageMode( . v5) ]
79
91
) ,
80
- . testTarget( name: " AWSLambdaTestingTests " , dependencies: [ " AWSLambdaTesting " ] ) ,
81
92
// for perf testing
82
93
. executableTarget(
83
94
name: " MockServer " ,
84
95
dependencies: [
85
96
. product( name: " NIOHTTP1 " , package : " swift-nio " ) ,
86
97
. product( name: " NIO " , package : " swift-nio " ) ,
87
- ]
98
+ ] ,
99
+ swiftSettings: [ . swiftLanguageMode( . v5) ]
88
100
) ,
89
101
]
90
102
)
0 commit comments