Примечания к выпуску Django 1.7.1

Октябрь 22, 2014

Django 1.7.1 исправляет несколько ошибок в версии 1.7.

Исправления

  • Разрешено ссылаться на связанные поля «многие-ко-многим» в админке (#23604).
  • Добавлено более полезное сообщение об ошибке при попытке миграции приложения без предварительного создания таблицы contenttypes (#22411).
  • Изменен алгоритм зависимости миграций, чтобы избежать возможной бесконечной рекурсии.
  • Исправлена ошибка UnicodeDecodeError, когда сообщение об ошибке flush содержало символы Unicode (#22882).
  • Восстановлены отсутствующие CHECK SQL-клаузулы, которые были пропущены в некоторых бэкендах, когда не использовались миграции (#23416).
  • Исправлена сериализация объектов type в миграциях (#22951).
  • Разрешены встроенные и скрытые ссылки на поля администратора (#23431).
  • Декоратор @deconstructible теперь не работает с ошибкой ValueError, если декорируемый объект не может быть автоматически импортирован (#23418).
  • Исправлена опечатка в сообщении об ошибке inlineformset_factory(), которая приводила к сбою (#23451).
  • Восстановлена возможность использования ABSOLUTE_URL_OVERRIDES с моделью 'auth.User' (#11775). В качестве побочного эффекта, настройка теперь добавляет метод get_absolute_url() к любой модели, которая появляется в ABSOLUTE_URL_OVERRIDES, но не определяет get_absolute_url().
  • Предотвращение маскировки некоторых исключений ImportError во время загрузки приложения (#22920).
  • Пустые опции модели index_together или unique_together больше не приводят к бесконечным миграциям (#23452).
  • Исправлен сбой в contrib.sitemaps, если lastmod возвращало date, а не datetime (#23403).
  • Позволяет миграциям работать с app_label, у которых одинаковая последняя часть (например, django.contrib.auth и vendor.auth) (#23483).
  • Восстановлена возможность глубокого копирования F объектов (#23492).
  • Добавлены форматы для валлийского (cy) и нескольких китайских локалей (zh_CN, zh_Hans, zh_Hant и zh_TW). Исправлены форматы для македонского языка (удалена точка в конце, #23532).
  • Добавлено цитирование имен ограничений в SQL, генерируемом миграциями, для предотвращения сбоев при использовании заглавных символов в имени (#23065).
  • Исправлено переименование моделей с самореферентным полем «многие ко многим» (ManyToManyField('self')) (#23503).
  • Добавлены крючки get_extra(), get_max_num() и get_min_num() к GenericInlineModelAdmin (#23539).
  • В migrations.RunSQL больше не требуется экранирование знака процента. Теперь это соответствует cursor.execute() (#23426).
  • Сделали запись SERIALIZE в словаре TEST пригодной для использования (#23421).
  • Исправлена ошибка в миграциях, которая предотвращала ограничения внешнего ключа для неуправляемых моделей с пользовательским первичным ключом (#23415).
  • Добавлено SchemaEditor для бэкенда MySQL GIS, чтобы пространственные индексы создавались для приложений с миграциями (#23538).
  • Добавлено SchemaEditor для бэкенда Oracle GIS, чтобы пространственные метаданные и индексы были созданы для приложений с миграцией (#23537).
  • Принудительное приведение опции поля модели related_name к Unicode во время генерации миграций для создания миграций, работающих как с Python 2, так и с 3 (#23455).
  • Исправлено MigrationWriter для обработки встроенных типов без импорта (#23560).
  • Исправлено deepcopy на ErrorList (#23594).
  • Заставило представление admindocs для просмотра подробностей представления проверять, существует ли представление, указанное в URL, в URLconf. Ранее можно было импортировать произвольные пакеты из пути Python. Это не считалось проблемой безопасности, поскольку admindocs доступен только штатным пользователям (#23601).
  • Исправлено падение UnicodeDecodeError в AdminEmailHandler с не-ASCII символами в запросе (#23593).
  • Исправлено отсутствие get_or_create и update_or_create в связанных менеджерах, вызывающих IntegrityError (#23611).
  • Заставил urlsafe_base64_decode() возвращать правильный тип (bytestring) на Python 3 (#23333).
  • makemigrations теперь может сериализовать значения с учетом временной зоны (#23365).
  • Добавлена подсказка в вопросник миграций при снятии ограничения null с поля для предотвращения IntegrityError на существующих строках NULL (#23609).
  • Исправлены родовые отношения в ModelAdmin.list_filter (#23616).
  • Восстановлено соответствие RFC для бэкенда SMTP на Python 3 (#23063).
  • Исправлен сбой при разборе файлов cookie с недопустимым содержимым (#23638).
  • Система проверки системы теперь вызывает ошибку models.E020, когда метод класса Model.check() недостижим (#23615).
  • Сделано так, что при создании тестовой базы данных Oracle происходит сброс тестового пользователя в случае нечистого выхода из предыдущего тестового запуска (#23649).
  • Исправлено makemigrations для обнаружения изменений в Meta.db_table (#23629).
  • Исправлена регрессия при передаче тестовому клиенту Django пустой строки данных (#21740).
  • Исправлена регрессия в makemessages, когда статические файлы неожиданно игнорировались (#23583).
Вернуться на верх