Skip to content
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

Should issues be automatically labelled for the appropriate area of p5.js #5636

Closed
stampyzfanz opened this issue Mar 16, 2022 · 15 comments · Fixed by #5731
Closed

Should issues be automatically labelled for the appropriate area of p5.js #5636

stampyzfanz opened this issue Mar 16, 2022 · 15 comments · Fixed by #5731

Comments

@stampyzfanz
Copy link
Contributor

stampyzfanz commented Mar 16, 2022

Topic

I am proposing a GitHub Action to be employed to automatically label new issues based on which checkboxes are checked in the "relevant part of p5.js" section. This section is included in all issue forms except for the discussion form.

image
image

The only reasons against this that I can think of are

  1. The difficulty of setting the system up
  2. People may choose an irrelevant part of p5.js

The benefits are that

  1. It's easier to search for issues
  2. People don't have to manually assign labels.
@welcome
Copy link

welcome bot commented Mar 16, 2022

Welcome! 👋 Thanks for opening your first issue here! And to ensure the community is able to respond to your issue, be sure to follow the issue template if you haven't already.

@limzykenneth
Copy link
Member

I believe @stalgiag investigated using bots to label issues before but I think it didn't quite work at the time. Perhaps it would be possible now with the new issue templates?

@stalgiag
Copy link
Contributor

Yes! I love this idea. I wanted to do it a while back but it should be much easier now with actions and issue templates.

@stampyzfanz
Copy link
Contributor Author

stampyzfanz commented Mar 20, 2022

I created a functional prototype that implements this idea in one of my repositories. It uses GitHub's RegEx Issue Labeler which is probably overkill but it works. It might not be elegant using both the bot and the GitHub Action, but they should be able to co-exist as long as they use separate YAML files which is possible.

I have associated each issue and each checkbox in this fork which I will eventually use for a PR once finalised, but there is not a one-to-one relation. Maybe the labels or the check boxes should be renamed? These are the associations I am unsure about.

  1. Should the checkbox Build tools and processes be both labeled both as area:devops and area:build?
  2. Are the labels area:examples, area:tutorial, area:documentation represented by any of the checkboxes?
  3. What label should be associated with the checkbox Data?
  4. Should the label area:gif be applied to the checkbox image? If not, then area:gif would be unused.
  5. Does the label testing refer to unit tests? If not, then the checkbox Unit Testing would be unused.
  6. Also, should the platform and browser be added as labels?

@limzykenneth
Copy link
Member

@stampyzfanz To me it sounds like we need to review the issue labels that we have and possibly the issue template checkboxes as well. We may need to consolidate some labels into one and split off some into multiple labels. If you like you can start there before we tackle auto labelling?

Labels such as area:devops is kinda unfriendly and as noted possibly overlaps with area:build so we can possibly merge them together.

area:examples and area:tutorial probably doesn't apply to this repo as they should be specific to the website only.

testing probably does refer to unit tests and other automated tests and can be renamed if necessary.

The rest I think is a matter of renaming, removing, or adding new labels. Might be helpful to list everything out so we know what labels we aim to have.

@Qianqianye
Copy link
Contributor

Qianqianye commented Jul 16, 2022

Thank you @stampyzfanz @stalgiag and @limzykenneth for the conversation. I went ahead and cleaned up the labels a bit based on @limzykenneth's suggestions. Below are some label updates:

  • All the Area labels are now coordinated with the src folder structure.
  • Updated some old label's names to Build Process, Unit Testing, Localization Tools, Friendly Errors based on the steward focus areas mentioned in the p5.js Stewards Open Call 🎊 #5719 issue.
  • area:examples, area:tutorial, and some random labels are removed.
  • All the previous issued labeled witharea:build and area:devops are now under Build Process.

Some questions:

  • Currently, the definition of the word Area in the labels and the p5.js Stewards Open Call 🎊 #5719 issue are overlapped but not exactly same. Wondering if we need to replace the word Area in the p5.js Stewards Open Call 🎊 #5719 to something like Section (maybe I am just overthinking)?
  • Should we keep the browser (like Chrome) and OS (like Android) related labels?
  • When we update the GitHub action, shall we require to add at least 2 labels for one issue, one is Area related, another is action related, like bug or feature request? What do you think?

