Skip to content
This repository has been archived by the owner on Nov 30, 2023. It is now read-only.

New major version required #39

Closed
jagmit opened this issue Feb 7, 2022 · 3 comments
Closed

New major version required #39

jagmit opened this issue Feb 7, 2022 · 3 comments

Comments

@jagmit
Copy link

jagmit commented Feb 7, 2022

The removal of Platform.packageRoot urgently requires a new major version IMHO as also discussed in #38 because apps (transitively) depending on it might not build now with the latest flutter stable.

For example path_provider depends on platform via path_provider_platform_interface in the form of platform: ^3.0.0. If pub resolves this with 3.0.1 a build error will happen with Dart 2.16 (flutter stable) because dart:io's Platform.packageRoot got removed.

I'm sure there are more examples like this.

cc @mit-mit

@mit-mit
Copy link
Member

mit-mit commented Feb 7, 2022

Apps will build with the latest Flutter stable, but they do need to upgrade their dependencies (flutter pub upgrade or flutter pub upgrade --major-versions).

The is a general issue, as Flutter "pins" to specific package versions (not version ranges), e.g. here for platform:
https://github.com/flutter/flutter/blob/2.10.0/packages/flutter/pubspec.yaml#L33

@mit-mit
Copy link
Member

mit-mit commented Feb 7, 2022

Here's the resolution I got:

  path_provider:
    dependency: "direct main"
    description:
      name: path_provider
      url: "https://pub.dartlang.org"
    source: hosted
    version: "2.0.8"
  path_provider_android:
    dependency: transitive
    description:
      name: path_provider_android
      url: "https://pub.dartlang.org"
    source: hosted
    version: "2.0.11"
  path_provider_ios:
    dependency: transitive
    description:
      name: path_provider_ios
      url: "https://pub.dartlang.org"
    source: hosted
    version: "2.0.7"
  path_provider_linux:
    dependency: transitive
    description:
      name: path_provider_linux
      url: "https://pub.dartlang.org"
    source: hosted
    version: "2.1.5"
  path_provider_macos:
    dependency: transitive
    description:
      name: path_provider_macos
      url: "https://pub.dartlang.org"
    source: hosted
    version: "2.0.5"
  path_provider_platform_interface:
    dependency: transitive
    description:
      name: path_provider_platform_interface
      url: "https://pub.dartlang.org"
    source: hosted
    version: "2.0.3"
  path_provider_windows:
    dependency: transitive
    description:
      name: path_provider_windows
      url: "https://pub.dartlang.org"
    source: hosted
    version: "2.0.5"
  platform:
    dependency: transitive
    description:
      name: platform
      url: "https://pub.dartlang.org"
    source: hosted
    version: "3.1.0"

@jagmit
Copy link
Author

jagmit commented Feb 13, 2022

Thank you for your answer. After further reading into this I found out that my team should not gitignore the pubspec.lock for the applications we are working on. Out dependencies were not in sync which cause the problem as described here in the first place.

Thank you for your help and sorry for wasting your time

@jagmit jagmit closed this as completed Feb 13, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants