Hi all,
I'm using a Pistonized Rails export from the 1.2 branch. I just updated to r6651 and got the new implementation. Running functional and integration tests reveals nothing, as well as running under Mongrel in development mode.
After deploying to a staging server (in production mode), I get the following failure:
ActionController::ActionControllerError in PartiesController#index
filter #<ActionController::Filters::ClassMethods::BeforeFilterProxy:0xb60ee668 @filter=#<ActionController::Filters::ClassMethods::SymbolFilter:0xb60ee6cc @filter=:login_from_cookie>> was in the wrong place!
RAILS_ROOT: /usr/local/www/xlsuite.com/config/.. Application Trace | Framework Trace | Full Trace
/usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/filters.rb:729:in `call_filters' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/filters.rb:675:in `perform_action_without_benchmark' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/rescue.rb:83:in `perform_action' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/base.rb:430:in `send' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/base.rb:430:in `process_without_filters' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/filters.rb:680:in `process_without_session_management_support' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/session_management.rb:114:in `process' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/base.rb:330:in `process' /usr/local/www/xlsuite.com/vendor/rails/railties/lib/dispatcher.rb:41:in `dispatch' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:78:in `process' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:76:in `synchronize' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/rails.rb:76:in `process' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:618:in `process_client' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:617:in `each' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:617:in `process_client' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `initialize' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `new' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:736:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:720:in `initialize' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:720:in `new' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel.rb:720:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:271:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:270:in `each' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/configurator.rb:270:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:127:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/lib/mongrel/command.rb:211:in `run' /usr/lib/ruby/gems/1.8/gems/mongrel-1.0.1/bin/mongrel_rails:243
/usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/filters.rb:729:in `call_filters' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/filters.rb:675:in `perform_action_without_benchmark' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/lib/ruby/1.8/benchmark.rb:293:in `measure' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/benchmarking.rb:66:in `perform_action_without_rescue' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/rescue.rb:83:in `perform_action' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/base.rb:430:in `send' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/base.rb:430:in `process_without_filters' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/filters.rb:680:in `process_without_session_management_support' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/session_management.rb:114:in `process' /usr/local/www/xlsuite.com/vendor/rails/actionpack/lib/action_controller/base.rb:330:in `process' /usr/local/www/xlsuite.com/vendor/rails/railties/lib/dispatcher.rb:41:in `dispatch'
I looked at the code, and it seems the filter isn't put in the right spot ? The chain of events is:
class ApplicationController include XlSuite::AuthenticatedSystem end
class XlSuite::AuthenticatedSystem def self.included(base) base.before_filter :login_from_cookie end end
I received a similar failure for another filter that is added using prepend_before_filter.
Any change I did something wrong ?
Thanks !