Django REST Framework 3.18 est sorti
par Makersquad ·
Date de sortie : 7 août 2026
Documentation officielle : Release notes DRF
Django REST Framework 3.18 est sorti le 7 août 2026. Il suit Django 6.1, retire les plus anciennes versions de Django et change le format des erreurs des sérialiseurs de liste.
Les nouveautés principales
Support de Django 6.1
DRF 3.18 prend en charge Django 6.1.
Accents ignorés dans SearchFilter
SearchFilter prend en charge unaccent, ce qui permet de rechercher sans tenir compte des accents.
Décorateur @throttle_scope
Le nouveau décorateur @throttle_scope permet de définir un scope de throttling sur les vues fonctionnelles.
nulls_distinct sur UniqueTogetherValidator
UniqueTogetherValidator gère maintenant nulls_distinct, en cohérence avec les contraintes d’unicité de Django.
Corrections notables
- Compatibilité avec Django 6.1 pour l’analyse des en-têtes (
split_header_valueremplacecc_delim_re). - Le paramètre
choicesest inclus pour les champs non éditables. - Accessibilité améliorée du template de pagination par curseur dans l’API navigable.
- Correction des mises à jour partielles par formulaire impliquant un
ListField. - Correction d’un plantage lié aux permissions des actions supplémentaires dans l’API navigable.
- Les valeurs de représentation non hashables de
BooleanFieldsont gérées. - Schéma OpenAPI corrigé pour les bornes numériques à zéro des enfants de
ListField. set_rollbackne restaure que les connexions initialisées.- Un
DictFielden entrée HTML ne renvoie plus un dict vide pour les champs absents. - Erreur explicite pour les mises à jour de liste avec unicité multi-champs non supportées.
Changements incompatibles
Versions de Django abandonnées
DRF 3.18 abandonne le support de Django 4.2, 5.0 et 5.1. Avant de mettre à jour, vérifiez que votre projet tourne sur une version de Django encore supportée.
Format des erreurs de liste
Les erreurs d’un sérialiseur utilisé avec many=True sont désormais renvoyées au format dict. Si votre client front ou vos tests lisent ces erreurs, c’est le point à vérifier en premier lors de la montée de version.
À retenir
La montée vers 3.18 demande surtout de vérifier votre version de Django et le format des erreurs de liste. Des correctifs sont déjà sortis depuis, jusqu’à la 3.18.3 du 6 octobre 2026.