Skip to content

Commit

Permalink
language evolution entry for 2.19
Browse files Browse the repository at this point in the history
  • Loading branch information
MaryaBelanger authored and parlough committed Jan 24, 2023
1 parent 01de17d commit 26b0a8a
Showing 1 changed file with 21 additions and 0 deletions.
21 changes: 21 additions & 0 deletions src/_guides/language/evolution.md
Original file line number Diff line number Diff line change
Expand Up @@ -284,6 +284,27 @@ see [Adding features to a class: mixins][] in the language tour.

[Adding features to a class: mixins]: /guides/language/language-tour#adding-features-to-a-class-mixins

### Dart 2.19

Dart 2.19 introduced some precautions surrounding type inference.
The cases covered are rare, but needed to be addressed to close
loopholes and make way for more complex inference-related language
features upcoming in the next major release. These include:

* Flow analysis now flags code as unreachable due to `Never` and `Null` types.
* Inaccessible private names can no longer delegate to `noSuchMethod`.
* Cyclic dependencies now cause a compile-time error during top-level type inference.

Dart 2.19 also introduced support for unnamed libraries. Library directives, used for appending library-level doc comments and annotations, can ([and should][]) now be written without a name:

```dart
/// A really great test library.
@TestOn('browser')
library;
```

[and should]: /guides/language/effective-dart/style#dont-explicitly-name-libraries

## Language versioning

A single Dart SDK can simultaneously support
Expand Down

0 comments on commit 26b0a8a

Please sign in to comment.