Bump test to 165608a34917dcfc281ba67d64a814c57ae05c4e

Changes:
```
> git log --format="%C(auto) %h %s" dc0f8ea..165608a
 https://dart.googlesource.com/test.git/+/165608a3 Merge `package:test_process` (2425)
 https://dart.googlesource.com/test.git/+/6719bc6d Use dart_flutter_team_lints for matcher (2426)
 https://dart.googlesource.com/test.git/+/754d970f Moving fixes
 https://dart.googlesource.com/test.git/+/c62a875b Add issue template and other fixes
 https://dart.googlesource.com/test.git/+/6f9c68de Merge package:test_process into the test monorepo
 https://dart.googlesource.com/test.git/+/200097bd Bump dart-lang/setup-dart in the github-actions group (dart-lang/test_process65)
 https://dart.googlesource.com/test.git/+/b30f0115 Bump actions/checkout from 4.2.0 to 4.2.2 in the github-actions group (dart-lang/test_process64)
 https://dart.googlesource.com/test.git/+/3a8f6fc1 blast_repo fixes (dart-lang/test_process63)
 https://dart.googlesource.com/test.git/+/bbad41ca Bump actions/checkout from 4.1.7 to 4.2.0 in the github-actions group (dart-lang/test_process62)
 https://dart.googlesource.com/test.git/+/922e52c3 Bump the github-actions group with 2 updates (dart-lang/test_process61)
 https://dart.googlesource.com/test.git/+/e2395fbb update lints (dart-lang/test_process60)
 https://dart.googlesource.com/test.git/+/571b067f Bump actions/checkout from 4.1.5 to 4.1.6 in the github-actions group (dart-lang/test_process59)
 https://dart.googlesource.com/test.git/+/f2eb7c3d Bump actions/checkout from 4.1.4 to 4.1.5 in the github-actions group (dart-lang/test_process58)
 https://dart.googlesource.com/test.git/+/868150a6 blast_repo fixes (dart-lang/test_process57)
 https://dart.googlesource.com/test.git/+/731dff0f Bump dart-lang/setup-dart from 1.6.2 to 1.6.4 (dart-lang/test_process55)
 https://dart.googlesource.com/test.git/+/1de697b2 Bump actions/checkout from 4.1.2 to 4.1.4 (dart-lang/test_process56)
 https://dart.googlesource.com/test.git/+/a631d702 Bump actions/checkout from 4.1.1 to 4.1.2 (dart-lang/test_process54)
 https://dart.googlesource.com/test.git/+/0ad978bc Bump dart-lang/setup-dart from 1.6.0 to 1.6.2 (dart-lang/test_process53)
 https://dart.googlesource.com/test.git/+/09d29ba2 Update lints, require Dart ^3.1 (dart-lang/test_process52)
 https://dart.googlesource.com/test.git/+/a23c763e Bump dart-lang/setup-dart from 1.5.1 to 1.6.0 (dart-lang/test_process51)
 https://dart.googlesource.com/test.git/+/f4aba707 Bump actions/checkout from 4.1.0 to 4.1.1 (dart-lang/test_process50)
 https://dart.googlesource.com/test.git/+/ab7c3693 Bump dart-lang/setup-dart from 1.5.0 to 1.5.1 (dart-lang/test_process48)
 https://dart.googlesource.com/test.git/+/910e11ff Bump actions/checkout from 3.6.0 to 4.1.0 (dart-lang/test_process49)
 https://dart.googlesource.com/test.git/+/90885fd6 Bump actions/checkout from 3.5.3 to 3.6.0 (dart-lang/test_process47)
 https://dart.googlesource.com/test.git/+/c587b262 Bump actions/checkout from 3.5.2 to 3.5.3 (dart-lang/test_process46)
 https://dart.googlesource.com/test.git/+/3be0859c blast_repo fixes (dart-lang/test_process45)
 https://dart.googlesource.com/test.git/+/253895ba Prepare to publish (dart-lang/test_process44)
 https://dart.googlesource.com/test.git/+/504c31e5 Remove expectation of process exit in test body (dart-lang/test_process43)
 https://dart.googlesource.com/test.git/+/1bc8f84d Bump actions/checkout from 3.5.0 to 3.5.2 (dart-lang/test_process42)
 https://dart.googlesource.com/test.git/+/7ee454f2 Bump dart-lang/setup-dart from 1.4.0 to 1.5.0 (dart-lang/test_process40)
 https://dart.googlesource.com/test.git/+/1043384a Bump actions/checkout from 3.3.0 to 3.5.0 (dart-lang/test_process41)
 https://dart.googlesource.com/test.git/+/2c8734c5 Bump actions/checkout from 3.2.0 to 3.3.0 (dart-lang/test_process38)
 https://dart.googlesource.com/test.git/+/574f8fd0 Bump dart-lang/setup-dart from 1.3 to 1.4 (dart-lang/test_process39)
 https://dart.googlesource.com/test.git/+/8008c373 Bump actions/checkout from 3.1.0 to 3.2.0 (dart-lang/test_process37)
 https://dart.googlesource.com/test.git/+/56019d8c Bump actions/checkout from 3.0.2 to 3.1.0 (dart-lang/test_process36)
 https://dart.googlesource.com/test.git/+/0f25fbff Update lints, require latest Dart SDK, prepare to release v2.0.3 (dart-lang/test_process34)
 https://dart.googlesource.com/test.git/+/956092ec Merge pull request dart-lang/test_process33 from dart-lang/repository_field
 https://dart.googlesource.com/test.git/+/a0f1aaa3 populate the repository field
 https://dart.googlesource.com/test.git/+/46edede2 Bump actions/checkout from 2 to 3 (dart-lang/test_process32)
 https://dart.googlesource.com/test.git/+/811ac5ec Merge pull request dart-lang/test_process30 from scheglov/meta-1.3.0
 https://dart.googlesource.com/test.git/+/c18144e7 Revert to 'meta: ^1.3.0'.
 https://dart.googlesource.com/test.git/+/bafc1e5e Merge pull request dart-lang/test_process29 from scheglov/meta-2.0.0
 https://dart.googlesource.com/test.git/+/f093373a Update 'meta' constraint to '>=1.3.0 <3.0.0'.
 https://dart.googlesource.com/test.git/+/970bd6b0 Update test-package.yml (dart-lang/test_process28)
 https://dart.googlesource.com/test.git/+/1be472ce Bump dart-lang/setup-dart from 0.3 to 1 (dart-lang/test_process27)
 https://dart.googlesource.com/test.git/+/a9c8cc93 Add dependabot
 https://dart.googlesource.com/test.git/+/a696dafc Merge pull request dart-lang/test_process26 from dart-lang/franklinyow-patch-1
 https://dart.googlesource.com/test.git/+/db948fac Update LICENSE
 https://dart.googlesource.com/test.git/+/0009318d Fix formatting (dart-lang/test_process25)
 https://dart.googlesource.com/test.git/+/85e2d473 Prepare to publish (dart-lang/test_process24)
 https://dart.googlesource.com/test.git/+/21714220 Migrate to null safety (dart-lang/test_process23)
 https://dart.googlesource.com/test.git/+/240590e4 Migrate to GitHub Actions (dart-lang/test_process22)
 https://dart.googlesource.com/test.git/+/13fdbaf7 Merge pull request dart-lang/test_process20 from dart-lang/srawlins-patch-1
 https://dart.googlesource.com/test.git/+/1b8f5969 Remove unused dart:async imports
 https://dart.googlesource.com/test.git/+/3080db8d Merge pull request dart-lang/test_process19 from MichaelRFairhurst/remove-import
 https://dart.googlesource.com/test.git/+/759934c8 Remove unused dart:async import
 https://dart.googlesource.com/test.git/+/aa8375f9 Merge pull request dart-lang/test_process18 from dart-lang/fix_links
 https://dart.googlesource.com/test.git/+/c7ac71ec Update links to eliminate redirects
 https://dart.googlesource.com/test.git/+/e23529cb Run the test's heartbeat whenever the process emits output (dart-lang/test_process17)
 https://dart.googlesource.com/test.git/+/2abab6f5 Fix newly enforce lints and clean pubspec (dart-lang/test_process16)
 https://dart.googlesource.com/test.git/+/3fab9a80 Fix travis for latest dev SDK (dart-lang/test_process15)
 https://dart.googlesource.com/test.git/+/495da7ac chore: set max SDK version to <3.0.0 (dart-lang/test_process14)
 https://dart.googlesource.com/test.git/+/db9aa9d3 Merge pull request dart-lang/test_process13 from dart-lang/update-version
 https://dart.googlesource.com/test.git/+/e6b1227c prepare for release
 https://dart.googlesource.com/test.git/+/4f1ba650 Merge pull request dart-lang/test_process12 from dart-lang/update-test
 https://dart.googlesource.com/test.git/+/f2fd8303 Support test 1.x.x
 https://dart.googlesource.com/test.git/+/22f38501 Remove usage of deprecated dart:io constants. (dart-lang/test_process11)
 https://dart.googlesource.com/test.git/+/0a054b0f Remove upper case constants (dart-lang/test_process8)
 https://dart.googlesource.com/test.git/+/ef12b6fc Enable travis-ci (dart-lang/test_process7)
 https://dart.googlesource.com/test.git/+/47d5b438 Declare support for async 2.0.0 (dart-lang/test_process6)
 https://dart.googlesource.com/test.git/+/67d64c7e Describe this as "a package" and not "a library". (dart-lang/test_process5)
 https://dart.googlesource.com/test.git/+/a30d1603 Update the pubspec and CHANGELOG.
 https://dart.googlesource.com/test.git/+/f29cd322 Flesh out the README.
 https://dart.googlesource.com/test.git/+/544bbb20 Add pid and exitCode getters.
 https://dart.googlesource.com/test.git/+/8e4796d4 Print superclass rather than subclass logs. (dart-lang/test_process2)
 https://dart.googlesource.com/test.git/+/d916bb96 Add the package implementation. (dart-lang/test_process1)
 https://dart.googlesource.com/test.git/+/a8137d1d Add template files.

```

