55 Commits

Author SHA1 Message Date
Jenn Magder
8ddc27e607
Split globals.dart into null sound and unsound libraries (#79016) 2021-03-31 16:55:20 -07:00
Jonah Williams
44d5950d27
[flutter_tools] switch dart defines to base64 to avoid windows control characters (#75027)
= gets escaped into %3D which seems to be tripping up cmake on windows since % is a control character. Switch to base64 encoding, since this does not have % nor , in the output character set.

This change is not trivially cherry pickable, and isn't tested on windows aside from my local, manual tests due to the planned CI work not being complete yet.

Fixes #75017
Fixes #74705
2021-02-02 09:10:48 -08:00
Jonah Williams
74bd7b6f6d
[flutter_tools] opt all flutter tool libraries and tests out of null safety. (#74832)
* opt out the flutter tool

* oops EOF

* fix import

* Update tool_backend.dart

* Update daemon_client.dart

* fix more
2021-01-27 15:17:53 -08:00
Jenn Magder
d6857bc026
Build/copy macOS frameworks to built products instead of ephemeral directory (#72378) 2020-12-17 14:47:05 -08:00
Jonah Williams
cb67513f29
[flutter_tools] Reland: simplify pub cache logic (#67589)
There have been some more additional reports of a missing 'package:characters' import after upgrading flutter. This has me concerned that our pub caching logic is incorrect. Instead of the tool attempting to guess when pub should be run, always delegate to pub.

Also takes an opportunity to fix the kernel snapshot depending on the .packages or package_config. Due to the generated: date field this causes extra rebuilds. Instead when pub get is run, write out an additional file with just the package contents and version.

Fixes #66777
Fixes #65723
2020-10-23 10:00:56 -07:00
Jonah Williams
059de1537e
[flutter_tools] support code size tooling on iOS, linux, windows, macOS, and Android on Windows (#63610)
Adds support for size analysis on iOS, macOS, linux, and Windows - using an uncompressed directory based approach. The output format is not currently specified.

Adds support for size analysis on android on windows, switching to package:archive

Updates the console format to display as a tree, allowing longer paths. Increases the number of dart libraries shown (to avoid only ever printing the flutter/dart:ui libraries, which dominate the size)
2020-08-25 10:00:24 -07:00
Jonah Williams
14992c5951
Revert "[flutter_tools] separate target platform, host platform, and architecutre (#60119)" (#60147)
This reverts commit 30d97d89e0f69f6ba33ad3bf381bcebf405f41d1.
2020-06-23 17:19:29 -07:00
Jonah Williams
30d97d89e0
[flutter_tools] separate target platform, host platform, and architecutre (#60119)
separate target platform, host platform, and architecture
2020-06-23 13:51:17 -07:00
Jonah Williams
ec4049e781
[flutter_tools] support bundle-sksl-path on all desktop and mobile targets (#58879)
Adds support for --bundle-sksl-path to windows, linux, macOS, and iOS.

Fixes #53115
2020-06-09 11:15:52 -07:00
Jonah Williams
206ccc3632
[flutter_tools] rename library to be less absurd (#58891)
Instead of targets/dart.dart -> targets/common.dart
2020-06-08 11:19:53 -07:00
Jonah Williams
b1d75fc99d
[flutter_tools] add flag for sound-null-safety, unify with experiments (#58533)
Also combines experiments into extraGenSnapshot/ExtraFrontEndOptions. Allows providing --no-sound-null-safety to allow out of order migration and running.
2020-06-03 21:02:07 -07:00
Jonah Williams
368da5bb59
[flutter_tools] support bundling SkSL shaders in flutter build apk/appbundle (#56059)
Support bundling SkSL shaders into an android APK or appbundle via the --bundle-sksl-path command line options. If provided, these are validated for platform engine revision and then placed in flutter_assets/io.flutter.shaders.json
2020-04-30 13:39:08 -07:00
Jonah Williams
c8164dad80
[flutter_tools] migrate windows to assemble (#55187) 2020-04-22 12:26:49 -07:00
Jonah Williams
0b3f5cfcc0
[flutter_tools] initial support for enable experiment, run, apk, ios, macos (#54617) 2020-04-21 20:39:36 -07:00
Jonah Williams
cb8bafb38d
[flutter_tools] surgically remove outputs from shared directory (#53962) 2020-04-08 19:09:59 -07:00
Jonah Williams
58acf4e7b0
Revert "[flutter_tools] surgically remove outputs from shared directory (#53773)" (#53956)
This reverts commit 8a3bede1d33594be192cb0e01a7de634c997bb80.
2020-04-03 14:22:37 -07:00
Jonah Williams
8a3bede1d3
[flutter_tools] surgically remove outputs from shared directory (#53773) 2020-04-03 14:11:01 -07:00
Jonah Williams
7bf74c3460
[flutter_tools] handle unsafe build outputs (#53601) 2020-03-31 11:01:01 -07:00
Jonah Williams
b21e780aee
[flutter_tools] refactor AotBuilder, removing globals and duplicated kernel compilation (#52896)
Reland of #52091
2020-03-19 14:52:42 -07:00
Jonah Williams
9391e480b2
Revert "[flutter_tools] refactor GenSnapshot and AotBuilder (#52091)" (#52893)
This reverts commit f65421aaca381f55bee97dd0e0292b553aeaffb7.
2020-03-19 10:16:20 -07:00
Jonah Williams
f65421aaca
[flutter_tools] refactor GenSnapshot and AotBuilder (#52091)
Remove dependency injection from GenSnapshot and AotBuilder and update tests to use FakeProcessManager
2020-03-19 09:36:38 -07:00
Zachary Anderson
6c408a0567
Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#52021)
* Reland: [flutter_tool] Where possible, catch only subtypes of Exception

* Add armv7f to getIOSArchForName
2020-03-06 10:22:12 -08:00
Jenn Magder
cbbb7ec5a7
Revert "Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51774)" (#51960)
This reverts commit 57c6721cd54b6747ef3444cfc6d06d4c33e310ea.
2020-03-04 12:40:15 -08:00
Flutter GitHub Bot
57c6721cd5
Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51774) 2020-03-04 11:41:02 -08:00
Zachary Anderson
b32ee2f15c
Revert "Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51567)" (#51616)
This reverts commit 9de7787f258870e60a7c4127883e8f7f1af5822c.
2020-02-27 22:57:13 -08:00
Zachary Anderson
9de7787f25
Reland: [flutter_tool] Where possible, catch only subtypes of Exception (#51567) 2020-02-27 22:46:23 -08:00
Jonah Williams
08d079f6c2
[flutter_tools] wire up complete support for Dart obfuscation (#50509) 2020-02-27 08:58:33 -08:00
Zachary Anderson
483f49962c
Revert "[flutter_tool] Where possible, catch only subtypes of Exception (#51440)" (#51539)
This reverts commit f1cd47ef5cd9a365e968a83b84f4e893595accc2.
2020-02-26 23:42:19 -08:00
Zachary Anderson
f1cd47ef5c
[flutter_tool] Where possible, catch only subtypes of Exception (#51440) 2020-02-26 21:45:02 -08:00
Jonah Williams
9431229e4c
[flutter_tools] remove globals from depfile usage (#50710) 2020-02-13 13:59:40 -08:00
Jonah Williams
da4b5d68c4
[flutter_tools] support --split-debug-info option in android builds (#49650) 2020-02-05 17:45:24 -08:00
Dan Field
4b8efad99b
Font subset in the tool (#49737) 2020-02-04 20:34:24 -08:00
Jenn Magder
91f7902aad Move Xcode context fetch to global.dart (#49458) 2020-01-25 11:18:02 -08: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
Jonah Williams
58438fca3f Provide specific field to accept depfiles in target class (#44481)
* add depfile slot to Target class

* Update source.dart

* Update source.dart
2019-11-18 14:09:40 -08:00
Jonah Williams
0f6c093d68
Remove Source.behavior, fix bug in depfile invalidation (#43945)
* remove Source.behavior, fix bug in depfile invalidation

* more cleanup of assets

* Add skip

* address comments

* Update build_system.dart
2019-11-04 16:37:43 -08:00
Jonah Williams
b2f38396f4
Reland: Switch to assemble API for dart2js (#41659)
* Stop using build_runner for dart2js

* fixes to yield when computing hashes and to imports

* add missing await

* Update filecache_test.dart

* Fix paths in filecache test

* use file uri for import

* add test cases and configurable override

* remove test dep

* fix filepaths for windows

* test no longer failing

* fix paths for test cases

* fix typo

* address comments

* make a constant

* make filehash async and use constant

* fix silly logic error
2019-10-01 14:03:42 -07:00
Jonah Williams
06a6fdbf23
Revert "Switch to assemble API for dart2js (#41447)" (#41658) 2019-09-30 18:35:01 -07:00
Jonah Williams
ccc3dd968c
Switch to assemble API for dart2js (#41447) 2019-09-30 18:26:28 -07:00
Alexandre Ardhuin
89427d672d
add missing trailing commas in flutter_tools (#40968) 2019-09-24 08:06:09 +02:00
Jonah Williams
270878fc50
fix copy command and remove resolve sync for macOS assemble (#40294) 2019-09-11 20:29:27 -07:00
Jonah Williams
f877c97b3b
Use persisted build information to automatically clean old outputs in assemble (#39654) 2019-09-10 09:57:47 -07:00
Jonah Williams
dd7694256e
remove input files argument to target (#39769) 2019-09-05 09:56:37 -07:00
Jonah Williams
af851ab6bc
Revert "remove input files argument to target (#39701)" (#39768)
This reverts commit 5e7beaf7b8b4736f668f2c804747ebfc75248fcd.
2019-09-03 12:47:33 -07:00
Jonah Williams
5e7beaf7b8
remove input files argument to target (#39701) 2019-09-03 12:46:08 -07:00
stuartmorgan
2e058142d2
Fix macOS App.framework version symlink (#39702)
The Current->A symlink in a framework shouldn't have a trailing slash;
some versions of codesigning consider the version with a trailing slash
unsignable.
2019-09-02 16:26:15 -07:00
Jonah Williams
55a1ba761d
Use output dir instead of specific paths in assemble rules (#39274) 2019-08-27 22:52:51 -07:00
Jonah Williams
b2d19d2af5
Add support for macOS release/profile mode (3 of 3) (#38909) 2019-08-23 08:46:24 -07:00
Jonah Williams
2504a416bb
Create correctly structured framework for macOS (#38748) 2019-08-20 10:49:15 -07:00