dart-lang / build

A build system for Dart written in Dart
https://pub.dev/packages/build
BSD 3-Clause "New" or "Revised" License
790 stars 207 forks source link

Invalid argument(s): Missing library: package:my_application/my_file.dart #3226

Closed dargoz closed 2 years ago

dargoz commented 2 years ago

[√] Flutter (Channel stable, 2.8.1, on Microsoft Windows [Version 10.0.19043.1083], locale en-US) • Flutter version 2.8.1 at C:\src\flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision 77d935af4d (12 hours ago), 2021-12-16 08:37:33 -0800 • Engine revision 890a5fca2e • Dart version 2.15.1

Steps to Reproduce

  1. updated dependencies (like flutter version, etc) no changes in code
    environment:
     flutter: ^2.8.1
     sdk: '>=2.15.0 <3.0.0'
    dev_dependencies:
     freezed: ^1.1.0
     flutter_lints: ^1.0.4
     analyzer: ^2.7.0
     build_runner: ^2.1.7
     json_serializable: ^6.1.0
     injectable_generator: ^1.4.1
     auto_route_generator: ^3.2.0
     retrofit_generator: ^2.0.1
  2. Execute flutter pub run build_runner build --delete-conflicting-outputs

Expected results:

flutter build_runner executed successfully

Actual results:

Code sample ```dart import 'package:json_annotation/json_annotation.dart'; part 'user_entity.g.dart'; @JsonSerializable() class UserEntity { UserEntity({this.applicationId, this.jwtToken, this.userId, this.password}); final String? applicationId; @JsonKey(ignore: true) final String? jwtToken; final String? userId; String? password; factory UserEntity.fromJson(Map json) => _$UserEntityFromJson(json); Map toJson() => _$UserEntityToJson(this); @override String toString() { return 'userId : $userId, password: $password'; } } ```
Logs Run with `flutter pub run build_runner build --delete-conflicting-outputs` ``` [INFO] Generating build script... [INFO] Generating build script completed, took 666ms [WARNING] Invalidated precompiled build script due to missing asset graph. [INFO] Precompiling build script...... [INFO] Precompiling build script... completed, took 9.4s [INFO] Initializing inputs [INFO] Building new asset graph... [INFO] Building new asset graph completed, took 1.8s [INFO] Checking for unexpected pre-existing outputs.... [INFO] Checking for unexpected pre-existing outputs. completed, took 1ms [INFO] Running build... [INFO] 1.0s elapsed, 23/39 actions completed. [SEVERE] freezed:freezed on test/data/response_test.dart: Invalid argument(s): Missing library: package:m_banking_back_office/domain/core/entities/user_entity.dart Available libraries: [dart:typed_data, dart:convert, dart:math, dart:core, dart:_internal, dart:collection, dart:async, dart:isolate, dart:developer, dart:ffi, dart:_js_embedded_names, dart:_js_names, dart:_recipe_syntax, dart:_rt i, dart:_foreign_helper, dart:_js_helper, dart:_interceptors, dart:_native_typed_data, dart:web_gl, dart:js_util, dart:_metadata, dart:html_common, dart:indexed_db, dart:svg, dart:web_audio, dart:html, dart:io, dart:_http, dart:js , dart:_js, dart:mirrors, dart:nativewrappers, dart:cli, dart:_late_helper, dart:_dart2js_runtime_metrics, dart:_js_primitives, dart:_async_await_error_codes, dart:_js_annotations, dart:_spirv, dart:ui] #0 LinkedElementFactory.createLibraryElementForReading (package:analyzer/src/summary2/linked_element_factory.dart:74:7) #1 LinkedElementFactory.elementOfReference (package:analyzer/src/summary2/linked_element_factory.dart:128:14) #2 LinkedElementFactory.libraryOfUri (package:analyzer/src/summary2/linked_element_factory.dart:177:12) #3 ElementBuilder._selectLibrary (package:analyzer/src/summary2/element_builder.dart:1018:37) #4 ElementBuilder.visitImportDirective (package:analyzer/src/summary2/element_builder.dart:598:31) #5 ImportDirectiveImpl.accept (package:analyzer/src/dart/ast/ast.dart:5953:50) #6 NodeListImpl.accept (package:analyzer/src/dart/ast/ast.dart:7758:20) #7 ElementBuilder.buildLibraryElementChildren (package:analyzer/src/summary2/element_builder.dart:60:21) #8 LibraryBuilder.buildElements (package:analyzer/src/summary2/library_builder.dart:109:24) #9 Linker._computeLibraryScopes (package:analyzer/src/summary2/link.dart:109:15) #10 Linker._buildOutlines (package:analyzer/src/summary2/link.dart:88:5) #11 Linker.link (package:analyzer/src/summary2/link.dart:74:5) #12 link (package:analyzer/src/summary2/link.dart:33:10) #13 LibraryContext.load2.loadBundle (package:analyzer/src/dart/analysis/library_context.dart:176:30) #14 SetMixin.forEach (dart:collection/set.dart:142:30) #15 LibraryContext.load2.loadBundle (package:analyzer/src/dart/analysis/library_context.dart:113:32) #16 LibraryContext.load2. (package:analyzer/src/dart/analysis/library_context.dart:206:7) #17 PerformanceLog.run (package:analyzer/src/dart/analysis/performance_logger.dart:32:15) #18 LibraryContext.load2 (package:analyzer/src/dart/analysis/library_context.dart:204:12) #19 AnalysisDriver._computeUnitElement. (package:analyzer/src/dart/analysis/driver.dart:1574:22) #20 PerformanceLog.run (package:analyzer/src/dart/analysis/performance_logger.dart:32:15) #21 AnalysisDriver._computeUnitElement (package:analyzer/src/dart/analysis/driver.dart:1572:20) #22 AnalysisDriver.performWork (package:analyzer/src/dart/analysis/driver.dart:1126:35) #23 AnalysisDriverScheduler._run (package:analyzer/src/dart/analysis/driver.dart:2140:24) ``` ``` ``` `flutter doctor -v` ``` [√] Flutter (Channel stable, 2.8.1, on Microsoft Windows [Version 10.0.19043.1083], locale en-US) • Flutter version 2.8.1 at C:\src\flutter • Upstream repository https://github.com/flutter/flutter.git • Framework revision 77d935af4d (12 hours ago), 2021-12-16 08:37:33 -0800 • Engine revision 890a5fca2e • Dart version 2.15.1 [√] Android toolchain - develop for Android devices (Android SDK version 31.0.0) • Android SDK at C:\Users\u066757\AppData\Local\Android\sdk • Platform android-31, build-tools 31.0.0 • Java binary at: C:\Users\u066757\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\203.7784292\jre\bin\java • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189) • All Android licenses accepted. [√] Chrome - develop for the web • Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe [√] Android Studio (version 2020.3) • Android Studio at C:\Users\u066757\AppData\Local\JetBrains\Toolbox\apps\AndroidStudio\ch-0\203.7784292 • Flutter plugin can be installed from: https://plugins.jetbrains.com/plugin/9212-flutter • Dart plugin can be installed from: https://plugins.jetbrains.com/plugin/6351-dart • Java version OpenJDK Runtime Environment (build 11.0.10+0-b96-7249189) [☠] IntelliJ IDEA Community Edition (the doctor check crashed) X Due to an error, the doctor check did not complete. If the error message below is not helpful, please let us know about this issue at https://github.com/flutter/flutter/issues. X FormatException: Unexpected extension byte (at offset 5) • #0 _Utf8Decoder.convertSingle (dart:convert-patch/convert_patch.dart:1789:7) #1 Utf8Decoder.convert (dart:convert/utf.dart:318:42) #2 InputStream.readString (package:archive/src/util/input_stream.dart:207:30) #3 new ZipDirectory.read (package:archive/src/zip/zip_directory.dart:40:30) #4 ZipDecoder.decodeBuffer (package:archive/src/zip_decoder.dart:19:30) #5 ZipDecoder.decodeBytes (package:archive/src/zip_decoder.dart:14:12) #6 IntelliJPlugins._findPluginXml (package:flutter_tools/src/intellij/intellij.dart:130:44) #7 IntelliJPlugins._readPackageVersion (package:flutter_tools/src/intellij/intellij.dart:141:40) #8 IntelliJPlugins.validatePackage (package:flutter_tools/src/intellij/intellij.dart:63:35) #9 IntelliJValidator.validate (package:flutter_tools/src/intellij/intellij_validator.dart:103:15) #10 asyncGuard. (package:flutter_tools/src/base/async_guard.dart:111:32) #11 asyncGuard. (package:flutter_tools/src/base/async_guard.dart:109:18) #12 _rootRun (dart:async/zone.dart:1428:13) #13 _CustomZone.run (dart:async/zone.dart:1328:19) #14 _runZoned (dart:async/zone.dart:1863:10) #15 runZonedGuarded (dart:async/zone.dart:1851:12) #16 runZoned (dart:async/zone.dart:1782:12) #17 asyncGuard (package:flutter_tools/src/base/async_guard.dart:109:3) #18 Doctor.startValidatorTasks (package:flutter_tools/src/doctor.dart:197:9) #19 Doctor.diagnose (package:flutter_tools/src/doctor.dart:301:47) #20 DoctorCommand.runCommand (package:flutter_tools/src/commands/doctor.dart:53:47) #21 FlutterCommand.verifyThenRunCommand (package:flutter_tools/src/runner/flutter_command.dart:1290:12) #22 FlutterCommand.run. (package:flutter_tools/src/runner/flutter_command.dart:1140:27) #23 AppContext.run. (package:flutter_tools/src/base/context.dart:150:19) #24 CommandRunner.runCommand (package:args/command_runner.dart:209:13) #25 FlutterCommandRunner.runCommand. (package:flutter_tools/src/runner/flutter_command_runner.dart:288:9) #26 AppContext.run. (package:flutter_tools/src/base/context.dart:150:19) #27 FlutterCommandRunner.runCommand (package:flutter_tools/src/runner/flutter_command_runner.dart:236:5) #28 run.. (package:flutter_tools/runner.dart:62:9) #29 AppContext.run. (package:flutter_tools/src/base/context.dart:150:19) #30 main (package:flutter_tools/executable.dart:94:3) [√] VS Code, 64-bit edition (version 1.63.1) • VS Code at C:\Program Files\Microsoft VS Code • Flutter extension can be installed from: https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter [√] Connected device (3 available) • SM A715F (mobile) • RR8NB01G9DD • android-arm64 • Android 11 (API 30) • Chrome (web) • chrome • web-javascript • Google Chrome 94.0.4606.81 • Edge (web) • edge • web-javascript • Microsoft Edge 96.0.1054.57 ! Doctor found issues in 1 category. ```

Screenshot of updated dependencies : image image

jakemac53 commented 2 years ago

@Dargoz was there any more to the stack trace (below the asynchronous suspension)? I am trying to figure out where this is originating from but that might be difficult.

@scheglov any idea if this could be related to the latest analyzer, or other suggestions?

scheglov commented 2 years ago

It looks from the stack trace that this is analyzer before the latest fixes released in 3.0.0. I also see now that it says analyzer: ^2.7.0.

jakemac53 commented 2 years ago

@Dargoz can you try updating your analyzer constraint to ^3.0.0? You may need to use an override to get it if some of your other packages haven't yet updated:

dependency_overrides:
  analyzer: ^3.0.0
dargoz commented 2 years ago

@jakemac53 I've tried updating my analyzer contraint to ^3.0.0 using dependency_overrides, here's what I get now :

D:\dev\ideaProjects\WEB-MB-BackOffice>flutter pub run build_runner build --delete-conflicting-outputs
[INFO] Generating build script...
[INFO] Generating build script completed, took 806ms

[INFO] Precompiling build script......
[WARNING] /C:/Users/u066757/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/injectable_generator-1.5.2/lib/resolvers/importable_type_resolver.dart:77:51: Error: The getter 'aliasElement' isn't defined for the class 'FunctionType'.
 - 'FunctionType' is from 'package:analyzer/dart/element/type.dart' ('/C:/Users/u066757/AppData/Local/Pub/Cache/hosted/pub.dartlang.org/analyzer-3.0.0/lib/dart/element/type.dart').
Try correcting the name to the name of an existing getter, or defining a getter or field named 'aliasElement'.
        executableElement ?? type.element ?? type.aliasElement;
                                                  ^^^^^^^^^^^^
[INFO] Precompiling build script... completed, took 9.5s

[SEVERE] Failed to precompile build script .dart_tool/build/entrypoint/build.dart.
This is likely caused by a misconfigured builder definition.

pub finished with exit code 78
scheglov commented 2 years ago

Apparently injectable_generator-1.5.2 is not compatible with analyzer 3.0.0, this getter DartType.aliasElement was deprecated in analyzer 2.1.0 and removed in analyzer 3.0.0.

jakemac53 commented 2 years ago

It looks to me like a fix has landed in injectable, going to close this for now but please re-open if the issue is not resolved.