Skip to content

ci: pin the very_good_workflows jobs to a Dart 3.12 compatible release - #80

Merged
luisburgos merged 2 commits into
mainfrom
ci/pin-flutter-package-workflow
Sep 25, 2026
Merged

luisburgos merged 2 commits into
mainfrom
ci/pin-flutter-package-workflow

Conversation

@luisburgos

Copy link
Copy Markdown
Owner

The build job fails at dependency install on every pull request, before any check runs:

Because pub global activate depends on very_good_cli >=1.5.0 which requires SDK version ^3.13.0, version solving failed.

very_good_workflows v1.21.1 moved the floating v1 tag to very_good_cli 1.5.0, which requires Dart ^3.13. Flutter 3.44.0, the version in .fvmrc, ships Dart 3.12.0. The workflows hardcode the CLI version, so there is no input to override it.

This pins the two reusable workflows that install the CLI to v1.21.0, which installs very_good_cli 1.4.0 (Dart ^3.12):

  • flutter_package.yml in main.yaml, which runs on every pull request.
  • license_check.yml in license_check.yaml, which runs only when pubspec.yaml changes, so a dependency or version bump would hit the same failure.

semantic_pull_request.yml and spell_check.yml stay on v1, since they do not install the CLI.

  • Both pins should return to @v1 together once .fvmrc moves to a Flutter on Dart 3.13 or later (3.47+). A comment above each job records this.
  • Dependabot watches GitHub Actions and will propose v1.21.1, which reintroduces the failure. That bump should be declined until the SDK moves.

Checked: the v1.21.0 sources of both workflows install very_good_cli 1.4.0, and very_good_cli v1.4.0 declares sdk: ^3.12.0. This pull request touches license_check.yaml, so its own CI runs both pinned jobs.

Not verified: a green run of either pinned job. That is this pull request's own CI.

very_good_workflows v1.21.1 moved the floating v1 tag to
very_good_cli 1.5.0, which requires Dart ^3.13. Flutter 3.44.0, the
version pinned in .fvmrc, ships Dart 3.12.0, so the build job fails at
dependency install on every pull request.

Pin flutter_package.yml to v1.21.0, which installs very_good_cli 1.4.0
(Dart ^3.12). Return to v1 once .fvmrc moves to a Flutter on Dart 3.13
or later.
license_check.yml at v1 also installs very_good_cli 1.5.0 on top of the
Flutter from flutter_version, so it fails the same way as the build job
whenever a pull request touches pubspec.yaml. Pin it to v1.21.0 with the
build job, and move both back to v1 together.
@luisburgos
luisburgos merged commit 76972ec into main Sep 25, 2026
8 checks passed
@luisburgos
luisburgos deleted the ci/pin-flutter-package-workflow branch September 25, 2026 14:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant