mirror of
https://github.com/dart-lang/sdk
synced 2024-11-02 12:24:24 +00:00
3c9e924073
This will make it possible to use the script to create a patched sdk for dart2js and the vm (some followup needed), which will be useful to migrate their libraries to nnbd. In the future, we should be able to leverage this new logic to write tests that ensure our sdk is warning-free (there are > 80 real warnings today even on the non-nnbd sdk) In detail, this CL includes: * loading the libraries data from libraries.json, this removes the need for a hand-crafted libraries.dart that replicates the data in libraries.json. * auto-generates a libraries.dart in the patched sdk that can be used to run dartanalyzer or to compile an sdk with dartdevc-legacy. * script simplifications in patch_sdk.dart * removed tracking of modification stamps. This didn't appeared to be used by the ninja rules. I believe it was used to reduce local iteration cycles when we were first developing the sdk itself. * use Uri directly instead of package:path - this simplifies things, especially since the libraries_specification is Uri-based as well. * switch to use package:args for parsing options * added an option to merge part files in a single file. I've noticed that the analyzer provides some false positive errors in part files, but once merged they are no longer shown. In particular, we are clearly hitting limitations of dartanalyzer on the patched sdk. At this time the old patch-script generated an sdk with 1500 warnings, this new script reduces it to 500 (not sure why), with merging of part files it goes down to 80. Change-Id: I6bbaf92ef4554f00c8bf6b38d19bf79d44fb3e94 Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/125780 Reviewed-by: Nicholas Shahan <nshahan@google.com> Commit-Queue: Sigmund Cherem <sigmund@google.com> |
||
---|---|---|
.. | ||
analysis_server | ||
bazel | ||
compiler | ||
dart2native | ||
dartanalyzer | ||
dartdevc | ||
dartdoc | ||
dartfix | ||
dartfmt | ||
gen_kernel | ||
kernel-service | ||
peg | ||
pub | ||
tests/peg | ||
application_snapshot.gni | ||
compile_platform.gni | ||
create_timestamp.gni |