-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
Labels, Milestones, Triaging ⚡ #1603
Comments
We'll let this sit for a bit and get community feedback. If all are good with this, I'll update the labels and projects to reflect this proposed state 👀 |
@jpmcb Great list! One remark/question I had was regarding:
My initial reaction was that I'd like an additional |
Yeah, the I think your analysis is correct. But that also almost makes me think we don't need those proposal / approved labels. |
This looks great @jpmcb, thanks for writing this up! |
Hello @jpmcb, superd documentation, such well organized labels will surely be of great help for everyone! A question out of curiosity, what is the use case of the pr-size-labeler? Asking because I want to know if there is a good practice here that I can leverage with my team. |
Hi @ekamwctx - the purpose of the size labelers is to give maintainers and collaborators an idea how how "big" a change might be. Quickly being able to evaluate that something is "extra small" with just 1 or 2 lines changes should indicate that it probably isn't a very big change. This happens automatically through this GitHub action. It's useful for us and helps to enable maintainers! |
@jpmcb Hi. how often is the new patch version released? |
We don't usually do patch releases, unless there's a regression or a CVE. |
I'm thinking it'll be beneficial to move this out to an actual document in the repo since issues aren't really the most portable thing. PR incoming! |
Labels, Milestones, Triaging ⚡
The following is a living issue, pinned to the top of
cobra
's GitHub issues for wide visibility, that represents the current labeling, triaging, milestone, and maintenance state ofcobra
. Maintainers, contributors, and users may refer to this in order to understand how bugs and features are being triaged and where their feature request may be in the maintenance cycle.Inspired by projects like
kubernetes-sigs/cluster-api
andhelm/helm
Labels 🏷️
kind/
- The type of issuekind/bug
: A bug incobra
; unintended behaviorkind/feature
: A feature request forcobra
; new or enhanced behaviorkind/documentation
: Documentation ofcobra
itselfkind/testing
: CI/CD, testing, etc. forcobra
. Usually also gets the github labelkind/rel-eng
: Related to tagging and releasingcobra
kind/upstream
: Go modulescobra
depends onkind/downstream
: Related to projects/libraries that depend oncobra
(likehelm
orkubernetes
)kind/security
: Related to security concerns incobra
itself. Refer to the security policy before opening any public issue.kind/cleanup
: General cleanup of code, issues, etc.kind/deprecation
: Related to a feature or part of code being deprecatedkind/support
: Questions, supporting users, etc.area/
- The area of work that needs to be executed againstarea/cobra-command
: Corecobra.Command
implementationsarea/shell-completion
: All shell completionsarea/docs-generation
: Generation of docsarea/flags-args
: Changes to functionality around command line flags and argsarea/go
: General Go, likego.mod
orgo.sum
changesarea/github
: For changes to Github specific things not shipped in the library (like maintainers files, actions, etc)area/lib
: Catch all for changes in the cobra librarytriage/
- The state of an issue being triagedtriage/needs-triage
: Needs to be placed into a milestone, or be closed by maintainers. This label is removed once placed into a milestone.triage/blocked
: Cannot move forward until some roadblock is liftedtriage/needs-info
: An issue that needs more investigation from maintainers or more info from the issue providertriage/duplicate
: A duplicate issue. These issues are usually closed after receiving this label.lifecycle/
- Where something is at in it's lifecyclelifecycle/needs-cla
: The CLA still needs to be signed by the PR author. This label is blocking until the CLA is signed.lifecycle/active
: Actively being worked on by a community member or maintainer. This label should also correspond with someone being assigned to the issuelifecycle/needs-proposal
: For large features / bugs that need a proposal and community buy inlifecycle/approved
: For large features / bugs that have a proposal and have gotten community buy inlifecycle/needs-pr
: Ready for a PR from the communitylifecycle/stale
: Labeled by GitHub actions after 30 days of inactivitylifecycle/rotten
: Labeled by GitHub actions after 30 days of having thelifecycle/stale
label. Issues and PRs with this label will close after another 30 days of inactivity.lifecycle/frozen
: Prevents GitHub actions from labeling Issues and PRs withlifecycle/stale
orlifecycle/rotten
lifecycle/wont-do
: For issues and PRs the community has determined are not a priority and will not execute againstsize/
- The size of the PRUtilizes the
pr-size-labeler
to label PRs with a given size per number of lines changedsize/XS
: Denotes a PR that changes 0-9 linessize/S
: Denotes a PR that changes 10-24 linessize/M
: Denotes a PR that changes 24-99 linessize/L
: Denotes a PR that changes 100-199 linessize/XL
: Denotes a PR that changes 200 or more lines. Note: An XL pull request exceeds the recommended size of changes in a single PR. This is fine, but needs special attention from maintainers and may be rejected due to it's size. Make sure you are not addressing multiple issues in a single PR.Nice to have, catch all maintenance labels:
lgtm
: Denotes "looks good to me" from maintainers and signals other collaborators that a PR is ready for additional review and mergegood-first-issue
: A good issue for a new collaborator to tacklehelp-wanted
: An issue that the maintainers would like help onadmin
: For general admin tasks to be done usually by maintainersMilestones 🪨
Milestones are used to categorize work and contributions into specific releases.
next
milestone is used as a catch all for work that is being planned for some arbitrary upcoming release by the communityicebox
milestone is used to track things that may need to be executed against eventually but are blocked, have thelifecycle/frozen
label, etc.Release cadence 🚂
cobra
attempts to release quarterly.This is a best effort.
Generally, a pinned release tracker issue is made that corresponds with the current release. On release, tags will be made on GitHub that than can be consumed by downstream Go modules.
Semver 🥇
Cobra follows Semantic Versioning. This generally means that:
v1.x.x
tov2.x.x
) have breaking changes (like deprecations, changing APIs, etc). Users ofcobra
will need to do some work to update their Go code to consume the latest major versionv1.1.x
to1.2.x
) have no breaking changes, but include new features. Users ofcobra
will not need to do work to update their Go code to consume the latest minor version, but may choose to use the new features.v1.1.1
tov1.1.2
) do not include new features or breaking changes but only backwards compatible bug fixes. Users ofcobra
will not need to do work to update their Go code to consume the latest patch version.For more details, please refer to the Cobra User Contract
The text was updated successfully, but these errors were encountered: