]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/log
thirdparty/sqlalchemy/sqlalchemy.git
7 years ago- allow a separate template database to be used for
Mike Bayer [Tue, 22 Aug 2017 17:12:43 +0000 (13:12 -0400)] 
- allow a separate template database to be used for
PG CREATE DATABASE.  as nobody will connect to it that would
solve the contention issue here

Change-Id: I00a4d52091876e120faff4a8a5493c53280d96f1

7 years ago- repair --dbs
Mike Bayer [Tue, 22 Aug 2017 17:07:24 +0000 (13:07 -0400)] 
- repair --dbs

Change-Id: I69e39d2368f50b126c369ecc35e01799fd013254
(cherry picked from commit 3fc6f32ddc5fbbf439acff42c2fdae9e910154be)

7 years ago- add missing changelog file for #4045
Mike Bayer [Tue, 22 Aug 2017 02:14:19 +0000 (22:14 -0400)] 
- add missing changelog file for #4045

Change-Id: I649cef3f4d91dec79dbd425a7dc5aad35abe87e5

7 years ago- simplify and see if it still works
Mike Bayer [Tue, 22 Aug 2017 02:12:30 +0000 (22:12 -0400)] 
- simplify and see if it still works

Change-Id: Id0cf7ae2223507d413aaa22e5f8df066b7ac2b46

7 years ago- keep trying to get PG dbs to build
Mike Bayer [Mon, 21 Aug 2017 23:00:25 +0000 (19:00 -0400)] 
- keep trying to get PG dbs to build

Change-Id: Ib36949da8f079594494a482423d96e7509673481

7 years ago- add missing quotes
Mike Bayer [Mon, 21 Aug 2017 22:19:02 +0000 (18:19 -0400)] 
- add missing quotes

Change-Id: Ib6efc465cccd7c7661dd089856edfd4979b53517

7 years ago- try to get PG database create to be more reliable
Mike Bayer [Mon, 21 Aug 2017 21:55:26 +0000 (17:55 -0400)] 
- try to get PG database create to be more reliable

Change-Id: I9c9d101547f4484af447db924dc06afd0392a03e

7 years ago- sanitize class names for junit reporting
Mike Bayer [Mon, 21 Aug 2017 21:13:12 +0000 (17:13 -0400)] 
- sanitize class names for junit reporting

Change-Id: I42821d8324208b708adc17a10b1a2758797cb9db

7 years agoMerge branch 'fixtypo' of https://github.com/hsmtkk/sqlalchemy
Mike Bayer [Mon, 21 Aug 2017 20:28:12 +0000 (16:28 -0400)] 
Merge branch 'fixtypo' of https://github.com/hsmtkk/sqlalchemy

7 years ago- filter out non-oracle URLs
Mike Bayer [Mon, 21 Aug 2017 16:08:01 +0000 (12:08 -0400)] 
- filter out non-oracle URLs

Change-Id: I475f744f8801bc923d738e466d208d662e707413

7 years ago- this test doesn't work in strict mode, not that important
Mike Bayer [Mon, 21 Aug 2017 03:11:57 +0000 (23:11 -0400)] 
- this test doesn't work in strict mode, not that important

Change-Id: I3ed361af5c9f0c7acbeb8b534966828949f4958b

7 years ago- a few mysql fixes, more to come
Mike Bayer [Sun, 20 Aug 2017 22:57:05 +0000 (18:57 -0400)] 
- a few mysql fixes, more to come

Change-Id: Icdcc8ed03374251b8d3815ae58e2726ea27c14b4

7 years ago- rework oracle de-provisioning to write URLs to the file as well,
Mike Bayer [Sun, 20 Aug 2017 22:21:34 +0000 (18:21 -0400)] 
- rework oracle de-provisioning to write URLs to the file as well,
supporting custom dburi etc.

Change-Id: Ic0ab0b3b4223e40fd335ee3313fda4dfce942100

7 years ago- add some logging for the provisioning
Mike Bayer [Sun, 20 Aug 2017 02:45:31 +0000 (22:45 -0400)] 
- add some logging for the provisioning

Change-Id: I1ac16bc77642f4f576195ac10443ed8e641e0d49

7 years ago- dont run sql mode config tests if we aren't on mysql
Mike Bayer [Sat, 19 Aug 2017 22:20:48 +0000 (18:20 -0400)] 
- dont run sql mode config tests if we aren't on mysql

Change-Id: Ia5a491ec505afed1511a17a167cd1f7d8371acd4

7 years ago- do ten attempts to create database
Mike Bayer [Sat, 19 Aug 2017 22:06:02 +0000 (18:06 -0400)] 
- do ten attempts to create database

Change-Id: I14a5dd920d14096aa4401cb8b9d71f47d3915879

7 years agoMerge "First level repair for cx_Oracle 6.0 test regressions"
mike bayer [Sat, 19 Aug 2017 22:04:51 +0000 (18:04 -0400)] 
Merge "First level repair for cx_Oracle 6.0 test regressions"

7 years ago- correct server side cursor assertion for driver names
Mike Bayer [Sat, 19 Aug 2017 21:30:06 +0000 (17:30 -0400)] 
- correct server side cursor assertion for driver names

Change-Id: Id8156f6af15a36f7d5653dff56f68e81431692a6

7 years ago- name these TOX_ so that we can set them unconditionally
Mike Bayer [Sat, 19 Aug 2017 20:59:29 +0000 (16:59 -0400)] 
- name these TOX_ so that we can set them unconditionally
without them getting used unless we ask for them in the
build

Change-Id: Iec157ce9e70366af275acac959527461faebfdc1

7 years ago- rework the unittests README which was very out of date
Mike Bayer [Sat, 19 Aug 2017 18:06:14 +0000 (14:06 -0400)] 
- rework the unittests README which was very out of date

Change-Id: Id9bda43ea493a8d493be5ecb19da16a91a298f9d

7 years agoFirst level repair for cx_Oracle 6.0 test regressions
Mike Bayer [Fri, 18 Aug 2017 17:04:14 +0000 (13:04 -0400)] 
First level repair for cx_Oracle 6.0 test regressions

Fixed more regressions caused by cx_Oracle 6.0; at the moment, the only
behavioral change for users is disconnect detection now detects for
cx_Oracle.DatabaseError in addition to cx_Oracle.InterfaceError, as
this behavior seems to have changed.   Other issues regarding numeric
precision and uncloseable connections are pending with the upstream
cx_Oracle issue tracker.

Change-Id: Id61f1e33b21c155a598396340dfdecd28ff4066b
Fixes: #4045
7 years ago- convert to spaces
Mike Bayer [Thu, 17 Aug 2017 17:37:53 +0000 (13:37 -0400)] 
- convert to spaces

Change-Id: Ic5eb90049358935995721765b2239cf91144895a

7 years agoMerge "Enable uuid for pg8000"
mike bayer [Thu, 17 Aug 2017 13:14:07 +0000 (09:14 -0400)] 
Merge "Enable uuid for pg8000"

7 years agofix a typo
hsmtkk [Wed, 16 Aug 2017 09:38:40 +0000 (18:38 +0900)] 
fix a typo

7 years agoMerge "Ensure Oracle index w/ col DESC etc. is reflected"
mike bayer [Mon, 14 Aug 2017 17:54:12 +0000 (13:54 -0400)] 
Merge "Ensure Oracle index w/ col DESC etc. is reflected"

7 years agoIsolate memory tests in forks
Mike Bayer [Mon, 14 Aug 2017 16:04:26 +0000 (12:04 -0400)] 
Isolate memory tests in forks

Swing the biggest hammer, run multiprocessing.Process() for
each memusage test individually so that they are fully isolated
from the parent process and any side effects of pytest-xdist

Also add --nomemory as a shortcut to exclude_tags=memory-intensive
and add this to the setup.py test runner as the memory tests
should not be running for quick runs

Change-Id: I3c16c781e21b33deb939a64e77a6e0e41fb86922

7 years agoRestore original test names
Mike Bayer [Mon, 14 Aug 2017 13:32:08 +0000 (09:32 -0400)] 
Restore original test names

The change in de1f8f8345ecd6af0ec1177703465e9471cfe862
modified how test classes are named, breaking logic that
extracts the class name for the profiling suite.
Add a new variable _sa_orig_cls_name if we've modified the
name so that the profiling logic doesn't need to guess
the original class name.

Change-Id: Ica15a97408b9e0749a78c87f62749c15c1627009

7 years agoEnsure Oracle index w/ col DESC etc. is reflected
Mike Bayer [Fri, 11 Aug 2017 19:52:28 +0000 (15:52 -0400)] 
Ensure Oracle index w/ col DESC etc. is reflected

Fixed bug where an index reflected under Oracle with an expression like
"column DESC" would not be returned, if the table also had no primary
key, as a result of logic that attempts to filter out the
index implicitly added by Oracle onto the primary key columns.

Reworked the "filter out the primary key index" logic in oracle
get_indexes() to be clearer.

This changeset also adds an internal check to ColumnCollection
to accomodate for the case of a column being added twice,
as well as adding a private _table argument to Index such that
reflection can specify the Table explicitly.  The _table
argument can become part of public API in a later revision
or release if needed.

