Lighthouse has a new layout. Prefer the old one? Return to the old layout, and switch back any time from the link at the top of each page.

This project is archived and is in readonly mode.

config.load_paths should also be frozen

#728

On Rails::Initializer, configuration.load_once_paths is frozen but config.load_paths is not.

We need to freeze them so future modifications will fail rather than do nothing mysteriously. For example, I was changing the variable on my environment/development.rb and the path I was setting was never loaded.

To fix, just add the line:

configuration.load_paths.freeze

To railties/lib/initializer.rb, method set_autoload_paths, around line 214.

So we will have:

def set_autoload_paths

Dependencies.load_paths = configuration.load_paths.uniq

Dependencies.load_once_paths = configuration.load_once_paths.uniq

extra = Dependencies.load_once_paths - Dependencies.load_paths

unless extra.empty?

abort <

load_once_paths must be a subset of the load_paths.

Extra items in load_once_paths: #{extra * ','}

end_error

end

configuration.load_once_paths.freeze

end

Reported by José Valim · July 30th, 2008 @ 03:46 PM

State: resolved
Milestone: 2.x
Assigned to: nobody
Importance: none

Activity

  1. José Valim
    José Valim

    Ops:

      def set_autoload_paths
        Dependencies.load_paths = configuration.load_paths.uniq
        Dependencies.load_once_paths = configuration.load_once_paths.uniq
    
        extra = Dependencies.load_once_paths - Dependencies.load_paths
        unless extra.empty?
          abort <<-end_error
            load_once_paths must be a subset of the load_paths.
            Extra items in load_once_paths: #{extra * ','}
          end_error
        end
    
        # Freeze the arrays so future modifications will fail rather than do nothing mysteriously
        configuration.load_paths.freeze
        configuration.load_once_paths.freeze
      end
    

    July 30th, 2008 @ 03:47 PM

  2. Repository
    Repository
    • State changed from new to resolved

    (from [2dcdcf1552748f331bf6f6194ffddabd837bcac9]) config.load_paths should be frozen [#728 config.load_paths should also be frozen state:resolved] http://github.com/rails/rails/co...

    October 30th, 2008 @ 08:52 PM

  3. Repository
    Repository

    (from [fc215de52fe1967bb00b5500c3d0dd2ad55880ac]) Revert "config.load_paths should be frozen [#728 config.load_paths should also be frozen state:resolved]"

    This reverts commit 2dcdcf1552748f331bf6f6194ffddabd837bcac9. http://github.com/rails/rails/co...

    October 30th, 2008 @ 09:28 PM

  4. bingbing