-
-
Notifications
You must be signed in to change notification settings - Fork 25.9k
Bot for adding "has pr" label to issues #10446
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Comments
Hi @maykulkarni , you sent me a private mail regarding your interest and me helping you in fixing this. Actually I'd (until Joel opened this issue) no prior knowledge that this is indeed required. So for the last part of mail, actually I don't have any further instructions to follow here. See discussion. Though I'm interested in fixing this, I haven't initiated any work on this till now. But if you already have some leads on this, then your help is welcome. |
As much as I'd like maybe one day (in my wildest dreams) to have bots helping us manage the volume of issues we have, I am not really convinced keeping the "help wanted" label up-to-date is really worth it. Personally I am comfortable enough with "help wanted" being a hint that some help may be needed. Then you need to look around to get a feel of the activity around the issue to figure out whether the label is still relevant. I agree it is not great but I don't think there is an easy way around this. The problem with bots is that there is some non-negligible tooling effort (even if it is only configuring an existing tool) and there will always be special cases when we do not want the bot to apply. Even if there is a way to disable the bot on a given issue, learning how to interact with the bot it is still an additional layer of things to learn for new or occasional contributors. A list I know of existing tools some of which may be of interest: https://github.com/collections/tools-for-open-source. Last time I quickly looked, danger seemed interesting. My pet use cases that a bot could cover (maybe one day who knows, but to be honest I am not fully convinced they are worth it either):
|
+1. Instead of a robot, I might prefer to update the contributing guide to let contributors check the status of the issue before contributing (I suppose most contributors are doing so?). |
I feel like some of those things would save time for maintainers, which is
great, but my concern in raising this pr is that we have so many issues
with open PRs that new contributors find it hard to see things to work on,
when there is plenty. This results in contributors fixing the most recent,
rather than the most important, issues.
I feel that marking an issue that has an active PR would be an extremely
helpful way forward for contributors looking for something to work on, and
for maintainers looking for issues to allocate at sprints etc. It may over
generate in the case that a PR stalls, but we have to deal with stalled PRs
anyway.
Do you have specific concerns about this proposal beypng the general costs
of maintaining a bot?
|
but yes some of those suggestions seem very helpful
|
My main concerns:
Looking a bit closer, the most promising thing I could find for your use case is https://github.com/zulip/zulipbot. An example of set-up I found with some features that are similar to what you want:
|
@jnothman mentions:
This results in contributors fixing the most recent, rather than the most important, issues.
How do I look for issues that are 'most important'? Is there some tag
that is currently used for that?
|
No, there isn't. It's very hard to rank definitively.
…On 13 January 2018 at 04:10, Gaurav Dhingra ***@***.***> wrote:
@jnothman mentions:
> This results in contributors fixing the most recent, rather than the
most important, issues.
How do I look for issues that are 'most important'? Is there some tag
that is currently used for that?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#10446 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAEz673V37p5sW6rcjvWS74-ZMlT_nUAks5tJ47cgaJpZM4RZLYG>
.
|
Ah, this is what we need: https://github.com/clarkbw/probot-in-progress |
Although it doesn't appear to have a hosted version, nor does it yet check explicitly for the "fixes" etc words :\ |
Hi all! My name is John and I'm the co-creator of Heupr which is a machine learning-powered app that we're building to help large projects organize and coordinate their teams. We're actively building out our user base and feature set so we'd love to hear your input! One of your maintainers recommended that I comment directly on this issue to get the community's take but I'm also available to chat over email if that's preferred. Let me know what you think! Best, |
hi John, the present discussion seems somewhat orthogonal to the cases
heupr currently handles. We have rarely used the assignment feature,
because until recently it did support assignment to non-members (and
perhaps because of poor email integration), so we don't have much data for
heupr to learn from;, and reviewer assignment might be a bigger issue with
availability being and important but unmeasured and variable factor... We
are also quite a decentralised team so it's not always easy to get
consensus on project management issues. In all, I do not see heupr as a
great fit right now.
On 26 Feb 2018 9:46 am, "John Forstmeier" <[email protected]> wrote:
Hi all!
My name is John and I'm the co-creator of Heupr <https://heupr.io/> which
is a machine learning-powered app that we're building to help large
projects organize and coordinate their teams. We're actively building out
our user base and feature set so we'd love to hear your input!
One of your maintainers recommended that I comment directly on this issue
to get the community's take but I'm also available to chat over email if
that's preferred. Let me know what you think!
Best,
John
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#10446 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAEz66b4PvdptMTuYB_QhJ9bHEiNscdlks5tYeLXgaJpZM4RZLYG>
.
|
Thanks for the quick reply! Let us know if anything changes as we are rolling out expanded features including a new issue labeling/categorization service currently in public beta. |
The option to "to wait for CI when merging a PR" from https://github.com/sindresorhus/refined-github seems quite useful for reviewers as well... |
It also shows the number of accepted reviews / changes requested and the last updated date in the PR list, with sorted by "updated by default" (and lots of other small things), thanks to @nicoddemus for mentioning it! |
Great tool @rth ! |
No, for now, I just wanted to make you aware that it exists. It is somewhat complementary to @lesteve 's JS tools. It remains to be seen if this helps with review much. |
Another potentially useful bot is GitMate - it helps to find related or duplicate issues. It has been used, for instance, by pytest (see example in pytest-dev/pytest#3350 (comment)).. Edit: though the limitations of their free plan might be problematic,
|
For the written record, we had some discussion with @thomasjpfan and a lot of these can be done with a bot. Last time I checked, IFTTT was the only one which could handle these cases, but it's too intrusive in permissions it requires. So I guess a custom github bot would make more sense for our cases. Some examples are:
|
Since the bot have fairly simple logic, I would write them as lambda functions on AWS, Azure, or GCP. The three cloud platforms give a pretty good amount of free compute time for lambda functions:
Basically, there is a cost per execution and for the amount of memory/cpu used. For the tasks we want, most of the time (and cost) spent will be waiting for a response from github after a sending POST request. Edit: The other option would be to use a VPS and manage it ourselves. |
I'm not particularly keen on us doing this from scratch if there is an
alternative. There is probably more complexity, or features that we will
wish for, than we can immediately see...?
|
I would agree, but I spent a day working on this a few weeks ago which included me trying to find bots and/or solutions which could do this on github for us. I may have missed a product out there which does it, but as I said, IFTTT was the only one I saw which could handle these usecases, which is very intrusive in its required permissions. That's why I ended up checking how/if we could do a bot ourselves. Regardless, I'd be happy if we find something out there which works for us. |
I agree IFTTT permissions are too much for a bot. In general, the bot would only need read/write permissions to scikit-learn issues/pr boards since it would be adding labels, writing messages, etc. Using lambda functions would not be doing it from scratch since we would not need to manage the server. We would provide the code that listens to the webhook, do some processing, and sends a request to github. Since we are moving so much to Azure, Azure Functions would work for our bot use case. |
what about https://probot.github.io/ ? |
Those are all valid options to build our bot with. They still need a host to run on. The probot docs have a list of a few options to host: https://probot.github.io/docs/deployment/ The two options that stick up to me are: github actions and zeit Github actions is current in beta, and it looks like it would be a good fit for bots. |
+1 to GitHub actions. |
I just came across this post https://towardsdatascience.com/mlapp-419f90e8f007 |
Indeed, closing. Thanks @cmarmo ! |
We are terrible at removing "help wanted" labels from issues that have solutions in the works. Having another label added automatically when a PR exists that claims to fix an issue would help. Or perhaps just automatically removing "help wanted" would do.
Unfortunately GitHub provides little in the way of API to identify when an issue is referred to, let alone by a pr with "fixes", "closes", etc.
The idea, then, would be to watch activity on the repo (initially by polling the events API; otherwise with a web hook), and when a pull request event comes in, to check if its .payload.pull_request.body contains a "fixes"-style statement, and to label the targeted issue appropriately.
Firstly, the contributor (ping @gxyd) should check if there are existing bot apps for GitHub that can be easily configured to do this (especially to respond to events) Otherwise this should be implemented in a separate repo and initially tested on another repo (or on itself).
Extensions:
The text was updated successfully, but these errors were encountered: