How to properly define constants in helpers?

Let's say I have a helper module like this

module ThingsHelper   DEFAULT_OPTIONS = { ... }.freeze

  def my_helper(options = {})     options.reverse_merge!(DEFAULT_OPTIONS)     ...   end end

Then, in development environment, I get

.../app/helpers/things_helper.rb:2: warning: already initialized constant DEFAULT_OPTIONS

Is there anything I can do about this warning?

Michael

I think you are having the same problem as I at http://groups.google.com/group/rubyonrails-talk/browse_thread/thread/b2ff5ff2b9e009d7 . I bet your helper is getting included twice.

I'm not sure. I'm *never* including it explicitly. As it is a helper, it is loaded automatically.

However, there is one special thing. I'm defining the helper in question in an engine and to have it included automatically by helper :all, I add the path engine helper path in an initializer block of the engine

initializer 'make MyEngine helpers automatically loadable',     :before => "action_controller.set_configs" do |app|   paths.app.helpers.each do |path|     app.paths.app.helpers << path   end end

and unfortunately, that in some way appears to cause the warning.

Michael