mirror of
https://github.com/django/django.git
synced 2025-10-31 09:41:08 +00:00
Fixed #24704 -- Made the autoreloader survive SyntaxErrors.
With this change, it's expected to survive anything except errors
that make it impossible to import the settings. It's too complex
to fallback to a sensible behavior with a broken settings module.
Harcoding things about runserver in ManagementUtility.execute is
atrocious but it's the only way out of the chicken'n'egg problem:
the current implementation of the autoreloader primarily watches
imported Python modules -- and then a few other things that were
bolted on top of this design -- but we want it to kick in even if
the project contains import-time errors and django.setup() fails.
At some point we should throw away this code and replace it by an
off-the-shelf autoreloader that watches the working directory and
re-runs `django-admin runserver` whenever something changes.
Backport of fe6ddb837d from master
This commit is contained in:
@@ -9,6 +9,8 @@ Django 1.8.5 fixes several bugs in 1.8.4.
|
||||
Bugfixes
|
||||
========
|
||||
|
||||
* Made the development server's autoreload more robust (:ticket:`24704`).
|
||||
|
||||
* Fixed ``AssertionError`` in some delete queries with a model containing a
|
||||
field that is both a foreign and primary key (:ticket:`24951`).
|
||||
|
||||
|
||||
Reference in New Issue
Block a user