Skip to content

version solving failed with other plugins (because of image and archive dependencies) #595

@mayouf

Description

@mayouf

Hi,

Im having version solving failed as soon as I use mapbox_gl with any commonly used plugin like :

hydrated_bloc ^7.0.0
The current Dart SDK version is 2.12.2.

    Because hydrated_bloc >=7.0.0-nullsafety.3 depends on hive ^2.0.0 which depends on crypto ^3.0.0, hydrated_bloc >=7.0.0-nullsafety.3 requires crypto ^3.0.0.
(1) So, because archive >=2.0.0 <3.0.0-nullsafety.0 depends on crypto ^2.0.0, hydrated_bloc >=7.0.0-nullsafety.3 is incompatible with archive >=2.0.0 <3.0.0-nullsafety.0.

    Because image >=2.1.14 <3.0.0-nullsafety.0 depends on archive ^2.0.0 and image >=2.0.4 <2.1.14 depends on archive >=1.0.16 <3.0.0, image >=2.0.4 <3.0.0-nullsafety.0 requires archive >=1.0.16 <3.0.0.
    And because archive ^1.0.2 requires SDK version <2.0.0, image >=2.0.4 <3.0.0-nullsafety.0 requires archive ^2.0.0.
    And because hydrated_bloc >=7.0.0-nullsafety.3 is incompatible with archive >=2.0.0 <3.0.0-nullsafety.0 (1), hydrated_bloc >=7.0.0-nullsafety.3 is incompatible with image >=2.0.4 <3.0.0-nullsafety.0.
    And because mapbox_gl_web 0.11.0 depends on image ^2.1.12 and no versions of mapbox_gl_web match >0.11.0 <0.12.0, hydrated_bloc >=7.0.0-nullsafety.3 is incompatible with mapbox_gl_web ^0.11.0.
    And because mapbox_gl 0.11.0 depends on mapbox_gl_web ^0.11.0 and no versions of mapbox_gl match >0.11.0 <0.12.0, hydrated_bloc >=7.0.0-nullsafety.3 is incompatible with mapbox_gl ^0.11.0.
    So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and hydrated_bloc ^7.0.0, version solving failed.
pub get failed (1;     So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and hydrated_bloc ^7.0.0, version solving failed.)
crypto ^3.0.1
The current Dart SDK version is 2.12.2.

Because no versions of mapbox_gl match >0.11.0 <0.12.0 and mapbox_gl 0.11.0 depends on mapbox_gl_web ^0.11.0, mapbox_gl ^0.11.0 requires mapbox_gl_web ^0.11.0.
And because no versions of mapbox_gl_web match >0.11.0 <0.12.0 and mapbox_gl_web 0.11.0 depends on image ^2.1.12, mapbox_gl ^0.11.0 requires image ^2.1.12.
And because image >=2.1.14 <3.0.0-nullsafety.0 depends on archive ^2.0.0 and image >=2.0.4 <2.1.14 depends on archive >=1.0.16 <3.0.0, mapbox_gl ^0.11.0 requires archive >=1.0.16 <3.0.0.
And because archive ^1.0.2 requires SDK version <2.0.0 and archive >=2.0.0 <3.0.0-nullsafety.0 depends on crypto ^2.0.0, mapbox_gl ^0.11.0 requires crypto ^2.0.0.
So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and crypto ^3.0.1, version solving failed.
pub get failed (1; So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and crypto ^3.0.1, version solving failed.)
assets_audio_player ^3.0.3+2
The current Dart SDK version is 2.12.2.

    Because assets_audio_player >=3.0.2 depends on uuid ^3.0.1 which depends on crypto ^3.0.0, assets_audio_player >=3.0.2 requires crypto ^3.0.0.
(1) So, because archive >=2.0.0 <3.0.0-nullsafety.0 depends on crypto ^2.0.0, assets_audio_player >=3.0.2 is incompatible with archive >=2.0.0 <3.0.0-nullsafety.0.

    Because image >=2.1.14 <3.0.0-nullsafety.0 depends on archive ^2.0.0 and image >=2.0.4 <2.1.14 depends on archive >=1.0.16 <3.0.0, image >=2.0.4 <3.0.0-nullsafety.0 requires archive >=1.0.16 <3.0.0.
    And because archive ^1.0.2 requires SDK version <2.0.0, image >=2.0.4 <3.0.0-nullsafety.0 requires archive ^2.0.0.
    And because assets_audio_player >=3.0.2 is incompatible with archive >=2.0.0 <3.0.0-nullsafety.0 (1), assets_audio_player >=3.0.2 is incompatible with image >=2.0.4 <3.0.0-nullsafety.0.
    And because mapbox_gl_web 0.11.0 depends on image ^2.1.12 and no versions of mapbox_gl_web match >0.11.0 <0.12.0, assets_audio_player >=3.0.2 is incompatible with mapbox_gl_web ^0.11.0.
    And because mapbox_gl 0.11.0 depends on mapbox_gl_web ^0.11.0 and no versions of mapbox_gl match >0.11.0 <0.12.0, assets_audio_player >=3.0.2 is incompatible with mapbox_gl ^0.11.0.
    So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and assets_audio_player ^3.0.3+2, version solving failed.
