Commit graph

17 commits

Author SHA1 Message Date
Daco Harkes d360edf2f3 [pkg][vm] Native Assets builder
This package contains the logic for building native assets.

This package is the backend that invokes toplevel `build.dart` scripts.
For more info on these scripts see https://github.com/dart-lang/native.

This is a separate package so that dartdev and flutter_tools can reuse
the same logic without flutter_tools having to import dartdev.

Some design decisions:

* We don't yet have `build_dependencies`, so we use the ordinary
  dependency graph for ordering of native assets builds. (If there is
  a cycle we refuse to run.)
  Bug: https://github.com/dart-lang/pub/issues/3794
* Builds are cached based on all the configuration provided by the
  caller. Environment variables are ignored in caching. This CL also
  contains a unit test that invokes the build by not passing through
  environment variables. However, for Windows we need to pass through
  at least `SYSTEMROOT` for MSVC to run correctly. So we might need
  to further explore if we can/want to lock env variables down.
  Bug: https://github.com/dart-lang/native/issues/32
  Bug: https://github.com/dart-lang/native/issues/33

Run tests:
```
dart tools/generate_package_config.dart && \
tools/test.py -n unittest-asserts-release-linux pkg/native_assets_builder
```

Bug: https://github.com/dart-lang/sdk/issues/50565
Change-Id: I133052d7195373e87d20924d61e1e96e3d34ce8f
Cq-Include-Trybots: luci.dart.try:pkg-linux-debug-try,pkg-linux-release-try,pkg-mac-release-arm64-try,pkg-mac-release-try,pkg-win-release-try
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/300203
Reviewed-by: Liam Appelbe <liama@google.com>
Commit-Queue: Daco Harkes <dacoharkes@google.com>
Reviewed-by: Martin Kustermann <kustermann@google.com>
Reviewed-by: Hossein Yousefi <yousefi@google.com>
2023-05-15 13:49:30 +00:00
Lasse R.H. Nielsen b35b436cf5 Change : to = in tools/ and DOM templates.
Change-Id: Id0257e4d00ca4a7acc759d7f06fa5b64c744894b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/256126
Reviewed-by: Srujan Gaddam <srujzs@google.com>
Commit-Queue: Lasse Nielsen <lrn@google.com>
Reviewed-by: Michael Thomsen <mit@google.com>
Reviewed-by: Nicholas Shahan <nshahan@google.com>
2022-08-24 14:21:01 +00:00
Devon Carew 2acf036023 move the third_party/pkg_tested packages into third_party/pkg
Change-Id: I7e2499aafb1ae85da4699358909ac67337593a11
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/247927
Reviewed-by: Jonas Termansen <sortie@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2022-06-13 17:04:36 +00:00
Devon Carew f7c46f145c [pkg] prefer 'any' deps for package dev dependencies
Tested: CI validation
Change-Id: If65cc156130a65ffe00c6f1660ac320e2921afae
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/246053
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
2022-05-27 01:34:59 +00:00
Devon Carew 9f49e68ad5 [tools] commit a script which can rev all SDK package deps
Change-Id: I0b628743d012a58950a3fb1ab01b0cb976f805d7
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/245742
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
2022-05-25 15:30:58 +00:00
Nate Bosch 6ebd2633cd Use any deps for all unpublished packages
It should not be necessary to ever run `pub get` for a package which is
not published. All packages used in the SDK are controlled by a single
package config, so it's not necessary to declare versions or paths for
any packages.

Remove all dependency overrides.

R=devoncarew@google.com

