238 Commits

Author SHA1 Message Date
Jonah Williams
3fedb8cb5a
Reland: use flutter features for web and desktop (#36699) 2019-07-22 15:34:03 -07:00
Jonah Williams
8eae2dfb92
Revert "Use FlutterFeatures to configure web and desktop devices (#36465)" (#36654)
This reverts commit bd52a78c7162e26721a383b76bac53744e5656a7.
2019-07-21 21:47:43 -07:00
Jonah Williams
bd52a78c71
Use FlutterFeatures to configure web and desktop devices (#36465) 2019-07-21 18:21:15 -07:00
Zachary Anderson
13382f41c0
[flutter_tool] Catch a yaml parse failure during project creation (#36105) 2019-07-12 23:24:04 -07:00
Lau Ching Jun
cfe4d0d7b9
Add FlutterProjectFactory so that it can be overridden internally. (#35092)
Also update the comments since we don't return Future<FlutterProject>
anymore.
2019-06-26 13:29:53 -07:00
Jonah Williams
f530b809b6
Reland: More verification on flutter build web, add tests and cleanup (#34173) 2019-06-10 15:37:23 -07:00
Jonah Williams
71bfe3be9f
Revert "More verification on flutter build web, add tests and cleanup (#34090)" (#34166) 2019-06-10 12:01:14 -07:00
Jonah Williams
354ce1aa5a
More verification on flutter build web, add tests and cleanup (#34090) 2019-06-10 11:27:25 -07:00
Jonah Williams
bd413bff1b
Add flutter create for the web (#34018) 2019-06-07 13:15:38 -07:00
Jonah Williams
c91b657116
Codegen an entrypoint for flutter web applications (#33956) 2019-06-06 21:05:55 -07:00
Jonah Williams
83986acbdb
Add a real-er web restart, doctor, workflow (#33786) 2019-06-03 23:19:42 -07:00
Josh Burton
d0e45a2369 Adds support for generating projects that use AndroidX support libraries (#31028) 2019-05-31 18:33:02 -07:00
stuartmorgan
3ebebebb8d
Implement plugin tooling support for macOS (#33636)
Enables the CocoaPods-based plugin workflow for macOS. This allows a
macOS project to automatically fetch and add native plugin
implementations via CocoaPods for anything in pubspec.yaml, as is done
on iOS.
2019-05-31 13:19:44 -07:00
stuartmorgan
932200caea
Restructure macOS project files (#33608)
Rather than macos/Flutter containing a mixture of files that should and
shouldn't be checked in, create clear locations for:
- Files that are "owned" by Flutter, but should be checked in
  (Flutter/). This will contain files like the top-level Flutter
  xcconfigs, generated plugin registrants, etc.
- Files that are generated by Flutter on the fly, and should not be
  checked in (Flutter/ephemeral/). This will contain Flutter SDK caches,
  the generated xcconfig, etc.

Also adds Flutter-owned Debug and Release xcconfig variants, in
preparation for PodSpec tooling.
2019-05-30 13:43:31 -07:00
Emmanuel Garcia
3bbdf017c4
Add to app measurement (#33458) 2019-05-29 20:56:28 -07:00
stuartmorgan
79ae04d4ed
Build the solution on Windows (#33528)
Switch from building Runner.vcxproj to Runner.sln on Windows, to allow
for multiple-project builds (e.g., separate plugin projects).
2019-05-29 13:17:23 -07:00
Jason Simmons
f9e28e7df7
Do not return null from IosProject.isSwift (#33450) 2019-05-28 14:27:38 -07:00
Jonah Williams
8e3e0a89f4
Revert "Instrument add to app flows (#33297)" (#33449)
This reverts commit faec4ca3617a11fec8728262d90b9e030d9e030d.
2019-05-28 12:52:58 -07:00
Emmanuel Garcia
faec4ca361
Instrument add to app flows (#33297) 2019-05-28 11:11:20 -07:00
Chris Bracken
4d9923201b
Correct typos (#33322)
Corects a bnuch of typeos throuhgout teh Fluter codebsae.

Made use of the `misspell` tool:
https://github.com/client9/misspell
2019-05-24 19:12:45 -07:00
stuartmorgan
ef9866bf27
Build macOS via workspace, rather than project (#33198)
This is necesasry to integrate CocoaPods, since CocoaPods operates
primarily on the workspace rather than the project.
2019-05-22 19:58:29 -04:00
stuartmorgan
f8b07e230a
Change the way macOS app names are located (#32706)
Instead of requiring a name_output.sh, expect a file called
.app_filename in the macos/Flutter directory containing just the name of
the application. The expectation is that the Xcode build will create
that file with a script.

This is not intended as a long-term solution, but it's a substantial
improvement over name_output.sh:
- name_output.sh required constructing the full build output path; this
  made sense when it was coupled with build.sh, but now that the
  decision for where build output goes lives in flutter_tool, that logic
  should as well.
- Changing the name of the application required also updating
  name_output.sh, which is error-prone. With .app_filename, it can be
  created using $PRODUCT_NAME, which means that the usual way of setting
  the application name will automatically update this flow as well.

Part of #30706
2019-05-16 11:00:05 -04:00
stuartmorgan
4e1bfca847
Streamline Windows build process (#32783)
Allows Windows builds to use the same structure and script as Linux
builds now use, calling into tool_backend to manage copying resources to
the project directory and building the bundle.

Also switches from expecting name_update.bat to expecting flutter\exe_filename
to be written during the build, as with the recent changes to the macOS build, to
reduce the amount of boilerplate needed in a windows\ project directory.
2019-05-15 19:32:47 -04:00
stuartmorgan
6722fb448c
Teach flutter msbuild for Windows (#32335)
Eliminates the need for a build.bat in the Windows build workflow, adding
preliminary support for building using msbuild. The handling of
vcvars64.bat may be refined in the future, but this serves as a starting point.
2019-05-14 19:24:40 -04:00
Zachary Anderson
8841afeb1f
[flutter_tool] Build a Fuchsia package (#32519) 2019-05-14 10:59:23 -07:00
Jonah Williams
8b0243f413
Teach Linux to use local engine (#31631) 2019-05-11 00:08:29 -07:00
Jonah Williams
99e7b0a0ff
dont NPE with empty pubspec (#32072) 2019-05-06 08:01:45 -07:00
Jonah Williams
4ff467191b
make FlutterProject synchronous (#31757) 2019-04-29 08:21:32 -07:00
Jonah Williams
6b191841f3
Allow filtering devices to only those supported by current project (#31446) 2019-04-25 12:25:12 -07:00
Jonah Williams
37c73e77f1
Remove need for build/name scripts on Linux desktop (#31567) 2019-04-24 13:34:56 -07:00
Jonah Williams
15f271ef07
if there is no .ios or ios sub-project, don't attempt building for iOS (#31406) 2019-04-23 09:49:49 -07:00
Jonah Williams
a476a08e62
check if project exists before regenerating platform specific tooling (#31342) 2019-04-22 15:18:15 -07:00
Jonah Williams
7f959d8b78
Add Xcode build script for macOS target (#31329) 2019-04-22 13:51:00 -07:00
Jonah Williams
ac36e4423e
Add flutter run support for linux and windows (#31229) 2019-04-18 18:05:04 -07:00
Jonah Williams
da92fc1109
Add run capability for macOS target (#31218) 2019-04-17 22:40:26 -07:00
Jonah Williams
86c938b5b3
Add desktop projects and build commands (experimental) (#31205) 2019-04-17 12:16:55 -07:00
Jonah Williams
469a859c72
Enable code generation features in tool (#29399) 2019-03-21 13:12:10 -07:00
Alexandre Ardhuin
440ce8fde6
Fix indentations of statements in BlockFunctionBody (#28933)
* fix indentof statements in BlockFunctionBody

* fix indentof statements in BlockFunctionBody in tests
2019-03-07 21:09:28 +01:00
Jonah Williams
a2d349c4c1
select ResidentCompiler during FlutterDevice initialization (#28603) 2019-03-07 11:02:42 -08:00
Alexandre Ardhuin
4c1f4d14e1
fix some formatting issues (#28809)
* fix some formatting issues

* address review comments

* fix indent
2019-03-06 09:37:32 +01:00
Alexandre Ardhuin
387f885481
Add missing trailing commas (#28673)
* add trailing commas on list/map/parameters

* add trailing commas on Invocation with nb of arg>1

* add commas for widget containing widgets

* add trailing commas if instantiation contains trailing comma

* revert bad change
2019-03-01 08:17:55 +01:00
Jonah Williams
6f5f037689
Add basic web device and run support (#28302) 2019-02-26 16:58:24 -08:00
Jonah Williams
67cf21577f
Add basic codegen app to be used for integration testing and benchmarks (#27257) 2019-02-14 23:17:16 -08:00
Jonah Williams
216a65b669
remove build_runner_core import from flutter_tools (#27708) 2019-02-08 18:12:28 -08:00
Jonah Williams
b06a709305
Use flutter_tools to generate build_script (#27277) 2019-02-05 18:35:20 -08:00
Todd Volkert
c8c935cd83 Allow bundle identifier to be surrounded with quotes. (#26300)
Picked up from #22498, originally by @jugyo
2019-01-30 07:32:05 -08:00
KyleWong
60aa49e064 Let injectPlugins integrate custom pods (#26970) 2019-01-29 20:33:16 -08:00
Alexandre Ardhuin
ef276ffea5
format initializer list of constructors (#27111) 2019-01-29 21:47:16 +01:00
Jonah Williams
1237ee8f63
Add experimentalBuildEnabled flag and initial shim for build_runner (#26989) 2019-01-24 15:59:55 -08:00
Pranay Airan
368cd7da8b
Adding support for android app bundle - Issue #17829 (#24440)
* adding support for android app bundle.

* removing the debug statement.

* fixing formatting and code review changes.

* Revert "fixing formatting and code review changes."

This reverts commit 2041d459f335242555a0b75e445343134c245494.

* Fixing code formatting issues.

* updating review comments fixing comments and spacing.

* changing and to & to rerun the CI and tests.

* updating the comment to re-run the test

updating the comment to re-run the test

* fixing the formatting.

* updating comments to re-trigger build

updating comments to re-trigger build
2018-12-20 22:18:53 -08:00