pub get failed (1;     So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and assets_audio_player ^3.0.3+2, version solving failed.)
flutter_markdown ^0.6.1
The current Dart SDK version is 2.12.2.

    Because flutter_markdown >=0.6.0 depends on markdown ^4.0.0 which depends on args ^2.0.0, flutter_markdown >=0.6.0 requires args ^2.0.0.
(1) So, because archive >=2.0.0 <3.0.0-nullsafety.0 depends on args ^1.4.0, flutter_markdown >=0.6.0 is incompatible with archive >=2.0.0 <3.0.0-nullsafety.0.

    Because image >=2.1.14 <3.0.0-nullsafety.0 depends on archive ^2.0.0 and image >=2.0.4 <2.1.14 depends on archive >=1.0.16 <3.0.0, image >=2.0.4 <3.0.0-nullsafety.0 requires archive >=1.0.16 <3.0.0.
    And because archive ^1.0.2 requires SDK version <2.0.0, image >=2.0.4 <3.0.0-nullsafety.0 requires archive ^2.0.0.
    And because flutter_markdown >=0.6.0 is incompatible with archive >=2.0.0 <3.0.0-nullsafety.0 (1), flutter_markdown >=0.6.0 is incompatible with image >=2.0.4 <3.0.0-nullsafety.0.
    And because mapbox_gl_web 0.11.0 depends on image ^2.1.12 and no versions of mapbox_gl_web match >0.11.0 <0.12.0, flutter_markdown >=0.6.0 is incompatible with mapbox_gl_web ^0.11.0.
    And because mapbox_gl 0.11.0 depends on mapbox_gl_web ^0.11.0 and no versions of mapbox_gl match >0.11.0 <0.12.0, flutter_markdown >=0.6.0 is incompatible with mapbox_gl ^0.11.0.
    So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and flutter_markdown ^0.6.1, version solving failed.
pub get failed (1;     So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and flutter_markdown ^0.6.1, version solving failed.)
lottie: ^1.0.1
Because image >=2.1.14 <3.0.0-nullsafety.0 depends on archive ^2.0.0 and image >=2.0.4 <2.1.14 depends on archive >=1.0.16 <3.0.0, image >=2.0.4 <3.0.0-nullsafety.0 requires archive >=1.0.16 <3.0.0.
And because lottie >=0.8.0-nullsafety.4 depends on archive ^3.0.0, lottie >=0.8.0-nullsafety.4 is incompatible with image >=2.0.4 <3.0.0-nullsafety.0.
And because mapbox_gl_web 0.11.0 depends on image ^2.1.12 and no versions of mapbox_gl_web match >0.11.0 <0.12.0, lottie >=0.8.0-nullsafety.4 is incompatible with mapbox_gl_web ^0.11.0.
And because mapbox_gl 0.11.0 depends on mapbox_gl_web ^0.11.0 and no versions of mapbox_gl match >0.11.0 <0.12.0, lottie >=0.8.0-nullsafety.4 is incompatible with mapbox_gl ^0.11.0.
So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and lottie ^1.0.1, version solving failed.
pub get failed (1; So, because flutter_app_with_kotlin depends on both mapbox_gl ^0.11.0 and lottie ^1.0.1, version solving failed.)

I use 30 plugins in my app, all of them are updated to the last version with no issue.

If I remove mapbox_gl from pubspec.yaml, then lottie, flutter_markdown, assets_audio_player and internet_connection_checker are fine togheter.

only mapbox_gl is incompatible here.

When I check, Im not sure about it, but it seems to be related to image: ^2.1.12 in mapbox_gl_web pubspec.yaml.

Archive and Crypto are also mention in the error messages.

I have several question :

Does someone here know how to workaround this ?
What if we update the mapbox_gl plugin with the last version of image ?

I had a look on transitive dependencies, I been trying but nothing works.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions