]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/log
thirdparty/sqlalchemy/sqlalchemy.git
11 years ago- Added :paramref:`.MetaData.reflect.**dialect_kwargs`
Mike Bayer [Sun, 2 Feb 2014 21:33:54 +0000 (16:33 -0500)] 
- Added :paramref:`.MetaData.reflect.**dialect_kwargs`
to support dialect-level reflection options for all :class:`.Table`
objects reflected.

- Added a new dialect-level argument ``postgresql_ignore_search_path``;
this argument is accepted by both the :class:`.Table` constructor
as well as by the :meth:`.MetaData.reflect` method.  When in use
against Postgresql, a foreign-key referenced table which specifies
a remote schema name will retain that schema name even if the name
is present in the ``search_path``; the default behavior since 0.7.3
has been that schemas present in ``search_path`` would not be copied
to reflected :class:`.ForeignKey` objects.  The documentation has been
updated to describe in detail the behavior of the ``pg_get_constraintdef()``
function and how the ``postgresql_ignore_search_path`` feature essentially
determines if we will honor the schema qualification reported by
this function or not. [ticket:2922]

11 years ago- use from_statement() for the ORM column test
Mike Bayer [Sun, 2 Feb 2014 19:40:23 +0000 (14:40 -0500)] 
- use from_statement() for the ORM column test
- with select_from(), add external order by so that Oracle orders correctly

11 years ago- The behavior of :meth:`.Table.tometadata` has been adjusted such that
Mike Bayer [Sun, 2 Feb 2014 19:37:43 +0000 (14:37 -0500)] 
- The behavior of :meth:`.Table.tometadata` has been adjusted such that
the schema target of a :class:`.ForeignKey` will not be changed unless
that schema matches that of the parent table.  That is, if
a table "schema_a.user" has a foreign key to "schema_b.order.id",
the "schema_b" target will be maintained whether or not the
"schema" argument is passed to :meth:`.Table.tometadata`.  However
if a table "schema_a.user" refers to "schema_a.order.id", the presence
of "schema_a" will be updated on both the parent and referred tables.
This is a behavioral change hence isn't likely to be backported to
0.8; it is assumed that the previous behavior is pretty buggy
however and that it's unlikely anyone was relying upon it.

Additionally, a new parameter has been added
:paramref:`.Table.tometadata.referred_schema_fn`.  This refers to a
callable function which will be used to determine the new referred
schema for any :class:`.ForeignKeyConstraint` encountered in the
tometadata operation.  This callable can be used to revert to the
previous behavior or to customize how referred schemas are treated
on a per-constraint basis.  [ticket:2913]

- rework the tests in test.sql.test_metadata, all the "tometadata" tests
now under new class ToMetaDataTest

11 years ago- Fixed bug in new :class:`.TextAsFrom` construct where :class:`.Column`-
Mike Bayer [Sun, 2 Feb 2014 16:06:08 +0000 (11:06 -0500)] 
- Fixed bug in new :class:`.TextAsFrom` construct where :class:`.Column`-
oriented row lookups were not matching up to the ad-hoc :class:`.ColumnClause`
objects that :class:`.TextAsFrom` generates, thereby making it not
usable as a target in :meth:`.Query.from_statement`.  Also fixed
:meth:`.Query.from_statement` mechanics to not mistake a :class:`.TextAsFrom`
for a :class:`.Select` construct.  This bug is also an 0.9 regression
as the :meth:`.Text.columns` method is called to accommodate the
:paramref:`.text.typemap` argument. [ticket:2932]

11 years ago- Added a new feature which allows automated naming conventions to be
Mike Bayer [Sat, 1 Feb 2014 23:21:04 +0000 (18:21 -0500)] 
- Added a new feature which allows automated naming conventions to be
applied to :class:`.Constraint` and :class:`.Index` objects.  Based
on a recipe in the wiki, the new feature uses schema-events to set up
names as various schema objects are associated with each other.  The
events then expose a configuration system through a new argument
:paramref:`.MetaData.naming_convention`.  This system allows production
of both simple and custom naming schemes for constraints and indexes
on a per-:class:`.MetaData` basis.  [ticket:2923]

commit 7e65e52c086652de3dd3303c723f98f09af54db8
Author: Mike Bayer <mike_mp@zzzcomputing.com>
Date:   Sat Feb 1 15:09:04 2014 -0500

    - first pass at new naming approach

11 years agoadd a skip for oracle on this
Mike Bayer [Sat, 1 Feb 2014 18:22:43 +0000 (13:22 -0500)] 
add a skip for oracle on this

11 years ago- don't duplicate docs for Pool within QueuePool
Mike Bayer [Sat, 1 Feb 2014 04:13:13 +0000 (23:13 -0500)] 
- don't duplicate docs for Pool within QueuePool
- add huge warning regarding how use_threadlocal probably not what you want

11 years ago- Added a new directive used within the scope of an attribute "set" operation
Mike Bayer [Sat, 1 Feb 2014 00:57:38 +0000 (19:57 -0500)] 
- Added a new directive used within the scope of an attribute "set" operation
to disable autoflush, in the case that the attribute needs to lazy-load
the "old" value, as in when replacing one-to-one values or some
kinds of many-to-one.  A flush at this point otherwise occurs
at the point that the attribute is None and can cause NULL violations.
[ticket:2921]

11 years ago- Added a new parameter :paramref:`.Operators.op.is_comparison`. This
Mike Bayer [Sat, 1 Feb 2014 00:14:08 +0000 (19:14 -0500)] 
- Added a new parameter :paramref:`.Operators.op.is_comparison`.  This
flag allows a custom op from :meth:`.Operators.op` to be considered
as a "comparison" operator, thus usable for custom
:paramref:`.relationship.primaryjoin` conditions.

11 years ago- Fixed bug whereby SQLite compiler failed to propagate compiler arguments
Mike Bayer [Fri, 31 Jan 2014 22:57:17 +0000 (17:57 -0500)] 
- Fixed bug whereby SQLite compiler failed to propagate compiler arguments
such as "literal binds" into a CAST expression.
- Fixed bug whereby binary type would fail in some cases
if used with a "test" dialect, such as a DefaultDialect or other
dialect with no DBAPI.
- Fixed bug where "literal binds" wouldn't work with a bound parameter
that's a binary type.  A similar, but different, issue is fixed
in 0.8.

11 years agochangelog
Mike Bayer [Fri, 31 Jan 2014 22:31:20 +0000 (17:31 -0500)] 
changelog

11 years ago- Fixed regression whereby the "annotation" system used by the ORM was leaking
Mike Bayer [Wed, 29 Jan 2014 22:33:28 +0000 (17:33 -0500)] 
- Fixed regression whereby the "annotation" system used by the ORM was leaking
into the names used by standard functions in :mod:`sqlalchemy.sql.functions`,
such as ``func.coalesce()`` and ``func.max()``.  Using these functions
in ORM attributes and thus producing annotated versions of them could
corrupt the actual function name rendered in the SQL. [ticket:2927]

11 years ago- better way to do it
Mike Bayer [Wed, 29 Jan 2014 19:57:18 +0000 (14:57 -0500)] 
- better way to do it

11 years ago- add TypeError handling to the tests here, ensure TypeError
Mike Bayer [Wed, 29 Jan 2014 19:55:58 +0000 (14:55 -0500)] 
- add TypeError handling to the tests here, ensure TypeError
for the control is a TypeError for the row, as is raised on py3k when
less/greater operators are used on incompatible types

11 years ago- Fixed 0.9 regression where the new sortable support for :class:`.RowProxy`
Mike Bayer [Wed, 29 Jan 2014 04:43:14 +0000 (23:43 -0500)] 
- Fixed 0.9 regression where the new sortable support for :class:`.RowProxy`
would lead to ``TypeError`` when compared to non-tuple types as it attempted
to apply tuple() to the "other" object unconditionally.  The
full range of Python comparison operators have now been implemented on
:class:`.RowProxy`, using an approach that guarantees a comparison
system that is equivalent to that of a tuple, and the "other" object
is only coerced if it's an instance of RowProxy. [ticket:2924]

11 years ago- repair the fixture/test here to make sure state isn't left over causing other tests...
Mike Bayer [Mon, 27 Jan 2014 18:34:33 +0000 (13:34 -0500)] 
- repair the fixture/test here to make sure state isn't left over causing other tests to fail

11 years ago- docs
Mike Bayer [Mon, 27 Jan 2014 01:02:08 +0000 (20:02 -0500)] 
- docs

11 years agoupdates
Mike Bayer [Sun, 26 Jan 2014 06:04:41 +0000 (01:04 -0500)] 
updates

11 years agohypothetical "floaty thing" for navigation, doesn't really work yet
Mike Bayer [Sat, 25 Jan 2014 22:26:07 +0000 (17:26 -0500)] 
hypothetical "floaty thing" for navigation, doesn't really work yet

11 years agotweak text
Mike Bayer [Sat, 25 Jan 2014 21:55:17 +0000 (16:55 -0500)] 
tweak text

11 years agoseealsos in the tutorial
Mike Bayer [Sat, 25 Jan 2014 21:37:30 +0000 (16:37 -0500)] 
seealsos in the tutorial

11 years agocase
Mike Bayer [Sat, 25 Jan 2014 21:20:46 +0000 (16:20 -0500)] 
case

11 years ago- start building out very comprehensive docstrings for core functions
Mike Bayer [Sat, 25 Jan 2014 20:36:09 +0000 (15:36 -0500)] 
- start building out very comprehensive docstrings for core functions

11 years agolets document join()
Mike Bayer [Sat, 25 Jan 2014 03:48:26 +0000 (22:48 -0500)] 
lets document join()

11 years ago- doc updates, include links to create_engine from tutorials, cleanup
Mike Bayer [Fri, 24 Jan 2014 00:38:46 +0000 (19:38 -0500)] 
- doc updates, include links to create_engine from tutorials, cleanup
and modernize the engines chapter a bit

11 years agotypo
Mike Bayer [Thu, 23 Jan 2014 22:45:13 +0000 (17:45 -0500)] 
typo

11 years ago- remove this leftover commented pdb
Mike Bayer [Thu, 23 Jan 2014 19:50:23 +0000 (14:50 -0500)] 
- remove this leftover commented pdb

11 years ago- Fixed an 0.9 regression where the automatic aliasing applied by
Mike Bayer [Thu, 23 Jan 2014 19:49:04 +0000 (14:49 -0500)] 
- Fixed an 0.9 regression where the automatic aliasing applied by
:class:`.Query` and in other situations where selects or joins
were aliased (such as joined table inheritance) could fail if a
user-defined :class:`.Column` subclass were used in the expression.
In this case, the subclass would fail to propagate ORM-specific
"annotations" along needed by the adaptation.  The "expression
annotations" system has been corrected to account for this case.
[ticket:2918]

11 years agoMerge pull request #60 from wichert/mutable-doc-import
mike bayer [Thu, 23 Jan 2014 17:39:44 +0000 (09:39 -0800)] 
Merge pull request #60 from wichert/mutable-doc-import

Remove uneeded import from code example

11 years agoused the wrong join
Mike Bayer [Thu, 23 Jan 2014 02:42:56 +0000 (21:42 -0500)] 
used the wrong join

11 years ago- Support is improved for supplying a :func:`.join` construct as the
Mike Bayer [Thu, 23 Jan 2014 01:16:47 +0000 (20:16 -0500)] 
- Support is improved for supplying a :func:`.join` construct as the
target of :paramref:`.relationship.secondary` for the purposes
of creating very complex :func:`.relationship` join conditions.
The change includes adjustments to query joining, joined eager loading
to not render a SELECT subquery, changes to lazy loading such that
the "secondary" target is properly included in the SELECT, and
changes to declarative to better support specification of a
join() object with classes as targets.

11 years ago- Added new test coverage for so-called "down adaptions" of SQL types,
Mike Bayer [Wed, 22 Jan 2014 20:38:00 +0000 (15:38 -0500)] 
- Added new test coverage for so-called "down adaptions" of SQL types,
where a more specific type is adapted to a more generic one - this
use case is needed by some third party tools such as ``sqlacodegen``.
The specific cases that needed repair within this test suite were that
of :class:`.mysql.ENUM` being downcast into a :class:`.types.Enum`,
and that of SQLite date types being cast into generic date types.
The ``adapt()`` method needed to become more specific here to counteract
the removal of a "catch all" ``**kwargs`` collection on the base
:class:`.TypeEngine` class that was removed in 0.9. [ticket:2917]

11 years ago- add redshift-sqlalchemy, essentially fixes [ticket:2727]
Mike Bayer [Wed, 22 Jan 2014 00:33:25 +0000 (19:33 -0500)] 
- add redshift-sqlalchemy, essentially fixes [ticket:2727]

11 years ago- update docs for Numeric/Float, in particular warn against using mismatched
Mike Bayer [Tue, 21 Jan 2014 18:29:04 +0000 (13:29 -0500)] 
- update docs for Numeric/Float, in particular warn against using mismatched
types (e.g. [ticket:2916])

11 years ago- Fixed the multiple-table "UPDATE..FROM" construct, only usable on
Mike Bayer [Tue, 21 Jan 2014 02:01:35 +0000 (21:01 -0500)] 
- Fixed the multiple-table "UPDATE..FROM" construct, only usable on
MySQL, to correctly render the SET clause among multiple columns
with the same name across tables.  This also changes the name used for
the bound parameter in the SET clause to "<tablename>_<colname>" for
the non-primary table only; as this parameter is typically specified
using the :class:`.Column` object directly this should not have an
impact on applications.   The fix takes effect for both
:meth:`.Table.update` as well as :meth:`.Query.update` in the ORM.
[ticket:2912]

11 years agouse new paramlinks 0.2.2, trying to fix param links for __init__ vs. class
Mike Bayer [Mon, 20 Jan 2014 23:31:42 +0000 (18:31 -0500)] 
use new paramlinks 0.2.2, trying to fix param links for __init__ vs. class

11 years ago- further refine this so that the ordering of columns is maintained as
Mike Bayer [Mon, 20 Jan 2014 23:14:02 +0000 (18:14 -0500)] 
- further refine this so that the ordering of columns is maintained as
sent to the primary key constraint; existing tests in the PG dialect
confirm this.

11 years ago- simplify the mechanics of PrimaryKeyConstraint with regards to reflection;
Mike Bayer [Mon, 20 Jan 2014 22:55:01 +0000 (17:55 -0500)] 
- simplify the mechanics of PrimaryKeyConstraint with regards to reflection;
reflection now updates the PKC in place.
- support the use case of the empty PrimaryKeyConstraint in order to specify
constraint options; the columns marked as primary_key=True will now be gathered
into the columns collection, rather than being ignored. [ticket:2910]
- add validation such that column specification should only take place
in the PrimaryKeyConstraint directly, or by using primary_key=True flags;
if both are present, they have to match exactly, otherwise the condition is
assumed to be ambiguous, and a warning is emitted; the old behavior of
using the PKC columns only is maintained.

11 years ago- repair signature for base get_unique_constraints() method
Mike Bayer [Mon, 20 Jan 2014 21:09:40 +0000 (16:09 -0500)] 
- repair signature for base get_unique_constraints() method
- test_autoincrement_col still needs reflection overall

11 years ago- ensure ordering is fully maintained, [ticket:2914]
Mike Bayer [Mon, 20 Jan 2014 20:36:45 +0000 (15:36 -0500)] 
- ensure ordering is fully maintained, [ticket:2914]

11 years agoRemove uneeded import from code example
Wichert Akkerman [Mon, 20 Jan 2014 09:59:20 +0000 (10:59 +0100)] 
Remove uneeded import from code example

This had me reread the code twice to see if I missed why the import was
present.

11 years agofix typo
Mike Bayer [Sun, 19 Jan 2014 22:51:21 +0000 (17:51 -0500)] 
fix typo

11 years agoMerge pull request #59 from wichert/doc-relationship-typo
mike bayer [Sun, 19 Jan 2014 22:50:06 +0000 (14:50 -0800)] 
Merge pull request #59 from wichert/doc-relationship-typo

Fix a typo in the relationship docs

11 years ago- alter behavior such that dialect_kwargs is still immutable, but
Mike Bayer [Sun, 19 Jan 2014 21:32:36 +0000 (16:32 -0500)] 
- alter behavior such that dialect_kwargs is still immutable, but
now represents exactly the kwargs that were passed, and not the defaults.
the defaults are still in dialect_options.  This allows repr() schemes such as that
of alembic to not need to look through and compare for defaults.

11 years ago- some test fixes
Mike Bayer [Sun, 19 Jan 2014 05:34:37 +0000 (00:34 -0500)] 
- some test fixes
- clean up some shenanigans in reflection

11 years agoakiban-> foundationdb
Mike Bayer [Sun, 19 Jan 2014 01:56:56 +0000 (20:56 -0500)] 
akiban-> foundationdb

11 years ago- implement kwarg validation and type system for dialect-specific
Mike Bayer [Sun, 19 Jan 2014 00:26:56 +0000 (19:26 -0500)] 
- implement kwarg validation and type system for dialect-specific
arguments; [ticket:2866]
- add dialect specific kwarg functionality to ForeignKeyConstraint, ForeignKey

11 years agocredit to Derek Harland
Mike Bayer [Sat, 18 Jan 2014 20:15:42 +0000 (15:15 -0500)] 
credit to Derek Harland

11 years ago- changelog for pullreq:11
Mike Bayer [Sat, 18 Jan 2014 20:13:20 +0000 (15:13 -0500)] 
- changelog for pullreq:11
- be specific about version 0.9.2

11 years agoMerge branch 'patch-msql-pkc-clustered' of bitbucket.org:dharland/sqlalchemy into m
Mike Bayer [Sat, 18 Jan 2014 20:06:08 +0000 (15:06 -0500)] 
Merge branch 'patch-msql-pkc-clustered' of bitbucket.org:dharland/sqlalchemy into m

11 years agocx_oracle is now "conditional" on py2k
Mike Bayer [Fri, 17 Jan 2014 23:52:14 +0000 (18:52 -0500)] 
cx_oracle is now "conditional" on py2k

11 years ago- rework Oracle to no longer do its own unicode conversion; this has been observed
Mike Bayer [Fri, 17 Jan 2014 22:36:43 +0000 (17:36 -0500)] 
- rework Oracle to no longer do its own unicode conversion; this has been observed
to be very slow.  this now has the effect of producing "conditional" unicode
conversion for the Oracle backend, as it still returns NVARCHAR etc. as unicode
[ticket:2911]
- add new "conditional" functionality to unicode processors; the C-level
function now uses PyUnicode_Check() as a fast alternative to the isinstance()
check in Python

11 years agoBug Fix: Stop generating bad sql if an empty UniqueConstraint() is given
donkopotamus [Thu, 16 Jan 2014 22:00:24 +0000 (11:00 +1300)] 
Bug Fix: Stop generating bad sql if an empty UniqueConstraint() is given

11 years agoSupport mssql_clustered option on UniqueConstraint (plus docs and test)
donkopotamus [Thu, 16 Jan 2014 21:46:16 +0000 (10:46 +1300)] 
Support mssql_clustered option on UniqueConstraint (plus docs and test)

11 years agoRemove support for mssql_clustered on Table
donkopotamus [Thu, 16 Jan 2014 21:38:31 +0000 (10:38 +1300)] 
Remove support for mssql_clustered on Table

11 years agoFix a typo in the relationship docs
Wichert Akkerman [Thu, 16 Jan 2014 10:23:05 +0000 (11:23 +0100)] 
Fix a typo in the relationship docs

The text refers to ``boston_addresses``, while the code sample uses
``addresses``.

11 years agoeven simpler
Mike Bayer [Wed, 15 Jan 2014 20:22:11 +0000 (15:22 -0500)] 
even simpler

11 years ago- should close the session before rolling back the transaction
Mike Bayer [Wed, 15 Jan 2014 20:14:24 +0000 (15:14 -0500)] 
- should close the session before rolling back the transaction
- make section title actually say, "such as for test suites"
- add topic section detailing an evented approach to allowing ROLLBACK by using savepoint

11 years ago- changelog + test for pullreq github 58
Mike Bayer [Wed, 15 Jan 2014 01:22:11 +0000 (20:22 -0500)] 
- changelog + test for pullreq github 58

11 years agoMerge pull request #58 from kstark/patch-1
mike bayer [Wed, 15 Jan 2014 01:20:03 +0000 (17:20 -0800)] 
Merge pull request #58 from kstark/patch-1

Fix TypeError for class_mapper called w/ iterable

11 years ago- _cursor_execute() will close the cursor on error; oracle doesn't allow double close
Mike Bayer [Tue, 14 Jan 2014 02:20:54 +0000 (21:20 -0500)] 
- _cursor_execute() will close the cursor on error; oracle doesn't allow double close
- ensure no iterator changed size issues in testing.engines

11 years agoSupport mssql_clustered option in mssql dialect for both Table and PrimaryKeyConstraint
donkopotamus [Mon, 13 Jan 2014 23:44:05 +0000 (12:44 +1300)] 
Support mssql_clustered option in mssql dialect for both Table and PrimaryKeyConstraint

11 years ago- Fixed a bug involving the new flattened JOIN structures which
Mike Bayer [Mon, 13 Jan 2014 22:53:37 +0000 (17:53 -0500)] 
- Fixed a bug involving the new flattened JOIN structures which
are used with :func:`.joinedload()` (thereby causing a regression
in joined eager loading) as well as :func:`.aliased`
in conjunction with the ``flat=True`` flag and joined-table inheritance;
basically multiple joins across a "parent JOIN sub" entity using different
paths to get to a target class wouldn't form the correct ON conditions.
An adjustment / simplification made in the mechanics of figuring
out the "left side" of the join in the case of an aliased, joined-inh
class repairs the issue. [ticket:2908]

11 years agoMerged zzzeek/sqlalchemy into master
Derek Harland [Mon, 13 Jan 2014 22:44:29 +0000 (11:44 +1300)] 
Merged zzzeek/sqlalchemy into master

11 years ago- a little bit of profile bump, just on insert not too concerned
Mike Bayer [Mon, 13 Jan 2014 21:35:50 +0000 (16:35 -0500)] 
- a little bit of profile bump, just on insert not too concerned

11 years ago- The MySQL CAST compilation now takes into account aspects of a string
Mike Bayer [Mon, 13 Jan 2014 19:05:05 +0000 (14:05 -0500)] 
- The MySQL CAST compilation now takes into account aspects of a string
type such as "charset" and "collation".  While MySQL wants all character-
based CAST calls to use the CHAR type, we now create a real CHAR
object at CAST time and copy over all the parameters it has, so that
an expression like ``cast(x, mysql.TEXT(charset='utf8'))`` will
render ``CAST(t.col AS CHAR CHARACTER SET utf8)``.

- Added new "unicode returns" detection to the MySQL dialect and
to the default dialect system overall, such that any dialect
can add extra "tests" to the on-first-connect "does this DBAPI
return unicode directly?" detection. In this case, we are
adding a check specifically against the "utf8" encoding with
an explicit "utf8_bin" collation type (after checking that
this collation is available) to test for some buggy unicode
behavior observed with MySQLdb version 1.2.3.  While MySQLdb
has resolved this issue as of 1.2.4, the check here should
guard against regressions.  The change also allows the "unicode"
checks to log in the engine logs, which was not previously
the case. [ticket:2906]

11 years agoFix TypeError for class_mapper called w/ iterable
Kyle Stark [Mon, 13 Jan 2014 16:52:31 +0000 (08:52 -0800)] 
Fix TypeError for class_mapper called w/ iterable

When the class_ passed is not a mapped class but is actually an iterable, the string formatting operation fails with a TypeError, and the expected ArgumentError is not raised. Calling code which is using reflection and expects this error will fail (e.g. the sadisplay module).

11 years agoupdate changelog from 0.3.2 to 0.3.4, re-patching the part of 2775c95b1ee30831216cc5...
Mike Bayer [Mon, 13 Jan 2014 15:37:53 +0000 (10:37 -0500)] 
update changelog from 0.3.2 to 0.3.4, re-patching the part of 2775c95b1ee30831216cc5 that was
intended

11 years agorevert r2775c95b1ee30831216cc5 which was mostly an inadvertent commit, except for...
Mike Bayer [Mon, 13 Jan 2014 15:37:15 +0000 (10:37 -0500)] 
revert r2775c95b1ee30831216cc5 which was mostly an inadvertent commit, except for the changelog part

11 years ago- continue with [ticket:2907] and further clean up how we set up
Mike Bayer [Mon, 13 Jan 2014 08:22:11 +0000 (03:22 -0500)] 
- continue with [ticket:2907] and further clean up how we set up
_reset_agent, so that it's local to the various begin_impl(),
rollback_impl(), etc.  this allows setting/resetting of the flag
to be symmetric.
- don't set _reset_agent if it's not None, don't unset it if it isn't
our own transaction.
- make sure we clean it out in close().
- basically, we're dealing here with pools using "threadlocal" that have a
counter, other various mismatches that the tests bring up
- test for recover() now has to invalidate() the previous connection,
because closing it actually rolls it back (e.g. this test was relying
on the broken behavior).

11 years ago- dont run deletes here
Mike Bayer [Mon, 13 Jan 2014 07:38:41 +0000 (02:38 -0500)] 
- dont run deletes here

11 years ago- :class:`.Connection` now associates a new
Mike Bayer [Mon, 13 Jan 2014 00:43:13 +0000 (19:43 -0500)] 
- :class:`.Connection` now associates a new
:class:`.RootTransaction` or :class:`.TwoPhaseTransaction`
with its immediate :class:`._ConnectionFairy` as a "reset handler"
for the span of that transaction, which takes over the task
of calling commit() or rollback() for the "reset on return" behavior
of :class:`.Pool` if the transaction was not otherwise completed.
This resolves the issue that a picky transaction
like that of MySQL two-phase will be
properly closed out when the connection is closed without an
explicit rollback or commit (e.g. no longer raises "XAER_RMFAIL"
in this case - note this only shows up in logging as the exception
is not propagated within pool reset).
This issue would arise e.g. when using an orm
:class:`.Session` with ``twophase`` set, and then
:meth:`.Session.close` is called without an explicit rollback or
commit.   The change also has the effect that you will now see
an explicit "ROLLBACK" in the logs when using a :class:`.Session`
object in non-autocommit mode regardless of how that session was
discarded.  Thanks to Jeff Dairiki and Laurence Rowe for isolating
the issue here. [ticket:2907]

11 years ago- add new event PoolEvents.invalidate(). allows interception of invalidation
Mike Bayer [Sun, 12 Jan 2014 22:34:20 +0000 (17:34 -0500)] 
- add new event PoolEvents.invalidate().  allows interception of invalidation
events including auto-invalidation, which is useful both for tests here as well as
detecting failure conditions within the "reset" or "close" cases.
- rename the argument for PoolEvents.reset() to dbapi_connection and connection_record
to be consistent with everything else.
- add new documentation sections on invalidation, including auto-invalidation
and the invalidation process within the pool.
- add _ConnectionFairy and _ConnectionRecord to the pool documentation.  Establish
docs for common _ConnectionFairy/_ConnectionRecord methods and accessors and
have PoolEvents docs refer to _ConnectionRecord,
since it is passed to all events.  Rename a few _ConnectionFairy methods that are actually
private to pool such as _checkout(), _checkin() and _checkout_existing(); there should not
be any external code calling these

11 years ago- bump up how many args for "named arg style" to four
Mike Bayer [Sun, 12 Jan 2014 22:15:41 +0000 (17:15 -0500)] 
- bump up how many args for "named arg style" to four

11 years ago- changelog for pullreq github 57
Mike Bayer [Sun, 12 Jan 2014 17:42:01 +0000 (12:42 -0500)] 
- changelog for pullreq github 57

11 years ago- pullreq github 55 is in the wrong changelog! 0.9.2...
Mike Bayer [Sun, 12 Jan 2014 17:40:48 +0000 (12:40 -0500)] 
- pullreq github 55 is in the wrong changelog!  0.9.2...

11 years agoMerge pull request #57 from sdague/master
mike bayer [Sun, 12 Jan 2014 17:37:56 +0000 (09:37 -0800)] 
Merge pull request #57 from sdague/master

expose SchemaVisitor in the compatibility layer

11 years agoexpose SchemaVisitor in the compatibility layer
Sean Dague [Sun, 12 Jan 2014 04:08:27 +0000 (23:08 -0500)] 
expose SchemaVisitor in the compatibility layer

sqlalchemy-migrate uses SchemaVisitor. It was one of the only
objects that changed namespaces without compatibility that we use.

Would love to get this added to remove a work around we need at
https://review.openstack.org/#/c/66156/

11 years ago- add a CLI to determine waht kind of test to run
Mike Bayer [Sun, 12 Jan 2014 00:43:50 +0000 (19:43 -0500)] 
- add a CLI to determine waht kind of test to run

