diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2023-10-31 00:12:43 +0300 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2023-10-31 00:12:43 +0300 |
commit | 892e58c41fd07cc59b9e06b2a856ee61790d5bc4 (patch) | |
tree | a183f2d3ba41f7e84462f9fe6fb5adcb546b1343 | |
parent | c51425915fb1b2c367d6d828449b5cc7772ac104 (diff) |
Add latest changes from gitlab-org/gitlab@master
24 files changed, 147 insertions, 74 deletions
diff --git a/.gitlab/CODEOWNERS b/.gitlab/CODEOWNERS index e0dacb8cb90..fcae55a01c1 100644 --- a/.gitlab/CODEOWNERS +++ b/.gitlab/CODEOWNERS @@ -467,6 +467,7 @@ lib/gitlab/checks/** /doc/administration/consul.md @axil /doc/administration/credentials_inventory.md @jglassman1 /doc/administration/custom_project_templates.md @msedlakjakubowski +/doc/administration/dedicated/ @lyspin /doc/administration/diff_limits.md @msedlakjakubowski /doc/administration/docs_self_host.md @axil /doc/administration/encrypted_configuration.md @axil @@ -790,7 +791,6 @@ lib/gitlab/checks/** /doc/development/fe_guide/merge_request_widget_extensions.md @aqualls /doc/development/fe_guide/onboarding_course/ @sselhorn /doc/development/fe_guide/source_editor.md @msedlakjakubowski -/doc/development/fe_guide/style/ @aqualls /doc/development/fe_guide/view_component.md @sselhorn /doc/development/feature_categorization/ @sselhorn /doc/development/fips_compliance.md @msedlakjakubowski @@ -874,6 +874,7 @@ lib/gitlab/checks/** /doc/security/email_verification.md @phillipwells /doc/security/identity_verification.md @phillipwells /doc/subscriptions/ @fneill +/doc/subscriptions/gitlab_dedicated/ @lyspin /doc/topics/autodevops/ @phillipwells /doc/topics/data_seeder.md @sselhorn /doc/topics/git/ @msedlakjakubowski @@ -892,6 +893,7 @@ lib/gitlab/checks/** /doc/tutorials/install_gitlab_single_node/ @axil /doc/tutorials/issue_triage/ @msedlakjakubowski /doc/tutorials/move_personal_project_to_group/ @lciutacu +/doc/tutorials/product_analytics_onboarding_website_project/ @lciutacu /doc/tutorials/protected_workflow/ @aqualls /doc/tutorials/scan_execution_policy/ @rdickenson /doc/tutorials/scan_result_policy/ @rdickenson @@ -912,7 +914,6 @@ lib/gitlab/checks/** /doc/user/discussions/ @aqualls /doc/user/emoji_reactions.md @msedlakjakubowski /doc/user/enterprise_user/ @jglassman1 -/doc/user/feature_flags.md @sselhorn /doc/user/gitlab_duo_chat.md @sselhorn /doc/user/group/ @lciutacu /doc/user/group/clusters/ @phillipwells @@ -992,6 +993,7 @@ lib/gitlab/checks/** /doc/user/reserved_names.md @lciutacu /doc/user/search/ @ashrafkhamis /doc/user/search/command_palette.md @sselhorn +/doc/user/shortcuts.md @sselhorn /doc/user/snippets.md @msedlakjakubowski /doc/user/ssh.md @jglassman1 /doc/user/storage_management_automation.md @fneill diff --git a/app/assets/javascripts/repository/components/table/row.vue b/app/assets/javascripts/repository/components/table/row.vue index 526757e6147..6a81f11eb51 100644 --- a/app/assets/javascripts/repository/components/table/row.vue +++ b/app/assets/javascripts/repository/components/table/row.vue @@ -248,19 +248,19 @@ export default { class="ml-1" /> </td> - <td class="d-none d-sm-table-cell tree-commit cursor-default gl-text-secondary"> + <td class="d-none d-sm-table-cell tree-commit cursor-default"> <gl-link v-if="commitData" v-safe-html:[$options.safeHtmlConfig]="commitData.titleHtml" :href="commitData.commitPath" :title="commitData.message" - class="str-truncated-100 tree-commit-link gl-text-secondary" + class="str-truncated-100 tree-commit-link gl-text-gray-600" /> <gl-intersection-observer @appear="rowAppeared" @disappear="rowDisappeared"> <gl-skeleton-loader v-if="showSkeletonLoader" :lines="1" /> </gl-intersection-observer> </td> - <td class="tree-time-ago text-right cursor-default gl-text-secondary"> + <td class="tree-time-ago text-right cursor-default gl-text-gray-600"> <gl-intersection-observer @appear="rowAppeared" @disappear="rowDisappeared"> <timeago-tooltip v-if="commitData" :time="commitData.committedDate" /> </gl-intersection-observer> diff --git a/app/assets/javascripts/vue_shared/issuable/show/components/issuable_header.vue b/app/assets/javascripts/vue_shared/issuable/show/components/issuable_header.vue index a9b5e3a66a8..62a2b44e660 100644 --- a/app/assets/javascripts/vue_shared/issuable/show/components/issuable_header.vue +++ b/app/assets/javascripts/vue_shared/issuable/show/components/issuable_header.vue @@ -221,7 +221,7 @@ export default { @click="handleRightSidebarToggleClick" /> </div> - <div class="detail-page-header-actions gl-display-flex"> + <div class="detail-page-header-actions gl-align-self-center gl-display-flex"> <slot name="header-actions"></slot> </div> </div> diff --git a/app/assets/stylesheets/components/detail_page.scss b/app/assets/stylesheets/components/detail_page.scss index de8142924f9..f4b75104fb2 100644 --- a/app/assets/stylesheets/components/detail_page.scss +++ b/app/assets/stylesheets/components/detail_page.scss @@ -36,7 +36,6 @@ } .detail-page-header-actions { - align-self: center; flex: 0 0 auto; &:not(.is-merge-request) { diff --git a/app/assets/stylesheets/pages/commits.scss b/app/assets/stylesheets/pages/commits.scss index 3e9c59464f8..72ea586979f 100644 --- a/app/assets/stylesheets/pages/commits.scss +++ b/app/assets/stylesheets/pages/commits.scss @@ -131,7 +131,7 @@ } .committer { - color: $gl-text-color-tertiary; + color: $gl-text-color-secondary; .commit-author-link { color: $gl-text-color; diff --git a/app/presenters/member_presenter.rb b/app/presenters/member_presenter.rb index 73aae2d85ad..7acaa704368 100644 --- a/app/presenters/member_presenter.rb +++ b/app/presenters/member_presenter.rb @@ -41,6 +41,11 @@ class MemberPresenter < Gitlab::View::Presenter::Delegated false end + # This functionality is only available in EE. + def custom_permissions + [] + end + def last_owner? raise NotImplementedError end diff --git a/app/serializers/member_entity.rb b/app/serializers/member_entity.rb index e481abf22e3..a710df9ce5b 100644 --- a/app/serializers/member_entity.rb +++ b/app/serializers/member_entity.rb @@ -35,6 +35,8 @@ class MemberEntity < Grape::Entity expose :member_role_id end + expose :custom_permissions + expose :source do |member| GroupEntity.represent(member.source, only: [:id, :full_name, :web_url]) end diff --git a/config/webpack.config.js b/config/webpack.config.js index c983ad5e77a..2977b1ce712 100644 --- a/config/webpack.config.js +++ b/config/webpack.config.js @@ -383,6 +383,15 @@ module.exports = { loader: 'babel-loader', }, { + test: /swagger-ui-dist\/.*\.js?$/, + include: /node_modules/, + loader: 'babel-loader', + options: { + plugins: ['@babel/plugin-proposal-logical-assignment-operators'], + ...defaultJsOptions, + }, + }, + { test: /\.(js|cjs)$/, exclude: shouldExcludeFromCompliling, use: [ diff --git a/doc/development/development_processes.md b/doc/development/development_processes.md index 1cdf667a35f..5efcdd90df4 100644 --- a/doc/development/development_processes.md +++ b/doc/development/development_processes.md @@ -123,3 +123,13 @@ the [reviewer values](https://about.gitlab.com/handbook/engineering/workflow/rev ### Shell Scripting guides - [Shell scripting standards and style guidelines](shell_scripting_guide/index.md) + +## Clear written communication + +While writing any comment in an issue or merge request or any other mode of communication, +follow [IETF standard](https://www.ietf.org/rfc/rfc2119.txt) while using terms like +"MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT","RECOMMENDED", "MAY", +and "OPTIONAL". + +This ensures that different team members from different cultures have a clear understanding of +the terms being used. diff --git a/lib/gitlab/database/migrations/milestone_mixin.rb b/lib/gitlab/database/migrations/milestone_mixin.rb index 17b7c0ccfc2..7d78f74d237 100644 --- a/lib/gitlab/database/migrations/milestone_mixin.rb +++ b/lib/gitlab/database/migrations/milestone_mixin.rb @@ -19,8 +19,8 @@ module Gitlab end end - def initialize(name = class_name, version = nil, _type = nil) - raise MilestoneNotSetError, "Milestone is not set for #{self.class.name}" if milestone.nil? + def initialize(name = self.class.name, version = nil, _type = nil) + raise MilestoneNotSetError, "Milestone is not set for #{name}" if milestone.nil? super(name, version) end diff --git a/lib/tasks/gitlab/tw/codeowners.rake b/lib/tasks/gitlab/tw/codeowners.rake index a4c1f18970d..36ed611a0c2 100644 --- a/lib/tasks/gitlab/tw/codeowners.rake +++ b/lib/tasks/gitlab/tw/codeowners.rake @@ -52,7 +52,7 @@ namespace :tw do CodeOwnerRule.new('Fuzz Testing', '@rdickenson'), CodeOwnerRule.new('Geo', '@axil'), CodeOwnerRule.new('Gitaly', '@eread'), - # CodeOwnerRule.new('GitLab Dedicated', ''), + CodeOwnerRule.new('GitLab Dedicated', '@lyspin'), CodeOwnerRule.new('Global Search', '@ashrafkhamis'), CodeOwnerRule.new('IDE', '@ashrafkhamis'), CodeOwnerRule.new('Import and Integrate', '@eread @ashrafkhamis'), diff --git a/package.json b/package.json index 2d6c590930d..df5c27b8e9d 100644 --- a/package.json +++ b/package.json @@ -145,7 +145,7 @@ "gettext-parser": "^6.0.0", "graphql": "^15.7.2", "graphql-tag": "^2.11.0", - "gridstack": "^9.4.0", + "gridstack": "^9.5.0", "highlight.js": "^11.8.0", "immer": "^9.0.15", "ipaddr.js": "^1.9.1", @@ -195,7 +195,7 @@ "sortablejs": "^1.10.2", "string-hash": "1.1.3", "style-loader": "^2.0.0", - "swagger-ui-dist": "4.12.0", + "swagger-ui-dist": "5.9.1", "thread-loader": "^3.0.4", "three": "^0.143.0", "timeago.js": "^4.0.2", diff --git a/qa/gdk/Dockerfile.gdk b/qa/gdk/Dockerfile.gdk index 18ff8dfd0c0..914a739c99f 100644 --- a/qa/gdk/Dockerfile.gdk +++ b/qa/gdk/Dockerfile.gdk @@ -5,7 +5,7 @@ ENV GITLAB_LICENSE_MODE=test \ # Clone GDK at specific sha and bootstrap packages # -ARG GDK_SHA=198715217bee1db3cc60e0ecb47b48b79fb7005c +ARG GDK_SHA=83bbc674a24dfb6a31c858f167ae80e670856328 RUN set -eux; \ git clone --depth 1 https://gitlab.com/gitlab-org/gitlab-development-kit.git && cd gitlab-development-kit; \ git fetch --depth 1 origin ${GDK_SHA} && git -c advice.detachedHead=false checkout ${GDK_SHA}; \ diff --git a/qa/qa/resource/group_base.rb b/qa/qa/resource/group_base.rb index 263c2ca2aeb..0972bc32966 100644 --- a/qa/qa/resource/group_base.rb +++ b/qa/qa/resource/group_base.rb @@ -22,8 +22,14 @@ module QA # Get group projects # # @return [Array<QA::Resource::Project>] - def projects - parse_body(api_get_from("#{api_get_path}/projects")).map do |project| + def projects(auto_paginate: false) + response = if auto_paginate + auto_paginated_response(request_url("#{api_get_path}/projects", per_page: '100')) + else + parse_body(api_get_from("#{api_get_path}/projects")) + end + + response.map do |project| Project.init do |resource| resource.add_name_uuid = false resource.api_client = api_client @@ -39,8 +45,14 @@ module QA # Get group labels # # @return [Array<QA::Resource::GroupLabel>] - def labels - parse_body(api_get_from("#{api_get_path}/labels")).map do |label| + def labels(auto_paginate: false) + response = if auto_paginate + auto_paginated_response(request_url("#{api_get_path}/labels", per_page: '100')) + else + parse_body(api_get_from("#{api_get_path}/labels")) + end + + response.map do |label| GroupLabel.init do |resource| resource.api_client = api_client resource.group = self @@ -55,8 +67,14 @@ module QA # Get group milestones # # @return [Array<QA::Resource::GroupMilestone>] - def milestones - parse_body(api_get_from("#{api_get_path}/milestones")).map do |milestone| + def milestones(auto_paginate: false) + response = if auto_paginate + auto_paginated_response(request_url("#{api_get_path}/milestones", per_page: '100')) + else + parse_body(api_get_from("#{api_get_path}/milestones")) + end + + response.map do |milestone| GroupMilestone.init do |resource| resource.api_client = api_client resource.group = self @@ -71,8 +89,14 @@ module QA # Get group badges # # @return [Array<QA::Resource::GroupBadge>] - def badges - parse_body(api_get_from("#{api_get_path}/badges")).map do |badge| + def badges(auto_paginate: false) + response = if auto_paginate + auto_paginated_response(request_url("#{api_get_path}/badges", per_page: '100')) + else + parse_body(api_get_from("#{api_get_path}/badges")) + end + + response.map do |badge| GroupBadge.init do |resource| resource.api_client = api_client resource.group = self diff --git a/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb b/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb index 2fe3857cbe6..2b1a81f0afb 100644 --- a/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb +++ b/qa/qa/specs/features/api/1_manage/migration/gitlab_migration_large_project_spec.rb @@ -50,7 +50,7 @@ module QA # Source objects # - let(:source_project) { source_group.projects.find { |project| project.name == gitlab_source_project }.reload! } + let(:source_project) { source_group.projects(auto_paginate: true).find { |project| project.name == gitlab_source_project }.reload! } let(:source_branches) { source_project.repository_branches(auto_paginate: true).map { |b| b[:name] } } let(:source_commits) { source_project.commits(auto_paginate: true).map { |c| c[:id] } } let(:source_labels) { source_project.labels(auto_paginate: true).map { |l| l.except(:id) } } @@ -72,7 +72,7 @@ module QA # Imported objects # - let(:imported_project) { imported_group.projects.find { |project| project.name == gitlab_source_project }.reload! } + let(:imported_project) { imported_group.projects(auto_paginate: true).find { |project| project.name == gitlab_source_project }.reload! } let(:branches) { imported_project.repository_branches(auto_paginate: true).map { |b| b[:name] } } let(:commits) { imported_project.commits(auto_paginate: true).map { |c| c[:id] } } let(:labels) { imported_project.labels(auto_paginate: true).map { |l| l.except(:id) } } diff --git a/spec/features/projects/branches/user_creates_branch_spec.rb b/spec/features/projects/branches/user_creates_branch_spec.rb index eafb75d75ac..8d636dacb75 100644 --- a/spec/features/projects/branches/user_creates_branch_spec.rb +++ b/spec/features/projects/branches/user_creates_branch_spec.rb @@ -6,7 +6,7 @@ RSpec.describe 'User creates branch', :js, feature_category: :groups_and_project include Features::BranchesHelpers let_it_be(:group) { create(:group, :public) } - let_it_be(:user) { create(:user, :no_super_sidebar) } + let_it_be(:user) { create(:user) } shared_examples 'creates new branch' do specify do diff --git a/spec/features/projects/members/user_requests_access_spec.rb b/spec/features/projects/members/user_requests_access_spec.rb index d1e58ba91f0..e7f99a4048c 100644 --- a/spec/features/projects/members/user_requests_access_spec.rb +++ b/spec/features/projects/members/user_requests_access_spec.rb @@ -5,8 +5,8 @@ require 'spec_helper' RSpec.describe 'Projects > Members > User requests access', :js, feature_category: :groups_and_projects do include Spec::Support::Helpers::ModalHelpers - let_it_be(:user) { create(:user, :no_super_sidebar) } - let_it_be(:maintainer) { create(:user, :no_super_sidebar) } + let_it_be(:user) { create(:user) } + let_it_be(:maintainer) { create(:user) } let_it_be(:project) { create(:project, :public, :repository) } let(:owner) { project.first_owner } @@ -54,10 +54,9 @@ RSpec.describe 'Projects > Members > User requests access', :js, feature_categor expect(project.requesters.exists?(user_id: user)).to be_truthy - click_link 'Project information' - - page.within('.nav-sidebar') do - click_link('Members') + within_testid('super-sidebar') do + click_button 'Manage' + click_link 'Members' end page.within('.content') do diff --git a/spec/features/projects/milestones/user_interacts_with_labels_spec.rb b/spec/features/projects/milestones/user_interacts_with_labels_spec.rb index 3742c9f19d8..9c3eaff1545 100644 --- a/spec/features/projects/milestones/user_interacts_with_labels_spec.rb +++ b/spec/features/projects/milestones/user_interacts_with_labels_spec.rb @@ -3,7 +3,7 @@ require 'spec_helper' RSpec.describe 'User interacts with labels', feature_category: :team_planning do - let(:user) { create(:user, :no_super_sidebar) } + let(:user) { create(:user) } let(:project) { create(:project, namespace: user.namespace) } let(:milestone) { create(:milestone, project: project, title: 'v2.2', description: '# Description header') } let(:issue1) { create(:issue, project: project, title: 'Bugfix1', milestone: milestone) } @@ -25,9 +25,7 @@ RSpec.describe 'User interacts with labels', feature_category: :team_planning do it 'shows the list of labels', :js do click_link('v2.2') - page.within('.nav-sidebar') do - page.find(:xpath, "//a[@href='#tab-labels']").click - end + page.find(:xpath, "//a[@href='#tab-labels']").click expect(page).to have_selector('ul.manage-labels-list') diff --git a/spec/features/projects/pages/user_edits_settings_spec.rb b/spec/features/projects/pages/user_edits_settings_spec.rb index 8350214bf99..255ea43758f 100644 --- a/spec/features/projects/pages/user_edits_settings_spec.rb +++ b/spec/features/projects/pages/user_edits_settings_spec.rb @@ -5,7 +5,7 @@ RSpec.describe 'Pages edits pages settings', :js, feature_category: :pages do include Spec::Support::Helpers::ModalHelpers let_it_be_with_reload(:project) { create(:project, :pages_published, pages_https_only: false) } - let_it_be(:user) { create(:user, :no_super_sidebar) } + let_it_be(:user) { create(:user) } before do allow(Gitlab.config.pages).to receive(:enabled).and_return(true) @@ -85,7 +85,7 @@ RSpec.describe 'Pages edits pages settings', :js, feature_category: :pages do it 'renders "Pages" tab' do visit project_pages_path(project) - page.within '.nav-sidebar' do + within_testid 'super-sidebar' do expect(page).to have_link('Pages') end end @@ -96,7 +96,8 @@ RSpec.describe 'Pages edits pages settings', :js, feature_category: :pages do it 'renders "Pages" tab' do visit project_environments_path(project) - page.within '.nav-sidebar' do + within_testid 'super-sidebar' do + click_button 'Deploy' expect(page).to have_link('Pages') end end @@ -110,7 +111,8 @@ RSpec.describe 'Pages edits pages settings', :js, feature_category: :pages do it 'does not render "Pages" tab' do visit project_environments_path(project) - page.within '.nav-sidebar' do + within_testid 'super-sidebar' do + click_button 'Deploy' expect(page).not_to have_link('Pages') end end diff --git a/spec/features/projects/tree/tree_show_spec.rb b/spec/features/projects/tree/tree_show_spec.rb index 3becc48d450..4a913d82a78 100644 --- a/spec/features/projects/tree/tree_show_spec.rb +++ b/spec/features/projects/tree/tree_show_spec.rb @@ -21,6 +21,15 @@ RSpec.describe 'Projects tree', :js, feature_category: :web_ide do sign_in(user) end + it 'passes axe automated accessibility testing' do + visit project_tree_path(project, test_sha) + wait_for_requests + + expect(page).to be_axe_clean.within('.project-last-commit') + expect(page).to be_axe_clean.within('.nav-block') + expect(page).to be_axe_clean.within('.tree-content-holder').skipping :'link-in-text-block' + end + it 'renders tree table without errors' do visit project_tree_path(project, test_sha) wait_for_requests @@ -111,9 +120,16 @@ RSpec.describe 'Projects tree', :js, feature_category: :web_ide do end context 'LFS' do - it 'renders LFS badge on blob item' do + before do visit project_tree_path(project, File.join('master', 'files/lfs')) + wait_for_requests + end + it 'passes axe automated accessibility testing' do + expect(page).to be_axe_clean.within('.tree-content-holder').skipping :'link-in-text-block' + end + + it 'renders LFS badge on blob item' do expect(page).to have_selector('[data-testid="label-lfs"]', text: 'LFS') end end diff --git a/spec/features/users/overview_spec.rb b/spec/features/users/overview_spec.rb index d1ff60b6069..906ad51d841 100644 --- a/spec/features/users/overview_spec.rb +++ b/spec/features/users/overview_spec.rb @@ -3,7 +3,7 @@ require 'spec_helper' RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_profile do - let(:user) { create(:user, :no_super_sidebar) } + let(:user) { create(:user) } let(:contributed_project) { create(:project, :public, :repository) } def push_code_contribution @@ -27,8 +27,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr shared_context 'visit overview tab' do before do visit user.username - page.find('.js-overview-tab a').click - wait_for_requests + click_nav user.name end end @@ -158,8 +157,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr describe 'user has no followers' do before do visit user.username - page.find('.js-followers-tab a').click - wait_for_requests + click_nav 'Followers' end it 'shows an empty followers list with an info message' do @@ -177,8 +175,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr before do follower.follow(user) visit user.username - page.find('.js-followers-tab a').click - wait_for_requests + click_nav 'Followers' end it 'shows followers' do @@ -199,8 +196,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr end visit user.username - page.find('.js-followers-tab a').click - wait_for_requests + click_nav 'Followers' end it 'shows paginated followers' do page.within('#followers') do @@ -221,8 +217,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr describe 'user is not following others' do before do visit user.username - page.find('.js-following-tab a').click - wait_for_requests + click_nav 'Following' end it 'shows an empty following list with an info message' do @@ -240,8 +235,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr before do user.follow(followee) visit user.username - page.find('.js-following-tab a').click - wait_for_requests + click_nav 'Following' end it 'shows following user' do @@ -262,8 +256,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr end visit user.username - page.find('.js-following-tab a').click - wait_for_requests + click_nav 'Following' end it 'shows paginated following' do page.within('#following') do @@ -286,8 +279,7 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr shared_context "visit bot's overview tab" do before do visit bot_user.username - page.find('.js-overview-tab a').click - wait_for_requests + click_nav bot_user.name end end @@ -327,4 +319,13 @@ RSpec.describe 'Overview tab on a user profile', :js, feature_category: :user_pr end end end + + private + + def click_nav(title) + within_testid('super-sidebar') do + click_link title + end + wait_for_requests + end end diff --git a/spec/frontend/repository/components/table/__snapshots__/row_spec.js.snap b/spec/frontend/repository/components/table/__snapshots__/row_spec.js.snap index af7eca6a52d..e14f41e2ed2 100644 --- a/spec/frontend/repository/components/table/__snapshots__/row_spec.js.snap +++ b/spec/frontend/repository/components/table/__snapshots__/row_spec.js.snap @@ -34,15 +34,15 @@ exports[`Repository table row component renders a symlink table row 1`] = ` /> </td> <td - class="cursor-default d-none d-sm-table-cell gl-text-secondary tree-commit" + class="cursor-default d-none d-sm-table-cell tree-commit" > <gl-link-stub - class="gl-text-secondary str-truncated-100 tree-commit-link" + class="gl-text-gray-600 str-truncated-100 tree-commit-link" /> <gl-intersection-observer-stub /> </td> <td - class="cursor-default gl-text-secondary text-right tree-time-ago" + class="cursor-default gl-text-gray-600 text-right tree-time-ago" > <gl-intersection-observer-stub> <timeago-tooltip-stub @@ -90,15 +90,15 @@ exports[`Repository table row component renders table row 1`] = ` /> </td> <td - class="cursor-default d-none d-sm-table-cell gl-text-secondary tree-commit" + class="cursor-default d-none d-sm-table-cell tree-commit" > <gl-link-stub - class="gl-text-secondary str-truncated-100 tree-commit-link" + class="gl-text-gray-600 str-truncated-100 tree-commit-link" /> <gl-intersection-observer-stub /> </td> <td - class="cursor-default gl-text-secondary text-right tree-time-ago" + class="cursor-default gl-text-gray-600 text-right tree-time-ago" > <gl-intersection-observer-stub> <timeago-tooltip-stub @@ -146,15 +146,15 @@ exports[`Repository table row component renders table row for path with special /> </td> <td - class="cursor-default d-none d-sm-table-cell gl-text-secondary tree-commit" + class="cursor-default d-none d-sm-table-cell tree-commit" > <gl-link-stub - class="gl-text-secondary str-truncated-100 tree-commit-link" + class="gl-text-gray-600 str-truncated-100 tree-commit-link" /> <gl-intersection-observer-stub /> </td> <td - class="cursor-default gl-text-secondary text-right tree-time-ago" + class="cursor-default gl-text-gray-600 text-right tree-time-ago" > <gl-intersection-observer-stub> <timeago-tooltip-stub diff --git a/spec/lib/gitlab/database/migrations/milestone_mixin_spec.rb b/spec/lib/gitlab/database/migrations/milestone_mixin_spec.rb index 87a04329f79..1ed5c846550 100644 --- a/spec/lib/gitlab/database/migrations/milestone_mixin_spec.rb +++ b/spec/lib/gitlab/database/migrations/milestone_mixin_spec.rb @@ -41,5 +41,11 @@ RSpec.describe Gitlab::Database::Migrations::MilestoneMixin, feature_category: : expect { migration_mixin_version.new(4, 4, :regular) }.not_to raise_error end end + + context 'when initialize arguments are not provided' do + it "does not raise an error" do + expect { migration_mixin_version.new }.not_to raise_error + end + end end end diff --git a/yarn.lock b/yarn.lock index 2177034ebab..a5067af2d15 100644 --- a/yarn.lock +++ b/yarn.lock @@ -7184,10 +7184,10 @@ graphql@^15.7.2: resolved "https://registry.yarnpkg.com/graphql/-/graphql-15.7.2.tgz#85ab0eeb83722977151b3feb4d631b5f2ab287ef" integrity sha512-AnnKk7hFQFmU/2I9YSQf3xw44ctnSFCfp3zE0N6W174gqe9fWG/2rKaKxROK7CcI3XtERpjEKFqts8o319Kf7A== -gridstack@^9.4.0: - version "9.4.0" - resolved "https://registry.yarnpkg.com/gridstack/-/gridstack-9.4.0.tgz#806b5f8dc2d52ac6aade5d5fc799979a167f6977" - integrity sha512-4dcXGT5IzWfLxJIj4oGZPohgYfHrbdNHenRwwApzialkG2bVd9J9NmcdZsRFX6Q4cANqR0M56yF2Km2FAQkVCw== +gridstack@^9.5.0: + version "9.5.0" + resolved "https://registry.yarnpkg.com/gridstack/-/gridstack-9.5.0.tgz#7a48fbddca6e13cb55d921bdbe6ab22f5a12e470" + integrity sha512-mGYID0mdmtPzv/Qt9lgc3TfQjFgPcxEkGZ/Z6ESCCAplli5UUJLbOsEtaM5uGUGExOC8zo7FoHNL01Xze5AF9g== gzip-size@^6.0.0: version "6.0.0" @@ -12603,10 +12603,10 @@ swagger-cli@^4.0.4: dependencies: "@apidevtools/swagger-cli" "4.0.4" -swagger-ui-dist@4.12.0: - version "4.12.0" - resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-4.12.0.tgz#986d90f05e81fb9db3ca40372278a5d8ce71db3a" - integrity sha512-B0Iy2ueXtbByE6OOyHTi3lFQkpPi/L7kFOKFeKTr44za7dJIELa9kzaca6GkndCgpK1QTjArnoXG+aUy0XQp1w== +swagger-ui-dist@5.9.1: + version "5.9.1" + resolved "https://registry.yarnpkg.com/swagger-ui-dist/-/swagger-ui-dist-5.9.1.tgz#d0bcd614e3752da02df141846348f84468ae815e" + integrity sha512-5zAx+hUwJb9T3EAntc7TqYkV716CMqG6sZpNlAAMOMWkNXRYxGkN8ADIvD55dQZ10LxN90ZM/TQmN7y1gpICnw== symbol-observable@^1.0.4: version "1.2.0" |