Commit Graph

274 Commits

Author SHA1 Message Date
Devon Carew
b6c3ae37f6 send supportsRestart flag when starting an app (#4513)
* send supportsRestart flag when starting an app

* remove unused imports

* review comments
2016-06-13 13:16:20 -07:00
Todd Volkert
2099d3789c Pull iOS build templates from flutter tools vs engine artifacts (#4526) 2016-06-13 12:30:08 -07:00
Adam Barth
440aa5ee2f Add -t support to flutter run on iOS (#4439) 2016-06-07 16:41:53 -07:00
Chinmay Garde
68ba5bfd7c Suppress verbose output from ios-deploy when not in verbose mode. (#4423) 2016-06-07 12:02:08 -07:00
Adam Barth
8f03ebe56b Teach FlutterPlugin.groovy about AOT builds (#4389)
The `flutter.buildMode` property now controls whether to build in debug,
profiling, or release.
2016-06-06 12:56:04 -07:00
Chinmay Garde
8756a094a9 Add a FLUTTER_MODE variable to the generated Xcconfig and fix snapshot generation on all targets. (#4362)
Get rid of the DART_EXPERIMENTAL_INTERPRETER_FLAG.
2016-06-03 13:55:57 -07:00
Devon Carew
7ae584bc02 handle 'last message repeated' from ios simulator (#4300) 2016-06-03 12:54:27 -07:00
Adam Barth
612a097d1f Add --target support to flutter build ios (#4318)
Fixes #4298
2016-06-02 08:57:13 -07:00
Adam Barth
c26fcfdfaa Update xcodebuild for Generated.xcconfig (#4268)
This patch updates how we generate xcconfig files to match what
xcode_backend.sh expects.
2016-06-01 12:32:45 -07:00
Devon Carew
7c47837c27 show build progress; print app sizes (#4263)
* show build progress; print app sizes

* add todo

* review comments

* remove unused import
2016-05-29 15:07:41 -07:00
Todd Volkert
51d4ab3324 Fix install for iOS simulator, and add ability to uninstall (#4223) 2016-05-27 11:05:10 -07:00
Devon Carew
ec7517766c Flutter run restart (#4105)
* working on making a faster flutter run restart

* clean up todos; fire events on isolate changes

* use the Flutter.FrameworkInitialization event

* review comments
2016-05-26 15:26:14 -07:00
Todd Volkert
239a717dcc Revert "Pass the local engine config through Xcode (#4190)"
This reverts commit 8f69cccc18.
2016-05-26 11:03:08 -07:00
Todd Volkert
92ee807a3c Plumb --local-engine flag through to LOCAL_ENGINE in Local.xcconfig
Fixes #4186
2016-05-25 18:37:36 -07:00
Adam Barth
8f69cccc18 Pass the local engine config through Xcode (#4190)
This passes the information through Xcode to the `flutter build aot` call via
the environment so that it picks up the right artifacts.

Fixes #4186
2016-05-25 14:33:22 -07:00
Todd Volkert
cc8c78adf4 iOS tools cleanup (#4161)
* iOS tools cleanup

1) Fix `flutter install` on both device and simulator to refer to the actual
   bundle and not just the .generated folder
2) Fix `flutter run` on device to actually run vs just installing

Still TODO:
1) Discovered that isAppInstalled on iOS simulator always reports true,
   meaning it'll never actually try to install the app.

Fixes #3947
Fixes #1823
2016-05-24 16:25:40 -07:00
Chinmay Garde
66fee3a622 Wire up ios-profile and ios-release. Switching between debug, profile and release starts the build process from scratch. (#4063) 2016-05-23 12:58:42 -07:00
Ian Hickson
94636bd206 Cleanup based on new lints (#4052) 2016-05-20 14:08:46 -07:00
Jason Simmons
c192a7e4ca Replace the checked flag in DebuggingOptions with the build mode (#3901)
This also fixes some related problems affecting "flutter run":
  * FLXes built during AndroidDevice.startApp need to match the build mode
  * APKs should always be rebuilt if the build mode uses AOT compilation
2016-05-17 12:38:25 -07:00
Devon Carew
40c0d6ea12 Consolidate observatory code (#3892)
* rename service_protocol.dart to protocol_discovery.dart

* add a wrapper around the obs. protocol

* use json-rpc in run

* consolidate obs. code; implement flutter run --benchmark

* review comments
2016-05-12 18:15:23 -07:00
Jason Simmons
32846de9f8 Remove ArtifactStore and move flutterRoot into Cache (#3883) 2016-05-12 15:54:35 -07:00
Jason Simmons
a590ee2671 Remove BuildConfigurations (#3879)
Artifacts from local engine builds will be found based on the --local-engine flag
2016-05-12 12:22:15 -07:00
Jason Simmons
0f53f7966b Remove Toolchain and extend ToolConfiguration to locate host tools such as sky_snapshot (#3870)
Host tools can be found in the artifact cache directory for the host platform.
If a developer wants to use a local engine build instead, then provide an
--engine-build flag that selects the specific engine build variant.
2016-05-11 15:47:26 -07:00
Devon Carew
00062761be filter an assertiond log message from ios (#3692) 2016-05-03 12:46:46 -07:00
Devon Carew
c9010c91f6 fix analysis errors (#3677)
* fix analysis errors

* review comments; fix test

* re-add an export for debugPrint
2016-05-03 09:09:00 -07:00
Devon Carew
b0dca79671 Flutter run (#3553)
* rework flutter run

* fix npe with --debug-port

* connect to obs and exit when that conneciton closes

* update todos
2016-04-27 14:43:42 -07:00
Devon Carew
1c0a966384 rename the --develop option to --debug (#3384)
* rename the --develop option to --debug

* fail if both --debug and --deploy are specified
2016-04-18 16:41:15 -07:00
Devon Carew
f132acaf1d use the new cache code to locate more artifacts (#3361)
* use the new cache code to locate more artifacts

* add todo

* review comments
2016-04-15 21:08:03 -07:00
Devon Carew
2a33e3f0c0 make flutter upgrade less verbose (#3237)
* more terse flutter upgrade

* fix an issue when updating and the engine update code has changed

* call flutter precache; add a --no-color hidden option

* fix a lint related to getters/setters
2016-04-11 11:17:09 -07:00
Devon Carew
26906240e5 fix an issue parsing adb devices (#3235) 2016-04-11 07:50:03 -07:00
Jason Simmons
9d022ed26d Add a command that can capture a Skia picture of a Flutter frame and send it to a file or skiaserve debugger (#3165) 2016-04-07 12:33:11 -07:00
Chinmay Garde
b930f0d4ff Update engine and temporarily get rid of custom build directories in flutter build ios 2016-04-06 12:55:48 -07:00
Chinmay Garde
0bf68cc5cb Merge pull request #3140 from chinmaygarde/master
Add a `--no-codesign` option to `ios build` to disable code signing.
2016-04-06 12:33:03 -07:00
Devon Carew
653566dd23 simplify toolchain setup 2016-04-04 13:10:56 -07:00
Devon Carew
4ac186811f fix an exception from flutter doctor 2016-03-28 16:37:25 -07:00
Adam Barth
2e062dfab4 Use --packages rather than --package-root
The .packages file is replacing the packages directory of symlinks.
2016-03-28 15:01:25 -07:00
Devon Carew
15b9e1ddb0 add a screenshot command 2016-03-25 22:01:32 -07:00
Chinmay Garde
8cbeb2e983 Merge pull request #2916 from chinmaygarde/master
Add: flutter build ios [--[no-]simulator]
2016-03-25 15:56:51 -07:00
Chinmay Garde
66e1006193 Xcodebuild takes an extra parameter for the build directory. 2016-03-25 15:36:45 -07:00
Devon Carew
2fc8e9a110 create a crash report 2016-03-25 13:29:15 -07:00
Devon Carew
c3eec6ec4f several fixes to the doctor command 2016-03-24 14:17:49 -07:00
Devon Carew
25f332d8d7 re-work the doctor command 2016-03-23 21:12:29 -07:00
Devon Carew
1d20a90cad change how we calculate the temp dir 2016-03-22 12:22:30 -07:00
Chinmay Garde
68a3aa70bf Use the artifacts store for iOS assets 2016-03-21 16:25:58 -07:00
Chinmay Garde
c8377d7428 Dont differentiate between ios_arm and ios_x64 in flutter_tools
All artifacts for iOS are universal.
2016-03-21 14:41:26 -07:00
Chinmay Garde
3a9956fb4e Bump engine revision and ensure the Xcode project setup expects assets at the archive root. 2016-03-21 13:24:53 -07:00
Devon Carew
f1cdf6df39 refactor; fix apk warning 2016-03-21 09:24:56 -07:00
John McCutchan
83e6ee36a0 Sniff service protocol port from device 2016-03-17 11:44:16 -07:00
Yegor Jbanov
225686b1a7 [ios] improve test device naming
The new name format is "DEVICE_TYPE_NAME (Flutter)". For example:

iPhone 6 (Flutter)
iPhone 6s Plus (Flutter)

The names are taken from `xcrun simctl list --json devicetypes`.

Fixes #2682
2016-03-14 22:33:39 -07:00
Hixie
797e27edd3 Add @override annotations to flutter framework 2016-03-14 14:02:26 -07:00
Ian Hickson
d745e20853 Even more types 2016-03-14 09:41:54 -07:00
Devon Carew
f13314867c Merge pull request #2645 from devoncarew/platform_constants
rename the platform constants
2016-03-12 12:46:55 -08:00
Devon Carew
e939b152af rename the platform constants 2016-03-12 11:08:21 -08:00
Devon Carew
6d19fd1fce add an atom launch config to the starter app 2016-03-12 07:09:07 -08:00
John McCutchan
5e140b7533 Add DevicePortForwarder with adb fix 2016-03-11 09:26:17 -08:00
Eric Seidel
37f0b5dd98 Revert "Add DevicePortForwarder" 2016-03-10 14:23:39 -08:00
Yegor
96db7c0a5a Merge pull request #2580 from yjbanov/lower-xcode-version-requirement
[ios] reduce xcode version requirement to 7.0
2016-03-10 14:08:48 -08:00
Yegor Jbanov
23e634a613 [ios] reduce xcode version requirement to 7.0
Build bots only have 7.0.
2016-03-10 13:08:58 -08:00
John McCutchan
131359f4bc Add DevicePortForwarder 2016-03-10 12:49:07 -08:00
Yegor Jbanov
9383466dd5 [ios] look for the best available devicetype/runtime when booting 2016-03-10 11:04:02 -08:00
John McCutchan
8803cecea1 Refactor DeviceLogReader 2016-03-08 10:38:22 -08:00
Yegor Jbanov
e69f6562ed [ios] use xcrun to launch simulator instead of hardcoded path 2016-03-03 16:58:16 -08:00
Yegor Jbanov
58b2c630ab [ios] generate flx on first ios launch 2016-03-03 16:10:03 -08:00
Devon Carew
f68d86dab2 show stdout on xcode failures 2016-03-03 15:10:45 -08:00
Devon Carew
0fb288c575 refactor to move an ios specific class out of globals.dart 2016-03-02 21:14:11 -08:00
Chinmay Garde
9f4fdcb866 iOS Simulator: Attempt 'sideloading' the updated Flutter application if the application runner is already up
* This makes the turnaround times < 2 seconds on the iOS simulator.
* Also bumps the engine to use the new engine required to support the flags.
2016-03-02 11:40:10 -08:00
Devon Carew
022047f5eb remove the isConnected() method from device 2016-02-26 13:23:48 -08:00
Devon Carew
8c95500ea1 some performance optimizations for starting apps 2016-02-26 12:01:41 -08:00
Yegor Jbanov
677e63b79d decouple flutter drive from flutter start
flutter start's method of finding devices to run the app on is not suitable for flutter drive.

This commit also refactors several tool services to allow mocking in unit tests.
2016-02-26 10:18:24 -08:00
Chinmay Garde
038367ad24 Remove all inline templates and provide a way to specify templates as resources 2016-02-24 11:33:07 -08:00
Devon Carew
9367b86abe add a validator for Atom 2016-02-23 10:25:14 -08:00
Devon Carew
3463d89cf6 remove iosSimulator field from ApplicationPackageStore 2016-02-22 12:37:08 -08:00
Devon Carew
896246ad14 Merge pull request #2079 from devoncarew/more_specific_logging
log for specific adb devices
2016-02-22 12:12:05 -08:00
Chinmay Garde
7e59a9e82e Address issues raised in PR #2047 2016-02-22 11:43:52 -08:00
Devon Carew
16f9e38769 check to see if the xcode eula has been signed 2016-02-21 00:41:14 -08:00
Devon Carew
488e5dcd6c log for specific adb devices 2016-02-21 00:23:13 -08:00
Devon Carew
67046f933d add the ability to start and stop device polling 2016-02-20 22:00:11 -08:00
Chinmay Garde
d797995632 tvOS, watchOS and old simulators are blacklisted in the tools 2016-02-19 16:29:41 -08:00
Chinmay Garde
83f10bd8ae Fix typo in the _xcodeVersionSatisfactory and rename the check 2016-02-19 13:38:28 -08:00
Chinmay Garde
c5056b957e iOS: In case Xcode is installed but the version is too old. Advise the user to update. 2016-02-19 13:30:57 -08:00
Chinmay Garde
f6a2477dce Always generate legal UTIs for project identifiers. 2016-02-19 12:30:18 -08:00
Chinmay Garde
b37112af2a Rewrite Local.xcconfig per build
In case the user changes the path of the Flutter project on disk, the Dart SDK or the Flutter repository itself, the old Xcode paths would be invalid. Now, we rewrite them when we build the project.
2016-02-19 11:37:05 -08:00
Chinmay Garde
df946dd875 iOS: Treat the initial Info.plist string as a mustache template.
Use the project name to initialize the bundle name and identifier
2016-02-19 11:37:05 -08:00
Devon Carew
d5a6fceee5 add a summary option to the doctor class 2016-02-17 09:33:45 -08:00
Devon Carew
6a6b6539c8 Merge pull request #1947 from devoncarew/less_ios
make the ios development path less mandatory
2016-02-17 00:48:00 -08:00
Devon Carew
7ae6f7f391 make the ios development path less mandatory 2016-02-17 00:38:47 -08:00
Adam Barth
90d53adea9 Revert "iOS: Treat the initial Info.plist string as a mustache template and use the project name to initialize the bundle name and identifier"
This reverts commit dd4361bcb3.

We still use the hard-coded name in a number of places, including
launching the app on the iOS simulator.

Fixes #1950
2016-02-16 21:20:00 -08:00
Chinmay Garde
9f0e6537fb Update the regex used to filter out Flutter specific logs 2016-02-16 18:07:00 -08:00
Chinmay Garde
36a7c6576c Perform an engine version check on start and update the Xcode project if necessary 2016-02-16 17:47:25 -08:00
Chinmay Garde
77103c01cd Merge pull request #1941 from chinmaygarde/master
iOS: Treat the initial Info.plist string as a mustache template and use the project name to initialize the bundle name and identifier
2016-02-16 17:42:42 -08:00
Chinmay Garde
dd4361bcb3 iOS: Treat the initial Info.plist string as a mustache template and use the project name to initialize the bundle name and identifier 2016-02-16 17:29:36 -08:00
Adam Barth
0bb8d21bd2 Remove flutter ios command
All the functionality of this command has been integrated into other commands.
2016-02-16 16:01:59 -08:00
Chinmay Garde
c2f5044099 Refactor: Rename initialize_xcode.dart to setup_xcodeproj.dart 2016-02-16 15:35:59 -08:00
Chinmay Garde
5cebf70da4 flutter start initializes the Xcode project if the user has not already done so. 2016-02-16 15:18:47 -08:00
Chinmay Garde
d38bfee62b Tooling updates for dealing with native services distributed in pub packages 2016-02-16 13:10:12 -08:00
Devon Carew
b7b06c2a27 fixes found when running through the getting started process 2016-02-15 14:06:23 -08:00
Devon Carew
dcf0b7bae6 allow any android sdk version 2016-02-13 14:37:41 -08:00
Devon Carew
576bf7df60 use the REVISION file when building ios apps 2016-02-12 12:21:04 -08:00
Chinmay Garde
3af3b23607 Merge pull request #1786 from chinmaygarde/master
Explicitly specify the sdk and arch when building for an iOS device
2016-02-11 15:25:18 -08:00
Chinmay Garde
97e41f5757 Explicitly specify the sdk and arch when building for an iOS device 2016-02-11 15:18:29 -08:00
Devon Carew
4ed79454ac wait for flutter start to return until the obs. port is available 2016-02-11 10:18:39 -08:00
Matt Perry
a02d583d02 Refactor service-related code to be shared between android and IOS.
The IOS code is totally untested. Need a Mac to test it.
2016-02-10 14:52:17 -05:00
Devon Carew
244239d982 Merge pull request #1753 from devoncarew/fix_logging_ios
fix an issue with logging ios simulator output
2016-02-10 09:24:55 -08:00
Devon Carew
2dbceafbc6 introduce globals scoped to the app's context 2016-02-09 22:03:13 -08:00
Devon Carew
05113d5829 fix an issue with logging ios simulator output 2016-02-09 21:21:02 -08:00
Chinmay Garde
db4016c633 Merge pull request #1699 from chinmaygarde/master
Use the same flags as Android on iOS while starting on the simulator
2016-02-08 15:51:12 -08:00
Chinmay Garde
495c53335e Use the same flags as Android on iOS 2016-02-08 15:44:24 -08:00
Devon Carew
e96f6600e3 start the simulator with -arch x86_64 2016-02-08 14:59:11 -08:00
Chinmay Garde
26b657019d iOS Sim: Wire in launch arguments to simctl 2016-02-08 13:56:12 -08:00
Devon Carew
9e6d45cb03 general refactoring around device management
remove the device factory methods as well as the device cache
2016-02-06 11:49:48 -08:00
Devon Carew
67124dc3a5 refactor to parse xcrun simctl list as json
add device notifications for the simulator
2016-02-05 19:04:47 -08:00
Devon Carew
27ae6c8b40 remove an extraneous line of output when launching the simulator 2016-02-04 13:31:20 -08:00
Matt Perry
5d2281b69b 'flutter start' calls 'flutter apk' if necessary.
flutter start no longer depends on a pre-built SkyShell.apk. It builds a
new one, as long as an AndroidManifest.xml exists.

We rebuild the .apk every time either AndroidManifest.xml or
flutter.yaml changes.
2016-02-03 12:21:20 -08:00
Devon Carew
b780c07622 add --start-paused,--debug-port flags 2016-02-02 11:38:56 -08:00
Devon Carew
78e05884ed refactor flutter logs 2016-02-01 12:56:46 -08:00
Devon Carew
d631ebe597 fix a regex in the ios logs command
fixed sub-process stdout parsing; added todos
2016-01-30 22:48:28 -08:00
Devon Carew
d7fbf5302d use status(), error(), and trace() for logging
rename to printTrace(), printStatus(), and printError()
2016-01-28 12:44:17 -08:00
Devon Carew
55c333f583 tweaks to the ios code 2016-01-28 08:25:23 -08:00
Devon Carew
7ac4e6248f refactor the list command 2016-01-27 14:03:41 -08:00
Chinmay Garde
bf3594c3ee iOS: Update log prefix for device logs. We don't use SkyShell anymore 2016-01-26 13:49:54 -08:00
Adam Barth
4a01299827 flutter start shouldn't log xcodebuild output
Xcodebuild produces a lot of output that isn't relevant to developers. We
should hide it by default.
2016-01-25 14:09:11 -08:00
Adam Barth
91e6b21ea6 Improve error messages for iOS workflow
We now check that you've got an "ios" directory and that you have the proper
version of Xcode.
2016-01-25 12:21:13 -08:00
Eric Seidel
7f3ae43b7f Make flutter list not crash on linux.
Turns out linux does have an ideviceinstaller package
however it doesn't contain idevice_id or any of the
other tools we use.  Furthermore we don't have
xcrun or the rest of xcode on linux so we can't
manipulate simulators either.

No sense in printing out a warning that ios isn't supported
every time on linux, so I wrapped that block in osx only.

@chinmaygarde @devoncarew
2016-01-22 14:58:13 -08:00
Devon Carew
5bce2fbdec refactor platform specific code out of device.dart
remove device type specific checks
2016-01-22 10:51:49 -08:00