From 8188ca655a7437381491e565406869c747c1b40a Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Mon, 28 Feb 2022 15:13:55 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- .rubocop.yml | 5 +- .rubocop_todo.yml | 18 - .rubocop_todo/graphql/ordered_fields.yml | 18 - .../blob/components/blob_header.vue | 5 +- .../blob_header_viewer_switcher.vue | 7 +- .../javascripts/blob/csv/csv_viewer.vue | 32 +- .../components/charts/time_series.vue | 103 ++-- .../components/blob_viewers/csv_viewer.vue | 26 + .../components/blob_viewers/index.js | 1 + .../components/color_picker/color_picker.vue | 9 +- app/graphql/types/board_list_type.rb | 16 +- app/graphql/types/ci/analytics_type.rb | 36 +- app/graphql/types/ci/ci_cd_setting_type.rb | 12 +- app/graphql/types/ci/config/group_type.rb | 4 +- app/graphql/types/ci/config/job_type.rb | 30 +- app/graphql/types/ci/config/stage_type.rb | 4 +- app/graphql/types/ci/detailed_status_type.rb | 24 +- app/graphql/types/ci/group_type.rb | 8 +- app/graphql/types/ci/job_type.rb | 88 ++-- .../types/ci/runner_architecture_type.rb | 4 +- .../types/design_management/design_fields.rb | 2 +- .../types/packages/composer/json_type.rb | 2 +- .../types/packages/composer/metadatum_type.rb | 2 +- .../packages/conan/file_metadatum_type.rb | 8 +- .../types/packages/conan/metadatum_type.rb | 6 +- .../types/packages/helm/dependency_type.rb | 10 +- .../types/packages/helm/maintainer_type.rb | 2 +- .../types/packages/helm/metadata_type.rb | 28 +- .../types/packages/maven/metadatum_type.rb | 10 +- app/models/ci/pipeline.rb | 4 +- .../status_collection.rb | 8 +- app/services/projects/destroy_service.rb | 4 + doc/development/pipelines.md | 46 +- .../group/value_stream_analytics/index.md | 459 +++++++----------- doc/user/reserved_names.md | 4 +- .../count/reltuples_count_strategy.rb | 2 +- lib/gitlab/language_detection.rb | 2 +- package.json | 2 +- .../markdown_golden_master_examples.yml | 2 +- .../__snapshots__/blob_header_spec.js.snap | 1 + .../blob/components/blob_header_spec.js | 15 + spec/frontend/blob/csv/csv_viewer_spec.js | 26 +- .../components/charts/time_series_spec.js | 15 - .../blob_viewers/csv_viewer_spec.js | 27 ++ .../color_picker/color_picker_spec.js | 13 + .../services/projects/destroy_service_spec.rb | 6 +- yarn.lock | 8 +- 47 files changed, 595 insertions(+), 569 deletions(-) create mode 100644 app/assets/javascripts/repository/components/blob_viewers/csv_viewer.vue create mode 100644 spec/frontend/repository/components/blob_viewers/csv_viewer_spec.js diff --git a/.rubocop.yml b/.rubocop.yml index 18a73b452fb..99fa10d4b44 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -239,6 +239,10 @@ Rails/FindBy: - 'spec/**/*.rb' - 'ee/spec/**/*.rb' +Rails/IndexBy: + Exclude: + - 'tooling/danger/**/*.rb' + # This is currently exiting with a rubocop exception error and should be # resolved hopefully a future update # An error occurred while Rails/UniqueValidationWithoutIndex cop was inspecting @@ -610,7 +614,6 @@ Rails/TimeZone: - 'spec/features/**/*' - 'ee/spec/features/**/*' -# WIP: See https://gitlab.com/gitlab-org/gitlab/-/issues/220040 Rails/SaveBang: Enabled: true AllowImplicitReturn: false diff --git a/.rubocop_todo.yml b/.rubocop_todo.yml index 9fb2df6fe99..7597ece5d08 100644 --- a/.rubocop_todo.yml +++ b/.rubocop_todo.yml @@ -458,24 +458,6 @@ Rails/HasManyOrHasOneDependent: Rails/HelperInstanceVariable: Enabled: false -# Offense count: 17 -# Cop supports --auto-correct. -Rails/IndexBy: - Exclude: - - 'app/graphql/types/design_management/design_fields.rb' - - 'app/models/ci/pipeline.rb' - - 'app/services/ci/pipeline_processing/atomic_processing_service/status_collection.rb' - - 'ee/app/services/projects/update_mirror_service.rb' - - 'ee/app/services/security/store_report_service.rb' - - 'ee/lib/ee/gitlab/auth/ldap/sync/group.rb' - - 'ee/lib/ee/gitlab/background_migration/backfill_version_data_from_gitaly.rb' - - 'ee/lib/gitlab/analytics/type_of_work/tasks_by_type.rb' - - 'ee/lib/gitlab/elastic/document_reference.rb' - - 'ee/lib/gitlab/group_plans_preloader.rb' - - 'lib/gitlab/database/count/reltuples_count_strategy.rb' - - 'lib/gitlab/language_detection.rb' - - 'tooling/danger/sidekiq_queues.rb' - # Offense count: 47 # Cop supports --auto-correct. Rails/IndexWith: diff --git a/.rubocop_todo/graphql/ordered_fields.yml b/.rubocop_todo/graphql/ordered_fields.yml index b3d79b58d95..28202cbcf2e 100644 --- a/.rubocop_todo/graphql/ordered_fields.yml +++ b/.rubocop_todo/graphql/ordered_fields.yml @@ -1,16 +1,6 @@ --- GraphQL/OrderedFields: Exclude: - - app/graphql/types/board_list_type.rb - - app/graphql/types/ci/analytics_type.rb - - app/graphql/types/ci/ci_cd_setting_type.rb - - app/graphql/types/ci/config/group_type.rb - - app/graphql/types/ci/config/job_type.rb - - app/graphql/types/ci/config/stage_type.rb - - app/graphql/types/ci/detailed_status_type.rb - - app/graphql/types/ci/group_type.rb - - app/graphql/types/ci/job_type.rb - - app/graphql/types/ci/runner_architecture_type.rb - app/graphql/types/ci/runner_platform_type.rb - app/graphql/types/ci/runner_type.rb - app/graphql/types/ci/stage_type.rb @@ -48,14 +38,6 @@ GraphQL/OrderedFields: - app/graphql/types/notes/diff_position_type.rb - app/graphql/types/notes/discussion_type.rb - app/graphql/types/notes/note_type.rb - - app/graphql/types/packages/composer/json_type.rb - - app/graphql/types/packages/composer/metadatum_type.rb - - app/graphql/types/packages/conan/file_metadatum_type.rb - - app/graphql/types/packages/conan/metadatum_type.rb - - app/graphql/types/packages/helm/dependency_type.rb - - app/graphql/types/packages/helm/maintainer_type.rb - - app/graphql/types/packages/helm/metadata_type.rb - - app/graphql/types/packages/maven/metadatum_type.rb - app/graphql/types/packages/nuget/metadatum_type.rb - app/graphql/types/packages/package_dependency_link_type.rb - app/graphql/types/packages/package_file_type.rb diff --git a/app/assets/javascripts/blob/components/blob_header.vue b/app/assets/javascripts/blob/components/blob_header.vue index c5ab28e6ec5..8a4fe1a9025 100644 --- a/app/assets/javascripts/blob/components/blob_header.vue +++ b/app/assets/javascripts/blob/components/blob_header.vue @@ -63,6 +63,9 @@ export default { isEmpty() { return this.blob.rawSize === 0; }, + blobSwitcherDocIcon() { + return this.blob.richViewer?.fileType === 'csv' ? 'table' : 'document'; + }, }, watch: { viewer(newVal, oldVal) { @@ -90,7 +93,7 @@ export default {
- + diff --git a/app/assets/javascripts/blob/components/blob_header_viewer_switcher.vue b/app/assets/javascripts/blob/components/blob_header_viewer_switcher.vue index b2546d47694..7351df0f93b 100644 --- a/app/assets/javascripts/blob/components/blob_header_viewer_switcher.vue +++ b/app/assets/javascripts/blob/components/blob_header_viewer_switcher.vue @@ -21,6 +21,11 @@ export default { default: SIMPLE_BLOB_VIEWER, required: false, }, + docIcon: { + type: String, + default: 'document', + required: false, + }, }, computed: { isSimpleViewer() { @@ -62,7 +67,7 @@ export default { :aria-label="$options.RICH_BLOB_VIEWER_TITLE" :title="$options.RICH_BLOB_VIEWER_TITLE" :selected="isRichViewer" - icon="document" + :icon="docIcon" category="primary" variant="default" class="js-blob-viewer-switch-btn" diff --git a/app/assets/javascripts/blob/csv/csv_viewer.vue b/app/assets/javascripts/blob/csv/csv_viewer.vue index 1f9d20a487f..169167625e0 100644 --- a/app/assets/javascripts/blob/csv/csv_viewer.vue +++ b/app/assets/javascripts/blob/csv/csv_viewer.vue @@ -14,6 +14,11 @@ export default { type: String, required: true, }, + remoteFile: { + type: Boolean, + required: false, + default: false, + }, }, data() { return { @@ -23,14 +28,29 @@ export default { }; }, mounted() { - const parsed = Papa.parse(this.csv, { skipEmptyLines: true }); - this.items = parsed.data; - - if (parsed.errors.length) { - this.papaParseErrors = parsed.errors; + if (!this.remoteFile) { + const parsed = Papa.parse(this.csv, { skipEmptyLines: true }); + this.handleParsedData(parsed); + } else { + Papa.parse(this.csv, { + download: true, + skipEmptyLines: true, + complete: (parsed) => { + this.handleParsedData(parsed); + }, + }); } + }, + methods: { + handleParsedData(parsed) { + this.items = parsed.data; - this.loading = false; + if (parsed.errors.length) { + this.papaParseErrors = parsed.errors; + } + + this.loading = false; + }, }, }; diff --git a/app/assets/javascripts/monitoring/components/charts/time_series.vue b/app/assets/javascripts/monitoring/components/charts/time_series.vue index 5529a94874b..a95b143920b 100644 --- a/app/assets/javascripts/monitoring/components/charts/time_series.vue +++ b/app/assets/javascripts/monitoring/components/charts/time_series.vue @@ -1,5 +1,5 @@