<feed xmlns='http://www.w3.org/2005/Atom'>
<title>delta/python-packages/sqlalchemy.git/lib/sqlalchemy/orm, branch pr/282</title>
<subtitle>github.com: zzzeek/sqlalchemy.git
</subtitle>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/'/>
<entry>
<title>Accommodate "callable" bound param in evaluator</title>
<updated>2016-05-16T14:33:36+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2016-05-16T14:32:07+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=0470abadd23774bba6ae0677f451b3d408ffcfb0'/>
<id>0470abadd23774bba6ae0677f451b3d408ffcfb0</id>
<content type='text'>
Fixed bug in "evaluate" strategy of :meth:`.Query.update` and
:meth:`.Query.delete` which would fail to accommodate a bound
parameter with a "callable" value, as which occurs when filtering
by a many-to-one equality expression along a relationship.

Change-Id: I47758d3f5d8b9ea1a07e23166780d5f3c32b17f1
Fixes: #3700
(cherry picked from commit a51ab916622dd016ce51d6be0969112817cc42ad)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixed bug in "evaluate" strategy of :meth:`.Query.update` and
:meth:`.Query.delete` which would fail to accommodate a bound
parameter with a "callable" value, as which occurs when filtering
by a many-to-one equality expression along a relationship.

Change-Id: I47758d3f5d8b9ea1a07e23166780d5f3c32b17f1
Fixes: #3700
(cherry picked from commit a51ab916622dd016ce51d6be0969112817cc42ad)
</pre>
</div>
</content>
</entry>
<entry>
<title>Check for duplicate calls to register_attribute_impl</title>
<updated>2016-05-10T15:06:53+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2016-05-10T15:05:30+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=a9f74400b179e9d19e073a2a1e43cbffda6e1fad'/>
<id>a9f74400b179e9d19e073a2a1e43cbffda6e1fad</id>
<content type='text'>
Fixed bug whereby the event listeners used for backrefs could
be inadvertently applied multiple times, when using a deep class
inheritance hierarchy in conjunction with mutiple mapper configuration
steps.

Change-Id: I712beaf4674e2323bf5b282922658020a6d00b53
Fixes: #3710
(cherry picked from commit 743e9d4589946f1a29cdec7f2f1a2e4ec0853db7)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixed bug whereby the event listeners used for backrefs could
be inadvertently applied multiple times, when using a deep class
inheritance hierarchy in conjunction with mutiple mapper configuration
steps.

Change-Id: I712beaf4674e2323bf5b282922658020a6d00b53
Fixes: #3710
(cherry picked from commit 743e9d4589946f1a29cdec7f2f1a2e4ec0853db7)
</pre>
</div>
</content>
</entry>
<entry>
<title>Repair _orm_columns() to accommodate text()</title>
<updated>2016-05-05T21:08:31+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2016-05-05T21:07:40+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=eb0685e40f758693ac3679bc4c429c8a4177b0eb'/>
<id>eb0685e40f758693ac3679bc4c429c8a4177b0eb</id>
<content type='text'>
Fixed bug whereby passing a :func:`.text` construct to the
:meth:`.Query.group_by` method would raise an error, instead
of intepreting the object as a SQL fragment.

Change-Id: I5fc2f590b76508d52e23b5fa9cf037ddea8080c3
fixes: #3706
(cherry picked from commit 9bdd6f2b1f6b34a82b77849ec05811aa0279931d)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Fixed bug whereby passing a :func:`.text` construct to the
:meth:`.Query.group_by` method would raise an error, instead
of intepreting the object as a SQL fragment.

Change-Id: I5fc2f590b76508d52e23b5fa9cf037ddea8080c3
fixes: #3706
(cherry picked from commit 9bdd6f2b1f6b34a82b77849ec05811aa0279931d)
</pre>
</div>
</content>
</entry>
<entry>
<title>Corrects some references in ORM documentation.</title>
<updated>2016-05-04T19:54:49+00:00</updated>
<author>
<name>Jeffrey Finkelstein</name>
<email>jeffrey.finkelstein@gmail.com</email>
</author>
<published>2016-05-04T00:46:20+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=4b1cba1c16d7f6666c7d574c985e1de760a713e4'/>
<id>4b1cba1c16d7f6666c7d574c985e1de760a713e4</id>
<content type='text'>
(cherry picked from commit e6251c3e40e623aaadc7356c0b3c94101710079c)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit e6251c3e40e623aaadc7356c0b3c94101710079c)
</pre>
</div>
</content>
</entry>
<entry>
<title>Fix typo from "addreses" to "addresses"</title>
<updated>2016-04-09T01:40:48+00:00</updated>
<author>
<name>Rachid Belaid</name>
<email>rachid@opendoor.com</email>
</author>
<published>2016-04-07T03:41:14+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=47472dde24d9a3caf5f24d8fc2efca901a22302a'/>
<id>47472dde24d9a3caf5f24d8fc2efca901a22302a</id>
<content type='text'>
(cherry picked from commit c8db0862c102281da617d395b1826ff523af302e)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit c8db0862c102281da617d395b1826ff523af302e)
</pre>
</div>
</content>
</entry>
<entry>
<title>Adds documentation to Query.slice().</title>
<updated>2016-03-13T20:39:36+00:00</updated>
<author>
<name>jfinkels</name>
<email>jfinkels@users.noreply.github.com</email>
</author>
<published>2016-03-13T19:40:11+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=d7178007fca2f91ba933302345ea2b92cb6ebb27'/>
<id>d7178007fca2f91ba933302345ea2b92cb6ebb27</id>
<content type='text'>
(cherry picked from commit 6e5e64e27ef2c6a86c9aebdcefdf2cd726f1476a)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit 6e5e64e27ef2c6a86c9aebdcefdf2cd726f1476a)
</pre>
</div>
</content>
</entry>
<entry>
<title>- reworked the way the "select_wraps_for" expression is</title>
<updated>2016-02-21T01:30:58+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2016-02-21T01:22:38+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=cf818984ab52d824dbf77fcb6f18ec4efca53704'/>
<id>cf818984ab52d824dbf77fcb6f18ec4efca53704</id>
<content type='text'>
handled within visit_select(); this attribute was added in the
1.0 series to accommodate the subquery wrapping behavior of
SQL Server and Oracle while also working with positional
column targeting and no longer relying upon "key fallback"
in order to target columns in such a statement.  The IBM DB2
third-party dialect also has this use case, but its implementation
is using regular expressions to rewrite the textual SELECT only
and does not make use of a "wrapped" select at this time.
The logic no longer attempts to reconcile proxy set collections as
this was not deterministic, and instead assumes that the select()
and the wrapper select() match their columns postionally,
at least for the column positions they have in common,
so it is now very simple and safe.  fixes #3657.
- as a side effect of #3657 it was also revealed that the
strategy of calling upon a ResultProxy._getter was not
correctly calling into NoSuchColumnError when an expected
column was not present, and instead returned None up to
loading.instances() to produce NoneType failures; added
a raiseerr argument to _getter() which is called when we
aren't expecting None, fixes #3658.

(cherry picked from commit 8ad968f33100baeb3b13c7e0b724b6b79ab4277f)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
handled within visit_select(); this attribute was added in the
1.0 series to accommodate the subquery wrapping behavior of
SQL Server and Oracle while also working with positional
column targeting and no longer relying upon "key fallback"
in order to target columns in such a statement.  The IBM DB2
third-party dialect also has this use case, but its implementation
is using regular expressions to rewrite the textual SELECT only
and does not make use of a "wrapped" select at this time.
The logic no longer attempts to reconcile proxy set collections as
this was not deterministic, and instead assumes that the select()
and the wrapper select() match their columns postionally,
at least for the column positions they have in common,
so it is now very simple and safe.  fixes #3657.
- as a side effect of #3657 it was also revealed that the
strategy of calling upon a ResultProxy._getter was not
correctly calling into NoSuchColumnError when an expected
column was not present, and instead returned None up to
loading.instances() to produce NoneType failures; added
a raiseerr argument to _getter() which is called when we
aren't expecting None, fixes #3658.

(cherry picked from commit 8ad968f33100baeb3b13c7e0b724b6b79ab4277f)
</pre>
</div>
</content>
</entry>
<entry>
<title>- Fixed bug in :meth:`.Session.merge` where an object with a composite</title>
<updated>2016-02-12T03:31:44+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2016-02-12T03:29:18+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=a74b028f9f5b59b7c3f2f9d6b785abf56f77609c'/>
<id>a74b028f9f5b59b7c3f2f9d6b785abf56f77609c</id>
<content type='text'>
primary key that has values for some but not all of the PK fields
would emit a SELECT statement leaking the internal NEVER_SET symbol
into the query, rather than detecting that this object does not have
a searchable primary key and no SELECT should be emitted.
fixes #3647

(cherry picked from commit 366f97b5617af0d15cfaf594ec5ef0408c70e873)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
primary key that has values for some but not all of the PK fields
would emit a SELECT statement leaking the internal NEVER_SET symbol
into the query, rather than detecting that this object does not have
a searchable primary key and no SELECT should be emitted.
fixes #3647

(cherry picked from commit 366f97b5617af0d15cfaf594ec5ef0408c70e873)
</pre>
</div>
</content>
</entry>
<entry>
<title>- fully hyperlink the docstring for make_transient</title>
<updated>2016-02-08T23:07:41+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2016-02-08T23:05:51+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=d3eef95510307aaa139d13311712d698da2815a8'/>
<id>d3eef95510307aaa139d13311712d698da2815a8</id>
<content type='text'>
- establish make_transient and make_transient_to_detached as special-use,
advanced use only functions
- list all conditions under make_transient() under which an attribute
will not be loaded and establish that make_transient() does not attempt
to load all attributes before detaching the object from its
session, fixes #3640

(cherry picked from commit 7eff4e8f3e3999d9eb914647d8776e6e5b7ee88e)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
- establish make_transient and make_transient_to_detached as special-use,
advanced use only functions
- list all conditions under make_transient() under which an attribute
will not be loaded and establish that make_transient() does not attempt
to load all attributes before detaching the object from its
session, fixes #3640

(cherry picked from commit 7eff4e8f3e3999d9eb914647d8776e6e5b7ee88e)
</pre>
</div>
</content>
</entry>
<entry>
<title>- happy new year</title>
<updated>2016-01-29T16:25:37+00:00</updated>
<author>
<name>Mike Bayer</name>
<email>mike_mp@zzzcomputing.com</email>
</author>
<published>2016-01-29T16:24:35+00:00</published>
<link rel='alternate' type='text/html' href='http://91.123.203.49/cgit/delta/python-packages/sqlalchemy.git/commit/?id=631afa456fa9fbeee3d24e25a53f3e2eccac9bbc'/>
<id>631afa456fa9fbeee3d24e25a53f3e2eccac9bbc</id>
<content type='text'>
(cherry picked from commit 859379e2fcc4506d036700ba1eca4c0ae526a8ee)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
(cherry picked from commit 859379e2fcc4506d036700ba1eca4c0ae526a8ee)
</pre>
</div>
</content>
</entry>
</feed>
