Commit Graph

3391 Commits

Author SHA1 Message Date
Jonah Williams
67cf21577f
Add basic codegen app to be used for integration testing and benchmarks (#27257) 2019-02-14 23:17:16 -08:00
Jonah Williams
9bc5656637
Wire dart2js through flutter tool, add compilation test (#27668) 2019-02-14 22:42:30 -08:00
KyleWong
e99c881f8d
Don't cache result for homeDirPath. (#27873) 2019-02-14 16:08:26 +08:00
Jonah Williams
537b592ed5 fix multiroot scheme (#27914) 2019-02-13 23:17:28 -05:00
Dan Field
ed4e3da360
update packages and supress lint (#27902) 2019-02-13 15:45:20 -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
Jonah Williams
a5af29e83c
Revert "Lazily download artifacts (Part II) (#27735)" (#27895)
This reverts commit 76061c4fa9.
2019-02-13 11:59:51 -08:00
Jonah Williams
76061c4fa9
Lazily download artifacts (Part II) (#27735) 2019-02-13 11:04:28 -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
KyleWong
f2004b8f43
Add android studio process logic for JetBrainsToolbox (#27687)
* Make plugin path search logic use version check as a fallback.

* In JetBrainsToolbox, Info.plist would be just some kind of wrapper, we need a double check before get the real one.

* Use Regex to get content instead of `default command` to avoid error output as there could be no JetBrainsToolboxApp key/value for a normal Info.plist(Android Studio.)
2019-02-13 15:05:20 +08:00
KyleWong
199ebaa677 Refactor ios bundleid/android application process logic. (#27471)
When creating a flutter project,
Make sure: applicationid for android conforms to: https://developer.android.com/studio/build/application-id

Make sure: bundleid for ios conforms to:
https://developer.apple.com/library/archive/documentation/FileManagement/Conceptual/understanding_utis/understand_utis_conc/understand_utis_conc.html
(Not only the name,but also the organization, as it's a check for whole bundleid.)
2019-02-12 19:40:53 -08:00
Ian Hickson
58939b70ef Prevent tests from importing other tests. (#27800)
This pattern is problematic when Flutter is ported to build systems
that require each executable end-point to be self-contained (e.g.
Bazel).
2019-02-12 12:29:36 -08:00
Dan Field
ead5e8e4d7
Fix Xcode_backend.sh for flavors (#27691) 2019-02-12 12:28:56 -08:00
Dan Field
fdcb861b05
Deflake AnsiSpinner tests (#27825) 2019-02-12 12:28:45 -08:00
TruongSinh Tran-Nguyen
d15a361244 flutter create --template=plugin now include flutter unit test (#26456) 2019-02-12 10:37:00 -08:00
KyleWong
52687c7910
Optimize flutter run logic for iOS by "ONLY_ACTIVE_ARCH=YES" if possible (#27817) 2019-02-12 12:24:57 +08:00
KyleWong
bf20fa7c9d
Refactor "no ios devices attached" logic. (#27717) 2019-02-12 10:14:01 +08:00
Jonah Williams
23d38901ef
Pass method used to start flutter application (#27812) 2019-02-11 18:05:23 -08:00
Stanislav Baranov
b47da6c2b7
Add support for binary compression of dynamic patches by the flutter tool. (#27754)
This reduces the typical dynamic patch size by more than 10x.

Also see https://github.com/flutter/engine/pull/7777 for decompression support in the runtime.
2019-02-11 16:57:26 -08:00
KyleWong
1c0a06f397 Make version documentation clearer. (#27278)
Currently, in pubspec.yaml, semver.org is referred to for more about versioning.
However, the versionCode/versionName could differ on different platforms (iOS, Android, Dart).

This adds more clear and complete information that could help users to understand it better.

See: #27251
2019-02-11 16:29:38 -08:00
Jonah Williams
4c3d15832d
add desktop devices to daemon behind flag (#27665) 2019-02-11 14:49:07 -08:00
Danny Tuppeny
ad3da3b4a3
Update temp folder name to me more consistent with others (#26702)
This change was dropped out of #26227 because it seems to inexplicably result in timeouts talking to the VM service on Windows Cirrus. After 1 month of periodically debugging it, it just started passing 🤷‍♂️.
2019-02-11 16:20:45 +00:00
Jonah Williams
216a65b669
remove build_runner_core import from flutter_tools (#27708) 2019-02-08 18:12:28 -08:00
Stanislav Baranov
63e6a7ad30
Support for building dynamic patches in AOT mode. (#27672) 2019-02-08 17:52:57 -08:00
Jonah Williams
7cdb30fba2
Revert "Lazily download artifacts (#27374)" (#27705)
This reverts commit 98971f3c64.
2019-02-08 15:50:18 -08:00
Jonah Williams
98971f3c64
Lazily download artifacts (#27374) 2019-02-08 15:24:09 -08:00
Zachary Anderson
fe701c45e5
Add build_runner_core to flutter_tools BUILD.gn (#27661)
Need for roll into Fuchsia
2019-02-08 07:40:44 -08:00
Michael Klimushyn
4a9e5bc11b
Warn when gradle builds fail because of AndroidX (#27566)
Try to detect Gradle error messages that hint at AndroidX problems, and
warn in the logs about the potential problem and point to documentation
on how to fix the issue.

Unfortunately the Gradle errors based on this root issue are varied and
project dependent. It's probably better to still leave the message
intact in case the problem is unrelated.

Also filters out the plugin warning message pending in
flutter/plugins#1138. It's still valuable to add that for people on
previous versions of Flutter, but this link should override that message
for anyone on an up to date version of Flutter.

#27106
2019-02-07 17:23:35 -08:00
KyleWong
99497dc2d9 Refactor android launchable activity extractor logic (#26819) 2019-02-07 13:24:03 -08:00
Greg Spencer
2aad59314f
Add a keyboard key code generator. (#27620)
This adds a keycode generator that incorporates input from the Chromium and Android source trees, as well as some local tables, to generate static constants for the LogicalKeyboardKey and PhysicalKeyboardKey classes, as well as mappings from each of the platforms we support so far (currently only Android and Fuchsia).

This code generator parses the input files, generates an intermediate data structure (`key_data.json`) that is checked in, and then generates the Dart sources for these classes and some static maps that will also be checked in (but are not included in this PR).

The idea is that these codes don't change often, and so we don't need to generate them on every build, but we would like to be able to update them easily in the future if new data becomes available. If the existing data disappears or becomes unusable, we can maintain the checked-in data structure by hand if necessary, and still be able to generate the code.

This PR only contains the code generator, not the classes themselves. In another follow-on PR, I'll run the generator and check in the output of the generator.
2019-02-06 16:53:16 -08:00
Jonah Williams
5b943257d7
fix list devices throwing on junk input (#27615) 2019-02-06 15:41:22 -08:00
Jonah Williams
c920cb7c57
Remove build runner from injection (#27607) 2019-02-06 14:38:50 -08:00
Greg Spencer
da27f62337
Make a kReleaseMode constant that is public. (#27502)
Before this, we had several places where an isReleaseMode was defined, all with the same definition. This just makes it more broadly visible to allow our users to use it, as well as creating debug and profile versions, and adding a device lab test for it.

Since this is a const value, this makes it possible for a developer to easily mark blocks that can be removed at AOT compile time.
2019-02-06 14:37:17 -08:00
Jonah Williams
b06a709305
Use flutter_tools to generate build_script (#27277) 2019-02-05 18:35:20 -08:00
KyleWong
7765dd4c3c Refactor logic to get plugins path for android studio in mac (#26964) 2019-02-05 16:48:14 -08:00
Dan Field
704814c67a
Use CP_REPOS_DIR if it's set (#27553)
* Allow CP_REPOS_DIR
2019-02-05 16:03:37 -08:00
xster
36c5e321a5
Print 50000$ monopoly money (#27531) 2019-02-05 15:00:51 -08:00
KyleWong
9abe4c6dfe Fix gradle verbose error. (#26938) 2019-02-05 15:00:18 -08:00
Ryan Macnak
965dc52e2e Disable usage of bare instructions in AOT (#27410)
Issue #27250
2019-02-05 13:52:59 -08:00
木士羽
9f7ab4c4a0 Support using flutter with specific version (#26840)
* Support using flutter with specific version

* Set min supported version to 1.2.1
2019-02-04 11:26:06 -08:00
Jonah Williams
8e2ea26301
Make the deviceDiscovery API overridable (#27378) 2019-01-31 18:42:30 -08:00
Alexander Aprelev
030dc3fade
Don't send accept/reject if compilation never started. (#27319)
* Don't send accept/reject if compilation never started.

Ensure that we wait for reject's response since that is async operation.

Fixes https://github.com/flutter/flutter/issues/27120.

* Fix analysis errors

* Rename flag. Ensure we raise it on first compilation too.
2019-01-31 17:43:32 -08:00
Zachary Anderson
7634a0ecbe
[flutter_tool,doctor] Fix and test gen_snapshot failure message (#27253) 2019-01-30 13:01:19 -08:00
KyleWong
7c19ec6ca8 Add2App: Fix crash resulted from hard-code module 'app' based resource copy. (#27154) 2019-01-30 10:29:29 -08:00
Michael Goderbauer
6d20ff2446
Remove all obsolete "// ignore:" (#27271) 2019-01-30 08:56:12 -08:00
Jonah Williams
c219e6f3b1
Inject KernelCompiler via KernelCompilerFactory (#27211) 2019-01-30 08:34:01 -08:00
jonnyandrew
59dc909d0f Include empty config in 'flutter config' output (#25094) 2019-01-30 07:36:03 -08:00
sjindel-google
95b34d7a07 Pass --verify-entry-points in debug mode. (#27032) 2019-01-30 07:33:55 -08:00
Mohammed Salman
8cb2695a0b fix #26207 .gitignore only include project root build directory (#26388) 2019-01-30 07:33:28 -08:00
Todd Volkert
c8c935cd83 Allow bundle identifier to be surrounded with quotes. (#26300)
Picked up from #22498, originally by @jugyo
2019-01-30 07:32:05 -08:00