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. |
||
|---|---|---|
| .. | ||
| api | ||
| assets | ||
| backup | ||
| banzai | ||
| bitbucket | ||
| ci | ||
| constraints | ||
| container_registry | ||
| declarative_policy | ||
| generators/rails/post_deployment_migration | ||
| github | ||
| gitlab | ||
| haml_lint | ||
| json_web_token | ||
| mattermost | ||
| microsoft_teams | ||
| omni_auth/strategies | ||
| peek/rblineprof | ||
| rouge | ||
| rspec_flaky | ||
| support | ||
| system_check | ||
| tasks | ||
| additional_email_headers_interceptor.rb | ||
| after_commit_queue.rb | ||
| banzai.rb | ||
| declarative_policy.rb | ||
| disable_email_interceptor.rb | ||
| email_template_interceptor.rb | ||
| event_filter.rb | ||
| expand_variables.rb | ||
| extracts_path.rb | ||
| feature.rb | ||
| file_size_validator.rb | ||
| gitlab.rb | ||
| gt_one_coercion.rb | ||
| repository_cache.rb | ||
| static_model.rb | ||
| system_check.rb | ||
| unfold_form.rb | ||
| uploaded_file.rb | ||
| version_check.rb | ||