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.
- Failed pipeline example: https://jihulab.com/gitlab-cn/gitlab/-/pipelines/967166
- Failed job example: https://jihulab.com/gitlab-cn/gitlab/-/jobs/6517185
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