@Qianqianye Qianqianye pinned this issue Jul 16, 2022
@limzykenneth
Copy link
Member

Currently, the definition of the word Area in the labels and the #5719 issue are overlapped but not exactly same. Wondering if we need to replace the word Area in the #5719 to something like Section (maybe I am just overthinking)?

I think this is fine to leave it as area.

Should we keep the browser (like Chrome) and OS (like Android) related labels?

This info should be available as the issue template is filled in so I don't think this is as necessary, and I don't think a scenario in which one would specifically filter by browser or OS comes up often.

When we update the GitHub action, shall we require to add at least 2 labels for one issue, one is Area related, another is action related, like bug or feature request? What do you think?

👍

@Qianqianye
Copy link
Contributor

Thanks @limzykenneth!
Hey @stampyzfanz, do you have any thoughts about the recent label updates? Will you be interested working on this issue? Thank you!

@stampyzfanz
Copy link
Contributor Author

stampyzfanz commented Jul 21, 2022

All the labels look good to me except maybe gif and dependencies which could be capitalized for consistency. Additionally friendly-errors is the only multi word issue using kebab case. I am interesting in working on this issue and have a working prototype with all the correct labels here which should be able to be added here. It uses GitHub's RegEx Issue Labeler like my previous prototype which is probably overkill but it works.

@Qianqianye
Copy link
Contributor

Qianqianye commented Jul 21, 2022

All the labels look good to me except maybe gif and dependencies which could be capitalized for consistency. Additionally friendly-errors is the only multi word issue using kebab case.

Thanks @stampyzfanz for catching that! I have capitalized the Dependencies and GIF label for consistency, and cleaned up the format of Friendly Error label. We are keeping GIF label for now because a GSoC contributor @jesi-rgb is working on a GIF related project, and we might remove the label later if it's confusing.

I am interesting in working on this issue and have a working prototype with all the correct labels here which should be able to be added here. It uses GitHub's RegEx Issue Labeler like my previous prototype which is probably overkill but it works.

In the issue template, would it be possible to add Build Process, Unit Testing, Localization Tools, Friendly Errors as sub-area after the existing sub-areas? So it will coordinate with the stewards focus areas. Thank you!

@jesi-rgb
Copy link
Member

This looks super cool! I love when we can automate these kind of things!!

Also, @Qianqianye if you are worried about the GIF functionality, actually it is not used either in my PR, nor in the issue it references, so you might as well go ahead and remove it already! All good! Thanks for being so thoughtful!

@Qianqianye
Copy link
Contributor

Also, @Qianqianye if you are worried about the GIF functionality, actually it is not used either in my PR, nor in the issue it references, so you might as well go ahead and remove it already! All good! Thanks for being so thoughtful!

Thank you @jesi-rgb. I removed the GIF label, and all the issues labeled GIF are now under Area:Image.

@stampyzfanz
Copy link
Contributor Author

stampyzfanz commented Jul 21, 2022

The labels are much more standardised, thank you. I also assume that there is a good reason why some labels are prefixed with Area and others aren't.

In the issue template, would it be possible to add Build Process, Unit Testing, Localization Tools, Friendly Errors as sub-area after the existing sub-areas? So it will coordinate with the stewards focus areas. Thank you!

I am just doing this right now and have noticed that User Documentation isn't on the issue template either. Should I add it too?

@Qianqianye
Copy link
Contributor

The labels are much more standardised, thank you. I also assume that there is a good reason why some labels are prefixed with Area and others aren't.

The labels prefixed with Area are coordinated with the src folder structure. The labels without Area prefix are the rest ones in the stewards focus areas. Hope this makes sense?

I am just doing this right now and have noticed that User Documentation isn't on the issue template either. Should I add it too?

When you say User Documentation, do you mean Contributor Docs? If so, we can leave it for now because it's too specific.

@Qianqianye Qianqianye unpinned this issue Jul 23, 2022
@Qianqianye
Copy link
Contributor

Thanks @stampyzfanz for working on automating the labelling process.
I just updated the contributor_docs/issue_labels.md with the new label system, please feel free to make edits. Thank you!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants