Skip to content

Commit 1a18fff

Browse files
author
Dart CI
committed
Version 2.12.0-0.0.dev
Merge commit 'a6faf8f2f9c221e8a8bb8c0ec585d6befa679057' into 'dev'
2 parents ba80ed9 + a6faf8f commit 1a18fff

File tree

42 files changed

+154
-270
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

42 files changed

+154
-270
lines changed

.dart_tool/package_config.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@
124124
"name": "benchmark_harness",
125125
"rootUri": "../third_party/pkg/benchmark_harness",
126126
"packageUri": "lib/",
127-
"languageVersion": "2.10"
127+
"languageVersion": "2.12"
128128
},
129129
{
130130
"name": "boolean_selector",
@@ -261,7 +261,7 @@
261261
"name": "ffi",
262262
"rootUri": "../third_party/pkg/ffi",
263263
"packageUri": "lib/",
264-
"languageVersion": "2.10"
264+
"languageVersion": "2.12"
265265
},
266266
{
267267
"name": "fixnum",
@@ -773,4 +773,4 @@
773773
"languageVersion": "2.4"
774774
}
775775
]
776-
}
776+
}

CHANGELOG.md

Lines changed: 13 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,16 @@
1-
## 2.11.0
1+
## 2.12.0
2+
3+
### Language
4+
5+
**Breaking Change** [Null
6+
Safety](https://dart.dev/null-safety/understanding-null-safety) is now enabled
7+
by default in all packages with a lower sdk constraint of 2.12.0 or greater.
8+
Files that are not subject to language versioning (whether because they are not
9+
contained in a pub package, or because the package that they are contained in
10+
has no lower sdk constraint) are treated as opted into to null safety by default
11+
and may report new errors. Pub packages may be opted out of null safety by
12+
setting a min sdk constraint in pubspec.yaml of 2.9.0 or less. Files may be
13+
opted out of null safety by adding `// @dart=2.9` to the beginning of the file.
214

315
### Core libraries
416

pkg/analyzer/lib/src/dart/analysis/experiments.g.dart

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ part of 'experiments.dart';
88

99
/// The current version of the Dart language (or, for non-stable releases, the
1010
/// version of the language currently in the process of being developed).
11-
const _currentVersion = '2.11.0';
11+
const _currentVersion = '2.12.0';
1212

1313
/// A map containing information about all known experimental flags.
1414
final _knownFeatures = <String, ExperimentalFeature>{
@@ -98,7 +98,7 @@ class ExperimentalFeatures {
9898
isExpired: IsExpired.non_nullable,
9999
documentation: 'Non Nullable by default',
100100
experimentalReleaseVersion: Version.parse('2.10.0'),
101-
releaseVersion: null,
101+
releaseVersion: Version.parse('2.12.0'),
102102
);
103103

104104
static final nonfunction_type_aliases = ExperimentalFeature(
@@ -175,7 +175,7 @@ class IsEnabledByDefault {
175175
static const bool extension_methods = true;
176176

177177
/// Default state of the experiment "non-nullable"
178-
static const bool non_nullable = false;
178+
static const bool non_nullable = true;
179179

180180
/// Default state of the experiment "nonfunction-type-aliases"
181181
static const bool nonfunction_type_aliases = false;

pkg/compiler/test/codegen/data/tdiv1.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
// for details. All rights reserved. Use of this source code is governed by a
33
// BSD-style license that can be found in the LICENSE file.
44

5-
//@dart=2.10
5+
//@dart=2.12
66

77
/*member: main:ignore*/
88
void main() {

pkg/front_end/lib/src/api_prototype/experimental_flags_generated.dart

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -24,17 +24,17 @@ enum ExperimentalFlag {
2424
}
2525

2626
const Version enableAlternativeInvalidationStrategyVersion =
27-
const Version(2, 11);
27+
const Version(2, 12);
2828
const Version enableConstantUpdate2018Version = const Version(2, 0);
2929
const Version enableControlFlowCollectionsVersion = const Version(2, 0);
3030
const Version enableExtensionMethodsVersion = const Version(2, 6);
31-
const Version enableNonNullableVersion = const Version(2, 11);
32-
const Version enableNonfunctionTypeAliasesVersion = const Version(2, 11);
31+
const Version enableNonNullableVersion = const Version(2, 12);
32+
const Version enableNonfunctionTypeAliasesVersion = const Version(2, 12);
3333
const Version enableSetLiteralsVersion = const Version(2, 0);
3434
const Version enableSpreadCollectionsVersion = const Version(2, 0);
35-
const Version enableTripleShiftVersion = const Version(2, 11);
36-
const Version enableValueClassVersion = const Version(2, 11);
37-
const Version enableVarianceVersion = const Version(2, 11);
35+
const Version enableTripleShiftVersion = const Version(2, 12);
36+
const Version enableValueClassVersion = const Version(2, 12);
37+
const Version enableVarianceVersion = const Version(2, 12);
3838

3939
ExperimentalFlag parseExperimentalFlag(String flag) {
4040
switch (flag) {
@@ -69,7 +69,7 @@ const Map<ExperimentalFlag, bool> defaultExperimentalFlags = {
6969
ExperimentalFlag.constantUpdate2018: true,
7070
ExperimentalFlag.controlFlowCollections: true,
7171
ExperimentalFlag.extensionMethods: true,
72-
ExperimentalFlag.nonNullable: false,
72+
ExperimentalFlag.nonNullable: true,
7373
ExperimentalFlag.nonfunctionTypeAliases: false,
7474
ExperimentalFlag.setLiterals: true,
7575
ExperimentalFlag.spreadCollections: true,
@@ -93,31 +93,31 @@ const Map<ExperimentalFlag, bool> expiredExperimentalFlags = {
9393
};
9494

9595
const Map<ExperimentalFlag, Version> experimentEnabledVersion = {
96-
ExperimentalFlag.alternativeInvalidationStrategy: const Version(2, 11),
96+
ExperimentalFlag.alternativeInvalidationStrategy: const Version(2, 12),
9797
ExperimentalFlag.constantUpdate2018: const Version(2, 0),
9898
ExperimentalFlag.controlFlowCollections: const Version(2, 0),
9999
ExperimentalFlag.extensionMethods: const Version(2, 6),
100-
ExperimentalFlag.nonNullable: const Version(2, 11),
101-
ExperimentalFlag.nonfunctionTypeAliases: const Version(2, 11),
100+
ExperimentalFlag.nonNullable: const Version(2, 12),
101+
ExperimentalFlag.nonfunctionTypeAliases: const Version(2, 12),
102102
ExperimentalFlag.setLiterals: const Version(2, 0),
103103
ExperimentalFlag.spreadCollections: const Version(2, 0),
104-
ExperimentalFlag.tripleShift: const Version(2, 11),
105-
ExperimentalFlag.valueClass: const Version(2, 11),
106-
ExperimentalFlag.variance: const Version(2, 11),
104+
ExperimentalFlag.tripleShift: const Version(2, 12),
105+
ExperimentalFlag.valueClass: const Version(2, 12),
106+
ExperimentalFlag.variance: const Version(2, 12),
107107
};
108108

109109
const Map<ExperimentalFlag, Version> experimentReleasedVersion = {
110-
ExperimentalFlag.alternativeInvalidationStrategy: const Version(2, 11),
110+
ExperimentalFlag.alternativeInvalidationStrategy: const Version(2, 12),
111111
ExperimentalFlag.constantUpdate2018: const Version(2, 0),
112112
ExperimentalFlag.controlFlowCollections: const Version(2, 0),
113113
ExperimentalFlag.extensionMethods: const Version(2, 6),
114114
ExperimentalFlag.nonNullable: const Version(2, 10),
115-
ExperimentalFlag.nonfunctionTypeAliases: const Version(2, 11),
115+
ExperimentalFlag.nonfunctionTypeAliases: const Version(2, 12),
116116
ExperimentalFlag.setLiterals: const Version(2, 0),
117117
ExperimentalFlag.spreadCollections: const Version(2, 0),
118-
ExperimentalFlag.tripleShift: const Version(2, 11),
119-
ExperimentalFlag.valueClass: const Version(2, 11),
120-
ExperimentalFlag.variance: const Version(2, 11),
118+
ExperimentalFlag.tripleShift: const Version(2, 12),
119+
ExperimentalFlag.valueClass: const Version(2, 12),
120+
ExperimentalFlag.variance: const Version(2, 12),
121121
};
122122

123123
const AllowedExperimentalFlags defaultAllowedExperimentalFlags =

pkg/front_end/test/test_generator_test.dart

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -223,6 +223,6 @@ class Generator {
223223
Generator(this.typeParameters, this.beforePlug, this.afterPlug);
224224

225225
String generate(String plug) {
226-
return "${beforePlug}${plug}${afterPlug}";
226+
return "// @dart = 2.9\n${beforePlug}${plug}${afterPlug}";
227227
}
228228
}

pkg/front_end/testcases/general/experiment_release_version/main.dart.outline.expect

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,23 +9,20 @@
99
// // @dart=2.8
1010
// ^^^^^^^^^^^^
1111
//
12-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/unversioned_lib.dart:5:4: Error: This requires the null safety language feature, which is experimental.
13-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
12+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/unversioned_lib.dart:5:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
1413
// int? versionedUnallowedPackage; // error
1514
// ^
1615
//
17-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental and requires language version of 2.9 or higher.
18-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
16+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
1917
// int? versioned_2_8_AllowedPackage; // error
2018
// ^
2119
//
22-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
23-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
20+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
2421
// int? versioned_2_9_AllowedPackage; // error
2522
// ^
2623
//
27-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_10_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
28-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
24+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_10_lib.dart:7:4: Error: This requires the 'non-nullable' language feature to be enabled.
25+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
2926
// int? versionedAllowedPackage; // error
3027
// ^
3128
//
@@ -52,8 +49,8 @@ library;
5249
//
5350
// Problems in library:
5451
//
55-
// pkg/front_end/testcases/general/experiment_release_version/unversioned_lib.dart:5:4: Error: This requires the null safety language feature, which is experimental.
56-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
52+
// pkg/front_end/testcases/general/experiment_release_version/unversioned_lib.dart:5:4: Error: This requires the 'non-nullable' language feature to be enabled.
53+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
5754
// int? unversionedLibrary; // error
5855
// ^
5956
//
@@ -66,8 +63,7 @@ library;
6663
//
6764
// Problems in library:
6865
//
69-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental and requires language version of 2.9 or higher.
70-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
66+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
7167
// int? versioned_2_8_Library; // error
7268
// ^
7369
//
@@ -80,8 +76,7 @@ library;
8076
//
8177
// Problems in library:
8278
//
83-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
84-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
79+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
8580
// int? versioned_2_9_Library; // error
8681
// ^
8782
//
@@ -94,8 +89,8 @@ library;
9489
//
9590
// Problems in library:
9691
//
97-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_10_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
98-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
92+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_10_lib.dart:7:4: Error: This requires the 'non-nullable' language feature to be enabled.
93+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
9994
// int? versioned_2_10_Library; // error
10095
// ^
10196
//

pkg/front_end/testcases/general/experiment_release_version/main.dart.strong.expect

Lines changed: 11 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -9,23 +9,20 @@
99
// // @dart=2.8
1010
// ^^^^^^^^^^^^
1111
//
12-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/unversioned_lib.dart:5:4: Error: This requires the null safety language feature, which is experimental.
13-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
12+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/unversioned_lib.dart:5:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
1413
// int? versionedUnallowedPackage; // error
1514
// ^
1615
//
17-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental and requires language version of 2.9 or higher.
18-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
16+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
1917
// int? versioned_2_8_AllowedPackage; // error
2018
// ^
2119
//
22-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
23-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
20+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
2421
// int? versioned_2_9_AllowedPackage; // error
2522
// ^
2623
//
27-
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_10_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
28-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
24+
// pkg/front_end/testcases/general/experiment_release_version/not_allowed_package/lib/versioned_2_10_lib.dart:7:4: Error: This requires the 'non-nullable' language feature to be enabled.
25+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
2926
// int? versionedAllowedPackage; // error
3027
// ^
3128
//
@@ -51,8 +48,8 @@ library;
5148
//
5249
// Problems in library:
5350
//
54-
// pkg/front_end/testcases/general/experiment_release_version/unversioned_lib.dart:5:4: Error: This requires the null safety language feature, which is experimental.
55-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
51+
// pkg/front_end/testcases/general/experiment_release_version/unversioned_lib.dart:5:4: Error: This requires the 'non-nullable' language feature to be enabled.
52+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
5653
// int? unversionedLibrary; // error
5754
// ^
5855
//
@@ -65,8 +62,7 @@ library;
6562
//
6663
// Problems in library:
6764
//
68-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental and requires language version of 2.9 or higher.
69-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
65+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
7066
// int? versioned_2_8_Library; // error
7167
// ^
7268
//
@@ -79,8 +75,7 @@ library;
7975
//
8076
// Problems in library:
8177
//
82-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
83-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
78+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
8479
// int? versioned_2_9_Library; // error
8580
// ^
8681
//
@@ -93,8 +88,8 @@ library;
9388
//
9489
// Problems in library:
9590
//
96-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_10_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
97-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
91+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_10_lib.dart:7:4: Error: This requires the 'non-nullable' language feature to be enabled.
92+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
9893
// int? versioned_2_10_Library; // error
9994
// ^
10095
//

pkg/front_end/testcases/general/experiment_release_version/main.dart.strong.transformed.expect

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,8 @@ library;
2020
//
2121
// Problems in library:
2222
//
23-
// pkg/front_end/testcases/general/experiment_release_version/unversioned_lib.dart:5:4: Error: This requires the null safety language feature, which is experimental.
24-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
23+
// pkg/front_end/testcases/general/experiment_release_version/unversioned_lib.dart:5:4: Error: This requires the 'non-nullable' language feature to be enabled.
24+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
2525
// int? unversionedLibrary; // error
2626
// ^
2727
//
@@ -34,8 +34,7 @@ library;
3434
//
3535
// Problems in library:
3636
//
37-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental and requires language version of 2.9 or higher.
38-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
37+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_8_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
3938
// int? versioned_2_8_Library; // error
4039
// ^
4140
//
@@ -48,8 +47,7 @@ library;
4847
//
4948
// Problems in library:
5049
//
51-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
52-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
50+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_9_lib.dart:7:4: Error: This requires the null safety language feature, which requires language version of 2.10 or higher.
5351
// int? versioned_2_9_Library; // error
5452
// ^
5553
//
@@ -62,8 +60,8 @@ library;
6260
//
6361
// Problems in library:
6462
//
65-
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_10_lib.dart:7:4: Error: This requires the null safety language feature, which is experimental.
66-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
63+
// pkg/front_end/testcases/general/experiment_release_version/versioned_2_10_lib.dart:7:4: Error: This requires the 'non-nullable' language feature to be enabled.
64+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
6765
// int? versioned_2_10_Library; // error
6866
// ^
6967
//

pkg/front_end/testcases/general/null_safety_invalid_experiment.dart.outline.expect

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@ library;
22
//
33
// Problems in library:
44
//
5-
// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:4: Error: This requires the null safety language feature, which is experimental.
6-
// You can enable the experiment using the '--enable-experiment=non-nullable' command line option.
5+
// pkg/front_end/testcases/general/null_safety_invalid_experiment.dart:5:4: Error: This requires the 'non-nullable' language feature to be enabled.
6+
// The feature is on by default but is currently disabled, maybe because the '--enable-experiment=no-non-nullable' command line option is passed.
77
// int? i;
88
// ^
99
//

0 commit comments

Comments
 (0)