Skip to content

Commit 1ec3642

Browse files
author
GitLab Bot
committed
Add latest changes from gitlab-org/gitlab@master
1 parent d632a8e commit 1ec3642

File tree

35 files changed

+6632
-193
lines changed

35 files changed

+6632
-193
lines changed

.gitlab/CODEOWNERS

+4
Original file line numberDiff line numberDiff line change
@@ -1248,6 +1248,10 @@ lib/gitlab/checks/**
12481248
/doc/user/workspace/ @brendan777
12491249
# End rake-managed-docs-block
12501250

1251+
# i18n Docs
1252+
[Localization Team] @gitlab-com/localization/maintainers
1253+
/doc-locale/**
1254+
12511255
[Authorization] @gitlab-org/software-supply-chain-security/authorization/approvers
12521256
/config/initializers/declarative_policy.rb
12531257
/config/initializers/declarative_policy_cached_attributes.rb

.gitlab/ci/docs.gitlab-ci.yml

+19
Original file line numberDiff line numberDiff line change
@@ -137,3 +137,22 @@ docs-lint redirects:
137137
- source scripts/utils.sh
138138
script:
139139
- run_with_custom_exit_code ./scripts/lint-docs-redirects.rb
140+
141+
docs-i18n-lint markdown:
142+
extends:
143+
- .default-retry
144+
- .docs:rules:docs-i18n-lint
145+
- .docs-markdown-lint-image
146+
- .yarn-cache
147+
stage: lint
148+
needs: []
149+
script:
150+
- source ./scripts/utils.sh
151+
- |
152+
function docs_lint_markdown() {
153+
yarn_install_script
154+
install_gitlab_gem
155+
scripts/lint-i18n-doc.sh
156+
}
157+
158+
run_with_custom_exit_code docs_lint_markdown

.gitlab/ci/qa-common/variables.gitlab-ci.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ variables:
1818
# Helm chart ref used by test-on-cng pipeline
1919
GITLAB_HELM_CHART_REF: "074bb942c9c65613c2576ce418f59b8577fff37c"
2020
# Specific ref for cng-mirror project to trigger builds for
21-
GITLAB_CNG_MIRROR_REF: "56b6a062b05d549e0b69f79b759107e4956151eb"
21+
GITLAB_CNG_MIRROR_REF: "a200886cbfb7e1f5a7642838f8f8fac9f26c6a97"
2222
# Makes sure some of the common scripts from pipeline-common use bundler to execute commands
2323
RUN_WITH_BUNDLE: "true"
2424
# Makes sure reporting script defined in .gitlab-qa-report from pipeline-common is executed from correct folder

.gitlab/ci/rules.gitlab-ci.yml

+14
Original file line numberDiff line numberDiff line change
@@ -321,6 +321,15 @@
321321
- "scripts/frontend/lint_docs_links.mjs"
322322
- "tooling/eslint-config/eslint-local-rules/**/*"
323323

324+
.docs-i18n-patterns: &docs-i18n-patterns
325+
- "doc-locale/**/*"
326+
- "scripts/lint-i18n-doc.sh"
327+
328+
.if-tech-docs-localization: &if-tech-docs-localization
329+
if: '($CI_PROJECT_PATH == "gitlab-com/localization" && $CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH) ||
330+
($CI_PIPELINE_SOURCE == "merge_request_event" && $CI_MERGE_REQUEST_EVENT_TYPE != "merge_train") ||
331+
($CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^docs-i18n-/ || $CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /-docs-i18n$/)'
332+
324333
.docs-deprecations-and-removals-patterns: &docs-deprecations-and-removals-patterns
325334
- "doc/update/breaking_windows.md"
326335
- "doc/update/deprecations.md"
@@ -1266,6 +1275,11 @@
12661275
- <<: *if-default-refs
12671276
changes: *docs-patterns
12681277

1278+
.docs:rules:docs-i18n-lint:
1279+
rules:
1280+
- <<: *if-tech-docs-localization
1281+
changes: *docs-i18n-patterns
1282+
12691283
.docs:rules:deprecations-and-removals:
12701284
rules:
12711285
- <<: *if-default-refs

app/assets/javascripts/pages/projects/issues/show/index.js

+2-1
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { issuableInitialDataById, isLegacyIssueType } from '~/issues/show/utils/issuable_data';
2+
import { WORK_ITEM_TYPE_NAME_ISSUE } from '~/work_items/constants';
23

