From 49058851264455c22a5ba00c8671b7d4cdfd8ee9 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Tue, 3 Aug 2021 18:10:02 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .rubocop.yml | 8 +++ .../javascripts/diffs/components/diff_row.vue | 15 +++--- .../permissions/components/settings_panel.vue | 43 +++++++++++----- .../projects/shared/permissions/constants.js | 2 +- .../runner/components/runner_type_alert.vue | 17 ++----- .../assignees/assignee_avatar_link.vue | 9 ++-- .../stylesheets/startup/startup-dark.scss | 2 +- app/assets/stylesheets/themes/_dark.scss | 3 +- .../git/process_ref_changes_service.rb | 6 ++- danger/metadata/Dangerfile | 2 +- danger/roulette/Dangerfile | 4 +- .../documentation/styleguide/index.md | 4 +- doc/user/packages/container_registry/index.md | 19 +++++++ locale/gitlab.pot | 8 +-- .../5_package/pypi_repository_spec.rb | 2 +- rubocop/cop/qa/selector_usage.rb | 39 +++++++++++++++ spec/features/admin/admin_appearance_spec.rb | 2 +- spec/features/admin/admin_groups_spec.rb | 4 +- spec/features/admin/users/user_spec.rb | 4 +- ...e_for_discussions_in_merge_request_spec.rb | 2 +- ...single_discussion_in_merge_request_spec.rb | 2 +- spec/features/issues/issue_sidebar_spec.rb | 4 +- .../issues/user_creates_issue_spec.rb | 6 +-- ...diff_notes_and_discussions_resolve_spec.rb | 20 ++++---- spec/features/project_variables_spec.rb | 2 +- .../features/projects/blobs/blob_show_spec.rb | 2 +- .../environments/environment_metrics_spec.rb | 6 +-- .../environments/environments_spec.rb | 4 +- .../projects/environments_pod_logs_spec.rb | 2 +- .../user_sees_feature_flag_list_spec.rb | 2 +- ...eate_license_file_in_empty_project_spec.rb | 2 +- spec/features/projects/fork_spec.rb | 4 +- .../import_export/import_file_spec.rb | 2 +- .../projects/members/invite_group_spec.rb | 4 +- spec/features/projects/new_project_spec.rb | 36 +++++++------- .../user_sees_collaboration_links_spec.rb | 4 +- .../projects/tree/create_directory_spec.rb | 4 +- .../projects/tree/create_file_spec.rb | 4 +- spec/features/projects/tree/tree_show_spec.rb | 6 +-- .../projects/user_creates_project_spec.rb | 6 +-- spec/features/projects_spec.rb | 4 +- .../components/settings_panel_spec.js | 42 +++++++++++----- .../components/runner_type_alert_spec.js | 8 +-- .../assignees/assignee_avatar_link_spec.js | 27 +++++----- spec/rubocop/cop/qa/selector_usage_spec.rb | 49 +++++++++++++++++++ .../discussion_comments_shared_example.rb | 4 +- .../features/packages_shared_examples.rb | 4 +- ...cted_branches_with_deploy_keys_examples.rb | 6 +-- .../features/rss_shared_examples.rb | 4 +- .../features/variable_list_shared_examples.rb | 8 +-- ...idoc_page_with_includes_shared_examples.rb | 2 +- .../admin/sessions/new.html.haml_spec.rb | 8 +-- .../devise/sessions/new.html.haml_spec.rb | 4 +- .../settings/_transfer.html.haml_spec.rb | 4 +- tooling/danger/project_helper.rb | 2 +- 55 files changed, 317 insertions(+), 176 deletions(-) create mode 100644 rubocop/cop/qa/selector_usage.rb create mode 100644 spec/rubocop/cop/qa/selector_usage_spec.rb diff --git a/.rubocop.yml b/.rubocop.yml index 19f0b0b294f..c4d26f6176f 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -701,3 +701,11 @@ RSpec/TopLevelDescribePath: Exclude: - 'spec/fixtures/**/*.rb' - 'ee/spec/fixtures/**/*.rb' + +QA/SelectorUsage: + Enabled: true + Include: + - 'spec/**/*.rb' + - 'ee/spec/**/*.rb' + Exclude: + - 'spec/rubocop/**/*_spec.rb' diff --git a/app/assets/javascripts/diffs/components/diff_row.vue b/app/assets/javascripts/diffs/components/diff_row.vue index c310bd9f31a..869a75f25f2 100644 --- a/app/assets/javascripts/diffs/components/diff_row.vue +++ b/app/assets/javascripts/diffs/components/diff_row.vue @@ -140,16 +140,13 @@ export default { }, (line) => line.type, ), - lineContent: memoize( - (line) => { - if (line.isConflictMarker) { - return line.type === CONFLICT_MARKER_THEIR ? 'HEAD//our changes' : 'origin//their changes'; - } + lineContent: (line) => { + if (line.isConflictMarker) { + return line.type === CONFLICT_MARKER_THEIR ? 'HEAD//our changes' : 'origin//their changes'; + } - return line.rich_text; - }, - (line) => line.line_code, - ), + return line.rich_text; + }, CONFLICT_MARKER, CONFLICT_MARKER_THEIR, CONFLICT_OUR, diff --git a/app/assets/javascripts/pages/projects/shared/permissions/components/settings_panel.vue b/app/assets/javascripts/pages/projects/shared/permissions/components/settings_panel.vue index 86a2d127363..cc46484c05b 100644 --- a/app/assets/javascripts/pages/projects/shared/permissions/components/settings_panel.vue +++ b/app/assets/javascripts/pages/projects/shared/permissions/components/settings_panel.vue @@ -11,6 +11,7 @@ import { featureAccessLevel, featureAccessLevelNone, CVE_ID_REQUEST_BUTTON_I18N, + featureAccessLevelDescriptions, } from '../constants'; import { toggleHiddenClassBySelector } from '../external'; import projectFeatureSetting from './project_feature_setting.vue'; @@ -176,7 +177,7 @@ export default { requirementsAccessLevel: featureAccessLevel.EVERYONE, securityAndComplianceAccessLevel: featureAccessLevel.PROJECT_MEMBERS, operationsAccessLevel: featureAccessLevel.EVERYONE, - containerRegistryEnabled: true, + containerRegistryAccessLevel: featureAccessLevel.EVERYONE, lfsEnabled: true, requestAccessEnabled: true, highlightChangesClass: false, @@ -184,6 +185,8 @@ export default { cveIdRequestEnabled: true, featureAccessLevelEveryone, featureAccessLevelMembers, + featureAccessLevel, + featureAccessLevelDescriptions, }; return { ...defaults, ...this.currentSettings }; @@ -248,7 +251,10 @@ export default { }, showContainerRegistryPublicNote() { - return this.visibilityLevel === visibilityOptions.PUBLIC; + return ( + this.visibilityLevel === visibilityOptions.PUBLIC && + this.containerRegistryAccessLevel === featureAccessLevel.EVERYONE + ); }, repositoryHelpText() { @@ -310,6 +316,10 @@ export default { featureAccessLevel.PROJECT_MEMBERS, this.operationsAccessLevel, ); + this.containerRegistryAccessLevel = Math.min( + featureAccessLevel.PROJECT_MEMBERS, + this.containerRegistryAccessLevel, + ); if (this.pagesAccessLevel === featureAccessLevel.EVERYONE) { // When from Internal->Private narrow access for only members this.pagesAccessLevel = featureAccessLevel.PROJECT_MEMBERS; @@ -339,6 +349,8 @@ export default { this.requirementsAccessLevel = featureAccessLevel.EVERYONE; if (this.operationsAccessLevel === featureAccessLevel.PROJECT_MEMBERS) this.operationsAccessLevel = featureAccessLevel.EVERYONE; + if (this.containerRegistryAccessLevel === featureAccessLevel.PROJECT_MEMBERS) + this.containerRegistryAccessLevel = featureAccessLevel.EVERYONE; this.highlightChanges(); } @@ -521,19 +533,24 @@ export default { " >
- {{ - s__( - 'ProjectSettings|Note: the container registry is always visible when a project is public', - ) - }} + + +
-