<html><head><meta http-equiv="Content-Type" content="text/html; charset=utf-8"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; line-break: after-white-space;" class=""><br class=""><div><br class=""><blockquote type="cite" class=""><div class="">On Jun 23, 2020, at 10:56 AM, Philip Reames via cfe-dev <<a href="mailto:cfe-dev@lists.llvm.org" class="">cfe-dev@lists.llvm.org</a>> wrote:</div><br class="Apple-interchange-newline"><div class=""><div class="moz-cite-prefix" style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;">On 6/22/20 2:34 AM, Manuel Klimek via llvm-dev wrote:<br class=""></div><blockquote type="cite" cite="mid:CAOsfVv=hBXbXfu7qrKyEoQHcmbdZ+Rp9LOjMbzM2qpU_q26Ukg@mail.gmail.com" style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; text-decoration: none;" class=""><div dir="ltr" class=""><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sat, Jun 20, 2020 at 1:45 AM Zachary Turner via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" moz-do-not-send="true" class="">llvm-dev@lists.llvm.org</a>> wrote:<br class=""></div><blockquote class="gmail_quote" style="margin: 0px 0px 0px 0.8ex; border-left-width: 1px; border-left-style: solid; border-left-color: rgb(204, 204, 204); padding-left: 1ex;"><div class=""><div dir="auto" class="">There’s also some feature regressions in GH vs Phab.</div></div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">You *must* initiate a review via a pull request, and pull request by definition compares your working copy against master.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">This is not very compatible with LLVMs approach to incremental development. For example, if you ask someone to break a large patch into 5 smaller patches, with Phab this is very easy because you can upload the diff between N and N+1, then N+1 and N+2, etc.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">But with the GH workflow in order to get a review on N+4 you have to include all the changes from all the earlier revisions as well.</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">The way around this is to fork and make 5 branches in your fork, then base each branch off the previous one. But now what do you do if someone requests a change on the first one?</div><div dir="auto" class=""><br class=""></div><div dir="auto" class="">Overall it’s a pretty serious limitation if you’re used to Phab, and I would evaluate very carefully if you’re thinking of going this route</div></blockquote><div class=""><br class=""></div><div class="">Are you volunteering to drive Phab maintenance and keep it up & running?</div></div></div></blockquote><p style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">This really seems like a question for the board, rather than any individual. If you're resigning and the community values phab, having the board weigh in on cost to support the tool seems worthwhile. I suspect that cost will be high enough that we will migrate to something free, but we should at least have an informed discussion. <span class="Apple-converted-space"> </span><br class=""></p><p style="caret-color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-caps: normal; font-weight: normal; letter-spacing: normal; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px; text-decoration: none;" class="">(In case it's not clear, "cost" above is specifically meant in both the financial and non-financial sense. This might be a case where a contractor is worth considering instead of relying solely on volunteer labor.)</p></div></blockquote></div>I’m not speaking on behalf of the board, I am just sharing my personal opinion here:<div class=""><br class=""></div><div class=""><br class=""></div><div class="">I *really* like the Phabricator workflow in practice - I feel like it fits very nicely with the LLVM development model and aside from some super minor UI squabbles, it seems to work great in practice. I am really thankful that Manuel and others made this happen over the years, it was a huge step up from where we were.</div><div class=""><br class=""></div><div class="">That said, I can’t see a world in which it makes sense to maintain this, particularly in the absence of a dedicated team that will do ongoing security and other maintenance. Having such critical project infrastructure on shaky maintenance grounds is a huge liability, and we’ve had Phab go down briefly in the past.</div><div class=""><br class=""></div><div class="">Furthermore, LLVM having bespoke infra like this is a burden for new people and contributors, because they have to learn our way of doing things. The Github workflows (particularly PRs and the review workflow) are widely adopted across a ton of projects, including those that are larger than LLVM and have a dedicated team (GitHub) that maintain and evolve them. While using GitHub loses us the ability to have full control over the stack, we gain by focusing our limited admin cycles on other infra that is more important to us.</div><div class=""><br class=""></div><div class="">I fully support the move to GitHub PR flow.</div><div class=""><br class=""></div><div class="">-Chris</div></body></html>