Skip to content

Commit c619f1e

Browse files
committed
Version 2.13.0-211.1.beta
Merge '2.13.0-211.0.dev' into beta
2 parents 01ae90c + dda1a31 commit c619f1e

File tree

3,151 files changed

+108816
-67303
lines changed

Some content is hidden

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

3,151 files changed

+108816
-67303
lines changed

.dart_tool/package_config.json

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
"constraint, update this by running tools/generate_package_config.dart."
1212
],
1313
"configVersion": 2,
14-
"generated": "2021-03-04T14:15:31.446260",
14+
"generated": "2021-04-06T14:39:06.316531",
1515
"generator": "tools/generate_package_config.dart",
1616
"packages": [
1717
{
@@ -70,13 +70,13 @@
7070
"name": "analysis_server",
7171
"rootUri": "../pkg/analysis_server",
7272
"packageUri": "lib/",
73-
"languageVersion": "2.6"
73+
"languageVersion": "2.12"
7474
},
7575
{
7676
"name": "analysis_server_client",
7777
"rootUri": "../pkg/analysis_server_client",
7878
"packageUri": "lib/",
79-
"languageVersion": "2.8"
79+
"languageVersion": "2.12"
8080
},
8181
{
8282
"name": "analyzer",
@@ -94,7 +94,7 @@
9494
"name": "analyzer_plugin",
9595
"rootUri": "../pkg/analyzer_plugin",
9696
"packageUri": "lib/",
97-
"languageVersion": "2.9"
97+
"languageVersion": "2.12"
9898
},
9999
{
100100
"name": "analyzer_utilities",
@@ -138,6 +138,12 @@
138138
"packageUri": "lib/",
139139
"languageVersion": "2.10"
140140
},
141+
{
142+
"name": "browser_launcher",
143+
"rootUri": "../third_party/pkg/browser_launcher",
144+
"packageUri": "lib/",
145+
"languageVersion": "2.2"
146+
},
141147
{
142148
"name": "build_integration",
143149
"rootUri": "../pkg/build_integration",
@@ -220,7 +226,7 @@
220226
"name": "dart_style",
221227
"rootUri": "../third_party/pkg_tested/dart_style",
222228
"packageUri": "lib/",
223-
"languageVersion": "2.9"
229+
"languageVersion": "2.12"
224230
},
225231
{
226232
"name": "dartdev",
@@ -238,7 +244,7 @@
238244
"name": "dds",
239245
"rootUri": "../pkg/dds",
240246
"packageUri": "lib/",
241-
"languageVersion": "2.6"
247+
"languageVersion": "2.12"
242248
},
243249
{
244250
"name": "dev_compiler",
@@ -339,7 +345,7 @@
339345
"name": "http_retry",
340346
"rootUri": "../third_party/pkg/http_retry",
341347
"packageUri": "lib/",
342-
"languageVersion": "1.24"
348+
"languageVersion": "2.12"
343349
},
344350
{
345351
"name": "http_throttle",
@@ -436,12 +442,6 @@
436442
"packageUri": "lib/",
437443
"languageVersion": "2.2"
438444
},
439-
{
440-
"name": "mustache",
441-
"rootUri": "../third_party/pkg/mustache",
442-
"packageUri": "lib/",
443-
"languageVersion": "2.0"
444-
},
445445
{
446446
"name": "native_stack_traces",
447447
"rootUri": "../pkg/native_stack_traces",
@@ -575,7 +575,7 @@
575575
"name": "shelf_proxy",
576576
"rootUri": "../third_party/pkg/shelf_proxy",
577577
"packageUri": "lib/",
578-
"languageVersion": "2.0"
578+
"languageVersion": "2.12"
579579
},
580580
{
581581
"name": "shelf_static",
@@ -631,12 +631,6 @@
631631
"packageUri": "lib/",
632632
"languageVersion": "2.12"
633633
},
634-
{
635-
"name": "stagehand",
636-
"rootUri": "../third_party/pkg/stagehand",
637-
"packageUri": "lib/",
638-
"languageVersion": "2.10"
639-
},
640634
{
641635
"name": "status_file",
642636
"rootUri": "../pkg/status_file",
@@ -695,13 +689,13 @@
695689
"name": "test_descriptor",
696690
"rootUri": "../third_party/pkg/test_descriptor",
697691
"packageUri": "lib/",
698-
"languageVersion": "2.0"
692+
"languageVersion": "2.12"
699693
},
700694
{
701695
"name": "test_process",
702696
"rootUri": "../third_party/pkg/test_process",
703697
"packageUri": "lib/",
704-
"languageVersion": "2.0"
698+
"languageVersion": "2.12"
705699
},
706700
{
707701
"name": "test_reflective_loader",
@@ -785,6 +779,12 @@
785779
"name": "webdriver",
786780
"rootUri": "../third_party/pkg/webdriver",
787781
"packageUri": "lib/",
782+
"languageVersion": "2.12"
783+
},
784+
{
785+
"name": "webkit_inspection_protocol",
786+
"rootUri": "../third_party/pkg/webkit_inspection_protocol",
787+
"packageUri": "lib/",
788788
"languageVersion": "2.0"
789789
},
790790
{

.gitignore

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -23,11 +23,6 @@
2323
/*.vcxproj.user
2424
*.stamp
2525

26-
# LLVM prebuilts
27-
/third_party/llvm/include
28-
/third_party/llvm/lib
29-
/third_party/llvm/.versions
30-
3126
# Gyp generated files
3227
*.xcodeproj
3328
*.intermediate

.packages

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@ async_helper:pkg/async_helper/lib
2020
bazel_worker:third_party/pkg/bazel_worker/lib
2121
benchmark_harness:third_party/pkg/benchmark_harness/lib
2222
boolean_selector:third_party/pkg/boolean_selector/lib
23+
browser_launcher:third_party/pkg/browser_launcher/lib
2324
build_integration:pkg/build_integration/lib
2425
charcode:third_party/pkg/charcode/lib
2526
cli_util:third_party/pkg/cli_util/lib
@@ -94,7 +95,6 @@ source_maps:third_party/pkg/source_maps/lib
9495
source_span:third_party/pkg/source_span/lib
9596
sse:third_party/pkg/sse/lib
9697
stack_trace:third_party/pkg/stack_trace/lib
97-
stagehand:third_party/pkg/stagehand/lib
9898
status_file:pkg/status_file/lib
9999
stream_channel:third_party/pkg/stream_channel/lib
100100
string_scanner:third_party/pkg/string_scanner/lib
@@ -118,6 +118,7 @@ vm_snapshot_analysis:pkg/vm_snapshot_analysis/lib
118118
wasm:pkg/wasm/lib
119119
watcher:third_party/pkg/watcher/lib
120120
webdriver:third_party/pkg/webdriver/lib
121+
webkit_inspection_protocol:third_party/pkg/webkit_inspection_protocol/lib
121122
web_components:third_party/pkg/web_components/lib
122123
web_socket_channel:third_party/pkg/web_socket_channel/lib
123124
yaml:third_party/pkg/yaml/lib

BUILD.gn

Lines changed: 1 addition & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -14,9 +14,6 @@ group("default") {
1414
testonly = true
1515
}
1616
deps = [ ":runtime" ]
17-
if (defined(checkout_llvm) && checkout_llvm) {
18-
deps += [ ":llvm_codegen" ]
19-
}
2017
}
2118

2219
group("most") {
@@ -26,16 +23,14 @@ group("most") {
2623
testonly = true
2724
}
2825
deps = [
26+
":analysis_server",
2927
":create_sdk",
3028
":dart2js",
3129
":dartanalyzer",
3230
":dartdevc",
3331
":runtime",
3432
":samples",
3533
]
36-
if (dart_target_arch != "arm") {
37-
deps += [ ":analysis_server" ]
38-
}
3934
}
4035

4136
group("runtime") {
@@ -117,21 +112,6 @@ group("analysis_server") {
117112
deps = [ "utils/analysis_server" ]
118113
}
119114

120-
group("check_llvm") {
121-
if (defined(checkout_llvm) && checkout_llvm) {
122-
deps = [ "runtime/llvm_codegen/test" ]
123-
}
124-
}
125-
126-
group("llvm_codegen") {
127-
if (defined(checkout_llvm) && checkout_llvm) {
128-
deps = [
129-
"runtime/llvm_codegen/bit",
130-
"runtime/llvm_codegen/codegen",
131-
]
132-
}
133-
}
134-
135115
# This is the target that is built on the dart2js build bots.
136116
# It must depend on anything that is required by the dart2js
137117
# test suites.

CHANGELOG.md

Lines changed: 124 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,139 @@
22

33
### Language
44

5+
* **Type aliases** [Non-function type aliases][]: Type aliases (names for
6+
types introduced via the `typedef` keyword) were previously restricted
7+
to only introduce names for function types. In this release, we
8+
remove this restriction and allow type aliases to name any kind of type.
9+
10+
```dart
11+
import 'dart:convert';
12+
13+
typedef JsonMap = Map<String, dynamic>;
14+
15+
JsonMap parseJsonMap(String input) => json.decode(input) as JsonMap;
16+
```
17+
18+
In addition to being usable as type annotations, type aliases that name
19+
class types can now also be used anywhere that the underlying class could be
20+
used, allowing type aliases to be used to safely rename existing classes.
21+
22+
```dart
23+
class NewClassName<T> {
24+
NewClassName.create(T x);
25+
static NewClassName<T> mkOne<T>(T x) => NewClassName<T>.create(x);
26+
}
27+
@Deprecated("Use NewClassName instead")
28+
typedef OldClassName<T> = NewClassName<T>;
29+
30+
class LegacyClass extends OldClassName<int> {
31+
LegacyClass() : super.create(3);
32+
}
33+
OldClassName<int> legacyCode() {
34+
var one = OldClassName.create(1);
35+
var two = OldClassName.mkOne(2);
36+
return LegacyClass();
37+
}
38+
```
39+
40+
The new type alias feature is only available as part of the 2.13 [language
41+
version](https://dart.dev/guides/language/evolution). To use this feature,
42+
you must set the lower bound on the sdk constraint for your package to 2.13
43+
or greater.
44+
45+
[Non-function type aliases]: https://github.com/dart-lang/language/blob/master/accepted/2.13/nonfunction-type-aliases/feature-specification.md
46+
547
### Core libraries
648
49+
#### `dart:collection`
50+
51+
- The `SplayTreeMap` was changed to allow `null` as key if the `compare`
52+
function allows it. It now checks that a new key can be used as an
53+
argument to the `compare` function when the member is added,
54+
*even if the map is empty* (in which case it just compares the key
55+
to itself).
56+
- The `SplayTreeSet` was changed to checks that a new element can be used as an
57+
argument to the `compare` function when the member is added,
58+
*even if the set is empty* (in which case it just compares the element
59+
to itself).
60+
761
### Dart VM
862
963
### Tools
1064
11-
#### Dartanalyzer
65+
#### Analyzer
66+
67+
- Static analyses with "error" severity can once again be ignored with
68+
comments like `// ignore: code` and `// ignore_for_file: code`. To declare
69+
that certain analysis codes, or codes with certain severities ("error",
70+
"warning", and "info") cannot be ignored with such comments, list them in
71+
`analysis_options.yaml`, under the `analyzer` heading, with a new YAML key,
72+
`cannot-ignore`. For example, to declare that "error" codes and
73+
`unused_import` cannot be ignored, write the following into
74+
`analysis_options.yaml`:
75+
76+
```yaml
77+
analyzer:
78+
cannot-ignore:
79+
- error
80+
- unused_import
81+
```
82+
83+
#### dart format
84+
85+
* Flatten indentation on nested chains of conditional (`?:`) operators.
86+
87+
* Correct constructor initializer indentation after `required` named
88+
parameters.
1289

1390
#### Linter
1491

15-
Updated the Linter to `1.0.0`, which includes:
92+
Updated the Linter to `1.2.1`, which includes:
1693

94+
- improvements to `iterable_contains_unrelated_type` to better support `List`
95+
content checks.
96+
- fixes to `camel_case_types` and `prefer_mixin` to support non-function
97+
type aliases.
98+
- fixed `prefer_mixin` to properly make exceptions for `dart.collection`
99+
legacy mixins.
100+
- new lint: `use_build_context_synchronously` (experimental).
101+
- new lint: `avoid_multiple_declarations_per_line`.
17102
- full library migration to null-safety.
18103
- new lint: `use_if_null_to_convert_nulls_to_bools`.
19104
- new lint: `deprecated_consistency`.
20105
- new lint: `use_named_constants`.
21106
- deprecation of `avoid_as`.
22107

23-
## 2.12.0
108+
### Other libraries
109+
110+
#### `package:js`
111+
112+
* **Breaking change:** It is no longer valid to use `String`s that match
113+
an `@Native` annotation in an `@JS()` annotation for a non-anonymous JS
114+
interop class. This led to erroneous behavior due to the way interceptors
115+
work. If you need to work with a native class, prefer `dart:html`, an
116+
`@anonymous` class, or `js_util`. See issue [#44211][] for more details.
117+
118+
[#44211]: https://github.com/dart-lang/sdk/issues/44211
119+
120+
## 2.12.2 - 2021-03-17
121+
122+
This is a patch release that fixes crashes reported by Flutter 2 users (issue
123+
[flutter/flutter#78167][]).
124+
125+
[flutter/flutter#78167]: https://github.com/flutter/flutter/issues/78167
126+
127+
## 2.12.1 - 2021-03-10
128+
129+
This is a patch release that fixes:
130+
131+
* an unhandled exception in HTTPS connections (issue [#45047][]).
132+
* a typing issue in the typed_data `+` operator (issue [#45140][]).
133+
134+
[#45047]: https://github.com/dart-lang/sdk/issues/45047
135+
[#45140]: https://github.com/dart-lang/sdk/issues/45140
136+
137+
## 2.12.0 - 2021-03-03
24138

25139
### Language
26140

@@ -131,7 +245,7 @@ Updated the Linter to `1.0.0`, which includes:
131245

132246
### Tools
133247

134-
#### Dartanalyzer
248+
#### Analyzer
135249

136250
* Remove the `--use-fasta-parser`, `--preview-dart-2`, and
137251
`--enable-assert-initializers` command line options. These options haven't
@@ -318,7 +432,7 @@ Updated the Linter to `0.1.129`, which includes:
318432
[#44072]: https://github.com/dart-lang/sdk/issues/44072
319433
[dart tool]: https://dart.dev/tools/dart-tool
320434

321-
## 2.10.5 - 2020-01-21
435+
## 2.10.5 - 2021-01-21
322436

323437
This is a patch release that fixes a crash in the Dart VM. (issue [#44563][]).
324438

@@ -565,6 +679,11 @@ applications (issue [flutter/flutter#63038][]).
565679
* Indent blocks in initializers of multiple-variable declarations.
566680
* Update the null-aware subscript syntax from `?.[]` to `?[]`.
567681

682+
#### Analyzer
683+
684+
* Static analyses with a severity of "error" can no longer be ignored with
685+
comments (`// ignore: code` and `// ignore_for_file: code`).
686+
568687
#### Linter
569688

570689
Updated the Linter to `0.1.117`, which includes:

0 commit comments

Comments
 (0)