zulip / zulip-redmine-plugin

Redmine plugin for Zulip notifications on issue tracker changes
Apache License 2.0
12 stars 17 forks source link

Cannot define multiple 'included' blocks for a Concern (ActiveSupport::Concern::MultipleIncludedBlocks) #22

Closed hi-ko closed 5 years ago

hi-ko commented 5 years ago

On Ubuntu 18 with with Redmine 4.0.4.stable.18593 I'm not able to start redmine with the plugin v.3.0 installed. Any idea?

[ 2019-10-14 20:00:05.3259 30230/7f56ecc07700 age/Cor/App/Implementation.cpp:304 ]: Could not spawn process for application /opt/redmine: An error occurred while starting up the preloader.
  Error ID: 1e527614
  Error details saved to: /tmp/passenger-error-yZ0nMR.html
  Message from application: Cannot define multiple 'included' blocks for a Concern (ActiveSupport::Concern::MultipleIncludedBlocks)
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/concern.rb:130:in `included'
  /opt/redmine/plugins/redmine_zulip/lib/redmine_zulip/issue_patch.rb:7:in `<module:IssuePatch>'
  /opt/redmine/plugins/redmine_zulip/lib/redmine_zulip/issue_patch.rb:2:in `<module:RedmineZulip>'
  /opt/redmine/plugins/redmine_zulip/lib/redmine_zulip/issue_patch.rb:1:in `<top (required)>'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `require'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `block in require'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:257:in `load_dependency'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:291:in `require'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:378:in `block in require_or_load'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:37:in `block in load_interlock'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies/interlock.rb:14:in `block in loading'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/concurrency/share_lock.rb:151:in `exclusive'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies/interlock.rb:13:in `loading'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:37:in `load_interlock'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:356:in `require_or_load'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:334:in `depend_on'
  /var/lib/gems/2.5.0/gems/activesupport-5.2.3/lib/active_support/dependencies.rb:246:in `require_dependency'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/engine.rb:478:in `block (2 levels) in eager_load!'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/engine.rb:477:in `each'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/engine.rb:477:in `block in eager_load!'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/engine.rb:475:in `each'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/engine.rb:475:in `eager_load!'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/engine.rb:356:in `eager_load!'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/application/finisher.rb:69:in `each'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/application/finisher.rb:69:in `block in <module:Finisher>'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/initializable.rb:32:in `instance_exec'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/initializable.rb:32:in `run'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/initializable.rb:61:in `block in run_initializers'
  /usr/lib/ruby/2.5.0/tsort.rb:228:in `block in tsort_each'
  /usr/lib/ruby/2.5.0/tsort.rb:350:in `block (2 levels) in each_strongly_connected_component'
  /usr/lib/ruby/2.5.0/tsort.rb:431:in `each_strongly_connected_component_from'
  /usr/lib/ruby/2.5.0/tsort.rb:349:in `block in each_strongly_connected_component'
  /usr/lib/ruby/2.5.0/tsort.rb:347:in `each'
  /usr/lib/ruby/2.5.0/tsort.rb:347:in `call'
  /usr/lib/ruby/2.5.0/tsort.rb:347:in `each_strongly_connected_component'
  /usr/lib/ruby/2.5.0/tsort.rb:226:in `tsort_each'
  /usr/lib/ruby/2.5.0/tsort.rb:205:in `tsort_each'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/initializable.rb:60:in `run_initializers'
  /var/lib/gems/2.5.0/gems/railties-5.2.3/lib/rails/application.rb:361:in `initialize!'
  /opt/redmine/config/environment.rb:14:in `<top (required)>'
  config.ru:3:in `require'
  config.ru:3:in `block in <main>'
  /var/lib/gems/2.5.0/gems/rack-2.0.7/lib/rack/builder.rb:55:in `instance_eval'
  /var/lib/gems/2.5.0/gems/rack-2.0.7/lib/rack/builder.rb:55:in `initialize'
  config.ru:1:in `new'
  config.ru:1:in `<main>'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:110:in `eval'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:110:in `preload_app'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:156:in `<module:App>'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:30:in `<module:PhusionPassenger>'
  /usr/share/passenger/helper-scripts/rack-preloader.rb:29:in `<main>'
hi-ko commented 5 years ago

Finally I got it running: the module doesn't work with symlinks. This is the only plugin we use having an issue with symlinks. I tried relative, absolute but only when saving the plugin in the real path inside redmine home the system starts. Maybe this could be fixed? Thanks for reading.

batistadasilva commented 5 years ago

@hi-ko thanks for the feedback, this could definitely be fixes

could you give me an exemple of another Redmine plugin you are using which works fine with symlinks? I'd want to take a look at their code to see how they handle this

hi-ko commented 5 years ago

@felipebatista thanks for taking care. We use e.g.

Unfortuntaley I don't speak ruby - so I'm not really a valuabe assistant. The error is similar if redmine runtime user has no write access to the module dir although read access should be sufficient.

batistadasilva commented 5 years ago

hello @hi-ko, please try the new unreleased versions 2.1-alpha1 or 3.1-alpha1

thank you!

hi-ko commented 5 years ago

great - works as expected:

thanks!