Flutterfire: 🐛 [firebase_messaging] incompatible with flutter_driver

Created on 17 Sep 2020  ·  5Comments  ·  Source: FirebaseExtended/flutterfire

Bug report

Describe the bug

The current Dart SDK version is 2.10.0-110.3.beta.                      

Because every version of flutter_driver from sdk depends on platform 3.0.0-nullsafety.1 and firebase_messaging >=0.2.0 depends on platform ^2.0.0, flutter_driver from sdk is incompatible with firebase_messaging >=0.2.0.
And because firebase_messaging <0.2.0 requires SDK version >=1.8.0 <2.0.0, flutter_driver from sdk is incompatible with firebase_messaging.
So, because delern_flutter depends on both firebase_messaging any and flutter_driver any from sdk, version solving failed.
Running "flutter pub upgrade" in flutter...                             
pub upgrade failed (1; So, because delern_flutter depends on both firebase_messaging any and flutter_driver any from sdk, version solving failed.)

Steps to reproduce

dependencies:
  firebase_messaging: any
$ flutter channel beta
$ flutter upgrade
$ flutter packages upgrade

Expected behavior

Packages are upgraded / got.

Flutter doctor

Run flutter doctor and paste the output below:

Click To Expand

$ flutter doctor
Doctor summary (to see all details, run flutter doctor -v):
[✓] Flutter (Channel beta, 1.22.0-12.1.pre, on Linux, locale en_US.UTF-8)
[✓] Android toolchain - develop for Android devices (Android SDK version 29.0.3)
[!] Android Studio (version 3.6)
    ✗ Flutter plugin not installed; this adds Flutter specific functionality.
    ✗ Dart plugin not installed; this adds Dart specific functionality.
[✓] VS Code (version 1.48.0)
[✓] Connected device (1 available)

! Doctor found issues in 1 category.

bug

All 5 comments

Hi @dotdoom
This is not a bug with firebase_messaging, you have a bunch of packages causing version conflict, this is not related to Flutterfire itself

You can read about this here https://iiro.dev/2018/08/28/resolving-dart-package-version-conflicts/ and here https://dart.dev/tools/pub/dependencies#dependency-overrides

Updated
flutter_driver and firebase_messaging are incompatabile
https://github.com/FirebaseExtended/flutterfire/issues/3312


flutter doctor -v

```bash

[✓] Flutter (Channel beta, 1.21.0-9.2.pre, on Microsoft Windows [Version 10.0.19041.508], locale en-US)
• Flutter version 1.21.0-9.2.pre at C:\Codeflutter_beta
• Framework revision 81a45ec2e5 (3 weeks ago), 2020-08-27 14:14:33 -0700
• Engine revision 20a9531835
• Dart version 2.10.0 (build 2.10.0-7.3.beta)

[✓] Android toolchain - develop for Android devices (Android SDK version 30.0.2)
• Android SDK at C:\Code\sdk
• Platform android-30, build-tools 30.0.2
• ANDROID_HOME = C:\Code\sdk
• Java binary at: C:\Code\android-studio\jre\bin\java
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)
• All Android licenses accepted.

[✓] Chrome - develop for the web
• Chrome at C:\Program Files (x86)\Google\Chrome\Application\chrome.exe

[✓] Android Studio (version 4.0)
• Android Studio at C:\Code\android-studio
• Flutter plugin version 49.0.2
• Dart plugin version 193.7547
• Java version OpenJDK Runtime Environment (build 1.8.0_242-release-1644-b01)

[✓] VS Code (version 1.49.1)
• VS Code at C:\Users\Taha\AppData\Local\Programs\Microsoft VS Code
• Flutter extension version 3.14.1

[✓] Connected device (3 available)
• Android SDK built for x86 (mobile) • emulator-5554 • android-x86 • Android 10 (API 29) (emulator)
• Web Server (web) • web-server • web-javascript • Flutter Tools
• Chrome (web) • chrome • web-javascript • Google Chrome 85.0.4183.102

• No issues found!
• ```

Closing, as this isn't an issue with flutterfire itself. If you disagree, please write in the comments and I will reopen it.
Thank you

Right, "a bunch of packages" is in fact flutter_driver.
So here's full steps to reproduce:

$ flutter create fmtest

# Edit fmtest/pubspec.yaml:
#  - add firebase_messaging: any to "dependencies"
#  - add flutter_driver and test per https://flutter.dev/docs/cookbook/testing/integration/introduction

$ flutter packages get
The current Dart SDK version is 2.10.0-110.3.beta.                      

Because every version of flutter_driver from sdk depends on platform 3.0.0-nullsafety.1 and firebase_messaging >=0.2.0 depends on platform ^2.0.0, flutter_driver from sdk is incompatible with firebase_messaging >=0.2.0.
And because firebase_messaging <0.2.0 requires SDK version >=1.8.0 <2.0.0, flutter_driver from sdk is incompatible with firebase_messaging.
So, because fmtest depends on both firebase_messaging any and flutter_driver any from sdk, version solving failed.
Running "flutter pub get" in fmtest...                                  
pub get failed (1; So, because fmtest depends on both firebase_messaging any and flutter_driver any from sdk, version
solving failed.)

And to make myself more clear (sorry, I was in somewhat of a hurry and forgot to point at flutter_driver at first), @TahaTesser I disagree that this is not a problem with flutterfire... But I can also mirror the issue to flutter_driver if that helps! Thanks.

Hi @dotdoom
You were right, my bad, this should be addressed by this https://github.com/FirebaseExtended/flutterfire/issues/3312
Thank you

Ah, thanks. My cursory search didn't hit that one because I was looking for firebase_messaging in titles.

Was this page helpful?
0 / 5 - 0 ratings