Django 1.9.5 release notes¶
April 1, 2016
Django 1.9.5 fixes several bugs in 1.9.4.
Correction de bogues¶
- Made
MultiPartParserignore filenames that normalize to an empty string to fix crash inMemoryFileUploadHandleron specially crafted user input (#26325). - Fixed a race condition in
BaseCache.get_or_set()(#26332). It now returns thedefaultvalue instead ofFalseif there’s an error when trying to add the value to the cache. - Fixed data loss on SQLite where
DurationFieldvalues with fractional seconds could be saved asNone(#26324). - The forms in
contrib.authno longer strip trailing and leading whitespace from the password fields (#26334). The change requires users who set their password to something with such whitespace after a site updated to Django 1.9 to reset their password. It provides backwards-compatibility for earlier versions of Django. - Fixed a memory leak in the cached template loader (#26306).
- Fixed a regression that caused
collectstatic --clearto fail if the storage doesn’t implementpath()(#26297). - Fixed a crash when using a reverse lookup with a subquery when a
ForeignKeyhas ato_fieldset to something other than the primary key (#26373). - Fixed a regression in
CommonMiddlewarethat caused spurious warnings in logs on requests missing a trailing slash (#26293). - Restored the functionality of the admin’s
raw_id_fieldsinlist_editable(#26387). - Fixed a regression with abstract model inheritance and explicit parent links (#26413).
- Fixed a migrations crash on SQLite when renaming the primary key of a model
containing a
ForeignKeyto'self'(#26384). - Fixed
JSONFieldinadvertently escaping its contents when displaying values after failed form validation (#25532).