(Unfamiliar with conduit methods)
Edit src/applications/differential/conduit/DifferentialConduitAPIMethod.php
? Is anyone interested able to write a patch?
edit: created Reviews.llvm.org read-only mode for the discussion.
(Unfamiliar with conduit methods)
Edit src/applications/differential/conduit/DifferentialConduitAPIMethod.php
? Is anyone interested able to write a patch?
edit: created Reviews.llvm.org read-only mode for the discussion.
Thank you for investigation! I created a new post Reviews.llvm.org read-only mode for the discussion.
I donât think itâs necessarily a good idea to disable new patches on Phabricator just yet, even though most of them should be on GitHub now. The reason is that there are occasionally patch series where new patches are added/spun off etc into new patches, which are based on other patches that are still under review in Phabricator. As these patches wonât have equivalent git branches in somebodyâs fork, a new PR cannot be based on top of an existing Phab review, so either they have to push their still in-review-on-Phab patches to a GitHub repo and go from there or they have to create a PR that also includes these commits too. Neither of these seem ideal.
Iâve seen at least one case where somebody hit this, and chose to create a new Phabricator patch, precisely to avoid these issues.
I think we can just do a soft reviewer-led rejection of new patches on Phabricator for now at least, i.e. if somebody asks for review on a new Phabricator patch, unless there is a good reason (such as the above) to review it there, the reviewer should ask the patch creator to create it in GitHub instead. I suspect there wonât be many people in this situation anyway, what with the bright red banner at the top of the screen.
I tried to subscribe to one of these new âpr-subscribers-xxâ teams, but the request is pending.
Arenât we free to subscribe to whatever PR groups we are interested? If thereâs an intention to use these teams as mandatory reviewers, then maybe we need a separated set of teams that can be freely subscribed by anyone.
Another question: whatâs the process to decide on the maintainers of these teams? I didnât see any discussion about this (but may have missed, ofc).
Thanks!
@nlopes Which teams have you tried to subscribe to? So far, the person who requested the team is being made the maintainer. Iâm not sure there is a good way to make self-subscribe work for the teams, unfortunately.
For the debug-info team, Tom made me the maintainer because I was first to suggest it. I added the code owners as maintainers, which I think is the right thing to do for most teams. Code ownership might not be obvious in some other cases though.
For a pr-subscribers-xx maintainer (approver for the purpose of patch subscription, not related to authority), it seems that GitHub only presents the âpending requestâ information on the https://github.com/orgs/llvm/teams/pr-subscribers-*
page, not on any other page (confirmed by @boomanaiden154-1)
I donât think we can expect a maintainer to visit https://github.com/orgs/llvm/teams/pr-subscribers-*
pages they manage to check new pending join requests routinely. So if they miss the email notification would like to join "LLVM"'s "pr-subscribers-llvm-binary-utilities" team
, the request may stay pending forever.
The current best way is perhaps to have more maintainers for the pr-subscribers-xxx teams. I guess every maintainer will receive a would like to join "LLVM"'s "pr-subscribers-llvm-binary-utilities" team
email notification (with the high volume of llvm-project emails, I think the error rate is not very low), but itâs probably better than neglecting an email notification. Unfortunately it seems that a maintainer cannot give maintainer state to another member. Perhaps only administrators can do this.
OK, thatâs interesting, because I get email notifications for the issue-subscribers-* teams when someone wants to join. Iâmâ not sure why it doesnât do the same for the pr-subscribers-* teams.
As I requested many teams when the system was set up, I have gotten a lot of email notifications. To prevent from my missing âwould like to join XXXâ email notifications and to decrease my workload, consider changing the maintainer for the following teams
https://github.com/orgs/llvm/teams/pr-subscribers-llvm-lto/ @teresajohnson
https://github.com/orgs/llvm/teams/pr-subscribers-lld-coff/ @mstorsjo
https://github.com/orgs/llvm/teams/pr-subscribers-lld-macho/ @int3
https://github.com/orgs/llvm/teams/pr-subscribers-lld-wasm/ @sbc100
https://github.com/orgs/llvm/teams/pr-subscribers-sanitizer/ @fmayer
I have also invited some members which I think active to these teams, in case they do not know this notification system. Sorry if I failed to invite some folks.
Note that @MaskRay said âif they miss the email notificationâ not that the notification doesnât happen. It does.
Iâm in favor of adjusting the plan from âmake Phab readonlyâ to âdisable the creation of new diffsâ, I think that accomplishes the goal of directing folks to use the new system going forward. When the schedule was being discussed, it wasnât clear if this was an option, and we planned assuming it wasnât.
Would that plan work for you and Clang?
Thanks, that does seem like a real issue. To try to relate this to the bugzilla migration, in that case, we actually did a full migration of all the ongoing issues, and there was an implicit forward link from bugzilla to github via llvm.org/prNNN .
In the short term, if the plan to disable new diff uploads succeeds, comments will be open, and this wonât be an issue. Weâll need to set a new timeline for going readonly, and just to throw something out, Iâd suggest February 2024 (4 months after October), but I havenât gathered any consensus on that.
In the long term after comments are disabled, I do expect folks will want to do as you suggest: reopen long closed patches, and without comments, there wonât be a way to link forward from the Phab review to the PR, we can only link backwards from the PR to the Phab review. Thatâs not the best, but is that something you can live with? I think six months out, weâll be living in the new world, and weâll be out of the habit of commenting on Phabricator.
Letâs be sure to distinguish âdiff uploadsâ (which I interpret as, uploading a new diff to an existing review) versus âcreating new Differentialsâ i.e. creating new reviews in the Differential tool. We want to turn off the latter but not the former.
Yeah, if weâre able to find a way to allow uploading a new diff for an existing review, but not allow creating a new review, that would be fantastic.
If we canât do that⊠I think we should plan to keep Phab up and running in its regular mode until weâve drained enough of the existing queue, and hope the banner + peer pressure get folks to start using GitHub (though, to be honest, if we find a significant portion of the community stays on Phab at that point, I think it gives us some feedback we should take very seriously; hopefully we avoid that situation though).
Yup, and this is different in that weâre not migrating phab reviews (open or closed) to be GitHub PRs. This is one reason why the static instance of Phab is going to be crucial once we get to that point; losing old reviews would be extremely painful (we could still find most of the information in the emails generated from phab which are still archived, but things like suggested code changes donât always make it into email form so weâd be losing data).
So long as we still allow uploading new diffs for existing reviews, that seems reasonable. I think Feb 2024 might be viable for Clang, but itâs hard to say (the automatic type inference patch has been ongoing for over a year already).
Perhaps that will be fine? Itâs a bit hard to say, the reviews I see people revive are anywhere from this year to 5+ years ago; Iâve also seen people ask plenty of questions on old reviews, like âdid you consider or is this a bug?â where itâs not trying to revive the patch but get more info from the people involved with it.
I think if someone wants to ask âdid you considerâ kind of questions, we can point folks to file an issue on GitHub and give it the question
label, linking to the static review page.
Reviving an old review is a bit harder to solve that way; perhaps thereâs something we could do on the static page though? e.g., maybe thereâs a button that says âemail everyone on this review?â and it does a mailto link to whatever email address is associated with the accounts that have subscribed to the thread? Something along those lines might help newer folks because it removes the âbut HOW do I contact these people?â problem. Or it could be total overkill.
It was pr-subscribers-llvm-ir.
This system without automatic approval will have a lot of requests falling through the cracks I guess. GitHub could allow at least members of the top-level LLVM team to join automatically.
Merge-from-main
can solve the problem of the context going away.
We used the same system with issues and it worked out OK. After the initial rush, there were only a few requests per month. However, the difference with issues was that we did not have team maintainers so the requests went to llvm-project admins instead. Maybe that would be better?
This is really what weâre looking for, see this thread (and patch): Reviews.llvm.org read-only mode - #3 by mehdi_amini
I think so! The probably of emails getting lost would be lower. Plus it avoids us having to deal with people that are on vacation or that abandon the project.
Is it just me or is there no option to cleanup the Git branch after a PR has been merged? Itâs something I notice available by default with PRs with other projects on Github It would be nice if that was provided.
Those branches live on the forks of contributors, who are free to delete them at their leisure. The important thing is that the main repo is not polluted by these branches (I just double-checked, itâs not).