11 years agonew changelog
Mike Bayer [Sat, 11 Jan 2014 18:12:40 +0000 (13:12 -0500)] 
new changelog

11 years ago- fix some function mismatch in profiling
Mike Bayer [Fri, 10 Jan 2014 04:20:00 +0000 (23:20 -0500)] 
- fix some function mismatch in profiling

11 years ago0.9.2
Mike Bayer [Thu, 9 Jan 2014 23:35:22 +0000 (18:35 -0500)] 
0.9.2

11 years agochangelog for pullreq github:55
Mike Bayer [Thu, 9 Jan 2014 23:34:44 +0000 (18:34 -0500)] 
changelog for pullreq github:55

11 years agoUse PyMODINIT_FUNC
cgohlke [Wed, 8 Jan 2014 20:36:17 +0000 (12:36 -0800)] 
Use PyMODINIT_FUNC

11 years agoUse PyMODINIT_FUNC
cgohlke [Wed, 8 Jan 2014 20:35:42 +0000 (12:35 -0800)] 
Use PyMODINIT_FUNC

11 years agoUse PyMODINIT_FUNC
cgohlke [Wed, 8 Jan 2014 20:34:45 +0000 (12:34 -0800)] 
Use PyMODINIT_FUNC

11 years ago- fixes
Mike Bayer [Wed, 8 Jan 2014 17:26:07 +0000 (12:26 -0500)] 
- fixes

11 years ago- add more critical behavioral change for [ticket:2804]
Mike Bayer [Wed, 8 Jan 2014 16:36:19 +0000 (11:36 -0500)] 
- add more critical behavioral change for [ticket:2804]

11 years ago- 0.9.1 rel_0_9_1
Mike Bayer [Mon, 6 Jan 2014 00:29:15 +0000 (19:29 -0500)] 
- 0.9.1

11 years ago- these tests are really old but trying to make sure everything is closed out
Mike Bayer [Sun, 5 Jan 2014 23:25:51 +0000 (18:25 -0500)] 
- these tests are really old but trying to make sure everything is closed out

11 years agofix the changelog merge
Mike Bayer [Sun, 5 Jan 2014 23:25:24 +0000 (18:25 -0500)] 
fix the changelog merge

11 years ago- happy new year
Mike Bayer [Sun, 5 Jan 2014 21:57:05 +0000 (16:57 -0500)] 
- happy new year

11 years ago0.9.1
Mike Bayer [Sun, 5 Jan 2014 21:49:03 +0000 (16:49 -0500)] 
0.9.1

11 years ago- docs + tests
Mike Bayer [Sun, 5 Jan 2014 21:48:01 +0000 (16:48 -0500)] 
- docs + tests

11 years agoMerge branch 'automap'
Mike Bayer [Sun, 5 Jan 2014 21:47:15 +0000 (16:47 -0500)] 
Merge branch 'automap'

Conflicts:
doc/build/changelog/changelog_09.rst

11 years ago- many-to-many support
Mike Bayer [Sun, 5 Jan 2014 21:46:01 +0000 (16:46 -0500)] 
- many-to-many support
- tests
- full documentation, changelog, new in 0.9 announcement

11 years ago- fix some docstring stuff
Mike Bayer [Sun, 5 Jan 2014 21:42:56 +0000 (16:42 -0500)] 
- fix some docstring stuff

11 years ago- conjunctions like and_() and or_() can now accept generators as arguments.
Mike Bayer [Sun, 5 Jan 2014 19:11:12 +0000 (14:11 -0500)] 
- conjunctions like and_() and or_() can now accept generators as arguments.

11 years ago- basic functionality.
Mike Bayer [Sun, 5 Jan 2014 02:14:11 +0000 (21:14 -0500)] 
- basic functionality.

11 years ago- The :paramref:`.Table.extend_existing` and :paramref:`.Table.autoload_replace`
Mike Bayer [Sun, 5 Jan 2014 02:12:31 +0000 (21:12 -0500)] 
- The :paramref:`.Table.extend_existing` and :paramref:`.Table.autoload_replace`
parameters are now available on the :meth:`.MetaData.reflect`
method.
- starting to use paramref and need newer paramlinks version.