Commit Graph

199 Commits

Author SHA1 Message Date
Michael Goderbauer
38630b6bd1
Remove unnecessary null checks in flutter_tool (#118857)
* dart fix --apply

* manual fixes

* fix after merge conflicts

* review
2023-01-23 21:43:08 +00:00
Jackson Gardner
9f2c5d8e21
Support flutter build web --wasm (#117075)
* Work in progress.

* Some fixes to the command line.

* Bootstrapping works.

* Change kickoff order to maximize concurrency.

* Fix analyzer errors and formatting issues.

* Fix doc comment.

* Added unit tests for some of the web targets.

* Format issue.

* Add an integration test that builds an app to wasm.

* Add a todo for depfiles.

* Formatting.

* Apparently the license header needs to say 2014.

* `file://` URIs confuse dart2wasm on Windows. Just use absolute paths.

* Update unit tests to match new path passing.

* Have a distinct build directory for wasm, and fixes for some upstream changes.
2022-12-19 20:09:02 +00:00
Jackson Gardner
db1c3e208d
Platform binaries reland (#115502)
You can now specify a --local-web-sdk flag to point to a wasm_release folder. This will make it so that only artifacts that pertain to the web sdk are overridden to point to the wasm_release folder. Other artifacts (such as impellerc) will pull from the cache, or from the --local-engine path if that is specified.

This also uses precompiled platform kernel files for both ddc and dart2js
2022-12-02 14:13:40 -08:00
Jonah Williams
8230ef5e85
Revert "[web] Add --local-web-sdk flag and use precompiled platform kernels for dart2js and ddc (#114639)" (#115242)
This reverts commit 0e9ee3679c.
2022-11-13 20:23:26 +00:00
Jackson Gardner
0e9ee3679c
[web] Add --local-web-sdk flag and use precompiled platform kernels for dart2js and ddc (#114639)
* Dart2JS build step looks for compiled platform binaries.

* Use new locations of platform binaries.

* Added --local-web-sdk command line flag.

* Need to use the matching frontend server when doing ddc stuff.

* Update packages/flutter_tools/lib/src/test/web_test_compiler.dart

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>

* Update packages/flutter_tools/lib/src/runner/flutter_command_runner.dart

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>

* Formatting issues.

* Need to use URI format for platform dill.

* Fix resident runner tests.

* Fix analysis issue.

* Fix and add unit tests.

* Add some useful comments.

* Refine doc comments for flags.

Co-authored-by: Mouad Debbar <mouad.debbar@gmail.com>
2022-11-12 01:31:10 +00:00
blendthink
229b39eda5
[flutter_tools] Fix so that the value set by --dart-define-from-file can be passed to Gradle (#114297)
* Add dartDefineConfigJsonMap to the checklist

* Fix typo

* Align formatting with other code

* Fix toGradleConfig method
2022-11-11 18:48:01 +00:00
Jenn Magder
35afe1bdac
Stop embedding bitcode for iOS in tool (#112831) 2022-10-04 01:41:23 +00:00
haizhu
cbfe5a5226
[tool] Proposal to support dart define config from a json file (#108098) 2022-09-26 21:47:27 +00:00
Jenn Magder
5f5d4802fe
Support single arch local engines for 'build macos-framework' and 'ios-framework' (#110564) 2022-08-30 17:44:14 +00:00
Zachary Anderson
c6ec84e978
[flutter_tools] Pull more arm64 artifacts on Apple Silicon (#110291) 2022-08-29 10:33:24 -07:00
eggfly
cf309b61b4
Fix some typos (#110077) 2022-08-24 21:56:09 +08:00
Jenn Magder
7f1a8f7948
Add usage event when iOS app is archived (#108643) 2022-07-29 22:44:06 +00:00
Loïc Sharma
6026eea9a4
[Windows] Flow version information to the build output (#106145)
Previously developers had to edit their `Runner.rc` file to update their executable's version information. Now, version information will automatically be set from `flutter build`'s arguments or the `pubspec.yaml` file for new projects. 

Addresses https://github.com/flutter/flutter/issues/73652
2022-06-27 10:45:56 -07:00
Chris Bracken
f2116cb0b2
[tool] Fix BuildInfo.packagesPath doc comment (#103785)
Until recently, BuildInfo.packagesPath defaulted to `.packages` however,
the .packages file has been deprecated [1] and is being removed. In
https://github.com/flutter/flutter/pull/99677 the default was changed to
`.dart_tool/package_config.json` but the doc comment was accidentally
updated to `.dart_tool/packages`. This corrects it to the true default
value.

1: https://github.com/dart-lang/sdk/issues/48272

Spotted in the midst of some related cleanup relating to
https://github.com/flutter/flutter/issues/103775
2022-05-14 10:28:35 -07:00
Jonah Williams
944fcda67f
[flutter_tools] remove UWP tooling (#102174) 2022-04-26 11:19:07 -07:00
Jenn Magder
d4bfb01336
Do not build for iOS armv7 (#97341) 2022-04-12 14:44:09 -07:00
Yang Chao
343713727a
Enable track widget creation when generating Generated.xcconfig (#101123) 2022-04-11 14:29:11 -07:00
Janko Djuric
78ae72b0b2
[flutter_tools] Add --build-number and --build-name support to web and linux (#100377) 2022-04-10 11:42:39 -07:00
Sigurd Meldgaard
66ed64be4f
Migrate .packages -> package_config.json (#99677) 2022-03-30 13:56:03 +02:00
Chris Bracken
fd3c34c9d4
[macOS] Use arm64 snapshot in arm64 App.framework (#100504)
Previously, https://github.com/flutter/flutter/pull/100271 enabled
building universal macOS binaries by default, but included a bug causing
the arm64 App.framework to be built such that the TEXT section
containing the app instructions built by gen_snapshot incorrectly
contained x86_64 instructions rather than arm64 instructions.

When building macOS (and iOS) apps, Flutter builds them in three
components:
* The Runner application: built by Xcode
* The bundled App.framework: built from assembly code generated by
  gen_snapshot from the application's Dart sources.
* The bundled FlutterMacOS.framework: built as part of the engine build
  and packaged by copying the distributed binary framework from our
  artifacts cache.

Building App.framework consists of the following steps:
* For each architecture, invoke gen_snapshot to generate
  architecture-specific assembly code, which is then built to object
  code and linked into an architecture-specific App.framework.
* Use the `lipo` tool to generate a universal binary that includes both
  x86_64 and arm64 architectures.

Previously, we were building architecture specific App.framework
binaries. However, for all architectures we were (mistakenly) invoking
the general `gen_snapshot` tool (which emitted x64 instructions, and
which is now deprecated) instead of the architecture-specific
`gen_snapshot_x86` and `gen_snapshot_arm64` builds which emit
instructions for the correct architecture.

This change introduces a small refactoring, which is to split the
`getNameForDarwinArch` function into two functions:
* `getDartNameForDarwinArch`: the name for the specified architecture as
  used in the Dart SDK, for example as the suffix of `gen_snapshot`.
* `getNameForDarwinArch`: the name for the specified architecture
  as used in Apple tools, for example as an argument to `lipo`. For
  consistency, and to match developer expectations on Darwin platforms,
  this is also the name used in Flutter's build outputs.

Issue: https://github.com/flutter/flutter/issues/100348
2022-03-21 20:36:57 -07:00
Lau Ching Jun
dbed10bb59
Pass 'assume-initialize-from-dill-up-to-date' flag to the frontend server (#99791) 2022-03-09 00:30:17 -08:00
Michael Tamm
1fcb076eb7
[flutter_tools] Fix bundle file not found when flavor contains upperc… (#92660) 2022-02-04 11:55:20 -08:00
Greg Spencer
52ae102f18
Adds tool warning log level and command line options to fail on warning/error output (#92031) 2021-11-10 16:13:04 -08:00
Jenn Magder
9e88fe328e
Remove globals_null_migrated.dart, move into globals.dart (#92861) 2021-11-01 17:18:03 -07:00
Gary Qian
0407aa4480
Reland "Add multidex flag and automatic multidex support (#90944)" (#92049) 2021-10-19 02:20:39 -07:00
Zachary Anderson
a9c31eca48
Revert "Add multidex flag and automatic multidex support (#90944)" (#91791)
This reverts commit 1d9edde079.
2021-10-13 23:09:50 -07:00
Gary Qian
1d9edde079
Add multidex flag and automatic multidex support (#90944) 2021-10-13 17:48:04 -07:00
Ian Hickson
7b01346c5c
Enable no_default_cases lint (#91530) 2021-10-11 10:23:04 -07:00
Jenn Magder
afbfc1f33a
Migrate assets, common, icon_tree_shaker to null safety (#91309) 2021-10-06 15:16:33 -07:00
Jonah Williams
fa0782b696
reassign jonahwilliams todos (#88707) 2021-08-23 12:27:07 -07:00
Jenn Magder
f76b292626
Support iOS arm64 simulator (#85642) 2021-06-30 14:31:04 -07:00
Zachary Anderson
407916d44f
Revert "Support iOS arm64 simulator (#85059)" (#85641)
This reverts commit a1020512ef.
2021-06-30 12:44:49 -07:00
Jenn Magder
a1020512ef
Support iOS arm64 simulator (#85059) 2021-06-30 11:56:17 -07:00
Alexandre Ardhuin
34059eec2c
enable lint prefer_interpolation_to_compose_strings (#83407) 2021-06-01 11:14:06 -07:00
Lau Ching Jun
a9d6131df8
Allow passing --initialize-from-dill to flutter run and flutter attach (#83454)
To specify the dill file that will be used to initialize the resident
compiler, instead of the default cached version.
2021-05-26 23:06:38 -07:00
Jenn Magder
cbc7ce0884
Clean up null assumptions for Xcode and CocoaPods classes (#83442) 2021-05-26 16:04:03 -07:00
Jonah Williams
24bfc46d89
[flutter_tools] allow passing properties directly to gradle (#82941) 2021-05-20 16:19:03 -07:00
Jenn Magder
783e1dd22c
Standardize build system environment defines derived from build info (#81879) 2021-05-07 17:04:02 -07:00
Matej Knopp
f6726b425d
Add support for DarwinArchs when assembling macOS App.framework (#81243) 2021-04-28 11:33:36 -07:00
Jonah Williams
be2c68c85c
[flutter_tools] cache for UWP artifacts (#80069) 2021-04-09 10:59:01 -07:00
Jonah Williams
3bec9c2a57
[flutter_tools] allow winuwp build to setup generated Cmake (#79676) 2021-04-02 22:44:02 -07:00
Jenn Magder
66af44c9fe
Migrate build_info to null safety (#79469) 2021-04-01 10:22:37 -07:00
Chris Bracken
3e7e06512c
Correct misspellings throughout the codebase (#79500) 2021-04-01 10:04:03 -07:00
Jenn Magder
8ddc27e607
Split globals.dart into null sound and unsound libraries (#79016) 2021-03-31 16:55:20 -07:00
Jenn Magder
d165ea5c42
Migrate os to null safety (#78901) 2021-03-23 17:28:09 -07:00
Jonah Williams
acda272cf2
[flutter_tools] add tool feature/scaffold for UWP (#77399) 2021-03-08 08:09:04 -08:00
Hidenori Matsubayashi
4cc0ab2d19
[flutter_tools] Add ARM64 Linux host and cross-building option support (#61221) 2021-02-12 14:25:30 -08: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
Emmanuel Garcia
8dd0de7f58
Relands: Migrate template to Gradle 6.7 and AGP 4.1.0 (#71446) 2020-12-01 19:01:09 -08:00