diff options
author | GitLab Bot <gitlab-bot@gitlab.com> | 2021-02-05 12:09:31 +0000 |
---|---|---|
committer | GitLab Bot <gitlab-bot@gitlab.com> | 2021-02-05 12:09:31 +0000 |
commit | 64f7eb2b37aebbb713463b2f6971b13191c1b0db (patch) | |
tree | 186ce376859dc04055a20d87945556eec63acd68 /lib | |
parent | 315243f87739dd1edda2b75361f826abc91d4069 (diff) | |
download | gitlab-ce-64f7eb2b37aebbb713463b2f6971b13191c1b0db.tar.gz |
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'lib')
74 files changed, 155 insertions, 10 deletions
diff --git a/lib/api/entities/merge_request_basic.rb b/lib/api/entities/merge_request_basic.rb index 7f1b5b87725..88c84c494e2 100644 --- a/lib/api/entities/merge_request_basic.rb +++ b/lib/api/entities/merge_request_basic.rb @@ -27,7 +27,7 @@ module API expose(:downvotes) { |merge_request, options| issuable_metadata.downvotes } expose :author, :assignees, :assignee, using: Entities::UserBasic - expose :reviewers, if: -> (merge_request, _) { merge_request.allows_reviewers? }, using: Entities::UserBasic + expose :reviewers, using: Entities::UserBasic expose :source_project_id, :target_project_id expose :labels do |merge_request, options| if options[:with_labels_details] diff --git a/lib/gitlab/auth/otp/session_enforcer.rb b/lib/gitlab/auth/otp/session_enforcer.rb index 8cc280756cc..6488fa0f945 100644 --- a/lib/gitlab/auth/otp/session_enforcer.rb +++ b/lib/gitlab/auth/otp/session_enforcer.rb @@ -5,7 +5,6 @@ module Gitlab module Otp class SessionEnforcer OTP_SESSIONS_NAMESPACE = 'session:otp' - DEFAULT_EXPIRATION = 15.minutes.to_i def initialize(key) @key = key @@ -13,7 +12,7 @@ module Gitlab def update_session Gitlab::Redis::SharedState.with do |redis| - redis.setex(key_name, DEFAULT_EXPIRATION, true) + redis.setex(key_name, session_expiry_in_seconds, true) end end @@ -30,6 +29,10 @@ module Gitlab def key_name @key_name ||= "#{OTP_SESSIONS_NAMESPACE}:#{key.id}" end + + def session_expiry_in_seconds + Gitlab::CurrentSettings.git_two_factor_session_expiry.minutes.to_i + end end end end diff --git a/lib/gitlab/experimentation.rb b/lib/gitlab/experimentation.rb index 3cb4798a940..6e401e5d6c8 100644 --- a/lib/gitlab/experimentation.rb +++ b/lib/gitlab/experimentation.rb @@ -92,10 +92,6 @@ module Gitlab tracking_category: 'Growth::Activation::Experiment::CiSyntaxTemplates', rollout_strategy: :user }, - pipelines_empty_state: { - tracking_category: 'Growth::Activation::Experiment::PipelinesEmptyState', - rollout_strategy: :user - }, invite_members_new_dropdown: { tracking_category: 'Growth::Expansion::Experiment::InviteMembersNewDropdown' }, diff --git a/lib/gitlab/quick_actions/merge_request_actions.rb b/lib/gitlab/quick_actions/merge_request_actions.rb index 90745dde0af..6a404c34044 100644 --- a/lib/gitlab/quick_actions/merge_request_actions.rb +++ b/lib/gitlab/quick_actions/merge_request_actions.rb @@ -181,8 +181,7 @@ module Gitlab end types MergeRequest condition do - Feature.enabled?(:merge_request_reviewers, project, default_enabled: :yaml) && - current_user.can?(:"admin_#{quick_action_target.to_ability_name}", project) + current_user.can?(:"admin_#{quick_action_target.to_ability_name}", project) end parse_params do |reviewer_param| extract_users(reviewer_param) @@ -221,7 +220,6 @@ module Gitlab types MergeRequest condition do quick_action_target.persisted? && - Feature.enabled?(:merge_request_reviewers, project, default_enabled: :yaml) && quick_action_target.reviewers.any? && current_user.can?(:"admin_#{quick_action_target.to_ability_name}", project) end diff --git a/lib/tasks/brakeman.rake b/lib/tasks/brakeman.rake index 2301ec9b228..44d2071751f 100644 --- a/lib/tasks/brakeman.rake +++ b/lib/tasks/brakeman.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + desc 'Security check via brakeman' task :brakeman do # We get 0 warnings at level 'w3' but we would like to reach 'w2'. Merge diff --git a/lib/tasks/cache.rake b/lib/tasks/cache.rake index 6af91d473a6..4d698e56444 100644 --- a/lib/tasks/cache.rake +++ b/lib/tasks/cache.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :cache do namespace :clear do REDIS_CLEAR_BATCH_SIZE = 1000 # There seems to be no speedup when pushing beyond 1,000 diff --git a/lib/tasks/ci/cleanup.rake b/lib/tasks/ci/cleanup.rake index 978a42be638..31c3928e797 100644 --- a/lib/tasks/ci/cleanup.rake +++ b/lib/tasks/ci/cleanup.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :ci do namespace :cleanup do desc "GitLab | CI | Clean running builds" diff --git a/lib/tasks/cleanup.rake b/lib/tasks/cleanup.rake index 8574f26dbdc..c13da77217e 100644 --- a/lib/tasks/cleanup.rake +++ b/lib/tasks/cleanup.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :cleanup do desc "GitLab | Cleanup | Delete moved repositories" diff --git a/lib/tasks/config_lint.rake b/lib/tasks/config_lint.rake index ddbcf1e1eb8..9bbefaa2d3a 100644 --- a/lib/tasks/config_lint.rake +++ b/lib/tasks/config_lint.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + module ConfigLint def self.run(files) failures = files.reject do |file| diff --git a/lib/tasks/db_obsolete_ignored_columns.rake b/lib/tasks/db_obsolete_ignored_columns.rake index 00f60231f4f..cf35a355ce9 100644 --- a/lib/tasks/db_obsolete_ignored_columns.rake +++ b/lib/tasks/db_obsolete_ignored_columns.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + desc 'Show a list of obsolete `ignored_columns`' task 'db:obsolete_ignored_columns' => :environment do list = Gitlab::Database::ObsoleteIgnoredColumns.new.execute diff --git a/lib/tasks/dev.rake b/lib/tasks/dev.rake index b3ba2434855..cb01f229cd3 100644 --- a/lib/tasks/dev.rake +++ b/lib/tasks/dev.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + task dev: ["dev:setup"] namespace :dev do diff --git a/lib/tasks/downtime_check.rake b/lib/tasks/downtime_check.rake index ce97ed50fc7..3428e3f8f53 100644 --- a/lib/tasks/downtime_check.rake +++ b/lib/tasks/downtime_check.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + desc 'Checks if migrations in a branch require downtime' task downtime_check: :environment do repo = if defined?(Gitlab::License) diff --git a/lib/tasks/eslint.rake b/lib/tasks/eslint.rake index 51f5d768102..ad63de66c81 100644 --- a/lib/tasks/eslint.rake +++ b/lib/tasks/eslint.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + unless Rails.env.production? desc "GitLab | Run ESLint" task eslint: ['yarn:check'] do diff --git a/lib/tasks/file_hooks.rake b/lib/tasks/file_hooks.rake index f767d63fe0d..a892d36b48e 100644 --- a/lib/tasks/file_hooks.rake +++ b/lib/tasks/file_hooks.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :file_hooks do desc 'Validate existing file hooks' task validate: :environment do diff --git a/lib/tasks/frontend.rake b/lib/tasks/frontend.rake index 176693031d3..b2d2c4e3f2b 100644 --- a/lib/tasks/frontend.rake +++ b/lib/tasks/frontend.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + unless Rails.env.production? namespace :frontend do desc 'GitLab | Frontend | Generate fixtures for JavaScript tests' diff --git a/lib/tasks/gemojione.rake b/lib/tasks/gemojione.rake index 85393bba9a6..a4600a0ed16 100644 --- a/lib/tasks/gemojione.rake +++ b/lib/tasks/gemojione.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gemojione do desc 'Generates Emoji SHA256 digests' diff --git a/lib/tasks/gitlab/artifacts/check.rake b/lib/tasks/gitlab/artifacts/check.rake index a105261ed51..057bb17dbda 100644 --- a/lib/tasks/gitlab/artifacts/check.rake +++ b/lib/tasks/gitlab/artifacts/check.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :artifacts do desc 'GitLab | Artifacts | Check integrity of uploaded job artifacts' diff --git a/lib/tasks/gitlab/artifacts/migrate.rake b/lib/tasks/gitlab/artifacts/migrate.rake index 871fdfb4fde..94867e1a16a 100644 --- a/lib/tasks/gitlab/artifacts/migrate.rake +++ b/lib/tasks/gitlab/artifacts/migrate.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'logger' require 'resolv-replace' diff --git a/lib/tasks/gitlab/backup.rake b/lib/tasks/gitlab/backup.rake index de2dfca8c1b..c53ef8382b8 100644 --- a/lib/tasks/gitlab/backup.rake +++ b/lib/tasks/gitlab/backup.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'active_record/fixtures' namespace :gitlab do diff --git a/lib/tasks/gitlab/bulk_add_permission.rake b/lib/tasks/gitlab/bulk_add_permission.rake index 56cbbae1f67..df0c6a260a2 100644 --- a/lib/tasks/gitlab/bulk_add_permission.rake +++ b/lib/tasks/gitlab/bulk_add_permission.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :import do desc "GitLab | Import | Add all users to all projects (admin users are added as maintainers)" diff --git a/lib/tasks/gitlab/check.rake b/lib/tasks/gitlab/check.rake index 9e60a585330..d4e38100609 100644 --- a/lib/tasks/gitlab/check.rake +++ b/lib/tasks/gitlab/check.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do desc 'GitLab | Check the configuration of GitLab and its environment' task check: :gitlab_environment do diff --git a/lib/tasks/gitlab/container_registry.rake b/lib/tasks/gitlab/container_registry.rake index cd18c873a5a..086f99971bc 100644 --- a/lib/tasks/gitlab/container_registry.rake +++ b/lib/tasks/gitlab/container_registry.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :container_registry do desc "GitLab | Container Registry | Configure" diff --git a/lib/tasks/gitlab/db.rake b/lib/tasks/gitlab/db.rake index 901e349ea31..bf0eb6785df 100644 --- a/lib/tasks/gitlab/db.rake +++ b/lib/tasks/gitlab/db.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :db do desc 'GitLab | DB | Manually insert schema migration version' diff --git a/lib/tasks/gitlab/doctor/secrets.rake b/lib/tasks/gitlab/doctor/secrets.rake index 3fdef9dfc80..6e3f474312c 100644 --- a/lib/tasks/gitlab/doctor/secrets.rake +++ b/lib/tasks/gitlab/doctor/secrets.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :doctor do desc "GitLab | Check if the database encrypted values can be decrypted using current secrets" diff --git a/lib/tasks/gitlab/exclusive_lease.rake b/lib/tasks/gitlab/exclusive_lease.rake index 63b06d5251a..bee9782f373 100644 --- a/lib/tasks/gitlab/exclusive_lease.rake +++ b/lib/tasks/gitlab/exclusive_lease.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :exclusive_lease do desc 'GitLab | Exclusive Lease | Clear existing exclusive leases for specified scope (default: *)' diff --git a/lib/tasks/gitlab/external_diffs.rake b/lib/tasks/gitlab/external_diffs.rake index 08f25914007..7a5fa07aed1 100644 --- a/lib/tasks/gitlab/external_diffs.rake +++ b/lib/tasks/gitlab/external_diffs.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :external_diffs do desc "Override external diffs in file storage to be in object storage instead. This does not change the actual location of the data" diff --git a/lib/tasks/gitlab/features.rake b/lib/tasks/gitlab/features.rake index 2309aa5d214..e44328e0de1 100644 --- a/lib/tasks/gitlab/features.rake +++ b/lib/tasks/gitlab/features.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :features do desc 'GitLab | Features | Enable direct Git access via Rugged for NFS' diff --git a/lib/tasks/gitlab/generate_sample_prometheus_data.rake b/lib/tasks/gitlab/generate_sample_prometheus_data.rake index 250eaaa5568..4cd75af9d00 100644 --- a/lib/tasks/gitlab/generate_sample_prometheus_data.rake +++ b/lib/tasks/gitlab/generate_sample_prometheus_data.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do desc "GitLab | Generate Sample Prometheus Data" task :generate_sample_prometheus_data, [:environment_id] => :gitlab_environment do |_, args| diff --git a/lib/tasks/gitlab/git.rake b/lib/tasks/gitlab/git.rake index abb15f29328..9c5549b4a54 100644 --- a/lib/tasks/gitlab/git.rake +++ b/lib/tasks/gitlab/git.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :git do desc 'GitLab | Git | Check all repos integrity' diff --git a/lib/tasks/gitlab/gitaly.rake b/lib/tasks/gitlab/gitaly.rake index 49d2d3d62a2..9e474b00ba7 100644 --- a/lib/tasks/gitlab/gitaly.rake +++ b/lib/tasks/gitlab/gitaly.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :gitaly do desc 'GitLab | Gitaly | Install or upgrade gitaly' diff --git a/lib/tasks/gitlab/helpers.rake b/lib/tasks/gitlab/helpers.rake index 14d1125a03d..b61b1833c5a 100644 --- a/lib/tasks/gitlab/helpers.rake +++ b/lib/tasks/gitlab/helpers.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + # Prevent StateMachine warnings from outputting during a cron task StateMachines::Machine.ignore_method_conflicts = true if ENV['CRON'] diff --git a/lib/tasks/gitlab/import.rake b/lib/tasks/gitlab/import.rake index 701d40b7929..bf0ba40fb31 100644 --- a/lib/tasks/gitlab/import.rake +++ b/lib/tasks/gitlab/import.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :import do # How to use: diff --git a/lib/tasks/gitlab/import_export.rake b/lib/tasks/gitlab/import_export.rake index adf696350d7..72598cdf863 100644 --- a/lib/tasks/gitlab/import_export.rake +++ b/lib/tasks/gitlab/import_export.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :import_export do desc 'GitLab | Import/Export | Show Import/Export version' diff --git a/lib/tasks/gitlab/info.rake b/lib/tasks/gitlab/info.rake index d85c8fc7949..2826002bdc2 100644 --- a/lib/tasks/gitlab/info.rake +++ b/lib/tasks/gitlab/info.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :env do desc 'GitLab | Env | Show information about GitLab and its environment' diff --git a/lib/tasks/gitlab/ldap.rake b/lib/tasks/gitlab/ldap.rake index fe7920c621f..3b2834c0008 100644 --- a/lib/tasks/gitlab/ldap.rake +++ b/lib/tasks/gitlab/ldap.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :ldap do desc 'GitLab | LDAP | Rename provider' diff --git a/lib/tasks/gitlab/lfs/check.rake b/lib/tasks/gitlab/lfs/check.rake index 869463d4e5d..582b87337ae 100644 --- a/lib/tasks/gitlab/lfs/check.rake +++ b/lib/tasks/gitlab/lfs/check.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :lfs do desc 'GitLab | LFS | Check integrity of uploaded LFS objects' diff --git a/lib/tasks/gitlab/lfs/migrate.rake b/lib/tasks/gitlab/lfs/migrate.rake index 3d4c847a0f0..05249a126bc 100644 --- a/lib/tasks/gitlab/lfs/migrate.rake +++ b/lib/tasks/gitlab/lfs/migrate.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'logger' desc "GitLab | LFS | Migrate LFS objects to remote storage" diff --git a/lib/tasks/gitlab/list_repos.rake b/lib/tasks/gitlab/list_repos.rake index b854c34a8e5..56ec94d2aef 100644 --- a/lib/tasks/gitlab/list_repos.rake +++ b/lib/tasks/gitlab/list_repos.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do task list_repos: :environment do scope = Project diff --git a/lib/tasks/gitlab/packages/events.rake b/lib/tasks/gitlab/packages/events.rake index cfe97984dda..4bf4ce430f1 100644 --- a/lib/tasks/gitlab/packages/events.rake +++ b/lib/tasks/gitlab/packages/events.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'logger' desc "GitLab | Packages | Events | Generate hll counter events file for packages" diff --git a/lib/tasks/gitlab/packages/migrate.rake b/lib/tasks/gitlab/packages/migrate.rake index cd6dcf78da3..20a8c51db66 100644 --- a/lib/tasks/gitlab/packages/migrate.rake +++ b/lib/tasks/gitlab/packages/migrate.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'logger' desc "GitLab | Packages | Migrate packages files to remote storage" diff --git a/lib/tasks/gitlab/pages.rake b/lib/tasks/gitlab/pages.rake index 59c57a66928..80550317dba 100644 --- a/lib/tasks/gitlab/pages.rake +++ b/lib/tasks/gitlab/pages.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'logger' namespace :gitlab do diff --git a/lib/tasks/gitlab/praefect.rake b/lib/tasks/gitlab/praefect.rake index a9b126ae379..346df3e0c75 100644 --- a/lib/tasks/gitlab/praefect.rake +++ b/lib/tasks/gitlab/praefect.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :praefect do def int?(string) diff --git a/lib/tasks/gitlab/seed.rake b/lib/tasks/gitlab/seed.rake index d758280ba69..36761165af5 100644 --- a/lib/tasks/gitlab/seed.rake +++ b/lib/tasks/gitlab/seed.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :seed do desc "GitLab | Seed | Seeds issues" diff --git a/lib/tasks/gitlab/setup.rake b/lib/tasks/gitlab/setup.rake index 50774de77c9..31bd80e78d4 100644 --- a/lib/tasks/gitlab/setup.rake +++ b/lib/tasks/gitlab/setup.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do desc "GitLab | Setup production application" task setup: :gitlab_environment do diff --git a/lib/tasks/gitlab/shell.rake b/lib/tasks/gitlab/shell.rake index edbaec85bd9..b3abc48f8e0 100644 --- a/lib/tasks/gitlab/shell.rake +++ b/lib/tasks/gitlab/shell.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :shell do desc "GitLab | Shell | Install or upgrade gitlab-shell" diff --git a/lib/tasks/gitlab/storage.rake b/lib/tasks/gitlab/storage.rake index f7819fd974b..ede6b6af80b 100644 --- a/lib/tasks/gitlab/storage.rake +++ b/lib/tasks/gitlab/storage.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :storage do desc 'GitLab | Storage | Migrate existing projects to Hashed Storage' diff --git a/lib/tasks/gitlab/tcp_check.rake b/lib/tasks/gitlab/tcp_check.rake index 1400f57d6b9..4790d86832d 100644 --- a/lib/tasks/gitlab/tcp_check.rake +++ b/lib/tasks/gitlab/tcp_check.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do desc "GitLab | Check TCP connectivity to a specific host and port" task :tcp_check, [:host, :port] => :environment do |_t, args| diff --git a/lib/tasks/gitlab/test.rake b/lib/tasks/gitlab/test.rake index 2222807fe13..a83ba69bc75 100644 --- a/lib/tasks/gitlab/test.rake +++ b/lib/tasks/gitlab/test.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do desc "GitLab | Run all tests" task :test do diff --git a/lib/tasks/gitlab/two_factor.rake b/lib/tasks/gitlab/two_factor.rake index 6a9e87e1541..9d10976fbce 100644 --- a/lib/tasks/gitlab/two_factor.rake +++ b/lib/tasks/gitlab/two_factor.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :two_factor do desc "GitLab | 2FA | Disable Two-factor authentication (2FA) for all users" diff --git a/lib/tasks/gitlab/update_templates.rake b/lib/tasks/gitlab/update_templates.rake index fdcd34320b1..e3a4e7f50b8 100644 --- a/lib/tasks/gitlab/update_templates.rake +++ b/lib/tasks/gitlab/update_templates.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do desc "GitLab | Update templates" task :update_templates do diff --git a/lib/tasks/gitlab/uploads/check.rake b/lib/tasks/gitlab/uploads/check.rake index 2be2ec7f9c9..8ccc84d15f4 100644 --- a/lib/tasks/gitlab/uploads/check.rake +++ b/lib/tasks/gitlab/uploads/check.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :uploads do desc 'GitLab | Uploads | Check integrity of uploaded files' diff --git a/lib/tasks/gitlab/uploads/migrate.rake b/lib/tasks/gitlab/uploads/migrate.rake index 879b07da1df..6052ff90341 100644 --- a/lib/tasks/gitlab/uploads/migrate.rake +++ b/lib/tasks/gitlab/uploads/migrate.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :uploads do namespace :migrate do diff --git a/lib/tasks/gitlab/uploads/sanitize.rake b/lib/tasks/gitlab/uploads/sanitize.rake index 4f23a0a5d82..eec423cbb8b 100644 --- a/lib/tasks/gitlab/uploads/sanitize.rake +++ b/lib/tasks/gitlab/uploads/sanitize.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :uploads do namespace :sanitize do diff --git a/lib/tasks/gitlab/usage_data.rake b/lib/tasks/gitlab/usage_data.rake index 0e729fa8833..95072444fcf 100644 --- a/lib/tasks/gitlab/usage_data.rake +++ b/lib/tasks/gitlab/usage_data.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :usage_data do desc 'GitLab | UsageData | Generate raw SQLs for usage ping in YAML' diff --git a/lib/tasks/gitlab/user_management.rake b/lib/tasks/gitlab/user_management.rake index f47e549e795..29f2360f64a 100644 --- a/lib/tasks/gitlab/user_management.rake +++ b/lib/tasks/gitlab/user_management.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :user_management do desc "GitLab | User management | Update all users of a group with personal project limit to 0 and can_create_group to false" diff --git a/lib/tasks/gitlab/web_hook.rake b/lib/tasks/gitlab/web_hook.rake index b242329d720..091743485c9 100644 --- a/lib/tasks/gitlab/web_hook.rake +++ b/lib/tasks/gitlab/web_hook.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :web_hook do desc "GitLab | Webhook | Adds a webhook to the projects" diff --git a/lib/tasks/gitlab/workhorse.rake b/lib/tasks/gitlab/workhorse.rake index 2d72a01f66f..0d9f8efa64f 100644 --- a/lib/tasks/gitlab/workhorse.rake +++ b/lib/tasks/gitlab/workhorse.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :workhorse do desc "GitLab | Workhorse | Install or upgrade gitlab-workhorse" diff --git a/lib/tasks/gitlab/x509/update.rake b/lib/tasks/gitlab/x509/update.rake index eaba9196acf..de878a3d093 100644 --- a/lib/tasks/gitlab/x509/update.rake +++ b/lib/tasks/gitlab/x509/update.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'logger' desc "GitLab | X509 | Update signatures when certificate store has changed" diff --git a/lib/tasks/gitlab_danger.rake b/lib/tasks/gitlab_danger.rake index deff6484231..5df4a8ce4f1 100644 --- a/lib/tasks/gitlab_danger.rake +++ b/lib/tasks/gitlab_danger.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + desc 'Run local Danger rules' task :danger_local do require_relative '../../tooling/gitlab_danger' diff --git a/lib/tasks/grape.rake b/lib/tasks/grape.rake index ea2698da606..c72403a375a 100644 --- a/lib/tasks/grape.rake +++ b/lib/tasks/grape.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :grape do desc 'Print compiled grape routes' task routes: :environment do diff --git a/lib/tasks/haml-lint.rake b/lib/tasks/haml-lint.rake index 305e15d69d5..270793359e1 100644 --- a/lib/tasks/haml-lint.rake +++ b/lib/tasks/haml-lint.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + unless Rails.env.production? require 'haml_lint/rake_task' require Rails.root.join('haml_lint/inline_javascript') diff --git a/lib/tasks/import.rake b/lib/tasks/import.rake index 500891df43d..633beb132d8 100644 --- a/lib/tasks/import.rake +++ b/lib/tasks/import.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require 'benchmark' require 'rainbow/ext/string' diff --git a/lib/tasks/karma.rake b/lib/tasks/karma.rake index 36590010406..fa3f8805159 100644 --- a/lib/tasks/karma.rake +++ b/lib/tasks/karma.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + unless Rails.env.production? namespace :karma do # alias exists for legacy reasons diff --git a/lib/tasks/lint.rake b/lib/tasks/lint.rake index 7a4d09bb6d4..5d60bc41f21 100644 --- a/lib/tasks/lint.rake +++ b/lib/tasks/lint.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + unless Rails.env.production? namespace :lint do task :static_verification_env do diff --git a/lib/tasks/migrate/composite_primary_keys.rake b/lib/tasks/migrate/composite_primary_keys.rake index 732dedf4d4f..68f7c4d6c4a 100644 --- a/lib/tasks/migrate/composite_primary_keys.rake +++ b/lib/tasks/migrate/composite_primary_keys.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + namespace :gitlab do namespace :db do desc 'GitLab | DB | Adds primary keys to tables that only have composite unique keys' diff --git a/lib/tasks/migrate/migrate_iids.rake b/lib/tasks/migrate/migrate_iids.rake index cb7c496c31c..e0666a87656 100644 --- a/lib/tasks/migrate/migrate_iids.rake +++ b/lib/tasks/migrate/migrate_iids.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + desc "GitLab | Build internal ids for issues and merge requests" task migrate_iids: :environment do puts 'Issues'.color(:yellow) diff --git a/lib/tasks/migrate/setup_postgresql.rake b/lib/tasks/migrate/setup_postgresql.rake index 4c8f13b63a4..27dd9e842ff 100644 --- a/lib/tasks/migrate/setup_postgresql.rake +++ b/lib/tasks/migrate/setup_postgresql.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + desc 'GitLab | Generate PostgreSQL Password Hash' task :postgresql_md5_hash do require 'digest' diff --git a/lib/tasks/pngquant.rake b/lib/tasks/pngquant.rake index 63bc1c7c16e..45c0288cadf 100644 --- a/lib/tasks/pngquant.rake +++ b/lib/tasks/pngquant.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + return if Rails.env.production? require 'png_quantizator' diff --git a/lib/tasks/rubocop.rake b/lib/tasks/rubocop.rake index 78ffccc9d06..f5d16835347 100644 --- a/lib/tasks/rubocop.rake +++ b/lib/tasks/rubocop.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + unless Rails.env.production? require 'rubocop/rake_task' diff --git a/lib/tasks/scss-lint.rake b/lib/tasks/scss-lint.rake index 250fd8699e4..8a4809f80fd 100644 --- a/lib/tasks/scss-lint.rake +++ b/lib/tasks/scss-lint.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + unless Rails.env.production? require 'scss_lint/rake_task' diff --git a/lib/tasks/setup.rake b/lib/tasks/setup.rake index 4c79ffbfa6b..bae22f9a590 100644 --- a/lib/tasks/setup.rake +++ b/lib/tasks/setup.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + desc "GitLab | Setup gitlab db" task :setup do Rake::Task["gitlab:setup"].invoke diff --git a/lib/tasks/test.rake b/lib/tasks/test.rake index b52af81fc16..b24817468c6 100644 --- a/lib/tasks/test.rake +++ b/lib/tasks/test.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + Rake::Task["test"].clear desc "GitLab | Run all tests" diff --git a/lib/tasks/tokens.rake b/lib/tasks/tokens.rake index 46635cd7c8f..b0ff2cce482 100644 --- a/lib/tasks/tokens.rake +++ b/lib/tasks/tokens.rake @@ -1,3 +1,5 @@ +# frozen_string_literal: true + require_relative '../../app/models/concerns/token_authenticatable.rb' require_relative '../../app/models/concerns/token_authenticatable_strategies/base.rb' require_relative '../../app/models/concerns/token_authenticatable_strategies/insecure.rb' diff --git a/lib/uploaded_file.rb b/lib/uploaded_file.rb index 79920968603..a8935ec542e 100644 --- a/lib/uploaded_file.rb +++ b/lib/uploaded_file.rb @@ -78,9 +78,15 @@ class UploadedFile def sanitize_filename(name) name = name.tr("\\", "/") # work-around for IE name = ::File.basename(name) + + pre_sanitized_name = name + name = name.gsub(CarrierWave::SanitizedFile.sanitize_regexp, "_") name = "_#{name}" if name =~ /\A\.+\z/ name = "unnamed" if name.empty? + + @filename_sanitized = name != pre_sanitized_name + name.mb_chars.to_s end @@ -92,6 +98,10 @@ class UploadedFile @tempfile&.close end + def filename_sanitized? + @filename_sanitized + end + alias_method :local_path, :path def method_missing(method_name, *args, &block) #:nodoc: |