GithubHelp home page GithubHelp logo

dart-archive / bazel Goto Github PK

View Code? Open in Web Editor NEW
33.0 33.0 13.0 245 KB

Bazel support for Dart projects [EXPERIMENTAL]

Home Page: https://pub.dartlang.org/packages/dazel

Dart 99.08% HTML 0.29% Shell 0.63%
bazel dart

bazel's People

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

bazel's Issues

Should we skip the `foo` entry in .packages for the foo package?

My silly_monkey package has this .packages file

# Generated by pub on 2016-10-12 18:31:00.470898.
path:file:///Users/kevmoo/.pub-cache/hosted/pub.dartlang.org/path-1.4.0/lib/
silly_monkey:lib/

Noticed we create this entry in packages.bzl – seems like this should just be a direct dependency thing – and not a local_repository ... thing

    native.new_local_repository(
        name = "silly_monkey",
        path = "/Users/kevmoo/temp/silly_monkey",
        build_file = ".bazelify/silly_monkey.BUILD",
    )

Make it easier to get reproducible BUILD and workspace setups

An option to point repositories to pub instead of the local cache could make it so that it's easy to bazelify init and then share the generated files.

We'll want to be careful in how this is presented and warn that thing might not be compatible across versions of rules_dart

Should split dart:html and dart:io entry points

Today all transitive dependencies attempt to compile all their sources with DDC. We need to separate things out so it only compiles the web-safe dependencies as a separate target.

This is particularly an issue for any package declaring a transformer.

More than one entry point creates conflicting rules

I have 3 entry points in web/ and bazelify creates a rule for each. When I want to build or run I always get errors because of conflicting rules.

I removed the duplicate rules in BUILD but now I get conflicts for rules of dependency packages.

/home/myuser/.cache/myuser/_bazel_myuser/d7cc63dbd0d8e0618a44683ac56d1bee/external/ng_bootstrap/BUILD:89:1: dart_web_application rule 'main' in package '' conflicts with existing dart_web_application rule.

ng_bootstrap is a dependency and I don't care about it's entry points because its just the demo applications. Any hint how to work around? I'm just starting with bazel.

Bazelify should manage BUILD file until the users changes it

We should use a hash or some technique to determine whether bazelify is the 'owner' of the BUILD file and keep it up to date as the package changes. Once the users makes their own change and invalidates it we can stop updating it with buildify.

Need to document package: URI convension

There should be some advice in this package for how to structure the workspace (where to put packages, etc.) and a description of how the package: URI's are written and resolved.

Pub global activate does not add executable bazel

if I run pub global activate bazel:

pub global activate bazel
Package bazel is currently active at version 0.1.0.
Resolving dependencies... (3.0s)

  • args 0.13.6
  • bazel 0.1.0
  • charcode 1.1.0
  • collection 1.9.1
  • meta 1.0.4
  • package_config 1.0.0
  • path 1.4.0
  • source_span 1.2.4
  • stack_trace 1.6.8
  • string_scanner 1.0.0
  • when 0.2.0
  • which 0.1.3
  • yaml 2.1.12
    Precompiling executables...
    Loading source assets...
    Precompiled bazel:bazelify.
    Activated bazel 0.1.0.
    Installed executable bazelify.

I can not run bazelify, because:

bazelify
Unhandled exception:
Bad state: Command not found: bazel

This happens on ubuntu 16.04.

Weird file being generated

From @zoechi on November 1, 2016 11:36

I tried DDC with bazelify

 (master) $ bazelify serve
Building server via bazel...

WARNING: Sandboxed execution is not supported on your system and thus hermeticity of actions cannot be guaranteed. See http://bazel.io/docs/bazel-user-manual.html#sandboxing for more information. You can turn off this warning via --ignore_unsupported_sandboxing.
____Loading package: 
____Loading...
____Found 1 target...
____Building...
____[3 / 10] Compiling @build//:build with ddc
ERROR: /home/zoechi/.cache/bazel/_bazel_zoechi/3e443aaa6a6cf1824cc4980f306f0a94/external/dart_style/BUILD:25:1: Summarizing Dart library @dart_style//:dart_style (strong mode) failed: Worker process sent response with exit code: 15..
FileSystemException(path=external/dart_style/lib/src/._error_listener.dart; message=Failed to decode data using encoding 'utf-8')

Before I run bazelify serve I purged the ~/.pub-cache/hosted/pub.dartlang.org directory and the .pub directory and then run

pub upgrade
bazelify

(I had to change the BUILD file a bit because I didn't have an web/index.html but instead a web/dashboard_layout_demo.html which was not properly recognized everywhere.)

I don't know where this file comes from. It's not in the dart_style repo. Might have existed at the uploader of the dart_style package, therefore the dart_style repo might be the right place to file the issue but perhaps DDC shouldn't fail at such a file anyway:

image

Dart VM version: 1.21.0-edge.a850b4c977a5b177abe17864006657111d835840 (Mon Oct 31 18:04:44 2016) on "linux_x64"

Copied from original issue: dart-lang/sdk#27713

Unify printing of timing through `StepTimer`.

Today the build command does its own thing (which is nicer imo), but other things use StepTimer.

The main difference is that StepTimer prints all times at the end instead of incrementally as you go, where the custom logic in the build command prints the current time on the left whenever you log.

We should unify the logic and migrate build to the StepTimer.

Should support customizing `srcs` on for builder targets

Most authors will likely leave this empty and use the target as the library that has builder factories - though it's also possible to define the factories in bin/ and use a relative import, in this case we'd need to support srcs.

We could also consider the case where all code generation is defined in 'bin/' and we need to support both srcs and deps in place of target

Bazelify should auto-generate a WORKSPACE file if one does not exist

Tentative template:

# Dart SDK.
local_repository(
    name = "io_bazel_rules_dart",
    path = "{{PATH_TO_RULES_DART}}",
)
load(
    "@io_bazel_rules_dart//dart/build_rules:repositories.bzl",
    "dart_repositories",
)
dart_repositories()

# Pubspec converted to Bazel by Bazelify.
load("//:packages.bzl", "bazelify")
bazelify()

io_bazel_rules_dart can be replaced with git+SSH in #2

Weird build error with a simple Angular2 application

From @zoechi on October 31, 2016 20:55

 (master) $ bazel build :dashboard_layout_demo
WARNING: Sandboxed execution is not supported on your system and thus hermeticity of actions cannot be guaranteed. See http://bazel.io/docs/bazel-user-manual.html#sandboxing for more information. You can turn off this warning via --ignore_unsupported_sandboxing.
INFO: Found 1 target...
ERROR: /home/zoechi/dart/bwu_ng_mdl/BUILD:31:1: Compiling with dart2js //:dashboard_layout_demo failed: process-wrapper failed: error executing command /home/zoechi/.cache/bazel/_bazel_zoechi/3e443aaa6a6cf1824cc4980f306f0a94/execroot/bwu_ng_mdl/_bin/process-wrapper -1 5 - - external/io_bazel_rules_dart/dart/build_rules/tools/dart2js_helper.sh ... (remaining 8 argument(s) skipped).
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/demo/dashboard_layout/dashboard_layout_demo_app_component.dart:2:1:
Error: Library not found 'package:angular2_components/angular2_components.dart'.
import 'package:angular2_components/angular2_components.dart'
    show materialInputDirectives;

bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/demo/dashboard_layout/dashboard_layout_demo_app_component.dart:3:10:
Hint: Library 'package:angular2_components/angular2_components.dart' doesn't export a 'materialInputDirectives' declaration.
Try removing 'materialInputDirectives' from the 'show' clause.
    show materialInputDirectives;
         ^^^^^^^^^^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/drawer_button/drawer_button_component.dart:5:10:
Hint: Library 'package:angular2_components/angular2_components.dart' doesn't export a 'GlyphComponent' declaration.
Try removing 'GlyphComponent' from the 'show' clause.
    show GlyphComponent;
         ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/navigation_link/navigation_link_component.dart:5:10:
Hint: Library 'package:angular2_components/angular2_components.dart' doesn't export a 'GlyphComponent' declaration.
Try removing 'GlyphComponent' from the 'show' clause.
    show GlyphComponent;
         ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/web/dashboard_layout_demo.dart:
Warning: 
****************************************************************
* WARNING: dart:mirrors support in dart2js is experimental,
*          and not recommended.
*          This implementation of mirrors is incomplete,
*          and often greatly increases the size of the generated
*          JavaScript code.
*
* Your app imports dart:mirrors via:
*   dashboard_layout_demo.dart => package:angular2 => dart:mirrors
*
* You can disable this message by using the --enable-experimental-mirrors
* command-line flag.
*
* To learn what to do next, please visit:
*    http://dartlang.org/dart2js-reflection
****************************************************************


bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/demo/dashboard_layout/dashboard_layout_demo_app_component.dart:28:7:
Error: Not a compile-time constant.
      materialInputDirectives
      ^^^^^^^^^^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/demo/dashboard_layout/dashboard_layout_demo_app_component.dart:28:7:
Error: Not a compile-time constant.
      materialInputDirectives
      ^^^^^^^^^^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/drawer_button/drawer_button_component.dart:10:39:
Error: Not a compile-time constant.
    directives: const <dynamic>[NgIf, GlyphComponent],
                                      ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/drawer_button/drawer_button_component.dart:10:39:
Error: Not a compile-time constant.
    directives: const <dynamic>[NgIf, GlyphComponent],
                                      ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/navigation_link/navigation_link_component.dart:13:7:
Error: Not a compile-time constant.
      GlyphComponent,
      ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/navigation_link/navigation_link_component.dart:13:7:
Error: Not a compile-time constant.
      GlyphComponent,
      ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/demo/dashboard_layout/dashboard_layout_demo_app_component.dart:28:7:
Error: Not a compile-time constant.
      materialInputDirectives
      ^^^^^^^^^^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/demo/dashboard_layout/dashboard_layout_demo_app_component.dart:28:7:
Error: Not a compile-time constant.
      materialInputDirectives
      ^^^^^^^^^^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/drawer_button/drawer_button_component.dart:10:39:
Error: Not a compile-time constant.
    directives: const <dynamic>[NgIf, GlyphComponent],
                                      ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/drawer_button/drawer_button_component.dart:10:39:
Error: Not a compile-time constant.
    directives: const <dynamic>[NgIf, GlyphComponent],
                                      ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/navigation_link/navigation_link_component.dart:13:7:
Error: Not a compile-time constant.
      GlyphComponent,
      ^^^^^^^^^^^^^^
bazel-out/local-fastbuild/bin/dashboard_layout_demo.build/lib/src/layout/navigation_link/navigation_link_component.dart:13:7:
Error: Not a compile-time constant.
      GlyphComponent,
      ^^^^^^^^^^^^^^
Hint: 3 warning(s) suppressed in package:bwu_ng_mdl.
Hint: 4 hint(s) suppressed in package:angular2.
Error: Compilation failed.
Target //:dashboard_layout_demo failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 9.392s, Critical Path: 8.76s

pub build output

 (master) $ pub build
Loading source assets... 
Loading angular2/transform/codegen, sass, test/pub_serve and dart_to_js_script_rewriter transformers... 
Loading angular2 and angular2/transform/reflection_remover transformers... (4.8s)
Building bwu_ng_mdl... (14.0s)
[Info from Dart2JS]:
Compiling bwu_ng_mdl|web/dashboard_layout_demo.dart...
[Warning from Dart2JS]:
web/dashboard_layout_demo.dart:1:139:
Library 'package:angular2/platform/browser_static.dart' doesn't export a 'initReflector' declaration.
Try removing 'initReflector' from the 'show' clause.
import 'dashboard_layout_demo.template.dart' as ngStaticInit;import 'package:angular2/platform/browser_static.dart' show bootstrapStatic, initReflector;import 'dashboard_layout_demo.template.dart' as ngStaticInit;
                                                                                                                                          ^^^^^^^^^^^^^
[Warning from Dart2JS on bwu_ng_mdl|web/dashboard_layout_demo.dart]:
packages/angular2_components/src/utils/color/color.dart:102:3:
The class 'Color' overrides 'operator==', but not 'get hashCode'.
  bool operator ==(other) => other is Color && other.rgbString == rgbString;
  ^^^^^^^^^^^^^^^^^^^^^^^
[Dart2JS on bwu_ng_mdl|web/dashboard_layout_demo.dart]:
View the dumped .info.json file at https://dart-lang.github.io/dump-info-visualizer
[Info from Dart2JS]:
Took 0:00:16.182980 to compile bwu_ng_mdl|web/dashboard_layout_demo.dart.
Built 1419 files to "build".

The The class 'Color' overrides 'operator==', but not 'get hashCode'. error is already fixed in angular2_components in master AFAIK.

Dart VM version: 1.21.0-edge.d62e41fcea8fee5aa69f0875eb4f151abfdcc74e (Mon Oct 31 09:15:30 2016) on "linux_x64"

Copied from original issue: dart-lang/sdk#27707

main_ddc_serve - ERROR: no such target

Not sure what I'm doing wrong. I have a simple project generated by stagehand web-simple command. I've also run bazelify init. And when I type bazel build :main_ddc_serve I'm getting an error:

ERROR: no such target '//:main_ddc_serve': target 'main_ddc_serve' not declared in package '' defined by my_project/BUILD.

Need more instructions for web target

$ bazel run :main_ddc_serve

So this prints out Server running on localhost:8080

Cool.

Go there. I see a list. Click on web because – I guess?

Get a completely blank 404 with no instructions.

Windows file path error when running bazelify.

In Windows 10 from the command line executing pub global run bazel:bazelify in a directory with a pubspec.yaml file produces this error:

Unsupported operation: Cannot extract a file path from a c URI dart:core _Uri.toFilePath package:bazel/src/bazelify/generate.dart 52 generate.<async> ===== asynchronous gap =========================== dart:async _Completer.completeError package:bazel/src/bazelify/generate.dart 90 generate.<async> ===== asynchronous gap =========================== dart:async _asyncThenWrapperHelper package:bazel/src/bazelify/generate.dart generate http://localhost:50704/bazelify.dart 26 main.<async>.<fn> package:stack_trace Chain.capture http://localhost:50704/bazelify.dart 26 main.<async> dart:async _SyncCompleter.complete package:bazel/src/bazelify/arguments.dart 142 BazelifyArguments.resolve.<async>

Bazelified BUILD does not end in a newline

srawlins-macbookair:webbb-project srawlins$ pub global run bazel:bazelify -p /Users/srawlins/code/webbb-project
Generated pacakges.bzl, WORKSPACE, BUILD files for /Users/srawlins/code/webbb-project
srawlins-macbookair:webbb-project srawlins$ cat BUILD
# Automatically generated and left blank by Bazelifysrawlins-macbookair:webbb-project srawlins$

Add `bazelify run` command

I think this should work with a similar syntax to pub run, where you specify the target using $package:$executable. Only supporting things in bin is fine for now I think.

Illegal argument in call to repository_rule, attribute name cannot be overridden

I have tested on both my program and the provided workspace folder.

Commands done:

> pub global activate bazel
> git clone https://github.com/dart-lang/bazel.git
> cd bazel/workspace
> bazel run :ng2_app_run_bin

I have the following error:

ERROR: /home/user/.cache/bazel/_bazel_user/4fd403a4d83afbd1de1a87a8a0a5f030/external/io_bazel_rules_dart/dart/build_rules/pub.bzl:36:18: Illegal argument in call to repository_rule: There is already a built-in attribute 'name' which cannot be overridden.
ERROR: com.google.devtools.build.lib.packages.BuildFileContainsErrorsException: error loading package '': Extension file 'dart/build_rules/pub.bzl' has errors.
> bazel version
Build label: 0.3.2-2016-10-29 (@5abb90d)
Build target: bazel-out/local-opt/bin/src/main/java/com/google/devtools/build/lib/bazel/BazelServer_deploy.jar
Build time: Sat Oct 29 16:37:02 2016 (1477759022)
Build timestamp: 1477759022
Build timestamp as int: 1477759022

Bazelify a dart angular 2 polymer project

I tried to bazelify a small project (https://github.com/montyr75/tictactoe), but i always encounter the following error message:

> bazelify init
Error on line 198, column 1: Duplicate mapping key. environment: ^^^^^^^^^^^ package:yaml/src/loader.dart 160 Loader._loadMapping package:yaml/src/loader.dart 82 Loader._loadNode package:yaml/src/loader.dart 62 Loader._loadDocument package:yaml/src/loader.dart 54 Loader.load package:yaml/yaml.dart 51 loadYamlDocument package:yaml/yaml.dart 42 loadYamlNode package:yaml/yaml.dart 34 loadYaml package:bazel/src/bazelify/pubspec.dart 26 Pubspec.Pubspec.parse package:bazel/src/bazelify/pubspec.dart 18 Pubspec.fromPackageDir.<async> ===== asynchronous gap =========================== dart:async _Completer.completeError package:bazel/src/bazelify/pubspec.dart 23 Pubspec.fromPackageDir.<async> ===== asynchronous gap =========================== dart:async _asyncThenWrapperHelper package:bazel/src/bazelify/pubspec.dart Pubspec.fromPackageDir package:bazel/src/bazelify/build.dart 76 BuildFile.fromPackageDir.<async> ===== asynchronous gap =========================== dart:async Future.Future.microtask package:bazel/src/bazelify/build.dart BuildFile.fromPackageDir package:bazel/src/bazelify/initialize.dart 233 initalize.<async> ===== asynchronous gap =========================== dart:async _asyncThenWrapperHelper package:bazel/src/bazelify/initialize.dart initalize package:bazel/src/bazelify/initialize.dart 132 InitCommand.run.<async> ===== asynchronous gap =========================== dart:async _asyncThenWrapperHelper package:bazel/src/bazelify/initialize.dart InitCommand.run package:args/command_runner.dart 183 CommandRunner.runCommand.<fn> dart:async Future.Future.sync package:args/command_runner.dart 136 CommandRunner.runCommand package:args/command_runner.dart 105 CommandRunner.run.<fn> dart:async Future.Future.sync package:args/command_runner.dart 105 CommandRunner.run http://localhost:38484/bazelify.dart 12 main.<async>.<fn>.<async> ===== asynchronous gap =========================== package:stack_trace Chain.capture http://localhost:38484/bazelify.dart 11 main.<async>

Detect if there is an existing `build` directory and provide a better error

Will likely be common...

FileSystemException: Cannot open file, path = '/Users/kevmoo/source/github/sample-pop_pop_win/BUILD' (OS Error: Is a directory, errno = 21)
dart:io                                                                    _File.writeAsString
package:dazel/src/bazelify/initialize.dart 318                             _Initialize._writeBuildFile.<async>
dart:async                                                                 _SyncCompleter.complete
package:dazel/src/bazelify/build.dart 114                                  BuildFile.fromPackageDir.<async>
===== asynchronous gap ===========================
dart:async                                                                 _asyncThenWrapperHelper
package:dazel/src/bazelify/initialize.dart                                 _Initialize._writeBuildFile
package:dazel/src/bazelify/initialize.dart 232                             _Initialize._writeBazelFiles.<async>
dart:async                                                                 _SyncCompleter.complete
package:dazel/src/bazelify/initialize.dart 306                             _Initialize._writeWorkspaceFile.<async>
===== asynchronous gap ===========================
dart:async                                                                 _asyncThenWrapperHelper
package:dazel/src/bazelify/initialize.dart                                 _Initialize._writeBazelFiles
package:dazel/src/bazelify/initialize.dart 206                             _Initialize.run.<async>.<fn>
package:dazel/src/step_timer.dart 33                                       StepTimer.run.<async>
===== asynchronous gap ===========================
dart:async                                                                 Future.Future.microtask
package:dazel/src/step_timer.dart                                          StepTimer.run
package:dazel/src/bazelify/initialize.dart 205                             _Initialize.run.<async>
dart:async                                                                 _SyncCompleter.complete
package:dazel/src/step_timer.dart 33                                       StepTimer.run.<async>
dart:async                                                                 _SyncCompleter.complete
package:dazel/src/bazelify/initialize.dart 226                             _Initialize._createDazelDir.<async>
dart:async                                                                 _SyncCompleter.complete
package:dazel/src/bazelify/initialize.dart 289                             _Initialize._writePackageBuildFiles.<async>
===== asynchronous gap ===========================
dart:async                                                                 _asyncThenWrapperHelper
package:dazel/src/bazelify/initialize.dart                                 _Initialize.run
package:dazel/src/bazelify/initialize.dart 135                             InitCommand.run.<async>
===== asynchronous gap ===========================
dart:async                                                                 _asyncThenWrapperHelper
package:dazel/src/bazelify/initialize.dart                                 InitCommand.run
package:args/command_runner.dart 194                                       CommandRunner.runCommand.<async>
===== asynchronous gap ===========================
dart:async                                                                 Future.Future.microtask
package:args/command_runner.dart                                           CommandRunner.runCommand
package:args/command_runner.dart 109                                       CommandRunner.run.<fn>
dart:async                                                                 Future.Future.sync
package:args/command_runner.dart 109                                       CommandRunner.run
../../../.pub-cache/hosted/pub.dartlang.org/dazel-0.3.1/bin/dazel.dart 13  main.<async>.<fn>.<async>
===== asynchronous gap ===========================
package:stack_trace                                                        Chain.capture
../../../.pub-cache/hosted/pub.dartlang.org/dazel-0.3.1/bin/dazel.dart 12  main.<async>

bazelify init crash when given empty .analysis_options file.

If you have an empty .analysis_options file in your project, running bazelify init will crash.

$> bazelify init
Whoops! You may have discovered a bug in `bazelify` :(.
Please file an issue at http://github.com/dart-lang/bazel
The null object does not have a method '[]'.

NoSuchMethodError: method not found: '[]'
Receiver: null
Arguments: ["analyzer"]
dart:core                                       Object.noSuchMethod
package:bazel/src/bazelify/initialize.dart 304  _Initialize._suggestAnalyzerExcludes.<async>
===== asynchronous gap ===========================
dart:async                                      _Completer.completeError
package:bazel/src/bazelify/initialize.dart 322  _Initialize._suggestAnalyzerExcludes.<async>
===== asynchronous gap ===========================
dart:async                                      _asyncThenWrapperHelper
package:bazel/src/bazelify/initialize.dart      _Initialize._suggestAnalyzerExcludes
package:bazel/src/step_timer.dart 9             StepTimer.run.<async>
===== asynchronous gap ===========================
dart:async                                      Future.Future.microtask
package:bazel/src/step_timer.dart               StepTimer.run
package:bazel/src/bazelify/initialize.dart 203  _Initialize.run.<async>
dart:async                                      _SyncCompleter.complete
package:bazel/src/step_timer.dart 9             StepTimer.run.<async>
dart:async                                      _SyncCompleter.complete
package:bazel/src/bazelify/initialize.dart 227  _Initialize._writeBazelFiles.<async>
dart:async                                      _SyncCompleter.complete
package:bazel/src/bazelify/initialize.dart 281  _Initialize._writeBuildFile.<async>
===== asynchronous gap ===========================
dart:async                                      _asyncThenWrapperHelper
package:bazel/src/bazelify/initialize.dart      _Initialize.run
package:bazel/src/bazelify/initialize.dart 134  InitCommand.run.<async>
===== asynchronous gap ===========================
dart:async                                      _asyncThenWrapperHelper
package:bazel/src/bazelify/initialize.dart      InitCommand.run
package:args/command_runner.dart 194            CommandRunner.runCommand.<async>
===== asynchronous gap ===========================
dart:async                                      Future.Future.microtask
package:args/command_runner.dart                CommandRunner.runCommand
package:args/command_runner.dart 109            CommandRunner.run.<fn>
dart:async                                      Future.Future.sync
package:args/command_runner.dart 109            CommandRunner.run
http://localhost:55034/bazelify.dart 13         main.<async>.<fn>.<async>
===== asynchronous gap ===========================
package:stack_trace                             Chain.capture
http://localhost:55034/bazelify.dart 12         main.<async>

strong mode errors when trying to run `bazel build :main_ddc_serve`

Steps to repro:

  • pub global activate stagehand
  • pub global activate bazel
  • mkdir foo_bar
  • cd foo_bar
  • stagehand web-simple
  • bazelify
  • bazel build :main_ddc_serve

Dart VM version: 1.20.1 (Wed Oct 12 15:00:54 2016) on "macos_x64"

[~/temp/sample2] bazel build :main_ddc_serve
INFO: Found 1 target...
ERROR: /private/var/tmp/_bazel_devoncarew/d13dd93e2001c11e66546501f3bc5672/external/async/BUILD:14:1: Compiling @async//:async with ddc failed: dartdevc failed: error executing command external/dart_darwin_x86_64/dart-sdk/bin/dartdevc @bazel-out/local-fastbuild/bin/external/async/async_ddc_args: com.google.devtools.build.lib.shell.BadExitStatusException: Process exited with status 1.
[error] Invalid override. The type of 'DelegatingFuture.then' ('<S>((T) → S, {onError: Function}) → Future<S>') isn't a subtype of 'Future<T>.then' ('<S>((T) → dynamic, {onError: Function}) → Future<S>'). (package:async/src/delegate/future.dart, line 30, col 3)
[error] Invalid override. The type of 'TypeSafeFuture.then' ('<S>((T) → S, {onError: Function}) → Future<S>') isn't a subtype of 'Future<T>.then' ('<S>((T) → dynamic, {onError: Function}) → Future<S>'). (package:async/src/typed/future.dart, line 17, col 3)

Please fix all errors before compiling (warnings are okay).
Target //:main_ddc_serve failed to build
Use --verbose_failures to see the command lines of failed build steps.
INFO: Elapsed time: 3.275s, Critical Path: 3.07s

Modify bazel tasks

Is it possible to create my own tasks for generated in addition for existent in bazel file? How to solve this issue?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.