Skip to content

Bundle --implicit-pubspec-resolution working aroundflutter_tools tech debt #157819

@matanlurey

Description

@matanlurey

In the arc of work around excluding dev_dependencies-based plugins from release-mode apps, we have run into multiple snags:

  1. Android Flutter apps still support the (legacy) .flutter-plugins format (deprecated since 2019)
  2. We need to be able to deduce what plugins should only be hooked up/built in non-production mode

For (1), we planned to announce a deprecation, give users a flag, and upgrade our own infrastructure:

For (2), we ran into #102983 and #73870; where the historic flutter_gen synthetic package is being now overridden by dart pub deps --json, which is being used to figure out which packages come (strictly) from dev_dependencies.

@jonahwilliams's suggestion is to change the flag (--no-emit-legacy-flutter-plugins) to --implicit-pubspec-resolution (name TBD).

The flag would imply:

  1. We no longer generate .flutter-plugins
  2. The flutter generate command is non-operable
  3. The flutter_gen package is output as source instead of as a synthetic package with package_config.json overrides

Background

In Q4, we're updating package:integration_test support to support more native UI interaction and assertions:

  1. Add and augment "native app/view" functionality
  2. Allow taking screenshot on mobile devices and emulators
  3. Add functionality for interacting with/dismissing permission dialogs
  4. Ensure there is sufficient extensibility for external customers

There are two major arcs of work being worked on right now:

Metadata

Metadata

Assignees

Labels

P1High-priority issues at the top of the work lista: pluginsSupport for writing, building, and running plugin packagesc: tech-debtTechnical debt, code quality, testing, etc.team-toolOwned by Flutter Tool teamtoolAffects the "flutter" command-line tool. See also t: labels.

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions