Commit Graph

193 Commits

Author SHA1 Message Date
Jenn Magder
d4150d3f6d
Adopt Flutter.xcframework in tool (#71495) 2020-12-04 13:57:11 -08:00
Jenn Magder
a5ee7f7cfc
Add XCFramework artifacts (#71113) 2020-12-01 10:00:16 -08:00
Jenn Magder
9bbc2177ec
Move Flutter.podspec to add-to-app project template (#71103) 2020-11-24 10:16:09 -08:00
Jonah Williams
42c9c22553
Revert "Stop extra framework copy during build ios-framework (#70790)" (#70802)
This reverts commit a9a35d10a4.
2020-11-18 17:05:33 -08:00
Jenn Magder
a9a35d10a4
Stop extra framework copy during build ios-framework (#70790) 2020-11-18 15:00:28 -08:00
Dan Field
be2e7bb1c0
Revert "Revert "Allow any iOS app to be added to an existing host app (#70647)" (#70739)" (#70740)
This reverts commit aab9a76ee4.
2020-11-17 22:19:50 -08:00
Dan Field
aab9a76ee4
Revert "Allow any iOS app to be added to an existing host app (#70647)" (#70739)
This reverts commit abdd65fc29.
2020-11-17 21:40:28 -08:00
Jenn Magder
abdd65fc29
Allow any iOS app to be added to an existing host app (#70647) 2020-11-17 18:53:03 -08:00
Jenn Magder
2529e358b6
Move Flutter.framework to build directory instead of ios/Flutter (#70224) 2020-11-17 10:09:29 -08:00
Jenn Magder
91b82347af
Build App.framework directly to build directory (#69699) 2020-11-03 12:48:25 -08:00
Jonah Williams
a2a4e9eda4
Revert "Build App.framework directly to build directory (#69612)" (#69641)
This reverts commit b77088319a.
2020-11-02 20:12:47 -08:00
Jenn Magder
b77088319a
Build App.framework directly to build directory (#69612) 2020-11-02 18:48:03 -08:00
Jonah Williams
2e54c4a8ea
[flutter_tools] implement safe file copy with multiple fallbacks (#69000)
The tool observes a large number of unhandled exceptions during the file copy portion of flutter create. it is difficult to tell whether the permission issue is caused by the source/destination, or whether it is due to a bug in dart:io.

To work around this, implement a permission check for both the source and dest files. If either fails, the tool can exit with a more specific message.

If these checks pass, then perform the actual copy. If the copy fails, fallback to manually copying the bytes
2020-10-26 15:49:07 -07:00
Jenn Magder
d81691d0f4
Revert "Build iOS apps using Swift Packages (#68361)" (#68546)
This reverts commit dd9323bdfb.
2020-10-19 17:57:32 -07:00
Jenn Magder
dd9323bdfb
Build iOS apps using Swift Packages (#68361) 2020-10-19 15:47:04 -07:00
Jenn Magder
5e17a240bd
Generate only requested platform directories on create (#68376) 2020-10-19 14:17:43 -07:00
Jonah Williams
08576cb671
[flutter_tools] HACKTOBERFEST (#67882)
HACKTOBERFEST
2020-10-12 09:31:02 -07:00
Michael R Fairhurst
7f3c9b6bda
Remove unused 'dart:async' imports. (#65568) 2020-09-16 14:14:06 -07:00
Balvinder Singh Gambhir
3dde3e034c
[flutter_tools] generates version.json for web using flutter tool (#64644)
Generates version.json in web directory of project. version.json can be used in the future version of package_info which will support web. version.json has the following keys : app_name, version and build_number. This file is generated every time a user runs or builds the project.

Co-authored-by: Jonah Williams <jonahwilliams@google.com>
2020-09-15 11:21:54 -07:00
stuartmorgan
6d1c244b79
Always use POSIX paths for generated CMake files (#65493)
The Windows plugin CMake generation had code to ensure that the paths
written to it used POSIX separators, but the Linux version didn't; that
meant that plugin updates run on Windows machines would corrupt the
generated (but checked in) Linux CMake file.

This change shares that code so that both will use POSIX paths
regardless of what OS they are generated on.

Fixes https://github.com/flutter/flutter/issues/64591
2020-09-09 16:08:19 -07:00
Shi-Hao Hong
fd22fc3e35
[gen_l10n] Synthetic package generation by default (#62395)
* synthetic packages by default in gen_l10n tool

* Refactor default path for synthetic package

* Remove unused import

* Code cleanup

* Further improvements to help text

* Refactor synthetic package path

* Remove newlines

* Test cleanup

* clean up logic in inputs and outputs list function

* Update l10n.yaml usage

* only add option if value is non-null

* Update stocks app as proof of concept for synthetic package usage

* Address nits

* print pubspec contents

* add print statements

* Do not allow null value for useSyntheticPackage

* +

* +

* +

* +

* Cleanup

* Add test

* Fix text

* Dont parse pubspec directly

* Test using context

* WIP: generate synthetic packages on pub get -- needs tests

* Allow null value

* Update null handling

* Refactor to properly handle null case

* Fix yamlMap condition

* Fix yaml node for real

* WIP: struggling to write tests

* WIP - take absolute path as an option

* Add tests

* Use environment project directory for synthetic package generation pathway

* Fix typo

* Improve help text

* Update defaults

* Remove unauthorized path import

* Fix pathing issues at synthetic package generation

* Fix typo in test

* Use path.join so projectDir matches up based on OS

* Fix Windows pathing in test

* Remove unnecessary replaceApp code for projectDir.path

* Use globals.fs.currentDirectory.path in resident_runner_test.dart

* Fix merge conflict

* Add test to ensure that synthetic package is generated on pub get

* Fix resident_runner_test.dart tests

* Fix tests

* Use package:file instead of dart:io

* WIP - exploration

* Remove synthetic package use from stocks example

* Update integration test to not use synthetic packages

* Remove trailing whitespace

* flutter pub get runs synth package generation

* Remove more print statements

* Add license header

* WIP - minimally working pub.get

* Use own MockBuildSystem

* Modify test and implementation to be a little cleaner

* Fix flutter pub get invocation

* Use synthetic packages in stocks app

* Revert "Use synthetic packages in stocks app"

This reverts commit 45bf24903c.

* Add environment and buildSystem params to flutter test

* Address code review feedback

* +

* Isolate codegen into its own API

* Fix imports

* Slight refactor

* Add one more test for no l10n.yaml file

* Remove unneeded mock class and import in pub_get_test.dart

* More code review feedback

* Remove unnecessary imports

* Remove `return await`s that I missed

* use arrow functions instead
2020-08-31 13:19:41 +08:00
Jonah Williams
ee12d7c3fc
[flutter_tools] check for permission issues when copying file (#63540) 2020-08-21 11:11:04 -07:00
xster
e1ae4dfcae
Move v1 embedding migration warning from plugin consumers to all apps (#64181) 2020-08-19 22:32:08 -07:00
Nolan Scobie
43c1b34cf5
Add punctuation for unterminated sentences in doc comments (#62755)
* Add punctuation for unterminated sentences in doc comments

* Addressing review nit
2020-08-06 19:18:52 -04:00
Robert Ancell
392e25c8f2
Set the application-id in the Linux shell (#60053) 2020-07-30 08:46:29 +12:00
Jenn Magder
fe670c04cc
Only try to get build settings if the Xcode project exists (#61979) 2020-07-22 18:22:38 -07:00
Jonah Williams
045f3a54f5
[flutter_tools] turn down flutter generate (#61475)
complete removal of all generate functionality

Fixes #61508
2020-07-16 09:51:22 -07:00
xster
8bd2e6585b
Remove v1 Android create templates (#61203) 2020-07-11 12:15:19 -07:00
Jenn Magder
e110ca7209
Case insensitive check flavor names against Xcode schemes (#61140) 2020-07-09 16:56:02 -07:00
Dan Field
33aa457604
Roll packages (#61034)
Roll packages, update XML deprecations.
2020-07-07 16:40:33 -07:00
stuartmorgan
4b12050112
Switch Windows to CMake (#60629)
* First pass at CMake files; untested

* First pass of adding CMake generation logic on Windows

* Misc fixes

* Get bundling working, start incoprorating CMake build into tool

* Fix debug, exe name.

* Add resources

* Move cmake.dart

* Rip out all the vcxproj/solution plumbing

* Fix plugin cmake generation

* Build with cmake rather than calling VS directly

* Adjust Windows plugin template to match standard header directory structure

* Pass config selection when building

* Partially fix multi-config handling

* Rev template version

* Share the CMake generation instead of splitting it out

* VS build/run cycle works, with slightly awkward requirement to always build all

* Update manifest

* Plugin template fixes

* Minor adjustments

* Build install as part of build command, instead of separately

* Test cleanup

* Update Linux test for adjusted generated CMake approach

* Plugin test typo fix

* Add missing stub file for project test

* Add a constant for VS generator
2020-07-06 12:59:16 -07:00
Jonah Williams
a0334fb500
[flutter_tools] maintain file manifest for create (#59706)
First pass at fixing #57985 and implementing #59602

This doesn't have enough metadata to be useful for IDEs yet, but it prevents the issue from getting worse while we iterate on it.
2020-06-24 16:20:21 -07:00
Chris Yang
2e63b7d4f8
Add --platforms to flutter create -t plugin command (#59507) 2020-06-23 17:38:03 -07:00
Jenn Magder
0093c6a4c6
Add Podfile migration warning to support federated plugins (#59201) 2020-06-12 12:44:14 -07:00
Jenn Magder
023532d991
Revert "Build iOS apps using Swift Packages (#59009)" (#59025)
This reverts commit 43e28084fc.
2020-06-08 15:45:10 -07:00
Jenn Magder
43e28084fc
Build iOS apps using Swift Packages (#59009) 2020-06-08 13:53:01 -07:00
Jenn Magder
2ece1c3a17
Revert "Build iOS apps using Swift Packages (#58522)" (#58549)
This reverts commit 2054f37aaf.
2020-06-02 19:00:12 -07:00
Jenn Magder
2054f37aaf
Build iOS apps using Swift Packages (#58522) 2020-06-02 17:57:11 -07:00
Jonah Williams
b19b744bb7
[flutter_tools] check for Runner.sln when parsing for plugins (#57392)
Throw a toolExit if the windows plugin logic runs on an invalid windows project. Update the supported project check to validate the existence of a Runner.sln file
2020-05-18 09:24:51 -07:00
stuartmorgan
8abf0a6d8c
Switch to CMake for Linux desktop (#57238)
Updates the Linux templates to use CMake+ninja, rather than Make, and updates the tooling to generate CMake support files rather than Make support files, and to drive the build using cmake and ninja.

Also updates doctor to check for cmake and ninja in place of make.

Note: While we could use CMake+Make rather than CMake+ninja, in testing ninja handled the tool_backend.sh call much better, calling it only once rather than once per dependent target. While it does add another dependency that people are less likely to already have, it's widely available in package managers, as well as being available as a direct download. Longer term, we could potentially switch from ninja to Make if it's an issue.

Fixes #52751
2020-05-16 15:07:34 -07:00
Jenn Magder
9c87b32477
Remove Runner target check, prefer schemes (#56620) 2020-05-11 11:56:44 -07:00
Jenn Magder
c8c55b4098
Check Xcode build setting FULL_PRODUCT_NAME for bundle name (#55799) 2020-05-04 11:31:08 -07:00
James D. Lin
566c1d1124
flutter_tools: Prefer using .of() over .from() when possible (#55250)
Prefer using `.of()` (which is statically type-checked) over
`.from()` (which is dynamically type-checked) when possible.
2020-04-21 22:09:50 -07:00
Jonah Williams
d46da3ae11
[flutter_tools] remove PackageMap and finish PackageConfig migration (#55244) 2020-04-21 19:55:15 -07:00
tauu
56b7c93584
[flutter_tools] fix build for projects with watchOS companion app (#51126)
Co-authored-by: Georg Wechslberger <wechslbe@ma.tum.de>
2020-04-15 12:13:06 -07:00
Jonah Williams
8ed40ddd4b
[flutter_tools] refactor FlutterManifest to be context-free (#54555) 2020-04-13 18:55:01 -07:00
Jenn Magder
ce40fbaf51
Include metadata in GitHub crash template (#53118) 2020-03-27 16:21:45 -07:00
stuartmorgan
685e9d1e47
Add pre-stable support for create on Windows (#51895)
Adds initial support for flutter create of apps and plugins. This is derived from the current FDE example app and sample plugin, adding template values where relevant.

Since the APIs/tooling/template aren't stable yet, the app template includes a version marker, which will be updated each time there's a breaking change. The build now checks that the template version matches the version known by that version of the tool, and gives a specific error message when there's a mismatch, which improves over the current breaking change experience of hitting whatever build failure the breaking change causes and having to figure out that the problem is that the runner is out of date. It also adds a warning to the create output about the fact that it won't be stable.

Plugins don't currently have a version marker since in practice this is not a significant problem for plugins yet the way it is for runners; we can add it later if that changes.

Fixes #30704
2020-03-23 10:42:26 -07:00
Jenn Magder
ee845255de
Move XcodeProjectInterpreter to globals (#52847) 2020-03-18 15:55:09 -07:00
Jenn Magder
4fb9ce8414
Clean App.framework, Generated.xcconfig, flutter_export_environment.sh (#51532) 2020-02-27 12:18:06 -08:00