Skip to content
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

Flutter upgrade should support upstream branches that have been force pushed #55576

Closed
christopherfujino opened this issue Apr 24, 2020 · 2 comments · Fixed by #55594
Closed
Assignees
Labels
tool Affects the "flutter" command-line tool. See also t: labels.
Milestone

Comments

@christopherfujino
Copy link
Member

christopherfujino commented Apr 24, 2020

UPDATE: to cherry-pick, please apply both the original fix and this followup fix.

With our current flutter release revamp, we intend to empty merge back to master from every release branch cherry-pick and then have flutter upgrade always fast forward. However, this would severely limit the choices of which release to promote to a branch if said branch had a cherry pick late in its life cycle. Consider:

I   <- HEAD of master
|
H   <- empty merge beta into master
|\
| G <- beta cherry pick of F 1.0.0-0.1.pre, HEAD of beta branch
| |
F | <- fix for A
| |
E | <- regression
| |
D | <- dev release 1.1.0-0.0.pre, candidate for next beta
| |
C | <- important feature desired for next beta release
|/
B   <- dev & beta release 1.0.0-0.0.pre
|
A   <- regression

In this situation, where commit G is a cherry pick onto the beta branch, and H is the subsequent merge to master, the next beta release would have to be (or be branched from) a commit that appears AFTER H in the master branch, or else users on commit G would not be able to fast forward to the next beta version. However, picking a commit after H would mean also picking up the regression in E. In this situation we would like to have the freedom to promote commit D to the next beta (which would require an additional cherrypick of F).

Thus, we should restore support in flutter upgrade for non-fast-forward upgrades.

@christopherfujino christopherfujino self-assigned this Apr 24, 2020
@christopherfujino christopherfujino added this to the April 2020 milestone Apr 24, 2020
@christopherfujino christopherfujino added ⚠ TODAY tool Affects the "flutter" command-line tool. See also t: labels. labels Apr 24, 2020
@christopherfujino
Copy link
Member Author

cc @pcsosinski

@github-actions
Copy link

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

@github-actions github-actions bot locked as resolved and limited conversation to collaborators Aug 21, 2021
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
tool Affects the "flutter" command-line tool. See also t: labels.
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants