Skip to content

Commit 747345d

Browse files
author
GitLab Bot
committed
Add latest changes from gitlab-org/gitlab@master
1 parent 639a34f commit 747345d

File tree

70 files changed

+934
-213
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

70 files changed

+934
-213
lines changed

.rubocop_todo/gitlab/bounded_contexts.yml

-1
Original file line numberDiff line numberDiff line change
@@ -2907,7 +2907,6 @@ Gitlab/BoundedContexts:
29072907
- 'ee/app/models/elastic/index_setting.rb'
29082908
- 'ee/app/models/elastic/migration_record.rb'
29092909
- 'ee/app/models/elastic/reindexing_slice.rb'
2910-
- 'ee/app/models/elastic/reindexing_subtask.rb'
29112910
- 'ee/app/models/elastic/reindexing_task.rb'
29122911
- 'ee/app/models/elasticsearch_indexed_namespace.rb'
29132912
- 'ee/app/models/elasticsearch_indexed_project.rb'

.rubocop_todo/gitlab/documentation_links/link.yml

-2
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,6 @@ Gitlab/DocumentationLinks/Link:
2222
- 'ee/app/helpers/projects/security/api_fuzzing_configuration_helper.rb'
2323
- 'ee/app/helpers/vulnerabilities_helper.rb'
2424
- 'ee/app/models/integrations/github.rb'
25-
- 'ee/lib/api/managed_licenses.rb'
2625
- 'ee/lib/ee/gitlab/namespace_storage_size_error_message.rb'
2726
- 'ee/lib/gitlab/checks/secrets_check.rb'
2827
- 'ee/lib/gitlab/llm/chain/tools/tool.rb'
@@ -38,7 +37,6 @@ Gitlab/DocumentationLinks/Link:
3837
- 'lib/gitlab/usage_data_counters/hll_redis_counter.rb'
3938
- 'lib/slack/block_kit/app_home_opened.rb'
4039
- 'lib/system_check/helpers.rb'
41-
- 'lib/users/internal.rb'
4240
- 'spec/helpers/ide_helper_spec.rb'
4341
- 'spec/mailers/emails/pages_domains_spec.rb'
4442
- 'spec/presenters/clusters/cluster_presenter_spec.rb'

.rubocop_todo/rails/inverse_of.yml

-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,6 @@ Rails/InverseOf:
6060
- 'ee/app/models/ee/project.rb'
6161
- 'ee/app/models/ee/service_desk_setting.rb'
6262
- 'ee/app/models/ee/user.rb'
63-
- 'ee/app/models/elastic/reindexing_subtask.rb'
6463
- 'ee/app/models/geo/event.rb'
6564
- 'ee/app/models/geo/event_log.rb'
6665
- 'ee/app/models/geo/job_artifact_registry.rb'

.rubocop_todo/rspec/feature_category.yml

-1
Original file line numberDiff line numberDiff line change
@@ -816,7 +816,6 @@ RSpec/FeatureCategory:
816816
- 'ee/spec/models/ee/users_statistics_spec.rb'
817817
- 'ee/spec/models/elastic/index_setting_spec.rb'
818818
- 'ee/spec/models/elastic/reindexing_slice_spec.rb'
819-
- 'ee/spec/models/elastic/reindexing_subtask_spec.rb'
820819
- 'ee/spec/models/elastic/reindexing_task_spec.rb'
821820
- 'ee/spec/models/epic_user_mention_spec.rb'
822821
- 'ee/spec/models/gitlab/seat_link_data_spec.rb'

.rubocop_todo/search/namespaced_class.yml

-1
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,6 @@ Search/NamespacedClass:
3131
- 'ee/app/models/elastic/index_setting.rb'
3232
- 'ee/app/models/elastic/migration_record.rb'
3333
- 'ee/app/models/elastic/reindexing_slice.rb'
34-
- 'ee/app/models/elastic/reindexing_subtask.rb'
3534
- 'ee/app/models/elastic/reindexing_task.rb'
3635
- 'ee/app/models/elasticsearch_indexed_namespace.rb'
3736
- 'ee/app/models/elasticsearch_indexed_project.rb'

.rubocop_todo/style/class_and_module_children.yml

-1
Original file line numberDiff line numberDiff line change
@@ -421,7 +421,6 @@ Style/ClassAndModuleChildren:
421421
- 'ee/app/models/dast/profile_schedule.rb'
422422
- 'ee/app/models/ee/ci/job_artifact.rb'
423423
- 'ee/app/models/elastic/reindexing_slice.rb'
424-
- 'ee/app/models/elastic/reindexing_subtask.rb'
425424
- 'ee/app/models/elastic/reindexing_task.rb'
426425
- 'ee/app/models/epic/metrics.rb'
427426
- 'ee/app/models/epic/related_epic_link.rb'

GITALY_SERVER_VERSION

+1-1
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
f5742bf5cd567c3bfc02aca8880bc8f73a7fb7c4
1+
c2675ac3885b916376fb35eb123dd54820ca797d

app/assets/javascripts/ci/pipelines_page/components/failure_widget/pipeline_failed_jobs_widget.vue

+12-4
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
<script>
2-
import { GlButton, GlIcon } from '@gitlab/ui';
2+
import { GlBadge, GlButton, GlIcon } from '@gitlab/ui';
33
import CrudComponent from '~/vue_shared/components/crud_component.vue';
44
import { __ } from '~/locale';
55
import FailedJobsList from './failed_jobs_list.vue';
66
77
export default {
88
components: {
9+
GlBadge,
910
GlButton,
1011
GlIcon,
1112
FailedJobsList,
@@ -45,6 +46,9 @@ export default {
4546
bodyClasses() {
4647
return this.isExpanded ? '' : 'gl-hidden';
4748
},
49+
failedJobsCountLabel() {
50+
return `${this.isMaximumJobLimitReached ? '100+' : this.currentFailedJobsCount}`;
51+
},
4852
iconName() {
4953
return this.isExpanded ? 'chevron-down' : 'chevron-right';
5054
},
@@ -75,7 +79,7 @@ export default {
7579
<crud-component
7680
:id="$options.ariaControlsId"
7781
class="expandable-card"
78-
:class="{ 'is-collapsed gl-border-white hover:gl-border-gray-100': !isExpanded }"
82+
:class="{ 'is-collapsed gl-border-transparent hover:gl-border-default': !isExpanded }"
7983
data-testid="failed-jobs-card"
8084
@click="toggleWidget"
8185
>
@@ -88,12 +92,16 @@ export default {
8892
@click="toggleWidget"
8993
>
9094
<gl-icon :name="iconName" class="gl-mr-2" />
91-
<span class="gl-font-bold gl-text-secondary">
95+
<span class="gl-font-bold gl-text-subtle">
9296
{{ $options.i18n.failedJobsLabel }}
9397
</span>
94-
<span> ({{ currentFailedJobsCount }}) </span>
9598
</gl-button>
9699
</template>
100+
<template #count>
101+
<gl-badge>
102+
{{ failedJobsCountLabel }}
103+
</gl-badge>
104+
</template>
97105
<failed-jobs-list
98106
v-if="isExpanded"
99107
:failed-jobs-count="failedJobsCount"

app/assets/javascripts/deployments/components/deployment_header.vue

+32
Original file line numberDiff line numberDiff line change
@@ -6,12 +6,15 @@ import {
66
GlSkeletonLoader,
77
GlSprintf,
88
GlTooltipDirective as GlTooltip,
9+
GlTruncateText,
910
} from '@gitlab/ui';
1011
import ClipboardButton from '~/vue_shared/components/clipboard_button.vue';
1112
import TimeAgoTooltip from '~/vue_shared/components/time_ago_tooltip.vue';
1213
import { s__, __ } from '~/locale';
1314
import DeploymentStatusLink from '~/environments/components/deployment_status_link.vue';
1415
import DeploymentCommit from '~/environments/components/commit.vue';
16+
import { renderGFM } from '~/behaviors/markdown/render_gfm';
17+
import SafeHtml from '~/vue_shared/directives/safe_html';
1518
import { isFinished } from '../utils';
1619
1720
export default {
@@ -21,13 +24,15 @@ export default {
2124
GlLink,
2225
GlSkeletonLoader,
2326
GlSprintf,
27+
GlTruncateText,
2428
ClipboardButton,
2529
TimeAgoTooltip,
2630
DeploymentStatusLink,
2731
DeploymentCommit,
2832
},
2933
directives: {
3034
GlTooltip,
35+
SafeHtml,
3136
},
3237
props: {
3338
deployment: {
@@ -38,6 +43,11 @@ export default {
3843
required: true,
3944
type: Object,
4045
},
46+
release: {
47+
required: false,
48+
default: null,
49+
type: Object,
50+
},
4151
loading: {
4252
required: false,
4353
default: false,
@@ -99,14 +109,19 @@ export default {
99109
return this.isFinished(this.deployment) ? this.finishedAt : this.createdAt;
100110
},
101111
},
112+
mounted() {
113+
renderGFM(this.$refs['gfm-content']);
114+
},
102115
methods: {
103116
isFinished,
104117
},
118+
safeHtmlConfig: { ADD_TAGS: ['gl-emoji'] },
105119
i18n: {
106120
copyButton: __('Copy commit SHA'),
107121
needsApproval: s__('Deployment|Needs Approval'),
108122
startedTimeagoText: s__('Deployment|Started %{timeago} by %{username}'),
109123
finishedTimeagoText: s__('Deployment|Finished %{timeago} by %{username}'),
124+
releaseNotes: s__('Deployment|%{releaseName} release notes:'),
110125
},
111126
};
112127
</script>
@@ -157,5 +172,22 @@ export default {
157172
</time-ago-tooltip>
158173
</div>
159174
<deployment-commit :commit="commit" />
175+
<p v-if="release" class="gl-my-3 gl-font-bold">
176+
<gl-sprintf :message="$options.i18n.releaseNotes">
177+
<template #releaseName>
178+
<gl-link :href="release.links.selfUrl" data-testid="release-page-link">
179+
{{ release.name }}
180+
</gl-link>
181+
</template>
182+
</gl-sprintf>
183+
</p>
184+
<gl-truncate-text v-if="release" :lines="2" :mobile-lines="2">
185+
<div
186+
ref="gfm-content"
187+
v-safe-html:[$options.safeHtmlConfig]="release.descriptionHtml"
188+
class="md gl-z-0"
189+
data-testid="release-description-content"
190+
></div>
191+
</gl-truncate-text>
160192
</div>
161193
</template>

app/assets/javascripts/deployments/components/show_deployment.vue

+19-1
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@ import { toggleQueryPollingByVisibility, etagQueryHeaders } from '~/graphql_shar
55
import { s__ } from '~/locale';
66
import deploymentQuery from '../graphql/queries/deployment.query.graphql';
77
import environmentQuery from '../graphql/queries/environment.query.graphql';
8+
import releaseQuery from '../graphql/queries/release.query.graphql';
89
import DeploymentHeader from './deployment_header.vue';
910
import DeploymentAside from './deployment_aside.vue';
1011
import DeploymentDeployBlock from './deployment_deploy_block.vue';
@@ -58,9 +59,25 @@ export default {
5859
this.errorMessage = this.$options.i18n.errorMessage;
5960
},
6061
},
62+
release: {
63+
query: releaseQuery,
64+
variables() {
65+
return { fullPath: this.projectPath, tagName: this.deployment?.ref };
66+
},
67+
update(data) {
68+
return data?.project?.release;
69+
},
70+
skip() {
71+
return !this.deployment?.tag;
72+
},
73+
error(error) {
74+
captureException(error);
75+
this.errorMessage = this.$options.i18n.errorMessage;
76+
},
77+
},
6178
},
6279
data() {
63-
return { deployment: {}, environment: {}, errorMessage: '' };
80+
return { deployment: {}, environment: {}, errorMessage: '', release: null };
6481
},
6582
computed: {
6683
hasError() {
@@ -104,6 +121,7 @@ export default {
104121
v-else
105122
:deployment="deployment"
106123
:environment="environment"
124+
:release="release"
107125
:loading="isLoading"
108126
/>
109127
<details-feedback class="gl-mt-6" />
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
query relatedRelease($fullPath: ID!, $tagName: String!) {
2+
project(fullPath: $fullPath) {
3+
id
4+
release(tagName: $tagName) {
5+
id
6+
name
7+
descriptionHtml
8+
links {
9+
selfUrl
10+
}
11+
}
12+
}
13+
}

app/assets/javascripts/notes/components/diff_discussion_header.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -137,7 +137,7 @@ export default {
137137
<toggle-replies-widget
138138
:collapsed="!discussion.expanded"
139139
:replies="replies"
140-
class="gl-border-t -gl-mx-3 -gl-mb-3 gl-mt-4 !gl-border-x-0 !gl-border-b-0 gl-border-t-subtle"
140+
class="gl-border-t -gl-mx-3 -gl-mb-3 gl-mt-4 !gl-border-x-0 !gl-border-b-0 gl-border-t-subtle dark:gl-border-t-section"
141141
@toggle="toggleDiscussionHandler"
142142
/>
143143
</div>

app/assets/javascripts/notes/components/diff_with_note.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,7 @@ export default {
102102
:discussion-path="discussion.discussion_path"
103103
:diff-file="discussion.diff_file"
104104
:can-current-user-fork="false"
105-
class="gl-border"
105+
class="gl-border gl-border-section"
106106
:expanded="!isCollapsed"
107107
/>
108108
<div v-if="isTextFile" class="diff-content">

app/assets/javascripts/notes/components/noteable_note.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -421,7 +421,7 @@ export default {
421421
<div
422422
v-if="showMultiLineComment"
423423
data-testid="multiline-comment"
424-
class="gl-border-b-1 gl-border-gray-100 gl-px-5 gl-py-3 gl-text-gray-500 gl-border-b-solid"
424+
class="gl-border-b gl-border-section gl-px-5 gl-py-3 gl-text-subtle"
425425
>
426426
<gl-sprintf :message="__('Comment on lines %{startLine} to %{endLine}')">
427427
<template #startLine>

app/assets/javascripts/notes/components/toggle_replies_widget.vue

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@ export default {
6060
<template>
6161
<li
6262
:class="{ '!gl-rounded-b-base gl-text-subtle': collapsed }"
63-
class="toggle-replies-widget gl-border-r gl-border-l !gl-flex gl-flex-wrap gl-items-center gl-bg-subtle gl-px-5 gl-py-3"
63+
class="toggle-replies-widget gl-border-r gl-border-l !gl-flex gl-flex-wrap gl-items-center gl-border-l-section gl-border-r-section gl-bg-subtle gl-px-5 gl-py-3"
6464
:aria-expanded="ariaState"
6565
>
6666
<gl-button

app/assets/stylesheets/framework/diffs.scss

+1-1
Original file line numberDiff line numberDiff line change
@@ -807,7 +807,7 @@ table.code {
807807
margin-left: $note-spacing-left;
808808

809809
&[aria-expanded="false"] {
810-
@apply gl-border-b;
810+
@apply gl-border-b gl-border-b-section;
811811
}
812812
}
813813
}

app/assets/stylesheets/framework/files.scss

+11-11
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,10 @@
33
*
44
*/
55
.file-holder {
6-
@apply gl-border gl-rounded-base;
6+
@apply gl-border gl-border-section gl-rounded-base;
77

88
&.file-holder-top-border {
9-
@apply gl-border;
9+
@apply gl-border gl-border-section;
1010

1111
.file-title {
1212
// Prevents the top border getting clipped by the background
@@ -20,7 +20,7 @@
2020

2121
.file-title {
2222
position: relative;
23-
@apply gl-bg-subtle gl-border-b;
23+
@apply gl-bg-subtle gl-border-b gl-border-b-section;
2424
margin: 0;
2525
text-align: left;
2626
padding: 10px $gl-padding;
@@ -42,7 +42,7 @@
4242
.file-blame-legend {
4343
text-align: right;
4444
padding: 8px $gl-padding;
45-
@apply gl-bg-subtle gl-border-b;
45+
@apply gl-bg-subtle gl-border-b gl-border-b-section;
4646

4747
@include media-breakpoint-down(xs) {
4848
text-align: left;
@@ -114,7 +114,7 @@
114114
margin-left: 40px;
115115
padding: 10px 0;
116116
margin-bottom: 0;
117-
@apply gl-bg-default gl-border-l;
117+
@apply gl-bg-default gl-border-l gl-border-l-section;
118118

119119
li {
120120
color: $logs-li-color;
@@ -203,7 +203,7 @@ span.idiff {
203203
flex-wrap: wrap;
204204
align-items: center;
205205
justify-content: space-between;
206-
@apply gl-bg-subtle gl-border-b;
206+
@apply gl-bg-subtle gl-border-b gl-border-b-section;
207207
padding: $gl-padding-8 $gl-padding;
208208
margin: 0;
209209
min-height: px-to-rem($file-header-height);
@@ -241,7 +241,7 @@ span.idiff {
241241
display: flex;
242242
align-items: center;
243243
justify-content: flex-end;
244-
@apply gl-bg-subtle gl-border-b;
244+
@apply gl-bg-subtle gl-border-b gl-border-b-section;
245245
padding: 5px $gl-padding;
246246
}
247247

@@ -286,7 +286,7 @@ span.idiff {
286286
padding-bottom: $gl-padding;
287287

288288
.discussion-reply-holder {
289-
@apply gl-border-b gl-border-b-subtle;
289+
@apply gl-border-b gl-border-b-subtle dark:gl-border-b-section;
290290
border-radius: 0;
291291
}
292292
}
@@ -449,7 +449,7 @@ span.idiff {
449449

450450
.tr {
451451
display: flex;
452-
@apply gl-border-b gl-border-b-subtle;
452+
@apply gl-border-b gl-border-b-subtle dark:gl-border-b-section;
453453

454454
&.last-row {
455455
border-bottom: 0;
@@ -503,7 +503,7 @@ span.idiff {
503503

504504
.blame.file-content .td.line-numbers {
505505
float: none;
506-
@apply gl-border-l;
506+
@apply gl-border-l gl-border-l-section;
507507
border-radius: 0;
508508

509509
.file-line-num {
@@ -517,7 +517,7 @@ span.idiff {
517517
}
518518

519519
.blame-stream-container {
520-
@apply gl-border-t;
520+
@apply gl-border-t gl-border-t-section;
521521
}
522522

523523
.blame-stream-loading {

0 commit comments

Comments
 (0)