Skip to content

Commit 413c263

Browse files
authored
Release 8.0.0-nullsafety.0. (google#946)
* Release 8.0.0-nullsafety.0 `built_value`, not ready for `built_value_generator` yet. * Use null safe package test. * Update and run tool/presubmit. * Fix `built_value_test` goldens. * Update `chat_example` pubspec and generated files. * Update `example` pubspec and generated files.
1 parent 75d88c9 commit 413c263

File tree

128 files changed

+784
-889
lines changed

Some content is hidden

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

128 files changed

+784
-889
lines changed

CHANGELOG.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
# Changelog
22

3-
# 8.0.0 (unmigrated)
3+
# 8.0.0-nullsafety.0
44

55
- Migrate to NNBD.
66
- Remove dependency on `package:quiver`.

benchmark/lib/node.g.dart

+6-7
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

benchmark/lib/simple_value.g.dart

+13-13
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

benchmark/pubspec.yaml

+7-6
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: benchmark
2-
version: 7.1.0
2+
version: 8.0.0-nullsafety.0
33
publish_to: none
44
description: >
55
Benchmark, not for publishing.
@@ -14,13 +14,14 @@ dependencies:
1414

1515
dev_dependencies:
1616
build_runner: ^1.0.0
17-
built_value_generator: ^7.1.0
17+
built_value_generator: # ^8.0.0-nullsafety.0
18+
path: ../built_value_generator
1819
pedantic: ^1.4.0
1920
quiver: '>=0.21.0 <3.0.0'
2021
test: ^1.0.0
2122

23+
# Dependency overrides are needed to use null safe `built_value` until it rolls
24+
# into `package:build_runner`.
2225
dependency_overrides:
23-
built_value:
24-
path: ../built_value
25-
built_value_generator:
26-
path: ../built_value_generator
26+
built_collection: 5.0.0-nullsafety.0
27+
built_value: 8.0.0-nullsafety.0

built_value/pubspec.yaml

+6-89
Original file line numberDiff line numberDiff line change
@@ -1,101 +1,18 @@
11
name: built_value
2-
version: 7.1.0
2+
version: 8.0.0-nullsafety.0
33
description: >
44
Value types with builders, Dart classes as enums, and serialization.
55
This library is the runtime dependency.
66
homepage: https://github.com/google/built_value.dart
77

88
environment:
9-
sdk: '>=2.9.0-18.0 <2.10.0'
10-
9+
sdk: '>=2.12.0-0 <3.0.0'
1110

1211
dependencies:
13-
built_collection: ^5.0.0
14-
collection: ^1.0.0
15-
fixnum: ^1.0.0
12+
built_collection: ^5.0.0-nullsafety
13+
collection: ^1.15.0-nullsafety
14+
fixnum: ^1.0.0-nullsafety
1615

1716
dev_dependencies:
1817
pedantic: ^1.4.0
19-
test: ^1.0.0
20-
21-
dependency_overrides:
22-
built_collection:
23-
git:
24-
url: git://github.com/google/built_collection.dart.git
25-
ref: 88de195928b75fc5dd25507baed14cf45c267a62
26-
async:
27-
git:
28-
url: git://github.com/dart-lang/async.git
29-
ref: null_safety
30-
boolean_selector:
31-
git:
32-
url: git://github.com/dart-lang/boolean_selector.git
33-
ref: null_safety
34-
charcode:
35-
git:
36-
url: git://github.com/dart-lang/charcode.git
37-
ref: null_safety
38-
collection:
39-
git:
40-
url: git://github.com/dart-lang/collection.git
41-
ref: null_safety
42-
fixnum:
43-
git:
44-
url: git://github.com/dart-lang/fixnum.git
45-
ref: 9b38f49f6679654d66a363e69e48173cca07e882
46-
matcher:
47-
git:
48-
url: git://github.com/dart-lang/matcher.git
49-
ref: null_safety
50-
meta:
51-
git:
52-
url: git://github.com/dart-lang/sdk.git
53-
ref: null_safety-pkgs
54-
path: pkg/meta
55-
path:
56-
git:
57-
url: git://github.com/dart-lang/path.git
58-
ref: null_safety
59-
pedantic:
60-
git:
61-
url: git://github.com/dart-lang/pedantic.git
62-
ref: null_safety
63-
pool:
64-
git:
65-
url: git://github.com/dart-lang/pool.git
66-
ref: null_safety
67-
source_span:
68-
git:
69-
url: git://github.com/dart-lang/source_span.git
70-
ref: null_safety
71-
stack_trace:
72-
git:
73-
url: git://github.com/dart-lang/stack_trace.git
74-
ref: null_safety
75-
stream_channel:
76-
git:
77-
url: git://github.com/dart-lang/stream_channel.git
78-
ref: null_safety
79-
string_scanner:
80-
git:
81-
url: git://github.com/dart-lang/string_scanner.git
82-
ref: null_safety
83-
term_glyph:
84-
git:
85-
url: git://github.com/dart-lang/term_glyph.git
86-
ref: null_safety
87-
test_api:
88-
git:
89-
url: git://github.com/dart-lang/test.git
90-
ref: null_safety
91-
path: pkgs/test_api
92-
test_core:
93-
git:
94-
url: git://github.com/dart-lang/test.git
95-
ref: null_safety
96-
path: pkgs/test_core
97-
test:
98-
git:
99-
url: git://github.com/dart-lang/test.git
100-
ref: null_safety
101-
path: pkgs/test
18+
test: ^1.16.0-nullsafety

built_value/test/serializers_test.dart

+1-1
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,6 @@ class TestSerializer implements PrimitiveSerializer<Object?> {
5858
@override
5959
Object serialize(Serializers serializers, Object? object,
6060
{FullType specifiedType = FullType.unspecified}) {
61-
return null!;
61+
return '';
6262
}
6363
}
+2-8
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
name: built_value_analyzer_plugin
2-
version: 7.1.0
2+
version: 8.0.0-nullsafety.0
33
description: >
44
Experimental analyzer plugin for the built_value code generator.
55
homepage: https://github.com/google/built_value.dart
@@ -11,15 +11,9 @@ dependencies:
1111
analyzer: '>=0.39.0 <0.40.0'
1212
analyzer_plugin: '>=0.1.0 <0.3.0'
1313
built_value: '>=7.0.0 <7.1.0'
14-
built_value_generator: ^7.1.0
14+
built_value_generator: ^8.0.0-nullsafety.0
1515

1616
dev_dependencies:
1717
build_test: ^0.10.3
1818
pedantic: ^1.4.0
1919
test: ^1.0.0
20-
21-
dependency_overrides:
22-
built_value:
23-
path: ../built_value
24-
built_value_generator:
25-
path: ../built_value_generator

built_value_generator/lib/builder.dart

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// Copyright (c) 2018, Google Inc. Please see the AUTHORS file for details.
22
// All rights reserved. Use of this source code is governed by a BSD-style
33
// license that can be found in the LICENSE file.
4+
// @dart=2.11
45

56
import 'package:build/build.dart';
67

built_value_generator/lib/built_value_generator.dart

+25-8
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// Copyright (c) 2015, Google Inc. Please see the AUTHORS file for details.
22
// All rights reserved. Use of this source code is governed by a BSD-style
33
// license that can be found in the LICENSE file.
4+
// @dart=2.11
45

56
import 'package:analyzer/dart/element/element.dart';
67
import 'package:build/build.dart';
@@ -18,12 +19,29 @@ class BuiltValueGenerator extends Generator {
1819

1920
@override
2021
Future<String> generate(LibraryReader library, BuildStep buildStep) async {
21-
var result = StringBuffer();
22+
// Workaround for https://github.com/google/built_value.dart/issues/941.
23+
LibraryElement libraryElement;
24+
var attempts = 0;
25+
while (true) {
26+
try {
27+
libraryElement = await buildStep.resolver.libraryFor(
28+
await buildStep.resolver.assetIdForElement(library.element));
29+
libraryElement.session.getParsedLibraryByElement(libraryElement);
30+
break;
31+
} catch (_) {
32+
++attempts;
33+
if (attempts == 10) {
34+
log.severe('Analysis session did not stabilize after ten tries!');
35+
return null;
36+
}
37+
}
38+
}
2239

40+
var result = StringBuffer();
2341
try {
24-
final enumCode = EnumSourceLibrary(library.element).generateCode();
42+
final enumCode = EnumSourceLibrary(libraryElement).generateCode();
2543
if (enumCode != null) result.writeln(enumCode);
26-
final serializerSourceLibrary = SerializerSourceLibrary(library.element);
44+
final serializerSourceLibrary = SerializerSourceLibrary(libraryElement);
2745
if (serializerSourceLibrary.needsBuiltJson ||
2846
serializerSourceLibrary.hasSerializers) {
2947
result.writeln(serializerSourceLibrary.generateCode());
@@ -32,21 +50,20 @@ class BuiltValueGenerator extends Generator {
3250
result.writeln(_error(e.message));
3351
log.severe(
3452
'Error in BuiltValueGenerator for '
35-
'${library.element.source.fullName}.',
53+
'${libraryElement.source.fullName}.',
3654
e,
3755
st);
3856
} catch (e, st) {
3957
result.writeln(_error(e.toString()));
4058
log.severe(
4159
'Unknown error in BuiltValueGenerator for '
42-
'${library.element.source.fullName}.',
60+
'${libraryElement.source.fullName}.',
4361
e,
4462
st);
4563
}
4664

47-
for (var element in library.allElements) {
48-
if (element is ClassElement &&
49-
ValueSourceClass.needsBuiltValue(element)) {
65+
for (var element in libraryElement.units.expand((unit) => unit.types)) {
66+
if (ValueSourceClass.needsBuiltValue(element)) {
5067
try {
5168
result.writeln(ValueSourceClass(element).generateCode() ?? '');
5269
} catch (e, st) {

built_value_generator/lib/src/dart_types.dart

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// Copyright (c) 2017, Google Inc. Please see the AUTHORS file for details.
22
// All rights reserved. Use of this source code is governed by a BSD-style
33
// license that can be found in the LICENSE file.
4+
// @dart=2.11
45

56
import 'package:analyzer/dart/element/element.dart';
67
import 'package:analyzer/dart/element/type.dart';

built_value_generator/lib/src/enum_source_class.dart

+1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
// Copyright (c) 2016, Google Inc. Please see the AUTHORS file for details.
22
// All rights reserved. Use of this source code is governed by a BSD-style
33
// license that can be found in the LICENSE file.
4+
// @dart=2.11
45

56
library built_value_generator.enum_source_class;
67

built_value_generator/lib/src/enum_source_class.g.dart

+11-9
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)