From 9f689c21a248d7d12883e8c4cf8ec91c85746326 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Sat, 22 Aug 2020 23:30:53 +0200 Subject: [PATCH 1/2] Rename filter method to filter_by Ruby 2.6 introduces `Enumerable#filter` as an alias to `Enumerable#select`, and so our Filterable.filter method will not work with Ruby 2.6. So we're renaming the method to `filter_by`, which is similar to `find_by`. We could also change the `filter` method so if a block is given it delegates to `Enumerable#filter`, the same way ActiveRecord handles the `select` method, but IMHO this is easier to follow. --- app/controllers/concerns/commentable_actions.rb | 2 +- app/models/budget/investment.rb | 2 +- app/models/concerns/filterable.rb | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/app/controllers/concerns/commentable_actions.rb b/app/controllers/concerns/commentable_actions.rb index 86f47b4d6..8b2a6d3bc 100644 --- a/app/controllers/concerns/commentable_actions.rb +++ b/app/controllers/concerns/commentable_actions.rb @@ -9,7 +9,7 @@ module CommentableActions @resources = @current_order == "recommendations" && current_user.present? ? @resources.recommendations(current_user) : @resources.for_render @resources = @resources.search(@search_terms) if @search_terms.present? - @resources = @advanced_search_terms.present? ? @resources.filter(@advanced_search_terms) : @resources + @resources = @advanced_search_terms.present? ? @resources.filter_by(@advanced_search_terms) : @resources @resources = @resources.page(params[:page]).send("sort_by_#{@current_order}") diff --git a/app/models/budget/investment.rb b/app/models/budget/investment.rb index 4adf23556..8258bcc6b 100644 --- a/app/models/budget/investment.rb +++ b/app/models/budget/investment.rb @@ -357,7 +357,7 @@ class Budget investments = investments.send(current_filter) if current_filter.present? investments = investments.by_heading(params[:heading_id]) if params[:heading_id].present? investments = investments.search(params[:search]) if params[:search].present? - investments = investments.filter(params[:advanced_search]) if params[:advanced_search].present? + investments = investments.filter_by(params[:advanced_search]) if params[:advanced_search].present? investments end diff --git a/app/models/concerns/filterable.rb b/app/models/concerns/filterable.rb index e25471c23..31d64ae89 100644 --- a/app/models/concerns/filterable.rb +++ b/app/models/concerns/filterable.rb @@ -7,7 +7,7 @@ module Filterable end class_methods do - def filter(params) + def filter_by(params) resources = all params.each do |filter, value| if allowed_filter?(filter, value) From 8e64d6c1a7975e1bc434e60bb2e8527e27c9a914 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Javi=20Mart=C3=ADn?= Date: Mon, 24 Aug 2020 10:41:03 +0200 Subject: [PATCH 2/2] Upgrade Ruby to 2.6.6 Note this version includes the Bundler gem, and so we no longer need to install it while deploying. --- .ruby-version | 2 +- README.md | 2 +- README_ES.md | 2 +- config/deploy.rb | 9 --------- 4 files changed, 3 insertions(+), 12 deletions(-) diff --git a/.ruby-version b/.ruby-version index ecd7ee50c..338a5b5d8 100644 --- a/.ruby-version +++ b/.ruby-version @@ -1 +1 @@ -2.5.8 +2.6.6 diff --git a/README.md b/README.md index 83bfa5ffa..450533f11 100644 --- a/README.md +++ b/README.md @@ -39,7 +39,7 @@ You can access the main website of the project at [http://consulproject.org](htt **NOTE**: For more detailed instructions check the [docs](https://docs.consulproject.org) -Prerequisites: install git, Ruby 2.5.8, `bundler` gem, Node.js and PostgreSQL (>=9.4). +Prerequisites: install git, Ruby 2.6.6, Node.js and PostgreSQL (>=9.4). ```bash git clone https://github.com/consul/consul.git diff --git a/README_ES.md b/README_ES.md index 0a7005e27..4dc398f6f 100644 --- a/README_ES.md +++ b/README_ES.md @@ -36,7 +36,7 @@ Puedes acceder a la página principal del proyecto en [http://consulproject.org] **NOTA**: para unas instrucciones más detalladas consulta la [documentación](https://docs.consulproject.org) -Prerequisitos: tener instalado git, Ruby 2.5.8, la gema `bundler`, Node.js y PostgreSQL (9.4 o superior). +Prerequisitos: tener instalado git, Ruby 2.6.6, Node.js y PostgreSQL (9.4 o superior). ```bash git clone https://github.com/consul/consul.git diff --git a/config/deploy.rb b/config/deploy.rb index febb23f50..0da9af9c5 100644 --- a/config/deploy.rb +++ b/config/deploy.rb @@ -50,7 +50,6 @@ namespace :deploy do after :updating, "rvm1:install:rvm" after :updating, "rvm1:install:ruby" - after :updating, "install_bundler_gem" after "deploy:migrate", "add_new_settings" @@ -70,14 +69,6 @@ namespace :deploy do end end -task :install_bundler_gem do - on roles(:app) do - within release_path do - execute :rvm, fetch(:rvm1_ruby_version), "do", "gem install bundler --version 1.17.1" - end - end -end - task :refresh_sitemap do on roles(:app) do within release_path do