Web-Framework Django 1.8 bringt stabile API für Template-Backends
Seine Entwickler haben das Web-Framework für das aktuelle Release unter anderem mit der Option ausgestattet, unterschiedliche Template Engines zu nutzen. Aber auch neue Datentypen und zusätzliche Sicherheitsmaßnahmen sind enthalten.
- Julia Schmidt
Webentwickler, die Django für ihre Projekte nutzen, können ab sofort auf Version 1.8 des Frameworks zugreifen. Die letzte Nebenversion war im September 2014 freigegeben worden, die aktuelle ist laut Bekanntmachung allerdings schon über ein Jahr in der Entwicklung. Sie ist als Long-term Support Release (LTS) gekennzeichnet und soll folglich mindestens die nächsten drei Jahre Fixes für Fehler erhalten, die Sicherheitsrisiken darstellen oder Datenverlust zur Folge haben.
Unter anderem bietet Django 1.8 mit einer nun stabilen API zum Integrieren mehrerer Template Backends die Möglichkeit, Templates innerhalb eines Projekts mit unterschiedlichen Engines zu rendern. Mit der Model._meta API lassen sich zudem Felder abfragen und anhand ihrer Attribute filtern. Zwar gab es schon vorher ein Objekt gleichen Namens, allerdings handelte es sich dabei nicht um eine offizielle und stabile Schnittstelle. Laut der Entwickler habe man versucht, Rückwärtskompatibilität zu gewähren, allerdings sollen Endpunkte, die die neue API nicht unterstützt in kommenden Versionen entfernt werden.
Darüber hinaus sind einige der Funktionen des Drittanbieterprojekts django-secure nun Teil des Frameworks, django.middleware.security.SecurityMiddleware soll Verbesserungen im Request/Response-Kreislauf bieten und es steht eine Option --deploy für den check-Befehl zur Verfügung. Letzterer soll es Entwicklern ermöglichen, Produktionseinstellungen zu prüfen und so Wege zur Verbesserung der Sicherheit aufzuspüren. Die zusätzliche Datentypen UUIDField, zum Speichern eindeutiger Kennungen, und DurationField, zum Speichern von Zeitspannen, sollen zudem die Arbeit erleichtern. Eine komplette Liste großer und kleiner Änderungen sind in den Release Notes zu finden. (jul)