mirror of
https://gh.wpcy.net/https://github.com/discourse/discourse.git
synced 2026-04-30 07:20:49 +08:00
We often need to change site setting defaults when we would like to change default behaviour for the Discourse software. However, we want to be non-disruptive to existing sites, as some default changes can modify the behaviour of existing features quite a lot. In the past, when we did this we would write the old default to the database for anyone who hadn't changed the setting, and then change it for new sites going forward. However in practice means that there are large portions of Discourse sites with "bad" defaults that we no longer agree with, that slows adoption of best practices and makes it harder to reason about our different features. This change adds a way for upcoming changes to control the rollout of changes to site setting defaults via additional metadata attached to the setting whose default is changing. This way, we can have a more gradual rollout of new defaults, and we can also inform site admins about the upcoming change and give them a chance to opt in early if they want to. |
||
|---|---|---|
| .. | ||
| coding_style_spec.rb | ||
| common_mark_spec.rb | ||
| having_multiple_tagged_loggers_spec.rb | ||
| i18n_spec.rb | ||
| js_constants_spec.rb | ||
| middleware_order_spec.rb | ||
| oj_spec.rb | ||
| onceoff_integrity_spec.rb | ||
| site_setting_spec.rb | ||
| upcoming_change_metadata_spec.rb | ||