Change-Id: I745711e03b3e450b7f31185fc70e10d3823063fa
Fixes: #4042
7 years ago- since we can't isolate the memory tests to run withtout pytest-xdist,
Mike Bayer [Mon, 14 Aug 2017 05:15:22 +0000 (01:15 -0400)] 
- since we can't isolate the memory tests to run withtout pytest-xdist,
add a new tag nomemory so we can at least limit on the build

Change-Id: I3935cf15047d77fc09f8ee229914e37e064e5b8b

7 years ago- try adding the prints back in and re-test
Mike Bayer [Fri, 11 Aug 2017 13:54:16 +0000 (09:54 -0400)] 
- try adding the prints back in and re-test

Change-Id: I3a82b06ecc3c065240cc05871dee2881f20e414e

7 years ago- take more print statements out, maybe this is not
Mike Bayer [Thu, 10 Aug 2017 19:44:54 +0000 (15:44 -0400)] 
- take more print statements out, maybe this is not
the issue
- unblock pytest-xdist now that the upstream issue is fixed,
maybe this old version is the issue

Change-Id: I28dd7ae0872948a188651d42e2f4af60bcbafe81

7 years agoMerge branch 'master--typos' of https://github.com/nphilipp/sqlalchemy
Mike Bayer [Wed, 9 Aug 2017 13:32:51 +0000 (09:32 -0400)] 
Merge branch 'master--typos' of https://github.com/nphilipp/sqlalchemy

7 years agoEnable uuid for pg8000
Mike Bayer [Tue, 8 Aug 2017 16:56:43 +0000 (12:56 -0400)] 
Enable uuid for pg8000

Enabled UUID support for the pg8000 driver, which supports native Python
uuid round trips for this datatype.  Arrays of UUID are still not supported,
however.

Change-Id: I44ca323c5d9f2cd87327210233bc36a3556eb050
Fixes: #4016
7 years agoAdd quoted_name to pg8000 py_types
Mike Bayer [Tue, 8 Aug 2017 17:30:49 +0000 (13:30 -0400)] 
Add quoted_name to pg8000 py_types

Fixed bug where the pg8000 driver would fail if using
:meth:`.MetaData.reflect` with a schema name, since the schema name would
be sent as a "quoted_name" object that's a string subclass, which pg8000
doesn't recognize.   The quoted_name type is added to pg8000's
py_types collection on connect.

Change-Id: Id0f838320cb66563685e094e4eae2d5116100d27
Fixes: #4041
7 years ago- dont print samples, this appears like it may be
Mike Bayer [Tue, 8 Aug 2017 21:24:23 +0000 (17:24 -0400)] 
- dont print samples, this appears like it may be
itself causing the memory leak in conjunction with pytest-xdist

Change-Id: Ia8704e54186e6dd60ea0e32a246fcf1419686663

7 years ago- allow the shrink phase for memusage to go until zeroed,
Mike Bayer [Tue, 8 Aug 2017 18:02:16 +0000 (14:02 -0400)] 
- allow the shrink phase for memusage to go until zeroed,
some MySQL-env element is causing memory growth that goes very
far before stopping

Change-Id: Ic0882dd78636067980fceba4e3a969de78d5b26a

7 years agoEnable multi-level selectin polymorphic loading
Mike Bayer [Thu, 13 Jul 2017 22:32:42 +0000 (18:32 -0400)] 
Enable multi-level selectin polymorphic loading

Change-Id: Icc742bbeecdb7448ce84caccd63e086af16e81c1
Fixes: #4026
8 years ago- modernize orm.reconstructor documentation a bit
Mike Bayer [Sun, 6 Aug 2017 01:46:24 +0000 (21:46 -0400)] 
- modernize orm.reconstructor documentation a bit

Change-Id: Ied786e8f9ad78f524be03a382d002dada7dd218b

8 years agofix "constrast" typos
Nils Philippsen [Sat, 5 Aug 2017 11:31:06 +0000 (13:31 +0200)] 
fix "constrast" typos

8 years agoAllow multiple versions of single backend
Mike Bayer [Fri, 4 Aug 2017 19:43:16 +0000 (15:43 -0400)] 
Allow multiple versions of single backend

Improve screen output to illustrate which server version is
running for a particular database config, and additionally
allow full overriding for the backend-specific targets in
tox.ini via environment variables, so that CI can inject
multiple server urls for a particular database such as MySQL/MariaDB.

Change-Id: Ibf443bb9fb82e4563efd1bb66058fa9989aa2fda

8 years ago- fix one test for STRICT, which may be turned on by default
Mike Bayer [Fri, 4 Aug 2017 15:28:20 +0000 (11:28 -0400)] 
- fix one test for STRICT, which may be turned on by default
in mariadb 10.2.   more mariadb fixes coming

Change-Id: I6e3a94ae7340772663677b1082506adbb2d84a38

8 years agoPin to pytest<=3.0.7 pytest-xdist<=1.16.0
Mike Bayer [Fri, 4 Aug 2017 14:02:32 +0000 (10:02 -0400)] 
Pin to pytest<=3.0.7 pytest-xdist<=1.16.0

Until https://github.com/pytest-dev/pytest-xdist/issues/196 is fixed

Change-Id: I7dfd268e6078373ccaa0b5c13f9b6ffa1b2fd4b2

8 years ago- 1.0.19
Mike Bayer [Thu, 3 Aug 2017 15:36:44 +0000 (11:36 -0400)] 
- 1.0.19

Change-Id: I65ebe00fa7372151210a1f177f5417ac08c41586
(cherry picked from commit 90ef2c2314187b00e037a4b347b5d62eec387aac)

8 years ago- convert to spaces
Mike Bayer [Mon, 31 Jul 2017 12:30:45 +0000 (08:30 -0400)] 
- convert to spaces
- restore unreleased directories

Change-Id: Ia5c1142ffbdba6372f800c2e2521660ab62d9c4f

8 years agoMerge "Revert cx_Oracle WITH_UNICODE change under > 5.0"
mike bayer [Fri, 28 Jul 2017 22:06:21 +0000 (18:06 -0400)] 
Merge "Revert cx_Oracle WITH_UNICODE change under > 5.0"

8 years agoRevert cx_Oracle WITH_UNICODE change under > 5.0
Mike Bayer [Fri, 28 Jul 2017 19:05:25 +0000 (15:05 -0400)] 
Revert cx_Oracle WITH_UNICODE change under > 5.0

Fixed performance regression caused by the fix for :ticket:`3937` where
cx_Oracle as of version 5.3 dropped the ``.UNICODE`` symbol from its
namespace,  which was interpreted as cx_Oracle's "WITH_UNICODE" mode being
turned on unconditionally, which invokes functions on the SQLAlchemy
side which convert all strings to unicode unconditionally and causing
a performance impact.  In fact, per cx_Oracle's author the
"WITH_UNICODE" mode has been removed entirely as of 5.1, so the expensive unicode
conversion functions are no longer necessary and are disabled if
cx_Oracle 5.1 or greater is detected under Python 2.  The warning against
"WITH_UNICODE" mode that was removed under :ticket:`3937` is also restored.

Change-Id: Iddd38d81a5adb27c953a5ee2eae5529a21da16e1
Fixes: #4035
8 years ago- 1.1.13
Mike Bayer [Fri, 28 Jul 2017 19:16:17 +0000 (15:16 -0400)] 
- 1.1.13
- 1.0.19

Change-Id: I476213fe905a51826feeddb4e1c97416c2bac558
(cherry picked from commit f7beeb389d242d1c0fe56c22349f5dcc23722bde)

8 years ago- 1.2.0b3 prep
Mike Bayer [Tue, 25 Jul 2017 21:26:55 +0000 (17:26 -0400)] 
- 1.2.0b3 prep

Change-Id: I9aa6e891ca896b90b97fbd0e52f0ad73494e38d7

8 years ago- 1.2.0b2 rel_1_2_0b2
Mike Bayer [Mon, 24 Jul 2017 21:22:23 +0000 (17:22 -0400)] 
- 1.2.0b2

8 years ago- 1.1.12 release date
Mike Bayer [Mon, 24 Jul 2017 21:18:33 +0000 (17:18 -0400)] 
- 1.1.12 release date

(cherry picked from commit ad5626cdb9b4d4ac38b2169dc7377d4bc66ee549)

Change-Id: Icd2f3ce68451e609c0d1c116256c2e1cf8baf7eb

8 years ago- 1.0.18 release date
Mike Bayer [Mon, 24 Jul 2017 21:14:51 +0000 (17:14 -0400)] 
- 1.0.18 release date

(cherry picked from commit f00391a070d9031941bb1c17aecb265b566a6a5b)

Change-Id: I243a63d084d4b369ded7969d78e3ab033f6189bd

8 years agoMerge "Ensure we check for boolean condition when we inspect __exit__()"
mike bayer [Mon, 24 Jul 2017 20:54:13 +0000 (16:54 -0400)] 
Merge "Ensure we check for boolean condition when we inspect __exit__()"

8 years agoMerge "Guard all indexed access in WeakInstanceDict"
mike bayer [Mon, 24 Jul 2017 18:49:23 +0000 (14:49 -0400)] 
Merge "Guard all indexed access in WeakInstanceDict"

8 years agoMerge branch 'patch-1' of https://github.com/feanil/sqlalchemy
Mike Bayer [Mon, 24 Jul 2017 16:42:45 +0000 (12:42 -0400)] 
Merge branch 'patch-1' of https://github.com/feanil/sqlalchemy

8 years agoEnsure we check for boolean condition when we inspect __exit__()
Mike Bayer [Mon, 24 Jul 2017 16:13:05 +0000 (12:13 -0400)] 
Ensure we check for boolean condition when we inspect __exit__()

Fixed issue in testing fixtures which was incompatible with a change
made as of Python 3.6.2 involving context managers.

Change-Id: I0f12aa6cc15cba89153f7e4888ac347e7ce599c7
Fixes: #4034
8 years agoGuard all indexed access in WeakInstanceDict
Mike Bayer [Mon, 17 Jul 2017 15:06:22 +0000 (11:06 -0400)] 
Guard all indexed access in WeakInstanceDict

Added ``KeyError`` checks to all methods within
:class:`.WeakInstanceDict` where a check for ``key in dict`` is
followed by indexed access to that key, to guard against a race against
garbage collection that under load can remove the key from the dict
after the code assumes its present, leading to very infrequent
``KeyError`` raises.

Change-Id: I881cc2899f7961d29a0549f44149a2615ae7a4ea
Fixes: #4030
8 years ago- Merge directory holder README from 1.0.x and also 1.0's changelog
Mike Bayer [Mon, 24 Jul 2017 14:52:07 +0000 (10:52 -0400)] 
- Merge directory holder README from 1.0.x and also 1.0's changelog

Change-Id: I588eebd027b4ad3428bd522f36a6f1cd77f105bb
(cherry picked from commit 39c72682b85c1d3912ced383733d03eca7a43845)

8 years agoMake flush logic slightly clearer in tutorial.
Feanil Patel [Sun, 23 Jul 2017 13:17:39 +0000 (09:17 -0400)] 
Make flush logic slightly clearer in tutorial.

Improve the wording of how sessions commit changes.

8 years ago- move to file-per-changelog for unreleased change notes,
Mike Bayer [Sat, 22 Jul 2017 20:32:01 +0000 (16:32 -0400)] 
- move to file-per-changelog for unreleased change notes,
so that we no longer have to rely upon merges within
the changelog files.   because gerrit doesn't allow us
to use custom merge engines unlike git, we have no ability
to merge multiple changes into the changelog files without
going through conflicts.   new version of changelog
in git supports these new patterns.

Change-Id: I588eebd027b4ad3428bd522f36a6f1cd77f105bb

8 years agoMerge "Check for column object in eval_none, not propkey"
mike bayer [Wed, 19 Jul 2017 20:21:57 +0000 (16:21 -0400)] 
Merge "Check for column object in eval_none, not propkey"

8 years agoCheck for column object in eval_none, not propkey
Mike Bayer [Tue, 18 Jul 2017 15:41:12 +0000 (11:41 -0400)] 
Check for column object in eval_none, not propkey

Fixed bug involving JSON NULL evaluation logic added in 1.1 as part
of :ticket:`3514` where the logic would not accommodate ORM
mapped attributes named differently from the :class:`.Column`
that was mapped.

Change-Id: I1848afcfb63ad7f074f315d8d3097666069b42be
Fixes: #4031
8 years agoCheck for non-entity when inspecting for subqueryload
Mike Bayer [Tue, 18 Jul 2017 18:58:26 +0000 (14:58 -0400)] 
Check for non-entity when inspecting for subqueryload

Fixed issue where adding additional non-entity columns to
a query that includes an entity with subqueryload relationships
would fail, due to an inspection added in 1.1.11 as a result of
:ticket:`4011`.

Change-Id: I8ef082be649125bdc07b428cb9b0a77a65d73671
Fixes: #4033
8 years agoMerge branch 'patch-1' of https://github.com/tomsitter/sqlalchemy
Mike Bayer [Mon, 17 Jul 2017 14:31:07 +0000 (10:31 -0400)] 
Merge branch 'patch-1' of https://github.com/tomsitter/sqlalchemy

8 years agoMerge branch 'patch-2' of https://github.com/pablogamboa/sqlalchemy
Mike Bayer [Mon, 17 Jul 2017 14:29:13 +0000 (10:29 -0400)] 
Merge branch 'patch-2' of https://github.com/pablogamboa/sqlalchemy

8 years ago- 1.2.0b2 placeholder
Mike Bayer [Fri, 14 Jul 2017 22:05:41 +0000 (18:05 -0400)] 
- 1.2.0b2 placeholder

Change-Id: I95ff7f4bb0048b363987344d359f252469b23b79

8 years agoReplace Session class with session instance
Tom Sitter [Wed, 12 Jul 2017 15:54:25 +0000 (11:54 -0400)] 
Replace Session class with session instance

The Session class was used instead of the session instance which resulted in an attribute error.

8 years agoFix typo, foriegn -> foreign
Pablo Marti [Mon, 10 Jul 2017 17:43:58 +0000 (19:43 +0200)] 
Fix typo, foriegn -> foreign

8 years ago- 1.2.0b1 rel_1_2_0b1
Mike Bayer [Mon, 10 Jul 2017 13:23:28 +0000 (09:23 -0400)] 
- 1.2.0b1

8 years agoFix typo in migration_12
Pablo Marti [Mon, 10 Jul 2017 10:58:11 +0000 (11:58 +0100)] 
Fix typo in migration_12

8 years ago- remove "under development" for 1.2 migration notes
Mike Bayer [Sun, 9 Jul 2017 18:09:36 +0000 (14:09 -0400)] 
- remove "under development" for 1.2 migration notes

Change-Id: I660a4966e7375859058025ef132c595f74293e4c

8 years ago- fix exposed "sourcecode" tags
Mike Bayer [Sun, 9 Jul 2017 17:13:25 +0000 (13:13 -0400)] 
- fix exposed "sourcecode" tags

Change-Id: Ie1bdcf2773f3de96d5ca26ebf80657e5d72c70f9

8 years ago- remove intersphinx usage, the overhead of re-fetching
Mike Bayer [Sun, 9 Jul 2017 17:02:59 +0000 (13:02 -0400)] 
- remove intersphinx usage, the overhead of re-fetching
inventory on every build not worth it

Change-Id: I3c4506b246d0f327c4b56afa723975daee984476

8 years ago- rst fixes
Mike Bayer [Sun, 9 Jul 2017 15:13:10 +0000 (11:13 -0400)] 
- rst fixes

Change-Id: Ice3eeb8312fcb5a4d586113ee3e52be90fbcd95e

8 years agoMerge "Add support for CACHE and ORDER to sequences"
mike bayer [Thu, 6 Jul 2017 13:03:29 +0000 (09:03 -0400)] 
Merge "Add support for CACHE and ORDER to sequences"

8 years agoMerge "Add .autocommit to scoped_session"
mike bayer [Wed, 5 Jul 2017 20:23:57 +0000 (16:23 -0400)] 
Merge "Add .autocommit to scoped_session"

8 years agoAdd support for CACHE and ORDER to sequences
David Moore [Wed, 5 Jul 2017 19:06:49 +0000 (15:06 -0400)] 
Add support for CACHE and ORDER to sequences

Added new keywords :paramref:`.Sequence.cache` and
:paramref:`.Sequence.order` to :class:`.Sequence`, to allow rendering
of the CACHE parameter understood by Oracle and PostgreSQL, and the
ORDER parameter understood by Oracle.  Pull request
courtesy David Moore.

Change-Id: I082c3f8ef56ef89dbaad5da9d5695be5313b0614
Pull-request: https://bitbucket.org/zzzeek/sqlalchemy/pull-requests/96

8 years ago- 1.1.12 placeholder
Mike Bayer [Wed, 5 Jul 2017 20:07:42 +0000 (16:07 -0400)] 
- 1.1.12 placeholder

Change-Id: I23ccfebfbaaf40739a4a538d232875135a5cd04c

8 years agoAdd .autocommit to scoped_session
Ben Fagin [Fri, 30 Jun 2017 20:36:33 +0000 (16:36 -0400)] 
Add .autocommit to scoped_session

Added ``.autocommit`` attribute to :class:`.scoped_session`, proxying
the ``.autocommit`` attribute of the underling :class:`.Session`
currently assigned to the thread.  Pull request courtesy
Ben Fagin.

Change-Id: Iff741978bd67762f4c7375a23cc151b26192042b
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/372

8 years agoImplement MySQL's ON DUPLICATE KEY UPDATE
Michael Doronin [Thu, 15 Jun 2017 14:11:49 +0000 (10:11 -0400)] 
Implement MySQL's ON DUPLICATE KEY UPDATE

Added support for MySQL's ON DUPLICATE KEY UPDATE
MySQL-specific :class:`.mysql.dml.Insert` object.
Pull request courtesy Michael Doronin.

Co-authored-by: Mike Bayer <mike_mp@zzzcomputing.com>
Resolves: #4009
Change-Id: Ic71424f3c88af6082b48a910a2efb7fbfc0a7eb4
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/365

8 years agoInclude missing import in example
Michael Stewart [Fri, 30 Jun 2017 21:02:20 +0000 (14:02 -0700)] 
Include missing import in example

8 years agoCoerce to float for Float with all native decimal backends
Mike Bayer [Mon, 26 Jun 2017 20:50:24 +0000 (16:50 -0400)] 
Coerce to float for Float with all native decimal backends

The result processor for the :class:`.Float` type now unconditionally
runs values through the ``float()`` processor if the dialect
specifies that it also supports "native decimal" mode.  While most
backends will deliver Python ``float`` objects for a floating point
datatype, the MySQL backends in some cases lack the typing information
in order to provide this and return ``Decimal`` unless the float
conversion is done.

Change-Id: I638f1480fb00a507036efaf0e0080f26893d98ad
Fixes: #4020
8 years agoMerge "Support state expiration for with_expression(); rename deferred_expression"
mike bayer [Mon, 26 Jun 2017 19:47:50 +0000 (15:47 -0400)] 
Merge "Support state expiration for with_expression(); rename deferred_expression"

8 years agoSupport state expiration for with_expression(); rename deferred_expression
Mike Bayer [Mon, 26 Jun 2017 17:24:22 +0000 (13:24 -0400)] 
Support state expiration for with_expression(); rename deferred_expression

The attributeimpl for a deferred_expression does not
support a scalar loader, add new configurability so that
the impl can have this flag turned off.   Document
that the with_expression() system currently does not
offer any deferred loading.

To eliminate confusion over "deferred", which refers to
lazy loading of column attributes, and "with_expression",
which refers to an attribute that is explicitly at
query time only, rename deferred_expression to query_expression.

Change-Id: I07c4a050ed68c79ccbde9492e9de1630b7470d74

8 years agoReturn given type when it matches the adaptation
Mike Bayer [Mon, 26 Jun 2017 16:44:15 +0000 (12:44 -0400)] 
Return given type when it matches the adaptation

The rules for type coercion between :class:`.Numeric`, :class:`.Integer`,
and date-related types now include additional logic that will attempt
to preserve the settings of the incoming type on the "resolved" type.
Currently the target for this is the ``asdecimal`` flag, so that
a math operation between :class:`.Numeric` or :class:`.Float` and
:class:`.Integer` will preserve the "asdecimal" flag as well as
if the type should be the :class:`.Float` subclass.

Change-Id: Idfaba17220d6db21ca1ca4dcb4c19834cd397817
Fixes: #4018
8 years agoMerge "Coerce float Python type to Float; ensure Python float coming back"
mike bayer [Mon, 26 Jun 2017 15:56:38 +0000 (11:56 -0400)] 
Merge "Coerce float Python type to Float; ensure Python float coming back"

8 years agoCoerce float Python type to Float; ensure Python float coming back
Mike Bayer [Fri, 23 Jun 2017 03:51:52 +0000 (23:51 -0400)] 
Coerce float Python type to Float; ensure Python float coming back

Added some extra strictness to the handling of Python "float" values
passed to SQL statements.  A "float" value will be associated with the
:class:`.Float` datatype and not the Decimal-coercing :class:`.Numeric`
datatype as was the case before, eliminating a confusing warning
emitted on SQLite as well as unecessary coercion to Decimal.

Change-Id: I1bb1810ff1d198c0d929ccba5656e55401d74119
Fixes: #4017
8 years agoadded link for CrateDB support
Jodok Batlogg [Fri, 23 Jun 2017 19:16:18 +0000 (21:16 +0200)] 
added link for CrateDB support

8 years agoDon't erase reflected comment in _init_existing
Eloy Felix [Tue, 20 Jun 2017 13:29:34 +0000 (09:29 -0400)] 
Don't erase reflected comment in _init_existing

Change-Id: Ie0b78c79367933486528ca0ba686d4a9f16922b1
Pull-request: https://github.com/zzzeek/sqlalchemy/pull/370

8 years agoAdd ad-hoc mapped expressions
Mike Bayer [Mon, 19 Jun 2017 20:35:53 +0000 (16:35 -0400)] 
Add ad-hoc mapped expressions

Added a new feature :func:`.orm.with_expression` that allows an ad-hoc
SQL expression to be added to a specific entity in a query at result
time.  This is an alternative to the SQL expression being delivered as
a separate element in the result tuple.

Change-Id: Id8c479f7489fb02e09427837c59d1eabb2a6c014
Fixes: #3058
8 years ago- 1.1.11 release date
Mike Bayer [Mon, 19 Jun 2017 15:00:59 +0000 (11:00 -0400)] 
- 1.1.11 release date

Change-Id: I351e5727368b67598d091e5153a66987e349f8f6