34
const initLegacyIssuePage = async () => {
45
const [{ initShow }] = await Promise.all([import('~/issues')]);
@@ -8,7 +9,7 @@ const initLegacyIssuePage = async () => {
89
const initWorkItemPage = async () => {
910
const [{ initWorkItemsRoot }] = await Promise.all([import('~/work_items')]);
1011

11-
initWorkItemsRoot({ workItemType: 'issue' });
12+
initWorkItemsRoot({ workItemType: WORK_ITEM_TYPE_NAME_ISSUE });
1213
};
1314

1415
const issuableData = issuableInitialDataById('js-issuable-app');

app/assets/javascripts/work_items/components/work_item_breadcrumb.vue

+2-2
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
import { GlBreadcrumb } from '@gitlab/ui';
33
import { s__, __ } from '~/locale';
44
import glFeatureFlagMixin from '~/vue_shared/mixins/gl_feature_flags_mixin';
5-
import { ROUTES, WORK_ITEM_TYPE_ENUM_EPIC } from '../constants';
5+
import { ROUTES, WORK_ITEM_TYPE_NAME_EPIC } from '../constants';
66
77
const BREADCRUMB_LABELS = {
88
workItemList: s__('WorkItem|Work items'),
@@ -30,7 +30,7 @@ export default {
3030
return this.glFeatures.workItemPlanningView;
3131
},
3232
isEpicsList() {
33-
return this.workItemType === WORK_ITEM_TYPE_ENUM_EPIC;
33+
return this.workItemType === WORK_ITEM_TYPE_NAME_EPIC;
3434
},
3535
listName() {
3636
if (this.isWorkItemOnly) {

app/assets/javascripts/work_items/index.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ import ShortcutsNavigation from '~/behaviors/shortcuts/shortcuts_navigation';
88
import { parseBoolean } from '~/lib/utils/common_utils';
99
import { injectVueAppBreadcrumbs } from '~/lib/utils/breadcrumbs';
1010
import { apolloProvider } from '~/graphql_shared/issuable_client';
11-
import { ISSUE_WIT_FEEDBACK_BADGE } from '~/work_items/constants';
11+
import { ISSUE_WIT_FEEDBACK_BADGE, WORK_ITEM_TYPE_NAME_ISSUE } from '~/work_items/constants';
1212
import App from './components/app.vue';
1313
import WorkItemBreadcrumb from './components/work_item_breadcrumb.vue';
1414
import activeDiscussionQuery from './components/design_management/graphql/client/active_design_discussion.query.graphql';
@@ -63,7 +63,7 @@ export const initWorkItemsRoot = ({ workItemType, workspaceType, withTabs } = {}
6363
} = el.dataset;
6464

6565
const isGroup = workspaceType === WORKSPACE_GROUP;
66-
const router = createRouter({ fullPath, workItemType, workspaceType, defaultBranch, isGroup });
66+
const router = createRouter({ fullPath, workspaceType, defaultBranch, isGroup });
6767
let listPath = issuesListPath;
6868

6969
const breadcrumbParams = { workItemType: listWorkItemType, isGroup };
@@ -97,7 +97,7 @@ export const initWorkItemsRoot = ({ workItemType, workspaceType, withTabs } = {}
9797
}
9898

9999
if (
100-
workItemType === 'issue' &&
100+
workItemType === WORK_ITEM_TYPE_NAME_ISSUE &&
101101
gon.features.workItemsViewPreference &&
102102
!isGroup &&
103103
!gon.features.useWiViewForIssues

app/assets/javascripts/work_items/pages/work_items_list_app.vue

+8-7
Original file line numberDiff line numberDiff line change
@@ -86,10 +86,12 @@ import DateToken from '~/vue_shared/components/filtered_search_bar/tokens/date_t
8686
import { getParameterByName, removeParams, updateHistory } from '~/lib/utils/url_utility';
8787
import {
8888
DETAIL_VIEW_QUERY_PARAM_NAME,
89+
NAME_TO_ENUM_MAP,
8990
STATE_CLOSED,
9091
STATE_OPEN,
9192
WORK_ITEM_TYPE_ENUM_EPIC,
9293
WORK_ITEM_TYPE_ENUM_ISSUE,
94+
WORK_ITEM_TYPE_NAME_EPIC,
9395
} from '../constants';
9496
import getWorkItemsQuery from '../graphql/list/get_work_items.query.graphql';
9597
import getWorkItemStateCountsQuery from '../graphql/list/get_work_item_state_counts.query.graphql';
@@ -264,7 +266,7 @@ export default {
264266
return this.isEpicsList ? this.glFeatures.epicsListDrawer : this.glFeatures.issuesListDrawer;
265267
},
266268
isEpicsList() {
267-
return this.workItemType === WORK_ITEM_TYPE_ENUM_EPIC;
269+
return this.workItemType === WORK_ITEM_TYPE_NAME_EPIC;
268270
},
269271
hasSearch() {
270272
return Boolean(this.searchQuery);
@@ -280,6 +282,7 @@ export default {
280282
},
281283
queryVariables() {
282284
const hasGroupFilter = Boolean(this.urlFilterParams.group_path);
285+
const singleWorkItemType = this.workItemType ? NAME_TO_ENUM_MAP[this.workItemType] : null;
283286
return {
284287
fullPath: this.fullPath,
285288
sort: this.sortKey,
@@ -289,7 +292,7 @@ export default {
289292
...this.pageParams,
290293
excludeProjects: hasGroupFilter || this.isEpicsList,
291294
includeDescendants: !hasGroupFilter,
292-
types: this.apiFilterParams.types || this.workItemType || this.defaultWorkItemTypes,
295+
types: this.apiFilterParams.types || singleWorkItemType || this.defaultWorkItemTypes,
293296
isGroup: this.isGroup,
294297
};
295298
},
@@ -550,10 +553,8 @@ export default {
550553
enableClientSideBoardsExperiment() {
551554
return this.glFeatures.workItemsClientSideBoards;
552555
},
553-
workItemTypeName() {
554-
return this.workItemType === WORK_ITEM_TYPE_ENUM_EPIC
555-
? WORK_ITEM_TYPE_ENUM_EPIC
556-
: WORK_ITEM_TYPE_ENUM_ISSUE;
556+
preselectedWorkItemType() {
557+
return this.isEpicsList ? WORK_ITEM_TYPE_ENUM_EPIC : WORK_ITEM_TYPE_ENUM_ISSUE;
557558
},
558559
},
559560
watch: {
@@ -919,7 +920,7 @@ export default {
919920
<template #new-issue-button>
920921
<create-work-item-modal
921922
:is-group="isGroup"
922-
:preselected-work-item-type="workItemTypeName"
923+
:preselected-work-item-type="preselectedWorkItemType"
923924
@workItemCreated="handleWorkItemCreated"
924925
/>
925926
</template>

app/models/projects/topic.rb

-2
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,10 @@ class Topic < ApplicationRecord
77
include Avatarable
88
include CacheMarkdownField
99
include Gitlab::SQL::Pattern
10-
include SafelyChangeColumnDefault
1110

1211
SLUG_ALLOWED_REGEX = %r{\A[a-zA-Z0-9_\-.]+\z}
1312

1413
cache_markdown_field :description
15-
columns_changing_default :organization_id
1614

1715
validates :name, presence: true, length: { maximum: 255 }
1816
validates :description, length: { maximum: 1024 }

app/views/projects/branch_rules/_show.html.haml

+2-3
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,10 @@
88
id: 'branch-rules',
99
testid: 'branch-rules-content',
1010
expanded: expanded) do |c|
11-
- c.with_callout do
12-
- if Feature.enabled?(:edit_branch_rules, @project)
13-
= render 'projects/settings/branch_rules_callout'
1411
- c.with_description do
1512
= _('Define rules for who can push, merge, and the required approvals for each branch.')
1613
= link_to(_('Leave feedback.'), 'https://gitlab.com/gitlab-org/gitlab/-/issues/388149', target: '_blank', rel: 'noopener noreferrer')
1714
- c.with_body do
15+
- if Feature.enabled?(:edit_branch_rules, @project)
16+
.gl-mb-5= render 'projects/settings/branch_rules_callout'
1817
#js-branch-rules{ data: { project_path: @project.full_path, branch_rules_path: project_settings_repository_branch_rules_path(@project), show_code_owners: show_code_owners.to_s, show_status_checks: show_status_checks.to_s, show_approvers: show_approvers.to_s, show_enterprise_access_levels: show_enterprise_access_levels.to_s } }
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
---
2+
name: allow_ldap_users_to_authenticate_with_gitlab_username
3+
feature_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/215357
4+
introduced_by_url: https://gitlab.com/gitlab-org/gitlab/-/merge_requests/186848
5+
rollout_issue_url: https://gitlab.com/gitlab-org/gitlab/-/issues/536008
6+
milestone: '18.0'
7+
group: group::authentication
8+
type: beta
9+
default_enabled: true

data/deprecations/17-9-enable-gitlab-advanced-sast-by-default.yml

+2-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
- title: "GitLab Advanced SAST will be enabled by default"
2-
removal_milestone: "18.0"
2+
removal_milestone: "19.0"
33
announcement_milestone: "17.9"
44
breaking_change: true
55
window: 1
@@ -12,7 +12,7 @@
1212
resolution_role: Developer
1313
manual_task: true
1414
body: | # (required) Don't change this line.
15-
In GitLab 18.0, we will update the [SAST CI/CD templates](https://docs.gitlab.com/user/application_security/sast#stable-vs-latest-sast-templates) to enable [GitLab Advanced SAST](https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast) by default in projects with GitLab Ultimate.
15+
In GitLab 19.0, we will update the [SAST CI/CD templates](https://docs.gitlab.com/user/application_security/sast#stable-vs-latest-sast-templates) to enable [GitLab Advanced SAST](https://docs.gitlab.com/user/application_security/sast/gitlab_advanced_sast) by default in projects with GitLab Ultimate.
1616
Before this change, the GitLab Advanced SAST analyzer was enabled only if you set the CI/CD variable `GITLAB_ADVANCED_SAST_ENABLED` to `true`.
1717
1818
Advanced SAST delivers more accurate results by using cross-file, cross-function scanning and a new ruleset.

0 commit comments

Comments
 (0)