Skip to content

Commit ab898c0

Browse files
authored
Merge pull request #74013 from hborla/swift-6-release-note
[Change Log] Add a change log entry for the Swift 6 language mode.
2 parents 2d0b194 + d311b7e commit ab898c0

File tree

1 file changed

+17
-0
lines changed

1 file changed

+17
-0
lines changed

CHANGELOG.md

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,23 @@
55
66
## Swift 6.0
77

8+
9+
* Swift 6 comes with a new language mode that prevents the risk of data races
10+
at compile time. This guarantee is accomplished through _data isolation_; the
11+
compiler will validate that data passed over a boundary between concurrently
12+
executing code is either safe to reference concurrently, or mutually
13+
exclusive access to the value is enforced.
14+
15+
The data-race safety checks were previously available in Swift 5.10 through
16+
the `-strict-concurrency=complete` compiler flag. Complete concurrency
17+
checking in Swift 5.10 was overly restrictive, and Swift 6 removes many
18+
false-positive data-race warnings through better `Sendable` inference,
19+
new analysis that proves mutually exclusive access when passing values with
20+
non-`Sendable` type over isolation boundaries, and more.
21+
22+
You can enable the Swift 6 language mode using the `-swift-version 6`
23+
compiler flag.
24+
825
* [SE-0431][]:
926
You can now require a function value to carry its actor isolation
1027
dynamically in a way that can be directly read by clients:

0 commit comments

Comments
 (0)