diff --git a/.github/renovate.json b/.github/renovate.json index d7dfba68e54..80c124c32d5 100644 --- a/.github/renovate.json +++ b/.github/renovate.json @@ -3,7 +3,7 @@ "extends": [ "config:base" ], - "labels": ["changelog:dependencies"], + "labels": [":dependabot:", ":label: dependencies"], "packageRules": [ { "matchPackagePatterns": [ @@ -116,7 +116,7 @@ "prHourlyLimit": 10, "vulnerabilityAlerts": { "labels": [ - "security" + ":label: security" ], "automerge": false, "assignees": [ diff --git a/.github/workflows/enforce-pr-labels-beta.yml b/.github/workflows/enforce-pr-labels-beta.yml index 1bd30fb8a6b..7597105d95c 100644 --- a/.github/workflows/enforce-pr-labels-beta.yml +++ b/.github/workflows/enforce-pr-labels-beta.yml @@ -16,15 +16,15 @@ jobs: steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - REQUIRED_LABELS_ANY: 'changelog:breaking,changelog:feat,changelog:bugfix,changelog:perf,changelog:cleanup,changelog:deprecation,changelog:doc,changelog:test,changelog:chore' - REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. ['changelog:breaking', 'changelog:feat', 'changelog:bugfix', 'changelog:perf', 'changelog:cleanup', 'changelog:deprecation', 'changelog:doc', 'changelog:test', 'changelog:chore']" + REQUIRED_LABELS_ANY: ':label: breaking,:label: feat,:label: bug,:label: perf,:label: cleanup,:label: deprecation,:label: doc,:label: test,:label: chore' + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. [':label: breaking', ':label: feat', ':label: bug', ':label: perf', ':label: cleanup', ':label: deprecation', ':label: doc', ':label: test', ':label: chore']" ban-target-labels: runs-on: ubuntu-latest steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - BANNED_LABELS: 'target:canary,target:beta,target:release,target:lts,target:lts-prev,changelog:dependencies' - BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. ['target:canary', 'target:beta', 'target:release', 'target:lts', 'target:lts-prev','changelog:dependencies']" + BANNED_LABELS: ':dart: canary,:dart: beta,:dart: release,:dart: lts,:dart: lts-prev,:label: dependencies' + BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. [':dart: canary', ':dart: beta', ':dart: release', ':dart: lts', ':dart: lts-prev',':label: dependencies']" ban-other-release-branch-labels: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/enforce-pr-labels-canary.yml b/.github/workflows/enforce-pr-labels-canary.yml index b8e5cef547e..c782bc9efde 100644 --- a/.github/workflows/enforce-pr-labels-canary.yml +++ b/.github/workflows/enforce-pr-labels-canary.yml @@ -16,15 +16,15 @@ jobs: steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - REQUIRED_LABELS_ANY: 'changelog:breaking,changelog:feat,changelog:bugfix,changelog:perf,changelog:cleanup,changelog:deprecation,changelog:doc,changelog:test,changelog:chore,changelog:dependencies' - REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. ['changelog:breaking', 'changelog:feat', 'changelog:bugfix', 'changelog:perf', 'changelog:cleanup', 'changelog:deprecation', 'changelog:doc', 'changelog:test', 'changelog:chore', 'changelog:dependencies']" + REQUIRED_LABELS_ANY: ':label: breaking,:label: feat,:label: bug,:label: perf,:label: cleanup,:label: deprecation,:label: doc,:label: test,:label: chore,:label: dependencies' + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. [':label: breaking', ':label: feat', ':label: bug', ':label: perf', ':label: cleanup', ':label: deprecation', ':label: doc', ':label: test', ':label: chore', ':label: dependencies']" enforce-target-label: runs-on: ubuntu-latest steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - REQUIRED_LABELS_ANY: 'target:canary,target:beta,target:release,target:lts,target:lts-prev,changelog:dependencies' - REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for what release channels to target. Use the labels `target:canary` or `changelog:dependencies` and none of the others in the list if this PR should not be backported. ['target:canary', 'target:beta', 'target:release', 'target:lts', 'target:lts-prev']" + REQUIRED_LABELS_ANY: ':dart: canary,:dart: beta,:dart: release,:dart: lts,:dart: lts-prev,:label: dependencies' + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for what release channels to target. Use the labels `:dart: canary` or `:label: dependencies` and none of the others in the list if this PR should not be backported. [':dart: canary', ':dart: beta', ':dart: release', ':dart: lts', ':dart: lts-prev']" ban-release-branch-labels: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/enforce-pr-labels-lts-prev.yml b/.github/workflows/enforce-pr-labels-lts-prev.yml index 68b33e2a05b..8f6cdbc5d1b 100644 --- a/.github/workflows/enforce-pr-labels-lts-prev.yml +++ b/.github/workflows/enforce-pr-labels-lts-prev.yml @@ -17,15 +17,15 @@ jobs: steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - REQUIRED_LABELS_ANY: 'changelog:breaking,changelog:feat,changelog:bugfix,changelog:perf,changelog:cleanup,changelog:deprecation,changelog:doc,changelog:test,changelog:chore' - REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. ['changelog:breaking', 'changelog:feat', 'changelog:bugfix', 'changelog:perf', 'changelog:cleanup', 'changelog:deprecation', 'changelog:doc', 'changelog:test', 'changelog:chore']" + REQUIRED_LABELS_ANY: ':label: breaking,:label: feat,:label: bug,:label: perf,:label: cleanup,:label: deprecation,:label: doc,:label: test,:label: chore' + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. [':label: breaking', ':label: feat', ':label: bug', ':label: perf', ':label: cleanup', ':label: deprecation', ':label: doc', ':label: test', ':label: chore']" ban-target-labels: runs-on: ubuntu-latest steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - BANNED_LABELS: 'target:canary,target:beta,target:release,target:lts,target:lts-prev,changelog:dependencies' - BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. ['target:canary', 'target:beta', 'target:release', 'target:lts', 'target:lts-prev','changelog:dependencies']" + BANNED_LABELS: ':dart: canary,:dart: beta,:dart: release,:dart: lts,:dart: lts-prev,:label: dependencies' + BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. [':dart: canary', ':dart: beta', ':dart: release', ':dart: lts', ':dart: lts-prev',':label: dependencies']" ban-other-release-branch-labels: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/enforce-pr-labels-lts.yml b/.github/workflows/enforce-pr-labels-lts.yml index 31139d833cc..a0234372f9d 100644 --- a/.github/workflows/enforce-pr-labels-lts.yml +++ b/.github/workflows/enforce-pr-labels-lts.yml @@ -17,15 +17,15 @@ jobs: steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - REQUIRED_LABELS_ANY: 'changelog:breaking,changelog:feat,changelog:bugfix,changelog:perf,changelog:cleanup,changelog:deprecation,changelog:doc,changelog:test,changelog:chore' - REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. ['changelog:breaking', 'changelog:feat', 'changelog:bugfix', 'changelog:perf', 'changelog:cleanup', 'changelog:deprecation', 'changelog:doc', 'changelog:test', 'changelog:chore']" + REQUIRED_LABELS_ANY: ':label: breaking,:label: feat,:label: bug,:label: perf,:label: cleanup,:label: deprecation,:label: doc,:label: test,:label: chore' + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. [':label: breaking', ':label: feat', ':label: bug', ':label: perf', ':label: cleanup', ':label: deprecation', ':label: doc', ':label: test', ':label: chore']" ban-target-labels: runs-on: ubuntu-latest steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - BANNED_LABELS: 'target:canary,target:beta,target:release,target:lts,target:lts-prev,changelog:dependencies' - BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. ['target:canary', 'target:beta', 'target:release', 'target:lts', 'target:lts-prev', 'changelog:dependencies']" + BANNED_LABELS: ':dart: canary,:dart: beta,:dart: release,:dart: lts,:dart: lts-prev,:label: dependencies' + BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. [':dart: canary', ':dart: beta', ':dart: release', ':dart: lts', ':dart: lts-prev', ':label: dependencies']" ban-other-release-branch-labels: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/enforce-pr-labels-old-release.yml b/.github/workflows/enforce-pr-labels-old-release.yml index 450d85ec7b0..a42a79395a5 100644 --- a/.github/workflows/enforce-pr-labels-old-release.yml +++ b/.github/workflows/enforce-pr-labels-old-release.yml @@ -16,15 +16,15 @@ jobs: steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - REQUIRED_LABELS_ANY: 'changelog:breaking,changelog:feat,changelog:bugfix,changelog:perf,changelog:cleanup,changelog:deprecation,changelog:doc,changelog:test,changelog:chore' - REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. ['changelog:breaking', 'changelog:feat', 'changelog:bugfix', 'changelog:perf', 'changelog:cleanup', 'changelog:deprecation', 'changelog:doc', 'changelog:test', 'changelog:chore']" + REQUIRED_LABELS_ANY: ':label: breaking,:label: feat,:label: bug,:label: perf,:label: cleanup,:label: deprecation,:label: doc,:label: test,:label: chore' + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. [':label: breaking', ':label: feat', ':label: bug', ':label: perf', ':label: cleanup', ':label: deprecation', ':label: doc', ':label: test', ':label: chore']" ban-target-labels: runs-on: ubuntu-latest steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - BANNED_LABELS: 'target:canary,target:beta,target:release,target:lts,target:lts-prev,changelog:dependencies' - BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. ['target:canary', 'target:beta', 'target:release', 'target:lts', 'target:lts-prev', 'changelog:dependencies']" + BANNED_LABELS: ':dart: canary,:dart: beta,:dart: release,:dart: lts,:dart: lts-prev,:label: dependencies' + BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. [':dart: canary', ':dart: beta', ':dart: release', ':dart: lts', ':dart: lts-prev', ':label: dependencies']" ban-other-release-branch-labels: runs-on: ubuntu-latest steps: diff --git a/.github/workflows/enforce-pr-labels-release.yml b/.github/workflows/enforce-pr-labels-release.yml index 39ec06dd5a8..d988d774749 100644 --- a/.github/workflows/enforce-pr-labels-release.yml +++ b/.github/workflows/enforce-pr-labels-release.yml @@ -16,15 +16,15 @@ jobs: steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - REQUIRED_LABELS_ANY: 'changelog:breaking,changelog:feat,changelog:bugfix,changelog:perf,changelog:cleanup,changelog:deprecation,changelog:doc,changelog:test,changelog:chore' - REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. ['changelog:breaking', 'changelog:feat', 'changelog:bugfix', 'changelog:perf', 'changelog:cleanup', 'changelog:deprecation', 'changelog:doc', 'changelog:test', 'changelog:chore']" + REQUIRED_LABELS_ANY: ':label: breaking,:label: feat,:label: bug,:label: perf,:label: cleanup,:label: deprecation,:label: doc,:label: test,:label: chore' + REQUIRED_LABELS_ANY_DESCRIPTION: "Select at least one label for changelog generation. [':label: breaking', ':label: feat', ':label: bug', ':label: perf', ':label: cleanup', ':label: deprecation', ':label: doc', ':label: test', ':label: chore']" ban-target-labels: runs-on: ubuntu-latest steps: - uses: yogevbd/enforce-label-action@2.2.2 with: - BANNED_LABELS: 'target:canary,target:beta,target:release,target:lts,target:lts-prev,changelog:dependencies' - BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. ['target:canary', 'target:beta', 'target:release', 'target:lts', 'target:lts-prev', 'changelog:dependencies']" + BANNED_LABELS: ':dart: canary,:dart: beta,:dart: release,:dart: lts,:dart: lts-prev,:label: dependencies' + BANNED_LABELS_DESCRIPTION: "These labels should only be used for PRs targeting the main branch, remove them. [':dart: canary', ':dart: beta', ':dart: release', ':dart: lts', ':dart: lts-prev', ':label: dependencies']" ban-other-release-branch-labels: runs-on: ubuntu-latest steps: diff --git a/contributing/submitting-prs.md b/contributing/submitting-prs.md index 3fb6607fc0d..a87c810831a 100644 --- a/contributing/submitting-prs.md +++ b/contributing/submitting-prs.md @@ -46,16 +46,16 @@ Labels used for the changelog include any labels listed in the changelog config These labels are prefixed with `changelog:` and currently the options are: -- `changelog:breaking` which should be used to signify a breaking change -- `changelog:feat` which should be used to signify an addition of a new public feature or behavior -- `changelog:bugfix` which should be used to signify a fix for a reported issue -- `changelog:perf` which should be used to signify that the commit will improve performance characteristics in a meaningful way -- `changelog:cleanup` which should be used to signify removal of deprecated features or that a deprecation has become an assertion. -- `changelog:deprecation` which should be used to signify addition of a new deprecation -- `changelog:doc` which should be used to signify a fix or improvement to documentation generated for api.emberjs.com -- `changelog:test` which should be used to signify addition of new tests or refactoring of existing tests -- `changelog:chore` which should be used to signify refactoring of internal code that should not have an affect on public APIs or behaviors but which we may want to call out for potentially unintended consequences. -- `changelog:dependencies` which should be used when bumping dependencies on `main`. Bumps on other branches should use other labels as this implies a more substantive change. +- `:label: breaking` which should be used to signify a breaking change +- `:label: feat` which should be used to signify an addition of a new public feature or behavior +- `:label: bug` which should be used to signify a fix for a reported issue +- `:label: perf` which should be used to signify that the commit will improve performance characteristics in a meaningful way +- `:label: cleanup` which should be used to signify removal of deprecated features or that a deprecation has become an assertion. +- `:label: deprecation` which should be used to signify addition of a new deprecation +- `:label: doc` which should be used to signify a fix or improvement to documentation generated for api.emberjs.com +- `:label: test` which should be used to signify addition of new tests or refactoring of existing tests +- `:label: chore` which should be used to signify refactoring of internal code that should not have an affect on public APIs or behaviors but which we may want to call out for potentially unintended consequences. +- `:label: dependencies` which should be used when bumping dependencies on `main`. Bumps on other branches should use other labels as this implies a more substantive change. #### Backporting Labels @@ -63,11 +63,11 @@ We use one set of labels to indicate that a PR needs to be backported and where To indicate that a PR should be backported, the following labels, all prefixed with `target:` are available: -- `target:canary` indicates that a PR will not require backporting. -- `target:beta` indicates the PR requires being backported to the current beta release. -- `target:release` indicates the PR requires being backported to the current active release. -- `target:lts` indicates that a PR requires being backported to the most current LTS release. -- `target:lts-prev` indicates that a PR requires being backported to the second-most recent LTS release. +- `:dart: canary` indicates that a PR will not require backporting. +- `:dart: beta` indicates the PR requires being backported to the current beta release. +- `:dart: release` indicates the PR requires being backported to the current active release. +- `:dart: lts` indicates that a PR requires being backported to the most current LTS release. +- `:dart: lts-prev` indicates that a PR requires being backported to the second-most recent LTS release. Note: a PR should add the individual label for _every_ backport target required. We use this while releasing to search for any commits still requiring backport to include, and will eventually automate opening backport PRs via a bot when diff --git a/package.json b/package.json index 498df10df20..9d51a6025c1 100644 --- a/package.json +++ b/package.json @@ -95,15 +95,15 @@ "packageManager": "pnpm@8.7.4", "changelog": { "labels": { - "changelog:breaking": ":boom: Breaking Change", - "changelog:feat": ":rocket: Enhancement", - "changelog:bugfix": ":bug: Bug Fix", - "changelog:perf:": ":zap: Performance", - "changelog:cleanup": ":shower: Deprecation Removal", - "changelog:deprecation": ":evergreen_tree: New Deprecation", - "changelog:doc": ":memo: Documentation", - "changelog:test": ":goal_net: Test", - "changelog:chore": ":house: Internal" + ":label: breaking": ":boom: Breaking Change", + ":label: feat": ":rocket: Enhancement", + ":label: bug": ":bug: Bug Fix", + ":label: perf:": ":zap: Performance", + ":label: cleanup": ":shower: Deprecation Removal", + ":label: deprecation": ":evergreen_tree: New Deprecation", + ":label: doc": ":memo: Documentation", + ":label: test": ":goal_net: Test", + ":label: chore": ":house: Internal" } }, "pnpm": {