-
Notifications
You must be signed in to change notification settings - Fork 10.9k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: Remove settings dependency on startup #34199
base: develop
Are you sure you want to change the base?
Conversation
Looks like this PR is not ready to merge, because of the following issues:
Please fix the issues and try again If you have any trouble, please check the PR guidelines |
|
|
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## develop #34199 +/- ##
============================================
+ Coverage 59.28% 75.27% +15.98%
============================================
Files 2821 516 -2305
Lines 67942 22532 -45410
Branches 15110 5485 -9625
============================================
- Hits 40277 16960 -23317
+ Misses 24833 4911 -19922
+ Partials 2832 661 -2171
Flags with carried forward coverage won't be shown. Click here to find out more. |
621797f
to
63fef6e
Compare
Proposed changes (including videos or screenshots)
The idea is to remove code dependencies to "settings cached" during the startup that are spread everywhere in the codebase. This is basically but not only represented by code using
settings
in the file's top level scope.The currently method to make sure the settings cache is built before code is run is importing the "cached settings" from the file that builds the cache, so the top level await will ensure the cache is built before everything else runs. The proposal here is that we don't rely on this mechanism anymore by having a more clear code path, so we first build the cache and after that we import everything else.
So this is the first step of many to come, the changes are basically moving code relying on
settings
to functions and then calling this functions on the appropriate moment.Issue(s)
Steps to test or reproduce
Further comments