diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index ffa5da70f..1d016aac0 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -3,7 +3,7 @@ stages: - lint tests: - image: "ruby:3.1.4" + image: "ruby:3.2.3" stage: test services: - postgres:10.10 @@ -35,7 +35,7 @@ tests: # PRONTO_GITLAB_API_PRIVATE_TOKEN to your repository CI/CD settings # giving it the value of the Personal Access Token linters: - image: "ruby:3.1.4" + image: "ruby:3.2.3" stage: lint cache: key: consul diff --git a/.rubocop.yml b/.rubocop.yml index f1fec2de0..b81f69685 100644 --- a/.rubocop.yml +++ b/.rubocop.yml @@ -647,6 +647,9 @@ Style/AccessorGrouping: Style/AndOr: Enabled: true +Style/ArgumentsForwarding: + Enabled: true + Style/ArrayCoercion: Enabled: true diff --git a/.ruby-version b/.ruby-version index 0aec50e6e..b347b11ea 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -3.1.4 +3.2.3 diff --git a/Dockerfile b/Dockerfile index 9431135cb..fa279fc11 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM ruby:3.1.4-bullseye +FROM ruby:3.2.3-bullseye ENV DEBIAN_FRONTEND noninteractive diff --git a/Gemfile.lock b/Gemfile.lock index 58b61de2b..f950e905d 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -777,4 +777,4 @@ DEPENDENCIES wkhtmltopdf-binary (~> 0.12.6) BUNDLED WITH - 2.3.26 + 2.4.19 diff --git a/README.md b/README.md index b05d9116f..ebafaf35d 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ You can access the main website of the project at [http://consuldemocracy.org](h **NOTE**: For more detailed instructions check the [docs](https://docs.consuldemocracy.org) -Prerequisites: install git, Ruby 3.1.4, CMake, pkg-config, shared-mime-info, Node.js 18.18.2 and PostgreSQL (>=9.5). +Prerequisites: install git, Ruby 3.2.3, CMake, pkg-config, shared-mime-info, Node.js 18.18.2 and PostgreSQL (>=9.5). ```bash git clone https://github.com/consuldemocracy/consuldemocracy.git diff --git a/README_ES.md b/README_ES.md index f89ae6b07..71b11dd6c 100644 --- a/README_ES.md +++ b/README_ES.md @@ -34,7 +34,7 @@ Puedes acceder a la página principal del proyecto en [http://consuldemocracy.or **NOTA**: para unas instrucciones más detalladas consulta la [documentación](https://docs.consuldemocracy.org) -Prerequisitos: tener instalado git, Ruby 3.1.4, CMake, pkg-config, shared-mime-info, Node.js 18.18.2 y PostgreSQL (9.5 o superior). +Prerequisitos: tener instalado git, Ruby 3.2.3, CMake, pkg-config, shared-mime-info, Node.js 18.18.2 y PostgreSQL (9.5 o superior). ```bash git clone https://github.com/consuldemocracy/consuldemocracy.git diff --git a/app/components/admin/budgets/actions_component.rb b/app/components/admin/budgets/actions_component.rb index 6637a1c5f..336878065 100644 --- a/app/components/admin/budgets/actions_component.rb +++ b/app/components/admin/budgets/actions_component.rb @@ -7,13 +7,8 @@ class Admin::Budgets::ActionsComponent < ApplicationComponent private - def action(action_name, **options) - render Admin::ActionComponent.new( - action_name, - budget, - "aria-describedby": true, - **options - ) + def action(action_name, **) + render Admin::ActionComponent.new(action_name, budget, "aria-describedby": true, **) end def actions diff --git a/app/components/admin/budgets/links_component.rb b/app/components/admin/budgets/links_component.rb index 15ae2e4ca..8ccdc6eb2 100644 --- a/app/components/admin/budgets/links_component.rb +++ b/app/components/admin/budgets/links_component.rb @@ -8,8 +8,8 @@ class Admin::Budgets::LinksComponent < ApplicationComponent private - def action(action_name, **options) - render Admin::ActionComponent.new(action_name, budget, **options) + def action(action_name, **) + render Admin::ActionComponent.new(action_name, budget, **) end def results_text diff --git a/app/components/admin/table_actions_component.rb b/app/components/admin/table_actions_component.rb index 46654e6b8..52d8c12be 100644 --- a/app/components/admin/table_actions_component.rb +++ b/app/components/admin/table_actions_component.rb @@ -6,8 +6,8 @@ class Admin::TableActionsComponent < ApplicationComponent @options = options end - def action(action_name, **args) - render Admin::ActionComponent.new(action_name, record, "aria-label": true, **args) + def action(action_name, **) + render Admin::ActionComponent.new(action_name, record, "aria-label": true, **) end private diff --git a/app/controllers/concerns/feature_flags.rb b/app/controllers/concerns/feature_flags.rb index 830b44f4b..998c07608 100644 --- a/app/controllers/concerns/feature_flags.rb +++ b/app/controllers/concerns/feature_flags.rb @@ -2,8 +2,8 @@ module FeatureFlags extend ActiveSupport::Concern class_methods do - def feature_flag(name, *options) - before_action(*options) do + def feature_flag(name, *) + before_action(*) do check_feature_flag(name) end end diff --git a/app/controllers/concerns/has_filters.rb b/app/controllers/concerns/has_filters.rb index 2072df3be..88054757c 100644 --- a/app/controllers/concerns/has_filters.rb +++ b/app/controllers/concerns/has_filters.rb @@ -7,8 +7,8 @@ module HasFilters end class_methods do - def has_filters(valid_filters, *args) - before_action(*args) do + def has_filters(valid_filters, *) + before_action(*) do @valid_filters = valid_filters.respond_to?(:call) ? valid_filters.call(self) : valid_filters @current_filter = @valid_filters.include?(params[:filter]) ? params[:filter] : @valid_filters.first end diff --git a/app/controllers/concerns/has_orders.rb b/app/controllers/concerns/has_orders.rb index cabd5ad79..478770ab9 100644 --- a/app/controllers/concerns/has_orders.rb +++ b/app/controllers/concerns/has_orders.rb @@ -7,8 +7,8 @@ module HasOrders end class_methods do - def has_orders(valid_orders, *args) - before_action(*args) do |c| + def has_orders(valid_orders, *) + before_action(*) do |c| @valid_orders = valid_orders.respond_to?(:call) ? valid_orders.call(c) : valid_orders.dup @valid_orders.delete("relevance") if params[:search].blank? @current_order = @valid_orders.include?(params[:order]) ? params[:order] : @valid_orders.first diff --git a/app/controllers/concerns/remotely_translatable.rb b/app/controllers/concerns/remotely_translatable.rb index 9c61b1ef2..8eadaf491 100644 --- a/app/controllers/concerns/remotely_translatable.rb +++ b/app/controllers/concerns/remotely_translatable.rb @@ -1,10 +1,10 @@ module RemotelyTranslatable private - def detect_remote_translations(*args) + def detect_remote_translations(*) return [] unless Setting["feature.remote_translations"].present? && api_key_has_been_set_in_secrets? - RemoteTranslation.for(*args) + RemoteTranslation.for(*) end def api_key_has_been_set_in_secrets? diff --git a/app/helpers/application_helper.rb b/app/helpers/application_helper.rb index 4c5ed1c23..eeaf6a7ff 100644 --- a/app/helpers/application_helper.rb +++ b/app/helpers/application_helper.rb @@ -10,8 +10,8 @@ module ApplicationHelper %i[ar fa he].include?(locale) end - def markdown(text, **render_options) - MarkdownConverter.new(text, **render_options).render + def markdown(...) + MarkdownConverter.new(...).render end def wysiwyg(text) diff --git a/app/helpers/link_list_helper.rb b/app/helpers/link_list_helper.rb index 0850138fa..8582cdbe0 100644 --- a/app/helpers/link_list_helper.rb +++ b/app/helpers/link_list_helper.rb @@ -1,5 +1,5 @@ module LinkListHelper - def link_list(*links, **options) - render Shared::LinkListComponent.new(*links, **options) + def link_list(...) + render Shared::LinkListComponent.new(...) end end diff --git a/app/models/remote_translation.rb b/app/models/remote_translation.rb index 10dd58a92..9ac4c2f9f 100644 --- a/app/models/remote_translation.rb +++ b/app/models/remote_translation.rb @@ -12,8 +12,8 @@ class RemoteTranslation < ApplicationRecord RemoteTranslations::Caller.new(self).delay.call end - def self.for(*args) - resources_groups(*args).flatten.select { |resource| translation_empty?(resource) }.map do |resource| + def self.for(*) + resources_groups(*).flatten.select { |resource| translation_empty?(resource) }.map do |resource| new(remote_translatable: resource, locale: I18n.locale) end end diff --git a/app/models/user.rb b/app/models/user.rb index d9fc28938..e25162a43 100644 --- a/app/models/user.rb +++ b/app/models/user.rb @@ -409,8 +409,8 @@ class User < ApplicationRecord followables.compact.map { |followable| followable.tags.map(&:name) }.flatten.compact.uniq end - def send_devise_notification(notification, *args) - devise_mailer.send(notification, self, *args).deliver_later + def send_devise_notification(notification, *) + devise_mailer.send(notification, self, *).deliver_later end def add_subscriptions_token