From 7371b427cd6f0d082fa042a696afea000fb8ed47 Mon Sep 17 00:00:00 2001 From: Sam Saffron Date: Thu, 28 Nov 2019 13:13:13 +1100 Subject: [PATCH] DEV: correct a few Ruby 2.7 deprecations Note: ``` def foo(bar: 1) end foo({bar: 2}) # raises a deprecation, instead use: foo(**{bar: 2}) ``` Additionally when matching regexes always use strings. It does not make sense to match a non string to a regex. --- app/controllers/metadata_controller.rb | 8 +++++++- app/controllers/reviewables_controller.rb | 4 ++-- app/controllers/topics_controller.rb | 2 +- app/models/remote_theme.rb | 2 +- lib/user_name_suggester.rb | 2 +- 5 files changed, 12 insertions(+), 6 deletions(-) diff --git a/app/controllers/metadata_controller.rb b/app/controllers/metadata_controller.rb index 279cb99345a..279bdfea1ba 100644 --- a/app/controllers/metadata_controller.rb +++ b/app/controllers/metadata_controller.rb @@ -25,7 +25,13 @@ class MetadataController < ApplicationController private def default_manifest - display = Regexp.new(SiteSetting.pwa_display_browser_regex).match(request.user_agent) ? 'browser' : 'standalone' + display = "standalone" + if request.user_agent + regex = Regexp.new(SiteSetting.pwa_display_browser_regex) + if regex.match(request.user_agent) + display = "browser" + end + end manifest = { name: SiteSetting.title, diff --git a/app/controllers/reviewables_controller.rb b/app/controllers/reviewables_controller.rb index 83738cb21d1..ce5c2cd29e4 100644 --- a/app/controllers/reviewables_controller.rb +++ b/app/controllers/reviewables_controller.rb @@ -33,8 +33,8 @@ class ReviewablesController < ApplicationController filters[filter_key] = params[filter_key] end - total_rows = Reviewable.list_for(current_user, filters).count - reviewables = Reviewable.list_for(current_user, filters.merge(limit: PER_PAGE, offset: offset)).to_a + total_rows = Reviewable.list_for(current_user, **filters).count + reviewables = Reviewable.list_for(current_user, **filters.merge(limit: PER_PAGE, offset: offset)).to_a claimed_topics = ReviewableClaimedTopic.claimed_hash(reviewables.map { |r| r.topic_id }.uniq) diff --git a/app/controllers/topics_controller.rb b/app/controllers/topics_controller.rb index 971974e95de..e5989bc1396 100644 --- a/app/controllers/topics_controller.rb +++ b/app/controllers/topics_controller.rb @@ -449,7 +449,7 @@ class TopicsController < ApplicationController topic_status_update = topic.set_or_create_timer( status_type, params[:time], - options + **options ) if topic.save diff --git a/app/models/remote_theme.rb b/app/models/remote_theme.rb index c2cd50fbcff..e278da0ddb0 100644 --- a/app/models/remote_theme.rb +++ b/app/models/remote_theme.rb @@ -146,7 +146,7 @@ class RemoteTheme < ActiveRecord::Base importer.all_files.each do |filename| next unless opts = ThemeField.opts_from_file_path(filename) value = importer[filename] - updated_fields << theme.set_field(opts.merge(value: value)) + updated_fields << theme.set_field(**opts.merge(value: value)) end # Destroy fields that no longer exist in the remote theme diff --git a/lib/user_name_suggester.rb b/lib/user_name_suggester.rb index d849816cc91..2f7c7c920ab 100644 --- a/lib/user_name_suggester.rb +++ b/lib/user_name_suggester.rb @@ -11,7 +11,7 @@ module UserNameSuggester end def self.parse_name_from_email(name_or_email) - return name_or_email if name_or_email !~ User::EMAIL + return name_or_email if name_or_email.to_s !~ User::EMAIL # When 'walter@white.com' take 'walter' name = Regexp.last_match[1]