<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    <p>Since I think we're risking confusion on the point here, let me
      clarify that at least my response to this thread should not be
      read as opposition (or support) for a migration to github.  I am
      expressing no opinion on that matter.  I see the primary point
      being discussed in this thread being the decision making process
      proposed, not the decision itself.</p>
    <p>Philip<br>
    </p>
    <div class="moz-cite-prefix">On 10/6/21 10:26 AM, Chris Tetreault
      via llvm-dev wrote:<br>
    </div>
    <blockquote type="cite"
cite="mid:BYAPR02MB4551AEB30F0D88E62C2D0260DAB09@BYAPR02MB4551.namprd02.prod.outlook.com">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style>@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph
        {mso-style-priority:34;
        margin-top:0in;
        margin-right:0in;
        margin-bottom:0in;
        margin-left:.5in;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}span.EmailStyle20
        {mso-style-type:personal-reply;
        font-family:"Calibri",sans-serif;
        color:windowtext;}.MsoChpDefault
        {mso-style-type:export-only;
        font-size:10.0pt;}div.WordSection1
        {page:WordSection1;}ol
        {margin-bottom:0in;}ul
        {margin-bottom:0in;}</style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal">> … nothing's really changed from the
          previous conversations on PRs versus Github, apart from the
          announcement of end of support by the upstream company, but
          that was quite a while ago now, and even with the stale
          Arcanist issue, there hasn't been a big push from community
          members to change …<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">James, If you’ll forgive me for
          cherry-picking a small part of your point, I think it bears
          mentioning that human beings tend to ignore future problems
          until they become current problems. Most of us here want to
          work on compilers, not deal with infrastructure. This doesn’t
          mean that the status quo is ok.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">As I see it, it would be a mistake to just
          continue on with zombie-phabricator as we have. Perhaps the
          board of directors could have taken a different tone when
          presenting this issue, but I think they are doing the right
          thing by forcing a change soon. Tools are degrading, and
          security fixes are not being implemented. If we do nothing
          we’re all going to wake up some day and find that the github
          repo has had its owner changed or somesuch catastrophe. We
          need to do *<b>something</b>*, and I think setting a deadline
          for a change was the right call.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">From my perspective, there are 4 reasonable
          things we can do, in order of disruptiveness:<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <ol style="margin-top:0in" type="1" start="1">
          <li class="MsoListParagraph"
            style="margin-left:0in;mso-list:l0 level1 lfo1">Investigate
            a community replacement for phabricator. Does Phorge meet
            our needs? Is there a maintained fork of phabricator? Can we
            just drop in some replacement?<o:p></o:p></li>
          <li class="MsoListParagraph"
            style="margin-left:0in;mso-list:l0 level1 lfo1">Fork
            Phabricator, and take on the maintenance burden ourselves.
            This sounds like work.<o:p></o:p></li>
          <li class="MsoListParagraph"
            style="margin-left:0in;mso-list:l0 level1 lfo1">Move to
            github PRs. As others have mentioned, there are pros and
            cons to this.<o:p></o:p></li>
          <li class="MsoListParagraph"
            style="margin-left:0in;mso-list:l0 level1 lfo1">Something
            else? We’d have to figure out what this is, and justify it
            over options 1-3.<o:p></o:p></li>
        </ol>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">If the deadline the board has set is
          unpalatable to the community, then perhaps it makes sense to
          fork Phabricator, and then decide on a longer term migration
          plan. But we need to do something and we need to do it now,
          not when there’s an actual fire.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">Personally, I like Phabricator, and find
          github PRs to be tedious to work with. If we went with github
          PRs, I would be able to work, but I would prefer something
          more like phabricator.<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p class="MsoNormal">thanks,<o:p></o:p></p>
        <p class="MsoNormal">   Chris Tetreault<o:p></o:p></p>
        <p class="MsoNormal"><o:p> </o:p></p>
        <div>
          <div style="border:none;border-top:solid #E1E1E1
            1.0pt;padding:3.0pt 0in 0in 0in">
            <p class="MsoNormal"><b>From:</b> cfe-dev
              <a class="moz-txt-link-rfc2396E" href="mailto:cfe-dev-bounces@lists.llvm.org"><cfe-dev-bounces@lists.llvm.org></a> <b>On Behalf Of
              </b>James Henderson via cfe-dev<br>
              <b>Sent:</b> Wednesday, October 6, 2021 1:47 AM<br>
              <b>To:</b> Tanya Lattner <a class="moz-txt-link-rfc2396E" href="mailto:tanyalattner@llvm.org"><tanyalattner@llvm.org></a><br>
              <b>Cc:</b> llvm-dev <a class="moz-txt-link-rfc2396E" href="mailto:llvm-dev@lists.llvm.org"><llvm-dev@lists.llvm.org></a>;
              Renato Golin <a class="moz-txt-link-rfc2396E" href="mailto:rengolin@gmail.com"><rengolin@gmail.com></a>; clang developer
              list <a class="moz-txt-link-rfc2396E" href="mailto:cfe-dev@lists.llvm.org"><cfe-dev@lists.llvm.org></a>; openmp-dev
              (<a class="moz-txt-link-abbreviated" href="mailto:openmp-dev@lists.llvm.org">openmp-dev@lists.llvm.org</a>)
              <a class="moz-txt-link-rfc2396E" href="mailto:openmp-dev@lists.llvm.org"><openmp-dev@lists.llvm.org></a>; LLDB Dev
              <a class="moz-txt-link-rfc2396E" href="mailto:lldb-dev@lists.llvm.org"><lldb-dev@lists.llvm.org></a><br>
              <b>Subject:</b> Re: [cfe-dev] [llvm-dev] RFC: Code Review
              Process<o:p></o:p></p>
          </div>
        </div>
        <p class="MsoNormal"><o:p> </o:p></p>
        <p style="text-align:center" align="center"><strong><span
style="font-size:10.5pt;font-family:"Arial",sans-serif;color:black;background:yellow">WARNING:</span></strong><span
style="font-size:10.5pt;font-family:"Arial",sans-serif;color:black;background:yellow">
            This email originated from outside of Qualcomm. Please be
            wary of any links or attachments, and do not enable macros.</span><o:p></o:p></p>
        <div>
          <div>
            <div>
              <p class="MsoNormal">Forgive me if I'm wrong, but if the
                community consensus is that we should continue to use
                Phabricator, and Phabricator is not being
                provided/maintained by the LLVM Foundation, isn't it
                moot what the LLVM Foundation/Infrastructure Working
                Group recommends/wants to happen? The current
                maintainers would continue to maintain Phabricator
                (assuming they wanted to), and people would still be
                able to review things there. What would happen if the
                Foundation officially supported PRs, without community
                consensus (in particular from the Phabricator
                maintainers), is a potential split in the community,
                with some continuing in the old way and others using the
                new way (and presumably some choosing to review on both
                platforms). This cannot be good.<o:p></o:p></p>
            </div>
            <div>
              <p class="MsoNormal"><o:p> </o:p></p>
            </div>
            <div>
              <p class="MsoNormal">I'm all for the discussion to be had,
                about whether we switch, but as far as I can see,
                nothing's really changed from the previous conversations
                on PRs versus Github, apart from the announcement of end
                of support by the upstream company, but that was quite a
                while ago now, and even with the stale Arcanist issue,
                there hasn't been a big push from community members to
                change: the consensus in the posts discussing this and
                the moving to PRs seems to still be "there are things
                that are blocking switching still".<o:p></o:p></p>
            </div>
            <div>
              <p class="MsoNormal"><o:p> </o:p></p>
            </div>
            <div>
              <p class="MsoNormal">At the most, from this IWG/Foundation
                consultation, it should be that the Foundation
                recommends one or other approach, and is willing to
                provide X infrastructure required. The community can
                then choose to agree with whatever approach is
                recommended or stick with the status quo. There
                shouldn't be an edict that says we will do one thing or
                the other.<o:p></o:p></p>
            </div>
            <div>
              <p class="MsoNormal"><o:p> </o:p></p>
            </div>
            <div>
              <p class="MsoNormal">Another side-point: whilst the IWG
                may consist of people who care about LLVM, there are far
                more people who care as much, but who just don't have
                the time to participate in such a group. This is
                particularly important to note, because the community
                does not elect members to this group. To an extent, the
                same is also true of the Foundation board itself, since
                there are plenty of people who may not agree with their
                decisions, but don't have the time to volunteer for the
                board. I'm not suggesting that there's any malice in
                this discussion, and indeed, the fact that it's open to
                community comments certainly is helpful, but I'd be
                worried of some kind of echo chamber/unconscious bias
                within the small groups suggesting there is consensus
                for one approach, when the wider community thinks
                otherwise.<o:p></o:p></p>
            </div>
            <div>
              <p class="MsoNormal"><o:p> </o:p></p>
            </div>
            <div>
              <p class="MsoNormal">James<o:p></o:p></p>
            </div>
          </div>
          <p class="MsoNormal"><o:p> </o:p></p>
          <div>
            <div>
              <p class="MsoNormal">On Tue, 5 Oct 2021 at 20:52, Tanya
                Lattner via llvm-dev <<a
                  href="mailto:llvm-dev@lists.llvm.org"
                  moz-do-not-send="true">llvm-dev@lists.llvm.org</a>>
                wrote:<o:p></o:p></p>
            </div>
            <blockquote style="border:none;border-left:solid #CCCCCC
              1.0pt;padding:0in 0in 0in
              6.0pt;margin-left:4.8pt;margin-right:0in">
              <div>
                <p class="MsoNormal">Hello! The purpose of this email is
                  to start a discussion about our code review tools. No
                  decisions have been made about changing tools. The
                  idea behind a timeline is so that information could be
                  gathered in a timely manner. The Infrastructure
                  Working Group was formed to bring together community
                  members who have an experience and/or passion
                  regarding infrastructure. Anyone can participate in
                  this working group and like the LLVM Foundation, the
                  minutes are all made public. 
                  <o:p></o:p></p>
                <div>
                  <div>
                    <p class="MsoNormal"><o:p> </o:p></p>
                  </div>
                  <div>
                    <div>
                      <p class="MsoNormal">The LLVM Foundation’s mission
                        is to support the LLVM project and help ensure
                        the health and productivity of of the community
                        and this is done through numerous ways including
                        infrastructure. I do not think it is a negative
                        thing that the foundation board of directors
                        would be discussing our current tools and
                        gathering information how how well they work and
                        how we can make them better. As the legal entity
                        who bares financial and legal responsibility for
                        a lot of the infrastructure, this would make
                        sense. This also makes sense because of the
                        people involved who care a lot about LLVM and
                        the project. But, the LLVM Foundation does not
                        pay for Phabricator and we are very grateful for
                        Google’s support of this critical piece of our
                        infrastructure. <o:p></o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal">Regarding Phabricator, there
                        are a couple of pieces of information that were
                        provided to the LLVM Foundation by maintainers
                        (maybe previous it sounds like) of this instance
                        and how we may need to look into alternative
                        ways to support it.  In addition, Phacility
                        itself has publicly stated that it is winding
                        down operations. (<a
href="https://admin.phacility.com/phame/post/view/11/phacility_is_winding_down_operations/"
                          target="_blank" moz-do-not-send="true">https://admin.phacility.com/phame/post/view/11/phacility_is_winding_down_operations/</a>).
                        Lastly, there are questions about why we are not
                        using GitHub pull requests as we are on GitHub
                        and that might be the natural path to take for a
                        number of reasons.<o:p></o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal">The above reasons are why the
                        RFC was written. Perhaps it wasn’t written in
                        the best way, but I also feel like it is being
                        read in a negative way which is incredibly
                        disappointing given I don’t feel there is a
                        valid reason for this.<o:p></o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal">-Tanya<o:p></o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><o:p> </o:p></p>
                    </div>
                    <div>
                      <p class="MsoNormal"><br>
                        <br>
                        <o:p></o:p></p>
                      <blockquote
                        style="margin-top:5.0pt;margin-bottom:5.0pt">
                        <div>
                          <p class="MsoNormal">On Oct 5, 2021, at 11:35
                            AM, Renato Golin via llvm-dev <<a
                              href="mailto:llvm-dev@lists.llvm.org"
                              target="_blank" moz-do-not-send="true">llvm-dev@lists.llvm.org</a>>
                            wrote:<o:p></o:p></p>
                        </div>
                        <p class="MsoNormal"><o:p> </o:p></p>
                        <div>
                          <div>
                            <div>
                              <p class="MsoNormal">On Tue, 5 Oct 2021 at
                                19:16, Tom Stellard <<a
                                  href="mailto:tstellar@redhat.com"
                                  target="_blank" moz-do-not-send="true">tstellar@redhat.com</a>>
                                wrote:<o:p></o:p></p>
                            </div>
                            <div>
                              <blockquote
                                style="border:none;border-left:solid
                                #CCCCCC 1.0pt;padding:0in 0in 0in
                                6.0pt;margin-left:4.8pt;margin-right:0in">
                                <p class="MsoNormal">However, it's not a
                                  good position for the Board to be
                                  responsible<br>
                                  for something that it doesn't have
                                  control over.  If Google decided to
                                  stop hosting<br>
                                  Phabricator for some reason (unlikely,
                                  but not impossible), the Board would
                                  be<br>
                                  responsible for finding a replacement.<o:p></o:p></p>
                              </blockquote>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">Sorry, this is a
                                  very weak reason for such a strong
                                  worded "RFC".<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">I _cannot_ imagine
                                  "Google" stopping to support something
                                  so quickly as to leave the foundation
                                  without recourse. And even if they
                                  did, *no one* would blame the
                                  foundation for that.<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">Even if you ignore
                                  all the effort that hundreds of their
                                  engineers have done over the past
                                  decade to the project, this would hurt
                                  Google more than anyone else. It's a
                                  far fetched concern.<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">And if the
                                  foundation wants "control" of a piece
                                  of infrastructure that Google has been
                                  maintaining for years, then this is a
                                  different discussion. Hopefully one
                                  that doesn't involve unilateral
                                  decisions.<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"> <o:p></o:p></p>
                              </div>
                              <blockquote
                                style="border:none;border-left:solid
                                #CCCCCC 1.0pt;padding:0in 0in 0in
                                6.0pt;margin-left:4.8pt;margin-right:0in">
                                <p class="MsoNormal">The main risk is
                                  that Phabricator is no longer
                                  maintained upstream.<br>
                                  There was already an issue[1] recently
                                  where the arc tool stopped working and
                                  won't<br>
                                  be fixed upstream. Using unmaintained
                                  software is a bigger risk.<o:p></o:p></p>
                              </blockquote>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">I don't like using
                                  unmaintained software either, but I
                                  think our Phab has had more attention
                                  than the upstream project. And no one
                                  has to use arc, I certainly never
                                  have.<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <div>
                                  <p class="MsoNormal">Don't get me
                                    wrong, I don't like Phab and I think
                                    Github would bring new people to the
                                    project, but it's gotta be done the
                                    right way, and pushing it isn't it.<o:p></o:p></p>
                                </div>
                                <div>
                                  <p class="MsoNormal"><o:p> </o:p></p>
                                </div>
                              </div>
                              <blockquote
                                style="border:none;border-left:solid
                                #CCCCCC 1.0pt;padding:0in 0in 0in
                                6.0pt;margin-left:4.8pt;margin-right:0in">
                                <p class="MsoNormal">We, meaning the
                                  LLVM Board of Directors.  And really
                                  the problem isn't the self-hosting<br>
                                  so much as it's the lack of an
                                  enforceable maintenance agreement the
                                  Foundation and the<br>
                                  maintainers.<o:p></o:p></p>
                              </blockquote>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">The problem isn't
                                  self-hosting at all, given that Google
                                  is doing that.  (apologies, I assumed
                                  otherwise earlier).<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">Neither is
                                  maintenance, given Google is doing
                                  that too.<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">The only thing
                                  that's left is control, and I don't
                                  really understand why this is
                                  important, as I explained above.<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal"><o:p> </o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">cheers,<o:p></o:p></p>
                              </div>
                              <div>
                                <p class="MsoNormal">--renato<o:p></o:p></p>
                              </div>
                            </div>
                          </div>
                          <p class="MsoNormal">_______________________________________________<br>
                            LLVM Developers mailing list<br>
                            <a href="mailto:llvm-dev@lists.llvm.org"
                              target="_blank" moz-do-not-send="true">llvm-dev@lists.llvm.org</a><br>
                            <a
                              href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev"
                              target="_blank" moz-do-not-send="true">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><o:p></o:p></p>
                        </div>
                      </blockquote>
                    </div>
                    <p class="MsoNormal"><o:p> </o:p></p>
                  </div>
                </div>
              </div>
              <p class="MsoNormal">_______________________________________________<br>
                LLVM Developers mailing list<br>
                <a href="mailto:llvm-dev@lists.llvm.org" target="_blank"
                  moz-do-not-send="true">llvm-dev@lists.llvm.org</a><br>
                <a
                  href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev"
                  target="_blank" moz-do-not-send="true">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><o:p></o:p></p>
            </blockquote>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <pre class="moz-quote-pre" wrap="">_______________________________________________
LLVM Developers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>
<a class="moz-txt-link-freetext" href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a>
</pre>
    </blockquote>
  </body>
</html>