<p dir="ltr">I love the name of the bot!</p>
<br><div class="gmail_quote"><div dir="ltr">On Tue, Dec 27, 2016, 5:50 AM Matthias Bussonnier <<a href="mailto:bussonniermatthias@gmail.com">bussonniermatthias@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Hi all,<br class="gmail_msg">
<br class="gmail_msg">
[Cross posting IPython-dev and Jupyter Google group]<br class="gmail_msg">
<br class="gmail_msg">
Hope you are enjoying the lasts few days of 2016 !<br class="gmail_msg">
<br class="gmail_msg">
I've been recently working on GitHub automation, in particular we have<br class="gmail_msg">
local scripts that we need to run locally to do some common tasks on<br class="gmail_msg">
github, like migrating issues, backporting PR... etc.<br class="gmail_msg">
<br class="gmail_msg">
It is a bit inconvenient as you have to interrupt your workflow, go to<br class="gmail_msg">
a terminal, and issues commands you never remember the syntax, and<br class="gmail_msg">
need to copy/past issues url. So I decided to write a bot to do some<br class="gmail_msg">
of these chores for us when it is mentioned.<br class="gmail_msg">
<br class="gmail_msg">
Right now it only respond to a limited number of commands, but you<br class="gmail_msg">
should be able to activate it on any repository and it will respond to<br class="gmail_msg">
commands as long as you are admin (migration requires you to be admin<br class="gmail_msg">
on both repositories, for example). You do _not_ need to host it.<br class="gmail_msg">
<br class="gmail_msg">
It is hardcoded (for now) to respond only to me, but I can easily<br class="gmail_msg">
whitelist more people if asked[4].<br class="gmail_msg">
<br class="gmail_msg">
For now I've name it Mr Meeseeks, which you will understand if you've<br class="gmail_msg">
seen Rick and Morty season 1. Otherwise you can watch the relevant<br class="gmail_msg">
part [1].<br class="gmail_msg">
<br class="gmail_msg">
Here is the first example of usage on the IPython and Jupyter org[2]:<br class="gmail_msg">
<br class="gmail_msg">
> @Meeseeksdev[bot] migrate to jupyter/qtconsole<br class="gmail_msg">
<br class="gmail_msg">
Replicated issue ipython/ipython#1322 to jupyter/qtconsole#177 [3]<br class="gmail_msg">
<br class="gmail_msg">
Mr Meeseeks also know how to backport PR for small repositories<br class="gmail_msg">
(cherry pick -m merge commit) and submit a PR on the branch you;d like<br class="gmail_msg">
to backport to. On a merged PR:<br class="gmail_msg">
<br class="gmail_msg">
> @Meeseeksdev[bot] backport to 1.x<br class="gmail_msg">
<br class="gmail_msg">
I'm hoping to extend that a bit to extend the functionalities and let<br class="gmail_msg">
user tag/untag (with a limited set of tag ?). There is a bunch of<br class="gmail_msg">
possibility but right now this is using a GitHub Beta API so things<br class="gmail_msg">
possible are limited.<br class="gmail_msg">
<br class="gmail_msg">
At some point it could allow a number of truster user to be able have<br class="gmail_msg">
a finer grain permission model than GitHub and let everyone access to<br class="gmail_msg">
issue tagging/closing/opening, restarting test without always giving<br class="gmail_msg">
commit rights. I'm thinking about how to have per org/repo<br class="gmail_msg">
configuration/customisation/isolation. I'm also hoping to convince<br class="gmail_msg">
GitHub to extend their API to allow for automatic fixes on PR and/or<br class="gmail_msg">
help to find workaround the limitations.<br class="gmail_msg">
<br class="gmail_msg">
This mail is already a bit long, I'll develop how we can improve this<br class="gmail_msg">
somewhere else.<br class="gmail_msg">
<br class="gmail_msg">
If you have any questions ...<br class="gmail_msg">
<br class="gmail_msg">
Cheers,<br class="gmail_msg">
--<br class="gmail_msg">
Matthias<br class="gmail_msg">
<br class="gmail_msg">
[1]: Warning, "Rick and Morty" is known to have harsh language and<br class="gmail_msg">
character behavior. This extract should be relatively gentle though.<br class="gmail_msg">
 <a href="https://www.youtube.com/watch?v=qUYvIAP3qQk" rel="noreferrer" class="gmail_msg" target="_blank">https://www.youtube.com/watch?v=qUYvIAP3qQk</a> (duration 1min8sec)<br class="gmail_msg">
[2]: <a href="https://github.com/ipython/ipython/issues/1322#issuecomment-269317754" rel="noreferrer" class="gmail_msg" target="_blank">https://github.com/ipython/ipython/issues/1322#issuecomment-269317754</a><br class="gmail_msg">
[3]: <a href="https://github.com/jupyter/qtconsole/issues/177" rel="noreferrer" class="gmail_msg" target="_blank">https://github.com/jupyter/qtconsole/issues/177</a><br class="gmail_msg">
[4]: <a href="https://github.com/MeeseeksBox/" rel="noreferrer" class="gmail_msg" target="_blank">https://github.com/MeeseeksBox/</a><br class="gmail_msg">
<br class="gmail_msg">
--<br class="gmail_msg">
You received this message because you are subscribed to the Google Groups "Project Jupyter" group.<br class="gmail_msg">
To unsubscribe from this group and stop receiving emails from it, send an email to <a href="mailto:jupyter%2Bunsubscribe@googlegroups.com" class="gmail_msg" target="_blank">jupyter+unsubscribe@googlegroups.com</a>.<br class="gmail_msg">
To post to this group, send email to <a href="mailto:jupyter@googlegroups.com" class="gmail_msg" target="_blank">jupyter@googlegroups.com</a>.<br class="gmail_msg">
To view this discussion on the web visit <a href="https://groups.google.com/d/msgid/jupyter/CANJQusUXf0nigFYmmMLfbVhdLnbn8gOW8sMiXQ-HL2Hqz51cWg%40mail.gmail.com" rel="noreferrer" class="gmail_msg" target="_blank">https://groups.google.com/d/msgid/jupyter/CANJQusUXf0nigFYmmMLfbVhdLnbn8gOW8sMiXQ-HL2Hqz51cWg%40mail.gmail.com</a>.<br class="gmail_msg">
For more options, visit <a href="https://groups.google.com/d/optout" rel="noreferrer" class="gmail_msg" target="_blank">https://groups.google.com/d/optout</a>.<br class="gmail_msg">
</blockquote></div>