Use of new Settings.is_overridden() method breaks if settings.configure() is used
|Reported by:||carljm||Owned by:||nobody|
|Has patch:||no||Needs documentation:||no|
|Needs tests:||no||Patch needs improvement:||no|
There are two ways to set up Django's settings; one is by passing a settings module to the Settings class, and the other is to call django.conf.settings.configure() with keyword arguments.
In d818e0c9b2b88276cc499974f9eee893170bf0a8 (the new checks framework) a new is_overridden method was added to Settings, and in the "check_1_6_compatibility" check, it is called on django.conf.settings. But if settings.configure() was used, django.conf.settings is not wrapping a Settings instance, it is wrapping a UserSettingsHolder instance. And thus the "check_1_6_compatibility" check dies with "AttributeError: 'module' object has no attribute 'is_overridden'".