8 years agoMerge "Handle SHOW VARIABLES returning no row"
mike bayer [Fri, 16 Jun 2017 22:40:13 +0000 (18:40 -0400)] 
Merge "Handle SHOW VARIABLES returning no row"

8 years agoMerge "Add all versioning logic to _post_update()"
mike bayer [Fri, 16 Jun 2017 20:41:14 +0000 (16:41 -0400)] 
Merge "Add all versioning logic to _post_update()"

8 years agoHandle SHOW VARIABLES returning no row
Mike Bayer [Fri, 16 Jun 2017 17:30:25 +0000 (13:30 -0400)] 
Handle SHOW VARIABLES returning no row

MySQL 5.7 has introduced permission limiting for the "SHOW VARIABLES"
command; the MySQL dialect will now handle when SHOW returns no
row, in particular for the initial fetch of SQL_MODE, and will
emit a warning that user permissions should be modified to allow the
row to be present.

Change-Id: I98e7a69230da397b17eae07b7e9d024fa7aeeb26
Fixes: #4007
8 years agoSet complete FROM list for subquery eagerload's orig query
Mike Bayer [Thu, 15 Jun 2017 17:12:16 +0000 (13:12 -0400)] 
Set complete FROM list for subquery eagerload's orig query

Instead of checking that the "orig_entity" we receive applies
as a correct FROM element for the subquery we're building,
set the FROM clause of the query to exactly what it already
is based on column_descriptions (assuming there is no FROM
list already), thereby ensuring that the FROM list will remain
intact, regardless of what orig_entity turns out to be and
what the target_cols ultimately refer towards.

Fixed issue with subquery eagerloading which continues on from
the series of issues fixed in :ticket:`2699`, :ticket:`3106`,
:ticket:`3893` involving that the "subquery" contains the correct
FROM clause when beginning from a joined inheritance subclass
and then subquery eager loading onto a relationship from
the base class, while the query also includes criteria against
the subclass. The fix in the previous tickets did not accommodate
for additional subqueryload operations loading more deeply from
the first level, so the fix has been further generalized.

Change-Id: Ic909590814f71e577d8266b1dbc4c393dc48e019
Fixes: #4011
8 years agoRepair WithinGroup.get_children()
Mike Bayer [Fri, 16 Jun 2017 13:58:03 +0000 (09:58 -0400)] 
Repair WithinGroup.get_children()

Fixed AttributeError which would occur in :class:`.WithinGroup`
construct during an iteration of the structure.

Change-Id: I563882d93c8c32292463a605b636aa60c77e9406
Fixes: #4012
8 years agoAdd all versioning logic to _post_update()
Mike Bayer [Tue, 12 Apr 2016 19:57:20 +0000 (15:57 -0400)] 
Add all versioning logic to _post_update()

An UPDATE emitted as a result of the
:paramref:`.relationship.post_update` feature will now integrate with
the versioning feature to both bump the version id of the row as well
as assert that the existing version number was matched.

Fixes: #3496
Change-Id: I865405dd6069f1c1e3b0d27a4980e9374e059f97

8 years ago- remove redundant fixture from base test class
Mike Bayer [Thu, 15 Jun 2017 20:07:06 +0000 (16:07 -0400)] 
- remove redundant fixture from base test class

Change-Id: I76f197d5b2b39ae476bfff924e899773aa123be0

8 years ago- ensure String has a length for mysql compatibility
Mike Bayer [Thu, 15 Jun 2017 17:51:14 +0000 (13:51 -0400)] 
- ensure String has a length for mysql compatibility

Change-Id: Iaa1077ca5929bdc67300cc6bfb1ba98aff382246

8 years agoRepair regression to pathing for subclasses
Mike Bayer [Thu, 15 Jun 2017 16:03:22 +0000 (12:03 -0400)] 
Repair regression to pathing for subclasses

Issue #3963's initial commit narrowed the "current path"
match rules too much such that a path that matches current
path on subclass would no longer match.

Change-Id: I8c9a0db91a09d789cfb8666288a913f8bbcdb2e9
Fixes: #3963
8 years agoRefinements for unitofwork internals
Mike Bayer [Wed, 14 Jun 2017 16:53:00 +0000 (12:53 -0400)] 
Refinements for unitofwork internals

* remove "mapper" argument from SaveUpdateState, DeleteState
* use __slots__ for all uow action classes
* rename ".delete" to ".isdelete"
* rename issue_post_update to register_post_update since this
  doesn't actually issue the UPDATE
* rename IssuePostUpdate to PostUpdateAll

Change-Id: Ia6263b80d6a86eab1e8ed38df1421b1d0f249797