Commit Graph

7 Commits

Author SHA1 Message Date
danrubel c7960df357 Generate analyzer error codes from messages.yaml
With this change, analyzer error codes can be generated from messages.yaml
and those error codes easily translated from the corresponding fasta error.

Each fasta error code in messages.yaml that has an "index:" field
(see prior CL https://dart-review.googlesource.com/c/sdk/+/74040)
now has an Analyzer error code automatically generated
with the information in messages.yaml. In addition
a list of all indexed errors is generated so that a fasta error
code can be quickly translated into an Analyzer error code.

Change-Id: I2d534b7349590ddd54996f564db786c6ffe259b3
Reviewed-on: https://dart-review.googlesource.com/74240
Commit-Queue: Dan Rubel <danrubel@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-09-10 23:07:19 +00:00
Devon Carew b20dc7b98a Update the script to re-gen the analysis server spec.
Change-Id: I9196cabf891d2260aeb7b89fce3aea91cdb0b726
Reviewed-on: https://dart-review.googlesource.com/62580
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2018-06-27 16:00:57 +00:00
Paul Berry 6ddb483c8e Reverse the order of analyzer code generation
At some point the analyzer code generator for the task dependency
model began depending on summary infrastructure.  Therefore we need to
do summary code generation first.

Change-Id: I123c6bf2a1c5e0cb6f72548243955a714c0c763d
Reviewed-on: https://dart-review.googlesource.com/38000
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
Commit-Queue: Paul Berry <paulberry@google.com>
2018-02-01 16:03:08 +00:00
Kevin Millikin bae72c382a Fix the script analyzer/tool/generate_files
* The script had stopped working due to a pair of changes in Dart.
  First, building Dart no longer produces a packages directory to use
  as a package-root.

  Second, generated Dart files are now formatted and the formatting
  code relies on invoking Dart from the Dart SDK in order to find
  dartfmt.  (Specifically: invoking Dart from the build directory does
  not work because there is no dartfmt there, and invoking Dart via
  sdk/bin/dart from the SDK repository does not work because it is a
  shell script that invokes Dart from the build directory.)

* Enable the test that the generated summary code has not changed.

* Regenerate the generated summary code.

BUG=
R=paulberry@google.com, whesse@google.com

Review-Url: https://codereview.chromium.org/2997703002 .
2017-08-11 12:05:47 +02:00
William Hesse 634e5a1d02 Refs #25328 Use a portable shebang
BSD systems don't place bash in /bin and a lot of the dart tools
hardcode a #!/bin/bash shebang that fails the 'all' target build
(not able to execute dart2js since the interpreter is not found).

Solve the issue by using #!/usr/bin/env as the shebang. For scripts
that need to pass arguments to bash modify the script to use the set
command as the first executed line of shell.

BUG=
R=whesse@google.com

Review URL: https://codereview.chromium.org/1552313002 .
2016-01-05 16:26:28 +01:00
Paul Berry 9d550c4a0f Begin generating code for summary serialization/deserialization.
The generated code is not yet used.

R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/1414903005 .
2015-11-04 10:22:42 -08:00
Paul Berry c5f4af4df6 Rework task model graphing to work on buildbots.
This CL reworks the task model grapher (formerly at
pkg/analyzer/tool/task_dependency_graph.dart, now at
pkg/analyzer/tool/task_dependency_graph/generate.dart) so that it
works similarly to the code generation in the analysis server.
Namely, the output file is stored in source control
(pkg/analyzer/tool/task_dependency_graph/tasks.dot), and a test run by
the buildbots verifies that it is up to date.  If it is not, the test
outputs the command necessary to update it.

This carries the benefit that:

- Anyone with access to an installation of graphviz can generate the
  task model graph easily from its .dot file.

- Any time a change occurs that affects task model dependencies, a
  test failure will prompt us that we need to generate a new .dot
  file.

- If a change ever occurs that breaks the ability of the task
  dependency grapher to produce the graph, a test failure will prompt
  us.

The downside is that when making a change that affects task model
dependencies, it is now necessary to re-run the script
pkg/analyzer/tool/task_dependency_graph/generate.dart to avoid a test
failure.

R=brianwilkerson@google.com, scheglov@google.com

Review URL: https://codereview.chromium.org/1408743006 .
2015-10-19 09:24:18 -07:00