<div dir="ltr"><br><br><div class="gmail_quote">On Fri, Mar 13, 2015 at 12:15 PM Ezio Melotti <<a href="mailto:ezio.melotti@gmail.com">ezio.melotti@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On Fri, Mar 13, 2015 at 2:26 PM, Nick Coghlan <<a href="mailto:ncoghlan@gmail.com" target="_blank">ncoghlan@gmail.com</a>> wrote:<br>
> On 13 March 2015 at 22:08, Brett Cannon <<a href="mailto:bcannon@gmail.com" target="_blank">bcannon@gmail.com</a>> wrote:<br>
>> Another idea would be dropping Rietveld for some other code review tool.<br>
>> Guido has mentioned we should probably switch off since our copy of Rietveld<br>
>> no longer tracks upstream.<br>
><br>
> That's probably not a good idea, given that both PEP 474 and PEP 481<br>
> suggest introducing new code review capable services as<br>
> <a href="http://forge.python.org" target="_blank">forge.python.org</a> (Kallithea and Phabricator respectively) so<br>
> regardless of how that competition turns out, there'll be a potential<br>
> replacement for Rietveld incoming.<br>
><br>
<br>
If Rietveld is going to eventually be replaced, it might be better to<br>
focus the efforts on the bug tracker itself and avoid "large-scale"<br>
projects targeting Rietveld (e.g. updating it with upstream).<br></blockquote><div><br></div><div>SGTM</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
> Since both those PEPs suggest leaving the main CPython workflow alone<br>
> for the time being, and there's nothing actually *broken* with the<br>
> Rietveld integration, it could be worth pursuing some of the simpler<br>
> changers Ezio suggested, like pinging the tracker when a review is<br>
> filed, trying harder to find a base branch,<br>
<br>
These simpler features could still be implemented and they are<br>
probably worth the effort, even if Rietveld will be gone in a couple<br>
of years.<br>
<br>
> or (one we discussed on<br>
> IRC) better defining a workflow for generating patches directly from a<br>
> BitBucket Mercurial clone could still be worthwhile.<br>
><br>
<br>
Determining the desired workflow(s) is one of the reasons why I am<br>
writing this email.<br>
With the current workflow someone posts a patch on the bug tracker and<br>
after a discussion/review a core-dev commits and pushes it. Patch<br>
generation from a remote repo and patch review with Rietveld are also<br>
supported.<br>
If people desire more options, they could be added to the current<br>
workflow (e.g. a better integration with BitBucket, pull requests<br>
support, a Mercurial extension that allow contributors to post patches<br>
to b.p.o directly).<br></blockquote><div><br></div><div>As Nick said, current plans are to try workflows with ancillary repos first -- e.g. peps repo -- and then hopefully eventually graduate to helping with CPython. So making it easier to pull patches from Bitbucket and GitHub would be still be very useful. Same goes for the workflow cleanup that R. David Murray proposed when this was first started.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
AFAIU the introduction of Kallithea/Phabricator and possibly other<br>
tools will likely change our workflow: we might start using pull<br>
requests instead of/in addition to patches, use other review tools<br>
instead of Rietveld, and even commit patches directly from the bug<br>
tracker or other tools.<br></blockquote><div><br></div><div>Yes, but the workflow will bifurcate initially with CPython not changing and everything else shifting. That means making things easier for CPython today with its current workflow will still be beneficial.</div><div><br></div><div>My areas of focus would be:</div><div><br></div><div>* workflow simplification in the issue tracker like what R. David outlined previously</div><div>* Push button patch generation from a GitHub repo</div><div>* Some tool that will update a checkout (or somehow make sure a clone is clean for patching), grab a patch from an issue, apply it, run the test suite, and then ask if the committer wants to commit the patch and submit it (assuming everything else worked out in favour of committing the patch); essentially script what the fancy workflows being proposed using Phabricator/Kallithea do with the assumption the code was already reviewed in the issue tracker and deemed worthy of being committed</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Understanding in which direction we want to go will allow me to put<br>
together a project that, once completed, will have long-term benefits<br>
for our workflow.<br>
Perhaps I should post this to python-dev too and get feedback from a<br>
wider audience.<br></blockquote><div><br></div><div>If you want, but I would assume everyone who cares is here at least for an initial discussion.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
> Sure, we're likely to stop using Rietveld in favour of the winner of<br>
> the <a href="http://forge.python.org" target="_blank">forge.python.org</a> analysis at some point in the future, but that<br>
> point is likely to be quite some time away where CPython is concerned.<br>
><br>
<br>
Having a student investigating how Kallithea and Phabricator will<br>
interact with Roundup and start developing a proof-of-concept<br>
integration and/or tools that we already know will be needed might<br>
also be an idea.<br>
<br></blockquote><div><br></div><div>Yes, especially if I can make a decision fast enough to know which one to focus on.</div><div><br></div><div>-Brett</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Best Regards,<br>
Ezio Melotti<br>
<br>
> Cheers,<br>
> Nick.<br>
><br>
> --<br>
> Nick Coghlan | <a href="mailto:ncoghlan@gmail.com" target="_blank">ncoghlan@gmail.com</a> | Brisbane, Australia<br>
</blockquote></div></div>