If Progress is instantiated with a max of 0, throw immediately to avoid
a divide-by-zero later in toString(). This typically happens if the tool
recurses over an empty top-level component, which can happen when a
component is moved around in the repo and the developer hasn't cleaned
up old empty directories from their git client.
* Roll garnet to b3ba6b6d6ab8ef658278cc43c9f839a8a8d1718e
Also includes a buildroot patch to pick up new dependency:
build/config/fuchsia/sdk.gni
This fixes a build breakage in
garnet/public/lib/fxl/strings/string_view_unittest.cc wherein a variable
'sw5' was declared but the test erroneously tested against 'sw4' from
the previous test.
* Update license script for garnet
Reflects structural changes in directories we do not depend on. This
filters out the following directories in addition to what was already
filtered:
garnet/drivers
garnet/packages
garnet/public/build/
garnet/public/rust/
* Update licenses
The hermetic Xcode tooling in that repo is not yet easily usable for
Xcode 9. There are two main issues:
1. The tooling currently assumes that macOS host builds should use
Xcode 8, whereas iOS builds should use Xcode 9. Flutter builds should
use Xcode 9 in all cases.
2. The tooling currently includes a bail-out condition for iOS builds
that exits non-zero immediately (Chrome hasn't yet migrated its iOS
build to this tooling).
In the meantime, I've manually updated the bot infra with Xcode 9 and
we'll continue to use the current find_xcode.py tooling until Chrome's
new Mac/iOS tooling is ready.
* Add dependency on chromium/src/build for Mac/iOS build
Preparation for migrating to mac_toolchain.py for installing/configuring
Xcode versions on the Mac build bots.
* Exclude third_party/chromium_build from licence script
It's used only at build time to fetch and install the correct Xcode
version.
* Introduce frontend_server that allows for interactive and batch modes.
Example of batch mode:
```
$ dart $HOME/p/f/t11/flutter/engine/src/flutter/frontend_server/bin/server.dart --sdk-root=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk --platform-kernel-dill=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk/platform.dill $HOME/p/f/t11/flutter/flutter/examples/flutter_gallery/lib/main.dart
out: result 79256789-598c-4909-a9e4-0ef36d4c26ba
out: 'State&TickerProviderStateMixin^#U0^' is exported from both 'package:flutter/src/widgets/animated_cross_fade.dart' and 'package:flutter/src/widgets/animated_list.dart'.
...
out: Superclass has no method named 'hitTest'.
out: 79256789-598c-4909-a9e4-0ef36d4c26ba $HOME/p/f/t11/flutter/flutter/examples/flutter_gallery/lib/main.dart.dill
$
```
Example of interactive mode - communication via stdin/stdout:
```
$ dart $HOME/p/f/t11/flutter/engine/src/flutter/frontend_server/bin/server.dart --sdk-root=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk --platform-kernel-dill=$HOME/p/f/t11/flutter/engine/src/out/android_debug/flutter_patched_sdk/platform.dill --incremental
out: Frontend server is ready.
in: compile abc.dart
out: result fd99c0f9-12bb-4083-818e-2521d454fdc8
out: fd99c0f9-12bb-4083-818e-2521d454fdc8 abc.dart.dill
in: accept
in: recompile kuka
in: 123.dart
in: 456.dart
in: kuka
out: result d12f8d05-6c79-44f7-a775-1d3469e1be53
in: quit
$
```
* Add test. Cleanup dependencies.
* One more test with mocks
* Remove platform-kernel option. Refactored CompilerOptions. Clean up comments.
* Update license
* Use Uri.base.resolve consistently. Ensure folder path for sdk root. Fix test.
* Fix main_dart for frontend_server build target
* Reintroduce .packages file, add README.md, revert changes to licenses_flutter
* Run analyzer on frontend-server. Update .packages deps so tests can be run too.
* Add analyzer options file
* Clean up dependencies
* Add frontend_server files to license file back
* Fix comment in analysis_options.yaml
* Run frontend_server tests in travis
* Update licenses
* Change a+x permission on travis/test.sh
* pub get before pub run test
* Fix path to when
* Clarify accept/reject instructions
* Formatting, fixed docs, style
* Update license script to skip .travis.yml, when/example. Update license file.
* Update style nits
* Fix license
* Trim license extracted text. Fix licenses
* Update licenses_third_party signature
* Few more tests
* Update dart license
* Update dart license
* Style changes. Fix return value for Future<Null>
Roll Dart VM to daa38a2ea21d290e45adb509dc60418b22ec7eba for fix to Thumb profile sample collection.
Roll buildroot to b0b836db790abff26695a944224a4934480f2f48.
* Build Flutter patched-sdk with kernel artifacts
* Switch to new dart_host_toolchain argument mechanism to let dart patch_sdk know of host_toolchain.
* Update dart dependency
* Updated licenses
* Rename dart dependencies tag so they have just 'dart_'-prefixed dart's names.
* Fix indentation and line breaks for newly added deps.
* Add toolchain for windows host
* Update dart revision
* Licenses
* Update licenses
* Revert changes to licenses_third_party