From 8cc4a6f23d41a1c57dc309130d2ce9ebc04d8334 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 10 Jan 2023 18:07:39 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .gitlab/ci/rails.gitlab-ci.yml | 18 - .gitlab/ci/rails/shared.gitlab-ci.yml | 6 - .../components/abuse_category_selector.vue | 7 +- .../behaviors/shortcuts/shortcut.vue | 3 +- app/assets/javascripts/constants.js | 7 +- .../diffs/components/tree_list.vue | 4 +- app/assets/javascripts/editor/constants.js | 12 +- .../components/details_page/tags_list_row.vue | 2 +- .../details/components/package_history.vue | 8 +- .../components/details/package_history.vue | 12 +- .../components/report_abuse_button.vue | 5 + .../work_items/components/work_item_notes.vue | 1 + app/controllers/abuse_reports_controller.rb | 27 +- app/models/abuse_report.rb | 19 +- .../project_features_compatibility.rb | 9 +- app/models/personal_access_token.rb | 20 +- app/services/projects/create_service.rb | 6 + app/views/abuse_reports/new.html.haml | 46 +- app/views/users/show.html.haml | 2 +- ...sitory_archive_hotlinking_interception.yml | 8 - ...ropped_findings_as_resolved_scheduler.yml} | 12 +- ...4640_add_reported_from_to_abuse_reports.rb | 21 + ...n_mode_scope_for_personal_access_tokens.rb | 21 + db/schema_migrations/20221212054640 | 1 + db/schema_migrations/20221228103133 | 1 + db/structure.sql | 4 +- doc/administration/instance_limits.md | 2 +- doc/administration/merge_request_diffs.md | 2 +- doc/administration/pages/index.md | 6 +- doc/administration/pages/source.md | 2 +- doc/api/merge_requests.md | 2 +- doc/api/oauth2.md | 8 +- doc/api/repositories.md | 2 +- doc/api/secure_files.md | 7 +- doc/ci/secure_files/index.md | 16 +- doc/development/api_graphql_styleguide.md | 2 +- doc/development/cached_queries.md | 6 +- doc/development/chatops_on_gitlabcom.md | 4 +- doc/development/code_review.md | 2 +- .../contributing/merge_request_workflow.md | 4 +- .../database/pagination_guidelines.md | 2 +- doc/development/database/query_recorder.md | 8 +- doc/development/database_review.md | 2 +- doc/development/diffs.md | 202 +------ doc/development/documentation/workflow.md | 2 +- doc/development/feature_development.md | 2 +- doc/development/feature_flags/controls.md | 15 + doc/development/go_guide/go_upgrade.md | 2 +- doc/development/img/feature-flag-metrics.png | Bin 0 -> 88110 bytes .../diffs/development.md | 188 ++++++ .../merge_request_concepts/diffs/index.md | 199 ++++++ .../img/merge_ref_head_options_v13_6.png | Bin .../merge_request_concepts/performance.md | 565 +++++++++++++++++ doc/development/merge_request_diffs.md | 191 +----- .../merge_request_performance_guidelines.md | 568 +----------------- doc/development/pages/index.md | 2 +- doc/development/performance.md | 4 +- ...lue_stream_analytics_aggregated_backend.md | 2 +- doc/integration/jira/dvcs.md | 8 +- doc/integration/oauth_provider.md | 68 +-- doc/policy/alpha-beta-support.md | 55 +- doc/security/rate_limits.md | 8 +- doc/topics/authentication/index.md | 2 +- .../secret_detection/post_processing.md | 2 +- doc/user/profile/index.md | 2 +- doc/user/project/merge_requests/versions.md | 2 +- lib/api/internal/base.rb | 4 +- lib/gitlab/auth.rb | 2 + ...n_mode_scope_for_personal_access_tokens.rb | 28 + lib/gitlab/database/migration_helpers.rb | 24 +- lib/gitlab/database/postgres_foreign_key.rb | 18 +- lib/gitlab/hotlinking_detector.rb | 2 - locale/gitlab.pot | 20 +- .../parent_group_access_termination_spec.rb | 1 + spec/factories/abuse_reports.rb | 1 + spec/features/abuse_report_spec.rb | 201 +++---- .../user_sees_discussions_navigation_spec.rb | 23 +- .../abuse_category_selector_spec.js | 2 +- spec/frontend/constants_spec.js | 30 + .../details_page/tags_list_row_spec.js | 8 +- .../components/package_history_spec.js | 16 +- .../details/package_history_spec.js | 16 +- .../components/report_abuse_button_spec.js | 11 + .../components/work_item_notes_spec.js | 13 + ...e_scope_for_personal_access_tokens_spec.rb | 53 ++ .../gitlab/database/migration_helpers_spec.rb | 93 +-- .../database/postgres_foreign_key_spec.rb | 77 ++- ...e_scope_for_personal_access_tokens_spec.rb | 18 + spec/models/abuse_report_spec.rb | 15 +- .../integrations/apple_app_store_spec.rb | 2 +- spec/models/personal_access_token_spec.rb | 31 +- .../requests/abuse_reports_controller_spec.rb | 22 +- spec/requests/api/internal/base_spec.rb | 12 +- spec/requests/api/projects_spec.rb | 12 +- spec/requests/api/repositories_spec.rb | 12 +- .../reportable_note_shared_examples.rb | 2 +- workhorse/go.mod | 2 +- workhorse/go.sum | 4 +- 98 files changed, 1818 insertions(+), 1405 deletions(-) delete mode 100644 config/feature_flags/development/repository_archive_hotlinking_interception.yml rename config/feature_flags/development/{rate_limit_gitlab_shell.yml => sec_mark_dropped_findings_as_resolved_scheduler.yml} (50%) create mode 100644 db/migrate/20221212054640_add_reported_from_to_abuse_reports.rb create mode 100644 db/post_migrate/20221228103133_queue_backfill_admin_mode_scope_for_personal_access_tokens.rb create mode 100644 db/schema_migrations/20221212054640 create mode 100644 db/schema_migrations/20221228103133 create mode 100644 doc/development/img/feature-flag-metrics.png create mode 100644 doc/development/merge_request_concepts/diffs/development.md create mode 100644 doc/development/merge_request_concepts/diffs/index.md rename doc/development/{ => merge_request_concepts}/img/merge_ref_head_options_v13_6.png (100%) create mode 100644 doc/development/merge_request_concepts/performance.md create mode 100644 lib/gitlab/background_migration/backfill_admin_mode_scope_for_personal_access_tokens.rb create mode 100644 spec/frontend/constants_spec.js create mode 100644 spec/lib/gitlab/background_migration/backfill_admin_mode_scope_for_personal_access_tokens_spec.rb create mode 100644 spec/migrations/queue_backfill_admin_mode_scope_for_personal_access_tokens_spec.rb diff --git a/.gitlab/ci/rails.gitlab-ci.yml b/.gitlab/ci/rails.gitlab-ci.yml index 21af2ef651e..6707e76272e 100644 --- a/.gitlab/ci/rails.gitlab-ci.yml +++ b/.gitlab/ci/rails.gitlab-ci.yml @@ -727,12 +727,6 @@ rspec-ee system pg11: - .rspec-ee-system-parallel # PG12 -rspec-ee unit pg12 es7: - extends: - - .rspec-ee-base-pg12-es7 - - .rspec-ee-unit-parallel - - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only - rspec-ee unit pg12 opensearch1: extends: - .rspec-ee-base-pg12-opensearch1 @@ -745,12 +739,6 @@ rspec-ee unit pg12 opensearch2: - .rspec-ee-unit-parallel - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only -rspec-ee integration pg12 es7: - extends: - - .rspec-ee-base-pg12-es7 - - .rspec-ee-integration-parallel - - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only - rspec-ee integration pg12 opensearch1: extends: - .rspec-ee-base-pg12-opensearch1 @@ -763,12 +751,6 @@ rspec-ee integration pg12 opensearch2: - .rspec-ee-integration-parallel - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only -rspec-ee system pg12 es7: - extends: - - .rspec-ee-base-pg12-es7 - - .rspec-ee-system-parallel - - .rails:rules:default-branch-schedule-nightly--code-backstage-ee-only - rspec-ee system pg12 opensearch1: extends: - .rspec-ee-base-pg12-opensearch1 diff --git a/.gitlab/ci/rails/shared.gitlab-ci.yml b/.gitlab/ci/rails/shared.gitlab-ci.yml index 00bdd8fc34e..0974ad782a8 100644 --- a/.gitlab/ci/rails/shared.gitlab-ci.yml +++ b/.gitlab/ci/rails/shared.gitlab-ci.yml @@ -120,12 +120,6 @@ include: - .rspec-base - .use-pg12-es7-ee -.rspec-ee-base-pg12-es7: - extends: - - .rspec-base - - .use-pg12-es7-ee - - .rails:rules:run-search-tests - .rspec-ee-base-pg12-es8: extends: - .rspec-base diff --git a/app/assets/javascripts/abuse_reports/components/abuse_category_selector.vue b/app/assets/javascripts/abuse_reports/components/abuse_category_selector.vue index 93477a01073..b903bfee587 100644 --- a/app/assets/javascripts/abuse_reports/components/abuse_category_selector.vue +++ b/app/assets/javascripts/abuse_reports/components/abuse_category_selector.vue @@ -72,7 +72,12 @@ export default { - + +import { getModifierKey } from '~/constants'; import { __, s__ } from '~/locale'; // Map some keys to their proper representation depending on the system @@ -22,7 +23,7 @@ const getKeyMap = () => { keyMap.alt = keyMap.option; // Mod is Command on Mac, and Ctrl on Windows/Linux - keyMap.mod = window.gl?.client?.isMac ? keyMap.command : keyMap.ctrl; + keyMap.mod = getModifierKey(true); return keyMap; }; diff --git a/app/assets/javascripts/constants.js b/app/assets/javascripts/constants.js index c56d45166a0..defc2cbe276 100644 --- a/app/assets/javascripts/constants.js +++ b/app/assets/javascripts/constants.js @@ -1,3 +1,6 @@ -import { s__ } from '~/locale'; +/* eslint-disable @gitlab/require-i18n-strings */ -export const MODIFIER_KEY = window.gl?.client?.isMac ? '⌘' : s__('KeyboardKey|Ctrl+'); +export const getModifierKey = (removeSuffix = false) => { + const winKey = `Ctrl${removeSuffix ? '' : '+'}`; + return window.gl?.client?.isMac ? '⌘' : winKey; +}; diff --git a/app/assets/javascripts/diffs/components/tree_list.vue b/app/assets/javascripts/diffs/components/tree_list.vue index 709deaf6bb5..abf77fa2ede 100644 --- a/app/assets/javascripts/diffs/components/tree_list.vue +++ b/app/assets/javascripts/diffs/components/tree_list.vue @@ -2,11 +2,13 @@ import { GlTooltipDirective, GlIcon } from '@gitlab/ui'; import { mapActions, mapGetters, mapState } from 'vuex'; import micromatch from 'micromatch'; -import { MODIFIER_KEY } from '~/constants'; +import { getModifierKey } from '~/constants'; import { s__, sprintf } from '~/locale'; import FileTree from '~/vue_shared/components/file_tree.vue'; import DiffFileRow from './diff_file_row.vue'; +const MODIFIER_KEY = getModifierKey(); + export default { directives: { GlTooltip: GlTooltipDirective, diff --git a/app/assets/javascripts/editor/constants.js b/app/assets/javascripts/editor/constants.js index d0649ecccba..d235319dfd7 100644 --- a/app/assets/javascripts/editor/constants.js +++ b/app/assets/javascripts/editor/constants.js @@ -1,7 +1,9 @@ -import { MODIFIER_KEY } from '~/constants'; +import { getModifierKey } from '~/constants'; import { DEFAULT_DEBOUNCE_AND_THROTTLE_MS } from '~/lib/utils/constants'; import { s__, __, sprintf } from '~/locale'; +const modifierKey = getModifierKey(); + export const URI_PREFIX = 'gitlab'; export const CONTENT_UPDATE_DEBOUNCE = DEFAULT_DEBOUNCE_AND_THROTTLE_MS; @@ -67,7 +69,7 @@ export const EXTENSION_MARKDOWN_BUTTONS = [ { id: 'bold', label: sprintf(s__('MarkdownEditor|Add bold text (%{modifierKey}B)'), { - modifierKey: MODIFIER_KEY, + modifierKey, }), data: { mdTag: '**', @@ -77,7 +79,7 @@ export const EXTENSION_MARKDOWN_BUTTONS = [ { id: 'italic', label: sprintf(s__('MarkdownEditor|Add italic text (%{modifierKey}I)'), { - modifierKey: MODIFIER_KEY, + modifierKey, }), data: { mdTag: '_', @@ -87,7 +89,7 @@ export const EXTENSION_MARKDOWN_BUTTONS = [ { id: 'strikethrough', label: sprintf(s__('MarkdownEditor|Add strikethrough text (%{modifierKey}⇧X)'), { - modifierKey: MODIFIER_KEY, + modifierKey, }), data: { mdTag: '~~', @@ -113,7 +115,7 @@ export const EXTENSION_MARKDOWN_BUTTONS = [ { id: 'link', label: sprintf(s__('MarkdownEditor|Add a link (%{modifier_key}K)'), { - modifierKey: MODIFIER_KEY, + modifierKey, }), data: { mdTag: '[{text}](url)', diff --git a/app/assets/javascripts/packages_and_registries/container_registry/explorer/components/details_page/tags_list_row.vue b/app/assets/javascripts/packages_and_registries/container_registry/explorer/components/details_page/tags_list_row.vue index acf810257e6..38b601ac3ec 100644 --- a/app/assets/javascripts/packages_and_registries/container_registry/explorer/components/details_page/tags_list_row.vue +++ b/app/assets/javascripts/packages_and_registries/container_registry/explorer/components/details_page/tags_list_row.vue @@ -95,7 +95,7 @@ export default { return formatDate(this.tag.createdAt, 'isoDate'); }, publishedTime() { - return formatDate(this.tag.createdAt, 'hh:MM Z'); + return formatDate(this.tag.createdAt, 'HH:MM:ss Z'); }, formattedRevision() { // to be removed when API response is adjusted diff --git a/app/assets/javascripts/packages_and_registries/infrastructure_registry/details/components/package_history.vue b/app/assets/javascripts/packages_and_registries/infrastructure_registry/details/components/package_history.vue index e5be98b87f7..06e4c38a179 100644 --- a/app/assets/javascripts/packages_and_registries/infrastructure_registry/details/components/package_history.vue +++ b/app/assets/javascripts/packages_and_registries/infrastructure_registry/details/components/package_history.vue @@ -96,9 +96,9 @@ export default {