Commit Graph

38 Commits

Author SHA1 Message Date
Jackson Gardner
8f0e77696f
Set dart defines properly while in debug mode. (#152262)
Turns out just supporting the right value for `kDebugMode` was a lot simpler than I thought. Debug builds used to never go through the build system code path when using `flutter run`, but now that we have wasm this can occur with the run command.

This should address https://github.com/flutter/flutter/issues/148850
2024-07-25 22:00:50 +00:00
Jackson Gardner
31fc593724
Fix the output of the CDN test. (#148730)
This test was outputting the "success" string multiple times, which is probably causing the harness to kill the app halfway through its cycle. I suspect this is causing some of the flakiness we've seen of this test. Instead, we should just output the string at the very end of the test, right before the app is done.
2024-05-21 18:07:23 +00:00
Jackson Gardner
31209d04ff
flutter test --wasm support (#145347)
* Adds support for `flutter test --wasm`.
  * The test compilation flow is a bit different now, so that it supports compilers other than DDC. Specifically, when we run a set of unit tests, we generate a "switchboard" main function that imports each unit test and runs the main function for a specific one based off of a value set by the JS bootstrapping code. This way, there is one compile step and the same compile output is invoked for each unit test file.
* Also, removes all references to `dart:html` from flutter/flutter.
* Adds CI steps for running the framework unit tests with dart2wasm+skwasm
  * These steps are marked as `bringup: true`, so we don't know what kind of failures they will result in. Any failures they have will not block the tree at all yet while we're still in `bringup: true`. Once this PR is merged, I plan on looking at any failures and either fixing them or disabling them so we can get these CI steps running on presubmit.

This fixes https://github.com/flutter/flutter/issues/126692
2024-03-21 20:08:07 +00:00
Jackson Gardner
3c30e3cb20
Flutter Web Bootstrapping Improvements (#144434)
This makes several changes to flutter web app bootstrapping.
* The build now produces a `flutter_bootstrap.js` file.
  * By default, this file does the basic streamlined startup of a flutter app with the service worker settings and no user configuration.
  * The user can also put a `flutter_bootstrap.js` file in the `web` subdirectory in the project directory which can have whatever custom bootstrapping logic they'd like to write instead. This file is also templated, and can use any of the tokens  that can be used with the `index.html` (with the exception of `{{flutter_bootstrap_js}}`, see below).
* Introduced a few new templating tokens for `index.html`:
  * `{{flutter_js}}` => inlines the entirety of `flutter.js`
  * `{{flutter_service_worker_version}}` => replaced directly by the service worker version. This can be used instead of the script that sets the `serviceWorkerVersion` local variable that we used to have by default.
  * `{{flutter_bootstrap_js}}` => inlines the entirety of `flutter_bootstrap.js` (this token obviously doesn't apply to `flutter_bootstrap.js` itself).
* Changed `IndexHtml` to be called `WebTemplate` instead, since it is used for more than just the index.html now.
* We now emit warnings at build time for certain deprecated flows:
  * Warn on the old service worker version pattern (i.e.`(const|var) serviceWorkerVersion = null`) and recommends using `{{flutter_service_worker_version}}` token instead
  * Warn on use of `FlutterLoader.loadEntrypoint` and recommend using `FlutterLoader.load` instead
  * Warn on manual loading of `flutter_service_worker.js`.
* The default `index.html` on `flutter create` now uses an async script tag with `flutter_bootstrap.js`.
2024-03-12 22:41:26 +00:00
Harry Terkelsen
40bfb701dd
Add smoke test for gstatic resources (#123270) 2023-03-24 11:32:47 -07:00
Michael Goderbauer
b0f1714b7b
Make Flex,Row,Column const for real (#119673)
* Make Flex,Row,Column const for real

* dart fix --apply

* fix snippets

* fix integration test

* add comment
2023-02-02 19:33:57 +00:00
Jonah Williams
1d2e62b764
remove unsound mode web test (#118256) 2023-01-10 19:03:27 +00:00
Michael Goderbauer
fdd2d7d64a
Sync analysis_options.yaml & cleanups (#117327) 2022-12-20 14:15:39 -08:00
Michael Goderbauer
e27a19e3f8
Remove outdated ignores (#108924) 2022-08-03 23:37:05 +00:00
David Iglesias
b1b1ee9ca6
[web] Fix JS crash when FF blocks service workers. (#106072) 2022-06-17 02:22:07 +00:00
Dacian Florea
680bc17cde
[web] [fix] Cache resource data only if the fetching succeed (#103816) 2022-05-24 16:23:06 -07:00
Michael Goderbauer
ca2d60e8e2
Prepare more of dev for use_super_parameters (#101073) 2022-03-30 14:05:05 -07:00
Viren Khatri
671aa9e95e
complete migration of flutter repo to Object.hash* (#99505) 2022-03-04 12:56:21 -08:00
Dan Field
8e60c08bb4
Update stack_trace.dart (#85364) 2021-06-25 20:25:20 -07:00
Alexandre Ardhuin
58499c29ea
fix lints (#82246) 2021-05-11 11:39:10 +02:00
Michael Goderbauer
2bf42e7047
clean-up analysis_options.yaml's across the repository (#81986) 2021-05-10 23:44:02 -07:00
Abhishek Ghaskata
0de20a3311
MIgrate dev_integration_tests_web to null safety (#80625) 2021-04-21 13:39:04 -07:00
Yegor
e7953b3be4
[web] new service worker loading mechanism (#75535) 2021-02-11 09:16:21 -08:00
Jonah Williams
7ee910b0a8
[flutter_tools] ensure --dart-define can parse args with commas (#73798) 2021-01-15 13:51:32 -08:00
Jonah Williams
6fe800abd5
[null-safety] remove enable experiment flags (#69930) 2020-11-05 23:58:11 -08:00
Yegor
7a10b46ee0
Print errors in all build modes (#69046) 2020-10-26 15:57:02 -07:00
Jonah Williams
ddb01a0c81
[null-safety] add integration tests for sound null safety modes, add support for sound null safety in dart2js (#67171)
Add integration tests to verify that ddc and dart2js can be built and run in sound mode. Updates dart2js compilation to insert a language version comment into the generated entrypoint if necessary.

dart-lang/sdk#42253
2020-10-02 21:52:38 -07:00
Jonah Williams
d834673033
roll dart/engine to f27729e97b5a00c3a8d8d49edc7b998fa755b97a (#62368) 2020-07-27 17:51:31 -07:00
Jonah Williams
cb7770b3a5
[flutter_tools] add support for enable null safety asserts (#61114)
Enable null safety asserts for web debug mode. This induces runtime asserts at the boundaries between null safe and non-null safe libraries. Adds integration test that validates assertion error is thrown.

#61042
2020-07-15 09:54:39 -07:00
Jonah Williams
631087d83b
[flutter_tools] cache-bust in service worker (#56786) 2020-05-16 14:57:04 -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
e092dcfa22
[flutter_tools] Reland: fix multiple dart defines (#54973) 2020-04-16 10:56:49 -07:00
Jonah Williams
11ab2fa35c
Revert "[flutter_tools] fix multiple defines in flutter tooling, web (#54909)" (#54967)
This reverts commit b8bd09db21.
2020-04-16 08:33:16 -07:00
Jonah Williams
b8bd09db21
[flutter_tools] fix multiple defines in flutter tooling, web (#54909) 2020-04-15 22:25:32 -07:00
Jonah Williams
6884086e5c
[flutter_tools] Update to latest dwds APIs (#51004)
Update to latest dwds APIs, moving back to dwds driven hot restart and enabling future work on expression evaluation.
2020-03-17 17:29:53 -07:00
Jonah Williams
bbf913bc4c
[flutter_tools] resolve requests to web directory in debug mode (#51995) 2020-03-05 12:34:03 -08:00
Jonah Williams
9b4159c5ee
[flutter_tools] support run -d chrome test scripts (#51658) 2020-02-28 14:21:02 -08:00
Jonah Williams
67362ce5e0
[flutter_tools] fix debug stack traces (#50872) 2020-02-18 11:28:02 -08:00
Yegor
b34046903b
Fix stack trace parsing on non-debug builds; add e2e tests (#50652)
* Fix stack trace parsing on non-debug builds; add e2e tests
2020-02-13 18:34:08 -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
Konstantin Scheglov
3118ae19ff
Fix new prefer_const_constructors after analyzer fix. (#39917) 2019-09-05 19:59:24 -07:00
Jonah Williams
c91b657116
Codegen an entrypoint for flutter web applications (#33956) 2019-06-06 21:05:55 -07:00
Jonah Williams
9bc5656637
Wire dart2js through flutter tool, add compilation test (#27668) 2019-02-14 22:42:30 -08:00