Skip to content

Commit efe4cce

Browse files
authored
Merge pull request #2800 from jcollins-g/nnbd-merge-from-master-0920
Merge into nnbd branch from master
2 parents 8a8972c + bf90966 commit efe4cce

16 files changed

+77
-67
lines changed

CHANGELOG.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,15 @@
1+
## 3.1.0
2+
* This version supports the Dart language feature constructor tearoffs,
3+
pending completion by other tools.
4+
* Allow embedded type parameters in comment references. (#2772)
5+
* Add testing for constructor tearoff constant rendering. (#2780)
6+
* Do not crash on package not found, instead provide a more useful
7+
explanation for users. (#2781, #2778)
8+
* `--allow-warnings-in-packages` no longer also applies to errors.
9+
The `--allow-errors-in-packages` flag should now work as intended.
10+
(#2785)
11+
* Some additional deprecations preparing for NNBD. (#2784)
12+
113
## 3.0.0
214
* BREAKING CHANGE: Refactor of Class, Enum, and Mixin types result in some
315
deleted interfaces in templates and a change in class hierarchy. (#2770)

dartdoc_options.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
dartdoc:
22
linkToSource:
33
root: '.'
4-
uriTemplate: 'https://github.com/dart-lang/dartdoc/blob/v3.0.0/%f%#L%l%'
4+
uriTemplate: 'https://github.com/dart-lang/dartdoc/blob/v3.1.0/%f%#L%l%'

lib/dartdoc.dart

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -25,8 +25,6 @@ import 'package:dartdoc/src/logging.dart';
2525
import 'package:dartdoc/src/matching_link_result.dart';
2626
import 'package:dartdoc/src/model/model.dart';
2727
import 'package:dartdoc/src/package_meta.dart';
28-
import 'package:dartdoc/src/tool_definition.dart';
29-
import 'package:dartdoc/src/tool_runner.dart';
3028
import 'package:dartdoc/src/tuple.dart';
3129
import 'package:dartdoc/src/utils.dart';
3230
import 'package:dartdoc/src/version.dart';
@@ -196,12 +194,15 @@ class Dartdoc {
196194

197195
Stream<String> get onCheckProgress => _onCheckProgress.stream;
198196

197+
@Deprecated('Will be removed in 4.0.0. '
198+
'Use the return value from generateDocsBase instead.')
199199
PackageGraph packageGraph;
200200

201201
@visibleForTesting
202202
Future<DartdocResults> generateDocsBase() async {
203203
var stopwatch = Stopwatch()..start();
204-
packageGraph = await packageBuilder.buildPackageGraph();
204+
var packageGraph = await packageBuilder.buildPackageGraph();
205+
this.packageGraph = packageGraph;
205206
var seconds = stopwatch.elapsedMilliseconds / 1000.0;
206207
var libs = packageGraph.libraries.length;
207208
logInfo("Initialized dartdoc with $libs librar${libs == 1 ? 'y' : 'ies'} "
@@ -245,10 +246,11 @@ class Dartdoc {
245246
/// thrown if dartdoc fails in an expected way, for example if there is an
246247
/// analysis error in the code.
247248
Future<DartdocResults> generateDocs() async {
249+
DartdocResults dartdocResults;
248250
try {
249251
logInfo('Documenting ${config.topLevelPackageMeta}...');
250252

251-
var dartdocResults = await generateDocsBase();
253+
dartdocResults = await generateDocsBase();
252254
if (dartdocResults.packageGraph.localPublicLibraries.isEmpty) {
253255
logWarning('dartdoc could not find any libraries to document');
254256
}
@@ -263,10 +265,7 @@ class Dartdoc {
263265
logInfo('Success! Docs generated into $outDirPath');
264266
return dartdocResults;
265267
} finally {
266-
// Clear out any cached tool snapshots and temporary directories.
267-
SnapshotCache.instanceFor(config.resourceProvider).dispose();
268-
// ignore: unawaited_futures
269-
ToolTempFileTracker.instance?.dispose();
268+
dartdocResults?.packageGraph?.dispose();
270269
}
271270
}
272271

lib/src/model/class.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
// @dart=2.9
66

77
import 'package:analyzer/dart/element/element.dart';
8-
import 'package:dartdoc/src/model/inheriting_container.dart';
98
import 'package:dartdoc/src/model/model.dart';
109

1110
import 'comment_referable.dart';

lib/src/model/inheritable.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
// @dart=2.9
66

77
import 'package:dartdoc/src/model/feature.dart';
8-
import 'package:dartdoc/src/model/inheriting_container.dart';
98
import 'package:dartdoc/src/model/model.dart';
109
import 'package:dartdoc/src/special_elements.dart';
1110

lib/src/model/inheriting_container.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import 'package:analyzer/dart/element/element.dart';
88
import 'package:analyzer/dart/element/type.dart';
99
import 'package:dartdoc/src/element_type.dart';
10-
import 'package:dartdoc/src/model/class.dart';
1110
import 'package:dartdoc/src/model/comment_referable.dart';
1211
import 'package:dartdoc/src/model/extension_target.dart';
1312
import 'package:dartdoc/src/model/model.dart';

lib/src/model/mixin.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,6 @@
77
import 'package:analyzer/dart/element/element.dart';
88
import 'package:analyzer/dart/element/type.dart';
99
import 'package:dartdoc/src/element_type.dart';
10-
import 'package:dartdoc/src/model/inheriting_container.dart';
1110
import 'package:dartdoc/src/model/model.dart';
1211
import 'package:dartdoc/src/model_utils.dart' as model_utils;
1312
import 'package:dartdoc/src/special_elements.dart';

lib/src/model/package_graph.dart

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,8 @@ import 'package:dartdoc/src/package_meta.dart'
2222
show PackageMeta, PackageMetaProvider;
2323
import 'package:dartdoc/src/render/renderer_factory.dart';
2424
import 'package:dartdoc/src/special_elements.dart';
25+
import 'package:dartdoc/src/tool_definition.dart';
26+
import 'package:dartdoc/src/tool_runner.dart';
2527
import 'package:dartdoc/src/tuple.dart';
2628
import 'package:dartdoc/src/warnings.dart';
2729

@@ -39,6 +41,14 @@ class PackageGraph with CommentReferable, Nameable {
3941
Package.fromPackageMeta(packageMeta, this);
4042
}
4143

44+
void dispose() {
45+
// Clear out any cached tool snapshots and temporary directories.
46+
// TODO(jcollins-g): Consider ownership change for these objects
47+
// so they are tied to PackageGraph instead of being global.
48+
SnapshotCache.instanceFor(config.resourceProvider).dispose();
49+
ToolTempFileTracker.instanceFor(config.resourceProvider).dispose();
50+
}
51+
4252
@override
4353
String get name => null;
4454

lib/src/model/prefix.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@ import 'package:analyzer/dart/element/element.dart';
88
import 'package:analyzer/dart/element/scope.dart';
99
import 'package:analyzer/src/dart/element/element.dart';
1010
import 'package:dartdoc/src/model/comment_referable.dart';
11-
import 'package:dartdoc/src/model/library.dart';
1211

1312
import '../../dartdoc.dart';
1413

lib/src/model_utils.dart

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ import 'package:analyzer/dart/element/element.dart';
1414
import 'package:analyzer/file_system/file_system.dart';
1515
import 'package:analyzer/src/dart/ast/utilities.dart';
1616
import 'package:dartdoc/dartdoc.dart' show DartdocFailure;
17-
import 'package:dartdoc/src/model/inheriting_container.dart';
1817
import 'package:dartdoc/src/model/model.dart';
1918
import 'package:glob/glob.dart';
2019
import 'package:path/path.dart' as path;

0 commit comments

Comments
 (0)