296 Commits

Author SHA1 Message Date
Chris Bracken
1d6bb3ccbf
Update quiver dependency to 0.26.2 (#13299)
Updates quiver from 0.26.0 to 0.26.2 to pick up strong-mode fixes.
2017-12-01 10:28:59 -08:00
Greg Spencer
909406ba25
Consolidating .gitignore files. (#13002)
This consolidates all of the non-template .gitignore rules into the top level .gitignore, to ignore common things more broadly, with less maintenance needed for the .gitignore files. Does not touch the templates, so that they still produce needed .gitignores as part of flutter create.
2017-11-28 17:06:57 -08:00
xster
7ad69b38b0
Update xcode project template to 9.1 (#13193) 2017-11-28 15:49:00 -08:00
Greg Spencer
797b39e9b2
Creates a new flutter command 'ide-config' and removes *.iml and .idea from tree. (#12958)
Creates a new (hidden) flutter command 'ide-config' that will create and/or update
existing .iml files and some files under the .idea directory, as well as
removing existing *.iml files and the .idea directory.

It also:

 * Adds *.iml to the .gitignore
 * Removes existing .iml files from the repo, and moves them to the
   packages/flutter_tools/ide_templates/intellij directory.
 * Adds a flag to ide-config ('--update-templates') that will take any new .iml
   files in the flutter tree and add them to the existing templates.
     - If --overwrite is also specified, then all existing templates will also
       be overwritten with the contents from the flutter tree, and any that have
       been deleted from the flutter tree will also be removed from the
       templates.
 * Added new run configurations for all existing app targets that will now also
   be automatically added to IntelliJ.
 * Setting up the environment also includes setting the coding style guidelines
   and the git VCS.
 * Note that after this PR lands, Flutter developers will need to run it once to
   re-create the .iml files and configuration files that have been removed.

After this PR lands, .iml files will no longer appear in the untracked files
section for git.
2017-11-13 10:55:22 -08:00
Chris Bracken
83df7bdd0f
Update Dart package dependencies (#12829) 2017-11-01 15:28:46 -07:00
Yegor
154f2e5402 Reapply #12700 but keep linter pinned at 0.1.35 (#12735)
* Revert "Revert "fix --force-upgrade script; upgrade to the latest package versions (#12700)" (#12729)"

This reverts commit 7f0d4f4caae30d20670a8f3272fa1c70170ace8a.

* keep linter pinned at 0.1.35
2017-10-26 09:55:36 -07:00
Yegor
7f0d4f4caa Revert "fix --force-upgrade script; upgrade to the latest package versions (#12700)" (#12729)
This reverts commit 5b3575006e52ce3f2df2ee319bdaab0b5750dea2.
2017-10-25 17:08:08 -07:00
Yegor
5b3575006e fix --force-upgrade script; upgrade to the latest package versions (#12700)
* fix updrade script; upgrade to the latest package versions

* exclude special dependencies from transitive closure

* fix stack trace handling in flutter_test due to stack_trace change

* change type on _emptyStackTrace
2017-10-25 16:12:43 -07:00
Alexandre Ardhuin
1fce14a31c enable lint prefer_single_quotes (#12665) 2017-10-22 18:11:36 +02:00
Hans Muller
c3d56b1dad flutter_localization optional package (#12410) 2017-10-11 16:01:13 -07:00
Alexander Aprelev
c02850b4dc Force upgrade update packages with improved update process. (#12412)
* Force upgrade update packages with improved update process.

* Update packages

* Revert "Update packages"

This reverts commit a37de26d3f4f7f5a15746ff791002625faa3d3c0.
2017-10-05 20:59:08 -07:00
gspencergoog
18f0d3aef7 Add framework support for system text scale factor. (#12180)
* Add framework-side support for system text scale factor.

* Rolling engine to e3404b81a53ba3180c7623a6f2190ebb28518f30
  Additional changes rolled in with engine change:
    libtxt: implementation of GetRectsForRange that processes a line at a time - e3404b8
    Provide an entropy source to the Dart engine (#4161) - e1aa867
    libtxt: search for fallback fonts that can match emoji and CJK characters - 8061df1
    Roll skia to e4679fa06a. (#4157) - 267e7a8
    Update buildroot to 53fea9aebbcc39c6522731471a1a45960ee0685e (#4160) - 02ea7ae
    Revert engine Dart roll. (#4158) - 14aab33
    Add support for system text scale factor. (#4124) - b2a7f4b
    Include _http into sky_engine libraries for analyzer (#4154) - b930f10
    libtxt: Remove postprocess_line and improve tracking of X offsets - 86f95f0
    libtxt: remove redundant line_widths (#4152) - 14bf515
    Roll dart to ade37f931e90b0fdb8fe16d6bf6f089545da55b6 (#4151) - 6f1264f
2017-10-02 14:18:18 -07:00
Ian Hickson
441b5c2031 Pin all dependencies ONCE AND FOR ALL (#12210)
* Pin all dependencies ONCE AND FOR ALL

This replaces the secret `flutter update-packages --upgrade` with a destructive `flutter update-packages --force-upgrade` that actually goes and pins every dependency and transitive dependency in every flutter package to the same version.

* Add comments.
2017-09-22 13:35:35 -07:00
Alexander Aprelev
63802b3dff Pin args to 0.13.7 to avoid version conflict (#12208) 2017-09-21 18:29:16 -07:00
Ian Hickson
ca7d2d23cf TextPainter RTL (#11888) 2017-09-07 16:57:38 -07:00
Jaime Wren
dbd3bf28e6 Replace FLUTTER_MODULE_TYPE with WEB_MODULE in dev/manual_tests/* and examples/* iml files (#11234) 2017-08-07 15:53:56 -07:00
Chris Bracken
cb14eb989d Update IntelliJ project files for latest plugin (#11536)
The most recent Flutter IntelliJ plugin replaces FLUTTER_MODULE with
WEB_MODULE and eliminates the exclusion of packages/ directories.
Use of the packages/ directory was turned off by default months ago, and
is replaced by the .packages file.
2017-08-07 12:19:25 -07:00
Mikkel Nygaard Ravn
1731a16d81 Make consistent use of gradle wrapper (#10993) 2017-06-29 09:48:01 +02:00
Michael Goderbauer
8b888e6a12 Apply tempalte changes to examples (#10865) 2017-06-20 15:27:00 -07:00
Brian Slesinsky
3528cd6f2d flutter test: add --machine flag (#10520)
Currently this just prints the observatory URL as a JSON event.
Refactored the code to make this fit in.
2017-06-13 13:26:32 -07:00
Mikkel Nygaard Ravn
7156fc054e Update hello_world example to new template (#10287) 2017-05-24 10:59:58 +02:00
Hans Muller
e3ae11e879 Updated example gitignore files per the flutter create template (#10251) 2017-05-22 10:31:50 -07:00
Chris Bracken
2da63e4657 Update example project .gitignores to latest template (#10188)
Under android/ directory, ignore:
GeneratedPluginRegistrant.java

Under ios/ directory, ignore:
GeneratedPluginRegistrant.h
GeneratedPluginRegistrant.m
Pods/
2017-05-18 18:09:51 -07:00
Michael Thomsen
5cec108023 Roll android build tools to 25.0.3 (#9922)
* Roll android build tools to 25.0.3

* Roll android build tools to 25.0.3 in templates
2017-05-09 18:58:46 +02:00
Michael Thomsen
a625d3e140 Revert "Upgrade to most recent android build tools version (#9878)" (#9888)
This reverts commit 5ed2984e75d9c71ac68ee87158d529094aed54e0.
2017-05-08 20:33:12 +02:00
Michael Thomsen
5ed2984e75 Upgrade to most recent android build tools version (#9878) 2017-05-08 20:12:32 +02:00
Brian Slesinsky
60c6ecc79f add Dart_SDK project library to examples that don't have them (#9847)
This ensures that when someone opens the project using IDEA,
the Flutter plugin will find the location of the Flutter SDK
and run "flutter packages get".
2017-05-05 19:14:58 -07:00
Chris Bracken
07b1f7f744 Update Hello World plugin integration (#9825)
Enable plugin infra for both iOS and Android post-#9791.
2017-05-04 19:24:41 -07:00
Chris Bracken
eacf793b35 Use default FlutterActivity in non-plugin examples (#9770)
Brings hello_world and flutter_gallery Android code in line with the
corresponding iOS code.
2017-05-03 14:20:17 -07:00
Chris Bracken
89af5ec8c7 Update hello world example to latest template (#9697) 2017-05-01 13:08:52 -07:00
Michael Thomsen
c313984409 Exclude generated PluginRegistry files from git (#9555) 2017-04-24 15:23:18 +02:00
Michael Thomsen
7a57d37195 Add Pods cache dir to ios/.gitignore (#9464)
* Add Pods cache dir to ios/.gitngnore

* Add missing ending newlines
2017-04-21 13:18:05 +02:00
Phil Quitslund
fc58bd7679 IntelliJ metadata cleanup (flutter-intellij#914). (#9427)
Follow-up from #9422
2017-04-17 13:42:31 -07:00
Devon Carew
9493df2da8 update the IntelliJ metadata files (#9388) 2017-04-14 08:55:26 -07:00
Ian Hickson
3eb87830e9 Constants! Constants everywhere! (#9286)
Aggressively apply the const lint.
2017-04-07 12:24:32 -07:00
Michael Thomsen
398ee35e03 Update IJ files to match latest flutter create template (#9103)
* Make IntelliJ metadata files consistent with the current flutter create template

* Add missing IJ files from current flutter create template

* Remove run config from layers as it requires running with -t

* Remove workspace.xml files per review feedback
2017-04-04 15:50:03 +02:00
Jakob Andersen
5541d71b11 Android: Set evaluationDependsOn for plugin subprojects. (#9179)
Gradle projects are evaluated in lexicographical order, and the plugin
projects are at the same level as the :app project, so if a plugin has
a name that comes before 'app' (like, for example, any name that starts
with a capital letter), the plugin project will be evaluated before
:app.

Since :app applies the Flutter Gradle plugin, which tries to
modify the dependencies of the plugin projects, we have a problem if the
plugin projects have already been evaluated. Adding
evaluationDependsOn(':app') to the plugin projects fixes this.

Updated example projects to the latest (plugin-enabled) Gradle build
files.

Also removed two unused imports in `pluginClass.java.tmpl`.
2017-04-04 13:03:06 +02:00
Chris Bracken
0ee3f57a10 Build Flutter app as a framework on iOS (#8971)
**THIS IS A BREAKING CHANGE.** See below for migration steps for
existing projects.

Previously, Flutter app code was built as a raw dylib on iOS.  Dynamic
libraries outside of a framework bundle are not supported on iOS, except
for the system Swift libraries provided by Xcode.

See:
https://developer.apple.com/library/content/technotes/tn2435/_index.html#//apple_ref/doc/uid/DTS40017543-CH1-TROUBLESHOOTING_BUNDLE_ERRORS-EMBEDDED__DYLIB_FILES

* Migrates Xcode build from app.dylib to App.framework
* Migrates flutter create template
* Migrates example projects

Migration steps for existing projects
=====================================

The following steps should be taken from the root of your Flutter
project:

1. Edit `ios/.gitignore`: add `/Flutter/App.framework` on a new line.
2. In the Xcode project navigator, remove `app.dylib` from the Flutter
   folder. Delete this file from the `ios/Flutter` directory in your project.
3. Run a build to generate `ios/Flutter/App.framework`. From the command
   line, run `flutter build ios`. If you have not configured app signing
   in Xcode, an alternative method is to open the simulator, then run
   `flutter run -d iP`.
4. In the Xcode project navigator, select the `Runner` project. In the
   project settings that are displayed in the main view, ensure that the
   `Runner` target is selected. You can verify this by exposing the
   sidebar using the [| ] icon in the upper-left corner of the main
   view.
5. Select the *General* tab in the project settings. Under the
   *Embedded Binaries* section, click '+' to add `App.framework`. In the
   sheet that drops down, click the *Add Other...* button. Navigate to
   the `ios/Flutter` directory and select `App.framework`. Click *Open*.
   In the sheet that drops down, select *Create folder references*, then
   click *Finish*.
6. In the project settings, verify that `App.framework` has been added to the
   *Embedded Binaries* and *Linked Frameworks and Libraries* lists.
7. In the Xcode project navigator, drag `App.framework` under the
   Flutter folder.
8. In the Xcode project navigator, select `Flutter` then from the
   *File* menu, select *Add Files to "Runner"...*. Navigate to the
   `ios/Flutter` directory, select `AppFrameworkInfo.plist` and click
   the *Add* button.
9. From the command line, in your project directory, run
   `flutter build clean`, then `flutter run`.

At this point your project should be fully migrated.
2017-03-22 17:41:49 -07:00
Chris Bracken
53daa55f93 Rollback example Xcode project changes (#8645)
* Revert "Update Hello World to latest iOS project template (#8634)"

This reverts commit 6dc6ed4e977fc9b80325fffbce6c12aadc9de82e.

* Revert "Update Gallery to latest iOS project template (#8637)"

This reverts commit 84c42aac0ed8298bfcdf88bcf8f97a94520fa321.

* Revert "Update Stocks to latest iOS project template (#8640)"

This reverts commit 90774c188ad6a519a192338c2c26e1f5737c8001.
2017-03-07 21:16:34 -08:00
Chris Bracken
6dc6ed4e97 Update Hello World to latest iOS project template (#8634) 2017-03-07 16:36:07 -08:00
Chris Bracken
a4125f3b0e Declare Xcode 8.3.x compatibility in project files (#8622)
Update templates and example Xcode project files to indicate they've
been tested for Xcode 8.3 compatibility.
2017-03-07 13:11:41 -08:00
Chris Bracken
3b4f6b1ae0 Update Example iOS icon assets for Xcode 8.2.x (#8616)
Gallery and stocks:
* Add 20x20 notification icons.
* Remove unused 76x76 (3x scale) icon.

Other examples: update JSON to Xcode 8.2.1 defaults

Fixes warnings for missing/unused icon assets in Xcode 8.2.x
2017-03-07 12:29:08 -08:00
Michael Thomsen
0533ffc020 Upgrade build tools to latest Android Studio default (#8461) 2017-02-28 18:25:28 +01:00
Michael Thomsen
1e1f7703cc Revert "Revert "Update /examples/ to new gradle based build flow (#8173)"" (#8291) 2017-02-21 12:22:26 +00:00
Yegor
d6527451a0 Revert "Update /examples/ to new gradle based build flow (#8173)" (#8177)
This reverts commit 8da4778e1d36111e39829d88edbe91dc041368f4.
2017-02-15 09:44:44 -08:00
Michael Thomsen
8da4778e1d Update /examples/ to new gradle based build flow (#8173)
* Update hello_world to new gradle based build flow

* Update flutter_gallery to gradle based build

* Align hello_services with new gradle based build

* Update platform_services to new gradle based build

* Upgrade stock to gradle based build
2017-02-15 17:13:10 +01:00
Michael Thomsen
8857fa080e Revert back IntelliJ .iml file to project root (#8139)
* Move .iml file back to project root directory

* Update .iml location in all examples
2017-02-14 18:15:26 +01:00
Chris Bracken
490a897382 Add quotes to example Xcode projects (#8035)
Required to support Flutter SDK paths with spaces.
2017-02-09 15:11:06 -08:00
Chris Bracken
708909fc6b Add Thin Binary step to example Xcode projects (#7933) 2017-02-07 12:25:51 -08:00
Chris Bracken
acc7d110c0 Subclass FlutterAppDelegate in iOS examples (#7847)
Subclassing FlutterAppDelegate is not required for real-world apps, but
it's what 'flutter create' generates, and applies the default behaviours
that most real-world apps will want.
2017-02-02 18:38:48 -08:00