Skip to content

default_package references now create an error if they reference a package that isn't a plugin implementation #152037

@Equartey

Description

@Equartey

Steps to reproduce

TLDR; try to add/compile an app with a plugin using default_package to endorse a package.

Repro steps

  1. Clone sample app https://github.com/Equartey/flutter_default_plugin_repro
  2. Checkout Flutter master channel, flutter channel master
    1. Error is present at least between >=3.24.0-1.0.pre.151 >3.24.0-1.0.pre.180
  3. Run $ flutter pub get.
  4. Error should be present. App will also fail to compile.
    1. Alternative: switch to Flutter stable channel and dependencies resolve along with the app compiling.

Expected results

Flutter should be able to resolve the endorsed package like in previous versions. Or if this is intended, documentation should be updated to reflect the new behavior.

Actual results

The following errors prevent the plugin from being fetched and/or the app from compiling.

Package amplify_secure_storage:linux references amplify_secure_storage_dart:linux as the default plugin, but the
package does not exist.
Ask the maintainers of amplify_secure_storage to either avoid referencing a default implementation via `platforms:
linux: default_package: amplify_secure_storage_dart` or create a plugin named amplify_secure_storage_dart.


Package amplify_secure_storage:windows references amplify_secure_storage_dart:windows as the default plugin, but the
package does not exist.
Ask the maintainers of amplify_secure_storage to either avoid referencing a default implementation via `platforms:
windows: default_package: amplify_secure_storage_dart` or create a plugin named amplify_secure_storage_dart.

Code sample

Sample Repo

Screenshots or Video

Screenshots / Video demonstration

[Upload media here]

Logs

Logs

https://pastebin.com/fj7KjACU

Flutter Doctor output

Doctor output
[✓] Flutter (Channel master, 3.24.0-1.0.pre.180, on macOS 14.5 23F79 darwin-arm64, locale en-US)
    • Flutter version 3.24.0-1.0.pre.180 on channel master at /Users/quaelija/fvm/versions/stable
    • Upstream repository https://github.com/flutter/flutter.git
    • Framework revision 36dac294e9 (25 hours ago), 2024-07-18 12:07:26 -0400
    • Engine revision d58ba74250
    • Dart version 3.6.0 (build 3.6.0-54.0.dev)
    • DevTools version 2.37.1

[✓] Android toolchain - develop for Android devices (Android SDK version 34.0.0)
    • Android SDK at /Users/quaelija/Library/Android/sdk
    • Platform android-34, build-tools 34.0.0
    • ANDROID_HOME = /Users/quaelija/Library/Android/sdk
    • Java binary at: /Applications/Android Studio.app/Contents/jbr/Contents/Home/bin/java
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)
    • All Android licenses accepted.

[✓] Xcode - develop for iOS and macOS (Xcode 15.4)
    • Xcode at /Applications/Xcode.app/Contents/Developer
    • Build 15F31d
    • CocoaPods version 1.15.2

[✓] Chrome - develop for the web
    • Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome

[✓] Android Studio (version 2023.1)
    • Android Studio at /Applications/Android Studio.app/Contents
    • Flutter plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/9212-flutter
    • Dart plugin can be installed from:
      🔨 https://plugins.jetbrains.com/plugin/6351-dart
    • Java version OpenJDK Runtime Environment (build 17.0.7+0-17.0.7b1000.6-10550314)

[✓] VS Code (version 1.91.1)
    • VS Code at /Applications/Visual Studio Code.app/Contents
    • Flutter extension version 3.92.0

[✓] Connected device (7 available)
    • Android SDK built for arm64 (mobile) • emulator-5554                        • android-arm64  • Android 7.1.1
      (API 25) (emulator)
    • iphone (mobile)                      • 00008120-0014189C017BC01E            • ios            • iOS 17.5.1 21F90
    • iPhone 15 Pro (mobile)               • 9769DBEE-D114-4A35-B4BF-360F06E79C83 • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-17-4 (simulator)
    • iPhone 15 Pro Max (mobile)           • B66B1944-2468-4C2E-A646-67365BBDA3DC • ios            •
      com.apple.CoreSimulator.SimRuntime.iOS-17-0 (simulator)
    • macOS (desktop)                      • macos                                • darwin-arm64   • macOS 14.5 23F79
      darwin-arm64
    • Mac Designed for iPad (desktop)      • mac-designed-for-ipad                • darwin         • macOS 14.5 23F79
      darwin-arm64
    • Chrome (web)                         • chrome                               • web-javascript • Google Chrome
      126.0.6478.183

[✓] Network resources
    • All expected network resources are available.

• No issues found!

Metadata

Metadata

Assignees

No one assigned

    Labels

    P2Important issues not at the top of the work lista: pluginsSupport for writing, building, and running plugin packagesc: regressionIt was better in the past than it is nowteam-toolOwned by Flutter Tool teamtoolAffects the "flutter" command-line tool. See also t: labels.triaged-toolTriaged by Flutter Tool team

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions