Skip to content

Commit

Permalink
Release notes for ORM changes in 1.6
Browse files Browse the repository at this point in the history
  • Loading branch information
akaariai committed Nov 14, 2013
1 parent 94d567b commit 4301d6f
Showing 1 changed file with 25 additions and 0 deletions.
25 changes: 25 additions & 0 deletions docs/releases/1.6.txt
Expand Up @@ -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.

Miscellaneous
~~~~~~~~~~~~~

Expand Down

0 comments on commit 4301d6f

Please sign in to comment.