Redmine Contracts with Time Tracking with Rails 5.1.6 and Redmine 3.1.4
I'm trying to install the plugin "Redmine Contracts with Time Tracking" but I have some struggles.
Here are my informations:
- Ruby 2.5.1p57
- Rails 5.1.6
- Ubuntu 16.04 Xenial
- Database used: MySQL 14.14
The author details the installation steps as follow:
Option 1 - Download zip
- For Redmine 3 download the zip https://github.com/upgradeya/redmine-contracts-with-time-tracking-plugin/archive/master.zip
- For Redmine 2 download this zip https://github.com/upgradeya/redmine-contracts-with-time-tracking-plugin/archive/v1.3.1.zip
- Unzip the redmine-contracts-with-time-tracking-plugin-master folder, rename it to contracts, and place it in the redmine plugins folder.
- run 'rake redmine:plugins:migrate RAILS_ENV=production' from your redmine root directory
Following those steps, I encountered a first problem when I ran the rake redmine:plugins.. command:
NoMethodError: undefined method `to_prepare' for ActionDispatch::Callbacks:Class
I found a solution with this link: https://github.com/ruby-grape/grape/issues/1666
"Rails 5.1 removed ActionDispatch::Callbacks#to_prepare (see rails/rails@3f2b7d6); so the issue lies in your reload_api.rb initializer. Replacing it with ActiveSupport::Reloader.to_prepare should fix the issue."
Then ran the rake command again, and this time the error that appears is:
NoMethodError: undefined method `after_filter' for TimelogController:Class
Did you mean? after_action
/home/mathieu/code/redmine-test/plugins/contracts/lib/contracts/patches/timelog_controller_patch.rb:8:in `block in included'
/home/mathieu/code/redmine-test/plugins/contracts/init.rb:42:in `block in <top (required)>'
/home/mathieu/code/redmine-test/config/environment.rb:14:in `<top (required)>'
Tasks: TOP => redmine:plugins:migrate => environment
(See full trace by running task with --trace)
Any idea how to get over this? And if someone had already seen these errors installing this plugin, what else did you have to modify?
Thanks for your help.
RE: Redmine Contracts with Time Tracking with Rails 5.1.6 and Redmine 3.1.4 - Added by Mathieu f over 2 years ago
Hi,found the problem.
Modify after_filter by after_action (after_filter not supported on RoR 5.1.x).