-
-
Notifications
You must be signed in to change notification settings - Fork 817
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
dev/core#5484 SettingsManager - reinstate intermediary boot phase... #31215
dev/core#5484 SettingsManager - reinstate intermediary boot phase... #31215
Conversation
🤖 Thank you for contributing to CiviCRM! ❤️ We will need to test and review this PR. 👷 Introduction for new contributors...
Quick links for reviewers...
|
cf1ab7c
to
ca5e920
Compare
ca5e920
to
c75a9c0
Compare
Thanks will give it a try. |
This works for me. On the deprecation, I'd agree if you're changing these particular settings, you're obviously managing the filesystem already. But I dunno if I'm the right person to ask since for any question about where config should live I'd lean towards files. |
-- Anyway, to the main point -- +1 to the general concept of PR. It makes sense that bootstrap needs this level of nuance. |
How about:
Is this actual possible? If they have a custom e.g. extension directory when they switch in the new code version it may well crash, and then they won't be able to run the upgrader? I suppose you could have the upgrader in a few versions before you remove support. But that has the same issue as above that people might be upgrading from below that version in a big jump, and skip the intermediary warning/migration step? |
... to allow reading extension container settings from the database.
Overview
This is a more thoughtful alternative to https://github.com/civicrm/civicrm-core/pull/31169/files in order to fix https://lab.civicrm.org/dev/core/-/issues/5484
Before
SettingsManager has 2 states:
A database value for extensionDir isn't respected when booting the extension system.
After
SettingsManager has 3 states:
Database values for extensionDir , extensionUrl and ext_max_depth can be respected again when booting the extension system.
Comments
I preferred the cleaner separation before. I wonder if in the long run we could deprecate storing the extension system config values in the database? To me they feel like they should be in
civicrm.settings.php
/ environment variables. They are very closely coupled with the arrangement of files on the system.