Skip to main content

flutter_flavor_overrides 1.0.0 copy "flutter_flavor_overrides: ^1.0.0" to clipboard
flutter_flavor_overrides: ^1.0.0 copied to clipboard

CLI that swaps dependencies per Flutter flavor by generating pubspec_overrides.yaml, so a plugin's native code stays out of flavors that don't need it.

example/README.md

Example #

An app depends on a plugin that prod builds must not contain. A no-op stub with the same package name lives next to the app:

my_app/
  pubspec.yaml
  flavor_overrides.yaml
stubs/
  some_plugin/        # name: some_plugin, same Dart API, no `flutter: plugin:` section
    pubspec.yaml
    lib/some_plugin.dart

my_app/pubspec.yaml:

name: my_app
environment:
  sdk: ^3.4.0
dependencies:
  flutter:
    sdk: flutter
  some_plugin: 1.2.0

my_app/flavor_overrides.yaml, next to the app's pubspec (package, then flavor, then any dependency spec; paths relative to this file):

some_plugin:
  prod:
    path: ../stubs/some_plugin

stubs/some_plugin/pubspec.yaml:

name: some_plugin
environment:
  sdk: ^3.4.0
dependencies:
  flutter:
    sdk: flutter
# No `flutter: plugin:` section: nothing native gets registered or built.

Build prod without the plugin's native code, then go back to the real plugin:

$ dart pub global activate flutter_flavor_overrides
$ cd my_app
$ flutter_flavor_overrides --flavor prod
wrote pubspec_overrides.yaml (some_plugin)
$ flutter pub get
$ flutter build apk --release --flavor prod

$ flutter_flavor_overrides --flavor dev
removed pubspec_overrides.yaml
$ flutter pub get

The generated pubspec_overrides.yaml (add it to .gitignore):

# flutter_flavor_overrides: some_plugin
dependency_overrides:
  some_plugin:
    path: ../stubs/some_plugin
3
likes
160
points
96
downloads

Documentation

API reference

Publisher

verified publishermavoryl.com

Weekly Downloads

CLI that swaps dependencies per Flutter flavor by generating pubspec_overrides.yaml, so a plugin's native code stays out of flavors that don't need it.

Repository (GitHub)
View/report issues

Topics

#flutter #flavors #cli #dependencies #pubspec

License

MIT (license)

Dependencies

args, glob, path, yaml, yaml_edit

More

Packages that depend on flutter_flavor_overrides