From 4c9ed7bd857a17ef159fcfea855faa308ffb3aa4 Mon Sep 17 00:00:00 2001 From: Daniel Waterworth Date: Tue, 8 Oct 2019 12:19:05 +0100 Subject: [PATCH] FIX: Fix rake db:create after zeitwerk changes Post-zeitwerk, rails has deprecated autoloading modules during initialization and forces all autoloaded modules to be reloaded after initialization. Requiring the file explicitly prevents autoloading and therefore prevents the state on SiteSetting being trashed which was causing the problem here. --- config/initializers/005-site_settings.rb | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/config/initializers/005-site_settings.rb b/config/initializers/005-site_settings.rb index 7f4470417f..4ecaa85df3 100644 --- a/config/initializers/005-site_settings.rb +++ b/config/initializers/005-site_settings.rb @@ -6,6 +6,10 @@ Discourse.git_version if GlobalSetting.skip_redis? + # Requiring this file explicitly prevents it from being autoloaded and so the + # provider attribute is not cleared + require File.expand_path('../../../app/models/site_setting', __FILE__) + require 'site_settings/local_process_provider' Rails.cache = Discourse.cache SiteSetting.provider = SiteSettings::LocalProcessProvider.new