From 57a3a42c88f6e7dbcfd388a5c83302f0bb666023 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 12 Oct 2021 12:09:36 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .gitlab/ci/review.gitlab-ci.yml | 4 + app/assets/javascripts/ci_lint/index.js | 4 +- .../repository/components/table/index.vue | 11 ++- .../approvals/approvals_summary.vue | 10 +- .../components/mr_widget_header.vue | 2 +- .../groups/group_members_controller.rb | 22 +++-- .../projects/project_members_controller.rb | 22 +++-- app/controllers/registrations_controller.rb | 5 + app/graphql/resolvers/board_list_resolver.rb | 35 +++++++ app/graphql/types/board_list_type.rb | 13 +++ app/graphql/types/query_type.rb | 4 + app/models/environment.rb | 8 +- app/policies/list_policy.rb | 5 + app/services/ci/archive_trace_service.rb | 11 ++- .../application_settings/_mailgun.html.haml | 2 +- .../application_settings/_snowplow.html.haml | 2 +- ...nt_last_visible_pipeline_disable_joins.yml | 8 -- ...phaned_deployments_background_migration.rb | 15 +++ db/schema_migrations/20211011152701 | 1 + doc/api/dependencies.md | 2 +- doc/api/graphql/reference/index.md | 13 +++ doc/development/adding_database_indexes.md | 3 +- doc/user/admin_area/license.md | 6 +- lib/gitlab/ci/trace.rb | 16 ++- .../database/load_balancing/primary_host.rb | 24 ++--- .../sidekiq_client_middleware.rb | 3 + .../database/load_balancing/sticking.rb | 4 + locale/gitlab.pot | 14 ++- package.json | 4 +- .../page/group/settings/usage_quotas.rb | 5 - .../registrations_controller_spec.rb | 16 +++ .../approvals/approvals_summary_spec.js | 8 +- .../resolvers/board_list_resolver_spec.rb | 39 ++++++++ spec/graphql/types/query_type_spec.rb | 11 +++ .../load_balancing/primary_host_spec.rb | 52 +--------- .../sidekiq_client_middleware_spec.rb | 2 +- .../database/load_balancing/sticking_spec.rb | 20 ++++ spec/models/ci/pipeline_spec.rb | 12 +-- spec/models/environment_spec.rb | 66 ------------- .../graphql/boards/board_list_query_spec.rb | 98 +++++++++++++++++++ .../services/ci/archive_trace_service_spec.rb | 26 +++++ yarn.lock | 26 ++--- 42 files changed, 435 insertions(+), 219 deletions(-) create mode 100644 app/graphql/resolvers/board_list_resolver.rb create mode 100644 app/policies/list_policy.rb delete mode 100644 config/feature_flags/development/environment_last_visible_pipeline_disable_joins.yml create mode 100644 db/post_migrate/20211011152701_cleanup_delete_orphaned_deployments_background_migration.rb create mode 100644 db/schema_migrations/20211011152701 create mode 100644 spec/graphql/resolvers/board_list_resolver_spec.rb create mode 100644 spec/requests/api/graphql/boards/board_list_query_spec.rb diff --git a/.gitlab/ci/review.gitlab-ci.yml b/.gitlab/ci/review.gitlab-ci.yml index f20f3276867..2fa8c2519f7 100644 --- a/.gitlab/ci/review.gitlab-ci.yml +++ b/.gitlab/ci/review.gitlab-ci.yml @@ -172,6 +172,8 @@ review-qa-smoke: - .review-qa-base - .review:rules:review-qa-smoke retry: 1 # This is confusing but this means "2 runs at max". + variables: + QA_RUN_TYPE: review-qa-smoke script: - bin/test Test::Instance::Smoke "${CI_ENVIRONMENT_URL}" @@ -180,6 +182,8 @@ review-qa-all: - .review-qa-base - .review:rules:review-qa-all parallel: 5 + variables: + QA_RUN_TYPE: review-qa-all script: - export KNAPSACK_REPORT_PATH=knapsack/master_report.json - export KNAPSACK_TEST_FILE_PATTERN=qa/specs/features/**/*_spec.rb diff --git a/app/assets/javascripts/ci_lint/index.js b/app/assets/javascripts/ci_lint/index.js index 274aab45deb..f97590ec5db 100644 --- a/app/assets/javascripts/ci_lint/index.js +++ b/app/assets/javascripts/ci_lint/index.js @@ -8,7 +8,9 @@ import CiLint from './components/ci_lint.vue'; Vue.use(VueApollo); const apolloProvider = new VueApollo({ - defaultClient: createDefaultClient(resolvers), + defaultClient: createDefaultClient(resolvers, { + assumeImmutableResults: true, + }), }); export default (containerId = '#js-ci-lint') => { diff --git a/app/assets/javascripts/repository/components/table/index.vue b/app/assets/javascripts/repository/components/table/index.vue index 44621fc34d1..0a2ed753e38 100644 --- a/app/assets/javascripts/repository/components/table/index.vue +++ b/app/assets/javascripts/repository/components/table/index.vue @@ -90,17 +90,18 @@ export default { showMore() { this.$emit('showMore'); }, - generateRowNumber(id) { + generateRowNumber(path, id, index) { + const key = `${path}-${id}-${index}`; if (!this.glFeatures.lazyLoadCommits) { return 0; } - if (!this.rowNumbers[id] && this.rowNumbers[id] !== 0) { + if (!this.rowNumbers[key] && this.rowNumbers[key] !== 0) { this.$options.totalRowsLoaded += 1; - this.rowNumbers[id] = this.$options.totalRowsLoaded; + this.rowNumbers[key] = this.$options.totalRowsLoaded; } - return this.rowNumbers[id]; + return this.rowNumbers[key]; }, getCommit(fileName, type) { if (!this.glFeatures.lazyLoadCommits) { @@ -150,7 +151,7 @@ export default { :lfs-oid="entry.lfsOid" :loading-path="loadingPath" :total-entries="totalEntries" - :row-number="generateRowNumber(entry.id)" + :row-number="generateRowNumber(entry.flatPath, entry.id, index)" :commit-info="getCommit(entry.name, entry.type)" v-on="$listeners" /> diff --git a/app/assets/javascripts/vue_merge_request_widget/components/approvals/approvals_summary.vue b/app/assets/javascripts/vue_merge_request_widget/components/approvals/approvals_summary.vue index ea73ab416de..0c4a5ee35d9 100644 --- a/app/assets/javascripts/vue_merge_request_widget/components/approvals/approvals_summary.vue +++ b/app/assets/javascripts/vue_merge_request_widget/components/approvals/approvals_summary.vue @@ -35,13 +35,17 @@ export default { } if (!this.rulesLeft.length) { - return n__('Requires approval.', 'Requires %d more approvals.', this.approvalsLeft); + return n__( + 'Requires %d approval from eligible users.', + 'Requires %d approvals from eligible users.', + this.approvalsLeft, + ); } return sprintf( n__( - 'Requires approval from %{names}.', - 'Requires %{count} more approvals from %{names}.', + 'Requires %{count} approval from %{names}.', + 'Requires %{count} approvals from %{names}.', this.approvalsLeft, ), { diff --git a/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_header.vue b/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_header.vue index ecabe5007e6..5c67b9c7ab5 100644 --- a/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_header.vue +++ b/app/assets/javascripts/vue_merge_request_widget/components/mr_widget_header.vue @@ -71,7 +71,7 @@ export default { };