sdk
sdk copied to clipboard
[meta] Make Dart repos sound null safe
This is a meta issue used to track the progress on making various Dart repos sound null safe. This must happen prior to null safety becoming the only supported mode.
Published packages
- [x] https://github.com/dart-lang/dart-syntax-highlight/issues/25
- [x] https://github.com/dart-lang/dump-info-visualizer/issues/37
- [x] https://github.com/dart-lang/build/issues/3315
- [x] https://github.com/dart-lang/build/issues/3316
- [x] https://github.com/dart-lang/gcloud/issues/138
- [x] https://github.com/dart-lang/language/issues/2274
- [x] https://github.com/dart-lang/linter/issues/3442
- [x] https://github.com/dart-lang/sdk/issues/49176
- [x] https://github.com/dart-lang/sdk/issues/49177
- [x] https://github.com/dart-lang/shelf/issues/238
- [x] https://github.com/dart-lang/source_gen/issues/605
- [x] https://github.com/dart-lang/stream_transform/issues/150
- [x] https://github.com/dart-lang/test/issues/1707
- [x] https://github.com/dart-lang/webdev/issues/1327
- [x] https://github.com/dart-lang/webdev/issues/1637
- [x] https://github.com/google/built_collection.dart/issues/261
- [x] https://github.com/google/mono_repo.dart/issues/393
- [x] https://github.com/google/protobuf.dart/issues/672
- [x] https://github.com/dart-lang/sdk/issues/49184
- [ ] https://github.com/dart-lang/intl_translation/issues/165
- [ ] https://github.com/dart-lang/webdev/issues/1640
Non-published SDK packages
- [x] #49213
- [x] #49214
- [x] https://github.com/dart-lang/sdk/issues/46617
- [ ] https://github.com/dart-lang/sdk/issues/49212
- [ ] https://github.com/dart-lang/sdk/issues/50008
Info
Packages listed here should either be converted to null safety (indicated by having a lower SDK bounds of 2.12
), and make sure that no files are excluded from null safety (no files have a language comment of // @dart=2.7
, // @dart=2.8
, // @dart=2.9
, // @dart=2.10
, or // @dart=2.11
).
Note that we're only trying to find unintentional file opt-outs above - null safety conversions that weren't quite finished.
If the opt-out is intentional - there in order to test the opt-out handling and / or pre-null safe behavior - please update / edit / close the issue as appropriate. Additionally, consider adding a token on the line before the opt-out - // null_safety_optout_testing
. This will allow tools to ignore the opt-out when looking for unmigrated files, and, allow us to find and remove all null safe testing opt-outs at a later date. For cases like these, the full opt-out may then look something like:
// null_safety_optout_testing
// @dart=2.10
Some of these are intentional. We run tests which are not null safe in some packages to validate some specific unsound mode behavior. A bunch are in files that are named with a suffix of _opt_out_test.dart
.
Should we try to find a convention for this and exclude it from the search?
This was likely a one-shot search. If we need to update the grep logic to be more accurate, we certainly can. But it may be enough to just update the individual issues - reduce the hits found or close the issue entirely.
All done 🥳