Django 4.2.1 release notes¶
3 maj 2023
Django 4.2.1 åtgärdar ett säkerhetsproblem med allvarlighetsgrad ”låg” och flera buggar i 4.2.
CVE-2023-31047: Potentiellt kringgående av validering när flera filer laddas upp med ett formulärfält¶
Att ladda upp flera filer med ett formulärfält har aldrig stöttats av forms.FileField
eller forms.ImageField
eftersom endast den senast uppladdade filen validerades. Tyvärr, Ladda upp flera filer topic föreslog något annat.
För att undvika sårbarheten ger nu formulärwidgetarna ClearableFileInput
och FileInput
upphov till ValueError
när HTML-attributet multiple
är inställt på dem. För att förhindra undantaget och behålla det gamla beteendet, sätt allow_multiple_selected
till True
.
Mer information om hur du använder det nya attributet och hur du hanterar flera filer via ett enda fält finns i Ladda upp flera filer.
Buggrättningar¶
Åtgärdade en regression i Django 4.2 som orsakade en krasch av
QuerySet.defer()
när fält förskjuts med attributnamn (#34458).Åtgärdade en regression i Django 4.2 som orsakade en krasch av
SearchVector
-funktionen med%
-tecken (#34459`).Åtgärdade en regression i Django 4.2 som orsakade aggregering över frågor som använder explicit gruppering för att gruppera mot fel kolumner (#34464).
Tillåtet igen, efter en regression i Django 4.2, att ställa in alternativet
"cursor_factory"
iOPTIONS
på PostgreSQL (#34466).Genomförde UTF-8-klientkodning på PostgreSQL, efter en regression i Django 4.2 (:biljett:`34470`).
Åtgärdade en regression i Django 4.2 där
i18n_patterns()
inte respekteradeprefix_default_language
-argumentet när ett reservspråk för standardspråket användes (#34455).Åtgärdade en regression i Django 4.2 där översatta webbadresser med standardspråket från
i18n_patterns()
medprefix_default_language
inställt påFalse
gav upphov till 404-fel för en begäran med ett annat språk (#34515`).Åtgärdade en regression i Django 4.2 där skapandet av kopior och djupa kopior av
HttpRequest
,HttpResponse
och deras underklasser inte alltid fungerade korrekt (#34482, #34484).Åtgärdade en regression i Django 4.2 där mallfiltren
timesince
ochtimeuntil
gav felaktiga resultat för en datatid med en tidszon som inte är UTC när tidsskillnaden är mindre än 1 dag (#34483`).Åtgärdade en regression i Django 4.2 som orsakade en krasch av
SearchHeadline
-funktionen medpsycopg
3 (#34486`).Åtgärdade en regression i Django 4.2 som orsakade felaktiga
ClearableFileInput
-marginaler i admin (#34506).Åtgärdade en regression i Django 4.2 där brödsmulor inte visades på admin-webbplatsens appindexvyer (#34512).
Gjorde squashing migreringar minska
AddIndex
,RemoveIndex
,RenameIndex
ochCreateModel
operationer som gör det möjligt att ta bort ett föråldratMeta.index_together
alternativ från historiska migreringar och användaMeta.indexes
istället (#34525`).