From 7a25129c9cf7ca8d61d8fa06c72287f95fa0ef22 Mon Sep 17 00:00:00 2001 From: David Morgan Date: Wed, 6 Aug 2025 15:09:39 +0200 Subject: [PATCH 1/2] Allow analyzer 8. --- build/CHANGELOG.md | 3 ++- build/pubspec.yaml | 6 +++--- build_modules/CHANGELOG.md | 3 ++- build_modules/pubspec.yaml | 4 ++-- build_resolvers/CHANGELOG.md | 3 ++- build_resolvers/pubspec.yaml | 8 ++++---- build_runner/CHANGELOG.md | 2 +- build_runner/pubspec.yaml | 6 +++--- build_runner_core/CHANGELOG.md | 3 ++- build_runner_core/pubspec.yaml | 10 +++++----- build_test/CHANGELOG.md | 3 ++- build_test/pubspec.yaml | 10 +++++----- build_web_compilers/CHANGELOG.md | 3 ++- build_web_compilers/pubspec.yaml | 4 ++-- example/pubspec.yaml | 2 +- 15 files changed, 38 insertions(+), 32 deletions(-) diff --git a/build/CHANGELOG.md b/build/CHANGELOG.md index d3068409a..a4b0f250b 100644 --- a/build/CHANGELOG.md +++ b/build/CHANGELOG.md @@ -1,6 +1,7 @@ -## 3.0.1-wip +## 3.0.1 - Small improvements to RAM usage. +- Allow `analyzer` 8.0.0. ## 3.0.0 diff --git a/build/pubspec.yaml b/build/pubspec.yaml index 751c6179a..1c5c1e69b 100644 --- a/build/pubspec.yaml +++ b/build/pubspec.yaml @@ -1,5 +1,5 @@ name: build -version: 3.0.1-wip +version: 3.0.1 description: A package for authoring build_runner compatible code generators. repository: https://github.com/dart-lang/build/tree/master/build resolution: workspace @@ -8,9 +8,9 @@ environment: sdk: ^3.7.0 dependencies: - analyzer: '>=7.4.0 <8.0.0' + analyzer: '>=7.4.0 <9.0.0' async: ^2.5.0 - build_runner_core: '9.2.1-wip' + build_runner_core: '9.2.1' built_collection: ^5.1.1 built_value: ^8.9.5 convert: ^3.0.0 diff --git a/build_modules/CHANGELOG.md b/build_modules/CHANGELOG.md index cb5292d5c..3158a7bb0 100644 --- a/build_modules/CHANGELOG.md +++ b/build_modules/CHANGELOG.md @@ -1,6 +1,7 @@ -## 5.0.16-wip +## 5.0.16 - Remove unused dep: `build_config`. +- Allow `analyzer` 8.0.0. ## 5.0.15 diff --git a/build_modules/pubspec.yaml b/build_modules/pubspec.yaml index af65f5749..7dfdc5513 100644 --- a/build_modules/pubspec.yaml +++ b/build_modules/pubspec.yaml @@ -1,5 +1,5 @@ name: build_modules -version: 5.0.16-wip +version: 5.0.16 description: >- Builders to analyze and split Dart code into individually compilable modules based on imports. @@ -10,7 +10,7 @@ environment: sdk: '>=3.7.0 <3.10.0-z' dependencies: - analyzer: '>=5.1.0 <8.0.0' + analyzer: '>=5.1.0 <9.0.0' async: ^2.5.0 bazel_worker: ^1.0.0 build: '>=2.0.0 <4.0.0' diff --git a/build_resolvers/CHANGELOG.md b/build_resolvers/CHANGELOG.md index 2786d6ab5..f96c71e38 100644 --- a/build_resolvers/CHANGELOG.md +++ b/build_resolvers/CHANGELOG.md @@ -1,6 +1,7 @@ -## 3.0.1-wip +## 3.0.1 - Use `build` 3.0.1. +- Allow `analyzer` 8.0.0. ## 3.0.0 diff --git a/build_resolvers/pubspec.yaml b/build_resolvers/pubspec.yaml index 363506813..2a4e73392 100644 --- a/build_resolvers/pubspec.yaml +++ b/build_resolvers/pubspec.yaml @@ -1,5 +1,5 @@ name: build_resolvers -version: 3.0.1-wip +version: 3.0.1 description: Resolve Dart code in a Builder repository: https://github.com/dart-lang/build/tree/master/build_resolvers resolution: workspace @@ -8,10 +8,10 @@ environment: sdk: ^3.7.0 dependencies: - analyzer: '>=7.4.0 <8.0.0' + analyzer: '>=7.4.0 <9.0.0' async: ^2.5.0 - build: '3.0.1-wip' - build_runner_core: '9.2.1-wip' + build: '3.0.1' + build_runner_core: '9.2.1' collection: ^1.17.0 convert: ^3.1.1 crypto: ^3.0.0 diff --git a/build_runner/CHANGELOG.md b/build_runner/CHANGELOG.md index e578cccba..9de76a824 100644 --- a/build_runner/CHANGELOG.md +++ b/build_runner/CHANGELOG.md @@ -1,4 +1,4 @@ -## 2.6.1-wip +## 2.6.1 - Use `build` 3.0.1. diff --git a/build_runner/pubspec.yaml b/build_runner/pubspec.yaml index 9cf7cdddf..762b7a1b3 100644 --- a/build_runner/pubspec.yaml +++ b/build_runner/pubspec.yaml @@ -1,5 +1,5 @@ name: build_runner -version: 2.6.1-wip +version: 2.6.1 description: A build system for Dart code generation and modular compilation. repository: https://github.com/dart-lang/build/tree/master/build_runner resolution: workspace @@ -15,10 +15,10 @@ platforms: dependencies: args: ^2.0.0 async: ^2.5.0 - build: '3.0.1-wip' + build: '3.0.1' build_config: ">=1.1.0 <1.2.0" build_daemon: ^4.0.0 - build_runner_core: '9.2.1-wip' + build_runner_core: '9.2.1' code_builder: ^4.2.0 crypto: ^3.0.0 dart_style: '>=2.3.7 <4.0.0' diff --git a/build_runner_core/CHANGELOG.md b/build_runner_core/CHANGELOG.md index 143ec1752..8b5126c1c 100644 --- a/build_runner_core/CHANGELOG.md +++ b/build_runner_core/CHANGELOG.md @@ -1,6 +1,7 @@ -## 9.2.1-wip +## 9.2.1 - Use `build` 3.0.1. +- Allow `analyzer` 8.0.0. ## 9.2.0 diff --git a/build_runner_core/pubspec.yaml b/build_runner_core/pubspec.yaml index a66d85841..329578857 100644 --- a/build_runner_core/pubspec.yaml +++ b/build_runner_core/pubspec.yaml @@ -1,5 +1,5 @@ name: build_runner_core -version: 9.2.1-wip +version: 9.2.1 description: Core tools to organize the structure of a build and run Builders. repository: https://github.com/dart-lang/build/tree/master/build_runner_core resolution: workspace @@ -13,12 +13,12 @@ platforms: macos: dependencies: - analyzer: '>=6.9.0 <8.0.0' + analyzer: '>=6.9.0 <9.0.0' async: ^2.5.0 - build: '3.0.1-wip' + build: '3.0.1' build_config: ^1.0.0 - build_resolvers: '3.0.1-wip' - build_runner: '2.6.1-wip' + build_resolvers: '3.0.1' + build_runner: '2.6.1' built_collection: ^5.1.1 built_value: ^8.10.1 collection: ^1.15.0 diff --git a/build_test/CHANGELOG.md b/build_test/CHANGELOG.md index 74dce3ed4..4eafcf975 100644 --- a/build_test/CHANGELOG.md +++ b/build_test/CHANGELOG.md @@ -1,6 +1,7 @@ -## 3.3.1-wip +## 3.3.1 - Use `build` 3.0.1. +- Allow `analyzer` 8.0.0. ## 3.3.0 diff --git a/build_test/pubspec.yaml b/build_test/pubspec.yaml index e16872b1d..ffe5db1c6 100644 --- a/build_test/pubspec.yaml +++ b/build_test/pubspec.yaml @@ -1,6 +1,6 @@ name: build_test description: Utilities for writing unit tests of Builders. -version: 3.3.1-wip +version: 3.3.1 repository: https://github.com/dart-lang/build/tree/master/build_test resolution: workspace @@ -8,10 +8,10 @@ environment: sdk: ^3.7.0 dependencies: - build: '3.0.1-wip' + build: '3.0.1' build_config: ^1.0.0 - build_resolvers: '3.0.1-wip' - build_runner_core: '9.2.1-wip' + build_resolvers: '3.0.1' + build_runner_core: '9.2.1' crypto: ^3.0.0 glob: ^2.0.0 html: ^0.15.0 @@ -25,7 +25,7 @@ dependencies: watcher: ^1.0.0 dev_dependencies: - analyzer: '>=5.2.0 <8.0.0' + analyzer: '>=5.2.0 <9.0.0' topics: - build-runner diff --git a/build_web_compilers/CHANGELOG.md b/build_web_compilers/CHANGELOG.md index 99ef6449d..19e961bb7 100644 --- a/build_web_compilers/CHANGELOG.md +++ b/build_web_compilers/CHANGELOG.md @@ -1,6 +1,7 @@ -## 4.2.1-wip +## 4.2.1 - Remove unused deps: `build_config`. +- Allow `analyzer` 8.0.0. ## 4.2.0 diff --git a/build_web_compilers/pubspec.yaml b/build_web_compilers/pubspec.yaml index d850aeb38..a2958a754 100644 --- a/build_web_compilers/pubspec.yaml +++ b/build_web_compilers/pubspec.yaml @@ -1,5 +1,5 @@ name: build_web_compilers -version: 4.2.1-wip +version: 4.2.1 description: Builder implementations wrapping the dart2js and DDC compilers. repository: https://github.com/dart-lang/build/tree/master/build_web_compilers resolution: workspace @@ -8,7 +8,7 @@ environment: sdk: '>=3.7.0 <3.10.0-z' dependencies: - analyzer: '>=5.1.0 <8.0.0' + analyzer: '>=5.1.0 <9.0.0' archive: '>=3.0.0 <5.0.0' bazel_worker: ^1.0.0 build: '>=2.0.0 <4.0.0' diff --git a/example/pubspec.yaml b/example/pubspec.yaml index 32d38acd0..fe174dc44 100644 --- a/example/pubspec.yaml +++ b/example/pubspec.yaml @@ -5,7 +5,7 @@ environment: resolution: workspace dependencies: - analyzer: ">=5.0.0 <8.0.0" + analyzer: ">=5.0.0 <9.0.0" build: ^3.0.0 # Not imported in code, but used to constrain `build.yaml` requirements build_config: ^1.0.0 From cbdf307c1cf720211ca78804c9b59b368122049b Mon Sep 17 00:00:00 2001 From: David Morgan Date: Thu, 7 Aug 2025 09:51:40 +0200 Subject: [PATCH 2/2] Fixes for analyzer 8. --- build/lib/src/analyzer/resolver.dart | 2 ++ build/lib/src/builder/build_step.dart | 2 ++ build_resolvers/lib/src/resolver.dart | 2 ++ build_resolvers/test/resolver_test.dart | 25 ++++++++++++++----- .../lib/src/generate/build_step_impl.dart | 2 ++ build_test/test/resolve_source_test.dart | 2 +- 6 files changed, 28 insertions(+), 7 deletions(-) diff --git a/build/lib/src/analyzer/resolver.dart b/build/lib/src/analyzer/resolver.dart index 75061dc3b..f2dbdbdd5 100644 --- a/build/lib/src/analyzer/resolver.dart +++ b/build/lib/src/analyzer/resolver.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// ignore_for_file: deprecated_member_use until analyzer 7 support is dropped. + import 'package:analyzer/dart/analysis/results.dart'; import 'package:analyzer/dart/analysis/session.dart'; import 'package:analyzer/dart/ast/ast.dart'; diff --git a/build/lib/src/builder/build_step.dart b/build/lib/src/builder/build_step.dart index 970daa526..3b491c047 100644 --- a/build/lib/src/builder/build_step.dart +++ b/build/lib/src/builder/build_step.dart @@ -5,6 +5,7 @@ import 'dart:async'; import 'dart:convert'; +// ignore: deprecated_member_use until analyzer 7 support is dropped. import 'package:analyzer/dart/element/element2.dart'; import 'package:package_config/package_config_types.dart'; @@ -36,6 +37,7 @@ abstract class BuildStep implements AssetReader, AssetWriter { /// await step.resolver.libraryFor(step.inputId, allowSyntaxErrors: true); /// } /// ``` + // ignore: deprecated_member_use until analyzer 7 support is dropped. Future get inputLibrary; /// Gets an instance provided by [resource] which is guaranteed to be unique diff --git a/build_resolvers/lib/src/resolver.dart b/build_resolvers/lib/src/resolver.dart index 1dcd384bf..512d6a7e2 100644 --- a/build_resolvers/lib/src/resolver.dart +++ b/build_resolvers/lib/src/resolver.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// ignore_for_file: deprecated_member_use until analyzer 7 support is dropped. + import 'dart:async'; import 'dart:collection'; import 'dart:isolate'; diff --git a/build_resolvers/test/resolver_test.dart b/build_resolvers/test/resolver_test.dart index 8bdbf2f53..0bd9446e6 100644 --- a/build_resolvers/test/resolver_test.dart +++ b/build_resolvers/test/resolver_test.dart @@ -668,7 +668,13 @@ void runTests(ResolversFactory resolversFactory) { }, (resolver) async { var main = (await resolver.findLibraryByName('web.main'))!; - var meta = main.getClass2('Foo')!.supertype!.element.metadata[0]; + var meta = + main + .getClass2('Foo')! + .supertype! + .element3 + .metadata2 + .annotations[0]; expect(meta, isNotNull); expect(meta.computeConstantValue()?.toIntValue(), 0); }, @@ -1139,8 +1145,7 @@ int? get x => 1; expect(color.type.element!.name, equals('Color')); expect(color.type.element!.library!.name, equals('dart.ui')); expect( - color.type.element!.library!.definingCompilationUnit.source.uri - .toString(), + color.type.element3!.library2!.uri.toString(), equals('dart:ui'), ); } else { @@ -1268,7 +1273,7 @@ int? get x => 1; ); expect(unit, isA()); expect(unit!.toSource(), 'main() {}'); - expect((unit as FunctionDeclaration).declaredElement, isNull); + expect((unit as FunctionDeclaration).declaredFragment, isNull); }, resolvers: createResolvers()); }); @@ -1283,7 +1288,11 @@ int? get x => 1; unit, isA() .having((fd) => fd.toSource(), 'toSource()', 'main() {}') - .having((fd) => fd.declaredElement, 'declaredElement', isNotNull), + .having( + (fd) => fd.declaredFragment, + 'declaredElement', + isNotNull, + ), ); }, resolvers: createResolvers()); }); @@ -1304,7 +1313,11 @@ int? get x => 1; (unit as CompilationUnit).declarations.single, isA() .having((fd) => fd.toSource(), 'toSource()', 'main() {}') - .having((fd) => fd.declaredElement, 'declaredElement', isNotNull), + .having( + (fd) => fd.declaredFragment, + 'declaredFragment', + isNotNull, + ), ); }); }); diff --git a/build_runner_core/lib/src/generate/build_step_impl.dart b/build_runner_core/lib/src/generate/build_step_impl.dart index 9ffec7e4c..be4467820 100644 --- a/build_runner_core/lib/src/generate/build_step_impl.dart +++ b/build_runner_core/lib/src/generate/build_step_impl.dart @@ -2,6 +2,8 @@ // for details. All rights reserved. Use of this source code is governed by a // BSD-style license that can be found in the LICENSE file. +// ignore_for_file: deprecated_member_use until analyzer 7 support is dropped. + import 'dart:async'; import 'dart:collection'; import 'dart:convert'; diff --git a/build_test/test/resolve_source_test.dart b/build_test/test/resolve_source_test.dart index bffdd4445..ed0c0cfb8 100644 --- a/build_test/test/resolve_source_test.dart +++ b/build_test/test/resolve_source_test.dart @@ -197,7 +197,7 @@ void main() { } String _toStringId(InterfaceType t) => - '${t.element.source.uri.toString().split('/').first}#${t.element.name}'; + '${t.element3.library2.uri.toString().split('/').first}#${t.element.name}'; extension on Resolver { Future findLibraryNotNull(String name) async {