Skip to content

Reorder to require active_support/all first

What does this MR do and why?

Reorder the require of active_support/all in spec/fast_spec_helper.rb to let it be required first.

The changes in MR !112037 (diffs) caused JiHu's pipeline to fail.

How to reproduce

On JiHu repo, commit: c3442d11ef5a97442413c4023ba906f16d0315ef

bundle exec rspec spec/lib/gitlab/slug/path_spec.rb

outputs

An error occurred while loading ./spec/lib/gitlab/slug/path_spec.rb.
Failure/Error: Gitlab::SubscriptionPortal.prepend_mod

NameError:
  uninitialized constant ActiveSupport::Concern
  Did you mean?  Concurrent
# ./jh/lib/jh/gitlab/subscription_portal.rb:10:in `<module:SubscriptionPortal>'
# ./jh/lib/jh/gitlab/subscription_portal.rb:9:in `<module:Gitlab>'
# ./jh/lib/jh/gitlab/subscription_portal.rb:8:in `<module:JH>'
# ./jh/lib/jh/gitlab/subscription_portal.rb:7:in `<top (required)>'
# ./config/initializers/0_inject_enterprise_edition_module.rb:65:in `const_get'
# ./config/initializers/0_inject_enterprise_edition_module.rb:65:in `const_get_maybe_false'
# ./config/initializers/0_inject_enterprise_edition_module.rb:58:in `block in each_extension_for'
# ./config/initializers/0_inject_enterprise_edition_module.rb:53:in `each'
# ./config/initializers/0_inject_enterprise_edition_module.rb:53:in `each_extension_for'
# ./config/initializers/0_inject_enterprise_edition_module.rb:7:in `prepend_mod_with'
# ./config/initializers/0_inject_enterprise_edition_module.rb:25:in `prepend_mod'
# ./lib/gitlab/subscription_portal.rb:91:in `<top (required)>'
# ./ee/lib/ee.rb:4:in `<module:EE>'
# ./ee/lib/ee.rb:3:in `<top (required)>'
# ./ee/spec/support/helpers/ee/stub_configuration.rb:3:in `<top (required)>'
# ./spec/support/helpers/stub_configuration.rb:190:in `require_relative'
# ./spec/support/helpers/stub_configuration.rb:190:in `<top (required)>'
# ./spec/support/rspec.rb:5:in `require_relative'
# ./spec/support/rspec.rb:5:in `<top (required)>'
# ./spec/fast_spec_helper.rb:20:in `require_relative'
# ./spec/fast_spec_helper.rb:20:in `<top (required)>'
# ./spec/lib/gitlab/slug/path_spec.rb:3:in `require'
# ./spec/lib/gitlab/slug/path_spec.rb:3:in `<top (required)>'

How to fix it

In JiHu, there is a temporary fix: https://jihulab.com/gitlab-cn/gitlab/-/merge_requests/1416

EE may also encounter such problem in the future, so it's better to fix it at the root:

As shown by this MR, let active_support/all be required first.


/cc JiHu EM @mtan-gitlab

Edited by Baodong

Merge request reports