mirror of
https://github.com/flutter/packages.git
synced 2025-07-01 15:23:25 +08:00
[ci] Add Wasm compilation to all_packages web app. (#6981)
Adds a "--wasm" mode to create and build "all_packages" app to verify all our plugins compile with Wasm. Except not all do for now, so this also adds a "exclude_all_packages_app_wasm.yaml" file that allows us to remove the packages that aren't fully compatible yet. ## Issues * Fixes: https://github.com/flutter/flutter/issues/150748 * Related: https://github.com/flutter/flutter/issues/117022 * Related: https://github.com/flutter/flutter/issues/148624
This commit is contained in:
@ -4,5 +4,16 @@
|
||||
# found in the LICENSE file.
|
||||
set -e
|
||||
|
||||
# The base exclusion file for all_packages app.
|
||||
exclusions=("script/configs/exclude_all_packages_app.yaml")
|
||||
|
||||
# Add a wasm-specific exclusion file if "--wasm" is specified.
|
||||
if [[ "$1" == "--wasm" ]]; then
|
||||
exclusions+=",script/configs/exclude_all_packages_app_wasm.yaml"
|
||||
fi
|
||||
|
||||
# Delete ./all_packages if it exists already
|
||||
rm -rf ./all_packages
|
||||
|
||||
dart ./script/tool/bin/flutter_plugin_tools.dart create-all-packages-app \
|
||||
--output-dir=. --exclude script/configs/exclude_all_packages_app.yaml
|
||||
--output-dir=. --exclude "$exclusions"
|
||||
|
@ -10,3 +10,10 @@ tasks:
|
||||
- name: build all_packages app for Web release
|
||||
script: .ci/scripts/build_all_packages_app.sh
|
||||
args: ["web", "release"]
|
||||
- name: (Wasm) create all_packages app
|
||||
script: .ci/scripts/create_all_packages_app.sh
|
||||
args: ["--wasm"]
|
||||
infra_step: true # Note infra steps failing prevents "always" from running.
|
||||
- name: (Wasm) build all_packages app for Web release
|
||||
script: .ci/scripts/build_all_packages_app.sh
|
||||
args: ["web", "release", "--wasm"]
|
||||
|
@ -9,5 +9,5 @@
|
||||
# NOTE: camera_android is semi-excluded via special casing in the repo tools.
|
||||
# See create_all_packages_app_command.dart.
|
||||
|
||||
# This is a permament entry, as it should never be a direct app dependency.
|
||||
# This is a permanent entry, as it should never be a direct app dependency.
|
||||
- plugin_platform_interface
|
||||
|
15
script/configs/exclude_all_packages_app_wasm.yaml
Normal file
15
script/configs/exclude_all_packages_app_wasm.yaml
Normal file
@ -0,0 +1,15 @@
|
||||
# This list should be kept as short as possible, and things should remain here
|
||||
# only as long as necessary, since in general the goal is for all of the latest
|
||||
# versions of packages to be mutually compatible, and compilable with Wasm.
|
||||
|
||||
# This is only used for wasm compilation. Once all packages in the repo have
|
||||
# been migrated, remove this file and use `exclude_all_packages_app.yaml` only.
|
||||
|
||||
# Packages that aren't migrated yet.
|
||||
# https://github.com/flutter/flutter/issues/117022
|
||||
- camera
|
||||
- webview_flutter
|
||||
|
||||
# Dependencies are not migrated yet
|
||||
# https://github.com/flutter/flutter/issues/148624
|
||||
- google_maps_flutter
|
Reference in New Issue
Block a user