Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/data
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2023-02-20 16:49:51 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2023-02-20 16:49:51 +0300
commit71786ddc8e28fbd3cb3fcc4b3ff15e5962a1c82e (patch)
tree6a2d93ef3fb2d353bb7739e4b57e6541f51cdd71 /data
parenta7253423e3403b8c08f8a161e5937e1488f5f407 (diff)
Add latest changes from gitlab-org/gitlab@15-9-stable-eev15.9.0-rc42
Diffstat (limited to 'data')
-rw-r--r--data/deprecations/14-0-approvals-endpoint.yml (renamed from data/removals/16_0/source_code-approvals-endpoint.yml)14
-rw-r--r--data/deprecations/14-8-gitaly-deprecate-legacy-config-options.yml2
-rw-r--r--data/deprecations/15-1-jira-github-enterprise-dvcs.yml6
-rw-r--r--data/deprecations/15-6-deprecate-post-api-v4-runner.yml4
-rw-r--r--data/deprecations/15-6-deprecate-runner-reg-token-helm.yml3
-rw-r--r--data/deprecations/15-6-deprecate-runner-register-command.yml4
-rw-r--r--data/deprecations/15-6-deprecate-runner-register-token-k8s-operator.yml2
-rw-r--r--data/deprecations/15-7-deprecate-api-v4-runner-registration-token-reset-endpoints.yml8
-rw-r--r--data/deprecations/15-7-deprecate-gitlab-runner-exec-cmd.yml4
-rw-r--r--data/deprecations/15-8-deprecate-slack-notifications-integration.yml29
-rw-r--r--data/deprecations/15-8-deprecate-system-hook-test-endpoint.yml24
-rw-r--r--data/deprecations/15-8-jira-connect-app-cookie-auth.yml12
-rw-r--r--data/deprecations/15-9-JWT-OIDC.yml51
-rw-r--r--data/deprecations/15-9-accessibility-testing-deprecation.yml26
-rw-r--r--data/deprecations/15-9-browser-performance-testing-deprecation.yml26
-rw-r--r--data/deprecations/15-9-database-single-database-connection-conf.yml17
-rw-r--r--data/deprecations/15-9-deprecate-external-field-in-graphql-release-asset-link.yml13
-rw-r--r--data/deprecations/15-9-deprecate-external-field-in-releases-and-release-links-apis.yml13
-rw-r--r--data/deprecations/15-9-deprecate-legacy-requirements-iid.yml10
-rw-r--r--data/deprecations/15-9-deprecate-option-to-remove-project-immediately.yml13
-rw-r--r--data/deprecations/15-9-deprecate-queue-selector.yml14
-rw-r--r--data/deprecations/15-9-deprecate-releases-api-filepath.yml23
-rw-r--r--data/deprecations/15-9-deprecate-runner-setup-instructions-api.yml13
-rw-r--r--data/deprecations/15-9-embed-grafana-panels-in-markdown.yml10
-rw-r--r--data/deprecations/15-9-insecure-ci-job-token.yml31
-rw-r--r--data/deprecations/15-9-license-check.yml9
-rw-r--r--data/deprecations/15-9-license-compliance-ci-template.yml15
-rw-r--r--data/deprecations/15-9-load-performance-testing-deprecation.yml26
-rw-r--r--data/deprecations/15-9-php-python-dev-dependencies.yml9
-rw-r--r--data/deprecations/15-9-praefect-metrics-config-variable.yml33
-rw-r--r--data/deprecations/15-9-rails-error-tracking.yml16
-rw-r--r--data/deprecations/15-9-remove-offset-pagination-jobs-api.yml23
-rw-r--r--data/deprecations/15-9-required-pipeline-configuration.yml29
-rw-r--r--data/deprecations/15-9-sast-analyzer-consolidation.yml36
-rw-r--r--data/deprecations/15-9-secure-analyzers-bump.yml55
-rw-r--r--data/deprecations/15-9-secure-template-changes.yml33
-rw-r--r--data/deprecations/15-9-source-code-route-deprecation.yml30
-rw-r--r--data/deprecations/15-9-trigger-job-status.yml42
-rw-r--r--data/deprecations/16-0-Vault-integration.yml46
-rw-r--r--data/deprecations/16-0-fail_null_vault_secrets.yml42
-rw-r--r--data/deprecations/16-0-post-ci-lint.yml2
-rw-r--r--data/removals/15_7/15-7-remove-expansion-file-type-variables-ci-pipeline.yml20
-rw-r--r--data/whats_new/202012160001_13_07.yml2
-rw-r--r--data/whats_new/202209220001_15_04.yml2
-rw-r--r--data/whats_new/202212200001_15_07.yml2
45 files changed, 815 insertions, 29 deletions
diff --git a/data/removals/16_0/source_code-approvals-endpoint.yml b/data/deprecations/14-0-approvals-endpoint.yml
index 0d683206f5a..ae083fda35e 100644
--- a/data/removals/16_0/source_code-approvals-endpoint.yml
+++ b/data/deprecations/14-0-approvals-endpoint.yml
@@ -1,20 +1,16 @@
- title: "Changing merge request approvals with the `/approvals` API endpoint"
- announcement_milestone: "12.3"
- announcement_date: "2019-09-22"
+ announcement_milestone: "14.0"
removal_milestone: "16.0"
- removal_date: "2023-05-22"
breaking_change: true
reporter: tlinz
stage: Create
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/353097
body: | # (required) Do not modify this line, instead modify the lines below.
- To change the approvals required for a merge request, you should no longer use the `/approvals` API endpoint, which was deprecated in GitLab 12.3.
+ To change the approvals required for a merge request, you should no longer use the `/approvals` API endpoint, which was deprecated in GitLab 14.0.
Instead, use the [`/approval_rules` endpoint](https://docs.gitlab.com/ee/api/merge_request_approvals.html#merge-request-level-mr-approvals) to [create](https://docs.gitlab.com/ee/api/merge_request_approvals.html#create-merge-request-level-rule) or [update](https://docs.gitlab.com/ee/api/merge_request_approvals.html#update-merge-request-level-rule) the approval rules for a merge request.
-#
-# OPTIONAL FIELDS
-#
+ end_of_support_milestone:
tiers: Premium
documentation_url: https://docs.gitlab.com/ee/api/merge_request_approvals.html
- image_url: # (optional) This is a link to a thumbnail image depicting the feature
- video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
+ image_url:
+ video_url:
diff --git a/data/deprecations/14-8-gitaly-deprecate-legacy-config-options.yml b/data/deprecations/14-8-gitaly-deprecate-legacy-config-options.yml
index 68ef00e5cd9..ea28b60796d 100644
--- a/data/deprecations/14-8-gitaly-deprecate-legacy-config-options.yml
+++ b/data/deprecations/14-8-gitaly-deprecate-legacy-config-options.yml
@@ -1,6 +1,6 @@
- title: "Deprecate legacy Gitaly configuration methods" # The name of the feature to be deprecated
announcement_milestone: "14.8" # The milestone when this feature was first announced as deprecated.
- removal_milestone: "15.0" # The milestone when this feature is planned to be removed
+ removal_milestone: "16.0" # The milestone when this feature is planned to be removed
breaking_change: true # If this deprecation is a breaking change, set this value to true
reporter: mjwood # GitLab username of the person reporting the deprecation
body: | # Do not modify this line, instead modify the lines below.
diff --git a/data/deprecations/15-1-jira-github-enterprise-dvcs.yml b/data/deprecations/15-1-jira-github-enterprise-dvcs.yml
index 88b1b41953c..8c69dce35fe 100644
--- a/data/deprecations/15-1-jira-github-enterprise-dvcs.yml
+++ b/data/deprecations/15-1-jira-github-enterprise-dvcs.yml
@@ -3,12 +3,12 @@
removal_milestone: "16.0" # The milestone when this feature is planned to be removed
breaking_change: true # If this deprecation is a breaking change, set this value to true
body: | # Do not modify this line, instead modify the lines below.
- The [Jira DVCS Connector](https://docs.gitlab.com/ee/integration/jira/dvcs.html) (which enables the [Jira Development Panel](https://support.atlassian.com/jira-software-cloud/docs/view-development-information-for-an-issue/)), will no longer support Jira Cloud users starting with GitLab 16.0. The [GitLab for Jira App](https://docs.gitlab.com/ee/integration/jira/connect-app.html) has always been recommended for Jira Cloud users, and it will be required instead of the DVCS connector. If you are a Jira Cloud user, we recommended you begin migrating to the GitLab for Jira App.
- Any Jira Server and Jira Data Center users will need to confirm they are not using the GitHub Enterprise Connector to enable the GitLab DVCS integration, but they may continue to use the [native GitLab DVCS integration](https://docs.gitlab.com/ee/integration/jira/dvcs.html) (supported in Jira 8.14 and later).
+ The [Jira DVCS Connector](https://docs.gitlab.com/ee/integration/jira/dvcs/) (which enables the [Jira Development Panel](https://support.atlassian.com/jira-software-cloud/docs/view-development-information-for-an-issue/)), will no longer support Jira Cloud users starting with GitLab 16.0. The [GitLab for Jira App](https://docs.gitlab.com/ee/integration/jira/connect-app.html) has always been recommended for Jira Cloud users, and it will be required instead of the DVCS connector. If you are a Jira Cloud user, we recommended you begin migrating to the GitLab for Jira App.
+ Any Jira Server and Jira Data Center users will need to confirm they are not using the GitHub Enterprise Connector to enable the GitLab DVCS integration, but they may continue to use the [native GitLab DVCS integration](https://docs.gitlab.com/ee/integration/jira/dvcs/) (supported in Jira 8.14 and later).
# The following items are not published on the docs page, but may be used in the future.
stage: Manage # (optional - may be required in the future) String value of the stage that the feature was created in. e.g., Growth
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
issue_url: https://gitlab.com/groups/gitlab-org/-/epics/7508 # (optional) This is a link to the deprecation issue in GitLab
- documentation_url: https://docs.gitlab.com/ee/integration/jira/dvcs.html # (optional) This is a link to the current documentation page
+ documentation_url: https://docs.gitlab.com/ee/integration/jira/dvcs/ # (optional) This is a link to the current documentation page
image_url: # (optional) This is a link to a thumbnail image depicting the feature
video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-6-deprecate-post-api-v4-runner.yml b/data/deprecations/15-6-deprecate-post-api-v4-runner.yml
index fd1e13321eb..f71b8726de9 100644
--- a/data/deprecations/15-6-deprecate-post-api-v4-runner.yml
+++ b/data/deprecations/15-6-deprecate-post-api-v4-runner.yml
@@ -11,11 +11,11 @@
with a GitLab instance at the instance, group, or project level through the API. We plan to remove the support for
registration tokens and certain configuration arguments in this endpoint in GitLab 17.0.
- In GitLab 15.8, we plan to implement a new method to bind runners to a GitLab instance,
+ In GitLab 15.10, we plan to implement a new method to bind runners to a GitLab instance,
as part of the new [GitLab Runner token architecture](https://docs.gitlab.com/ee/architecture/blueprints/runner_tokens/).
This new architecture introduces a new method for registering runners and will eliminate the legacy
[runner registration token](https://docs.gitlab.com/ee/security/token_overview.html#runner-registration-tokens).
From GitLab 17.0 and later, the runner registration methods implemented by the new GitLab Runner token architecture will be the only supported methods.
- end_of_support_milestone: "16.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ end_of_support_milestone: "16.6" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
documentation_url: https://docs.gitlab.com/ee/api/runners.html#register-a-new-runner # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/15-6-deprecate-runner-reg-token-helm.yml b/data/deprecations/15-6-deprecate-runner-reg-token-helm.yml
index 9df458024d4..cbc50918c39 100644
--- a/data/deprecations/15-6-deprecate-runner-reg-token-helm.yml
+++ b/data/deprecations/15-6-deprecate-runner-reg-token-helm.yml
@@ -12,5 +12,6 @@
- A new method to bind runners to a GitLab instance leveraging `runnerToken`.
- A unique system ID saved to the `config.toml`, which will ensure traceability between jobs and runners.
+
From GitLab 17.0 and later, the methods to register runners introduced by the new GitLab Runner token architecture will be the only supported methods.
- end_of_support_milestone: "16.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ end_of_support_milestone: "16.6" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
diff --git a/data/deprecations/15-6-deprecate-runner-register-command.yml b/data/deprecations/15-6-deprecate-runner-register-command.yml
index 709edc0afa2..a908e126bc8 100644
--- a/data/deprecations/15-6-deprecate-runner-register-command.yml
+++ b/data/deprecations/15-6-deprecate-runner-register-command.yml
@@ -7,10 +7,10 @@
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/380872 # (required) Link to the deprecation issue in GitLab
body: | # (required) Do not modify this line, instead modify the lines below.
The support for registration tokens and certain configuration arguments in the command to [register](https://docs.gitlab.com/runner/register/) a runner, `gitlab-runner register` is deprecated.
- GitLab plans to introduce a new [GitLab Runner token architecture](https://docs.gitlab.com/ee/architecture/blueprints/runner_tokens/) in GitLab 15.8,
+ GitLab plans to introduce a new [GitLab Runner token architecture](https://docs.gitlab.com/ee/architecture/blueprints/runner_tokens/) in GitLab 15.10,
which introduces a new method for registering runners and eliminates the legacy
[runner registration token](https://docs.gitlab.com/ee/security/token_overview.html#runner-registration-tokens).
The new method will involve creating the runner in the GitLab UI and passing the
[runner authentication token](https://docs.gitlab.com/ee/security/token_overview.html#runner-authentication-tokens-also-called-runner-tokens)
to the `gitlab-runner register` command.
- end_of_support_milestone: "16.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ end_of_support_milestone: "16.6" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
diff --git a/data/deprecations/15-6-deprecate-runner-register-token-k8s-operator.yml b/data/deprecations/15-6-deprecate-runner-register-token-k8s-operator.yml
index 4aed53f5ffd..7b66978f492 100644
--- a/data/deprecations/15-6-deprecate-runner-register-token-k8s-operator.yml
+++ b/data/deprecations/15-6-deprecate-runner-register-token-k8s-operator.yml
@@ -7,7 +7,7 @@
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/382077 # (required) Link to the deprecation issue in GitLab
body: | # (required) Do not modify this line, instead modify the lines below.
The [`runner-registration-token`](https://docs.gitlab.com/runner/install/operator.html#install-the-kubernetes-operator) parameter that uses the OpenShift and k8s Vanilla Operator to install a runner on Kubernetes is deprecated. GitLab plans to introduce a new [GitLab Runner token architecture](https://docs.gitlab.com/ee/architecture/blueprints/runner_tokens/) in GitLab 15.8, which introduces a new method for registering runners and eliminates the legacy runner registration token.
- end_of_support_milestone: "16.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ end_of_support_milestone: "16.6" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
documentation_url: https://docs.gitlab.com/runner/install/operator.html#install-the-kubernetes-operator # (optional) This is a link to the current documentation page
image_url: # (optional) This is a link to a thumbnail image depicting the feature
diff --git a/data/deprecations/15-7-deprecate-api-v4-runner-registration-token-reset-endpoints.yml b/data/deprecations/15-7-deprecate-api-v4-runner-registration-token-reset-endpoints.yml
index 3f77a9f3d8f..25b2e046f01 100644
--- a/data/deprecations/15-7-deprecate-api-v4-runner-registration-token-reset-endpoints.yml
+++ b/data/deprecations/15-7-deprecate-api-v4-runner-registration-token-reset-endpoints.yml
@@ -1,13 +1,13 @@
- title: "Support for REST API endpoints that reset runner registration tokens" # (required) The name of the feature to be deprecated
announcement_milestone: "15.7" # (required) The milestone when this feature was first announced as deprecated.
- removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ removal_milestone: "17.0" # (required) The milestone when this feature is planned to be removed
breaking_change: true # (required) If this deprecation is a breaking change, set this value to true
reporter: pedropombeiro # (required) GitLab username of the person reporting the deprecation
stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/383341 # (required) Link to the deprecation issue in GitLab
body: | # (required) Do not modify this line, instead modify the lines below.
The support for runner registration tokens is deprecated. As a consequence, the REST API endpoints to reset a registration token are also deprecated and will
- be removed in GitLab 16.0.
+ be removed in GitLab 17.0.
The deprecated endpoints are:
- `POST /runners/reset_registration_token`
@@ -18,7 +18,7 @@
as part of the new [GitLab Runner token architecture](https://docs.gitlab.com/ee/architecture/blueprints/runner_tokens/).
This new architecture introduces a new method for registering runners and will eliminate the legacy
[runner registration token](https://docs.gitlab.com/ee/security/token_overview.html#runner-registration-tokens).
- From GitLab 16.0 and later, the runner registration methods implemented by the new GitLab Runner token architecture will be the only supported methods.
- end_of_support_milestone: "16.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ From GitLab 17.0 and later, the runner registration methods implemented by the new GitLab Runner token architecture will be the only supported methods.
+ end_of_support_milestone: "16.6" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
documentation_url: https://docs.gitlab.com/ee/api/runners.html#register-a-new-runner # (optional) This is a link to the current documentation page
diff --git a/data/deprecations/15-7-deprecate-gitlab-runner-exec-cmd.yml b/data/deprecations/15-7-deprecate-gitlab-runner-exec-cmd.yml
index b1a8e2e3999..cfc1362b0b6 100644
--- a/data/deprecations/15-7-deprecate-gitlab-runner-exec-cmd.yml
+++ b/data/deprecations/15-7-deprecate-gitlab-runner-exec-cmd.yml
@@ -1,13 +1,13 @@
- title: "The `gitlab-runner exec` command is deprecated" # (required) The name of the feature to be deprecated
announcement_milestone: "15.7" # (required) The milestone when this feature was first announced as deprecated.
- removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ removal_milestone: "17.0" # (required) The milestone when this feature is planned to be removed
breaking_change: true # (required) If this deprecation is a breaking change, set this value to true
reporter: DarrenEastman # (required) GitLab username of the person reporting the deprecation
stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/385235 # (required) Link to the deprecation issue in GitLab
body: | # (required) Do not modify this line, instead modify the lines below.
The [`gitlab-runner exec`](https://docs.gitlab.com/runner/commands/#gitlab-runner-exec) command is deprecated and will be fully removed from GitLab Runner in 16.0. The `gitlab-runner exec` feature was initially developed to provide the ability to validate a GitLab CI pipeline on a local system without needing to commit the updates to a GitLab instance. However, with the continued evolution of GitLab CI, replicating all GitLab CI features into `gitlab-runner exec` was no longer viable. Pipeline syntax and validation [simulation](https://docs.gitlab.com/ee/ci/pipeline_editor/#simulate-a-cicd-pipeline) are available in the GitLab pipeline editor.
- end_of_support_milestone: "16.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ end_of_support_milestone: "17.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
# OTHER OPTIONAL FIELDS
diff --git a/data/deprecations/15-8-deprecate-slack-notifications-integration.yml b/data/deprecations/15-8-deprecate-slack-notifications-integration.yml
new file mode 100644
index 00000000000..3cbcbc83925
--- /dev/null
+++ b/data/deprecations/15-8-deprecate-slack-notifications-integration.yml
@@ -0,0 +1,29 @@
+- title: "Slack notifications integration" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "17.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: g.hickman # (required) GitLab username of the person reporting the change
+ stage: manage # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/372411 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ As we're consolidating all Slack capabilities into the
+ GitLab for Slack app, we're [deprecating the Slack notifications
+ integration](https://gitlab.com/gitlab-org/gitlab/-/issues/372411).
+ GitLab.com users can now use the GitLab for Slack app to manage notifications
+ to their Slack workspace. For self-managed users of the Slack notifications integration,
+ we'll be introducing support in [this epic](https://gitlab.com/groups/gitlab-org/-/epics/1211).
+
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: "17.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: [Free, Silver, Gold] # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/user/project/integrations/slack.html # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-8-deprecate-system-hook-test-endpoint.yml b/data/deprecations/15-8-deprecate-system-hook-test-endpoint.yml
new file mode 100644
index 00000000000..afde85f03d9
--- /dev/null
+++ b/data/deprecations/15-8-deprecate-system-hook-test-endpoint.yml
@@ -0,0 +1,24 @@
+- title: "Test system hook endpoint" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "The maximum number of characters in a job name will be limited to 250."
+ announcement_milestone: "15.8" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) If this deprecation is a breaking change, set this value to true
+ reporter: arturoherrero # (required) GitLab username of the person reporting the deprecation
+ stage: Manage # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/381572 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ The [test system hook](https://docs.gitlab.com/ee/api/system_hooks.html#test-system-hook) endpoint returns dummy data.
+ This endpoint is now deprecated and will be removed from the GitLab codebase.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: "16.0" # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: [Core, Premium, Ultimate] # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/api/system_hooks.html#test-system-hook # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-8-jira-connect-app-cookie-auth.yml b/data/deprecations/15-8-jira-connect-app-cookie-auth.yml
new file mode 100644
index 00000000000..324bcb83ae9
--- /dev/null
+++ b/data/deprecations/15-8-jira-connect-app-cookie-auth.yml
@@ -0,0 +1,12 @@
+- title: "Cookie authorization in the GitLab for Jira Cloud app" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.8" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: Andysoiron # (required) GitLab username of the person reporting the change
+ stage: Manage # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/387299 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Cookie authentication in the GitLab for Jira Cloud app is now deprecated in favor of OAuth authentication.
+ You must [set up OAuth authentication](https://docs.gitlab.com/ee/integration/jira/connect-app.html#set-up-oauth-authentication)
+ to continue to use the GitLab for Jira Cloud app. Without OAuth, you will not be able to manage linked namespaces.
+ tiers: [Core, Premium, Ultimate] # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
diff --git a/data/deprecations/15-9-JWT-OIDC.yml b/data/deprecations/15-9-JWT-OIDC.yml
new file mode 100644
index 00000000000..e924d698bc5
--- /dev/null
+++ b/data/deprecations/15-9-JWT-OIDC.yml
@@ -0,0 +1,51 @@
+# This is a template for announcing a feature deprecation or other important planned change.
+#
+# Please refer to the deprecation guidelines to confirm your understanding of GitLab's definitions.
+# https://docs.gitlab.com/ee/development/deprecation_guidelines/#terminology
+#
+# Deprecations and other future breaking changes must be announced at least
+# three releases prior to removal.
+#
+# Breaking changes must happen in a major release.
+#
+# See the OPTIONAL END OF SUPPORT FIELDS section below if an End of Support period also applies.
+#
+# For more information please refer to the handbook documentation here:
+# https://about.gitlab.com/handbook/marketing/blog/release-posts/#deprecations-and-other-planned-breaking-change-announcements
+#
+# Please delete this line and above before submitting your merge request.
+#
+# REQUIRED FIELDS
+#
+- title: "Old versions of JSON web tokens are deprecated"
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: dhershkovitch # (required) GitLab username of the person reporting the change
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/366798 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Now that we have released [ID tokens](https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html)
+ with OIDC support, the old JSON web tokens are deprecated and will be removed.
+ Both the `CI_JOB_JWT` and `CI_JOB_JWT_V2` tokens, exposed to jobs as predefined variables,
+ will no longer be available in GitLab 16.0.
+
+ To prepare for this change, you should:
+
+ - Configure your pipelines to use the fully configurable and more secure
+ [`id_token`](https://docs.gitlab.com/ee/ci/yaml/index.html#id_tokens) keyword instead.
+ - [Enable the **Limit JSON Web Token (JWT) access**](https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html#enable-automatic-id-token-authentication)
+ setting, which prevents the old tokens from being exposed to any jobs. This setting
+ will be permanently enabled for all projects in GitLab 16.0.
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-accessibility-testing-deprecation.yml b/data/deprecations/15-9-accessibility-testing-deprecation.yml
new file mode 100644
index 00000000000..17863cf78af
--- /dev/null
+++ b/data/deprecations/15-9-accessibility-testing-deprecation.yml
@@ -0,0 +1,26 @@
+#
+# REQUIRED FIELDS
+#
+- title: "Accessibility Testing is deprecated" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "17.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: jocelynjane # (required) GitLab username of the person reporting the change
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/390424 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Due to low customer usage, Accessibility Testing is deprecated and will be removed. There is no planned replacement and users should stop using Accessibility Testing before GitLab 17.0.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/ci/testing/accessibility_testing.html # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-browser-performance-testing-deprecation.yml b/data/deprecations/15-9-browser-performance-testing-deprecation.yml
new file mode 100644
index 00000000000..a5d7429b56b
--- /dev/null
+++ b/data/deprecations/15-9-browser-performance-testing-deprecation.yml
@@ -0,0 +1,26 @@
+#
+# REQUIRED FIELDS
+#
+- title: "Browser Performance Testing is deprecated" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "17.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: jocelynjane # (required) GitLab username of the person reporting the change
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/388719 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Due to limited customer usage, Browser Performance Testing is deprecated and will be removed. There is no planned replacement and users should stop using Browser Performance Testing before GitLab 17.0.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: Premium # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/ci/testing/browser_performance_testing.html # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-database-single-database-connection-conf.yml b/data/deprecations/15-9-database-single-database-connection-conf.yml
new file mode 100644
index 00000000000..c7d59e860ca
--- /dev/null
+++ b/data/deprecations/15-9-database-single-database-connection-conf.yml
@@ -0,0 +1,17 @@
+- title: "Single database connection is deprecated"
+ announcement_milestone: "15.9"
+ removal_milestone: "17.0"
+ breaking_change: true
+ reporter: tkuah
+ stage: Enablement
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/387898
+ body: |
+ Previously, [GitLab's database](https://docs.gitlab.com/omnibus/settings/database.html)
+ configuration had a single `main:` section. This is being deprecated. The new
+ configuration has both a `main:` and a `ci:` section.
+
+ This deprecation affects users compiling GitLab from source, who will need
+ to [add the `ci:` section](https://docs.gitlab.com/ee/install/installation.html#configure-gitlab-db-settings).
+ Omnibus, the Helm chart, and Operator will handle this configuration
+ automatically from GitLab 16.0 onwards.
+ documentation_url: https://docs.gitlab.com/ee/install/installation.html#configure-gitlab-db-settings
diff --git a/data/deprecations/15-9-deprecate-external-field-in-graphql-release-asset-link.yml b/data/deprecations/15-9-deprecate-external-field-in-graphql-release-asset-link.yml
new file mode 100644
index 00000000000..3cc9505a0b1
--- /dev/null
+++ b/data/deprecations/15-9-deprecate-external-field-in-graphql-release-asset-link.yml
@@ -0,0 +1,13 @@
+- title: "External field in GraphQL ReleaseAssetLink type"
+ announcement_milestone: "15.9"
+ announcement_date: "2023-02-22"
+ removal_milestone: "16.0"
+ removal_date: "2023-05-22"
+ breaking_change: true
+ reporter: ahmed.hemdan
+ body: |
+ In the [GraphQL API](https://docs.gitlab.com/ee/api/graphql), the `external` field of [`ReleaseAssetLink` type](https://docs.gitlab.com/ee/api/graphql/reference/index.html#releaseassetlink) was used to indicate whether a [release link](https://docs.gitlab.com/ee/user/project/releases/release_fields.html#links) is internal or external to your GitLab instance.
+ As of GitLab 15.9, we treat all release links as external, and therefore, this field is deprecated in GitLab 15.9, and will be removed in GitLab 16.0.
+ To avoid any disruptions to your workflow, please stop using the `external` field because it will be removed and will not be replaced.
+ stage: Release
+ issue_url:
diff --git a/data/deprecations/15-9-deprecate-external-field-in-releases-and-release-links-apis.yml b/data/deprecations/15-9-deprecate-external-field-in-releases-and-release-links-apis.yml
new file mode 100644
index 00000000000..9415cac6ca6
--- /dev/null
+++ b/data/deprecations/15-9-deprecate-external-field-in-releases-and-release-links-apis.yml
@@ -0,0 +1,13 @@
+- title: "External field in Releases and Release Links APIs"
+ announcement_milestone: "15.9"
+ announcement_date: "2023-02-22"
+ removal_milestone: "16.0"
+ removal_date: "2023-05-22"
+ breaking_change: true
+ reporter: ahmed.hemdan
+ body: |
+ In [Releases API](https://docs.gitlab.com/ee/api/releases) and [Release Links API](https://docs.gitlab.com/ee/api/releases/links.html), the `external` field was used to indicate whether a [release link](https://docs.gitlab.com/ee/user/project/releases/release_fields.html#links) is internal or external to your GitLab instance.
+ As of GitLab 15.9, we treat all release links as external, and therefore, this field is deprecated in GitLab 15.9, and will be removed in GitLab 16.0.
+ To avoid any disruptions to your workflow, please stop using the `external` field because it will be removed and will not be replaced.
+ stage: Release
+ issue_url:
diff --git a/data/deprecations/15-9-deprecate-legacy-requirements-iid.yml b/data/deprecations/15-9-deprecate-legacy-requirements-iid.yml
new file mode 100644
index 00000000000..05ae0feaa47
--- /dev/null
+++ b/data/deprecations/15-9-deprecate-legacy-requirements-iid.yml
@@ -0,0 +1,10 @@
+- title: 'The GitLab legacy requirement IID is deprecated in favor of work item IID'
+ announcement_milestone: '15.9'
+ removal_milestone: '17.0'
+ breaking_change: true
+ reporter: mmacfarlane
+ body: |
+ We will be transitioning to a new IID as a result of moving requirements to a [work item type](https://docs.gitlab.com/ee/development/work_items.html#work-items-and-work-item-types). Users should begin using the new IID as support for the legacy IID and existing formatting will end in GitLab 17.0. The legacy requirement IID remains available until its removal in GitLab 17.0.
+
+ stage: plan
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/390263
diff --git a/data/deprecations/15-9-deprecate-option-to-remove-project-immediately.yml b/data/deprecations/15-9-deprecate-option-to-remove-project-immediately.yml
new file mode 100644
index 00000000000..687270fbb71
--- /dev/null
+++ b/data/deprecations/15-9-deprecate-option-to-remove-project-immediately.yml
@@ -0,0 +1,13 @@
+- title: "Option to delete projects immediately is deprecated from deletion protection settings" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: lohrc # (required) GitLab username of the person reporting the change
+ stage: manage # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/389557 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ The project deletion protection setting in the Admin Area had an option to delete projects immediately. Starting with 16.0, this option will no longer be available, and delayed project deletion will become the default behavior.
+
+ The option will no longer appear as a group setting. Self-managed users will still have the option to define the deletion delay period, and SaaS users have a non-adjustable default retention period of 7 days. Users can still delete the project immediately from the project settings.
+
+ The option to delete projects immediately by default was deprecated to prevent users from accidentally taking this action and permanently losing projects.
diff --git a/data/deprecations/15-9-deprecate-queue-selector.yml b/data/deprecations/15-9-deprecate-queue-selector.yml
new file mode 100644
index 00000000000..242ee922360
--- /dev/null
+++ b/data/deprecations/15-9-deprecate-queue-selector.yml
@@ -0,0 +1,14 @@
+- title: "Queue selector for running Sidekiq is deprecated" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "17.0" # (required) The milestone when this feature is planned to be removed
+ end_of_support_milestone: "16.0"
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: marcogreg # (required) GitLab username of the person reporting the change
+ stage: scalability # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/390787 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Running Sidekiq with a [queue selector](https://docs.gitlab.com/ee/administration/sidekiq/processing_specific_job_classes.html#queue-selectors) (having multiple processes listening to a set of queues) and [negate settings](https://docs.gitlab.com/ee/administration/sidekiq/processing_specific_job_classes.html#negate-settings) is deprecated and will be fully removed in 17.0.
+
+ You can migrate away from queue selectors to [listening to all queues in all processes](https://docs.gitlab.com/ee/administration/sidekiq/extra_sidekiq_processes.html#start-multiple-processes). For example, if Sidekiq is currently running with 4 processes (denoted by 4 elements in `sidekiq['queue_groups']` in `/etc/gitlab/gitlab.rb`) with queue selector (`sidekiq['queue_selector'] = true`), you can change Sidekiq to listen to all queues in all 4 processes,for example `sidekiq['queue_groups'] = ['*'] * 4`. This approach is also recommended in our [Reference Architecture](https://docs.gitlab.com/ee/administration/reference_architectures/5k_users.html#configure-sidekiq). Note that Sidekiq can effectively run as many processes as the number of CPUs in the machine.
+
+ While the above approach is recommended for most instances, Sidekiq can also be run using [routing rules](https://docs.gitlab.com/ee/administration/sidekiq/processing_specific_job_classes.html#routing-rules) which is also being used on GitLab.com. You can follow the [migration guide from queue selectors to routing rules](https://docs.gitlab.com/ee/administration/sidekiq/processing_specific_job_classes.html#migrating-from-queue-selectors-to-routing-rules). You need to take care with the migration to avoid losing jobs entirely.
diff --git a/data/deprecations/15-9-deprecate-releases-api-filepath.yml b/data/deprecations/15-9-deprecate-releases-api-filepath.yml
new file mode 100644
index 00000000000..87233df7556
--- /dev/null
+++ b/data/deprecations/15-9-deprecate-releases-api-filepath.yml
@@ -0,0 +1,23 @@
+- title: "Filepath field in Releases and Release Links APIs"
+ announcement_milestone: "15.9"
+ announcement_date: "2023-02-22"
+ removal_milestone: "17.0"
+ removal_date: "2024-04-22"
+ breaking_change: true
+ reporter: cbalane
+ body: |
+ Support for specifying a `filepath` for a direct asset link in the [Releases API](https://docs.gitlab.com/ee/api/releases)
+ and [Release Links API](https://docs.gitlab.com/ee/api/releases/links.html) is deprecated in GitLab 15.9 and will be
+ removed in GitLab 17.0. GitLab introduced a new field called `direct_asset_path` in GitLab 15.9 to replace `filepath`
+ until it is finally removed.
+
+ To avoid any disruptions, you should replace `filepath` with `direct_asset_path` in your calls to the following endpoints:
+
+ - Releases API:
+ - [Create a release](https://docs.gitlab.com/ee/api/releases/#create-a-release)
+ - [Download a release asset](https://docs.gitlab.com/ee/api/releases/#download-a-release-asset)
+ - Release Links API:
+ - [Create a release link](https://docs.gitlab.com/ee/api/releases/links.html#create-a-release-link)
+ - [Update a release link](https://docs.gitlab.com/ee/api/releases/links.html#update-a-release-link)
+ stage: Release
+ issue_url: https://gitlab.com/groups/gitlab-org/-/epics/9661
diff --git a/data/deprecations/15-9-deprecate-runner-setup-instructions-api.yml b/data/deprecations/15-9-deprecate-runner-setup-instructions-api.yml
new file mode 100644
index 00000000000..4f5c301b7c2
--- /dev/null
+++ b/data/deprecations/15-9-deprecate-runner-setup-instructions-api.yml
@@ -0,0 +1,13 @@
+- title: 'GitLab Runner platforms and setup instructions in GraphQL API'
+ announcement_milestone: '15.9'
+ announcement_date: '2023-02-22'
+ removal_milestone: '17.0'
+ removal_date: '2024-05-22'
+ breaking_change: true
+ reporter: mrincon
+ body: |
+ The `runnerPlatforms` and `runnerSetup` queries to get GitLab Runner platforms and installation instructions
+ are deprecated and will be removed from the GraphQL API. For installation instructions, you should use the
+ [GitLab Runner documentation](https://docs.gitlab.com/runner/)
+ stage: verify
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/387937
diff --git a/data/deprecations/15-9-embed-grafana-panels-in-markdown.yml b/data/deprecations/15-9-embed-grafana-panels-in-markdown.yml
new file mode 100644
index 00000000000..4816678cca6
--- /dev/null
+++ b/data/deprecations/15-9-embed-grafana-panels-in-markdown.yml
@@ -0,0 +1,10 @@
+- title: 'Embedding Grafana panels in Markdown is deprecated'
+ announcement_milestone: '15.9'
+ removal_milestone: '16.0'
+ breaking_change: true
+ reporter: abellucci
+ body: |
+ The ability to add Grafana panels in GitLab Flavored Markdown is deprecated in 15.9 and will be removed in 16.0.
+ We intend to replace this feature with the ability to [embed charts](https://gitlab.com/groups/gitlab-org/opstrace/-/epics/33) with the [GitLab Observability UI](https://gitlab.com/gitlab-org/opstrace/opstrace-ui).
+ stage: monitor
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/389477
diff --git a/data/deprecations/15-9-insecure-ci-job-token.yml b/data/deprecations/15-9-insecure-ci-job-token.yml
new file mode 100644
index 00000000000..eb40224335c
--- /dev/null
+++ b/data/deprecations/15-9-insecure-ci-job-token.yml
@@ -0,0 +1,31 @@
+#
+# REQUIRED FIELDS
+#
+- title: "Default CI/CD job token (`CI_JOB_TOKEN`) scope changed" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) If this deprecation is a breaking change, set this value to true
+ reporter: jheimbuck_gl # (required) GitLab username of the person reporting the deprecation
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/335465 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ In GitLab 14.4 we introduced the ability to limit the "outbound" scope of the CI/CD job token (`CI_JOB_TOKEN`) to make it more secure. You can prevent job tokens from your project's pipelines from being used to access other projects. If needed, you can list specific projects that you want to access with your project's job tokens.
+
+ In 15.9 we extended this functionality with a better solution, an "inbound" scope limit. You can prevent the job tokens from _other_ projects from being used to access your project. With this feature, you can optionally list specific projects that you want to allow to access your project with _their_ job token.
+
+ In 16.0, this inbound scope limit will be the only option available for all projects, and the outbound limit setting will be removed. To prepare for this change, you can enable the ["inbound" CI/CD job token limit](https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#configure-the-job-token-scope-limit) feature now, and list any projects that need to access your project.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ end_of_support_date: # (optional) The date of the milestone release when support for this feature will end.
+#
+# OTHER OPTIONAL FIELDS
+#
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: "https://docs.gitlab.com/ee/ci/jobs/ci_job_token.html#configure-the-job-token-scope-limit" # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-license-check.yml b/data/deprecations/15-9-license-check.yml
new file mode 100644
index 00000000000..1c364233cc9
--- /dev/null
+++ b/data/deprecations/15-9-license-check.yml
@@ -0,0 +1,9 @@
+- title: "License-Check and the Policies tab on the License Compliance page"
+ announcement_milestone: "15.9"
+ removal_milestone: "16.0"
+ breaking_change: true
+ reporter: sam.white
+ stage: govern
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/390417
+ body: |
+ The [License-Check feature](https://docs.gitlab.com/ee/user/compliance/license_check_rules.html) is now deprecated and is scheduled for removal in GitLab 16.0. Additionally, the Policies tab on the License Compliance page and all APIs related to the License-Check feature are deprecated and planned for removal in GitLab 16.0. Users who wish to continue to enforce approvals based on detected licenses are encouraged to create a new [License Approval policy](https://docs.gitlab.com/ee/user/compliance/license_approval_policies.html) instead.
diff --git a/data/deprecations/15-9-license-compliance-ci-template.yml b/data/deprecations/15-9-license-compliance-ci-template.yml
new file mode 100644
index 00000000000..7fd6a348915
--- /dev/null
+++ b/data/deprecations/15-9-license-compliance-ci-template.yml
@@ -0,0 +1,15 @@
+- title: "License Compliance CI Template"
+ announcement_milestone: "15.9"
+ removal_milestone: "16.0"
+ breaking_change: true
+ reporter: sam.white
+ stage: secure
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/387561
+ body: |
+ The GitLab [License Compliance](https://docs.gitlab.com/ee/user/compliance/license_compliance/) CI template is now deprecated and is scheduled for removal in the GitLab 16.0 release. Users who wish to continue using GitLab for License Compliance should remove the License Compliance template from their CI pipeline and add the [Dependency Scanning template](https://docs.gitlab.com/ee/user/application_security/dependency_scanning/#configuration). The Dependency Scanning template is now capable of gathering the required license information so it is no longer necessary to run a separate License Compliance job. The License Compliance CI template should not be removed prior to verifying that the `license_scanning_sbom_scanner` and `package_metadata_synchronization` flags are enabled for the instance and that the instance has been upgraded to a version that supports [the new method of license scanning](https://docs.gitlab.com/ee/user/compliance/license_scanning_of_cyclonedx_files/).
+
+ | CI Pipeline Includes | GitLab <= 15.8 | 15.9 <= GitLab < 16.0 | GitLab >= 16.0 |
+ | ------------- | ------------- | ------------- | ------------- |
+ | Both DS and LS templates | License data from LS job is used | License data from LS job is used | License data from DS job is used |
+ | DS template is included but LS template is not | No license data | License data from DS job is used | License data from DS job is used |
+ | LS template is included but DS template is not | License data from LS job is used | License data from LS job is used | No license data |
diff --git a/data/deprecations/15-9-load-performance-testing-deprecation.yml b/data/deprecations/15-9-load-performance-testing-deprecation.yml
new file mode 100644
index 00000000000..77b56c69f92
--- /dev/null
+++ b/data/deprecations/15-9-load-performance-testing-deprecation.yml
@@ -0,0 +1,26 @@
+#
+# REQUIRED FIELDS
+#
+- title: "Load Performance Testing is deprecated" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "17.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: jocelynjane # (required) GitLab username of the person reporting the change
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/388723 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Due to low customer usage, Load Performance Testing is deprecated and will be removed. There is no planned replacement and users should stop using Load Performance Testing before GitLab 17.0.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: Premium # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/ci/testing/load_performance_testing.html # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-php-python-dev-dependencies.yml b/data/deprecations/15-9-php-python-dev-dependencies.yml
new file mode 100644
index 00000000000..f76bc3db5cb
--- /dev/null
+++ b/data/deprecations/15-9-php-python-dev-dependencies.yml
@@ -0,0 +1,9 @@
+- title: "Development dependencies reported for PHP and Python"
+ announcement_milestone: "15.9"
+ removal_milestone: "16.0"
+ breaking_change: true
+ reporter: sam.white
+ stage: secure
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/375505
+ body: |
+ In GitLab 16.0 the GitLab Dependency Scanning analyzer will begin reporting development dependencies for both Python/pipenv and PHP/composer projects. Users who do not wish to have these development dependencies reported should set `DS_INCLUDE_DEV_DEPENDENCIES: false` in their CI/CD file.
diff --git a/data/deprecations/15-9-praefect-metrics-config-variable.yml b/data/deprecations/15-9-praefect-metrics-config-variable.yml
new file mode 100644
index 00000000000..71d1ebee3a6
--- /dev/null
+++ b/data/deprecations/15-9-praefect-metrics-config-variable.yml
@@ -0,0 +1,33 @@
+# REQUIRED FIELDS
+#
+- title: "Support for Praefect custom metrics endpoint configuration"
+ announcement_milestone: "15.9"
+ removal_milestone: "16.0"
+ breaking_change: true
+ reporter: mjwood
+ stage: Gitaly
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/390266
+ body: |
+ Support for using the `prometheus_exclude_database_from_default_metrics` configuration value is deprecated in GitLab
+ 15.9 and will be removed in GitLab 16.0. We are removing this configuration value because using it is non-performant.
+ This change means the following metrics will become unavailable on `/metrics`:
+
+ - `gitaly_praefect_unavailable_repositories`.
+ - `gitaly_praefect_verification_queue_depth`.
+ - `gitaly_praefect_replication_queue_depth`.
+
+ This may require updating your metrics collection targets to also scrape `/db_metrics`.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-rails-error-tracking.yml b/data/deprecations/15-9-rails-error-tracking.yml
new file mode 100644
index 00000000000..42ec004afa9
--- /dev/null
+++ b/data/deprecations/15-9-rails-error-tracking.yml
@@ -0,0 +1,16 @@
+- title: "Error Tracking UI in GitLab Rails is deprecated"
+ announcement_milestone: "15.9"
+ removal_milestone: "16.0"
+ breaking_change: true
+ reporter: kbychu
+ stage: monitor
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/389991
+ body: |
+ The [Error Tracking UI](https://docs.gitlab.com/ee/operations/error_tracking.html) is deprecated in 15.9 and will be removed in 16.0. In future versions, you should use the [GitLab Observability UI](https://gitlab.com/gitlab-org/opstrace/opstrace-ui/), which will gradually be made available on GitLab.com over the next few releases.
+
+ During the transition to the GitLab Observability UI, we will migrate the [GitLab Observability Backend](https://gitlab.com/gitlab-org/opstrace/opstrace) from a per-cluster deployment model to a per-tenant deployment model. Because [Integrated Error Tracking](https://docs.gitlab.com/ee/operations/error_tracking.html#integrated-error-tracking) is in Open Beta, we will not migrate any existing user data. For more details about the migration, see the direction pages for:
+
+ - [Observability](https://about.gitlab.com/direction/monitor/observability/data-visualization/).
+ - The [Observability Backend](https://about.gitlab.com/direction/monitor/observability/data-management/).
+ - [Data visualization](https://about.gitlab.com/direction/monitor/observability/data-visualization/).
+ documentation_url: https://docs.gitlab.com/ee/operations/error_tracking.html
diff --git a/data/deprecations/15-9-remove-offset-pagination-jobs-api.yml b/data/deprecations/15-9-remove-offset-pagination-jobs-api.yml
new file mode 100644
index 00000000000..8c3406a34e3
--- /dev/null
+++ b/data/deprecations/15-9-remove-offset-pagination-jobs-api.yml
@@ -0,0 +1,23 @@
+#
+# REQUIRED FIELDS
+#
+- title: "Remove offset pagination from Jobs API" # (required) Clearly explain the change. For example, "The `confidential` field for a `Note` is removed" or "CI/CD job names are limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was deprecated.
+ announcement_date: "2023-02-22" # (required) The date of the milestone release when this feature was deprecated. This should almost always be the 22nd of a month (YYYY-MM-DD), unless you did an out of band blog post.
+ removal_milestone: "16.0" # (required) The milestone when this feature is being removed.
+ removal_date: "2023-05-22" # (required) This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: jheimbuck_gl # (required) GitLab username of the person reporting the removal
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/367537 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ A request to the API for `/api/v4/projects/:id/jobs` can return a paginated list of jobs. Projects can contain hundreds or thousands of jobs, so using an offset to paginate through them is slow. Users should instead use [`keyset-based pagination`](https://docs.gitlab.com/ee/api/rest/index.html#keyset-based-pagination) when requesting consecutive pages of results.
+
+ In milestone 16.0 we will remove offset-based pagination.
+#
+# OPTIONAL FIELDS
+#
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: "https://docs.gitlab.com/ee/api/jobs.html#list-project-jobs" # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-required-pipeline-configuration.yml b/data/deprecations/15-9-required-pipeline-configuration.yml
new file mode 100644
index 00000000000..4aa3a83c51e
--- /dev/null
+++ b/data/deprecations/15-9-required-pipeline-configuration.yml
@@ -0,0 +1,29 @@
+#
+# REQUIRED FIELDS
+#
+- title: "Required Pipeline Configuration is deprecated" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: jheimbuck_gl # (required) GitLab username of the person reporting the change
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/389467 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Required Pipeline Configuration will be removed in the 16.0 release. This impacts self-managed users on the Ultimate license.
+
+ We recommend replacing this with an alternative [compliance solution](https://docs.gitlab.com/ee/user/group/compliance_frameworks.html#compliance-pipelines)
+ that is available now. We recommend this alternative solution because it provides greater flexibility, allowing required pipelines to be assigned to specific compliance framework labels.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/user/admin_area/settings/continuous_integration.html#required-pipeline-configuration # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-sast-analyzer-consolidation.yml b/data/deprecations/15-9-sast-analyzer-consolidation.yml
new file mode 100644
index 00000000000..9bbeb36b597
--- /dev/null
+++ b/data/deprecations/15-9-sast-analyzer-consolidation.yml
@@ -0,0 +1,36 @@
+- title: "SAST analyzer coverage changing in GitLab 16.0" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: connorgilbert # (required) GitLab username of the person reporting the change
+ stage: secure # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/390416 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ GitLab SAST uses various [analyzers](https://docs.gitlab.com/ee/user/application_security/sast/analyzers/) to scan code for vulnerabilities.
+
+ We're reducing the number of supported analyzers used by default in GitLab SAST.
+ This is part of our long-term strategy to deliver a faster, more consistent user experience across different programming languages.
+
+ Starting in GitLab 16.0, the GitLab SAST CI/CD template will no longer use the following analyzers, and they will enter End of Support status:
+
+ - [Security Code Scan](https://gitlab.com/gitlab-org/security-products/analyzers/security-code-scan) (.NET)
+ - [PHPCS Security Audit](https://gitlab.com/gitlab-org/security-products/analyzers/phpcs-security-audit) (PHP)
+
+ We'll remove these analyzers from the [SAST CI/CD template](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml) and replace them with GitLab-supported detection rules and the [Semgrep-based analyzer](https://gitlab.com/gitlab-org/security-products/analyzers/semgrep).
+ Effective immediately, these analyzers will receive only security updates; other routine improvements or updates are not guaranteed.
+ After these analyzers reach End of Support, no further updates will be provided.
+ However, we won't delete container images previously published for these analyzers or remove the ability to run them by using a custom CI/CD pipeline job.
+
+ We will also remove Scala from the scope of the [SpotBugs-based analyzer](https://gitlab.com/gitlab-org/security-products/analyzers/spotbugs) and replace it with the [Semgrep-based analyzer](https://gitlab.com/gitlab-org/security-products/analyzers/semgrep).
+ This change will make it simpler to scan Scala code; compilation will no longer be required.
+ This change will be reflected in the automatic language detection portion of the [GitLab-managed SAST CI/CD template](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/SAST.gitlab-ci.yml).
+ Note that the SpotBugs-based analyzer will continue to cover Groovy and Kotlin.
+
+ If you've already dismissed a vulnerability finding from one of the deprecated analyzers, the replacement attempts to respect your previous dismissal. The system behavior depends on:
+
+ - whether you've excluded the Semgrep-based analyzer from running in the past.
+ - which analyzer first discovered the vulnerabilities shown in the project's Vulnerability Report.
+
+ See [Vulnerability translation documentation](https://docs.gitlab.com/ee/user/application_security/sast/analyzers.html#vulnerability-translation) for further details.
+
+ If you applied customizations to any of the affected analyzers or if you currently disable the Semgrep analyzer in your pipelines, you must take action as detailed in the [deprecation issue for this change](https://gitlab.com/gitlab-org/gitlab/-/issues/390416#breaking-change).
diff --git a/data/deprecations/15-9-secure-analyzers-bump.yml b/data/deprecations/15-9-secure-analyzers-bump.yml
new file mode 100644
index 00000000000..339b0ecd78a
--- /dev/null
+++ b/data/deprecations/15-9-secure-analyzers-bump.yml
@@ -0,0 +1,55 @@
+#
+# REQUIRED FIELDS
+#
+- title: "Secure analyzers major version update" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: gonzoyumo # (required) GitLab username of the person reporting the change
+ stage: secure # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/390912 # (required) Link to the deprecation issue in GitLab
+ body: | # Do not modify this line, instead modify the lines below.
+ The Secure stage will be bumping the major versions of its analyzers in tandem with the GitLab 16.0 release. This bump will enable a clear delineation for analyzers, between:
+
+ - Those released prior to May 22, 2023
+ - Those released after May 22, 2023
+
+ If you are not using the default included templates, or have pinned your analyzer versions you will need to update your CI/CD job definition to either remove the pinned version or to update the latest major version.
+ Users of GitLab 13.0-15.10 will continue to experience analyzer updates as normal until the release of GitLab 16.0, following which all newly fixed bugs and released features will be released only in the new major version of the analyzers. We do not backport bugs and features to deprecated versions as per our [maintenance policy](https://docs.gitlab.com/ee/policy/maintenance.html). As required, security patches will be backported within the latest 3 minor releases.
+ Specifically, the following are being deprecated and will no longer be updated after 16.0 GitLab release:
+
+ - API Fuzzing: version 2
+ - Container Scanning: version 5
+ - Coverage-guided fuzz testing: version 3
+ - Dependency Scanning: version 3
+ - Dynamic Application Security Testing (DAST): version 3
+ - DAST API: version 2
+ - IaC Scanning: version 3
+ - License Scanning: version 4
+ - Secret Detection: version 4
+ - Static Application Security Testing (SAST): version 3 of [all analyzers](https://docs.gitlab.com/ee/user/application_security/sast/#supported-languages-and-frameworks)
+ - `brakeman`: version 3
+ - `flawfinder`: version 3
+ - `kubesec`: version 3
+ - `mobsf`: version 3
+ - `nodejs-scan`: version 3
+ - `phpcs-security-audit`: version 3
+ - `pmd-apex`: version 3
+ - `security-code-scan`: version 3
+ - `semgrep`: version 3
+ - `sobelow`: version 3
+ - `spotbugs`: version 3
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: [Free, Silver, Gold, Core, Premium, Ultimate] # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/15-9-secure-template-changes.yml b/data/deprecations/15-9-secure-template-changes.yml
new file mode 100644
index 00000000000..fa1c8669b37
--- /dev/null
+++ b/data/deprecations/15-9-secure-template-changes.yml
@@ -0,0 +1,33 @@
+- title: "Secure scanning CI/CD templates will use new job `rules`" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: connorgilbert # (required) GitLab username of the person reporting the change
+ stage: secure # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/391822 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ GitLab-managed CI/CD templates for security scanning will be updated in the GitLab 16.0 release.
+ The updates will include improvements already released in the Latest versions of the CI/CD templates.
+ We released these changes in the Latest template versions because they have the potential to disrupt customized CI/CD pipeline configurations.
+
+ In all updated templates, we're:
+
+ - Adding support for running scans in merge request (MR) pipelines.
+ - Updating the definition of variables like `SAST_DISABLED` and `DEPENDENCY_SCANNING_DISABLED` to disable scanning only if the value is `"true"`. Previously, even if the value were `"false"`, scanning would be disabled.
+
+ The following templates will be updated:
+
+ - API Fuzzing: [`API-Fuzzing.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/API-Fuzzing.gitlab-ci.yml)
+ - Container Scanning: [`Container-Scanning.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/Container-Scanning.gitlab-ci.yml)
+ - Coverage-Guided Fuzzing: [`Coverage-Fuzzing.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/Coverage-Fuzzing.gitlab-ci.yml)
+ - DAST: [`DAST.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/DAST.gitlab-ci.yml)
+ - DAST API: [`DAST-API.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Security/DAST-API.gitlab-ci.yml)
+ - Dependency Scanning: [`Dependency-Scanning.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/Dependency-Scanning.gitlab-ci.yml)
+ - IaC Scanning: [`SAST-IaC.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/SAST-IaC.gitlab-ci.yml)
+ - SAST: [`SAST.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/SAST.gitlab-ci.yml)
+ - Secret Detection: [`Secret-Detection.gitlab-ci.yml`](https://gitlab.com/gitlab-org/gitlab/-/blob/master/lib/gitlab/ci/templates/Jobs/Secret-Detction.gitlab-ci.yml)
+
+ We recommend that you test your pipelines before the 16.0 release if you use one of the templates listed above and you do any of the following:
+
+ 1. You override `rules` for your security scanning jobs.
+ 1. You use the `_DISABLED` variables but set a value other than `"true"`.
diff --git a/data/deprecations/15-9-source-code-route-deprecation.yml b/data/deprecations/15-9-source-code-route-deprecation.yml
new file mode 100644
index 00000000000..f61e2b03669
--- /dev/null
+++ b/data/deprecations/15-9-source-code-route-deprecation.yml
@@ -0,0 +1,30 @@
+- title: "Legacy URLs replaced or removed"
+ announcement_milestone: "15.9"
+ removal_milestone: "16.0"
+ breaking_change: true
+ reporter: tlinz
+ stage: Create
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/214217
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ GitLab 16.0 removes legacy URLs from the GitLab application.
+
+ When subgroups were introduced in GitLab 9.0, a `/-/` delimiter was added to URLs to signify the end of a group path. All GitLab URLs now use this delimiter for project, group, and instance level features.
+
+ URLs that do not use the `/-/` delimiter are planned for removal in GitLab 16.0. For the full list of these URLs, along with their replacements, see [issue 28848](https://gitlab.com/gitlab-org/gitlab/-/issues/28848#release-notes).
+
+ Update any scripts or bookmarks that reference the legacy URLs. GitLab APIs are not affected by this change.
+
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url:
diff --git a/data/deprecations/15-9-trigger-job-status.yml b/data/deprecations/15-9-trigger-job-status.yml
new file mode 100644
index 00000000000..66681de7f56
--- /dev/null
+++ b/data/deprecations/15-9-trigger-job-status.yml
@@ -0,0 +1,42 @@
+# This is a template for announcing a feature deprecation or other important planned change.
+#
+# Please refer to the deprecation guidelines to confirm your understanding of GitLab's definitions.
+# https://docs.gitlab.com/ee/development/deprecation_guidelines/#terminology
+#
+# Deprecations and other future breaking changes must be announced at least
+# three releases prior to removal.
+#
+# Breaking changes must happen in a major release.
+#
+# See the OPTIONAL END OF SUPPORT FIELDS section below if an End of Support period also applies.
+#
+# For more information please refer to the handbook documentation here:
+# https://about.gitlab.com/handbook/marketing/blog/release-posts/#deprecations-and-other-planned-breaking-change-announcements
+#
+# Please delete this line and above before submitting your merge request.
+#
+# REQUIRED FIELDS
+#
+- title: "Trigger jobs can mirror downstream pipeline status exactly" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: dhershkovitch # (required) GitLab username of the person reporting the change
+ stage: verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/285493 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ In some cases, like when a downstream pipeline had the `passed with warnings` status, trigger jobs that were using [`strategy: depend`](https://docs.gitlab.com/ee/ci/yaml/index.html#strategydepend) did not mirror the status of the downstream pipeline exactly. In GitLab 16.0 trigger jobs will show the exact same status as the the downstream pipeline. If your pipeline relied on this behavior, you should update your pipeline to handle the more accurate status.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/16-0-Vault-integration.yml b/data/deprecations/16-0-Vault-integration.yml
new file mode 100644
index 00000000000..e08666e67ff
--- /dev/null
+++ b/data/deprecations/16-0-Vault-integration.yml
@@ -0,0 +1,46 @@
+# This is a template for announcing a feature deprecation or other important planned change.
+#
+# Please refer to the deprecation guidelines to confirm your understanding of GitLab's definitions.
+# https://docs.gitlab.com/ee/development/deprecation_guidelines/#terminology
+#
+# Deprecations and other future breaking changes must be announced at least
+# three releases prior to removal.
+#
+# Breaking changes must happen in a major release.
+#
+# See the OPTIONAL END OF SUPPORT FIELDS section below if an End of Support period also applies.
+#
+# For more information please refer to the handbook documentation here:
+# https://about.gitlab.com/handbook/marketing/blog/release-posts/#deprecations-and-other-planned-breaking-change-announcements
+#
+# Please delete this line and above before submitting your merge request.
+#
+# REQUIRED FIELDS
+#
+- title: "HashiCorp Vault integration will no longer use CI_JOB_JWT by default"
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: dhershkovitch # (required) GitLab username of the person reporting the change
+ stage: stage # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/366798 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ As part of our effort to improve the security of your CI workflows using JWT and OIDC, the native HashiCorp integration is also being updated in GitLab 16.0. Any projects that use the [`secrets:vault`](https://docs.gitlab.com/ee/ci/yaml/#secretsvault) keyword to retrieve secrets from Vault will need to be [configured to use ID tokens](https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html#configure-automatic-id-token-authentication).
+
+ To be prepared for this change, you should do the following before GitLab 16.0:
+
+ - [Disable the use of JSON web tokens](https://docs.gitlab.com/ee/ci/secrets/id_token_authentication.html#enable-automatic-id-token-authentication) in the pipeline.
+ - Ensure the bound audience is prefixed with `https://`.
+ - Use the new [`id_tokens`](https://docs.gitlab.com/ee/ci/yaml/#id_tokens) keyword
+ and configure the `aud` claim.
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/16-0-fail_null_vault_secrets.yml b/data/deprecations/16-0-fail_null_vault_secrets.yml
new file mode 100644
index 00000000000..c3639717e65
--- /dev/null
+++ b/data/deprecations/16-0-fail_null_vault_secrets.yml
@@ -0,0 +1,42 @@
+# This is a template for announcing a feature deprecation or other important planned change.
+#
+# Please refer to the deprecation guidelines to confirm your understanding of GitLab's definitions.
+# https://docs.gitlab.com/ee/development/deprecation_guidelines/#terminology
+#
+# Deprecations and other future breaking changes must be announced at least
+# three releases prior to removal.
+#
+# Breaking changes must happen in a major release.
+#
+# See the OPTIONAL END OF SUPPORT FIELDS section below if an End of Support period also applies.
+#
+# For more information please refer to the handbook documentation here:
+# https://about.gitlab.com/handbook/marketing/blog/release-posts/#deprecations-and-other-planned-breaking-change-announcements
+#
+# Please delete this line and above before submitting your merge request.
+#
+# REQUIRED FIELDS
+#
+- title: "CI/CD jobs will fail when no secret is returned from Hashicorp Vault" # (required) Clearly explain the change, or planned change. For example, "The `confidential` field for a `Note` is deprecated" or "CI/CD job names will be limited to 250 characters."
+ announcement_milestone: "15.9" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "16.0" # (required) The milestone when this feature is planned to be removed
+ breaking_change: true # (required) Change to false if this is not a breaking change.
+ reporter: dhershkovitch # (required) GitLab username of the person reporting the change
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/353080 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ When using the native HashiCorp Vault integration, CI/CD jobs will fail when no secret is returned from Vault. Make sure your configuration always return a secret, or update your pipeline to handle this change, before GitLab 16.0.
+#
+# OPTIONAL END OF SUPPORT FIELDS
+#
+# If an End of Support period applies, the announcement should be shared with GitLab Support
+# in the `#spt_managers` channel in Slack, and mention `@gitlab-com/support` in this MR.
+#
+ end_of_support_milestone: # (optional) Use "XX.YY" format. The milestone when support for this feature will end.
+ #
+ # OTHER OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: https://docs.gitlab.com/ee/ci/examples/authenticating-with-hashicorp-vault/ # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/deprecations/16-0-post-ci-lint.yml b/data/deprecations/16-0-post-ci-lint.yml
index 42c9d29a3d5..407b0124a83 100644
--- a/data/deprecations/16-0-post-ci-lint.yml
+++ b/data/deprecations/16-0-post-ci-lint.yml
@@ -24,7 +24,7 @@
stage: verify # (required) String value of the stage that the feature was created in. e.g., Growth
issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/381669 # (required) Link to the deprecation issue in GitLab
body: | # (required) Do not modify this line, instead modify the lines below.
- The `POST ci/lint` API endpoint is deprecated in 15.7, and will be removed in 16.0. This endpoint does not validate the full range of CI/CD configuration options. Instead, use [`POST /projects/:id/ci/lint`](https://docs.gitlab.com/15.5/ee/api/lint.html#validate-a-ci-yaml-configuration-with-a-namespace), which properly validates CI/CD configuration.
+ The `POST ci/lint` API endpoint is deprecated in 15.7, and will be removed in 16.0. This endpoint does not validate the full range of CI/CD configuration options. Instead, use [`POST /projects/:id/ci/lint`](https://docs.gitlab.com/ee/api/lint.html#validate-a-ci-yaml-configuration-with-a-namespace), which properly validates CI/CD configuration.
#
# OPTIONAL END OF SUPPORT FIELDS
#
diff --git a/data/removals/15_7/15-7-remove-expansion-file-type-variables-ci-pipeline.yml b/data/removals/15_7/15-7-remove-expansion-file-type-variables-ci-pipeline.yml
new file mode 100644
index 00000000000..018f66a19ce
--- /dev/null
+++ b/data/removals/15_7/15-7-remove-expansion-file-type-variables-ci-pipeline.yml
@@ -0,0 +1,20 @@
+- title: "File Type variable expansion in `.gitlab-ci.yml`" # (required) The name of the feature to be deprecated
+ announcement_milestone: "15.5" # (required) The milestone when this feature was first announced as deprecated.
+ removal_milestone: "15.7" # (required) The milestone when this feature is planned to be removed
+ removal_date: "2022-12-22" # (required) This should almost always be the 22nd of a month (YYYY-MM-DD), the date of the milestone release when this feature will be removed.
+ breaking_change: true # (required) If this deprecation is a breaking change, set this value to true
+ reporter: DarrenEastman # (required) GitLab username of the person reporting the deprecation
+ stage: Verify # (required) String value of the stage that the feature was created in. e.g., Growth
+ issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/29407 # (required) Link to the deprecation issue in GitLab
+ body: | # (required) Do not modify this line, instead modify the lines below.
+ Prior to this change, variables that referenced or applied alias file variables expanded the value of the `File` type variable. For example, the file contents. This behavior was incorrect because it did not comply with typical shell variable expansion rules. A user could run an $echo command with the variable as an input parameter to leak secrets or sensitive information stored in 'File' type variables.
+
+ In 15.7, we are removing file type variable expansion from GitLab. It is essential to check your CI pipelines to confirm if your scripts reference a file variable. If your CI job relies on the previous expansion functionality, that CI job will not work and generate an error as of 15.7. The new behavior is that variable expansion that reference or apply alias file variables expand to the file name or path of the `File` type variable, instead of its value, such as the file contents.
+
+
+ # OPTIONAL FIELDS
+ #
+ tiers: # (optional - may be required in the future) An array of tiers that the feature is available in currently. e.g., [Free, Silver, Gold, Core, Premium, Ultimate]
+ documentation_url: # (optional) This is a link to the current documentation page
+ image_url: # (optional) This is a link to a thumbnail image depicting the feature
+ video_url: # (optional) Use the youtube thumbnail URL with the structure of https://img.youtube.com/vi/UNIQUEID/hqdefault.jpg
diff --git a/data/whats_new/202012160001_13_07.yml b/data/whats_new/202012160001_13_07.yml
index 6b07bd4341a..ff0bcb87733 100644
--- a/data/whats_new/202012160001_13_07.yml
+++ b/data/whats_new/202012160001_13_07.yml
@@ -21,7 +21,7 @@
self-managed: true
gitlab-com: true
available_in: [Free, Premium, Ultimate]
- documentation_link: https://docs.gitlab.com/ee/user/project/merge_requests/getting_started#reviewer
+ documentation_link: https://docs.gitlab.com/ee/user/project/merge_requests/reviews/
image_url: https://about.gitlab.com/images/13_7/reviewers_sidebar.png
published_at: 2020-12-22
release: 13.7
diff --git a/data/whats_new/202209220001_15_04.yml b/data/whats_new/202209220001_15_04.yml
index 3ee7c65ce23..23a2d5f496a 100644
--- a/data/whats_new/202209220001_15_04.yml
+++ b/data/whats_new/202209220001_15_04.yml
@@ -2,7 +2,7 @@
description: | # Do not modify this line, instead modify the lines below.
Deciding the right person to [review your merge request](https://docs.gitlab.com/ee/user/project/merge_requests/reviews/) isn't always straightforward or obvious. Choosing the wrong reviewer can cause delays, low quality reviews, back and forth reassigning reviewers, or even no review at all.
- Now, GitLab can recommend a reviewer with [Suggested Reviewers](https://docs.gitlab.com/ee/user/project/merge_requests/reviews/#suggested-reviewers). Using the changes in a merge request and a project's contribution graph, machine learning powered suggestions appear in the [reviewer dropdown](https://docs.gitlab.com/ee/user/project/merge_requests/getting_started.html#reviewer) in the merge request sidebar.
+ Now, GitLab can recommend a reviewer with [Suggested Reviewers](https://docs.gitlab.com/ee/user/project/merge_requests/reviews/#suggested-reviewers). Using the changes in a merge request and a project's contribution graph, machine learning powered suggestions appear in the [reviewer dropdown](https://docs.gitlab.com/ee/user/project/merge_requests/reviews/) in the merge request sidebar.
This feature is currently in [beta](https://about.gitlab.com/handbook/product/gitlab-the-product/#open-beta) behind a [feature flag](https://gitlab.com/gitlab-org/gitlab/-/issues/368356). It will be rolling out to all Ultimate GitLab.com customers over the next week.
stage: create # String value of the stage that the feature was created in. e.g., Growth
diff --git a/data/whats_new/202212200001_15_07.yml b/data/whats_new/202212200001_15_07.yml
index 937a4f76375..ebfcc0f16ad 100644
--- a/data/whats_new/202212200001_15_07.yml
+++ b/data/whats_new/202212200001_15_07.yml
@@ -110,7 +110,7 @@
self-managed: true
gitlab-com: false
available_in: [Free, Premium, Ultimate]
- documentation_link: https://docs.gitlab.com/ee/integration/jira/connect-app.html#connect-the-gitlabcom-for-jira-cloud-app-for-self-managed-instances
+ documentation_link: https://docs.gitlab.com/ee/integration/jira/connect-app.html#connect-the-gitlab-for-jira-cloud-app-for-self-managed-instances
image_url: https://about.gitlab.com/images/15_7/jira_cloud_app_proxy_for_selfmanaged_gitlab_users.png
published_at: 2022-12-22
release: 15.7