diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index 7ef143d5525..9a24f58ad73 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -105,6 +105,11 @@ workflow: <<: [*default-ruby-variables, *default-branch-pipeline-failure-variables] GITLAB_DEPENDENCY_PROXY_ADDRESS: "" PIPELINE_NAME: 'Ruby $RUBY_VERSION $CI_COMMIT_BRANCH branch pipeline (triggered by a project token)' + # For `$CI_DEFAULT_BRANCH` from wider community contributors, we don't want to run any pipelines on pushes, + # because normally we want to run merge request pipelines and scheduled pipelines, not for repository synchronization. + # This can avoid accidentally using up pipeline minutes quota while synchronizing the repository for wider community contributors. + - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH && $CI_PIPELINE_SOURCE == "push" && $CI_PROJECT_NAMESPACE !~ /^gitlab(-org|-cn)?($|\/)/' + when: never # For `$CI_DEFAULT_BRANCH` branch, create a pipeline (this includes on schedules, pushes, merges, etc.). - if: '$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH' variables: diff --git a/.gitlab/ci/rails/shared.gitlab-ci.yml b/.gitlab/ci/rails/shared.gitlab-ci.yml index 6d6d99231ab..6046c672f7b 100644 --- a/.gitlab/ci/rails/shared.gitlab-ci.yml +++ b/.gitlab/ci/rails/shared.gitlab-ci.yml @@ -84,10 +84,10 @@ include: - echo -e "\e[0Ksection_start:`date +%s`:report_results_section[collapsed=true]\r\e[0KReport results" - | if [ "$CREATE_RAILS_TEST_FAILURE_ISSUES" == "true" ]; then - bundle exec relate-failure-issue --input-files "rspec/rspec-*.json" --system-log-files "log" --project "gitlab-org/gitlab" --token "${TEST_FAILURES_PROJECT_TOKEN}"; + bundle exec relate-failure-issue --input-files "rspec/rspec-*.json" --system-log-files "log" --project "gitlab-org/gitlab" --token "${TEST_FAILURES_PROJECT_TOKEN}" --related-issues-file "rspec/${CI_JOB_ID}-failed-test-issues.json"; fi if [ "$CREATE_RAILS_SLOW_TEST_ISSUES" == "true" ]; then - bundle exec slow-test-issues --input-files "rspec/rspec-*.json" --project "gitlab-org/gitlab" --token "${TEST_FAILURES_PROJECT_TOKEN}"; + bundle exec slow-test-issues --input-files "rspec/rspec-*.json" --project "gitlab-org/gitlab" --token "${TEST_FAILURES_PROJECT_TOKEN}" --related-issues-file "rspec/${CI_JOB_ID}-slow-test-issues.json"; fi if [ "$ADD_SLOW_TEST_NOTE_TO_MERGE_REQUEST" == "true" ]; then bundle exec slow-test-merge-request-report-note --input-files "rspec/rspec-*.json" --project "gitlab-org/gitlab" --merge_request_iid "$CI_MERGE_REQUEST_IID" --token "${TEST_SLOW_NOTE_PROJECT_TOKEN}"; diff --git a/.rubocop_todo/capybara/testid_finders.yml b/.rubocop_todo/capybara/testid_finders.yml index 0238bfbc86a..ddaf1e27beb 100644 --- a/.rubocop_todo/capybara/testid_finders.yml +++ b/.rubocop_todo/capybara/testid_finders.yml @@ -60,7 +60,6 @@ Capybara/TestidFinders: - 'spec/features/merge_request/user_views_open_merge_request_spec.rb' - 'spec/features/milestone_spec.rb' - 'spec/features/nav/new_nav_callout_spec.rb' - - 'spec/features/nav/new_nav_toggle_spec.rb' - 'spec/features/nav/pinned_nav_items_spec.rb' - 'spec/features/populate_new_pipeline_vars_with_params_spec.rb' - 'spec/features/profile_spec.rb' diff --git a/.rubocop_todo/layout/argument_alignment.yml b/.rubocop_todo/layout/argument_alignment.yml index e9a23d2ca7e..91c7f265f99 100644 --- a/.rubocop_todo/layout/argument_alignment.yml +++ b/.rubocop_todo/layout/argument_alignment.yml @@ -212,7 +212,6 @@ Layout/ArgumentAlignment: - 'app/graphql/resolvers/group_releases_resolver.rb' - 'app/graphql/resolvers/groups_resolver.rb' - 'app/graphql/resolvers/incident_management/timeline_events_resolver.rb' - - 'app/graphql/resolvers/issues/base_parent_resolver.rb' - 'app/graphql/resolvers/issues/base_resolver.rb' - 'app/graphql/resolvers/issues_resolver.rb' - 'app/graphql/resolvers/labels_resolver.rb' diff --git a/.rubocop_todo/rspec/feature_category.yml b/.rubocop_todo/rspec/feature_category.yml index 330cdc4e8e5..6a06ffef089 100644 --- a/.rubocop_todo/rspec/feature_category.yml +++ b/.rubocop_todo/rspec/feature_category.yml @@ -2846,7 +2846,6 @@ RSpec/FeatureCategory: - 'spec/lib/gitlab/background_migration/backfill_user_details_fields_spec.rb' - 'spec/lib/gitlab/background_migration/backfill_vulnerability_reads_cluster_agent_spec.rb' - 'spec/lib/gitlab/background_migration/base_job_spec.rb' - - 'spec/lib/gitlab/background_migration/batched_migration_job_spec.rb' - 'spec/lib/gitlab/background_migration/batching_strategies/backfill_project_statistics_with_container_registry_size_batching_strategy_spec.rb' - 'spec/lib/gitlab/background_migration/batching_strategies/base_strategy_spec.rb' - 'spec/lib/gitlab/background_migration/batching_strategies/dismissed_vulnerabilities_strategy_spec.rb' @@ -3262,7 +3261,6 @@ RSpec/FeatureCategory: - 'spec/lib/gitlab/database/count/reltuples_count_strategy_spec.rb' - 'spec/lib/gitlab/database/count/tablesample_count_strategy_spec.rb' - 'spec/lib/gitlab/database/count_spec.rb' - - 'spec/lib/gitlab/database/dynamic_model_helpers_spec.rb' - 'spec/lib/gitlab/database/each_database_spec.rb' - 'spec/lib/gitlab/database/grant_spec.rb' - 'spec/lib/gitlab/database/load_balancing/configuration_spec.rb' @@ -3285,7 +3283,6 @@ RSpec/FeatureCategory: - 'spec/lib/gitlab/database/migration_spec.rb' - 'spec/lib/gitlab/database/migrations/background_migration_helpers_spec.rb' - 'spec/lib/gitlab/database/migrations/base_background_runner_spec.rb' - - 'spec/lib/gitlab/database/migrations/batched_background_migration_helpers_spec.rb' - 'spec/lib/gitlab/database/migrations/constraints_helpers_spec.rb' - 'spec/lib/gitlab/database/migrations/extension_helpers_spec.rb' - 'spec/lib/gitlab/database/migrations/instrumentation_spec.rb' diff --git a/GITLAB_SHELL_VERSION b/GITLAB_SHELL_VERSION index 2da0a2a4e91..f269bd38a5b 100644 --- a/GITLAB_SHELL_VERSION +++ b/GITLAB_SHELL_VERSION @@ -1 +1 @@ -14.29.0 +14.30.0 diff --git a/Gemfile b/Gemfile index d069c116a73..1536fa6bafe 100644 --- a/Gemfile +++ b/Gemfile @@ -63,7 +63,7 @@ gem 'marginalia', '~> 1.11.1' # rubocop:todo Gemfile/MissingFeatureCategory gem 'declarative_policy', '~> 1.1.0' # rubocop:todo Gemfile/MissingFeatureCategory # Authentication libraries -gem 'devise', '~> 4.8.1' # rubocop:todo Gemfile/MissingFeatureCategory +gem 'devise', '~> 4.9.3', feature_category: :system_access gem 'devise-pbkdf2-encryptable', '~> 0.0.0', path: 'vendor/gems/devise-pbkdf2-encryptable' # rubocop:todo Gemfile/MissingFeatureCategory gem 'bcrypt', '~> 3.1', '>= 3.1.14' # rubocop:todo Gemfile/MissingFeatureCategory gem 'doorkeeper', '~> 5.6', '>= 5.6.6' # rubocop:todo Gemfile/MissingFeatureCategory @@ -208,7 +208,7 @@ gem 'deckar01-task_list', '2.3.3' # rubocop:todo Gemfile/MissingFeatureCategory gem 'gitlab-markup', '~> 1.9.0', require: 'github/markup' # rubocop:todo Gemfile/MissingFeatureCategory gem 'commonmarker', '~> 0.23.10' # rubocop:todo Gemfile/MissingFeatureCategory gem 'kramdown', '~> 2.3.1' # rubocop:todo Gemfile/MissingFeatureCategory -gem 'RedCloth', '~> 4.3.2' # rubocop:todo Gemfile/MissingFeatureCategory +gem 'RedCloth', '~> 4.3.3' # rubocop:todo Gemfile/MissingFeatureCategory gem 'org-ruby', '~> 0.9.12' # rubocop:todo Gemfile/MissingFeatureCategory gem 'creole', '~> 0.5.0' # rubocop:todo Gemfile/MissingFeatureCategory gem 'wikicloth', '0.8.1' # rubocop:todo Gemfile/MissingFeatureCategory diff --git a/Gemfile.checksum b/Gemfile.checksum index 8b2da2ba7c8..59a1324ce23 100644 --- a/Gemfile.checksum +++ b/Gemfile.checksum @@ -1,6 +1,6 @@ [ {"name":"CFPropertyList","version":"3.0.5","platform":"ruby","checksum":"a78551cd4768d78ebca98488c27e33652ef818be64697a54676d34e6434674a4"}, -{"name":"RedCloth","version":"4.3.2","platform":"ruby","checksum":"1ee7bc55c8dcec92cf7741a2132a9a6cd19e4b884fbc1b3aca23e1a4fcd92d55"}, +{"name":"RedCloth","version":"4.3.3","platform":"ruby","checksum":"d941b8ac96e2730d2d9326d97dda9fcf64cb73532b3f902d91c18970c5f4632d"}, {"name":"acme-client","version":"2.0.11","platform":"ruby","checksum":"edf6da9f3c5dbe3ab0c6738eb3b97978b7a60e3500445480d2a72fcc610089de"}, {"name":"actioncable","version":"7.0.8","platform":"ruby","checksum":"1f504ddb4ab6a34f7c52e9df924441a403e9f358bace330c36dcca6358ecfb84"}, {"name":"actionmailbox","version":"7.0.8","platform":"ruby","checksum":"9420037b801e44aa4e36cf113f4bd6eb25c17eb1b84d9c8865e8abf8846c14e5"}, @@ -115,7 +115,7 @@ {"name":"devfile","version":"0.0.24.pre.alpha1","platform":"ruby","checksum":"72bbfc26edb519902d5c68e07188e0a3d699a1866392fa1497e5b7f3abb36600"}, {"name":"devfile","version":"0.0.24.pre.alpha1","platform":"x86_64-linux","checksum":"d121b1094aa3a24c29592a83c629ee640920e0196711dd06f27b6fa9b1ced609"}, {"name":"device_detector","version":"1.0.0","platform":"ruby","checksum":"b800fb3150b00c23e87b6768011808ac1771fffaae74c3238ebaf2b782947a7d"}, -{"name":"devise","version":"4.8.1","platform":"ruby","checksum":"fdd48bbe79a89e7c1152236a70479842ede48bea4fa7f4f2d8da1f872559803e"}, +{"name":"devise","version":"4.9.3","platform":"ruby","checksum":"480638d6c51b97f56da6e28d4f3e2a1b8e606681b316aa594b87c6ab94923488"}, {"name":"devise-two-factor","version":"4.1.1","platform":"ruby","checksum":"c95f5b07533e62217aaed3c386874d94e2d472fb5f2b6598afe8600fc17a8b95"}, {"name":"diff-lcs","version":"1.5.0","platform":"ruby","checksum":"49b934001c8c6aedb37ba19daec5c634da27b318a7a3c654ae979d6ba1929b67"}, {"name":"diff_match_patch","version":"0.1.0","platform":"ruby","checksum":"b36057bfcfeaedf19dcb7b2c28c19ee625bd6ec6d0d182717d3ef22b3879c40e"}, diff --git a/Gemfile.lock b/Gemfile.lock index 6f94a4f275e..55d6fe0dd0e 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -28,6 +28,7 @@ PATH specs: gitlab-http (0.1.0) activesupport (~> 7) + concurrent-ruby (~> 1.2) httparty (~> 0.21.0) ipaddress (~> 0.8.3) nokogiri (~> 1.15.4) @@ -161,7 +162,7 @@ GEM specs: CFPropertyList (3.0.5) rexml - RedCloth (4.3.2) + RedCloth (4.3.3) acme-client (2.0.11) faraday (>= 1.0, < 3.0.0) faraday-retry (~> 1.0) @@ -444,7 +445,7 @@ GEM thread_safe (~> 0.3, >= 0.3.1) devfile (0.0.24.pre.alpha1) device_detector (1.0.0) - devise (4.8.1) + devise (4.9.3) bcrypt (~> 3.0) orm_adapter (~> 0.1) railties (>= 4.1.0) @@ -1743,7 +1744,7 @@ PLATFORMS DEPENDENCIES CFPropertyList (~> 3.0.0) - RedCloth (~> 4.3.2) + RedCloth (~> 4.3.3) acme-client (~> 2.0) activerecord-explain-analyze (~> 0.1) activerecord-gitlab! @@ -1799,7 +1800,7 @@ DEPENDENCIES derailed_benchmarks devfile (~> 0.0.24.pre.alpha1) device_detector - devise (~> 4.8.1) + devise (~> 4.9.3) devise-pbkdf2-encryptable (~> 0.0.0)! devise-two-factor (~> 4.1.1) diff_match_patch (~> 0.1.0) diff --git a/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js b/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js index 070ce38c8aa..d97f11a0acd 100644 --- a/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js +++ b/app/assets/javascripts/batch_comments/stores/modules/batch_comments/actions.js @@ -72,22 +72,20 @@ export const fetchDrafts = ({ commit, getters, state, dispatch }) => }), ); -export const publishSingleDraft = ({ commit, dispatch, getters }, draftId) => { +export const publishSingleDraft = ({ commit, getters }, draftId) => { commit(types.REQUEST_PUBLISH_DRAFT, draftId); service .publishDraft(getters.getNotesData.draftsPublishPath, draftId) - .then(() => dispatch('updateDiscussionsAfterPublish')) .then(() => commit(types.RECEIVE_PUBLISH_DRAFT_SUCCESS, draftId)) .catch(() => commit(types.RECEIVE_PUBLISH_DRAFT_ERROR, draftId)); }; -export const publishReview = ({ commit, dispatch, getters }, noteData = {}) => { +export const publishReview = ({ commit, getters }, noteData = {}) => { commit(types.REQUEST_PUBLISH_REVIEW); return service .publish(getters.getNotesData.draftsPublishPath, noteData) - .then(() => dispatch('updateDiscussionsAfterPublish')) .then(() => commit(types.RECEIVE_PUBLISH_REVIEW_SUCCESS)) .catch((e) => { commit(types.RECEIVE_PUBLISH_REVIEW_ERROR); @@ -96,18 +94,6 @@ export const publishReview = ({ commit, dispatch, getters }, noteData = {}) => { }); }; -export const updateDiscussionsAfterPublish = async ({ dispatch, getters, rootGetters }) => { - await dispatch( - 'fetchDiscussions', - { path: getters.getNotesData.discussionsPath }, - { root: true }, - ); - - dispatch('diffs/assignDiscussionsToDiff', rootGetters.discussionsStructuredByLineCode, { - root: true, - }); -}; - export const updateDraft = ( { commit, getters }, { note, noteText, resolveDiscussion, position, flashContainer, callback, errorCallback }, diff --git a/app/assets/javascripts/ci/pipeline_details/graph/components/graph_component.vue b/app/assets/javascripts/ci/pipeline_details/graph/components/graph_component.vue index fce7aabf0cf..3da2f27c1b9 100644 --- a/app/assets/javascripts/ci/pipeline_details/graph/components/graph_component.vue +++ b/app/assets/javascripts/ci/pipeline_details/graph/components/graph_component.vue @@ -248,7 +248,6 @@ export default {