Commit Graph

3177 Commits

Author SHA1 Message Date
Danny Tuppeny
a74f591d0c
Change asset_bundle_package_font_test to memory file system (#21114)
* Change assert_bundle_package_font_test to memory file system

This is to work towards being able to run the tests without `-j1` (#21113). These tests were using the real filesystem and setting/relying on fs.currentDirectory. There was a comment about this being because the memory provider didnt' support POSIX and Windows, however that seems to have changed since (and many other asset tests already do something similar to this).

* Trim trailing whitespace

* Add a workaround for Windows path slash directions

Strictly this is correct, but the real FS can tolerate either path. The in-memory file system is more strict (see https://github.com/google/file.dart/issues/112).

* Extract a helper for writing schema files in tests

* Missed file when saving!

* Remove redundant comment

* Rename writeBasicSchema -> writeEmptySchema

* Use the file we already have to write contents

* Make comments more descriptive

* Remove another dupe of writeSchema to use the shared one

* Rename schema -> pubspec_schema

* Trim whitespace
2018-09-04 17:12:24 +01:00
Chris Bracken
041ff621a7
Eliminate --preview-dart-2 flag (#21304)
This patch eliminates the --preview-dart-2/--no-preview-dart-2 flag,
hardcoding all uses to true. It also defaults all previewDart2 method
parameters to true, where they hadn't yet been.

A series of subsequent patches will eliminate all previewDart2
parameters and the associated code from within the codebase.
2018-09-04 08:50:05 -07:00
Danny Tuppeny
db7aa6a069
Unskip passing tests on Windows + add a new failing test with GH reference (#21351)
* Unskip integration tests on Windows that now pass

The referenced issue is closed and these tests pass for me locally on Windows now.

* Remove import that's no longer used

* Add another issue that is afffecting these tests on Windows

* Add a hot restart test and mark skip on Windows

Skipped due to https://github.com/flutter/flutter/issues/21348.
2018-09-04 16:24:10 +01:00
jensjoha
cd65903f56
Initialize from dill on tests (#20414) 2018-09-04 11:17:10 +02:00
Chris Bracken
4a0106658f
Migrate hot reload tests to Dart 2 (#21290) 2018-08-31 15:40:00 -07:00
Chris Bracken
4d0f09a2aa
Migrate Flutter Tester tests to Dart 2 (#21292) 2018-08-31 15:39:34 -07:00
Chris Bracken
a6af2ca643
Run resident_runner_test in Dart 2 mode (#21288) 2018-08-31 14:31:38 -07:00
Chris Bracken
251e82d211
Migrate devfs tests to Dart 2 (#21285)
DevFS.update only runs in Dart 2 mode when the generator parameter is
supplied. In Dart 2 mode, both mainPath and pathToReload are required
parameters; this patch marks them as such.

generator is required for running in Dart 2. All call sites other than tests already explicitly set this value.

Note the statements on line 510 and line 516 for why mainPath and pathToReload are required.
2018-08-31 13:31:56 -07:00
Chris Bracken
9d0084ff57
Restrict compilationQueue to library-visibility (#21280)
Its type uses a generic type which is limited to library-visibility.
Eliminating compilationQueue from ResidentCompiler's public interface
makes it possible to mock in tests.
2018-08-31 12:22:50 -07:00
Mikkel Nygaard Ravn
6cc8008283
Fix extraction of product bundle ID for iOS projects (#21252) 2018-08-31 11:07:15 +02:00
xster
cda2c223f5
Turn on unawaited_futures in flutter_tools (#21048) 2018-08-30 20:57:44 -07:00
Todd Volkert
2f32166f4b
Update packges (#21241)
https://github.com/flutter/flutter/issues/19578
2018-08-30 18:16:23 -07:00
Chris Bracken
6d7ecab25c
Minor improvements to analyzer test naming (#21234)
Clarify the intent of these tests.
2018-08-30 14:07:34 -07:00
Alexander Aprelev
e4b7e87bdd
Pass uri instead of filepaths when hot-reloading. (#21201)
* Pass uri instead of filepaths when hot-reloading.

Bug: https://github.com/flutter/flutter/issues/21168

* Remove imports. Enable another test

* Restore skipping of test on mac
2018-08-30 12:08:23 -07:00
Suvorov Daniil
7598050fff Add VS Code path to user install (#21070) 2018-08-30 18:42:25 +01:00
Jonah Williams
d1417c72a3
'fix' build (#21225) 2018-08-30 09:51:01 -07:00
Mikkel Nygaard Ravn
22832d3634
Support for flutter run/build module on iOS (#21216) 2018-08-30 16:18:44 +02:00
Greg Spencer
7cebaac985
Makes switching channels remove version freshness stamp. (#21182)
When switching between channels, we were leaving around the version freshness stamp file (bin/cache/flutter_version_check.stamp), which meant that the flutter tool would read from that file to see what the cached date of the most recent commit to the current channel (branch) was. The problem was that since the file was created while on the previous channel, the cached date was for the wrong channel, so if you switch from master to beta, flutter would think that the channel was out of date, and a new version was available, at least for three days after the first time it checked (after three days since the last time the freshness was checked, the cached date would get updated).

This PR modifies the channel command to remove that stamp file whenever the user switches channels, so that the cached date will be from the right channel when it is recreated.

Fixes #21134
2018-08-29 21:53:39 -07:00
Alexander Aprelev
1e5cb2d87f
Remove workaround for compiler dill-initialization. (#20541)
Workaround is not needed since real fix has landed in dart sdk: https://dart-review.googlesource.com/c/sdk/+/62729.
2018-08-29 08:56:19 -07:00
Danny Tuppeny
a9275d2154
Swap order of attach/stop in flutter_attach integration test (#21106)
This is a bit of a stab in the dark for a flake sometimes seen on bots (but I can't repro locally) #20822. Detaching from a Flutter app currently seems to terminate it, so it may be the cause of the "app not found" when trying to stop the app subsequently.

This change means we stop the app from the main process first, before terminating the attach process.
2018-08-29 07:58:11 +01:00
Alexander Aprelev
cf764e3012
Use differrent name for initial flutter tester kernel file. (#21137)
Bug: https://github.com/flutter/flutter/issues/17833
2018-08-28 22:16:38 -07:00
Ian Hickson
10aa41f00f
Fix coverage collection crash (#21015)
* Fix coverage collection crash

Based on Jason's patch in https://github.com/flutter/flutter/pull/19546/

This is more or less the same but I tried to avoid using `dynamic`.

* Improve argument and variable names in flutter_platform

* Don't bother with reduce, since the order is guaranteed.
2018-08-28 14:36:06 -07:00
David Shuckerow
77095356e9
Attach command: add Bazel filesystem support (#21082) 2018-08-28 14:50:03 -06:00
Ian Hickson
53b635817c
Re-enable missing_return (#20844) 2018-08-28 11:22:57 -07:00
Danny Tuppeny
8b0227b4a3
Don't time out if process terminates when told to stop (#21103)
* Don't time out if process terminates when told to stop but response was not processed

While trying to reproduce #20822 I found a condition where the app may quit before the `app.stop` response is received but this code (which is called in integration test teardown) would sit around waiting and time out. With this change, the process exit is considered a valid response to the stop request.

* Add process exit to log for better errors in failures

This log can be turned on for debugging but is also dumped when a test fails (in certain conditions). With this in the log, it'll be clear if the timeout is because we're waiting for an event but the process quit.
2018-08-28 18:26:46 +01:00
Danny Tuppeny
4466c9db4c
Re-enable integration tests (#20947)
* Unskip expression evaluation integration tests for non-Windows

* Add additional into to skip comments

* Add missing import
2018-08-27 09:29:07 +01:00
Danny Tuppeny
dc5a5c18a9
Start logger in startProgress to avoid assertion failure (#20814)
* Start logger in startProgress to avoid assertion failure

There are lots of places that create a Status() and all but two of them call ..start() immediately. This is one of the places that doesn't, which causes an assertion failure when running with --enable-asserts and the other is in the same file (I suspect it's also incorrect, but possibly it's never used - I'll look at that separately when I can trace some code that calls it).

Fixes #20812.

* Enable asserts for tools tests

* Fix lint

* Rename enableAsserts -> enableFlutterToolAsserts

To make it clearer that it only enables asserts for flutter_tools when set.
2018-08-23 20:49:59 +01:00
Danny Tuppeny
363543fc19
Don't try to stop the same app twice in flutter_attach test (#20905)
This test is sometimes flaky (#20822) because the two processes try to stop the same app. This fix changes to just gracefully terminate the attach process without explicitly trying to stop and then uses the original spawning process to stop the app.

I can't repro the flake locally to be certain, but I've verified only one stop command is sent now so it *should* be good.
2018-08-22 17:13:34 +01:00
Danny Tuppeny
65985db142
Double all timeouts on flutter_tools integration tests (#20872)
Due to CPU contention we've seen these go really slow on Cirrus (see https://github.com/flutter/flutter/issues/19542#issuecomment-414265152), and there's also a chance our flakes are timeouts due to running slow rather than hanging.
2018-08-22 17:13:23 +01: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
leoylung
adafaee0e3 Remove duplicated assets under /pkg/data (#20728)
Require componentName to ensure assets are placed under /pkg/data/<component-name>
2018-08-21 13:14:17 -07:00
Danny Tuppeny
e870b1a20f
Provide better error messages in integration tests when apps don't launch successfully (#20813)
* Don't keep parsing results once we've had the event we expected

* Report errors if an app.stop event is received while waiting for another event

* Don't throw if we see app.stop event when we've just sent an app.stop request

* Improve debug print to include --start-paused if being used

* Improve wrapping
2018-08-21 20:39:35 +01:00
Devon Carew
392a178169
add a --use-cfe option to flutter analyze (#20742)
* add a --use-cfe option to flutter analyze

* useCFE ==> useCfe
2018-08-21 10:45:37 -07:00
JustWe
58b8460c45 release lock (#19671) 2018-08-21 10:19:11 -07:00
Amir Hardon
09fec4c51b Canonicalize path depdendencies in flutter update-packages
The tool was failing if we had 2 separate non-canonical paths to the
same canonical paths.
2018-08-20 14:29:26 -07:00
Amir Hardon
592731f220 Clone goldens as part of flutter update-packages.
flutter_tools cannot depend on flutter_goldens (as flutter_goldens
depdends on the Flutter sdk), so this commit splits client.dart from
flutter_goldens to a pure-dart flutter_goldens_client package.
2018-08-20 14:29:26 -07:00
Amir Hardon
f4caa21c88 flutter update-packages 2018-08-20 14:29:26 -07:00
Ian Hickson
ad1eaff45a
flutter analyze cleanup (#20490)
* `flutter analyze` cleanup

* Make `--dartdocs` work in all modes.
* Make `analyze-sample-code.dart` more resilient.
* Add a test for `analyze-sample-code.dart`.
* Minor cleanup in related code and files.

* Apply review comments

* Fix tests
2018-08-20 12:51:07 -07:00
Ian Hickson
f688b0d56b
Delete all temporary files in flutter test. (#20679)
Turns out we weren't deleting the dill directory or the fonts directory.
2018-08-18 16:45:41 -07:00
Ian Hickson
8c79f40d71
Fixes resulting from audit of issues links (#20772)
* Fixes resulting from audit of issues links

I looked at every link to GitHub in our repo. For cases where we had a TODO that was waiting for a bug to be fixed, and the bug has now been fixed, I applied the pending change. For cases where the link was out of date, I updated the link.

* Update run_test.dart

skip this test again since it failed on linux and macos bots
2018-08-18 16:44:39 -07:00
TL Lee
e2f3b3d6f2 Feature pesto new recipes (#19415)
<img width="273" alt="pesto_before" src="https://user-images.githubusercontent.com/13839358/43009716-64b6d726-8c0c-11e8-989a-13eaff72ccee.png">
<img width="273" alt="pesto_after" src="https://user-images.githubusercontent.com/13839358/43009717-66074a34-8c0c-11e8-92ae-f5fb4074f43a.png">
2018-08-17 17:58:25 -04:00
Ian Hickson
3dec6a6930
Clean up usage of temporary directories (#20682)
All temporary directory start with `flutter_` and have their random component separated from the name by a period, as in `flutter_test_bundle.YFYQMY`.

I've tried to find some of the places where we didn't cleanly delete temporary directories, too. This greatly reduces, though it does not entirely eliminate, the directories we leave behind when running tests, especially `flutter_tools` tests.

While I was at it I standardized on `tempDir` as the variable name for temporary directories, since it was the most common, removing occurrences of `temp` and `tmp`, among others.

Also I factored out some common code that used to catch exceptions that happen on Windows, and made more places use that pattern.
2018-08-17 13:17:23 -07:00
Ian Hickson
d581208557
Try to resolve an intermitted crash during coverage collection (#20506)
* Try to resolve an intermitted crash during coverage collection

The only theory I can come up with is that maybe the test completes
before we finish processing the standard input, so I made the test
harness wait for the observatory URL before considering whether the
test has finished or not.

Also, some code cleanup while I'm at it, e.g. avoiding using "onFoo"
for the names of methods, avoiding back-to-back switch statements with
the same values, avoiding `_` argument names, and using `?.` instead
of `if (foo != null) foo.`.

* Revert back the signature of _pipeStandardStreamsToConsole

* Also remove the other additions to this method.
2018-08-17 13:16:50 -07:00
Alexander Aprelev
e1534b8ecb
Add '-t' option to 'attach' command. (#20539)
* Add '-t' option to 'attach' command.

* Add test

* Make analyzer happy

* Fix tests so they use memory file system and can find lib/main.dart
2018-08-16 13:11:44 -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
Stanislav Baranov
393f9276ca
Reland Flutter tool support for dynamic code #20543 (#20646) 2018-08-16 08:43:41 -07:00
Mikkel Nygaard Ravn
26ba937846
Fix compiler error (#20687) 2018-08-16 13:59:27 +02:00
Mikkel Nygaard Ravn
405d1c473b
Avoid having flutter_tools test outcome depend on packages get (#20683) 2018-08-16 13:22:13 +02:00
Mikkel Nygaard Ravn
d4e5e1e11e
Materialize Flutter module, Android (#20520) 2018-08-16 13:21:55 +02:00
Chinmay Garde
f62e6d9e43
Fix type mismatch while taking a screenshot using the resident runner. (#20555) 2018-08-15 17:27:57 -07:00
Martin Kustermann
9299c02cf7 Reland "Roll engine to version e3687f70c7ece72000b32ee1b3c02755ba5361ac (#20427)" (#20633)
* Reland "Roll engine to version b148e628ec86b3a9a0382e0bcfae73f0390a8232 (#20427)"

This is a re-land with downgraded `package:flutter_gallery_assets`
version.

* Downgrade package:flutter_gallery_assets to 0.1.4

* Change engine.version to 81baff97c29bb08cbf8453a3f9042c5813f84ad3 (which contains an additional fix)

* Change engine.version to e3687f70c7ece72000b32ee1b3c02755ba5361ac (since mac tarballs are corrupted on earlier commit)
2018-08-15 15:35:12 -07:00
Jonah Williams
58e52cc177
Revert "Flutter tool support for dynamic code" (#20644)
* Revert "iOS Dialog blur, brightness, and layout (#18381)"

This reverts commit 21bc9f1b02.

* Revert "Flutter tool support for dynamic code. (#20543)"

This reverts commit 25ba90aafa.
2018-08-15 13:32:22 -07:00
Stanislav Baranov
25ba90aafa
Flutter tool support for dynamic code. (#20543) 2018-08-15 12:27:35 -07:00
Ian Hickson
98c117bb38
Implement flutter test -j (#20493) 2018-08-15 12:22:30 -07:00
Martin Kustermann
515909ecb6
Revert "Roll engine to version b148e628ec86b3a9a0382e0bcfae73f0390a8232 (#20427)" (#20631)
Reason for revert: The package:flutter_gallery_assets has removed some images which are required for the examples/flutter_gallery, so the gallery build is failing (only discovered after landing, since gallery doesn't seem to get built during github PR presubmit checks)
2018-08-15 16:25:51 +02:00
Martin Kustermann
c7c493ea5d
Roll engine to version b148e628ec86b3a9a0382e0bcfae73f0390a8232 (#20427)
This CL

  * rolls `engine.version` to flutter/engine@b148e628 (which includes dart sdk 2.1.0-dev)
  * rolls `goldens.version` to flutter/goldens@6c45fafdf (which includes updates due to skia changes in engine)
  * changes `platform.dill` to `platform_strong.dill` in various places due to flutter/engine@a84b210b
  * adds explicit `environment: sdk: ">=2.0.0-dev.68 < 3.0.0"` constraints to `pubspec.yaml` and `pubspec.yaml.tmpl` files (since pub defaults to `<2.0.0` if omitted) 
  * upgrades to newer versions of various 3rd party packages (to ensure transitive dependencies have `<3.0.0` sdk constraint)
2018-08-15 15:22:05 +02:00
Ian Hickson
686d8f8a22 Shim package:test to avoid matcher issues (#20602)
* Upgrade everything except matcher.
* Roll matcher (and test)
* Adjust tests that depend on flutter:test directly to depend on a shim
* Require use of package:test shim and remove other references to package:test
2018-08-14 20:33:58 -07:00
Todd Volkert
f8a5c86109
Pass icu data file to fuchsia_tester (#20605) 2018-08-14 20:06:07 -07:00
leoylung
7762e45115 Check null on componentName (#20560) 2018-08-14 10:24:17 -07:00
Greg Spencer
7bdd31f7aa
Fix access of null compiler in flutter tests that fail before creating the compiler. (#20553)
In certain cases, the test would fail before creating the (lazily created) compiler object, and then we'd
try to call shutdown() on null in those cases.

Fixes #18610
2018-08-14 10:04:44 -07:00
leoylung
5311dff1f4 Duplicate assets under data/ to data/componentName (#20534) 2018-08-13 13:35:51 -07:00
Mikkel Nygaard Ravn
e69b434602
Fix broken Flutter module with plugins (#20496) 2018-08-13 10:35:59 +02:00
Todd Volkert
5d8771d18d
Update fuchsia_tester to work in (and require) Dart 2 mode (#20460) 2018-08-10 21:18:10 -07:00
Mikkel Nygaard Ravn
a737c86a19
Avoid null manifests in FlutterProject (#20332) 2018-08-10 21:49:24 +02:00
Amir Hardon
c0b7070319 flutter update-packages --force-upgrade 2018-08-08 08:36:24 -07:00
Mikkel Nygaard Ravn
3c83c52697
FlutterProject refactoring and test coverage (#20296) 2018-08-07 23:43:15 +02:00
Greg Spencer
e60087a1a7
Remove Travis configuration from flutter/flutter (#20288)
This removes the final traces of Travis and Appveyor from the Flutter tree.

I've updated the documentation and fixed a couple of places where scripts look for Travis, and eliminated the dart tools runningOnTravis function (which was unused anyhow).

There are places in the flutter script that used to look for the environment variable TRAVIS. We actually do want to continue to detect that we're running on Travis there, since in the plugins repo we still use Travis (for the moment). In any case, it's OK, because the CI environment variable is set on all of the CI bots (Cirrus, Travis, and Appveyor).

FastLane doesn't have a setup_cirrus equivalent to setup_travis, but it actually doesn't matter there either, since it doesn't do Travis-specific things, and it also looks for the CI environment variable.
2018-08-07 13:41:33 -07:00
Ian Hickson
872e88cec7
Reduce noise on the memory benchmarks (#19630) (#20163)
- Check memory usage in release builds, not profile.
- Use multiple runs and average the results.
2018-08-06 12:46:51 -07:00
Matteo Crippa
8c02b8f889 Fix issue for iOS to build any app and run on simulator #19618 (#19863)
A different approach to get the url from the string and avoid any interference by extra chars not allowed in url

Fixes #19618
2018-08-04 12:06:56 -07:00
Mikkel Nygaard Ravn
d1f446e559
Support flutter run/build of module on Android (#20197) 2018-08-04 13:52:09 +02:00
Mikkel Nygaard Ravn
8dd06a1190
Revert " Support flutter run on Android module project (#19600)" (#20182)
This reverts commit cacd291c5c.
2018-08-03 17:10:17 +02:00
Sarah Zakarias
cacd291c5c Support flutter run on Android module project (#19600) 2018-08-03 15:13:28 +02:00
Ian Hickson
a2ca14d71e
Revert "Reduce noise on the memory benchmarks" (#20158)
* Revert "Add pub cache, artifacts, pkgs to Cirrus cache (#20080)"

This reverts commit 07e93b385c.

* Revert "Reduce noise on the memory benchmarks (#19630)"

This reverts commit 8eb5cb7dc0.
2018-08-02 13:56:44 -07:00
Ian Hickson
8eb5cb7dc0
Reduce noise on the memory benchmarks (#19630)
- Check memory usage in release builds, not profile.
- Use multiple runs and average the results.
2018-08-02 12:22:15 -07:00
Mikkel Nygaard Ravn
651c5ab374
Fix latent type error in Flutter manifest (#20143) 2018-08-02 19:16:32 +02:00
asiva
35d50a0e16 Fix issues found running tests
//mobile/flutter/tests/app:basic_runner_test_*
during a google3 roll.

The following exception was being thrown

_TypeError: type 'String' is not a subtype of type 'File'

```
8)
<asynchronous suspension>
utter_command.dart:347:18)
<asynchronous suspension>
/flutter_command.dart:282:33)
<asynchronous suspension>
xt.dart:142:29)
<asynchronous suspension>
2018-08-02 08:03:03 -07:00
Mikkel Nygaard Ravn
b280074815
Move async from member access to construction (#20035) 2018-08-02 14:12:25 +02:00
Alexandre Ardhuin
eda03e2586
re-re-enable lint unnecessary_const (#20103) 2018-08-02 12:02:32 +02:00
Danny Tuppeny
93705691a4
Skip tests that are expected to fail with timeouts (#20074)
* Skip tests instead of expecting failure, because expected failure = timeout which is slow

Some of these tests are known to fail and were coded to expect it; however because the failure is a timeout it's just dragging out test runs (shortening timeouts will make the tests flakier).

* Make it easier to find skipped tests

* Change SKIP to TODO
2018-08-01 17:50:38 +01:00
Ryan Macnak
6d92151f61 [gn] Be explicit about Dart sources. 2018-08-01 09:33:03 -07:00
Devon Carew
e816f64bf2
remove the option to pass in the --no-preview-dart-2 flag to analysis (#20041)
remove the option to pass in the --no-preview-dart-2 flag to analysis
2018-07-31 19:15:11 -07:00
Danny Tuppeny
12eff1d5da
Change from .first to .single to ensure this (#19981) 2018-07-31 08:05:24 +01:00
Ian Hickson
acf4b6c1aa
Clean up startProgress logic. (#19695) (#20009)
Disallow calling stop() or cancel() multiple times. This means that
when you use startProgress you have to more carefully think about what
exactly is going on.

Properly cancel startProgress in non-ANSI situations, so that
back-to-back startProgress calls all render to the console.
2018-07-30 16:58:07 -07:00
Stanislav Baranov
51d3daadfb
Change 'flutter ide-config' to optionally create root Intellij module (#19920) 2018-07-30 10:15:26 -07:00
Greg Spencer
e262817ac2
Fix the gradle templates so that they default to values rather than throw build exceptions. (#19916)
When creating a new project, the build fails with an error similar to:

"versionCode not found. Define flutter.versionCode in the local.properties file."

This puts developers in the untenable situation of having to edit a file with local paths, but being unable to check it in.

This changes the templates to default to using versionCode 1 and version "1.0" if they are not defined in the local.properties file.

Fixes #18983.
2018-07-27 18:24:13 -07:00
Todd Volkert
00aac68e2d
Revert flutter/flutter#19592 (#19861)
It was causing problems rolling Flutter into Fuchsia
2018-07-27 08:44:39 -07:00
Todd Volkert
7ea164ecb5
More dart 2 fixes to fuchsia_tester.dart (#19846) 2018-07-26 17:46:08 -07:00
Jonah Williams
9c159638bc
Revert "Clean up startProgress logic. (#19695)" (#19842)
This reverts commit 0636c6fe60.
2018-07-26 16:44:27 -07:00
Ian Hickson
0636c6fe60
Clean up startProgress logic. (#19695)
Disallow calling stop() or cancel() multiple times. This means that
when you use startProgress you have to more carefully think about what
exactly is going on.

Properly cancel startProgress in non-ANSI situations, so that
back-to-back startProgress calls all render to the console.
2018-07-26 14:02:25 -07:00
Leaf Petersen
70791c3087
Roll pubspec forward to new json_schema, matcher and vector_math (#19802)
Pull in new versions of packages with fixes for SCREAMING CAPS CONSTANTS.
2018-07-26 12:23:24 -07:00
stevemessick
f72c514c59
Add IJ module definitions for modules (#19722) 2018-07-26 05:08:11 -07:00
Greg Spencer
1a414990ab
Move commit range determination inside of test.dart (#19777)
Our Cirrus Windows tests were not really working: they reported success even when failing.

This should fix several problems with the Cirrus Windows tests.
2018-07-25 15:19:57 -07:00
Danny Tuppeny
93dd3f193c
Skip integration tests that use flutter-tester on Windows (#19773)
* Skip integration tests that use flutter-tester on Windows

This is known to be broken. I will un-skip all of these once a fix for flutter-tester lands on Windows.

* Save with added import!
2018-07-25 18:31:50 +01:00
Danny Tuppeny
b3c319e4f1
Add integration tests to ensure flutter run does not quit at startup (#19473)
* Add tests to ensure flutter run does not quit at startup

These tests require https://github.com/dart-lang/vm_service_client/pull/38 to be merged and currently the third test (pause-on-exceptions) fails because of a bug.

* Remove TODO

Probably makes most sense this way for now.

* Address PR comments
2018-07-25 17:29:35 +01:00
Danny Tuppeny
2a679bd858
Look up breakpoints rather than relying on magic numbers (#19708)
* Look up breakpoints rather than relying on magic numbers

* Make breakpoint comment more obvious
2018-07-25 15:31:57 +01:00
Danny Tuppeny
bdf0dd466d
Skip attach test on Windows due to #17833 (#19763) 2018-07-25 14:56:29 +01:00
Danny Tuppeny
d71d10094d
Rename file -> _test so it runs on CI! (#19749) 2018-07-25 13:43:36 +01:00
Paweł Polański
da0e898da9 Added SM-G960F to the list of known physical devices (#18966)
Samsung Galaxy S9 is not an emulator and installation of
the release packages with 'flutter run --release' should be possible.
2018-07-24 16:39:23 -07:00
moznion
46da8536b6 Add some options to format subcommand (#18360)
* Add `--dry-run` option to `flutter format` sub command

* Add `--set-exit-if-changed` option to `format` sub command

* Add `--machine` option to `format` sub command

* Make variable names to be not shorthand: cmd -> command

Fix https://github.com/flutter/flutter/pull/18360#discussion_r199656120
2018-07-24 16:37:00 -07:00
Todd Volkert
6258f322d4
Make Fuchsia tools Dart 2 clean (#19727) 2018-07-24 16:33:49 -07:00
matthew-carroll
687f059a89
Fix Flutter.java initialization crash (#19628) 2018-07-24 11:58:59 -07:00
Danny Tuppeny
18a6a2aa33
Run "flutter update-packages --force-upgrade" (#19679) 2018-07-24 06:51:40 +01:00
Ian Hickson
b4d3808a15
Fix the checksum verification to be more sensitive (#19290)
* Fix the checksum verification to be more sensitive

* update packages
2018-07-23 13:01:22 -07:00
Gary Miguel
a7b59b51b8 Remove redundant check for platform.isLinux. (#19441)
We don't actually care if we're on linux, we care only if the lcov
tool is available. We check for that explicitly just below.
Additionally there is code below which indicates that lcov is available
for macOS. Before this change that code would never execute.
2018-07-23 08:38:20 -07:00
Alexandre Ardhuin
27018359d2
re-enable lint unnecessary_const (#19592)
* re-enable lint unnecessary_const

* remove trailling whitespaces

* remove unnecessary const (after merge)
2018-07-23 08:31:48 +02:00
Leaf Petersen
32f94443cc
Remove uses of deprecated constants and change int.parse to int.tryParse (#19575)
* Remove uses of deprecated constants
* Change int.parse to int.tryParse where appropriate
2018-07-20 15:07:24 -07:00
Sarah Zakarias
f0639bb022
add more uses of FlutterProject to locate files (#19403) 2018-07-20 09:21:41 +02:00
Greg Spencer
1cc036519c
Removes trailing whitespace from source files. (#19329) 2018-07-19 23:03:58 -07:00
Sigurd Meldgaard
2d3a5c744d
Revert "Revert "Use FlutterProject to locate files (#18913)" (#19409)" (#19456)
With a fix of a path being printed relative instead of absolute.
2018-07-20 08:00:30 +02:00
Danny Tuppeny
d9ee971e38
Fix copy/paste error in test (#19564) 2018-07-19 19:52:15 +01:00
amirh
c1de12dd44
Skip flaky test (expression_evaluation_test) (#19543) 2018-07-19 10:20:28 -07:00
Chris Bracken
bb338ef2c6
Don't bundle Genereted.xcconfig as a resource (#19544)
Generated.xcconfig is only required at build time for iOS apps. In the
flutter create project template and example apps, Generated.xcconfig was
previously marked as a resource to be bundled into the built app.
2018-07-19 07:24:06 -07:00
Danny Tuppeny
ed9afbbc72
Add --machine support for flutter attach (#19077)
* Extract some of startApp into a reusable method

* Get basic attach --machine working

* Attach --machine tweaks

Move validation to validate method and create daemon early so we get the startup event before trying to get a connection.

* Bump daemon version so we know whether it's valid to flutter attach

* Tweak output text

* Swap package imports for relative

* Review tweaks (naming, formatting, typedefs)

* Separate arguments from process spawning

This will make calling attach easier

* Add a basic test for flutter attach --machine

* Fix crash if port unforward modifies the list of forwarded ports

* Add a no-op port forwarder for flutter-tester

* Switch to using BasicProject instead of our own inline code

* Fix expectation in test now we have a portForwarder

* Remove stale TODO (this is done)

* Tweak formatting

* Change some Completers to void to fix Dart 2 issues
2018-07-19 13:38:29 +01:00
Danny Tuppeny
442fc3cf06
Make cleanup of flutter processes in tests more reliable (#19307)
* Make cleanup of flutter processes in tests more reliable

* Fix quit signals

I confused SigInt&SigTerm for SigTerm&SigKill when I first did this. SigTerm can be blocked and doesn't guarantee the process will be terminated.

* Don't use deprecated constants

* Fix typo

* Add some additional info to debug buffer

* Fix return types on Futures
2018-07-19 11:37:40 +01:00
Danny Tuppeny
d3f6128c21
Flutter emulator launch crash running in dart-2-mode (#19454)
* Only printError on our simple messages

Any other type is a real error that should be a normal crash (to get a proper error log).

See #19453.

* Add toList() to convert Iterable<String> -> List<String>

This code previously throw in Dart-2 mode.

Fixes #19453.

* Move getSimulatorPath into Xcode

* Add a test that we tried to launch the simulator

* Remove unused import
2018-07-19 10:32:44 +01:00
Zachary Anderson
dae3959d47
[fuchsia] Add new package dep to BUILD.gn file (#19533) 2018-07-18 14:41:03 -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
Jason Simmons
ccdf078f98
Fix return types of commands that override verifyThenRunCommand (#19483)
Fixes https://github.com/flutter/flutter/issues/19465
2018-07-17 15:24:36 -07:00
Ian Hickson
f630f90d6d
Revert "enable lint unnecessary_const (#19342)" (#19423)
This reverts commit cc1cf13eec.
2018-07-16 13:30:27 -07:00
Alexandre Ardhuin
cc1cf13eec
enable lint unnecessary_const (#19342) 2018-07-16 21:43:48 +02:00
Sigurd Meldgaard
6a8f904104
Revert "Use FlutterProject to locate files (#18913)" (#19409)
This reverts commit 57d78cc739.
2018-07-16 16:21:20 +02:00
Sigurd Meldgaard
57d78cc739
Use FlutterProject to locate files (#18913) 2018-07-16 09:39:37 +02:00
Greg Spencer
5d0d1b038f
Add Bash and Zsh command-line completion for flutter (#19243)
This uses @kevmoo's completion package to do command line completion for flutter, and a new command "bash-completion" (with alias "zsh-completion") that will output the necessary shell script setup code, and adds the hidden command "completion" that does the actual completion.

Because it adds a dependency, I also had to do flutter update-packages --force-upgrade.

Fixes #18988.
2018-07-13 21:24:36 -07:00
Gary Miguel
35f374036c Revert "Revert "Use runTests in fuchsia tester. (#19178)" (#19321)" (#19327)
This reverts commit e22f99743b.

Adding the exit(exitCode) fixes the hang.
Tested by running `fx run-host-tests` with a topaz checkout.
Verified the hang before, no hang after.
2018-07-13 10:37:44 -07:00
Alexander Aprelev
7ebf2728dc
Revert "Revert "Roll engine to fed2ea458ed49088d33eddabc546ba56d600c717 (includes dart roll) again (#19277)" (#19295)" (#19322)
This reverts commit cc122f1672.
2018-07-12 14:59:22 -07:00
Zachary Anderson
e22f99743b
Revert "Use runTests in fuchsia tester. (#19178)" (#19321)
This reverts commit 032f8cdb8b.

The test runner hangs on exit after all tests pass when trying
to roll this into Fuchsia.
2018-07-12 14:18:29 -07:00
Alexander Aprelev
b075229d85
Preserve original kernel file for isolate spawn requests. (#18127)
* Preserve original kernel file for isolate spawn requests.

This change gives incremental kernel files ".incremental.dill" extension thereby preserving original kernel file.

Bug: https://github.com/flutter/flutter/issues/16084
Bug: https://github.com/flutter/flutter/issues/17012
Bug: https://github.com/flutter/flutter/issues/17983

* Factor out naming logic into separate function

* Fix string vs uri
2018-07-12 13:41:15 -07:00
Danny Tuppeny
1363bd1795
Ensure timeouts in flutter_tools integration tests include all messages received (#19253)
* Allow a longer timeout for app launches

* Include timings in errors when waiting for events

* Extract a helper that adds a timeout and includes message logging

* Ensure all timeouts include messages

* Ensure logs are set up before we invoke actions

* Ensure all messages are logged during timeout periods

This adds a new stream _allMessages that collects all output (as routed through debugPrint) and updates _timeoutWithMessages to use that instead of stdin/out of only the flutter run process (since that was missing stdin - the sends, and both input/output to the VM service).
2018-07-12 18:17:33 +01:00
Alexander Aprelev
cc122f1672
Revert "Roll engine to fed2ea458ed49088d33eddabc546ba56d600c717 (includes dart roll) again (#19277)" (#19295)
This reverts commit 700cb767c9 as it
breaks Windows tests.
2018-07-11 19:52:28 -07:00
Alexander Aprelev
700cb767c9
Roll engine to fed2ea458ed49088d33eddabc546ba56d600c717 (includes dart roll) again (#19277)
* Revert "Revert "Roll engine to fed2ea458ed49088d33eddabc546ba56d600c717 (includes dart roll) (#19044)" (#19276)"

This reverts commit cf932490b7 as it also
includes fix for type error that broke tests.

* Add type cast for dart2 type checks.

* Move up to latest goldens

* Make inDirectory() type-parameterized.

* Add typecasting to transitions_perf_test.dart and microbenchmarks.

* Add boolean flag initialization in save_catalog_screenshots.dart

* Add type conversion to gallery transition test
2018-07-11 19:26:33 -07:00
Chris Bracken
379a2d5654
Push /usr/bin to front of PATH for ios-deploy runs (#19281)
ios-deploy relies on LLDB.framework, which relies on /usr/bin/python and
the 'six' module that's installed on the system. However, it appears to
use the first version of Python on PATH, rather than explicitly
specifying the system install.  If a user has a custom install of Python
(e.g., via Homebrew or MacPorts) ahead of the system Python on their
PATH, LLDB.framework will pick up that version instead. If the user
hasn't installed the 'six' module, ios-deploy will fail with a
relatively cryptic error message.

This patch pushes /usr/bin to the front of PATH for the duration of the
ios-deploy run to avoid this scenario.

This patch also removes checks for package six.

Neither Flutter nor any of its direct dependencies/tooling relies on
package six. ios-deploy depends on LLDB.framework (included with Xcode),
which relies on a Python script that imports this package but uses
whichever Python is at the front of the path. Flutter now invokes
ios-deploy with a PATH with /usr/bin forced to the front in order to
avoid this problem.

We could have retained the check out of paranoia, but this seems
unnecessary since it's entirely possible LLDB.framework may one day drop
this dependency, in which case I'd expect the base system install of
Python would likely drop it as well.
2018-07-11 17:33:06 -07:00
jslavitz
94959a340c Fixed code sign error message width (#19026)
* Fixed codesign error message width

* Fixed mac_test

* Removed snackbar code
2018-07-11 16:51:25 -07:00
Alexander Aprelev
cf932490b7
Revert "Roll engine to fed2ea458ed49088d33eddabc546ba56d600c717 (includes dart roll) (#19044)" (#19276)
This reverts commit f4a038da63 as it breaks microbenchmark tests.
2018-07-11 12:48:55 -07:00
Alexander Aprelev
f4a038da63
Roll engine to fed2ea458ed49088d33eddabc546ba56d600c717 (includes dart roll) (#19044)
* Roll engine to rolled dart
Add connectionTimeout property to class that extends HttpOverrides.
Upgrade packages.
Add more type fixes.
Update goldens hash.
Add more type fixes.
Upgrade packages.
Fix tests.
Remove strong-mode from analysis options yaml file.
Increase dev/devicelab timeout from 2 to 10 seconds.
Added getVM to waitForViews. Fix type errors in compileExpression.

* Pick up engine revision with fix for microbenchmarks regression.
Increase default timeout from 20/30 to 60s.
2018-07-11 12:13:28 -07:00
shrike69
2c070363c2
Use binary name to locate .packages file on Fuchsia (#19217) 2018-07-11 08:49:57 -07:00
Danny Tuppeny
437731409e
Remove note about port being removed (#19263)
Some things require a port (eg. `flutter attach`) and will forward it on to the device, so we shouldn't force clients to parse it out of a uri.
2018-07-11 15:22:51 +01:00
Greg Spencer
2d76b465ef
Make HotRunner call pub get automatically if the pubspec is out of date. (#19183)
This adds a call to 'pub get' if the pubspec.yaml is out of date wrt the .packages file when a hot reload is requested.

Fixes #15879
2018-07-10 18:14:52 -07:00
Alexander Aprelev
acf3f3d839
Fix 'are there any views available' check (#19231) 2018-07-10 17:58:36 -07:00
Ian Hickson
b3a6eda2d1
Remove hacks that make macOs, Linux, and Windows not fail. (#19187)
They should fail, because we don't have real support yet.

Also, make the debug override work in release builds, so that people
on those platforms have a workaround.
2018-07-10 16:33:40 -07:00
Leaf Petersen
3397338cdd
Fix use of Future<void> as a Future<bool> (#18843)
* Fix use of Future<void> as a Future<bool>
2018-07-10 11:10:48 -07:00
Danny Tuppeny
b931640c1d
Improve flutter tools integration tests (#18865)
* Rename util -> test_utils

* Rename flutter_test_driver -> test_driver

* Switch testWithContext -> test

* Remove unused import

* Move test project into a class to make it easier to have multiple of these

Each "TestProject" class can contain its files and things like named breakpoint locations.

* Split expression evaluation tests into own file

* Include last response in error messages

* Update expectations based on current bugs

* Fix async-ness in tests

* Fix incorrect expectation in test

* Fix incorrect evaluations

* Remove skips for tests that are now passing on master

* Expect pass on Linux

🤷‍♂️

* Call the code

* Skip expression evaluation tests on Windows

* Skip whole group, not just one test

* Remove duplicated method from merge

* Fix misplaced close of group

* Remove code that was duplicated from test we copied

Not sure how this ended up in here?

* Re-fix typo
2018-07-10 06:51:12 +01:00
Ian Hickson
03a1f4acb3
Remove bogus SDK constraint lines. (#19013) 2018-07-09 17:27:33 -07:00
Gary Miguel
032f8cdb8b Use runTests in fuchsia tester. (#19178)
This allows us to collect code coverage for Fuchsia tests.
2018-07-09 16:13:10 -07:00
Gary Miguel
66091f9696 Move collectCoverageData into CoverageCollector so it can be re-used. (#19055)
This will let us re-use that code from fuchsia_tester.dart.
Tested by running the stocks example tests with coverage collection before and after.
.lcov files are identical.
2018-07-09 12:52:41 -07:00
Devon Carew
9d9836f080
adjust declared types to work with dart 2 typing at runtime (#19007)
* adjust declared types to work with dart 2 typing at runtime

* review comments

* update packages/flutter_tools/lib/src/ios/simulators.dart
2018-07-09 12:22:46 -07:00
Ralph Bergmann
779eea681f make tests in xcodeproj_test.dart and gradle_test.dart hermetic (#18093) (#18548) 2018-07-09 10:36:17 -07:00
Sigurd Meldgaard
5cbbd2831c
Fix path of ios module template files (#19037)
* Fix path of ios module template files

* Fix more paths
2018-07-09 11:56:39 +02:00
Danny Tuppeny
4630fa8e60
Additional integration test driver functionality (#19085)
* Add additional functionality to integration test driver

* Typo

* Remove delays we shouldn't need + comments

* Fix typos
2018-07-09 10:41:16 +01:00
abykov2
e5d9feb59d Adding a setup function for hot restart (#18921)
* Adding a setup function for hot restart that can be overwritten to perform any necessary initialization before a restart is started.

* Adding a test for setupHotRestart

* Removing local pubspec change

* Fixing some type annotation errors

* Responding to comments
2018-07-06 15:18:57 -07:00
Mikkel Nygaard Ravn
9b3f50b7bc
Fix typos (#19067) 2018-07-04 11:07:14 +02:00
Mikkel Nygaard Ravn
b1c6224590
flutter attach should handle non-singular device gracefully (#19036) 2018-07-03 16:18:06 +02:00
Danny Tuppeny
9cb3cd4cb0
Fix type for Dart 2 (#18998)
Fixes #18995.
2018-07-03 07:37:00 +01:00
Mikkel Nygaard Ravn
1eee14ca9c
Simplify Gradle magic (#18987) 2018-07-02 13:46:07 +02:00
Mark Fielbig
af5d4c6882 Fix type errors in iOS simulator discovery. (#18960) 2018-06-30 17:17:35 -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
Danny Tuppeny
44924e5cf0
Set FLUTTER_TEST when spawning flutter_tester (#18907)
Otherwise on Windows these will fail as an unsupported platform when things try to read defaultTargetPlatform in flutter apps.
2018-06-29 09:43:25 +01:00
Alexander Aprelev
183ed461c1
Provide workaround for expression compilation frontend issue (#18657) 2018-06-28 11:17:27 -07:00
Danny Tuppeny
abc3c4eb09
Remove flaky flutter_tester test (#18916)
This test was designed to ensure flutter_tester keeps running (previously it would quit immediately). However it's turned out ot be rather flaky and we have new tests on the way that supersede this by actually testing real things (debug stepping, reloading, expression evaluation).
2018-06-28 16:46:36 +01:00
Mikkel Nygaard Ravn
ecb5f8058e
Make Flutter module template use FlutterView with less assumptions (#18883) 2018-06-28 17:39:31 +02:00
Danny Tuppeny
108da01310
Remove the 'app' domain from flutter daemon (#18873)
* Remove the 'app' domain from flutter daemon

By default the daemon won't register the "app" domain, you need to opt-in (which the 'run' command does, as well as the tests for the app functionality).

Fixes #6658.

* Tweak text

* Put restart/callServiceExtension/stop back into daemon mode

* Add a comment about removing discoverApps
2018-06-28 16:22:02 +01:00
Danny Tuppeny
7e4038fe27
Expose emulator creation to daemon API (#18905)
* Fix typo

* Add emulator.create to Daemon API

* Swap order of daemon changelog entries
2018-06-28 14:10:26 +01:00
Sigurd Meldgaard
1e8ef602c3
Add iOS module template (#18830) (#18903)
Add iOS module template

This will enable integration of flutter-views into existing iOS project.
2018-06-28 14:35:00 +02:00
Danny Tuppeny
266a720209
Ensure we have the Java binary on PATH when invoking avdmanager (#18908)
See https://github.com/flutter/flutter/issues/13379#issuecomment-400984667.
2018-06-28 12:09:04 +01:00
Sigurd Meldgaard
4a6558f88f
Revert "Add iOS module template (#18830)" (#18902)
This reverts commit 8be198d8a0 that broke the build.
2018-06-28 11:16:08 +02:00
Danny Tuppeny
328f9b30cb
Re-skip flutter_device_tester test (#18900)
After landing the un-skip this test failed with a timeout. It then passed on the next build (!). I think it's too flaky to leave running until we can better diagnose what's happening.
2018-06-28 10:04:02 +01:00
Sigurd Meldgaard
8be198d8a0
Add iOS module template (#18830)
Add iOS module template

This will enable integration of flutter-views into existing iOS project.
2018-06-28 10:03:16 +02:00
Danny Tuppeny
3158d8572b
Add process output for flutter_tester test and unskip (#18899)
* Add process output for flutter_tester test and unskip

* Add a comment about this potential flake
2018-06-28 08:54:02 +01:00
Danny Tuppeny
cdb01187f8
Add --create option to flutter emulators command (#18235)
* Add --create option to flutter emulators

* Tweaks to error message

* Simplify emulator search logic

* Make name optional

* Add a note about this option being used with --create

* Tweaks to help information

* Switch to processManager for easier testing

* Don't crash on missing files or missing properties in Android Emulator

* Move name suffixing into emulator manager

This allows it to be tested in the EmulatorManager tests and also used by daemon later if desired.

* Pass the context's android SDK through so it can be mocked by tests

* Misc fixes

* Add tests around emulator creation

Process calls are mocked to avoid needing a real SDK (and to be fast). Full integration tests may be useful, but may require ensuring all build environments etc. are set up correctly.

* Simplify avdManagerPath

Previous changes were to emulatorPath!

* Fix lint errors

* Fix incorrect file exgtension for Windows

* Fix an issue where no system images would crash

reduce throws on an empty collection.

* Fix "null" appearing in error messages

The name we attempted to use will now always be returned, even in the case of failure.

* Add additional info to missing-system-image failure message

On Windows after installing Andriod Studio I didn't have any of these and got this message. Installing with sdkmanager fixed the issue.

* Fix thrown errors

runResult had a toString() but we moved to ProcessResult when switching to ProcessManager to this ended up throwing "Instance of ProcessResult".

* Fix package import

* Fix more package imports

* Move mock implementation into Mock class

There seemed to be issues using Lists in args with Mockito that I couldn't figure out (docs say to use typed() but I couldn't make this compile with these lists still)..

* Rename method that's ambigious now we have create

* Handle where there's no avd path

* Add another toList() :(

* Remove comment that was rewritten

* Fix forbidden import

* Make optional arg more obviously optional

* Reformat doc

* Note that we create a pixel device in help text

* Make this a named arg
2018-06-28 08:07:40 +01:00
Jason Simmons
c9c1068ce4
Filter invalid characters in the terminal input stream (#18892)
Fixes https://github.com/flutter/flutter/issues/18007
2018-06-27 18:41:32 -07:00
Ian Hickson
35ad2a786d
Remove race conditions involving finding available ports (#18698)
This is an attempt to reland #18488 with less breakage on macOS.
2018-06-27 16:44:28 -07:00
Alexander Aprelev
ed2376a7fc
Fix library-scope expression evaluation. (#18851)
This also improves diagnostic in case of internal compiler errors.
2018-06-27 15:51:23 -07:00
Danny Tuppeny
cfd26d321e
Revert "Add process output for flutter_tester test and unskip (#18868)" (#18871)
This reverts commit 5d8ea59d86.
2018-06-27 13:23:15 +01:00
Danny Tuppeny
5d8ea59d86
Add process output for flutter_tester test and unskip (#18868) 2018-06-27 12:52:32 +01:00
Danny Tuppeny
e616c6cef2
Improve update checking (#18193)
* Improve update checking

This change emables pinging the server to check for updates regardless of whether the local version is "out of date". The server code already has a 7-day cache so the result is that we can now ping the server once every 7 days instead of waiting for the local install to be 4 weeks out of date before pinging.

The original 4 week period is still used for when we'll start warning the user they're out of date if we could not confirm with the server whether there's a new version.

* Improve message when we know there's a new version available

* Fix bnullable bool checks

* Switch nullable bool to enum

* Fix casing of enum values

* Remove stale comment

The names are now descriptive so doesn't need additional explanation.

* Improve name of function

* Remove note:

* Rename kPauseToLetUserReadTheMessage -> timeToPauseToLetUserReadTheMessage

* Change kVersionAgeConsideredUpToDate to 5 weeks from 4

* Inline the isNewerFrameworkVersionAvailable check

* Fix indenting (?)

* Fix more indenting

* Rename function to be clearer it's getting the commit date

* Formating tweaks

* Update stamp when connection failed, and reduce time before we'll try again

Previously we would hit the server on every command if we thought we might be out of date and we never successfully connected (eg. if you're offline). This makes the stamp update even when there's a conneciton failure so that this won't happen, but reduces the time till we check again from 7 days to 3 days to compensate a little in case it was a one-off.

https://github.com/flutter/flutter/pull/18193#issuecomment-399222269

* Fix comment

* Don't perform update checks if not on an official channel
2018-06-27 12:50:40 +01:00
Danny Tuppeny
0fb209726f
Mark flutter-tester-runs-forever test as skip (#18867)
This test is failing on mac_bot (but passing elsewhere) because flutter-tester is apparently quitting earlier than expected. Locally it fails with an even weirder error and almost all tests are failing with "Compilation failed" (this isn't happening on the builds, so something is bad on my MacBook). Marking as skip to fix build while investigating; there's no real impact of this test not running; it's testing a tool that its itself used for testing (and not currently in any way that should be affected by this failure).
2018-06-27 10:57:34 +01:00
Danny Tuppeny
3456dc6248
Add failing tests for #17833, #18441 and #18678 (#18560) 2018-06-27 08:04:55 +01:00
Alexander Aprelev
75b737ff69
Fail flutter build invocation on compilation errors. (#18800)
Fixes https://github.com/flutter/flutter/issues/18200.
2018-06-25 12:42:24 -07:00
Florian Loitsch
d248725e15
Flutter attach (#18677)
Add `flutter attach` command.

This command allows Flutter to connect to applications that haven't been launched using `flutter run`.
2018-06-25 15:33:42 +02:00
Sarah Zakarias
def7634ba0
Support running apk with more than one activity (#18716) 2018-06-25 13:38:08 +02:00
David Shuckerow
1a372afb37
Revert changes to core SDK members that haven't been propagated to the g3 SDK yet (#18654)
* Revert changes to core SDK members that haven't been propagated to the g3 Dart SDK yet.

* Respond to comments.

* Remove retype

* Temporarily un-remove VMService.retype to unblock g3 roll

* Checkout back to master, we need fewer changes to reach compat with dev.61 than dev.60
2018-06-22 14:16:34 -07:00
Mikkel Nygaard Ravn
a7ba7b4b62
Fix gitignore (#18726) 2018-06-22 20:14:28 +02:00
Mikkel Nygaard Ravn
d89a6b544e
Add module template for Android (#18697) 2018-06-22 18:19:37 +02:00
Alexander Aprelev
9a51588d54
Suppress stdout compile diagnostic when compile expressions. (#18703)
* Suppress stdout compile diagnostic when compile expressions.

This fixes https://github.com/flutter/flutter/issues/18574.

* Use equal sign for default values
2018-06-21 20:55:04 -07:00
Sam Rawlins
9f8a70be4c Bump mockito to 3.0.0-beta (#18462)
* Bump mockito to 3.0.0-beta

* Few fixes

* fix test

* Bump image

* Fix

* New packages update

* With matcher pinned

* No more typed
2018-06-21 16:23:47 -07:00
Alexander Aprelev
2828a459f6
Serialize expression compilation requests (#18618)
* Serialize compilation requests.
2018-06-21 11:13:21 -07:00
Yegor
9da80217fc
make crash server URL customizable from environment (#18649) 2018-06-20 15:43:43 -07:00
Alexander Aprelev
fb8cbf216b
Roll engine to 549c855e89341b97436b3417542fc8f997492df7 (#18591)
* Roll to 549c855e89341b97436b3417542fc8f997492df7

* Clean up return void - see https://github.com/dart-lang/sdk/issues/33218
2018-06-20 12:36:10 -07:00
Mikkel Nygaard Ravn
475678fdd8
Make Gradle script support Flutter-as-lib (#18633) 2018-06-20 16:07:05 +02:00
Florian Loitsch
0a3179fbab
Make ensureVersionFile a Future<void> function. (#18631) 2018-06-20 15:34:17 +02:00
Ian Hickson
6599271bf5
Revert matcher package (#18614)
The new matcher package deprecates isInstanceOf which seems eggregious.
2018-06-19 17:22:56 -07:00
Greg Spencer
08d1ec36de Roll engine to 0c119932c0d6cb30dafd75ec717d1eda76fd7651 (#18575) 2018-06-19 09:58:20 +02:00
Danny Tuppeny
592c5ba91a
Don't be case-sensitive when checking for extension (#18515)
Seems like VS Code may have started using lowercase extension folders recently (our identifier is `Dart-Code.flutter` but now the folder is named `dart-code.flutter`), so this makes the check not sensitive to casing.

Also reuse extension identifier for download link
2018-06-18 06:37:01 +01:00
Ian Hickson
0fa5ba43a1
Revert "Remove race conditions involving finding available ports (#18488)" (#18521)
This reverts commit 7750872251.
2018-06-15 15:37:20 -07:00
Ian Hickson
7750872251
Remove race conditions involving finding available ports (#18488) 2018-06-15 14:16:18 -07: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
Mikkel Nygaard Ravn
e713b3349a
Update all packages (#18506) 2018-06-15 17:46:36 +02:00
Sarah Zakarias
8f9aca8558
Enable running with prebuilt test-only apk (#18453) 2018-06-15 13:25:19 +02:00
Danny Tuppeny
86ed141bef
Revert "Update all packages (#18471)" (#18492)
This reverts commit e593dc70e8.
2018-06-15 09:13:09 +01:00
Danny Tuppeny
e593dc70e8
Update all packages (#18471)
"flutter update-packages --force-upgrade"
2018-06-14 21:09:32 +01:00
Ian Hickson
d1cc8b6de8
Clean up output of "flutter run --release" (#18380)
(second attempt)
2018-06-14 12:30:20 -07:00
Danny Tuppeny
48f4ff6dda
Ensure errors launching emulators are exposed to the daemon (#18446) 2018-06-14 07:59:50 +01:00
Ben Konyi
ab6df25103 Fixed concurrent list modification in vmservice.dart 2018-06-13 19:25:07 -07:00
Michael Thomsen
87351bd958
Fix outdated link for how to edit plugin code (#18069)
* Fix readme link to plugin edit instructions

* Fix flutter tools link
2018-06-13 13:40:55 -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
Danny Tuppeny
ed05e933f4
Minor flutter daemon doc fixes (#18447)
* Fix anchors for GitHub

For some reason GitHub lowercases the anchor names so although these links all work in the local VS Code preview, the ones with capitals didn't work in the GitHub UI!

* Fix some typos
2018-06-13 16:01:23 +01:00
Keerti Parthasarathy
aecb7d9607
Fixes for Dart 2 failures in tests (#18371) 2018-06-12 09:30:10 -07:00
Danny Tuppeny
b8b34def39
Fix misplaced quote (#18354) 2018-06-12 15:25:38 +01:00
Sigurd Meldgaard
d1aaa406ac
Find AppFrameworkInfo.plist relative to Flutter app (#18358)
This works better for an add2app scenario.
2018-06-12 11:04:49 +02:00
Greg Spencer
6c56bb2420
Update typedef syntax to use Function notation and turn on lint for old notation. (#18362)
Now that Dart 1 is turned off, reapplying my change to turn on the prefer_generic_function_type_aliases analysis option, and fix all the typedefs to Dart 2 preferred syntax.

Also eliminated the unused analysis_options_repo.yaml file and turned on public_member_api_docs in analysys_options.yaml.

No logic changes, just changing the typedef syntax for all typedefs, and updating analysis options.
2018-06-11 15:51:45 -07:00
Mehmet Fidanboylu
3019ad976d
Passing any to named params require the name of the parameter itself. (#18361) 2018-06-11 11:31:25 -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
4db7daf751
Handle malformed depfiles in Fingerprinter (#18321)
Fingerprinter.doesFingerprintMatch() now returns false rather than
throwing if a depfile is malformed.
2018-06-08 17:56:14 -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
Chris Bracken
0e4770e809
Count kernel bytes in bytes synced by DevFS.update (#18288)
DevFS.update() returns the number of bytes synced from the host to the
target device. When running in Dart 2 mode, ensure that the size of the
kernel file is included in the count of bytes synced.
2018-06-07 18:27:08 -07:00
Chris Bracken
0628a1fb24
Eliminiate concurrent map key set modification (#18284)
Iterates over a copy of the dirty entries list rather than the original,
in order to avoid the potential for a concurrent modification exception
when fileUris are removed/added later in the loop.

This occurs when non-asset URIs (Dart sources) are listed in the dirty
set when --preview-dart-2 is enabled (the default).
2018-06-07 16:45:09 -07:00
Chris Bracken
3c25817bc7
Make kernel compiler stdoutHandler private (#18283)
Thie field is never used outside of the class and has a private type,
making it impossible to subclass/mock.
2018-06-07 16:44:25 -07:00
Stanislav Baranov
4a2ed22b0e
Propagate flutter tool verbose flag through gradle to flutter build bundle. (#18246) 2018-06-06 13:43:32 -07:00
Danny Tuppeny
199d945b9e
Add emulators to docs (#18231) 2018-06-06 19:06:17 +01:00
Alexander Aprelev
f11c8d967c
Add compile-expression service. (#16161)
This registers compile-expression service that is used by dart vm to evaluate expressions when debugging flutter applications.
2018-06-05 13:22:13 -07:00
Keerti Parthasarathy
da7670c2ee
Fixes for test failures in Dart 2 mode (#18122) 2018-06-05 12:38:30 -07:00
Danny Tuppeny
b9392ed220
Update flutter daemon docs (#18199)
* Document flutter run --machine at the bottom of the doc
* Be consistent with prefixes
2018-06-05 16:21:50 +01:00
Alexandre Ardhuin
09276bea25
enable lint prefer_equal_for_default_values (#18156) 2018-06-05 08:50:40 +02:00
Ian Hickson
6be81ebf9b
Be more resilient to bad data from VM (#18132)
Fixes https://github.com/flutter/flutter/issues/14517
Or at least, fixes the crash part of that.
2018-06-04 19:12:55 -07:00
Ian Hickson
944f0a4cc1
Revert "Clean up output of "flutter run --release" (#18049)" (#18184)
This reverts commit 4f1b66044c.
2018-06-04 16:17:08 -07:00
Ian Hickson
4f1b66044c
Clean up output of "flutter run --release" (#18049) 2018-06-04 15:22:51 -07:00
Ian Hickson
e3427550e9
Be less verbose in the logs. (#17401)
Now that we have thousands of tests, it doesn't make sense to display a separate line for each test. The result is just megabytes of logs that you have to scrub through to find error messages.
2018-06-04 15:22:19 -07:00
Danny Tuppeny
43da9d5ef9
Use isDirectory instead of existsSync to avoid crash (#18167)
Fixes #15198.
2018-06-04 17:59:07 +01:00
Martin Kustermann
ec6c4aba89
Rename --prefer-shared-library to --build-shared library consistently (#18164)
The change in 8b8d368d2 has only renamed the flag in a subset of the
places.
2018-06-04 17:44:37 +02:00
Danny Tuppeny
f833c43e6e
Skip version checks when running flutter upgrade (#18031)
We were already skipping the check in `flutter upgrade` but this also spawns `flutter precache` and `flutter doctor` which would still check and potentially output the message.
2018-06-04 12:04:45 +01:00
Mikkel Nygaard Ravn
e49a9661ad
Await writing local props to complete (#18110) 2018-06-01 12:15:30 +02:00
Danny Tuppeny
3d7d96806a
Use correct branch for version checks on beta/dev (#18016) 2018-06-01 10:59:20 +01:00
Mikkel Nygaard Ravn
8c39c35eb0
Upgradle Gradle dependencies to match Android Studio 3.1.2 (#18080) 2018-06-01 09:57:40 +02:00
Mikkel Nygaard Ravn
87a6e2b497
Revert "Update Gradle dependencies (#18071)" (#18074)
This reverts commit 59bb2dba73.
2018-05-31 19:25:40 +02:00
Sam Rawlins
fba81d0f1d Use anyNamed when mocking named arguments (#17996) 2018-05-31 08:24:26 -07:00
Mikkel Nygaard Ravn
59bb2dba73
Update Gradle dependencies (#18071) 2018-05-31 17:16:47 +02:00
Sigurd Meldgaard
758711c85d
Allow --use-application-binary using app-bundles on ios (#17691)
This makes it easier to run ios add2app apps with Flutter run.
2018-05-31 10:33:15 +02:00
Jacob Richman
62febaa140
Add support for --track-widget-creation back to ios build rules. (#18046) 2018-05-30 14:53:35 -07:00
Greg Spencer
b921fdc58e
Revert "Update typedef syntax to use Function notation and turn on lint for old notation. (#18035)" (#18041)
This reverts commit 3258602073.
2018-05-30 13:51:14 -07:00
Greg Spencer
3258602073
Update typedef syntax to use Function notation and turn on lint for old notation. (#18035)
Fixes #18028

Just changes typedef declarations, no logic changes.
2018-05-30 12:13:58 -07:00
Ralph Bergmann
c65e9d19a4 add version to pubspec.yaml (#16857)
Uses the `version` property from the `pubspec.yaml` file to set the corresponding fields in the `local.properties` file respectively in the `Generated.xcconfig` file.

The `--build-name` and `--build-number` options have changed. Now they trump the `version` property from the `pubspec.yaml` file.

If the `version` property is not set and the  `--build-name` and `--build-number` options are not provided, the build command will not change the `local.properties` / `Generated.xcconfig` file.
2018-05-30 07:51:25 -07:00
Mikkel Nygaard Ravn
0d1574c313
Refactor flutter create logic in prep for add2app (#17992) 2018-05-30 11:25:21 +02:00
Mikkel Nygaard Ravn
c7ea3ca377
Revert sync async (#18002) 2018-05-29 21:07:33 +02:00
Danny Tuppeny
0e8164be51
Copy Daemon docs into code and add daemon.connected + changelog (#17961)
* Add copy of daemon doc from Wiki
* Document the daemon.connected event
2018-05-29 17:13:22 +01:00
Danny Tuppeny
42c9719ff0
Change doctor to point at Flutter extension (#17987) 2018-05-29 17:11:34 +01:00
Danny Tuppeny
24e2b238d4
Send an event at startup with the protocol version and pid (#17873)
* Send an event at startup with the protocol version and pid

The pid will help with some of the issues of terminate the process when launched through a shell script and the version will allow clients to make decisions about supported features.

I've also bumped the protocol version number for two reasons:

1. This change
2. We didn't increase it when we added the previous emulator commands
2018-05-28 22:02:53 +01:00
Mikkel Nygaard Ravn
d21b2799a0
Revert "Update Gradle dependencies to match Android Studio 3.1.2 (#17974)" (#17979)
This reverts commit 0f557e720e.
2018-05-28 21:18:13 +02:00
Mikkel Nygaard Ravn
0f557e720e
Update Gradle dependencies to match Android Studio 3.1.2 (#17974) 2018-05-28 21:08:50 +02:00