You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I'm thinking of a program that can assist hackers who are working on a pull request. It should ensure that all necessary steps are taken and take as much work out of a hacker's hands as possible. It should be very friendly to make hackers feel appreciated. I suggest the name rsp-assistant. When a hacker runs the command it should do the following things, probably in this order:
Figure out which branch is going to be submitted and which files have been edited (by using Git, asking for user input if necessary). Remember the choice if rsp-assistant has been run before and offer the choice between switching to another branch and starting another pull request if the current branch is not the same as the previous time (this can be remembered using a file in config).
Check with the user that the branch and the list of affected files are correct.
Check in each file whether copyright and license information is complete (depending on the file type). If not, automatically add it with minimal user intervention.
Check whether the contribution is documented either with a file in doc or with an entry in the documented_cmds list in setup.py. If neither is the case, suggest that the hacker add a -h option to the command and request that they add a file in doc (preferred) or add the -h invocation to the documented_cmds list.
Ask whether the hacker has tested their program. If not, suggest that they test it first. If they did, ask on which platform(s).
Ask the hacker to describe how they did the testing. Offer an automatic POSIX-to-Windows or Windows-to-POSIX translation if applicable.
Push the branch to origin and tell the hacker to do a pull request (if they haven't done so before). Explain to them what needs to be in the pull request. This typically includes:
A short explanation of what the contribution is about.
Any issues that the hacker would like to get advice or opinions on.
What platforms still need to be tested.
The description of the testing procedure, along with the translation if applicable.
What is the expected test outcome.
Ideally rsp-assistant should be as contextualized as possible. For example, if it can read the configuration file of rsp-tutorial (see #72) to detect out what kind of contribution is being worked on (for example a bugfix), that can help to make the advice more specific. It may also be able to use the GitHub API to figure out whether the hacker has done a pull request yet.
Edit: I should mention that @mrhmouse and @firerogue deserve credit for this idea.
The text was updated successfully, but these errors were encountered:
I approve!
However, I think that it shouldn't change any of the files automatically, rather it should use some diff tool to show what the file will change into, and have the hacker approve the change.
I think that the tool should also go to the point of making the pull request using info it gathered earlier in the process + info that the hacker gives it during the pull request.
Of course I agree the program should not just go ahead and change files without the hacker knowing about it. It should announce what it's going to do and what the change will look like. But it's convenient for the hacker if they only need to press enter to make it happen.
It would be very cool if the assistant could even automate the pull request, but I doubt whether that could be done with the GitHub API. After all somebody needs to be signed in to GitHub in order to do a pull request.
Edit: I read up on the GitHub API and it seems that automated pull requests should actually be possible!
I'm thinking of a program that can assist hackers who are working on a pull request. It should ensure that all necessary steps are taken and take as much work out of a hacker's hands as possible. It should be very friendly to make hackers feel appreciated. I suggest the name
rsp-assistant
. When a hacker runs the command it should do the following things, probably in this order:rsp-assistant
has been run before and offer the choice between switching to another branch and starting another pull request if the current branch is not the same as the previous time (this can be remembered using a file inconfig
).doc
or with an entry in thedocumented_cmds
list insetup.py
. If neither is the case, suggest that the hacker add a-h
option to the command and request that they add a file indoc
(preferred) or add the-h
invocation to thedocumented_cmds
list.origin
and tell the hacker to do a pull request (if they haven't done so before). Explain to them what needs to be in the pull request. This typically includes:Ideally
rsp-assistant
should be as contextualized as possible. For example, if it can read the configuration file ofrsp-tutorial
(see #72) to detect out what kind of contribution is being worked on (for example a bugfix), that can help to make the advice more specific. It may also be able to use the GitHub API to figure out whether the hacker has done a pull request yet.Edit: I should mention that @mrhmouse and @firerogue deserve credit for this idea.
The text was updated successfully, but these errors were encountered: