De Steering Council van Django heeft DEP 20 goedgekeurd, wat betekent dat Django vanaf januari 2028 overstapt op een jaarlijkse releasecyclus. De versienummers zullen voortaan het jaartal volgen (bijv. Django 2028).
De belangrijkste wijzigingen zijn:
- Uniforme ondersteuning: Elke feature release krijgt drie jaar ondersteuning (één jaar reguliere bugfixes en twee jaar beveiligingsupdates), waardoor het onderscheid tussen reguliere releases en LTS-releases vervalt.
- Betere synchronisatie met Python: De nieuwe cyclus sluit beter aan bij de jaarlijkse Oktober-releases van Python, wat voorkomt dat Django versies ondersteunt die bij de bron al 'end-of-life' zijn.
- Voordelen voor ontwikkelaars: Door de jaarlijkse cadans is er geen 'LTS-gat' meer, waardoor upgrades geleidelijker kunnen plaatsvinden en pakketten van derden een stabieler doelwit hebben.
De overgang start na Django 6.2 LTS; de eerste release onder het nieuwe regime wordt Django 2028.
Django stapt over op een jaarlijkse releasecyclus
De Steering Council van Django heeft het Django Enhancement Proposal (DEP) 20 goedgekeurd om Django over te zetten naar een jaarlijkse releasecyclus. Vanaf januari 2028 zal Django één keer per jaar een feature release uitbrengen. Elke feature release krijgt hiermee drie jaar ondersteuning op LTS-niveau, en de versienummers zullen het jaar van de feature release volgen: Django 2028, daarna Django 2029, enzovoort.
Betere ondersteuning voor Python
Python brengt jaarlijks in oktober nieuwe versies uit. De huidige cyclus van acht maanden van Django sloot daar niet goed bij aan; LTS-releases ondersteunden een breed scala aan Python-versies, waaronder versies die bij de bron al lang hun 'end-of-life' hadden bereikt.
Onder de nieuwe cyclus ondersteunt elke Django-versie bij release de drie nieuwste Python-versies en wordt de nieuwste Python-versie tijdens het eerste jaar toegevoegd. De ondersteuningsperiode van Django eindigt synchroon met de oudste ondersteunde Python-versie.
Elke release is een LTS
Elke feature release krijgt drie jaar ondersteuning: één jaar voor reguliere bugfixes, gevolgd door twee jaar voor beveiligingsupdates en fixes tegen dataverlies. Het label "LTS" komt hiermee te vervallen — elke feature release draagt nu dezelfde unieke toezegging.
Dit betekent dat er geen 'LTS-gat' meer is, waardoor ontwikkelaars niet langer tegen een deadline aanrennen om in één keer twee jaar aan wijzigingen bij te werken. Upgrades kunnen nu per jaar worden uitgevoerd, op het moment dat dit binnen het ondersteuningsvenster schikt. Er worden op elk gegeven moment drie versies ondersteund, wat voor pakketten van derden een duidelijk en rollend doelwit biedt.
Het beleid rondom API-stabiliteit en deprecation blijft ongewijzigd — sterker nog, de deprecation-periodes worden in kalendertermen juist langer.
Tijdlijn van de overgang
Django 2028 zal de eerste release zijn onder de nieuwe cyclus.
| Release | Datum | End of life |
| Django 6.1 | Augustus 2026 | December 2027 |
| Django 6.2 LTS | April 2027 | April 2030 |
| Django 2028 | Januari 2028 | December 2030 |
| Django 2029 | Januari 2029 | December 2031 |
Voor 2028 verandert er niets. De ondersteuningsbeloften voor Django 5.2 LTS en 6.2 LTS blijven ongewijzigd.
Lees de DEP
In DEP 20 staan de volledige specificaties en de onderbouwing van elke beslissing. Dank aan iedereen die heeft deelgenomen aan de discussie, en aan de Steering Council voor de overweging.
Django stapt over op een jaarlijkse releasecyclus
De Steering Council van Django heeft het Django Enhancement Proposal (DEP) 20 goedgekeurd om Django over te zetten naar een jaarlijkse releasecyclus. Vanaf januari 2028 zal Django één keer per jaar een feature release uitbrengen. Elke feature release krijgt hiermee drie jaar ondersteuning op LTS-niveau, en de versienummers zullen het jaar van de feature release volgen: Django 2028, daarna Django 2029, enzovoort.
Betere ondersteuning voor Python
Python brengt jaarlijks in oktober nieuwe versies uit. De huidige cyclus van acht maanden van Django sloot daar niet goed bij aan; LTS-releases ondersteunden een breed scala aan Python-versies, waaronder versies die bij de bron al lang hun 'end-of-life' hadden bereikt.
Onder de nieuwe cyclus ondersteunt elke Django-versie bij release de drie nieuwste Python-versies en wordt de nieuwste Python-versie tijdens het eerste jaar toegevoegd. De ondersteuningsperiode van Django eindigt synchroon met de oudste ondersteunde Python-versie.
Elke release is een LTS
Elke feature release krijgt drie jaar ondersteuning: één jaar voor reguliere bugfixes, gevolgd door twee jaar voor beveiligingsupdates en fixes tegen dataverlies. Het label "LTS" komt hiermee te vervallen — elke feature release draagt nu dezelfde unieke toezegging.
Dit betekent dat er geen 'LTS-gat' meer is, waardoor ontwikkelaars niet langer tegen een deadline aanrennen om in één keer twee jaar aan wijzigingen bij te werken. Upgrades kunnen nu per jaar worden uitgevoerd, op het moment dat dit binnen het ondersteuningsvenster schikt. Er worden op elk gegeven moment drie versies ondersteund, wat voor pakketten van derden een duidelijk en rollend doelwit biedt.
Het beleid rondom API-stabiliteit en deprecation blijft ongewijzigd — sterker nog, de deprecation-periodes worden in kalendertermen juist langer.
Tijdlijn van de overgang
Django 2028 zal de eerste release zijn onder de nieuwe cyclus.
| Release | Datum | End of life |
| Django 6.1 | Augustus 2026 | December 2027 |
| Django 6.2 LTS | April 2027 | April 2030 |
| Django 2028 | Januari 2028 | December 2030 |
| Django 2029 | Januari 2029 | December 2031 |
Voor 2028 verandert er niets. De ondersteuningsbeloften voor Django 5.2 LTS en 6.2 LTS blijven ongewijzigd.
Lees de DEP
In DEP 20 staan de volledige specificaties en de onderbouwing van elke beslissing. Dank aan iedereen die heeft deelgenomen aan de discussie, en aan de Steering Council voor de overweging.