Commit Graph

5028 Commits

Author SHA1 Message Date
Mike Bayer fabd00feb3 this is 0.7.10 2013-02-07 18:54:49 -05:00
Mike Bayer 3b483dac2e Added a conditional import to the ``gaerdbms`` dialect which attempts
to import rdbms_apiproxy vs. rdbms_googleapi to work
on both dev and production platforms.  Also now honors the
``instance`` attribute.  Courtesy Sean Lynch.  Also backported
enhancements to allow username/password as well as
fixing error code interpretation from 0.8.
[ticket:2649]
2013-02-02 21:03:57 -05:00
Mike Bayer b517e974e0 Backported adjustment to ``__repr__`` for
:class:`.TypeDecorator` to 0.7, allows :class:`.PickleType`
to produce a clean ``repr()`` to help with Alembic.
[ticket:2594] [ticket:2584]
2013-02-02 17:00:32 -05:00
Mike Bayer 11efa216e5 moderinize ordering list docs [ticket:2557] 2013-02-02 16:49:19 -05:00
Mike Bayer 027eda4a34 Fixed bug where :meth:`.Table.tometadata` would fail if a
:class:`.Column` had both a foreign key as well as an
alternate ".key" name for the column.
[ticket:2643]
2013-01-27 11:24:45 -05:00
Mike Bayer 397ff3c84d Added a py3K conditional around unnecessary .decode()
call in mssql information schema, fixes reflection
in Py3K. [ticket:2638]
2013-01-12 19:52:26 -05:00
Mike Bayer 5f65518595 remove all specifics from the "supported features" section as this
is not maintainable
2013-01-12 17:44:07 -05:00
Mike Bayer 973fd4a28a Fixed potential memory leak which could occur if an
arbitrary number of :func:`.sessionmaker` objects
were created.   The anonymous subclass created by
the sessionmaker, when dereferenced, would not be garbage
collected due to remaining class-level references from the
event package.  This issue also applies to any custom system
that made use of ad-hoc subclasses in conjunction with
an event dispatcher. [ticket:2650]
2013-01-12 17:32:32 -05:00
Mike Bayer 9f72910c7c :meth:`.Query.merge_result` can now load rows from an outer join
where an entity may be ``None`` without throwing an error.

[ticket:2640]
2013-01-08 10:57:15 -05:00
Mike Bayer 5de45b954b - add test_loading from 0.8
- adapt 0.8's system of pre-calcing labels from query entities
2013-01-08 10:21:53 -05:00
Diana Clarke 8a99f3e13c happy new year (see #2645) 2013-01-01 18:58:03 -05:00
Mike Bayer 6dd4bda241 merge taavi's fix from default 2012-12-31 11:51:39 -05:00
Mike Bayer 3f72142df0 More adjustment to this SQLite related issue which was released in
0.7.9, to intercept legacy SQLite quoting characters when reflecting
foreign keys.  In addition to intercepting double quotes, other
quoting characters such as brackets, backticks, and single quotes
are now also intercepted. [ticket:2568]
2012-12-14 10:32:56 -05:00
Mike Bayer 4bfa09c16c Fixed bug where using server_onupdate=<FetchedValue|DefaultClause>
without passing the "for_update=True" flag would apply the default
object to the server_default, blowing away whatever was there.
The explicit for_update=True argument shouldn't be needed with this usage
(especially since the documentation shows an example without it being
used) so it is now arranged internally using a copy of the given default
object, if the flag isn't set to what corresponds to that argument.
[ticket:2631]
2012-12-08 20:31:06 -05:00
Mike Bayer f2909ff71b The Oracle LONG type, while an unbounded text type, does not appear
to use the cx_Oracle.LOB type when result rows are returned,
so the dialect has been repaired to exclude LONG from
having cx_Oracle.LOB filtering applied.
[ticket:2620]
2012-12-06 19:32:58 -05:00
Mike Bayer a1405b3d5a merge dance 2012-12-06 19:15:09 -05:00
Mike Bayer 0b0415f49b Repaired the usage of ``.prepare()`` in conjunction with
cx_Oracle so that a return value of ``False`` will result
in no call to ``connection.commit()``, hence avoiding
"no transaction" errors.   Two-phase transactions have
now been shown to work in a rudimental fashion with
SQLAlchemy and cx_oracle, however are subject to caveats
observed with the driver; check the documentation
for details. [ticket:2611]
2012-12-06 19:14:12 -05:00
Diana Clarke cf7a4abbf3 should be 'where' not 'filter' #2546 2012-12-05 19:54:40 -05:00
Mike Bayer 84e000f076 The :class:`.MutableComposite` type did not allow for the
:meth:`.MutableBase.coerce` method to be used, even though
the code seemed to indicate this intent, so this now works
and a brief example is added.  As a side-effect,
the mechanics of this event handler have been changed so that
new :class:`.MutableComposite` types no longer add per-type
global event handlers.  Also in 0.8.0b2.
[ticket:2624]
2012-12-03 19:56:55 -05:00
Mike Bayer bef89a2440 Fixed :meth:`.MetaData.reflect` to correctly use
the given :class:`.Connection`, if given, without
opening a second connection from that connection's
:class:`.Engine`. [ticket:2604]
2012-11-14 00:51:38 -05:00
Mike Bayer 7a03aded91 Fixed bug whereby using "key" with Column
in conjunction with "schema" for the owning
Table would fail to locate result rows due
to the MSSQL dialect's "schema rendering"
logic's failure to take .key into account.
[ticket:2607]
2012-11-13 23:45:52 -05:00
Mike Bayer 3fbbecbf16 - [bug] changed the list of cx_oracle types that are
excluded from the setinputsizes() step to only include
    STRING and UNICODE; CLOB and NCLOB are removed.  This
    is to work around cx_oracle behavior which is broken
    for the executemany() call.  In 0.8, this same change
    is applied however it is also configurable via the
    exclude_setinputsizes argument. [ticket:2561]
2012-10-10 13:22:57 -04:00
Mike Bayer 44297b474f - [feature] Added "read_timeout" flag to MySQLdb
dialect.  [ticket:2554]
2012-10-10 13:15:16 -04:00
Mike Bayer 7d0f69170e - [feature] Added "raise_on_warnings" flag to OurSQL
dialect.  [ticket:2523]
2012-10-10 13:13:41 -04:00
Mike Bayer 23cad2a549 fix __init__ in the metaclass 2012-10-04 10:32:51 -04:00
Mike Bayer ee9518f8ae - add one more #2583 test to cover the "multiple PK switch" use case 2012-10-03 11:11:34 -04:00
Mike Bayer 49703bf01a - [bug] Fixed Session accounting bug whereby replacing
a deleted object in the identity map with another
    object of the same primary key would raise a
    "conflicting state" error on rollback(),
    if the replaced primary key were established either
    via non-unitofwork-established INSERT statement
    or by primary key switch of another instance.
    [ticket:2583]
2012-10-03 11:06:22 -04:00
Mike Bayer 557994bd19 obvious tidy 2012-10-01 17:28:57 -04:00
Mike Bayer a856dc9217 - [bug] Fixed bug where reflection of primary key constraint
would double up columns if the same constraint/table
    existed in multiple schemas.
2012-09-30 18:24:51 -04:00
Mike Bayer 2205d49fe7 - [bug] Fixed bug in over() construct whereby
passing an empty list for either partition_by
    or order_by, as opposed to None, would fail
    to generate correctly.
    Courtesy Gunnlaugur Por Briem.
    [ticket:2574]
2012-09-30 17:20:04 -04:00
Mike Bayer 0d41daa509 - [bug] Fixed compiler bug whereby using a correlated
subquery within an ORDER BY would fail to render correctly
    if the stament also used LIMIT/OFFSET, due to mis-rendering
    within the ROW_NUMBER() OVER clause.  Fix courtesy
    sayap [ticket:2538]
2012-09-30 16:57:23 -04:00
Mike Bayer f6825fdeea - dont talk about metadata.bind
- fix some :func:->:class: declared_attr
2012-09-30 11:17:25 -04:00
Mike Bayer f1631d5f14 Merged in mitchellrj/sqlalchemy (pull request #21) 2012-09-26 10:17:55 -04:00
Mike Bayer 71292e8258 - [bug] Added 'terminating connection' to the list
of messages we use to detect a disconnect with PG, which
    appears to be present in some versions when the server
    is restarted.  [ticket:2570]
2012-09-25 16:54:50 -04:00
Mike Bayer 43453dfa31 - [bug] Fixed the DropIndex construct to support
an Index associated with a Table in a remote
    schema. [ticket:2571]
2012-09-24 11:17:16 -04:00
Mike Bayer 2e72b91a0c - [bug] Columns in reflected primary key constraint
are now returned in the order in which the constraint
    itself defines them, rather than how the table
    orders them.  Courtesy Gunnlaugur Por Briem.
    [ticket:2531].
2012-09-23 13:42:41 -04:00
Mike Bayer 5008021a09 - upgrade to 0.8's exclusion mechanism for test compatibility 2012-09-23 13:36:28 -04:00
Mike Bayer 1a03276d19 - [bug] When the primary key column of a Table
is replaced, such as via extend_existing,
    the "auto increment" column used by insert()
    constructs is reset.  Previously it would
    remain referring to the previous primary
    key column.  [ticket:2525]
2012-09-23 12:51:24 -04:00
Mike Bayer 74ae1f7687 - improve docs for MySQL/SQLite foreign key/ON UPDATE|DELETE instructions,
[ticket:2514]
2012-09-23 12:24:24 -04:00
Mike Bayer 33d741b2f3 - [bug] Adjusted column default reflection code to
convert non-string values to string, to accommodate
old SQLite versions that don't deliver
default info as a string.  [ticket:2265]
- factor sqlite column reflection to be like we did for postgresql,
in a separate method.
2012-09-23 11:30:07 -04:00
Mike Bayer e5d143aae3 - aaand actually get is/isnot to be usable with None/NULL 2012-09-22 16:46:29 -04:00
Mike Bayer 1b12c86900 - [bug] Added missing operators is_(), isnot()
to the ColumnOperators base, so that these long-available
    operators are present as methods like all
    the other operators.  [ticket:2544]
2012-09-22 16:31:32 -04:00
Mike Bayer fa695c5524 - add the small bit of test_operators that can apply to 0.7 2012-09-22 16:30:04 -04:00
Mike Bayer 2de752afb4 - [bug] Extra logic has been added to the "flush"
that occurs within Session.commit(), such that the
    extra state added by an after_flush() or
    after_flush_postexec() hook is also flushed in a
    subsequent flush, before the "commit" completes.
    Subsequent calls to flush() will continue until
    the after_flush hooks stop adding new state.
    An "overflow" counter of 100 is also in place,
    in the event of a broken after_flush() hook
    adding new content each time. [ticket:2566]
2012-09-22 16:03:57 -04:00
Mike Bayer 214b505ed5 mapper configured doc 2012-09-21 12:12:01 -04:00
Mike Bayer 088cf5e622 - repair bool() for instance level event listener where events are classlevel, continuing [ticket:2516],
for some reason the impl was different here than that of 0.8
2012-09-20 12:05:16 -04:00
Mike Bayer da626917a8 - [bug] Adjusted a very old bugfix which attempted
to work around a SQLite issue that itself was
    "fixed" as of sqlite 3.6.14, regarding quotes
    surrounding a table name when using
    the "foreign_key_list" pragma.  The fix has been
    adjusted to not interfere with quotes that
    are *actually in the name* of a column or table,
    to as much a degree as possible; sqlite still
    doesn't return the correct result for foreign_key_list()
    if the target table actually has quotes surrounding
    its name, as *part* of its name (i.e. """mytable""").
    [ticket:2568]
2012-09-19 00:34:30 -04:00
Mike Bayer 9532e38781 Merged in millerdev/sqlalchemy (pull request #20) 2012-09-16 21:09:22 -04:00
Mike Bayer b114d5701c fix 2012-09-09 02:26:55 -04:00
Mike Bayer 8fe080fa3e almost obliterate the concept of "implicit execution" from the docs, move it only
to the "engines and connections" chapter nobody reads, put big green "note:"
boxes with the word "discouraged" in them for "bound metadata", "implicit execution",
"threadlocal strategy"
2012-09-09 02:06:32 -04:00