Commit Graph

2307 Commits

Author SHA1 Message Date
Mike Bayer 2997d3910d - typo 2015-07-26 16:22:35 -04:00
Mike Bayer d73ffaafe6 - add an example of text.columns
- correct the scalar() example output
2015-07-26 16:09:25 -04:00
Mike Bayer 5ab9ab7940 - remove "distutils-only" mode, use setuptools only
- add first-class "pytest" runner to setup.py, fixes #3489
- remove references to setuptools Feature and mark that "--without-cextensions"
 is removed, fixes #3500
2015-07-24 18:52:25 -04:00
Mike Bayer 3180f15837 - Organize the tree for 1.1 2015-07-24 18:27:45 -04:00
Mike Bayer 9e092e3394 - An adjustment to the new Postgresql feature of reflecting storage
options and USING of 🎫`3455` released in 1.0.6,
to disable the feature for Postgresql versions < 8.2 where the
``reloptions`` column is not provided; this allows Amazon Redshift
to again work as it is based on an 8.0.x version of Postgresql.
Fix courtesy Pete Hollobon.
references #3455
2015-07-24 12:24:18 -04:00
Mike Bayer 552f1f135f 1.0.8 2015-07-22 20:00:13 -04:00
Mike Bayer 9140a2f6af - categorize this correctly 2015-07-22 19:59:09 -04:00
Mike Bayer 4096ad0f09 - Fixed critical issue whereby the pool "checkout" event handler
may be called against a stale connection without the "connect"
event handler having been called, in the case where the pool
attempted to reconnect after being invalidated and failed; the stale
connection would remain present and would be used on a subsequent
attempt.  This issue has a greater impact in the 1.0 series subsequent
to 1.0.2, as it also delivers a blanked-out ``.info`` dictionary to
the event handler; prior to 1.0.2 the ``.info`` dictionary is still
the previous one.
fixes #3497
2015-07-22 18:03:36 -04:00
Mike Bayer a6e83b204f 0.9.10 release date
(cherry picked from commit e71cf56a83)
2015-07-22 13:53:28 -04:00
Mike Bayer f39e692d12 - Fixed bug in SQLite dialect where reflection of UNIQUE constraints
that included non-alphabetic characters in the names, like dots or
spaces, would not be reflected with their name.
fixes #3495
2015-07-21 12:33:35 -04:00
Mike Bayer 575f080850 - Fixed an issue where a particular base class within utils
didn't implement ``__slots__``, and therefore meant all subclasses
of that class didn't either, negating the rationale for ``__slots__``
to be in use.  Didn't cause any issue except on IronPython
which apparently does not implement ``__slots__`` behavior compatibly
with cPython.
Fixes #3494
2015-07-20 20:35:04 -04:00
Mike Bayer a4b8aa320d 1.0.7 2015-07-20 14:05:55 -04:00
Mike Bayer c7312cc508 - changelog for #3459, fixes #3459
- test for .cast() method has no good place now except for
test_cast in test_compiler.py
2015-07-19 17:56:18 -04:00
Mike Bayer ddad190529 - Fixed regression where new methods on :class:.ResultProxy used
by the ORM :class:`.Query` object (part of the performance
enhancements of 🎫`3175`) would not raise the "this result
does not return rows" exception in the case where the driver
(typically MySQL) fails to generate cursor.description correctly;
an AttributeError against NoneType would be raised instead.
fixes #3481
2015-07-19 16:32:31 -04:00
Mike Bayer d7ceb63c94 - Fixed regression where :meth:.ResultProxy.keys would return
un-adjusted internal symbol names for "anonymous" labels, which
are the "foo_1" types of labels we see generated for SQL functions
without labels and similar.  This was a side effect of the
performance enhancements implemented as part of references #918.
fixes #3483
2015-07-19 12:20:00 -04:00
Mike Bayer 3cfe3fd81d - Fixed bug where coersion of literal `True or False` constant
in conjunction with :func:`.and_` or :func:`.or_` would fail
with an AttributeError.
fixes #3490
2015-07-19 10:27:33 -04:00
Mike Bayer 41aead96cd - Fixed potential issue where a custom subclass
of :class:`.FunctionElement` or other column element that incorrectly
states 'None' or any other invalid object as the ``.type``
attribute will report this exception instead of recursion overflow.
fixes #3485
2015-07-19 10:00:13 -04:00
Mike Bayer 65554983bd - changelog for pr github:188 2015-07-17 10:45:16 -04:00
Mike Bayer 4f2ede4206 - version specs for new Sequence arguments
- changelog for pullreq github:186
2015-07-17 10:11:29 -04:00
Mike Bayer b68c9ac93e - Fixed bug in :class:.AbstractConcreteBase extension where
a column setup on the ABC base which had a different attribute
name vs. column name would not be correctly mapped on the final
base class.   The failure on 0.9 would be silent whereas on
1.0 it raised an ArgumentError, so may not have been noticed
prior to 1.0.
fixes #3480
2015-07-13 15:39:04 -04:00
Mike Bayer cadc2e0ba0 - try to note under insert.values(), if you need
"multiple parameter sets" there is a much more common case
which works equally well for INSERT/UPDATE/DELETE e.g.
executemany().   reference #3476
2015-07-08 20:37:04 -04:00
Mike Bayer cf21497f02 - fix the link here fixes 3473 2015-07-03 12:16:07 -04:00
Mike Bayer ee34f7276b - Fixed 1.0 regression where value objects that override
``__eq__()`` to return a non-boolean-capable object, such as
some geoalchemy types as well as numpy types, were being tested
for ``bool()`` during a unit of work update operation, where in
0.9 the return value of ``__eq__()`` was tested against "is True"
to guard against this.
fixes #3469
2015-07-01 13:19:28 -04:00
Mike Bayer 4d6f4ed184 - Fixed 1.0 regression where a "deferred" attribute would not populate
correctly if it were loaded within the "optimized inheritance load",
which is a special SELECT emitted in the case of joined table
inheritance used to populate expired or unloaded attributes against
a joined table without loading the base table.  This is related to
the fact that SQLA 1.0 no longer guesses about loading deferred
columns and must be directed explicitly.
fixes #3468
2015-06-29 13:49:44 -04:00
Mike Bayer fcb7c784e9 - Fixed 1.0 regression where the "parent entity" of a synonym-
mapped attribute on top of an :func:`.aliased` object would
resolve to the original mapper, not the :func:`.aliased`
version of it, thereby causing problems for a :class:`.Query`
that relies on this attribute (e.g. it's the only representative
attribute given in the constructor) to figure out the correct FROM
clause for the query.
fixes #3466
- apply consitency to ._parententity vs.
__clause_element__()._annotations['parententity']
in terms of aliased class, test it all.
2015-06-27 00:40:34 -04:00
Mike Bayer 447ee0af1d 1.0.6 2015-06-25 11:33:10 -04:00
Mike Bayer 1e2f1f5baa - Fixed a major regression in the 1.0 series where the version_id_counter
feature would cause an object's version counter to be incremented
when there was no net change to the object's row, but instead an object
related to it via relationship (e.g. typically many-to-one)
were associated or de-associated with it, resulting in an UPDATE
statement that updates the object's version counter and nothing else.
In the use case where the relatively recent "server side" and/or
"programmatic/conditional" version counter feature were used
(e.g. setting version_id_generator to False), the bug could cause an
UPDATE without a valid SET clause to be emitted.
fixes #3465
2015-06-24 21:53:15 -04:00
Mike Bayer 00656ae493 - edits to this section 2015-06-22 22:24:07 -04:00
Mike Bayer be2b35f7f2 - add a new FAQ on re-reading of data within a transaction, since
this is definitely something that is asked regularly.
2015-06-22 21:33:40 -04:00
Mike Bayer 78095940a4 - Fixed issue when using :class:.VARBINARY type in conjunction with
an INSERT of NULL + pyodbc; pyodbc requires a special
object be passed in order to persist NULL.  As the :class:`.VARBINARY`
type is now usually the default for :class:`.LargeBinary` due to
🎫`3039`, this issue is partially a regression in 1.0.
The pymssql driver appears to be unaffected.
fixes #3464
2015-06-22 15:24:41 -04:00
Mike Bayer 24f8ab2bc3 - Re-fixed this issue first released in 1.0.5 to fix psycopg2cffi
JSONB support once again, as they suddenly
switched on unconditional decoding of JSONB types in version 2.7.1.
Version detection now specifies 2.7.1 as where we should expect
the DBAPI to do json encoding for us.
fixes #3439
2015-06-22 11:35:02 -04:00
Mike Bayer 7aa2100db3 - more edits, references #3461 2015-06-19 14:54:26 -04:00
Mike Bayer e625d2ea88 - for #3455
- changelog
- versionadded + reflink for new pg storage parameters doc
- pep8ing
- add additional tests to definitely check that the Index object
is created all the way with the opts we want
fixes #3455
2015-06-19 14:10:47 -04:00
Mike Bayer a1b6e9f324 - fix the bullets
- tone down the "never dispose an engine" language
- refer to NullPool for the "I don't like pooling" use case
references #3461
2015-06-19 13:08:47 -04:00
Mike Bayer 9f4149766c - Fixed 1.0 regression where the enhanced behavior of single-inheritance
joins of 🎫`3222` takes place inappropriately
for a JOIN along explicit join criteria with a single-inheritance
subclass that does not make use of any discriminator, resulting
in an additional "AND NULL" clause.
fixes #3462
2015-06-19 12:24:09 -04:00
Mike Bayer 3d78705cf4 - add explciit section on engine disposal, fixes #3461 2015-06-19 11:49:49 -04:00
Mike Bayer 4a25c10e27 - Repaired the :class:.ExcludeConstraint construct to support common
features that other objects like :class:`.Index` now do, that
the column expression may be specified as an arbitrary SQL
expression such as :obj:`.cast` or :obj:`.text`.
fixes #3454
2015-06-16 14:33:53 -04:00
Mike Bayer b861b7537c - add a subsection on how to use Sequence with server_default,
fixes #3453
2015-06-16 13:16:59 -04:00
Mike Bayer 7f7ae03b0d Merge branch 'pr182' 2015-06-14 16:45:01 -04:00
Mike Bayer 9ccdea3a0f - add test cases for pullreq github:182, where we add a new
"max_row_buffer" execution option for BufferedRowResultProxy
- also add documentation, changelog and version notes
- rework the max_row_buffer argument to be interpreted from
the execution options upfront when the BufferedRowResultProxy
is first initialized.
2015-06-14 16:43:16 -04:00
Mike Bayer 2497d559dd - add changelog for #3451, with 09485d7331 fixes #3451
- also add a bulk_insert_mappings test
2015-06-13 20:15:17 -04:00
Mike Bayer e765c55e8c - Fixed an unexpected-use regression whereby custom :class:.Comparator
objects that made use of the ``__clause_element__()`` method and
returned an object that was an ORM-mapped
:class:`.InstrumentedAttribute` and not explicitly a
:class:`.ColumnElement` would fail to be correctly
handled when passed as an expression to :meth:`.Session.query`.
The logic in 0.9 happened to succeed on this, so this use case is now
supported. fixes #3448
2015-06-11 16:48:00 -04:00
Mike Bayer a463bb31ea - add an 0.9 migration note regarding TypeEngine's default
constructor removal; fixes #3446
2015-06-10 10:48:16 -04:00
Mike Bayer a9030d0241 - Fixed a bug where clause adaption as applied to a :class:.Label
object would fail to accommodate the labeled SQL expression
in all cases, such that any SQL operation that made use of
:meth:`.Label.self_group` would use the original unadapted
expression.  One effect of this would be that an ORM :func:`.aliased`
construct would not fully accommodate attributes mapped by
:obj:`.column_property`, such that the un-aliased table could
leak out when the property were used in some kinds of SQL
comparisons.
fixes #3445
2015-06-09 23:39:14 -04:00
Mike Bayer 1cc50c81b9 - add a migration note for the query.update()/query.delete() change
in #3349
2015-06-09 13:02:43 -04:00
Mike Bayer 8f1130672d - add a comment, also I think we want to expire before we do the
new begin, as begin_nested() does a flush
2015-06-09 12:20:07 -04:00
Mike Bayer c9712e4bd5 Merge remote-tracking branch 'origin/pr/180' into pr180 2015-06-09 12:18:35 -04:00
Mike Bayer 657be357de - Fixed an internal "memoization" routine for method types such
that a Python descriptor is no longer used; repairs inspectability
of these methods including support for Sphinx documentation.
2015-06-08 18:36:27 -04:00
Mike Bayer 0e1da32654 - start 1.0.6 2015-06-08 18:35:15 -04:00
Charles-Axel Dein d1dc39d55d Expire session in testing transaction handling 2015-06-08 10:01:59 -07:00