<div dir="ltr">+1 to this. I will not deny that, for whatever reason, people don't seem to use Arcanist. Using PHP as the scripting language seems to be a major sticking point for people, since it is not typically preinstalled or required for normal LLVM development, in the way that Python is. I've done it, and it works for me.<br><div><br></div><div>I think it makes more sense to try and standardize on the existing tool rather than building our own. If that means writing three docs with steps for Win, Linux, and Mac, so be it, it will cost less to maintain than something custom written against the Phab APIs.</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jan 20, 2020 at 10:09 PM David Tellenbach via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org">llvm-dev@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hi,<br>
<br>
although I think making the arcanist workflow more accessible is an excellent idea I'm not entirely sure if providing a custom script is the best solution (yet).<br>
<br>
A lower hanging fruit would be to have a good and comprehensive documentation, ideally including some example workflows, for using arcanist with LLVM. While the Phabricator documentation on arcanist is quite helpful for getting started it's not very detailed. Our own docs on the topic are basically non-existent.<br>
<br>
The downsides of providing a custom script are obvious: Someone has to write it and someone has to maintain it. Moreover I don't think that arcanist is so complicated that a custom script would be a huge improvement (you'd have to read the documentation of the new tool anyway).<br>
<br>
If a well organized documentation still doesn't resolve the problem of arcanist being too confusing (uncommon, ...) we could definitely think about providing a custom script, I just think it's not the first logical step.<br>
<br>
Thanks,<br>
David<br>
<br>
> On 21. Jan 2020, at 03:15, Florian Hahn via llvm-dev <<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a>> wrote:<br>
> <br>
> Hi,<br>
> <br>
> One takeaway for me from the recent Phabricator vs Github PR discussions was that arc (arcanist) can be a pain to set up and may pose a hurdle for some contributors.<br>
> <br>
> I think those points could be addressed relatively easily by adding a llvm-patch script (or an even better name) that allows users to create and apply patches from <a href="http://reviews.llvm.org" rel="noreferrer" target="_blank">reviews.llvm.org</a> using Phabricators API. In my experience, the three most common uses cases are:<br>
> <br>
> 1. Create a new review from the current HEAD commit in the working directory and let me optionally add subscribers/reviewers<br>
> 2. Update the diff for an existing review with the current HEAD commit in the working directory<br>
> 3. Download the latest diff for a revision and apply it to the working directory, using the commit message from Phabricator.<br>
> <br>
> Those should be fairly easy to implement and as a proof-of-concept I went ahead and put up a patch implementing 3. from the list above: <a href="https://reviews.llvm.org/D73075" rel="noreferrer" target="_blank">https://reviews.llvm.org/D73075</a> .<br>
> <br>
> Please note that the script is probably a bit rough around the edges and I probably won’t have time to implement 1. and 2. in the near future on my own, but maybe someone would be interested in helping out.<br>
> <br>
> I think that could improve the experience for new contributors substantially: <br>
> * Create a new patch: `llvm-patch upload`<br>
> * Apply a patch from a review: `llvm-patch apply D12345`. <br>
> <br>
> WDYT?<br>
> <br>
> Cheers,<br>
> Florian<br>
> _______________________________________________<br>
> LLVM Developers mailing list<br>
> <a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
> <a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
<br>
_______________________________________________<br>
LLVM Developers mailing list<br>
<a href="mailto:llvm-dev@lists.llvm.org" target="_blank">llvm-dev@lists.llvm.org</a><br>
<a href="https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev" rel="noreferrer" target="_blank">https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-dev</a><br>
</blockquote></div>