Вышла первая бета Django 5.2. Релиз ждём в апреле.
Из интересного:
- Научили shell импортировать модели автоматически. Но кажется уже все привыкли к shell_plus.
- Доехала поддержка композитных первичных ключей (pk из нескольких полей).
- Теперь у base.html есть блок extrabody для добавления своего кода перед закрытием , может быть удобно для кастомизации.
- Еще больше методов получили асинхронную версию. UserManager.acreate_user(), User.ahas_perm() и т.д
- method_decorator() научился оборачивать асинхронные методы.
- Добавили предупреждение при запуске через runserver о том, что его нельзя использовать в проде. Кажется не поможет...
- В миграции завезли AlterConstraint, чтобы каждый раз не пересоздавать и не удалять констрейнты.
- Порядок полей в .values() и .values_list() теперь точно соответствует переданному. Соответственно .union() в таком случае гарантировано даст ожидаемый результат.
- Появились классы Deserializer для гибкого управления десериализацией. Никогда не было необходимости в этом, но выглядит хорошо. -reverse() теперь принимает query и fragment keywords. Думаю стоит попробовать.
- 5.2 поддерживает Postgres от 14 версии и выше.
Подробности тут: https://docs.djangoproject.com/en/dev/releases/5.2/