Примечания к выпуску Django 1.9.5¶
1 апреля 2016
Django 1.9.5 исправляет несколько ошибок в 1.9.4.
Исправления¶
- Заставил
MultiPartParserигнорировать имена файлов, которые нормализуются в пустую строку, для исправления сбоя вMemoryFileUploadHandlerпри специально созданном пользовательском вводе (#26325). - Исправлено состояние гонки в
BaseCache.get_or_set()(#26332). Теперь возвращается значениеdefaultвместоFalse, если произошла ошибка при попытке добавить значение в кэш. - Исправлена потеря данных на SQLite, когда значения
DurationFieldс дробными секундами могли быть сохранены какNone(#26324). - Формы в
contrib.authбольше не удаляют из полей пароля (#26334) пробельные символы, идущие в конце и впереди. Это изменение требует от пользователей, которые установили пароль с такими пробелами после обновления сайта до Django 1.9, сбросить свой пароль. Это обеспечивает обратную совместимость с более ранними версиями Django. - Исправлена утечка памяти в кэшированном загрузчике шаблонов (#26306).
- Исправлена регрессия, из-за которой
collectstatic --clearне выполнялось, если хранилище не реализуетpath()(#26297). - Исправлена ошибка при использовании обратного поиска с подзапросом, когда
ForeignKeyимеетto_field, установленный не на первичный ключ (#26373). - Исправлена регрессия в
CommonMiddleware, которая приводила к ложным предупреждениям в журналах при запросах, в которых отсутствовал завершающий слэш (#26293). - Восстановлена функциональность админки
raw_id_fieldsвlist_editable(#26387). - Исправлена ошибка с наследованием абстрактной модели и явными родительскими ссылками (#26413).
- Исправлен сбой миграций на SQLite при переименовании первичного ключа модели, содержащей
ForeignKeyв'self'(#26384). - Исправлено, что
JSONFieldнепреднамеренно экранирует свое содержимое при отображении значений после неудачной валидации формы (#25532).