-
Notifications
You must be signed in to change notification settings - Fork 6.9k
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
Process: investigate GitHub code review replacements #39194
Comments
Other problems if you are not a collaborator on the project. If someone leaves a comment or requests changes, the PR is blocked until those changes are resolved, but only the person who made the command can resolve them. And since you can't assign reviewers either, there isn't even a way to signal that you need that person to come back and resolve those comments. If you force-push, which is required, then no one can resolve the requested changes. |
Process WG minutes:
|
GitHub has Pull request revisions listed under the Future work of the public roadmap. It was added to roadmap June'21 and we don't have visibility as to when this will be added into the a named release. |
This and other features are missing simply because Zephyr does not use Github the way it's meant to be used, at least not before https://github.com/github/roadmap/issues/211 gets implemented. Right now Github tolerates force-pushes but does not really support them. Github is supposedly to be used like this:
When using Github "natively", deltas between versions become obvious and many other problems go away too. The "native" Github workflow is very different from how "plain git" and Gerrit users work. Most Github users and projects don't care. I recently had to "train" a new hire on rewriting git history to address review comments. He was proficient with Github but not with git, this was all completely new to him. Gitlab fares a bit "better" but not that much: https://gitlab.com/gitlab-org/gitlab/-/issues/24096 cc: |
Process WG:
|
@keith-zephyr have you looked at https://gitgitgadget.github.io/? There are some potentially interesting things in there. |
I think it is worth considering what the low barrier of entry provided by using a well-known, user-friendly platform like GitHub for code reviews means for the projects popularity and growth, shortcomings or not. |
The extreme difficulty to compare two given versions of the same PR is one thing[*]. The fact that old versions get garbage-collected after a while is another. But the most irritating is probably the semi-random loss of review discussions. I'm guessing this happens when the corresponding code was changed and force-pushed but not always, sometimes there is an "Outdated" warning and the old discussion is still visible in the Conversation tab. Sometimes you can even answer "Outdated" discussions, others not. Mysterious. For instance I received some time ago the following email notification (I use email as a "Github backup" - the irony)
I just spent 5+ minutes looking for some "resolved" conversation where this could have been hiding but no: More issues like this listed in #14444 (comment). No issue when using Github "correctly". [*] click on "force-push" then enter the fully 40 digit SHA in the URL. |
Are you sure the author didn't just delete the comment? |
I think I did indeed delete the comment, after I learned that that %s does not work with mtrace either. I am a bit surprised that the comment vanished without leaving any trace to history. Next time I'll edit the comment and just add a note that it can be ignored. |
My bad, maybe Github never deletes comments. "Outdated" comments do disappear from the source code tab, which makes them nearly impossible to find in the "Conversation" tab in long reviews - especially when people use the "resolve" feature. Other issues listed in #14444 (comment) stand. |
Process WG:
|
There is now a Google Summer of Code project idea to add |
Fun fact: if some code is modified twice in the same PR in two different commits (e.g. 1. Cleanup commit 2. Functional change commit) then comments on the first commit are instantly marked as "Outdated" in the main Conversation tab and never appear in the default "Files Changed" tab. You can still see them if you select the first commit in the "Files Changed" tab, where they are not marked as "Outdated". This is a pretty clear demonstration that latter commits in the PR are expected to amend earlier commits and that earlier commits represent an "Outdated" version of the code.
This roadmap ticket 211 "Pull request revisions and improved workflows" has been... deleted! Thanks to the Wayback machine you can still find the UI mockup of a Since 211 has been deleted the "permanent" workaround is to minize rebases:
|
The GitHub review UI is missing several features present in other review tools that make reviews more effective.
Some missing features of the GitHub review system include:
Any replacement review interface needs to work in conjunction with the GitHub review system, at least initially.
Possible alternatives:
The text was updated successfully, but these errors were encountered: