Read about our upcoming Code of Conduct on this issue

  • Sean McGivern's avatar
    `current_application_settings` belongs on `Gitlab::CurrentSettings` · e1c28a485974
    Sean McGivern authored
    The initializers including this were doing so at the top level, so every object
    loaded after them had a `current_application_settings` method. However, if
    someone had rack-attack enabled (which was loaded before these initializers), it
    would try to load the API, and fail, because `Gitlab::CurrentSettings` didn't
    have that method.
    
    To fix this:
    
    1. Don't include `Gitlab::CurrentSettings` at the top level. We do not need
       `Object.new.current_application_settings` to work.
    2. Make `Gitlab::CurrentSettings` explicitly `extend self`, as we already use it
       like that in several places.
    3. Change the initializers to use that new form.
    e1c28a485974
project.rb 45.4 KB