Skip to content

Ensure Dart version is at least as high as dependencies #141

@Levi-Lesches

Description

@Levi-Lesches

Say I have the following project:

environment:
  sdk: ^3.0.0

dependencies:
  pubspec_parse: ^1.5.0

This compiles, Pub doesn't complain, and this tool validates it with no issues. However, pubspec_parse version 1.5 requires Dart 3.6! Everything works because, coincidentally, I happen to have Dart 3.6 on my PC. But someone else might not, especially a CI workflow (this just happened in #138 but it happens to me all the time). I have a use case where I need to be entirely offline, so I'd like to know if I need to upgrade my Dart SDK as far in advance as possible.

To handle this, the tool should notice that pubspec_parse requires Dart 3.6 and flag that my environment.sdk is less than that. To handle the transitive case as well, the tool can look through .dart_tool/package_config.json and use the highest languageVersion it finds.


I filed dart-lang/pub#4488 to see if the Dart team wants to integrate this into Pub directly as well

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