OLD | NEW |
1 ## 1.13.0 | 1 ## 1.13.0 |
2 | 2 |
3 ### Core library changes | 3 ### Core library changes |
4 * `dart:async` | 4 * `dart:async` |
5 * `StreamTransformer` instances created with `fromHandlers` with no | 5 * `StreamTransformer` instances created with `fromHandlers` with no |
6 `handleError` callback now forward stack traces along with errors to the | 6 `handleError` callback now forward stack traces along with errors to the |
7 resulting streams. | 7 resulting streams. |
8 | 8 |
9 * `dart:core` | 9 * `dart:core` |
10 * `Uri` added `removeFragment` method. | 10 * `Uri` added `removeFragment` method. |
11 * `String.allMatches` (implementing `Pattern.allMatches`) is now lazy, | 11 * `String.allMatches` (implementing `Pattern.allMatches`) is now lazy, |
12 as all `allMatches` implementations are intended to be. | 12 as all `allMatches` implementations are intended to be. |
13 | 13 |
14 * `dart:io` | 14 * `dart:io` |
15 * `HttpClient` no longer sends URI fragments in the request. This is not | 15 * `HttpClient` no longer sends URI fragments in the request. This is not |
16 allowed by the HTTP protocol. | 16 allowed by the HTTP protocol. |
17 The `HttpServer` still gracefully receives fragments, but discards them | 17 The `HttpServer` still gracefully receives fragments, but discards them |
18 before delivering the request. | 18 before delivering the request. |
19 | 19 |
20 ### Tool changes | 20 ### Tool changes |
21 | 21 |
22 * `docgen` and 'dartdocgen' no longer ship in the sdk. The `docgen` sources have | 22 * `docgen` and 'dartdocgen' no longer ship in the sdk. The `docgen` sources have |
23 been removed from the repository. | 23 been removed from the repository. |
24 | 24 |
25 * This is the last release to ship the VM's "legacy debug protocol". | 25 * This is the last release to ship the VM's "legacy debug protocol". |
26 We intend to remove the legacy debug protocol in Dart VM 1.14. | 26 We intend to remove the legacy debug protocol in Dart VM 1.14. |
27 | 27 |
| 28 * The VM's Service Protocol has been updated to version 3.0 to take care |
| 29 of a number of issues uncovered by the first few non-observatory |
| 30 clients. This is a potentially breaking change for clients. |
| 31 |
28 ## 1.12.0 | 32 ## 1.12.0 |
29 | 33 |
30 ### Language changes | 34 ### Language changes |
31 | 35 |
32 * Null-aware operators | 36 * Null-aware operators |
33 * `??`: if null operator. `expr1 ?? expr2` evaluates to `expr1` if not `null
`, otherwise `expr2`. | 37 * `??`: if null operator. `expr1 ?? expr2` evaluates to `expr1` if not `null
`, otherwise `expr2`. |
34 * `??=`: null-aware assignment. `v ??= expr` causes `v` to be assigned `expr
` only if `v` is `null`. | 38 * `??=`: null-aware assignment. `v ??= expr` causes `v` to be assigned `expr
` only if `v` is `null`. |
35 * `x?.p`: null-aware access. `x?.p` evaluates to `x.p` if `x` is not `null`,
otherwise evaluates to `null`. | 39 * `x?.p`: null-aware access. `x?.p` evaluates to `x.p` if `x` is not `null`,
otherwise evaluates to `null`. |
36 * `x?.m()`: null-aware method invocation. `x?.m()` invokes `m` only if `x` i
s not `null`. | 40 * `x?.m()`: null-aware method invocation. `x?.m()` invokes `m` only if `x` i
s not `null`. |
37 | 41 |
(...skipping 510 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
548 they will keep the Dart process alive until they time out. This fixes the | 552 they will keep the Dart process alive until they time out. This fixes the |
549 handling of persistent connections. Previously, the client would shut down | 553 handling of persistent connections. Previously, the client would shut down |
550 immediately after a request. | 554 immediately after a request. |
551 | 555 |
552 * **Breaking change:** `HttpServer` no longer compresses all traffic by | 556 * **Breaking change:** `HttpServer` no longer compresses all traffic by |
553 default. The new `autoCompress` property can be set to `true` to re-enable | 557 default. The new `autoCompress` property can be set to `true` to re-enable |
554 compression. | 558 compression. |
555 | 559 |
556 * `dart:isolate`: `Isolate.spawnUri` added the optional `packageRoot` argument, | 560 * `dart:isolate`: `Isolate.spawnUri` added the optional `packageRoot` argument, |
557 which controls how it resolves `package:` URIs. | 561 which controls how it resolves `package:` URIs. |
OLD | NEW |