From e7bc93852d0ce48c490a780b6a1adc6cc36dd342 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 21 May 2020 21:08:31 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .rubocop.yml | 4 - app/assets/javascripts/commons/bootstrap.js | 7 +- .../components/jump_to_discussion.js | 12 +- .../monitoring/components/dashboard.vue | 8 +- .../components/variables_section.vue | 10 +- .../javascripts/monitoring/stores/actions.js | 2 +- .../javascripts/monitoring/stores/getters.js | 2 +- .../monitoring/stores/mutations.js | 6 +- .../javascripts/monitoring/stores/state.js | 6 +- app/assets/javascripts/monitoring/utils.js | 16 +-- app/models/concerns/cacheable_attributes.rb | 2 +- .../concerns/storage/legacy_namespace.rb | 2 +- app/models/concerns/update_highest_role.rb | 4 +- app/models/storage/legacy_project.rb | 2 +- app/models/uploads/base.rb | 2 +- .../concerns/exclusive_lease_guard.rb | 2 +- app/services/groups/destroy_service.rb | 2 +- app/services/labels/create_service.rb | 2 +- app/services/merge_requests/merge_service.rb | 4 +- app/services/projects/after_import_service.rb | 2 +- app/services/projects/create_service.rb | 2 +- .../projects/import_export/export_service.rb | 4 +- .../projects/update_statistics_service.rb | 2 +- app/services/spam/akismet_service.rb | 4 +- app/services/submit_usage_ping_service.rb | 2 +- app/services/web_hook_service.rb | 2 +- app/uploaders/file_mover.rb | 2 +- app/workers/create_commit_signature_worker.rb | 2 +- app/workers/delete_user_worker.rb | 2 +- app/workers/email_receiver_worker.rb | 2 +- .../expire_build_instance_artifacts_worker.rb | 2 +- app/workers/new_note_worker.rb | 2 +- ...-t-show-emoji-when-it-s-in-the-message.yml | 5 + .../docs-auto-build-cnb-custom-builder.yml | 5 + .../unreleased/leaky-constant-fix-33.yml | 5 + .../unreleased/leaky-constant-fix-37.yml | 5 + changelogs/unreleased/rails-logger-cop-10.yml | 5 + changelogs/unreleased/rails-logger-cop-11.yml | 5 + changelogs/unreleased/rails-logger-cop-12.yml | 5 + changelogs/unreleased/rails-logger-cop-13.yml | 5 + changelogs/unreleased/rails-logger-cop-14.yml | 5 + changelogs/unreleased/rails-logger-cop-16.yml | 5 + changelogs/unreleased/rails-logger-cop-17.yml | 5 + changelogs/unreleased/rails-logger-cop-18.yml | 5 + changelogs/unreleased/rails-logger-cop-19.yml | 5 + changelogs/unreleased/rails-logger-cop-20.yml | 5 + changelogs/unreleased/rails-logger-cop-21.yml | 5 + changelogs/unreleased/rails-logger-cop-22.yml | 5 + changelogs/unreleased/rails-logger-cop-23.yml | 5 + changelogs/unreleased/rails-logger-cop-6.yml | 5 + changelogs/unreleased/rails-logger-cop-7.yml | 5 + changelogs/unreleased/rails-logger-cop-8.yml | 5 + changelogs/unreleased/rails-logger-cop-9.yml | 5 + danger/bundle_size/Dangerfile | 2 +- .../end_to_end/rspec_metadata_tests.md | 1 + doc/topics/autodevops/customize.md | 1 + doc/topics/autodevops/stages.md | 4 +- qa/qa.rb | 9 ++ qa/qa/page/project/settings/integrations.rb | 7 + qa/qa/page/project/settings/services/jira.rb | 60 +++++++++ qa/qa/resource/project.rb | 9 ++ qa/qa/runtime/env.rb | 12 ++ .../jira/jira_basic_integration_spec.rb | 105 +++++++++++++++ qa/qa/support/api.rb | 23 +++- qa/qa/vendor/jira/jira_api.rb | 54 ++++++++ spec/features/issues/user_views_issue_spec.rb | 24 +++- .../components/variables_section_spec.js | 2 +- .../frontend/monitoring/store/getters_spec.js | 6 +- .../monitoring/store/mutations_spec.js | 8 +- .../gitlab/database/migration_helpers_spec.rb | 123 ++++++++++-------- .../database/obsolete_ignored_columns_spec.rb | 55 ++++---- .../gitlab/database/with_lock_retries_spec.rb | 5 +- .../project/relation_factory_spec.rb | 47 ++++--- .../concerns/cacheable_attributes_spec.rb | 4 +- .../merge_requests/ff_merge_service_spec.rb | 6 +- .../merge_requests/merge_service_spec.rb | 16 +-- .../import_export/export_service_spec.rb | 6 +- spec/services/spam/akismet_service_spec.rb | 8 +- spec/workers/new_note_worker_spec.rb | 2 +- 79 files changed, 621 insertions(+), 208 deletions(-) create mode 100644 changelogs/unreleased/28589-emoji-status-popover-doesn-t-show-emoji-when-it-s-in-the-message.yml create mode 100644 changelogs/unreleased/docs-auto-build-cnb-custom-builder.yml create mode 100644 changelogs/unreleased/leaky-constant-fix-33.yml create mode 100644 changelogs/unreleased/leaky-constant-fix-37.yml create mode 100644 changelogs/unreleased/rails-logger-cop-10.yml create mode 100644 changelogs/unreleased/rails-logger-cop-11.yml create mode 100644 changelogs/unreleased/rails-logger-cop-12.yml create mode 100644 changelogs/unreleased/rails-logger-cop-13.yml create mode 100644 changelogs/unreleased/rails-logger-cop-14.yml create mode 100644 changelogs/unreleased/rails-logger-cop-16.yml create mode 100644 changelogs/unreleased/rails-logger-cop-17.yml create mode 100644 changelogs/unreleased/rails-logger-cop-18.yml create mode 100644 changelogs/unreleased/rails-logger-cop-19.yml create mode 100644 changelogs/unreleased/rails-logger-cop-20.yml create mode 100644 changelogs/unreleased/rails-logger-cop-21.yml create mode 100644 changelogs/unreleased/rails-logger-cop-22.yml create mode 100644 changelogs/unreleased/rails-logger-cop-23.yml create mode 100644 changelogs/unreleased/rails-logger-cop-6.yml create mode 100644 changelogs/unreleased/rails-logger-cop-7.yml create mode 100644 changelogs/unreleased/rails-logger-cop-8.yml create mode 100644 changelogs/unreleased/rails-logger-cop-9.yml create mode 100644 qa/qa/page/project/settings/services/jira.rb create mode 100644 qa/qa/specs/features/browser_ui/3_create/jira/jira_basic_integration_spec.rb create mode 100644 qa/qa/vendor/jira/jira_api.rb diff --git a/.rubocop.yml b/.rubocop.yml index b6f7bd3da8c..c9e8e44bd7c 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -351,12 +351,8 @@ RSpec/LeakyConstantDeclaration: - 'spec/db/schema_spec.rb' - 'spec/lib/feature_spec.rb' - 'spec/lib/gitlab/config/entry/simplifiable_spec.rb' - - 'spec/lib/gitlab/database/migration_helpers_spec.rb' - - 'spec/lib/gitlab/database/obsolete_ignored_columns_spec.rb' - - 'spec/lib/gitlab/database/with_lock_retries_spec.rb' - 'spec/lib/gitlab/git/diff_collection_spec.rb' - 'spec/lib/gitlab/import_export/import_test_coverage_spec.rb' - - 'spec/lib/gitlab/import_export/project/relation_factory_spec.rb' - 'spec/lib/gitlab/quick_actions/dsl_spec.rb' - 'spec/lib/marginalia_spec.rb' - 'spec/mailers/notify_spec.rb' diff --git a/app/assets/javascripts/commons/bootstrap.js b/app/assets/javascripts/commons/bootstrap.js index e5e1cbb1e62..df0fa1ae88b 100644 --- a/app/assets/javascripts/commons/bootstrap.js +++ b/app/assets/javascripts/commons/bootstrap.js @@ -70,7 +70,12 @@ whitelist.acronym = []; whitelist.blockquote = []; whitelist.del = []; whitelist.ins = []; -whitelist['gl-emoji'] = []; +whitelist['gl-emoji'] = [ + 'data-name', + 'data-unicode-version', + 'data-fallback-src', + 'data-fallback-sprite-class', +]; // Whitelisting SVG tags and attributes whitelist.svg = ['viewBox']; diff --git a/app/assets/javascripts/diff_notes/components/jump_to_discussion.js b/app/assets/javascripts/diff_notes/components/jump_to_discussion.js index 0c521fa29bd..0991f5282a8 100644 --- a/app/assets/javascripts/diff_notes/components/jump_to_discussion.js +++ b/app/assets/javascripts/diff_notes/components/jump_to_discussion.js @@ -1,4 +1,4 @@ -/* eslint-disable func-names, guard-for-in, no-restricted-syntax, no-lonely-if, no-continue */ +/* eslint-disable func-names, no-continue */ /* global CommentsStore */ import $ from 'jquery'; @@ -42,13 +42,13 @@ const JumpToDiscussion = Vue.extend({ }, lastResolvedId() { let lastId; - for (const discussionId in this.discussions) { + Object.keys(this.discussions).forEach(discussionId => { const discussion = this.discussions[discussionId]; if (!discussion.isResolved()) { lastId = discussion.id; } - } + }); return lastId; }, }, @@ -95,12 +95,10 @@ const JumpToDiscussion = Vue.extend({ if (unresolvedDiscussionCount === 1) { hasDiscussionsToJumpTo = false; } - } else { + } else if (unresolvedDiscussionCount === 0) { // If there are no unresolved discussions on the diffs tab at all, // there are no discussions to jump to. - if (unresolvedDiscussionCount === 0) { - hasDiscussionsToJumpTo = false; - } + hasDiscussionsToJumpTo = false; } } else if (activeTab !== 'show') { // If we are on the commits or builds tabs, diff --git a/app/assets/javascripts/monitoring/components/dashboard.vue b/app/assets/javascripts/monitoring/components/dashboard.vue index 2018c706b11..3ea4a24f421 100644 --- a/app/assets/javascripts/monitoring/components/dashboard.vue +++ b/app/assets/javascripts/monitoring/components/dashboard.vue @@ -226,7 +226,7 @@ export default { 'allDashboards', 'environmentsLoading', 'expandedPanel', - 'promVariables', + 'variables', 'isUpdatingStarredValue', ]), ...mapGetters('monitoringDashboard', [ @@ -251,7 +251,7 @@ export default { return !this.environmentsLoading && this.filteredEnvironments.length === 0; }, shouldShowVariablesSection() { - return Object.keys(this.promVariables).length > 0; + return Object.keys(this.variables).length > 0; }, }, watch: { @@ -273,7 +273,7 @@ export default { handler({ group, panel }) { const dashboardPath = this.currentDashboard || this.selectedDashboard?.path; updateHistory({ - url: panelToUrl(dashboardPath, convertVariablesForURL(this.promVariables), group, panel), + url: panelToUrl(dashboardPath, convertVariablesForURL(this.variables), group, panel), title: document.title, }); }, @@ -344,7 +344,7 @@ export default { }, generatePanelUrl(groupKey, panel) { const dashboardPath = this.currentDashboard || this.selectedDashboard?.path; - return panelToUrl(dashboardPath, convertVariablesForURL(this.promVariables), groupKey, panel); + return panelToUrl(dashboardPath, convertVariablesForURL(this.variables), groupKey, panel); }, hideAddMetricModal() { this.$refs.addMetricModal.hide(); diff --git a/app/assets/javascripts/monitoring/components/variables_section.vue b/app/assets/javascripts/monitoring/components/variables_section.vue index e054c9d8e26..1175e3bb461 100644 --- a/app/assets/javascripts/monitoring/components/variables_section.vue +++ b/app/assets/javascripts/monitoring/components/variables_section.vue @@ -2,7 +2,7 @@ import { mapState, mapActions } from 'vuex'; import CustomVariable from './variables/custom_variable.vue'; import TextVariable from './variables/text_variable.vue'; -import { setPromCustomVariablesFromUrl } from '../utils'; +import { setCustomVariablesFromUrl } from '../utils'; export default { components: { @@ -10,12 +10,12 @@ export default { TextVariable, }, computed: { - ...mapState('monitoringDashboard', ['promVariables']), + ...mapState('monitoringDashboard', ['variables']), }, methods: { ...mapActions('monitoringDashboard', ['fetchDashboardData', 'updateVariableValues']), refreshDashboard(variable, value) { - if (this.promVariables[variable].value !== value) { + if (this.variables[variable].value !== value) { const changedVariable = { key: variable, value }; // update the Vuex store this.updateVariableValues(changedVariable); @@ -24,7 +24,7 @@ export default { // mutation respond directly. // This can be further investigate in // https://gitlab.com/gitlab-org/gitlab/-/issues/217713 - setPromCustomVariablesFromUrl(this.promVariables); + setCustomVariablesFromUrl(this.variables); // fetch data this.fetchDashboardData(); } @@ -41,7 +41,7 @@ export default {