שוחררה גרסה 1.8 של Django, תשתית פיתוח יישומי ווב מבוססת פייתון. ככל הזכור לי זו הגרסה הראשונה המשוחררת תוך עמידה בלוח־הזמנים המתוכנן.
זוהי גרסת LTS אשר תקבל עדכוני אבטחה ותיקוני באגים הקשורים לאבדן מידע במשך שלוש השנים הבאות. גרסת ה־LTS הקודמת, 1.4, תמשיך לקבל עדכונים במשך ששת החודשים הקרובים.
אנקדוטה מעניינת היא ששניים מהשינויים העיקריים ייושמו בעזרת מימון המונים:
תמיכה מורחבת ב־PostgreSQL ו
מנועי ותבניות מרובים.
שינויים עיקריים בגרסה 1.8 כוללים:
- הכרזה רשמית של ה־API עבור Model._meta, כולל דרך נתמכת רשמית לאחזור שדות וסינונם לפי מאפיינים. ראו גם מדריך להגירה מה־API הישן לחדש.
- תמיכה במנועי תבניות מרובים באותו פרוייקט, כולל תמיכה מובנית ב־Jinja2. ראו מדריך בנושא והוראות שדרוג לפרטים נוספים.
- שיפורים באבטחה ע"י מיזוג מספר תכונות מספריית django-secure לתוך SecurityMiddleware והוספת אופציית --deploy לפקודה check אשר מאפשר לבדוק את ההגדרות להגברת האבטחה.
- תמיכה מורחבת בתכונות מיוחדות ל־PostgreSQL כגון ArrayField, HStoreField, Range Fields וחיפוש unaccent. פרטים נוספים בתיעוד.
- טיפוסי מידע חדשים: UUIDField המשתמש בשדה הטבעי ב־PostgreSQL ומחרזות באורך קבוע בבסיסי נתונים אחרים ו-DurationField אשר משתמש בטיפוסים טבעיים ב־PostgreSQL ואורקל ו-bigint במיקרו־שניות עבור בסיסי נתונים אחרים.
- תמיכה ב־ORM ב-Query Expressions, Conditional Expressions ופונקציות בסיס נתונים המאפשרים לבנות ולהתאים שאילתות SQL מורכבות.
- שיפורי ה־TestCase המאפשר שימוש בטרנזקציות ו־savepoints בעת יצירת הנתונים עבור הבדיקות. כמו כן בדיקות רצות כעת בתוך שני בלוקים מקוננים של atomic(), אחד ברמת המחלקה ואחד עבור כל בדיקה.בנוסףטעינת המידע (fixture) מתבצעת פעם אחת עבור כל ה-TestCase.
למעט השינויים העיקריים ישנה כמות רבה מאוד של שינויים משניים כמעט בכל מודולי התשתית - מומלץ לעבור על הרשימה ולשים לב במיוחד לשינויים אשר שוברים תאימות אחורה.