Change-Id: Icb328813b471f35ee4c99995f4e90aac4d8ed438
Tested: Covered by existing static analysis.
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/244767
Commit-Queue: Nate Bosch <nbosch@google.com>
Reviewed-by: Alexander Aprelev <aam@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
2022-05-17 01:22:25 +00:00
Devon Carew 53161dd26c [deps] rev package:file
Change-Id: I5f8118a0ada53498c7e9309111523c99ff848e8b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/244043
Reviewed-by: Nate Bosch <nbosch@google.com>
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2022-05-10 00:08:42 +00:00
Devon Carew aa63ef8f4f [deps] remove the package:pedantic dep
Change-Id: Icacaa97ccd1b1919a97c50bec431c54137c08b07
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241984
Reviewed-by: Lasse Nielsen <lrn@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2022-04-22 16:44:30 +00:00
Devon Carew 285e40ed95 [infra] validate pkg/ dep ranges against the packages DEP'd in
Change-Id: I17eac35f0cb1c88dc838b39fa2ac352799c4fd50
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/241210
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Reviewed-by: Alexander Thomas <athom@google.com>
Reviewed-by: Nate Bosch <nbosch@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2022-04-19 19:25:47 +00:00
Devon Carew c4dc032f6c [repo] improve the analysis of the tools/ directory
Change-Id: I4185e3bdc1f0f6f8464ebc2a043254200e3df486
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/233502
Reviewed-by: Samuel Rawlins <srawlins@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2022-02-17 19:09:52 +00:00
Nate Bosch 33e174084a Replace Uri.scheme == with Uri.isScheme
Use `hasScheme` in place of comparing against the empty string, and
`isScheme` to compare against all other schemes.

TEST=No behavior changes.

Change-Id: Ifc9fd13c6cf37933ebd4a754c4b500dedbcb291b
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/231185
Reviewed-by: Kevin Moore <kevmoo@google.com>
Commit-Queue: Nate Bosch <nbosch@google.com>
2022-02-08 21:38:57 +00:00
Jens Johansen ad6ffaab95 [CFE] First stab at prototype for textually extracting outlines
Change-Id: Ib84b47f0acb553cee6d891d7bbcf865f4a57a65a
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/221080
Commit-Queue: Johnni Winther <johnniwinther@google.com>
Reviewed-by: Johnni Winther <johnniwinther@google.com>
2021-11-26 06:14:44 +00:00
Kevin Moore ada6029976 tools/package_deps: allow "normal" deps as long as there is a path override
Also migrate to null safety, drop unused pedantic dep

Change-Id: Ic3be5af7e7933f2bd757e9dcdda62eb5be99c5bf
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/218085
Auto-Submit: Kevin Moore <kevmoo@google.com>
Reviewed-by: Devon Carew <devoncarew@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
Commit-Queue: Kevin Moore <kevmoo@google.com>
2021-10-26 18:26:01 +00:00
Devon Carew 16d173f7d2 [analyzer_cli] switch pkg/analyzer_cli to using package:lints
Change-Id: Ibc9c6edb6f745a6b177ceca133af5c868734b3f5
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/200481
Reviewed-by: Phil Quitslund <pquitslund@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2021-05-18 21:45:23 +00:00
Devon Carew 8cba879f46 Add additional validations to the pkg/ package pubspecs.
TEST=these are additional validations that we run on the bots

Redux of https://dart-review.googlesource.com/c/sdk/+/161040

Change-Id: Ia32ced5d48fbfeafacfa9e51dc4774d2e9425091
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/174601
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-12-02 17:27:18 +00:00
Devon Carew 4c97369a71 [package_deps] improve package deps validation
Change-Id: I8ad92243dece86cf6255eb463672c53066da31df
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/159601
Reviewed-by: Sigmund Cherem <sigmund@google.com>
Commit-Queue: Devon Carew <devoncarew@google.com>
2020-08-21 19:22:20 +00:00
Devon Carew f7006a91bb Add a tool to validate pubspec.yaml files in pkg/
Change-Id: If218f2aa48b58330cc506574d7dd68ad165a7b11
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/159162
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Jaime Wren <jwren@google.com>
Reviewed-by: Brian Wilkerson <brianwilkerson@google.com>
2020-08-20 18:05:49 +00:00