Closed
Bug 1457525
Opened 7 years ago
Closed 6 years ago
Support landing a series of commits
Categories
(Conduit :: Lando, defect)
Conduit
Lando
Tracking
(Not tracked)
RESOLVED
FIXED
People
(Reporter: gps, Assigned: smacleod)
References
Details
(Keywords: conduit-story, conduit-triaged)
Lando currently does not support landing multiple commits in a single operation. To land a series of commits, you have to:
1. Open the Lando page for the first differential revision you want to land (requires finding it in Phabricator first)
2. Trigger landing
3. Find the next differential revision in the series and open Lando for it
4. Wait for Autoland to land the previous revision.
5. Wait for Phabricator to pick up that commit and mark it as closed so Lando doesn't complain about an open dependent revision (this appears to take ~60s)
6. Repeat.
For series of even 2 or 3 commits, it is much faster to just `hg phabimport` + `hg histedit` the commit messages to add reviewer annotations than it is to click through the UI and wait on all blocking operations to complete.
The current behavior is a regression from MozReview, which allowed you to land a series as one atomic unit.
I find the current behavior super annoying. It is annoying enough for me to reconsider dogfooding Phabricator :/
The behavior I'd like to see is for Lando to offer to land all open revisions in a series/stack before the revision being requested to land. Of course, if such a feature were implemented, it would likely list each revision being landed. So at the point you have a list of revisions, you might want to automatically pull down all revisions in a Phabricator stack/series and have checkboxes next to reviewed revisions so people can choose exactly which revisions to land. If this were implemented, you'd only need to open Lando for *any* revision in a series and you'd be able to perform actions on any revisions in that series. While more complicated to implement, the end-user UX feels much better.
Comment 1•7 years ago
|
||
We needed to get the single-revision story solid first, but we had planned to support this before too long. It might even be worth doing before try support...
Keywords: conduit-story,
conduit-triaged
Comment 2•7 years ago
|
||
I got surprised by this just now, and I wonder if we can show a note in the UI in the case when it squashes commits to make that more explicit?
Assignee | ||
Comment 3•7 years ago
|
||
(In reply to Axel Hecht [:Pike] from comment #2)
> I got surprised by this just now, and I wonder if we can show a note in the
> UI in the case when it squashes commits to make that more explicit?
Lando doesn't squash commits, it currently lands the diff as-is from Phabricator. What you're probably experiencing is the default behaviour to upload multiple commits squashed into a single revision at submission time. Phabricator only stores a single diff per revision, so when we land a revision it always becomes one commit.
This bug is about landing multiple Phabricator revisions together as multiple commits, if they have been linked in a dependency tree on Phabricator.
Assignee | ||
Comment 4•7 years ago
|
||
Probably worth reading/considering Bug 1344432 when implementing this.
See Also: → 1344432
Assignee | ||
Comment 5•7 years ago
|
||
Support for this has landed. Going to leave this story bug open while things are tested on dev to track any followup work.
Assignee: nobody → smacleod
Status: NEW → ASSIGNED
Assignee | ||
Comment 6•6 years ago
|
||
Support for landing a series of commits from a stack is now live on production
Lando. Anyone who would like to test & provide feedback is welcome to start
using it.
A few notes to keep in mind:
- We are treating this new functionality as a beta. The current UI is still
present and is linked by default in Phabricator. If something is broken please
file a bug and feel free to fallback to the original UI.
- The new series support is found at https://lando.services.mozilla.com/D<#>/
rather than https://lando.services.mozilla.com/revisions/D<#>/<#>/. For example
https://lando.services.mozilla.com/revisions/D2036/5023/ would become
https://lando.services.mozilla.com/D2036/. Manually modifying the url is the
only way to reach this new UI currently.
- When Bug 1489186 is fixed there will be an additional Lando link added to
Phabricator revisions for the new UI (marked as beta).
- This is not the final UI for landing a stack. Currently only the revision
provided in the url is shown, along with its open ancestors if that series
is landable. The final UI which is in development will show the entire stack
and allow choosing any landable series in the stack to land. This simpler
UI was developed first to get stack support in front of users ASAP.
- Please file bugs / ask questions in #lando if something is broken or unclear.
After Bug 1489186 is deployed I will be announcing series landing support on
relevant mailing lists.
Assignee | ||
Comment 7•6 years ago
|
||
Considering this complete. The next iteration of the UI can be tracked in Bug 1490337
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
You need to log in
before you can comment on or make changes to this bug.
Description
•