Project

General

Profile

Feature #5084

upgrade to more actively maintained version of redmine

Added by laforge about 1 month ago. Updated about 1 month ago.

Status:
Stalled
Priority:
Normal
Assignee:
Category:
redmine
Target version:
-
Start date:
03/20/2021
Due date:
% Done:

60%

Spec Reference:

Description

we're still using redmine 3.4.x - while it has not officially been discontinued, there have not been any releases since 2019 (!).

Let's try to switch to the latest version (4.1.x) in the near future.

History

#1 Updated by laforge about 1 month ago

  • % Done changed from 0 to 10

I gave it a try. Most plugins could be upgraded, however the redmine_openid_provider plugin has not been ported to a modern rails-5.x yet, and it fails.

redmine-test_1       | [ E 2021-03-20 19:18:02.0771 39/T8 age/Cor/Con/CheckoutSession.cpp:276 ]: [Client 1-1] Cannot checkout session because a spawning error occurred. The identifier of the error is 1d7fe228. Please see earlier logs for details about the error.
redmine-test_1       | App 142 output: I, [2021-03-20T19:18:29.642060 #142]  INFO -- : Starting wiki_graphviz_plugin for Redmine
redmine-test_1       | App 142 output: I, [2021-03-20T19:18:29.642660 #142]  INFO -- : Starting wiki_mscgen_plugin for Redmine
redmine-test_1       | App 142 output: W, [2021-03-20T19:18:29.760832 #142]  WARN -- : Creating scope :system. Overwriting existing method Enumeration.system.
redmine-test_1       | App 142 output: W, [2021-03-20T19:18:29.770735 #142]  WARN -- : Creating scope :sorted. Overwriting existing method Group.sorted.
redmine-test_1       | App 142 output: W, [2021-03-20T19:18:29.775510 #142]  WARN -- : Creating scope :sorted. Overwriting existing method User.sorted.
redmine-test_1       | App 142 output: Error: The application encountered the following error: undefined method `before_filter' for OpenIdProviderController:Class
redmine-test_1       | App 142 output: Did you mean?  before_action (NoMethodError)
redmine-test_1       | App 142 output:     /usr/src/redmine/plugins/redmine_openid_provider/app/controllers/open_id_provider_controller.rb:16:in `<class:OpenIdProviderController>'
redmine-test_1       | App 142 output:     /usr/src/redmine/plugins/redmine_openid_provider/app/controllers/open_id_provider_controller.rb:9:in `<top (required)>'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:291:in `require'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:291:in `block in require'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:257:in `load_dependency'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:291:in `require'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:378:in `block in require_or_load'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:37:in `block in load_interlock'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies/interlock.rb:14:in `block in loading'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/concurrency/share_lock.rb:151:in `exclusive'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies/interlock.rb:13:in `loading'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:37:in `load_interlock'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:356:in `require_or_load'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:334:in `depend_on'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/activesupport-5.2.4.2/lib/active_support/dependencies.rb:246:in `require_dependency'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/engine.rb:478:in `block (2 levels) in eager_load!'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/engine.rb:477:in `each'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/engine.rb:477:in `block in eager_load!'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/engine.rb:475:in `each'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/engine.rb:475:in `eager_load!'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/engine.rb:356:in `eager_load!'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/application/finisher.rb:69:in `each'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/application/finisher.rb:69:in `block in <module:Finisher>'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/initializable.rb:32:in `instance_exec'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/initializable.rb:32:in `run'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/initializable.rb:61:in `block in run_initializers'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:228:in `block in tsort_each'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:431:in `each_strongly_connected_component_from'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:349:in `block in each_strongly_connected_component'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:347:in `each'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:347:in `call'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:347:in `each_strongly_connected_component'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:226:in `tsort_each'
redmine-test_1       | App 142 output:     /usr/local/lib/ruby/2.6.0/tsort.rb:205:in `tsort_each'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/initializable.rb:60:in `run_initializers'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/railties-5.2.4.2/lib/rails/application.rb:361:in `initialize!'
redmine-test_1       | App 142 output:     /usr/src/redmine/config/environment.rb:16:in `<top (required)>'
redmine-test_1       | App 142 output:     config.ru:3:in `require'
redmine-test_1       | App 142 output:     config.ru:3:in `block in <main>'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/rack-2.2.3/lib/rack/builder.rb:125:in `instance_eval'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/rack-2.2.3/lib/rack/builder.rb:125:in `initialize'
redmine-test_1       | App 142 output:     config.ru:1:in `new'
redmine-test_1       | App 142 output:     config.ru:1:in `<main>'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/passenger-6.0.7/src/helper-scripts/rack-preloader.rb:101:in `eval'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/passenger-6.0.7/src/helper-scripts/rack-preloader.rb:101:in `preload_app'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/passenger-6.0.7/src/helper-scripts/rack-preloader.rb:189:in `block in <module:App>'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/passenger-6.0.7/src/ruby_supportlib/phusion_passenger/loader_shared_helpers.rb:382:in `run_block_and_record_step_progress'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/passenger-6.0.7/src/helper-scripts/rack-preloader.rb:188:in `<module:App>'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/passenger-6.0.7/src/helper-scripts/rack-preloader.rb:30:in `<module:PhusionPassenger>'
redmine-test_1       | App 142 output:     /usr/local/bundle/gems/passenger-6.0.7/src/helper-scripts/rack-preloader.rb:29:in `<main>'
redmine-test_1       | [ E 2021-03-20 19:18:30.3968 39/T1c age/Cor/App/Implementation.cpp:221 ]: Could not spawn process for application /usr/src/redmine: The application encountered the following error: undefined method `before_filter' for OpenIdProviderController:Class
redmine-test_1       | Did you mean?  before_action (NoMethodError)
redmine-test_1       |   Error ID: 0000ce64
redmine-test_1       |   Error details saved to: /tmp/passenger-error-Dr00bX.html

Trying to find somebody who can help: https://twitter.com/LaF0rge/status/1373354881436807169

#2 Updated by laforge about 1 month ago

  • % Done changed from 10 to 50

aside from the openid provider plugin everything else seems working now. the mscgen plugin had to be trivially ported, but even I with zero rails knowledge could do it.

#3 Updated by laforge about 1 month ago

  • % Done changed from 50 to 60

This trivial change https://github.com/osmocom/redmine_openid_provider/commit/b639ba42b89562a71f5996380727a27466b04e43 avoids the exception in the openid provider. Not sure if it will actually work?

#4 Updated by laforge about 1 month ago

laforge wrote:

This trivial change https://github.com/osmocom/redmine_openid_provider/commit/b639ba42b89562a71f5996380727a27466b04e43 avoids the exception in the openid provider. Not sure if it will actually work?

It doesn't; there's a '500 internal server error' on the first openid authentication attempt :(

App 192 output: I, [2021-03-20T20:29:28.512201 #192]  INFO -- : Started POST "/openid" for 91.58.183.151 at 2021-03-20 20:29:28 +0000
App 192 output: I, [2021-03-20T20:29:28.513087 #192]  INFO -- : Processing by OpenIdProviderController#checkid_setup as HTML
App 192 output: I, [2021-03-20T20:29:28.513170 #192]  INFO -- :   Parameters: {"openid.ns"=>"http://specs.openid.net/auth/2.0", "openid.claimed_id"=>"http://specs.openid.net/auth/2.0/identi
fier_select", "openid.identity"=>"http://specs.openid.net/auth/2.0/identifier_select", "openid.return_to"=>"https://gerrit.osmocom.org/OpenID?gerrit.mode=SIGN_IN&gerrit.token=q%2Fstatus%3Ao
pen%2B-is%3Awip", "openid.realm"=>"https://gerrit.osmocom.org/", "openid.assoc_handle"=>"{HMAC-SHA256}{FOO}{bar}", "openid.mode"=>"checkid_setup", "openid.ns.sreg"=>"http://openid
.net/sreg/1.0", "openid.sreg.required"=>"fullname,email", "openid.ns.ext2"=>"http://openid.net/srv/ax/1.0", "openid.ext2.mode"=>"fetch_request", "openid.ext2.type.FirstName"=>"http://schema
.openid.net/namePerson/first", "openid.ext2.type.LastName"=>"http://schema.openid.net/namePerson/last", "openid.ext2.type.Email"=>"http://schema.openid.net/contact/email", "openid.ext2.requ
ired"=>"FirstName,LastName,Email"}
App 192 output: I, [2021-03-20T20:29:28.522060 #192]  INFO -- :   Current user: laforge (id=7)
App 192 output: I, [2021-03-20T20:29:28.523932 #192]  INFO -- : Completed 500 Internal Server Error in 11ms (ActiveRecord: 6.7ms)
App 192 output: F, [2021-03-20T20:29:28.524393 #192] FATAL -- :   
App 192 output: F, [2021-03-20T20:29:28.524462 #192] FATAL -- : NoMethodError (undefined method `length' for #<ActionController::Parameters:0x00007f3a14e70608>):
App 192 output: F, [2021-03-20T20:29:28.524480 #192] FATAL -- :   
App 192 output: F, [2021-03-20T20:29:28.524493 #192] FATAL -- : plugins/redmine_openid_provider/app/controllers/open_id_provider_controller.rb:28:in `checkid_setup'
App 192 output: lib/redmine/sudo_mode.rb:65:in `sudo_mode'

#5 Updated by laforge about 1 month ago

successful case with 3.4 looks like this:

App 228 output: I, [2021-03-20T20:43:43.640010 #228]  INFO -- : Started POST "/openid" for 91.58.183.151 at 2021-03-20 20:43:43 +0000
App 228 output: I, [2021-03-20T20:43:43.640975 #228]  INFO -- : Processing by OpenIdProviderController#checkid_setup as HTML
App 228 output: I, [2021-03-20T20:43:43.641042 #228]  INFO -- :   Parameters: {"openid.ns"=>"http://specs.openid.net/auth/2.0", "openid.claimed_id"=>"http://specs.openid.net/auth/2.0/identifier_select", "openid.identity"=>"http://specs.openid.net/auth/2.0/identifier_select", "openid.return_to"=>"https://gerrit.osmocom.org/OpenID?gerrit.mode=SIGN_IN&gerrit.token=q%2Fstatus%3Aopen%2B-is%3Awip", "openid.realm"=>"https://gerrit.osmocom.org/", "openid.assoc_handle"=>"{HMAC-SHA256}{FOO}{bar}", "openid.mode"=>"checkid_setup", "openid.ns.sreg"=>"http://openid.net/sreg/1.0", "openid.sreg.required"=>"fullname,email", "openid.ns.ext2"=>"http://openid.net/srv/ax/1.0", "openid.ext2.mode"=>"fetch_request", "openid.ext2.type.FirstName"=>"http://schema.openid.net/namePerson/first", "openid.ext2.type.LastName"=>"http://schema.openid.net/namePerson/last", "openid.ext2.type.Email"=>"http://schema.openid.net/contact/email", "openid.ext2.required"=>"FirstName,LastName,Email"}
App 228 output: I, [2021-03-20T20:43:43.648085 #228]  INFO -- :   Current user: laforge (id=7)
App 228 output: I, [2021-03-20T20:43:43.650968 #228]  INFO -- :   Rendered plugins/redmine_openid_provider/app/views/open_id_provider/confirm.html.erb within layouts/base (0.8ms)
App 228 output: I, [2021-03-20T20:43:43.653375 #228]  INFO -- :   Rendered plugins/clipboard_image_paste/app/views/clipboard_image_paste/_headers.html.erb (0.3ms)
App 228 output: I, [2021-03-20T20:43:43.653704 #228]  INFO -- :   Rendered plugins/redmine_tags/app/views/tags/_header_assets.html.erb (0.2ms)
App 228 output: I, [2021-03-20T20:43:43.667147 #228]  INFO -- :   Rendered plugins/redmine_banner/app/views/banner/_project_body_bottom.html.erb (0.0ms)
App 228 output: I, [2021-03-20T20:43:43.668267 #228]  INFO -- :   Rendered plugins/clipboard_image_paste/app/views/clipboard_image_paste/_add_form.html.erb (1.0ms)
App 228 output: I, [2021-03-20T20:43:43.668369 #228]  INFO -- : Completed 200 OK in 27ms (Views: 18.9ms | ActiveRecord: 5.3ms)

#6 Updated by laforge about 1 month ago

  • Status changed from New to Stalled

Also available in: Atom PDF

Add picture from clipboard (Maximum size: 48.8 MB)