Commit Graph

101 Commits

Author SHA1 Message Date
Jonah Williams
661e0350fb
Disable all Dart fingerprinters (#31463) 2019-04-23 11:58:37 -07:00
Stanislav Baranov
e2a3c2ee45
Remove support for building dynamic patches on Android. (#31359) 2019-04-22 10:40:50 -07:00
Alexander Aprelev
d775908c7e
Download and handle product version of flutter patched sdk (#31063)
* Support release/debug flavors of flutter_patched_sdk

* Use [anyNamed] instead of [any] for mocking named arguments

* Fix use of local engine in release mode
2019-04-15 21:02:20 -07:00
Vyacheslav Egorov
01e3496ad9
Introduce --report-timings flag for flutter build aot command. (#30032)
This flag makes flutter build aot report timings for substeps (e.g.
frontend compilation and gen_snapshot) in a machine readable form.
2019-04-03 12:12:18 +02:00
Jonah Williams
7d678f2adc
Lazy cache 5: The Empire Strikes Back (#29986) 2019-03-27 13:54:09 -07:00
Jonah Williams
164dae3bf1
Revert "Lazy cache 4 (#29785)" (#29985) 2019-03-26 10:01:22 -07:00
Jonah Williams
d71f324e48
Lazy cache 4 (#29785) 2019-03-26 08:45:29 -07:00
Jonah Williams
469a859c72
Enable code generation features in tool (#29399) 2019-03-21 13:12:10 -07:00
Jonah Williams
c72f18fcd5
Add builders and engine hash to fingerprint (#29434) 2019-03-20 15:40:37 -07:00
Phil Quitslund
802eca29d2
set literal conversions (#27811) 2019-03-06 11:05:16 -08:00
Stevie Strickland
8709813ac6 Remove unused --packages argument to gen_snapshot. (#28334)
This command line argument has already been removed in the main
Dart repository, so building flutter with the latest dart fails.

This time, also update the tests to avoid the checks for a package
path on snapshot generation.
2019-02-26 10:37:08 +01:00
Greg Spencer
b45a8f464d
Revert "Remove unused --packages argument to gen_snapshot. (#28101)" (#28265)
This reverts commit 1c021506df.

The pre-commit tests never actually ran, so it looked green when it wasn't. This breaks 16 tests that depend on the argument existing, even though it isn't actually used.
2019-02-21 08:47:24 -08:00
Stevie Strickland
1c021506df Remove unused --packages argument to gen_snapshot. (#28101)
This command line argument has already been removed in the main
Dart repository, so building flutter with the latest dart fails.
2019-02-21 09:03:59 +01:00
Jonah Williams
67cf21577f
Add basic codegen app to be used for integration testing and benchmarks (#27257) 2019-02-14 23:17:16 -08:00
Alexander Aprelev
8de5a07c3f
Revert "Disable usage of bare instructions in AOT (#27410)" (#27789)
This reverts commit 965dc52e2e as performance gains seems to outweigh compressed apk size increase.
2019-02-13 15:29:50 -08:00
KyleWong
4b4a9400b7 Refactor build-number/build-name logic. (#27743)
This PR aims at several things:

1. Use pub_semver to check a version in pubspec.yaml meets the requirements specified in https://semver.org/.
2. Don't limit build-number/build-name as a fixed format. Instead, validate it according to the target(ios/android).
3. Make sure that build-number/build-name are always validated no matter it's specified by the `flutter command` or version in pubspec.yaml.

Fixes #27589
2019-02-13 07:48:03 -08:00
Stanislav Baranov
63e6a7ad30
Support for building dynamic patches in AOT mode. (#27672) 2019-02-08 17:52:57 -08:00
Ryan Macnak
965dc52e2e Disable usage of bare instructions in AOT (#27410)
Issue #27250
2019-02-05 13:52:59 -08:00
Jonah Williams
c219e6f3b1
Inject KernelCompiler via KernelCompilerFactory (#27211) 2019-01-30 08:34:01 -08:00
Stanislav Baranov
eb8219edd5
Emulator support for dynamic mode on Intel architecture (#26565) 2019-01-17 14:21:35 -08:00
Stanislav Baranov
55f3da7afc
Flutter tool support for building dynamic updates (#25576) 2018-12-19 16:27:47 -08:00
Stanislav Baranov
0d4f279fb8
Read correct cached VM snapshot in dynamic mode (PRODUCT vs RELEASE) (#25472) 2018-12-18 12:53:30 -08:00
Ryan Macnak
d92d175bcb Opt into deterministic snapshots.
Also, remove old flags.
2018-11-07 14:44:20 -08:00
Jacob Richman
f5f70f0c99
Include .track in file names for cached dill files for builds with --track-widget-creation (#23299)
Ensure that cached dill files for builds with --track-widget-creation
always have .track. in the file name to avoid mixing transformed and
untransformed kernel files.
2018-10-23 10:09:18 -07:00
Jason Simmons
a6a1607888
Roll engine to 4c79e423dc6f89f98d8ceb263a5ca78e2f2da996 (#23384)
Also includes
  * Updates to affected tests
  * Change flutter_tools to pass package URIs to the Dart front end
    instead of filesystem paths
2018-10-22 18:03:50 -07:00
Alexander Aprelev
e274ed866a [dart] Roll engine to dart roll 2018-10-10 20:45:22 -07:00
Jonah Williams
224f91e386
Revert "Eliminate snapshot, depfile opts from bundle cmd (#22495)" (#22519)
This reverts commit b07d986f66.
2018-10-01 10:49:39 -07:00
Chris Bracken
b07d986f66
Eliminate snapshot, depfile opts from bundle cmd (#22495)
Eliminates the --snapshot and --depfile parameters from the flutter
bundle command. The snapshot parameter is unused in Dart 2 -- code is
built to kernel .dill files and for profile/release builds, then AOT
compiled.

While depfiles are still used in Dart 2 (e.g. by the kernel compiler),
there are enough assumptions in the code that they lie in the default
location (e.g. in the Gradle build) and no reasons to support
user-cusomisation that it makes sense to eliminate the --depfile option
as well, and always use the default location.

This commit also renames 'depFilePath' to 'depfilePath' for consistency
across the codebase.
2018-10-01 10:19:37 -07:00
Stanislav Baranov
54c10f44b2
Implement build flow for hot updates on Android (#22391)
This also involves switching from Core JIT to App JIT snapshot, and replacing per-isolate VM snapshot with the shared VM snapshot.

For now there is no separate update bundle file, as the generated update gets packaged directly into the APK for testing purposes.
2018-09-28 13:58:37 -07:00
Ian Hickson
989cf18b0d
[H] Cleanup (#21542)
* Improve documentation and clean up code.

* Remove "Note that".

The phrase "note that" is basically meaningless as a prefix to an
otherwise fine sentence.
2018-09-22 02:02:56 -07:00
Alexander Markov
83cdb5738e
Cleanup uses of entry points files (#22098) 2018-09-20 15:10:41 -07:00
Alexandre Ardhuin
d927c93310
Unnecessary new (#20138)
* enable lint unnecessary_new

* fix tests

* fix tests

* fix tests
2018-09-12 08:29:29 +02:00
Chris Bracken
5ab9e70727
Revert "Eliminate snapshot/depfile options to build bundle (#21507)" (#21563)
This tickled a bug in KernelCompiler.compile() where the fingerprinter
doesn't include the outputFilePath in its list of dependencies. As such,
if the output .dill file is missing or corrupted, the fingerprint still
matches and re-compile is skipped, even though it shouldn't be. I'll fix
that in a followup, then look at how this triggered that issue. My
hypothesis is that that it's due to the aot kernel compile and bundle
kernel compile have separate output directories for the .dill files
(build/ vs build/aot) but the same output directory for the associated
depfiles (due to this patch).

This reverts commit 43a106e95a.
2018-09-07 12:33:05 -07:00
Chris Bracken
43a106e95a
Eliminate snapshot/depfile options to build bundle (#21507)
The --snapshot argument was only necessary in Dart 1. The --depfile
argument was only used in Dart 2 mode to pass to the kernel compiler,
but was inconsistent with the 'build aot' command, where the depfile was
always set to build/kernel_compile.d.

This patch updates 'build bundle' to emit the depfile to a location
consistent with the 'build aot' command; since it's not intended to be
user-configurable and flutter.gradle hardcodes the location to
build/kernel_compile.d either way, this patch also eliminates the
ability to configure the filename altogether.
2018-09-07 10:21:55 -07:00
Chris Bracken
ac8b906cb4
Eliminate support for Dart 1 in AOT snapshotter (#21388) 2018-09-04 10:17:12 -07:00
Chris Bracken
ed0b8be041
Eliminate script snapshot support (#21387)
Script snapshots were only every used in Dart 1 mode, which is no longer
supported.
2018-09-04 10:05:26 -07:00
Ian Hickson
b7261586e5
Audit TODO syntax (#20837)
Fixes the pattern for some TODOs to match our style guide.

(Also, a couple of minor code order fixes.)
2018-08-21 14:02:11 -07:00
Stanislav Baranov
b5b55447a4
Remove unused snapshot.d depfile parameter (#20584) 2018-08-16 08:47:20 -07:00
Stanislav Baranov
2c0329a103
Replace flutter --build-snapshot with --precompile that takes input (#20574) 2018-08-16 08:46:57 -07:00
Ryan Macnak
b8b6d4166c
Build snapshots with --sync-async to match the engine. (#19495)
Bug: https://github.com/flutter/flutter/issues/19494
2018-07-17 18:07:54 -07:00
sjindel-google
698e1016bb Let the Kernel FE know whether it's building for a release VM. (#18876)
Fixes #18829
2018-06-29 17:01:34 +02:00
Greg Spencer
08d1ec36de Roll engine to 0c119932c0d6cb30dafd75ec717d1eda76fd7651 (#18575) 2018-06-19 09:58:20 +02:00
Stanislav Baranov
bcaf026c08
Add flutter tool support for creating app-specific VM snapshots. (#18417)
Add flutter tool support for creating app-specific VM snapshots.
2018-06-15 11:53:30 -07:00
Ian Hickson
d1cc8b6de8
Clean up output of "flutter run --release" (#18380)
(second attempt)
2018-06-14 12:30:20 -07:00
Chris Bracken
2ae48845a8
Revert elimination of Dart 1 (#18460)
fuchsia_tester.dart still assumes Dart 1. Previously, it ran tests directly
from source, flutter_platform.dart automatically runs a kernel compile when
operating in Dart 2 mode, but this assumes a functional Dart SDK is available
in the artifacts directly, and fuchsia_tester.dart mocks out the artifacts
directory with an empty temp dir.

Remaining work is:
1. Get the frontend server building as a dependency on Fuchsia.
2. Patch fuchsia_tester.dart to use a valid Dart SDK and frontend server.

This also reverts migration to Dart 2 typedef syntax.

This reverts commit 6c56bb2. (#18362)
This reverts commit 3daebd0. (#18316)
2018-06-13 12:46:39 -07:00
Stanislav Baranov
581a343b34
Fix gradle dependency for gen_snapshot in AOT builds. (#18322) 2018-06-08 18:45:07 -07:00
Chris Bracken
3daebd059c
It's time to #deleteDart1 (again) (#18316)
* It's time to #deleteDart1 (#18293)

Eliminates support for Dart 1 in flutter_tools, and drops our Dart 1
benchmarks. All commands now run in Dart 1 mode only.

Eliminates --preview-dart-2 / --no-preview-dart-2 support.

* Fix indentation, remove no longer necessary .toList()

* Only push udpated kernel if >0 invalidated srcs
2018-06-08 15:49:24 -07:00
Chris Bracken
9495df4bc3
Revert "It's time to #deleteDart1 (#18293)" (#18313)
Several benchmarks started failing during kernel compile:
1. Timeouts:
   * commands_test
   * hot_mode_dev_cycle__benchmark
   * run_machine_concurrent_hot_reload
   * service_extensions_test

2. Kernel compiler crash:
   * hot_mode_dev_cycle_linux__benchmark
   * routing_test

3. Unexpected termination:
   * hot_mode_dev_cycle_win__benchmark

This reverts commit ed63e7082a.
2018-06-08 12:43:11 -07:00
Chris Bracken
ed63e7082a
It's time to #deleteDart1 (#18293)
Eliminates support for Dart 1 in flutter_tools, and drops our Dart 1
benchmarks. All commands now run in Dart 1 mode only.

Eliminates --preview-dart-2 / --no-preview-dart-2 support.
2018-06-08 11:04:57 -07:00
Alexandre Ardhuin
09276bea25
enable lint prefer_equal_for_default_values (#18156) 2018-06-05 08:50:40 +02:00