@@ -1546,22 +1562,6 @@ This could be a breaking change for anyone that developed their own runner that
-
### SAST analyzer coverage changing in GitLab 16.0
diff --git a/doc/user/admin_area/settings/continuous_integration.md b/doc/user/admin_area/settings/continuous_integration.md
index 5d5cd15372a..a0a0dc65099 100644
--- a/doc/user/admin_area/settings/continuous_integration.md
+++ b/doc/user/admin_area/settings/continuous_integration.md
@@ -245,12 +245,13 @@ To enable or disable the banner:
## Required pipeline configuration **(ULTIMATE SELF)**
-> [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/352316) from GitLab Premium to GitLab Ultimate in 15.0.
+> - [Moved](https://gitlab.com/gitlab-org/gitlab/-/issues/352316) from GitLab Premium to GitLab Ultimate in 15.0.
+> - [Deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/389467) in GitLab 15.9.
-NOTE:
-An alternative [compliance solution](../../group/compliance_frameworks.md#compliance-pipelines)
-is available. We recommend this alternative solution because it provides greater flexibility,
-allowing required pipelines to be assigned to specific compliance framework labels.
+WARNING:
+This feature was [deprecated](https://gitlab.com/gitlab-org/gitlab/-/issues/389467) in GitLab 15.9
+and is planned for removal in 17.0. Use [compliance pipelines](../../group/compliance_frameworks.md#compliance-pipelines)
+instead. This change is a breaking change.
You can set a [CI/CD template](../../../ci/examples/index.md#cicd-templates)
as a required pipeline configuration for all projects on a GitLab instance. You can
diff --git a/doc/user/application_security/api_fuzzing/index.md b/doc/user/application_security/api_fuzzing/index.md
index 8ae6d8ee675..836291f4f48 100644
--- a/doc/user/application_security/api_fuzzing/index.md
+++ b/doc/user/application_security/api_fuzzing/index.md
@@ -16,6 +16,9 @@ We recommend that you use fuzz testing in addition to [GitLab Secure](../index.m
other security scanners and your own test processes. If you're using [GitLab CI/CD](../../../ci/index.md),
you can run fuzz tests as part your CI/CD workflow.
+
+For an overview, see [Web API Fuzzing](https://www.youtube.com/watch?v=oUHsfvLGhDk).
+
## When Web API fuzzing runs
Web API fuzzing runs in the `fuzz` stage of the CI/CD pipeline. To ensure API fuzzing scans the
diff --git a/doc/user/application_security/security_dashboard/index.md b/doc/user/application_security/security_dashboard/index.md
index 1a8b4dac10e..e6cb4cef4b2 100644
--- a/doc/user/application_security/security_dashboard/index.md
+++ b/doc/user/application_security/security_dashboard/index.md
@@ -19,6 +19,9 @@ To use the Security Dashboards, you must:
shared runners on GitLab.com, you are using the correct version.
- Have the [correct role](../../permissions.md) for the project or group.
+
+For an overview, see [Security Dashboard](https://www.youtube.com/watch?v=QHQHN4luNpc).
+
## When Security Dashboards are updated
The Security Dashboards show results of scans from the most recent completed pipeline on the
diff --git a/doc/user/project/merge_requests/status_checks.md b/doc/user/project/merge_requests/status_checks.md
index 4c806086fab..0e339c65ed5 100644
--- a/doc/user/project/merge_requests/status_checks.md
+++ b/doc/user/project/merge_requests/status_checks.md
@@ -71,7 +71,7 @@ using the API. You don't need to wait for a merge request webhook payload to be
## View the status checks on a project
-Within each project's settings, you can see a list of status checks added to the project:
+Within each project's settings, you can see a list of status check services added to the project:
1. In your project, go to **Settings > Merge requests** section.
1. Scroll down to **Status checks**.
@@ -81,9 +81,9 @@ Within each project's settings, you can see a list of status checks added to the
This list shows the service name, API URL, and targeted branch.
It also provides actions to allow you to create, edit, or remove status checks.
-## Add or update a status check
+## Add or update a status check service
-### Add a status check
+### Add a status check service
Within the **Status checks** sub-section, select the **Add status check** button.
The **Add status check** form is then shown.
@@ -92,7 +92,7 @@ The **Add status check** form is then shown.
Filling in the form and selecting the **Add status check** button creates a new status check.
-### Update a status check
+### Update a status check service
Within the **Status checks** sub-section, select the **Edit** button
next to the status check you want to edit.
@@ -135,7 +135,7 @@ for doesn't appear immediately. The search box requires
If you want the status check to be applied to **all** merge requests,
you can select the **All branches** option.
-## Delete a status check
+## Delete a status check service
Within the **Status checks** sub-section, select the **Remove...** button
next to the status check you want to delete.
diff --git a/lib/banzai/reference_parser/commit_parser.rb b/lib/banzai/reference_parser/commit_parser.rb
index 8ddb2bb8815..7c2bccc68d9 100644
--- a/lib/banzai/reference_parser/commit_parser.rb
+++ b/lib/banzai/reference_parser/commit_parser.rb
@@ -21,24 +21,6 @@ module Banzai
end
def find_commits(project, ids)
- return limited_commits(project, ids) if Feature.enabled?(:limited_commit_parser, project)
-
- commits = []
-
- return commits unless project.valid_repo?
-
- ids.each do |id|
- commit = project.commit(id)
-
- commits << commit if commit
- end
-
- commits
- end
-
- private
-
- def limited_commits(project, ids)
return [] unless project.valid_repo?
ids = ids.take(COMMITS_LIMIT)
@@ -46,6 +28,8 @@ module Banzai
project.commits_by(oids: ids)
end
+ private
+
def can_read_reference?(user, ref_project, node)
can?(user, :download_code, ref_project)
end
diff --git a/lib/gitlab/github_import/clients/search_repos.rb b/lib/gitlab/github_import/clients/search_repos.rb
index 5e058fc0933..a2ef6ca24eb 100644
--- a/lib/gitlab/github_import/clients/search_repos.rb
+++ b/lib/gitlab/github_import/clients/search_repos.rb
@@ -53,7 +53,7 @@ module Gitlab
end
def search_repos_query(string, options = {})
- base = "#{string} in:name is:public,private"
+ base = "#{string} in:name is:public,private fork:true"
case options[:relation_type]
when 'organization' then organization_repos_query(base, options)
diff --git a/lib/sidebars/projects/menus/merge_requests_menu.rb b/lib/sidebars/projects/menus/merge_requests_menu.rb
index be80a58d5f1..71cc53da3ea 100644
--- a/lib/sidebars/projects/menus/merge_requests_menu.rb
+++ b/lib/sidebars/projects/menus/merge_requests_menu.rb
@@ -60,9 +60,9 @@ module Sidebars
override :active_routes
def active_routes
if context.project.issues_enabled?
- { controller: 'projects/merge_requests' }
+ { controller: ['projects/merge_requests', :conflicts] }
else
- { controller: ['projects/merge_requests', :milestones] }
+ { controller: ['projects/merge_requests', :milestones, :conflicts] }
end
end
diff --git a/locale/gitlab.pot b/locale/gitlab.pot
index 5a87d2a1890..9848641e95e 100644
--- a/locale/gitlab.pot
+++ b/locale/gitlab.pot
@@ -27304,6 +27304,9 @@ msgstr ""
msgid "Merge commit message"
msgstr ""
+msgid "Merge conflicts"
+msgstr ""
+
msgid "Merge details"
msgstr ""
@@ -50745,7 +50748,7 @@ msgstr ""
msgid "You can only transfer the project to namespaces you manage."
msgstr ""
-msgid "You can resolve the merge conflict using either the Interactive mode, by choosing %{use_ours} or %{use_theirs} buttons, or by editing the files directly. Commit these changes into %{branch_name}"
+msgid "You can resolve the merge conflict using either the Interactive mode, by choosing %{use_ours} or %{use_theirs} buttons, or by editing the files directly. Commit these changes into %{branch_name}."
msgstr ""
msgid "You can see your chat accounts."
diff --git a/spec/lib/banzai/reference_parser/commit_parser_spec.rb b/spec/lib/banzai/reference_parser/commit_parser_spec.rb
index 9ed6235b8dd..7a1eed2e35e 100644
--- a/spec/lib/banzai/reference_parser/commit_parser_spec.rb
+++ b/spec/lib/banzai/reference_parser/commit_parser_spec.rb
@@ -154,28 +154,6 @@ RSpec.describe Banzai::ReferenceParser::CommitParser, feature_category: :source_
"b83d6e391c22777fca1ed3012fce84f633d7fed0"
])
end
-
- context 'when limited_commit_parser feature flag disabled' do
- before do
- stub_feature_flags(limited_commit_parser: false)
- end
-
- it 'returns an Array of commit objects' do
- commit = double(:commit)
-
- expect(project).to receive(:commit).with('123').and_return(commit)
- expect(project).to receive(:valid_repo?).and_return(true)
-
- expect(subject.find_commits(project, %w{123})).to eq([commit])
- end
-
- it 'skips commit IDs for which no commit could be found' do
- expect(project).to receive(:commit).with('123').and_return(nil)
- expect(project).to receive(:valid_repo?).and_return(true)
-
- expect(subject.find_commits(project, %w{123})).to eq([])
- end
- end
end
context 'when checking commits on another projects', :request_store do
diff --git a/spec/lib/gitlab/github_import/client_spec.rb b/spec/lib/gitlab/github_import/client_spec.rb
index e37b27aeaef..aa1205663e1 100644
--- a/spec/lib/gitlab/github_import/client_spec.rb
+++ b/spec/lib/gitlab/github_import/client_spec.rb
@@ -580,7 +580,10 @@ RSpec.describe Gitlab::GithubImport::Client, feature_category: :importers do
end
describe '#search_repos_by_name_graphql' do
- let(:expected_query) { 'test in:name is:public,private user:user repo:repo1 repo:repo2 org:org1 org:org2' }
+ let(:expected_query) do
+ 'test in:name is:public,private fork:true user:user repo:repo1 repo:repo2 org:org1 org:org2'
+ end
+
let(:expected_graphql_params) { "type: REPOSITORY, query: \"#{expected_query}\"" }
let(:expected_graphql) do
<<-TEXT
@@ -617,7 +620,7 @@ RSpec.describe Gitlab::GithubImport::Client, feature_category: :importers do
context 'when relation type option present' do
context 'when relation type is owned' do
- let(:expected_query) { 'test in:name is:public,private user:user' }
+ let(:expected_query) { 'test in:name is:public,private fork:true user:user' }
it 'searches for repositories within the organization based on name' do
expect(client.octokit).to receive(:post).with(
@@ -629,7 +632,7 @@ RSpec.describe Gitlab::GithubImport::Client, feature_category: :importers do
end
context 'when relation type is organization' do
- let(:expected_query) { 'test in:name is:public,private org:test-login' }
+ let(:expected_query) { 'test in:name is:public,private fork:true org:test-login' }
it 'searches for repositories within the organization based on name' do
expect(client.octokit).to receive(:post).with(
@@ -643,7 +646,7 @@ RSpec.describe Gitlab::GithubImport::Client, feature_category: :importers do
end
context 'when relation type is collaborated' do
- let(:expected_query) { 'test in:name is:public,private repo:repo1 repo:repo2' }
+ let(:expected_query) { 'test in:name is:public,private fork:true repo:repo1 repo:repo2' }
it 'searches for collaborated repositories based on name' do
expect(client.octokit).to receive(:post).with(
@@ -710,8 +713,8 @@ RSpec.describe Gitlab::GithubImport::Client, feature_category: :importers do
describe '#count_repos_by_relation_type_graphql' do
relation_types = {
- 'owned' => ' in:name is:public,private user:user',
- 'collaborated' => ' in:name is:public,private repo:repo1 repo:repo2',
+ 'owned' => ' in:name is:public,private fork:true user:user',
+ 'collaborated' => ' in:name is:public,private fork:true repo:repo1 repo:repo2',
'organization' => 'org:org1 org:org2'
}