-
Notifications
You must be signed in to change notification settings - Fork 1.7k
Description
Dart debug extension build skips generating background.js
file when the library package:dwds/src/utilities/batched_stream.dart
(https://github.com/dart-lang/webdev/blob/b6439072d118b740fbc2d0e5af4e10952642d864/dwds/lib/src/utilities/batched_stream.dart#L9) is used by the dart extension and unrelated dwds code.
Note: the build was working fine until we started using the package:dwds/src/utilities/batched_stream.dart
in dwds in https://github.com/dart-lang/webdev/blob/b6439072d118b740fbc2d0e5af4e10952642d864/dwds/lib/src/services/batched_expression_evaluator.dart#L15 (added in dart-lang/webdev#1746)
To work around the issue, we created an identical copy of the library only used from code compiled by dart2js:
package:dwds/src/web_utilities/batched_stream.dart
(https://github.com/dart-lang/webdev/blob/b6439072d118b740fbc2d0e5af4e10952642d864/dwds/lib/src/web_utilities/batched_stream.dart#L9)
Is this a bug in dart2js or should we modify our code somehow to avoid duplicating the code?
Repro
(on linux or macos)
- clone webdev repo https://github.com/dart-lang/webdev
- comment out the line https://github.com/dart-lang/webdev/blob/b6439072d118b740fbc2d0e5af4e10952642d864/dwds/debug_extension/web/background.dart#L26 and uncomment the line above it
- run
tool/build_extension.sh prod
inwebdev/dwds/debug_extension
directory
Expected
Build succeeds and generates webdev/dwds/debug_extension/prod_build/background.js
Actual
➜ debug_extension ✗ tool/build_extension.sh prod
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Building dart2js-compiled extension to /prod_build directory.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
[INFO] Generating build script completed, took 165ms
[INFO] Reading cached asset graph completed, took 118ms
[INFO] Checking for updates since last build completed, took 338ms
[WARNING] build_web_compilers:entrypoint on web/background.dart:
Skipping compiling extension|web/background.dart with dart2js because some of its
transitive libraries have sdk dependencies that are not supported on this platform:
dwds|lib/src/utilities/shared.dart
dwds|lib/src/handlers/injector.dart
dwds|lib/src/servers/devtools.dart
dwds|lib/src/handlers/dev_handler.dart
dwds|lib/src/utilities/sdk_configuration.dart
dwds|lib/src/servers/extension_backend.dart
dwds|lib/src/services/debug_service.dart
dwds|lib/src/services/chrome_proxy_service.dart
webkit_inspection_protocol|lib/webkit_inspection_protocol.dart
package_config|lib/src/util_io.dart
package_config|lib/src/package_config_io.dart
package_config|lib/src/discovery.dart
package_config|lib/package_config.dart
file|lib/src/io.dart
http_multi_server|lib/src/multi_headers.dart
http_multi_server|lib/src/utils.dart
http_multi_server|lib/http_multi_server.dart
dds|lib/dds.dart
dds|lib/src/devtools/handler.dart
dds|lib/src/dds_impl.dart
devtools_shared|lib/src/server/file_system.dart
devtools_shared|lib/src/server/usage.dart
devtools_shared|lib/src/server/server_api.dart
usage|lib/src/usage_impl_io.dart
shelf_static|lib/src/static_handler.dart
shelf_static|lib/src/directory_listing.dart
shelf|lib/shelf_io.dart
shelf|lib/src/io_server.dart
https://github.com/dart-lang/build/blob/master/docs/faq.md#how-can-i-resolve-skipped-compiling-warnings
[INFO] Running build completed, took 358ms
[INFO] Caching finalized dependency graph completed, took 116ms
[INFO] Reading manifest at build/.build.manifest completed, took 0ms
[INFO] Deleting previous outputs in `build` completed, took 25ms
[INFO] Creating merged output dir `build` completed, took 18ms
[INFO] Writing asset manifest completed, took 0ms
[INFO] Succeeded after 538ms with 87 outputs (163 actions)