New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Stable branch should not be cut until the version number flips #43485
Comments
We've made this problem worse by not landing the version bump in a timely manner (partly due to the added complications around language versioning). @franklinyow, this is one of the reasons why I've been pushing the release checklist. The commit will also never appear in any Dart 2.10 dev releases because they are halted until the version bump is landed (this isn't coordinated with Flutter at the moment, so it may appear in Flutter dev releases, @pcsosinski). The current process creates not just one, but many candidates for 2.10 branchout. Bumping the version would require a freeze in Flutter rolls during candidate selection. This has other drawbacks on the Dart team that the current process removed. I realize this is a compromise, right now my opinion is that we should minimize the time we're inconsistent. This would still leave us open to one or two misleading tags, but at the same time ensure that Flutter rolls don't need to be frozen for one or two weeks. |
Looking at the version constraint for source_span, it says: |
Yes, in practice for |
This part seems problematic as well, will those commits ship with flutter stable? Does that mean the Dart 2.10 that ships with flutter is different from the standalone 2.10 release? |
have we bumped to 2.11 yet? if not, why not? |
No, these commits can't go to Flutter stable. Flutter stable will always use a stable Dart. We use the same branch-point when we go to beta.
Yes, the bump landed this morning. Dev is on 2.11 now (it seems there is a bug in the roller and it didn't reset the pre-release counter so we're at |
👍 - dev releases of flutter may have commits which don't make it into stable though? |
They will eventually reach stable, but only with a Dart stable release. For instance, the commit you need will not hit Flutter stable until 2.11 hits Flutter stable. |
We currently are continually having more
2.10.0-x.x.dev
versions tagged in the repo, but these versions will never ever make it into a stable 2.10 release.This opens up issues for packages that need to rely on these tags for setting their version constraints.
Case in point - I early today published a version of source_span which requires this commit. So, I looked at the tagged versions for that, and set the earliest one (2.10.0-137.0.dev) as the minimum SDK bound.
However - that commit will never appear in any stable 2.10 sdk release because it was cut before that landed. Thus, this package would be broken when 2.10 stable is in fact released (in reality though, we got lucky here that it has a <2.10.0 constraint to disallow that).
In order to ensure that these misleading tags are not present in the repo, we should bump the version first, and then we should fork 2.10 stable at the commit directly preceding the one in which the version was bumped.
I am unsure of how to categorize this issue, @athomas can you label and triage it?
The text was updated successfully, but these errors were encountered: