<div dir="ltr">I feel neutral about whether Phabricator state ought to be considered ephemeral. But let's say we were to keep it all, in read-only form, when a switch to a different review tool occurs (after all, that projects, open or not, change review tools is a frequent occurrence). SimonM, would that mitigate in your view "<span style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:12.8px;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial;float:none;display:inline">the friction caused by the transition and the inability to do a clean move"</span>, which you mentioned in a previous email?</div><div class="gmail_extra"><br clear="all"><div><div class="gmail_signature" data-smartmail="gmail_signature">--<br>Mathieu Boespflug<br>Founder at <a href="http://tweag.io" target="_blank">http://tweag.io</a>.</div></div>
<br><div class="gmail_quote">On 7 June 2018 at 08:39, Manuel M T Chakravarty <span dir="ltr"><<a href="mailto:manuel.chakravarty@tweag.io" target="_blank">manuel.chakravarty@tweag.io</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div style="word-wrap:break-word;line-break:after-white-space">I very much feel like SimonPJ about this. <div><br></div><div>Moreover, I think, there are two important technical reasons to prefer this style. Firstly, I don’t want to be dependent on any one code review tool. The lock-in that Phabricator has been able to create here is quite tiresome (even if Phacility is probably quite happy about the situation).</div><div><br></div><div>Secondly, I’d be willing to bet that the history in code reviews is useful only to very few people, namely those who participated in the respective code reviews. This is in direct opposition to creating an open project, which tries to level the playing field as far as possible. Hence, IMHO it runs counter to the aims of this group.</div><div><br></div><div>And, SimonM, as you bring up the differences between open-source and closed source. I agree that this would be less of an issue in a closed source project. However, I always thought, we want to make contributing to GHC as easy as possible.</div><div><br></div><div>Cheers,</div><div>Manuel</div><div><br></div><div><div><blockquote type="cite"><div><div class="h5"><div>Am 06.06.2018 um 23:47 schrieb Simon Peyton Jones via Ghc-devops-group <<a href="mailto:ghc-devops-group@haskell.org" target="_blank">ghc-devops-group@haskell.org</a>><wbr>:</div><br class="m_3433905821437788244Apple-interchange-newline"></div></div><div><div><div class="h5"><div class="m_3433905821437788244WordSection1" style="font-family:Helvetica;font-size:16px;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;text-decoration:none"><div style="margin:0cm 0cm 0.0001pt 36pt;font-size:11pt;font-family:Calibri,sans-serif">Interestingly, I think this discussion has really teased out a key difference - perhaps the reason people prefer different tools here is because they're starting from different perspectives about what the tools are for? <u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"><u></u> <u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt">I think you are right here.   Personally, I find that Phab focuses my attention on the *<b>code</b>*, rather than the design or architecture.  Even where discussions about the latter happen, they are buried in a sea of noise about low-level suggestions.   So my personal preference is to keep the higher level stuff on Trac (or even a wiki page) and regard the code review discussion as ephemeral.<u></u><u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"><u></u> <u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt">Simon<u></u><u></u></span></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"><u></u> <u></u></span></div><div style="border-style:none none none solid;border-left-width:1.5pt;border-left-color:blue;padding:0cm 0cm 0cm 4pt"><div><div style="border-style:solid none none;border-top-width:1pt;border-top-color:rgb(225,225,225);padding:3pt 0cm 0cm"><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><b><span lang="EN-US">From:</span></b><span lang="EN-US"><span class="m_3433905821437788244Apple-converted-space"> </span>Simon Marlow <<a href="mailto:marlowsd@gmail.com" target="_blank">marlowsd@gmail.com</a>><span class="m_3433905821437788244Apple-converted-space"> </span><br><b>Sent:</b><span class="m_3433905821437788244Apple-converted-space"> </span>06 June 2018 13:44<br><b>To:</b><span class="m_3433905821437788244Apple-converted-space"> </span>Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>><br><b>Cc:</b><span class="m_3433905821437788244Apple-converted-space"> </span>Manuel M T Chakravarty <<a href="mailto:manuel.chakravarty@tweag.io" target="_blank">manuel.chakravarty@tweag.io</a>>; <a href="mailto:ghc-devops-group@haskell.org" target="_blank">ghc-devops-group@haskell.org</a><br><b>Subject:</b><span class="m_3433905821437788244Apple-converted-space"> </span>Re: [GHC DevOps Group] State of CI<u></u><u></u></span></div></div></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><u></u> <u></u></div><div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif">I think this reflects a different philosophy about code review. If we say that code-review is only for small-scale suggestions about the actual code changes, then yes I'd agree it's not all that useful to keep that history around. But we can (and sometimes do) have high-level architectural discussions as part of code review too, and indeed I think it's arguably the right thing to have these discussion around concrete code proposals. We keep all the discussion of the code in one place, and the discussion is attached to the evolving code patches.  In this world, the code discussions really are valuable history.<u></u><u></u></p></div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif"><u></u> <u></u></p></div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif">Interestingly, I think this discussion has really teased out a key difference - perhaps the reason people prefer different tools here is because they're starting from different perspectives about what the tools are for?  I don't think there's one true way here. Personally I've been exposed to multiple different working styles, especially having one foot in industry and one in the open-source world, and I've seen different philosophies that work.  We could as a project decide that we don't want to go the way of having high-level discussion alongside code review, in which case that's OK (I would slightly prefer to move in the other direction, but that's just my preference).<u></u><u></u></p></div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif"><u></u> <u></u></p></div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif">Cheers<u></u><u></u></p></div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif">Simon<u></u><u></u></p></div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif"><u></u> <u></u></p></div></div><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif"><u></u> <u></u></p><div><p class="MsoNormal" style="margin:0cm 0cm 6pt;font-size:11pt;font-family:Calibri,sans-serif">On 6 June 2018 at 12:58, Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" style="color:purple;text-decoration:underline" target="_blank">simonpj@microsoft.com</a>> wrote:<u></u><u></u></p><blockquote style="border-style:none none none solid;border-left-width:1pt;border-left-color:rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin-left:4.8pt;margin-right:0cm"><div><div><div style="margin:0cm 0cm 0.0001pt 36pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt;font-family:Helvetica,sans-serif">We should keep in mind, though, is that past code reviews is valuable content that we can't discard,</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt">Like Manuel I’m not at all sure about this.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt">I *<b>do</b>* regard the Trac conversation as a long-term asset, and often refer to tickets from Notes, as a way to say “here’s a more extensive discussion of what’s in the Note”.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt">But the Phab discussion of “please refactor this or that” seems far less valuable.  And actually I don’t think it is substantially cross-referenced from elsewhere.  Where there is substantive conversation about the approach, I’d rather see that on Trac.</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt">So for me, long term access to the code-review trail is not very important</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"> </span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt">Simon</span><u></u><u></u></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt"> </span><u></u><u></u></div><div style="border-style:none none none solid;border-left-width:1.5pt;border-left-color:blue;padding:0cm 0cm 0cm 4pt"><div><div style="border-style:solid none none;border-top-width:1pt;border-top-color:rgb(225,225,225);padding:3pt 0cm 0cm"><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><b><span lang="EN-US">From:</span></b><span lang="EN-US"><span class="m_3433905821437788244Apple-converted-space"> </span>Ghc-devops-group <<a href="mailto:ghc-devops-group-bounces@haskell.org" style="color:purple;text-decoration:underline" target="_blank">ghc-devops-group-bounces@<wbr>haskell.org</a>><span class="m_3433905821437788244Apple-converted-space"> </span><b>On Behalf Of<span class="m_3433905821437788244Apple-converted-space"> </span></b>Manuel M T Chakravarty<br><b>Sent:</b><span class="m_3433905821437788244Apple-converted-space"> </span>06 June 2018 12:50<br><b>To:</b><span class="m_3433905821437788244Apple-converted-space"> </span>Simon Marlow <<a href="mailto:marlowsd@gmail.com" style="color:purple;text-decoration:underline" target="_blank">marlowsd@gmail.com</a>><br><b>Cc:</b><span class="m_3433905821437788244Apple-converted-space"> </span><a href="mailto:ghc-devops-group@haskell.org" style="color:purple;text-decoration:underline" target="_blank">ghc-devops-group@haskell.<wbr>org</a><br><b>Subject:</b><span class="m_3433905821437788244Apple-converted-space"> </span>Re: [GHC DevOps Group] State of CI</span><u></u><u></u></div></div></div><div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"> <u></u><u></u></div><div><blockquote style="margin-top:5pt;margin-bottom:5pt"><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif">Am 06.06.2018 um 19:11 schrieb Simon Marlow <<a href="mailto:marlowsd@gmail.com" style="color:purple;text-decoration:underline" target="_blank">marlowsd@gmail.com</a>>:<u></u><u></u></div></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"> <u></u><u></u></div><div><div><div><div><blockquote style="border-style:none none none solid;border-left-width:1pt;border-left-color:rgb(204,204,204);padding:0cm 0cm 0cm 6pt;margin:5pt 0cm 5pt 4.8pt"><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt;font-family:Helvetica,sans-serif">* None of this work is GitHub specific. Nor all that CircleCI or<br>Appveyor specific for that matter (work is currently focused on<br>improving the test suite).<br>* Our GitHub lock-in factor is currently low to pretty much absent,<br>and would remain low even if the review workflow becomes more<br>systematically GitHub centric (it already is for some small<br>contributions).<br>* That's because tickets remain on Trac, and the code along with the<br>entirety of its history remains in a standard Git repository, GitHub<br>or not. Also because GitHub is not a CI provider, those providers we<br>do use integrate with other code hosting solutions (e.g. Appveyor with<br>GitLab), and the surface area of CI provider-specific code is small.</span><u></u><u></u></div></blockquote><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt;font-family:Helvetica,sans-serif"> </span><u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt;font-family:Helvetica,sans-serif">We should keep in mind, though, is that past code reviews is valuable content that we can't discard, nor can we easily migrate it to a different code review platform. At this point we have nearly 5K diffs on Phabricator, many of which have non-trivial code-review trails, and these are cross-referenced from Trac, emails, and other places. Even if we moved to github, we would want to keep Phabricator running so that we have access to this content, and people will experience friction though havng to deal with another system. <span class="m_3433905821437788244m8705474613539408462apple-converted-space"> </span></span><u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt;font-family:Helvetica,sans-serif"> </span><u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><span style="font-size:12pt;font-family:Helvetica,sans-serif">To me, the friction caused by the transition and the inability to do a clean move is more worrying than the missing code review functionality on github.</span><u></u><u></u></div></div></div></div></div></div></blockquote><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"> <u></u><u></u></div></div></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif">Actually, to me this is a red flag. Core reviews shouldn’t be essential documentation. I wonder what has been going wrong so that we have got to this situation.<u></u><u></u></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"> <u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif">If important points are uncovered or documented in code reviews, that information should be included in either the source code or associated documentation. (Having git history as an important record for the evolution of the code is fine as it is now standard to not only have one snapshot of the source, but a source control history of the source as the definitive record of a piece of software. And as we painfully discover, much in contrast to code reviews, the source control history is recorded in a widely understood standard format.)<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"> <u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif">Cheers,<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif">Manuel<u></u><u></u></div></div><div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"> <u></u><u></u></div></div></div></div></div></div></div></blockquote></div><div style="margin:0cm 0cm 0.0001pt;font-size:11pt;font-family:Calibri,sans-serif"><u></u> <u></u></div></div></div></div></div></div><span class=""><span style="font-family:Helvetica;font-size:16px;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;text-decoration:none;float:none;display:inline!important">______________________________<wbr>_________________</span><br style="font-family:Helvetica;font-size:16px;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;text-decoration:none"><span style="font-family:Helvetica;font-size:16px;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;text-decoration:none;float:none;display:inline!important">Ghc-devops-group mailing list</span><br style="font-family:Helvetica;font-size:16px;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;text-decoration:none"><a href="mailto:Ghc-devops-group@haskell.org" style="color:purple;text-decoration:underline;font-family:Helvetica;font-size:16px;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" target="_blank">Ghc-devops-group@haskell.org</a><br style="font-family:Helvetica;font-size:16px;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;text-decoration:none"><a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devops-group" style="color:purple;text-decoration:underline;font-family:Helvetica;font-size:16px;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" target="_blank">https://mail.haskell.org/cgi-<wbr>bin/mailman/listinfo/ghc-<wbr>devops-group</a></span></div></blockquote></div><br></div></div><br>______________________________<wbr>_________________<br>
Ghc-devops-group mailing list<br>
<a href="mailto:Ghc-devops-group@haskell.org">Ghc-devops-group@haskell.org</a><br>
<a href="https://mail.haskell.org/cgi-bin/mailman/listinfo/ghc-devops-group" rel="noreferrer" target="_blank">https://mail.haskell.org/cgi-<wbr>bin/mailman/listinfo/ghc-<wbr>devops-group</a><br>
<br></blockquote></div><br></div>