summaryrefslogtreecommitdiff
path: root/config
diff options
context:
space:
mode:
authorerdgeist <erdgeist@erdgeist.org>2026-06-26 01:59:57 +0200
committererdgeist <erdgeist@erdgeist.org>2026-06-26 01:59:57 +0200
commitc06723ee715512c2033c7786c48f15674585b56b (patch)
tree46d074bde9a4fc61f0a76cbc601007ed4412ec61 /config
parent0818a3057b0a91e422158d828026c941b4e10622 (diff)
Stage 4: Rails 5.2 -> 6.1 on Ruby 2.7.2
- routing-filter 0.6.3 -> 0.7.0 (Rails 6.1 compatibility) - RSS named routes rss_xml/rss_rdf added - RouteWithParams workarounds: will_paginate_patch, content_path shim, safe_path helper - Paperclip removed, replaced with FileAttachment concern (preserves URL scheme) - Assets resource moved to /admin/assets (Sprockets middleware conflict) - ApplicationRecord base class added, all models migrated - Strong parameters added to Assets, Occurrences, Events, MenuItems controllers - update_attributes -> update throughout - render :nothing -> head :ok/:not_found throughout - language_selector rewritten (removes :overwrite_params) - Environment files updated for Rails 6.1 (eager_load, public_file_server, ActionMailer) - Arel::Visitors::DepthFirst and Integer/Float duration patches removed from test_helper - AssetsController tests added (10 tests covering upload, variants, destroy, auth) - ImageMagick geometry: 460x250! for headline crop (not # which is invalid in IM6) 129 runs, 311 assertions, 5 failures (all pre-existing), 0 errors
Diffstat (limited to 'config')
-rw-r--r--config/environments/development.rb7
-rw-r--r--config/environments/production.rb14
-rw-r--r--config/environments/test.rb7
-rw-r--r--config/initializers/arel_patch.rb12
-rw-r--r--config/initializers/will_paginate_patch.rb13
-rw-r--r--config/routes.rb11
6 files changed, 35 insertions, 29 deletions
diff --git a/config/environments/development.rb b/config/environments/development.rb
index 3813cab..8e2e7ef 100644
--- a/config/environments/development.rb
+++ b/config/environments/development.rb
@@ -7,7 +7,6 @@ Cccms::Application.configure do
7 config.cache_classes = false 7 config.cache_classes = false
8 8
9 # Log error messages when you accidentally call methods on nil. 9 # Log error messages when you accidentally call methods on nil.
10 config.whiny_nils = true
11 10
12 # Show full error reports and disable caching 11 # Show full error reports and disable caching
13 config.action_controller.consider_all_requests_local = true 12 config.action_controller.consider_all_requests_local = true
@@ -17,6 +16,10 @@ Cccms::Application.configure do
17 config.action_mailer.raise_delivery_errors = false 16 config.action_mailer.raise_delivery_errors = false
18 17
19 config.active_support.deprecation = :log 18 config.active_support.deprecation = :log
20 config.serve_static_files = true 19 config.public_file_server.enabled = true
21 config.eager_load = false 20 config.eager_load = false
21
22 config.hosts.clear
23
24 config.middleware.delete ExceptionNotification::Rack
22end 25end
diff --git a/config/environments/production.rb b/config/environments/production.rb
index 6f2c5bd..82b918a 100644
--- a/config/environments/production.rb
+++ b/config/environments/production.rb
@@ -13,7 +13,7 @@ Cccms::Application.configure do
13 config.log_level = :info 13 config.log_level = :info
14 14
15 config.active_support.deprecation = :notify 15 config.active_support.deprecation = :notify
16 config.eager_load = false 16 config.eager_load = true
17 17
18 # Use a different logger for distributed setups 18 # Use a different logger for distributed setups
19 # config.logger = SyslogLogger.new 19 # config.logger = SyslogLogger.new
@@ -30,11 +30,11 @@ Cccms::Application.configure do
30 # Enable threaded mode 30 # Enable threaded mode
31 # config.threadsafe! 31 # config.threadsafe!
32 32
33 ActionMailer::Base.delivery_method = :sendmail 33 config.action_mailer.delivery_method = :sendmail
34 ActionMailer::Base.sendmail_settings = { 34 config.action_mailer.sendmail_settings = {
35 :location => '/usr/sbin/sendmail', 35 location: '/usr/sbin/sendmail',
36 :arguments => '-i -t' 36 arguments: '-i -t'
37 } 37 }
38 ActionMailer::Base.perform_deliveries = true 38 config.action_mailer.perform_deliveries = true
39 ActionMailer::Base.raise_delivery_errors = true 39 config.action_mailer.raise_delivery_errors = true
40end 40end
diff --git a/config/environments/test.rb b/config/environments/test.rb
index 858bebb..a23c6d4 100644
--- a/config/environments/test.rb
+++ b/config/environments/test.rb
@@ -2,9 +2,6 @@ Cccms::Application.configure do
2 2
3 config.cache_classes = true 3 config.cache_classes = true
4 4
5 # Log error messages when you accidentally call methods on nil.
6 # config.whiny_nils = true # removed in Rails 4
7
8 config.action_controller.consider_all_requests_local = true 5 config.action_controller.consider_all_requests_local = true
9 config.action_controller.perform_caching = false 6 config.action_controller.perform_caching = false
10 7
@@ -16,7 +13,7 @@ Cccms::Application.configure do
16 config.active_support.test_order = :sorted 13 config.active_support.test_order = :sorted
17 14
18 config.eager_load = false 15 config.eager_load = false
19 config.serve_static_files = true 16 config.public_file_server.enabled = true
20 config.static_cache_control = "public, max-age=3600" 17 config.public_file_server.headers = { 'Cache-Control' => 'public, max-age=3600' }
21 config.assets.compile = true 18 config.assets.compile = true
22end 19end
diff --git a/config/initializers/arel_patch.rb b/config/initializers/arel_patch.rb
deleted file mode 100644
index 753a72b..0000000
--- a/config/initializers/arel_patch.rb
+++ /dev/null
@@ -1,12 +0,0 @@
1require 'arel'
2module Arel
3 module Visitors
4 [ToSql, DepthFirst].each do |visitor|
5 visitor.class_eval do
6 def visit_Integer(o, collector = nil)
7 collector ? collector << o.to_s : o.to_s
8 end
9 end
10 end
11 end
12end
diff --git a/config/initializers/will_paginate_patch.rb b/config/initializers/will_paginate_patch.rb
new file mode 100644
index 0000000..d03c882
--- /dev/null
+++ b/config/initializers/will_paginate_patch.rb
@@ -0,0 +1,13 @@
1require 'will_paginate/view_helpers/action_view'
2
3WillPaginate::ActionView::LinkRenderer.class_eval do
4 def url(page)
5 path = @template.request.path
6 page_param = WillPaginate::PageNumber(page)
7 if page_param == 1
8 path
9 else
10 "#{path}?#{@options[:param_name]}=#{page}"
11 end
12 end
13end
diff --git a/config/routes.rb b/config/routes.rb
index 4a440c1..c3fd5c6 100644
--- a/config/routes.rb
+++ b/config/routes.rb
@@ -3,7 +3,6 @@ Cccms::Application.routes.draw do
3 3
4 root :to => 'content#render_page', :page_path => ['home'], :locale => 'de' 4 root :to => 'content#render_page', :page_path => ['home'], :locale => 'de'
5 5
6 resources :assets
7 resources :tags 6 resources :tags
8 resources :occurrences 7 resources :occurrences
9 resources :events 8 resources :events
@@ -31,6 +30,10 @@ Cccms::Application.routes.draw do
31 end 30 end
32 end 31 end
33 32
33 scope '/admin' do
34 resources :assets
35 end
36
34 match '/logout' => 'sessions#destroy', :as => :logout, :via => :delete 37 match '/logout' => 'sessions#destroy', :as => :logout, :via => :delete
35 match '/login' => 'sessions#new', :as => :login, :via => :get 38 match '/login' => 'sessions#new', :as => :login, :via => :get
36 match 'admin' => 'admin#index', :as => :admin, :via => :get 39 match 'admin' => 'admin#index', :as => :admin, :via => :get
@@ -47,8 +50,10 @@ Cccms::Application.routes.draw do
47 50
48 resource :session 51 resource :session
49 52
50 match 'rss/:action' => 'rss#index', :as => :rss, :via => [:get, :post] 53 get 'rss/updates', :to => 'rss#updates', :as => :rss
51 match 'rss/:action.:format' => 'rss#index', :via => [:get, :post] 54 get 'rss/updates.:format', :to => 'rss#updates', :as => :rss_feed,
55 :constraints => { :format => /xml|rdf/ }
56 get 'rss/recent_changes', :to => 'rss#recent_changes'
52 57
53 match 'galleries/*page_path' => 'content#render_gallery', :via => :get 58 match 'galleries/*page_path' => 'content#render_gallery', :via => :get
54 match '/*page_path' => 'content#render_page', :as => :content, :via => :get 59 match '/*page_path' => 'content#render_page', :as => :content, :via => :get