Diff: https://dart.googlesource.com/test.git/+/dc0f8ea4d09aabb0fed16daea3d4653c8f967b02..165608a34917dcfc281ba67d64a814c57ae05c4e/
Change-Id: I93e04de677f1bd54552a09fb705d0e61ebae6837
Reviewed-on: https://dart-review.googlesource.com/c/sdk/+/401561
Commit-Queue: Devon Carew <devoncarew@google.com>
Reviewed-by: Konstantin Shcheglov <scheglov@google.com>

https://dart.googlesource.com/sdk/+/5712566e3d99569c18038d4abcc1adc96ab54c6f
2 files changed
tree: daa851379497304f2a19a1f187c0c24254b770ec
  1. ci/
  2. tools/
  3. .gitignore
  4. commits.json
  5. DEPS
  6. OWNERS
  7. README.md
README.md

Monorepo

A gclient solution for checking out Dart and Flutter source trees

Monorepo is:

  • Optimized for Tip-of-Tree testing: The Monorepo DEPS used to check out Dart and Flutter dependencies comes from the Flutter engine DEPS with updated dependencies from Dart.

Checking out Monorepo

With depot_tools installed and on your path, create a directory for your monorepo checkout and run these commands to create a gclient solution in that directory:

mkdir monorepo
cd monorepo
gclient config --unmanaged https://dart.googlesource.com/monorepo
gclient sync -D

