Skip to content

Commit bf4081c

Browse files
committed
Tidy up build flags and fix implicit import circular dependency (swiftlang#392)
- Explicitly ask the compiler not to implicitly import _StringProessing. This is to avoid a circular dependency when `-enable-experimental-string-processing` is enabled by default. - Unify the build flags for modules that are built in the compiler repo into a `stdlibSettings` value. - Disable implicit _Concurrency import as well since it is how it's built in the compiler repo. This helps us catch errors before we integrate with the compiler repo. - Remove `-enable-experimental-pairwise-build-block` since SE-0348 has been implemented and enabled. - Update the minimum toolchain requirement to 2022-04-20.
1 parent 535cd83 commit bf4081c

File tree

2 files changed

+11
-16
lines changed

2 files changed

+11
-16
lines changed

Package.swift

Lines changed: 10 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,13 @@ let availabilityDefinition = PackageDescription.SwiftSetting.unsafeFlags([
1010
#"SwiftStdlib 5.7:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999"#,
1111
])
1212

13+
let stdlibSettings: [PackageDescription.SwiftSetting] = [
14+
.unsafeFlags(["-enable-library-evolution"]),
15+
.unsafeFlags(["-Xfrontend", "-disable-implicit-concurrency-module-import"]),
16+
.unsafeFlags(["-Xfrontend", "-disable-implicit-string-processing-module-import"]),
17+
availabilityDefinition
18+
]
19+
1320
let package = Package(
1421
name: "swift-experimental-string-processing",
1522
products: [
@@ -36,10 +43,7 @@ let package = Package(
3643
.target(
3744
name: "_RegexParser",
3845
dependencies: [],
39-
swiftSettings: [
40-
.unsafeFlags(["-enable-library-evolution"]),
41-
availabilityDefinition
42-
]),
46+
swiftSettings: stdlibSettings),
4347
.testTarget(
4448
name: "MatchingEngineTests",
4549
dependencies: [
@@ -51,18 +55,11 @@ let package = Package(
5155
.target(
5256
name: "_StringProcessing",
5357
dependencies: ["_RegexParser", "_CUnicode"],
54-
swiftSettings: [
55-
.unsafeFlags(["-enable-library-evolution"]),
56-
availabilityDefinition
57-
]),
58+
swiftSettings: stdlibSettings),
5859
.target(
5960
name: "RegexBuilder",
6061
dependencies: ["_StringProcessing", "_RegexParser"],
61-
swiftSettings: [
62-
.unsafeFlags(["-enable-library-evolution"]),
63-
.unsafeFlags(["-Xfrontend", "-enable-experimental-pairwise-build-block"]),
64-
availabilityDefinition
65-
]),
62+
swiftSettings: stdlibSettings),
6663
.testTarget(
6764
name: "RegexTests",
6865
dependencies: ["_StringProcessing"],
@@ -73,7 +70,6 @@ let package = Package(
7370
name: "RegexBuilderTests",
7471
dependencies: ["_StringProcessing", "RegexBuilder"],
7572
swiftSettings: [
76-
.unsafeFlags(["-Xfrontend", "-enable-experimental-pairwise-build-block"]),
7773
.unsafeFlags(["-Xfrontend", "-disable-availability-checking"])
7874
]),
7975
.testTarget(
@@ -102,7 +98,6 @@ let package = Package(
10298
name: "Exercises",
10399
dependencies: ["_RegexParser", "_StringProcessing", "RegexBuilder"],
104100
swiftSettings: [
105-
.unsafeFlags(["-Xfrontend", "-enable-experimental-pairwise-build-block"]),
106101
.unsafeFlags(["-Xfrontend", "-disable-availability-checking"])
107102
]),
108103
.testTarget(

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ See [Declarative String Processing Overview][decl-string]
88

99
## Requirements
1010

11-
- [Swift Trunk Development Snapshot](https://www.swift.org/download/#snapshots) DEVELOPMENT-SNAPSHOT-2022-03-09 or later.
11+
- [Swift Trunk Development Snapshot](https://www.swift.org/download/#snapshots) DEVELOPMENT-SNAPSHOT-2022-04-20 or later.
1212

1313
## Trying it out
1414

0 commit comments

Comments
 (0)