4 mai 2021
Django 3.2.1 corrige un problème de sécurité et plusieurs bogues de la version 3.2.
MultiPartParser
, UploadedFile
et FieldFile
permettaient des traversées de répertoires via des fichiers téléversés avec des noms de fichiers trafiqués à dessein.
In order to mitigate this risk, stricter basename and path sanitation is now applied.
BigAutoField
et SmallAutoField
n’étaient pas admises dans le réglage DEFAULT_AUTO_FIELD
(#32620).QuerySet.values()/values_list()
après QuerySet.union()
, intersection()
et difference()
lorsque le tri se faisait sur un champ non annoté (#32627).CheckConstraint.check
ou UniqueConstraint.condition
(#32635).ModelAdmin.search_fields
lors de recherche avec des phrases dont les guillemets ne sont pas fermés (#32649).Q()
contenant des expressions booléennes (#32548).QuerySet.update()
sur un jeu de requête trié par des champs hérités ou joints avec MySQL et MariaDB (#32645).django.contrib.messages.storage.cookie.CookieStorage
, dans le format pré Django 3.2 (#32643).STATICFILES_DIRS
contenant une liste de tuples binaires (préfixe, chemin)
(#32665).Exists
pour exclure des liaisons multivaluées (#32650).Exists()
au lieu de QuerySet.distinct()
parce que l’appel à delete()` après distinct()
n’est pas autorisé dans Django 3.2 afin d’éviter une potentielle perte de données.django.db.sql.query.Query
a été supprimée.déc. 07, 2021