This gives you a checkout in the monorepo directory that contains:

monorepo/
  DEPS - the DEPS used for this gclient checkout
  commits.json - the pinned commits for Dart, flutter/engine,
                 and flutter/flutter
  tools/ - scripts used to create monorepo DEPS
engine/src/ - the flutter/buildroot repo
    flutter/ - the flutter/engine repo
    out/ - the build directory, where Flutter engine builds are created
    third_party/ - Flutter dependencies checked out by DEPS
      dart/ - the Dart SDK checkout.
        third_party - Dart dependencies, also used by Flutter
flutter/ - the flutter/flutter repo

Building Flutter engine

Flutter's instructions for building the engine are at Compiling the engine

They can be followed closely, with a few changes:

  • Googlers working on Dart do not need to switch to Fuchsia's Goma RBE, except for Windows. The GOMA_DIR enviroment variable can just point to the .cipd_bin directory in a depot_tools installation, and just goma_ctl ensure_start is sufficient.
  • The --no-prebuilt-dart-sdk option has to be added to every gn command, so that the build is set up to build and use a local Dart SDK.
  • The --full-dart-sdk option must be added to gn for the host build target if you will be building web or desktop apps.

Example build commands that work on linux:

MONOREPO_PATH=$PWD
if [[ ! $PATH =~ (^|:)$MONOREPO_PATH/flutter/bin(:|$) ]]; then
  PATH=$MONOREPO_PATH/flutter/bin:$PATH
fi

export GOMA_DIR=$(dirname $(command -v gclient))/.cipd_bin
goma_ctl ensure_start

pushd engine/src
flutter/tools/gn --goma --no-prebuilt-dart-sdk --unoptimized --full-dart-sdk
autoninja -C out/host_debug_unopt
popd

Building Flutter apps

The Flutter commands used to build and run apps will use the locally built Flutter engine and Dart SDK, instead of the one downloaded by the Flutter tool, if the --local-engine option is provided.

For example, to build and run the Flutter spinning square sample on the web platform,

MONOREPO_PATH=$PWD
cd flutter/examples/layers
flutter --local-engine=host_debug_unopt \
  -d chrome run widgets/spinning_square.dart
cd $MONOREPO_PATH

To build for desktop, specify the desktop platform device in flutter run as -d macos or -d linux or -d windows. You may also need to run the command

flutter create --platforms=windows,macos,linux

on existing apps, such as sample apps. New apps created with flutter create already include these support files. Details of desktop support are at Desktop Support for Flutter

Testing

Tests in the Flutter source tree can be run with the flutter test command, run in the directory of a package containing tests. For example:

MONOREPO_PATH=$PWD
cd flutter/packages/flutter
flutter test --local-engine=host_debug_unopt
cd $MONOREPO_PATH

Troubleshooting

Please file an issue or email the dart-engprod team with any problems with or questions about using monorepo.

We will update this documentation to address them.

  • flutter commands may download the engine and Dart SDK files for the configured channel, even though they will be using the local engine and its SDK.

Windows

  • On Windows, gclient sync needs to be run in an administrator session, because some installed dependencies create symlinks.