Skip to content

Commit ccc0e48

Browse files
authored
Merge branch 'main' into feat/lints-4-0-0
2 parents c393eff + f3f5ff2 commit ccc0e48

File tree

1 file changed

+62
-8
lines changed

1 file changed

+62
-8
lines changed

src/content/resources/breaking-changes.md

+62-8
Original file line numberDiff line numberDiff line change
@@ -63,26 +63,60 @@ don't include the section header.
6363
#### (Dart VM, Pub, Linter, `dart2js`, etc)
6464
{% endcomment %}
6565

66-
## 3.4.0
66+
## 3.5.0
6767

6868
**Tentative**<br>
69-
The following changes are expected to be included in the 3.4.0 stable release,
69+
The following changes are expected to be included in the 3.5.0 stable release,
7070
but the final list will likely change before then.
7171
To reduce the potential impact of these changes, consider
72-
accounting for them before the 3.4.0 release.
72+
accounting for them before the 3.5.0 release.
73+
74+
### Language {:.no_toc}
75+
76+
- [The context used by the compiler to perform type inference on
77+
the operand of an `await` expression has been changed to
78+
match the behavior of the analyzer.][55418]
79+
- [The context used by the compiler to perform type inference on
80+
the right hand side of an "if-null" expression (`e1 ?? e2`) has been
81+
changed to match the behavior of the analyzer.][55436]
82+
The old behavior can be restored by supplying explicit types.
83+
84+
[55418]: {{site.repo.dart.sdk}}/issues/55418
85+
[55436]: {{site.repo.dart.sdk}}/issues/55436
86+
87+
#### `dart:typed_data`
88+
89+
- **Removed**:
90+
[The unmodifiable view classes for typed data have been removed][53128].
91+
Instead of using the constructors of these classes, use
92+
the new `asUnmodifiableView` methods on typed data lists.
93+
94+
### Runtime {:.no_toc}
95+
96+
- **Removed** The Dart VM no longer supports unsound null safety.
97+
- The `--no-sound-null-safety` CLI option has been removed.
98+
- The `Dart_NewListOf` and `Dart_IsLegacyType` functions have been removed
99+
from the C API.
100+
101+
## 3.4.0
73102

74103
### Language {:.no_toc}
75104

76-
* [The pattern context type schema for cast patterns
105+
- [The pattern context type schema for cast patterns
77106
is now `_` (the unknown type) instead of `Object?`][54640].
107+
- [The type schema used by the Dart compilers to
108+
perform type inference on the operand of a null-aware spread operator (`...?`)
109+
in map and set literals has been made nullable, to
110+
match what currently happens in list literals.][54828]
78111

79112
[54640]: {{site.repo.dart.sdk}}/issues/54640
113+
[54828]: {{site.repo.dart.sdk}}/issues/54828
80114

81115
### Libraries {:.no_toc}
82116

83117
#### `dart:cli`
84118

85-
* **Experimental** **Removed**: [The `waitFor` function][52121]
119+
- **Experimental** **Removed**: [The `waitFor` function][52121]
86120
has been removed.
87121

88122
[52121]: {{site.repo.dart.sdk}}/issues/52121
@@ -92,8 +126,10 @@ accounting for them before the 3.4.0 release.
92126
- These libraries are now marked as legacy and
93127
will see less support in the future.
94128
New projects should prefer to use [`package:web`][] and `dart:js_interop`.
129+
To learn more, check out [Migrate to package:web][].
95130

96131
[`package:web`]: {{site.pub-pkg}}/web
132+
[Migrate to package:web]: /interop/js-interop/package-web
97133

98134
#### `dart:js`
99135

@@ -111,9 +147,21 @@ accounting for them before the 3.4.0 release.
111147

112148
[`/go/next-gen-js-interop`]: {{site.redirect.go}}/next-gen-js-interop
113149

150+
#### `dart:io`
151+
152+
- [`Stdout` has a new field `lineTerminator`, which allows
153+
developers to control the line ending used by `stdout` and `stderr`.][53863]
154+
Classes that implement `Stdout` must define the `lineTerminator` field.
155+
The default semantics of `stdout` and `stderr` are not changed.
156+
- **Deprecated**: The `FileSystemDeleteEvent.isDirectory` property.
157+
It always returns `false`.
158+
159+
[53863]: {{site.repo.dart.sdk}}/issues/53863
160+
114161
#### `dart:typed_data`
115162

116-
* **Deprecated**: [The unmodifiable view classes for typed data are deprecated][53128].
163+
- **Deprecated**:
164+
[The unmodifiable view classes for typed data are deprecated][53128].
117165
Instead of using the constructors of these classes, use
118166
the new `asUnmodifiableView` methods on typed data lists.
119167

@@ -123,16 +171,22 @@ accounting for them before the 3.4.0 release.
123171

124172
#### Production JavaScript compiler (dart2js)
125173

126-
* **Experimental** **Deprecated**: You should now specify a format to
174+
- **Experimental** **Deprecated**: You should now specify a format to
127175
the `--dump-info` CLI option of either `binary` or `json`.
128176
The `json` format is deprecated and might be removed in a future Dart release.
129177

130178
#### Wasm compiler (dart2wasm)
131179

132-
* **Experimental**: Various `dart compile wasm` CLI arguments have
180+
- **Experimental**: Various `dart compile wasm` CLI arguments have
133181
been updated, removed, or replaced.
134182
To learn more, run `dart compile wasm --verbose --help`.
135183

184+
### Runtime {:.no_toc}
185+
186+
- **Removed** The Dart VM longer supports external strings.
187+
As a result, the `Dart_IsExternalString`, `Dart_NewExternalLatin1String`, and
188+
`Dart_NewExternalUTF16String` functions have been removed from the Dart C API.
189+
136190
## 3.3.0
137191

138192
### SDK {:.no_toc}

0 commit comments

Comments
 (0)