Skip to content
Browse files

Release notes for ORM changes in 1.6

  • Loading branch information...
1 parent 94d567b commit 4301d6fa364623b0847f042e7bd6e37e03dcd752 @akaariai akaariai committed
Showing with 25 additions and 0 deletions.
  1. +25 −0 docs/releases/1.6.txt
25 docs/releases/1.6.txt
@@ -812,6 +812,31 @@ as JSON requires string keys, you will likely run into problems if you are
using non-string keys in ``request.session``. See the
:ref:`session_serialization` documentation for more details.
+Object Relational Mapper changes
+Django 1.6 contains many changes to the ORM. These changes fall mostly in
+three categories:
+ 1. Bug fixes (e.g. proper join clauses for generic relations, query
+ combining, join promotion, and join trimming fixes)
+ 2. Preparation for new features. For example the ORM is now internally ready
+ for multicolumn foreign keys.
+ 3. General cleanup.
+These changes can result in some compatibility problems. For example, some
+queries will now generate different table aliases. This can affect
+:meth:`QuerySet.extra() <django.db.models.query.QuerySet.extra>`. In addition
+some queries will now produce different results. An example is
+:meth:`exclude(condition) <django.db.models.query.QuerySet.exclude>`
+where the condition is a complex one (referencing multijoins inside
+:class:`Q objects <django.db.models.Q>`). In many cases the affected
+queries didn't produce correct results in Django 1.5 but do now.
+Unfortunately there are also cases that produce different results, but
+neither Django 1.5 nor 1.6 produce correct results.
+Finally, there have been many changes to the ORM internal APIs.

0 comments on commit 4301d6f

Please sign in to comment.
Something went wrong with that request. Please try again.