@@ -15,7 +15,7 @@ expanding domains.
1515
1616Source-breaking changes to Swift were first staged behind the now obsolete
1717Swift 3 language mode.
18- Each successive major release has since included a correponding language mode,
18+ Each successive major release has since included a corresponding language mode,
1919using the previous language mode as the default to maximize source
2020compatibility.
2121For example, Swift 6 compilers operate in the Swift 5 language mode by default.
@@ -31,7 +31,7 @@ features as opposed to an entire language mode.
3131Among other things, upcoming features facilitated earlier adoption of
3232improvements and drastically reduced the pressures in our evolutionary model.
3333
34- This proposal centers seeks to improve the experience of adopting individual
34+ This proposal seeks to improve the experience of adopting individual
3535features.
3636The proposition is that the growing complexity and diversification of Swift
3737calls for a flexible, integrated mechanism for supporting quality assistance
@@ -89,8 +89,6 @@ consistent code modifications to facilitate adoption processes:
8989* [ Inherit isolation by default for async functions] [ async-inherit-isolation-pitch ] :
9090 Mark nonisolated functions with the proposed attribute.
9191
92- Feature
93-
9492Extending diagnostic metadata to include information that allows for
9593recognizing these diagnostics and distinguishing semantics-preserving fix-its
9694from alternative source changes would open up numerous opportunities for
@@ -124,7 +122,7 @@ UPCOMING_FEATURE(RegionBasedIsolation, 414, 6)
124122
125123## Proposed solution
126124
127- Introduce the notion of a "adoption" mode for individual experimental and
125+ Introduce the notion of an "adoption" mode for individual experimental and
128126upcoming features.
129127The core idea behind adoption mode is a declaration of intent that can be
130128leveraged to build holistic supportive adoption experiences for developers.
@@ -142,6 +140,9 @@ existing code whenever the feature provides for them.
142140
143141### Behavior
144142
143+ Adoption mode should deliver guidance in the shape of warnings, notes, remarks,
144+ and fix-its, as and when appropriate.
145+
145146The action of enabling a previously disabled source-breaking feature in adoption
146147mode per se must never produce compilation errors.
147148Additionally, this action will have no effect on the state of the feature if
@@ -153,9 +154,6 @@ impression that the impacted source code is compatible with the feature.
153154> Experimental features can be both additive and source-breaking.
154155> Upcoming features are necessarily source-breaking.
155156
156- adoption mode will deliver guidance in the shape of warnings, notes, remarks,
157- and fix-its, as and when appropriate.
158-
159157When implemented, adoption mode for upcoming features is expected to anticipate
160158and call out any behavioral differences that will result from enacting the
161159feature, coupling diagnostic messages with counteracting source-compatible
0 commit comments