<feed xmlns='http://www.w3.org/2005/Atom'>
<title>django.git/django/db/models/sql/query.py, branch 1.5.7</title>
<subtitle>django
</subtitle>
<id>http://cgit.adnoto.dev/django.git/atom?h=1.5.7</id>
<link rel='self' href='http://cgit.adnoto.dev/django.git/atom?h=1.5.7'/>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/'/>
<updated>2013-05-21T08:45:24Z</updated>
<entry>
<title>[1.5.x] Fixed prefetch_related + pickle regressions</title>
<updated>2013-05-21T08:45:24Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2013-05-21T08:06:49Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=bac187c0d8e829fb3ca2ca82965eabbcbcb6ddd5'/>
<id>urn:sha1:bac187c0d8e829fb3ca2ca82965eabbcbcb6ddd5</id>
<content type='text'>
There were a couple of regressions related to field pickling. The
regressions were introduced by QuerySet._known_related_objects caching.

The regressions aren't present in master, the fix was likely in
f403653cf146384946e5c879ad2a351768ebc226.

Fixed #20157, fixed #20257. Also made QuerySets with model=None
picklable.
</content>
</entry>
<entry>
<title>[1.5.x] Fixed #20091 -- Oracle null promotion for empty strings</title>
<updated>2013-03-26T13:05:37Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2013-03-24T20:59:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=207117ae731096d8148c17c6ca16f06ebf18537c'/>
<id>urn:sha1:207117ae731096d8148c17c6ca16f06ebf18537c</id>
<content type='text'>
Backpatch of e17fa9e877e84e93b699c2bd13ea48dbbb86e451
</content>
</entry>
<entry>
<title>[1.5.x] Fixed #19672 -- Error in negated Q() filtering</title>
<updated>2013-02-20T19:57:39Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2013-02-20T19:52:44Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=8ad436636fd385abd144274952b0c066885af042'/>
<id>urn:sha1:8ad436636fd385abd144274952b0c066885af042</id>
<content type='text'>
There was a variable overwrite error in negated join filtering. This
happened when add_filter() was adding the IS NULL condition to the
WHERE clause.

This is not a backport from master as there have been some other
refactorings which made this patch irrelevant.

The patch is from Ian Kelly.
</content>
</entry>
<entry>
<title>[1.5.x] Fixed #14694 -- Made ``defer()`` work with reverse relations</title>
<updated>2012-11-28T16:25:34Z</updated>
<author>
<name>Tai Lee</name>
<email>tai.lee@3030.com.au</email>
</author>
<published>2012-11-28T16:16:00Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=a21e8dee7682abdba646c5b72b6371d392e44dd1'/>
<id>urn:sha1:a21e8dee7682abdba646c5b72b6371d392e44dd1</id>
<content type='text'>
Reverse o2o fields are now usable with defer.

Backpatch of [6ebf115206289bce8f3d86318871faac13d6e835]
</content>
</entry>
<entry>
<title>[1.5.x] Fixed #18375 -- Removed dict-ordering dependency for F-expressions</title>
<updated>2012-11-23T18:07:50Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2012-11-22T18:27:28Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=90c7aa074095311862b71f3b4ee7220369785375'/>
<id>urn:sha1:90c7aa074095311862b71f3b4ee7220369785375</id>
<content type='text'>
F() expressions reuse joins like any lookup in a .filter() call -
reuse multijoins generated in the same .filter() call else generate
new joins. Also, lookups can now reuse joins generated by F().

This change is backwards incompatible, but it is required to prevent
dict randomization from generating different queries depending on
.filter() kwarg ordering. The new way is also more consistent in how
joins are reused.

Backpatch of 90b86291d022a09031d1df397d7aaebc30e435f7
</content>
</entry>
<entry>
<title>Removed use of SortedDict for query.alias_refcount</title>
<updated>2012-11-13T21:01:34Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2012-11-10T23:59:24Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=fe21c233d44a5cafff0766eb17ed3df20e08b70f'/>
<id>urn:sha1:fe21c233d44a5cafff0766eb17ed3df20e08b70f</id>
<content type='text'>
This will have a smallish impact on performance. Refs #19276.
</content>
</entry>
<entry>
<title>Fixed regression caused by #19102</title>
<updated>2012-10-25T16:13:10Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2012-10-25T16:13:10Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=bd6d9ea87cfa252c2992904897e137bc23da56c3'/>
<id>urn:sha1:bd6d9ea87cfa252c2992904897e137bc23da56c3</id>
<content type='text'>
</content>
</entry>
<entry>
<title>Fixed #19102 -- Fixed fast-path delete for modified SELECT clause cases</title>
<updated>2012-10-25T14:16:44Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2012-10-10T12:58:39Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=f64a5ef404cb6fd28e008a01039a3beea2fa8e1b'/>
<id>urn:sha1:f64a5ef404cb6fd28e008a01039a3beea2fa8e1b</id>
<content type='text'>
There was a bug introduced in #18676 which caused fast-path deletes
implemented as "DELETE WHERE pk IN &lt;subquery&gt;" to fail if the SELECT
clause contained additional stuff (for example extra() and annotate()).

Thanks to Trac alias pressureman for spotting this regression.
</content>
</entry>
<entry>
<title>Fixed #19087 -- Ensured query's base table is never LOUTER joined</title>
<updated>2012-10-08T15:40:09Z</updated>
<author>
<name>Anssi Kääriäinen</name>
<email>akaariai@gmail.com</email>
</author>
<published>2012-10-08T15:36:51Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=a62d53c03252bdf82b21b64874efe053160cbdb7'/>
<id>urn:sha1:a62d53c03252bdf82b21b64874efe053160cbdb7</id>
<content type='text'>
This fixes a regression created by join promotion logic refactoring:
01b9c3d5193fe61b82ae8b26242a13fdec22f211

Thanks to Ivan Virabyan for the report.
</content>
</entry>
<entry>
<title>Internal refactoring; moving LOOKUP_SEP up one level.</title>
<updated>2012-09-08T23:51:36Z</updated>
<author>
<name>Malcolm Tredinnick</name>
<email>malcolm.tredinnick@gmail.com</email>
</author>
<published>2012-09-08T23:51:36Z</published>
<link rel='alternate' type='text/html' href='http://cgit.adnoto.dev/django.git/commit/?id=c4aa26a983c91b1ec015fe0552077847116dfab7'/>
<id>urn:sha1:c4aa26a983c91b1ec015fe0552077847116dfab7</id>
<content type='text'>
In an ideal world, nothing except django.db.models.query should have to
import stuff from django.models.sql.*. A few things were needing to get
hold of sql.constants.LOOKUP_SEP, so this commit moves it up to
django.db.models.constants.LOOKUP_SEP.

There are still a couple of places (admin) poking into sql.* to get
QUERY_TERMS, which is unfortunate, but a slightly different issue and
harder to adjust.
</content>
</entry>
</feed>
