Commit Graph

92 Commits

Author SHA1 Message Date
Jonah Williams
ef15eac821 [flutter_tools] Remove context from Xcode and most of Xcodeproj (#48661) 2020-01-23 15:03:03 -08:00
Jonah Williams
749589d896
[flutter_tools] Remove context usage from status and clean up test cases (#48446) 2020-01-10 09:36:49 -08:00
Jonah Williams
f7b8d62cbc
[flutter_tool] Refactor Logger and Terminal to (mostly) no longer depend directly on context (#47269) 2020-01-08 12:35:12 -08:00
Alexandre Ardhuin
4f9b6cf017
enable lint prefer_final_in_for_each (#47724) 2020-01-07 16:32:04 +01:00
Jonah Williams
ee7a37f1d3
[flutter_tools] Ensure that global variables are easily identifiable (#47398) 2020-01-06 11:04:20 -08:00
Ian Hickson
449f4a6673
License update (#45373)
* Update project.pbxproj files to say Flutter rather than Chromium

Also, the templates now have an empty organization so that we don't cause people to give their apps a Flutter copyright.

* Update the copyright notice checker to require a standard notice on all files

* Update copyrights on Dart files. (This was a mechanical commit.)

* Fix weird license headers on Dart files that deviate from our conventions; relicense Shrine.

Some were already marked "The Flutter Authors", not clear why. Their
dates have been normalized. Some were missing the blank line after the
license. Some were randomly different in trivial ways for no apparent
reason (e.g. missing the trailing period).

* Clean up the copyrights in non-Dart files. (Manual edits.)

Also, make sure templates don't have copyrights.

* Fix some more ORGANIZATIONNAMEs
2019-11-27 15:04:02 -08:00
Alexandre Ardhuin
adc7351046
implicit-casts:false on flutter_tools/lib (#44447)
* implicit-casts:false on flutter_tools/lib

* address review comments

* use castStringKeyedMap

* introduce {bool,string,strings}Arg

* fix ci
2019-11-19 07:57:42 +01:00
Jenn Magder
01dc19b93f
Pass environment variables through to xcodebuild (#43553) 2019-10-28 19:58:06 -07:00
Alexandre Ardhuin
890b939401
indent formal parameters correctly (#41644) 2019-10-04 11:00:18 +02:00
Alexandre Ardhuin
89427d672d
add missing trailing commas in flutter_tools (#40968) 2019-09-24 08:06:09 +02:00
Jenn Magder
d95adf999c
Move build info checks from generating files to the xcode build (#40792) 2019-09-18 16:57:31 -07:00
Jenn Magder
9a68b0df3e
Warn when build number and version can't be parsed on iOS (#40611) 2019-09-17 17:07:41 -07:00
Zachary Anderson
8a33d2446d
[flutter_tool] Remove the synchronous -showBuildSettings (#40435) 2019-09-16 07:51:50 -07:00
Zachary Anderson
e2340c641d
[flutter_tool] Use curly braces around single statment control structures (#40446) 2019-09-13 14:51:35 -07:00
stuartmorgan
72888c7f75
Harden macOS build use of Xcode project getInfo (#40375)
- Makes build_macos.dart handle the case where there is only one Xcode
  project in the macos/ directory, but it's not called Runner.xcodeproj
- Makes getInfo throw a tool exit when trying to get project info and it
  can't find a project, since that is a configuration error by the user
  rather than a tool bug.
2019-09-12 16:03:02 -07:00
Zachary Anderson
73c10e8ced
[flutter_tool] process.dart cleanup (#39899) 2019-09-11 18:20:42 -07:00
stuartmorgan
3948e8759e
Allow specifying a project for Xcode getInfo (#39782)
Avoids unnecessarily breaking projects that have another .xcodeproj in
their macos/ directory, which worked until the addition of the getInfo
call.
2019-09-05 10:07:03 -07:00
Zachary Anderson
0f2af976a2
[flutter_tools] Add a timeout to another showBuildSettings command (#39579) 2019-09-05 09:50:46 -07:00
Zachary Anderson
b7c714e84c
[flutter_tool] Use a timeout for xcode showBuildSettings (#39280) 2019-08-28 10:03:53 -07:00
Jenn Magder
892d62f03a
Clean Xcode workspace during flutter clean (#38992) 2019-08-21 18:42:56 -07:00
Jonah Williams
2ab469952b
Flutter assemble for macos take 2! (#36987) 2019-07-31 16:19:22 -07:00
Jenn Magder
dd1fb3bcb7
Build number (part after +) is documented as optional, use entire app version if not present (#37036) 2019-07-31 16:18:09 -07:00
Jenn Magder
bd47a31e32
Vend Flutter module App.framework as a local CocoaPod pod to be installed by a host app (#36793) 2019-07-30 09:58:39 -07:00
Emmanuel Garcia
5a34e7981e
Catch exceptions thrown by runChecked* when possible (#36109) 2019-07-18 10:45:37 -07:00
stuartmorgan
710a0cb9a5
Adjust macOS build flow (#32538)
- Removes SYMROOT from the Generated.xcconfig. Having it causes current
  versions of Xcode to switch the project's build output to "Legacy",
  which causes anything not overridden to use a project-relative build
  directory instead of a shared directory in DerivedData, breaking
  anything with subprojects that it depends on.
  This means that `flutter run` and builds from Xcode will use
  completely different build directories, but that each should be
  internally consistent.
- Moves the FlutterMacOS.framework to $SRCROOT/Flutter. This is
  consistent with the approach we're moving to for all desktop
  platforms, and avoids issues finding it now that SYMROOT doesn't match
  for the two different build modes.

Fixes #32494
2019-05-11 21:12:42 -04:00
Jonah Williams
0acd3e6b04
refactor context to be implicit-downcast safe (#31622) 2019-04-25 15:51:08 -07:00
Jonah Williams
abbb66ad79
Set SYMROOT as absolute in Generated.xcconfig for macOS (#31451) 2019-04-22 22:22:17 -07:00
Jonah Williams
7f959d8b78
Add Xcode build script for macOS target (#31329) 2019-04-22 13:51:00 -07:00
Alexander Aprelev
d775908c7e
Download and handle product version of flutter patched sdk (#31063)
* Support release/debug flavors of flutter_patched_sdk

* Use [anyNamed] instead of [any] for mocking named arguments

* Fix use of local engine in release mode
2019-04-15 21:02:20 -07:00
Priit Lätt
cdbd0f9ddd Use async execution for xcodebuild commands (#29048) 2019-03-19 09:19:34 -07: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
KyleWong
f9a6090082 Refactor local engine logic (#27765)
* Refactor for iOS.

* For android_xxx_unopt_arm64&ios_xxx_unopt_arm, remove the _arm64/_arm suffix.
dart generated in host_xxx_unopt/host_xxx has an arch of x86_64 which supports arm64/arm.

* Remove suffixes for various archs.
2019-02-15 15:56:49 -08:00
KyleWong
4b4a9400b7 Refactor build-number/build-name logic. (#27743)
This PR aims at several things:

1. Use pub_semver to check a version in pubspec.yaml meets the requirements specified in https://semver.org/.
2. Don't limit build-number/build-name as a fixed format. Instead, validate it according to the target(ios/android).
3. Make sure that build-number/build-name are always validated no matter it's specified by the `flutter command` or version in pubspec.yaml.

Fixes #27589
2019-02-13 07:48:03 -08:00
Michael Goderbauer
6d20ff2446
Remove all obsolete "// ignore:" (#27271) 2019-01-30 08:56:12 -08:00
Dan Field
fd6b2e198c
Re-reland Xcode backend refactor (#23762)
* Use Xcode build configurations to drive Flutter build mode

* Proper check wrt local_engine, print error if profile mode misisng

* Remove unused code, update tests, fix template problem, update warning

* fix up warning

* add explanatory dev comment

* fix whitespace

* missing words, change lambda arrow to function body

* error indentation

* Test early exits for xcode_backend.sh

* only on macOS, use right test

* Update error messages

* case insensitive compare for build config

* Update gallery podfile

* update projects to add profile configuration

* make compatible with flavors

* add missing plist files

* add FLUTTER_FRAMEWORK_DIR back, set swift version for profile, tell Podfile about profile
2018-10-31 16:37:53 -07:00
Dan Field
7217999a9a
Revert "Reland Xcode backend refactor" (#23737)
* Revert "Update templates (#23698)"

This reverts commit 5b0de6d679.

* Revert "Verify that date/number translations exist for all supported languages (#23692)"

This reverts commit 3449edf256.

* Revert "Reland Xcode backend refactor (#23574)"

This reverts commit 7270f2845d.
2018-10-30 09:36:31 -07:00
Dan Field
7270f2845d
Reland Xcode backend refactor (#23574)
* Use Xcode build configurations to drive Flutter build mode

* Proper check wrt local_engine, print error if profile mode misisng

* Remove unused code, update tests, fix template problem, update warning

* fix up warning

* add explanatory dev comment

* fix whitespace

* missing words, change lambda arrow to function body

* error indentation

* Test early exits for xcode_backend.sh

* only on macOS, use right test

* Update error messages

* case insensitive compare for build config

* Update gallery podfile

* update projects to add profile configuration

* make compatible with flavors

* add missing plist files
2018-10-30 07:23:19 -07:00
Dan Field
628e8ec0b9
Revert "Xcode backend refactor (#23387)" (#23528)
This reverts commit def1d80566.
2018-10-25 13:25:09 -07:00
Dan Field
def1d80566
Xcode backend refactor (#23387)
* Use Xcode build configurations to drive Flutter build mode
2018-10-25 11:29:31 -07:00
Greg Spencer
0ff9e8a928
Rename 'application' back to 'module', and make 'app' the default again for templates. (#22888)
We decided that redefining the default for templates was premature. We're going to go back to having "module" in experimental land again, and we'll try again when we have the feature set fully baked.

This keeps the writing of the .metadata files, and writing the template type to them, because that was a good improvement, and there are still a bunch of added tests that improve our coverage.
2018-10-10 11:01:40 -07:00
Greg Spencer
9f23866a0a
Rename module --> application in flutter create command. (#22565)
This renames the "module" template to the "application" template, and makes "application" the default. The existing "app" template is now deprecated.

flutter create also now recognizes the type of project in an existing directory, and is able to recreate it without having the template type explicitly specified (although you can still do that). It does this now by first looking in the .metadata file for the new project_type field, and if it doesn't find that, then it looks at the directory structure. Also, the .metadata file is now overwritten even on an existing directory so that 1) the project_type can be added to legacy projects, and 2) the version of Flutter that updated the project last is updated.

I also cleaned up a bunch of things in create_test.dart, added many more tests, and added an example test to the test/ directory in the generated output of the application template.

Fixes #22530
Fixes #22344
2018-10-04 13:03:20 -07:00
Alexandre Ardhuin
f62afdcf57
add missing type parameter on methods (#22096) 2018-10-01 21:29:08 +02:00
Alexandre Ardhuin
d927c93310
Unnecessary new (#20138)
* enable lint unnecessary_new

* fix tests

* fix tests

* fix tests
2018-09-12 08:29:29 +02:00
Chris Bracken
63fde92adc
Eliminate Dart 1 support from Xcode xcconfig files (#21400) 2018-09-04 14:33:49 -07:00
Mikkel Nygaard Ravn
6cc8008283
Fix extraction of product bundle ID for iOS projects (#21252) 2018-08-31 11:07:15 +02:00
Mikkel Nygaard Ravn
a737c86a19
Avoid null manifests in FlutterProject (#20332) 2018-08-10 21:49:24 +02:00
Mikkel Nygaard Ravn
3c83c52697
FlutterProject refactoring and test coverage (#20296) 2018-08-07 23:43:15 +02:00
Mikkel Nygaard Ravn
b280074815
Move async from member access to construction (#20035) 2018-08-02 14:12:25 +02: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
Sigurd Meldgaard
6a8f904104
Revert "Use FlutterProject to locate files (#18913)" (#19409)
This reverts commit 57d78cc739.
2018-07-16 16:21:20 +02:00