[Sqlalchemy-commits] commit/sqlalchemy: 4 new changesets
Brought to you by:
zzzeek
From: Bitbucket <com...@bi...> - 2016-02-21 01:44:31
|
4 new commits in sqlalchemy: https://bitbucket.org/zzzeek/sqlalchemy/commits/8ad968f33100/ Changeset: 8ad968f33100 Branch: None User: zzzeek Date: 2016-02-21 01:22:38+00:00 Summary: - reworked the way the "select_wraps_for" expression is 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. Affected #: 9 files https://bitbucket.org/zzzeek/sqlalchemy/commits/a1c1ce7f769f/ Changeset: a1c1ce7f769f Branch: None User: zzzeek Date: 2016-02-21 01:30:49+00:00 Summary: - version bump Affected #: 1 file https://bitbucket.org/zzzeek/sqlalchemy/commits/cf818984ab52/ Changeset: cf818984ab52 Branch: rel_1_0 User: zzzeek Date: 2016-02-21 01:30:58+00:00 Summary: - reworked the way the "select_wraps_for" expression is 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) Affected #: 9 files https://bitbucket.org/zzzeek/sqlalchemy/commits/6713817e1186/ Changeset: 6713817e1186 Branch: None User: zzzeek Date: 2016-02-21 01:43:36+00:00 Summary: - update the mssql autoincrement reflection test to accommodate the new behavior of the autoincrement flag as per ref #3216 Affected #: 1 file Repository URL: https://bitbucket.org/zzzeek/sqlalchemy/ -- This is a commit notification from bitbucket.org. You are receiving this because you have the service enabled, addressing the recipient of this email. |