Draft: Add a feature flag use_base_class_in_proxy_util
What does this MR do and why?
Added a feature_flag use_base_class_in_proxy_util
which simplifies the code inside the proxy_util
to find the Config
. Feature flag uses the base_class
method. For all the ApplicationRecord
classes .base_class
always gives the deepest parent class which is inheriting from ApplicationRecord
.
Note: For non ApplicationRecord base_class
method is not defined. We have two classes Wiki
and Repository
which are non ApplicationRecord
and they don't have base_class
implemented. I don't think we should use respond_to?
to avoid exceptions. If there is an exception we should implement the method base_class
. For now, there will be no exception because use_separate_indices
is false
.
How to set up and validate locally
Just enable the feature flag and perform some global searching. And verify everything works as before.
Feature.enable :use_base_class_in_proxy_util
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.