Reject plugin same ID with registered one
|Target version:||Candidate for next major release|
Redmine can register plugin same ID with registered one.
Currently, below problems exist.
- @registered_plugins[id] is overwritten.
- /admin/plugins shows only one plugin
- but load_path, view_path, ... are changed
I want to reject and log warning second or later plugins.
functional/settings_controller_test.rb was already registered foo plugin twice. I cleared on teardown to pass unit test.
This ticket related to #27705.
- Category changed from Plugin Request to Plugin API
- Target version set to Candidate for next major release
We see the following error when plugin IDs conflict. It is difficult to debug. I think the patch helps to find the cause of such problems.
$ bundle exec rails c /path/to/redmine/lib/redmine/menu_manager.rb:370:in `add_at': Child already added (RuntimeError) from /path/to/redmine/lib/redmine/menu_manager.rb:387:in `add' from /path/to/redmine/lib/redmine/menu_manager.rb:305:in `push' ...