| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
|
|
| |
Provide opportunity to get enums list via an inspector instance public
interface.
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
otherwise render a SQL NULL column value, rather than a JSON-encoded
``'null'``. To support this case, changes are as follows:
* The value :func:`.null` can now be specified, which will always
result in a NULL value resulting in the statement.
* A new parameter :paramref:`.JSON.none_as_null` is added, which
when True indicates that the Python ``None`` value should be
peristed as SQL NULL, rather than JSON-encoded ``'null'``.
Retrival of NULL as None is also repaired for DBAPIs other than
psycopg2, namely pg8000.
fixes #3159
|
| |
|
|
|
|
| |
be always be correctly propagated when one CTE referred to another
aliased CTE in a statement.
Fixes #3154
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
non-standard DBAPI exceptions, such as the psycopg2
TransactionRollbackError. These exceptions will now be raised
using the closest available subclass in ``sqlalchemy.exc``, in the
case of TransactionRollbackError, ``sqlalchemy.exc.OperationalError``.
fixes #3075
|
| |
|
|
|
|
| |
a mis-named unit test such that so-called "schema" types like
:class:`.Boolean` and :class:`.Enum` could no longer be pickled.
fixes #3144
|
| | |
|
| | |
|
| |
|
|
| |
simplify tox again now that we can exclude tests more easily
|
| |\ |
|
| | | |
|
| |/ |
|
| |
|
|
| |
rules, better message formatting
|
| | |
|
| |
|
|
| |
add sane_multi_rowcount requirement, as pg8000 doesn't do "multi" row count.
|
| | |
|
| |\ |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
The test orm/test_froms.py test_self_referential works with pg8000 now,
so I've opened it up.
|
| | | |
|
| | |
| |
| |
| |
| |
| | |
Removed the non_updating_cascade requirement from
test_manytomany_nonpassive. This is because setting
passive_updates=False in a relationship should work on *all* dialects.
|
| | | |
|
| | | |
|
| | | |
|
| | | |
|
| | |
| |
| |
| |
| | |
to a plain Python list would fail to use the correct array constructor.
Pull request courtesy Andrew. fixes #3141
|
| | |
| |
| |
| | |
- add __backend__ to most tests so that pg8000 can start coming in
|
| | |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
events from firing for those statements which it uses internally
to detect if a table exists or not. This is achieved using an
execution option ``skip_user_error_events`` that disables the handle
error event for the scope of that execution. In this way, user code
that rewrites exceptions doesn't need to worry about the MySQL
dialect or other dialects that occasionally need to catch
SQLAlchemy specific exceptions.
|
| | | |
|
| | |
| |
| |
| |
| |
| |
| |
| |
| | |
e.g. the ``func`` construct. Previously, behavior for this method
was undefined. The current behavior mimics that of pre-0.9.4,
which is that the function is turned into a single-column FROM
clause with the given alias name, where the column itself is
anonymously named.
fixes #3137
|
| | |
| |
| |
| | |
- add support for IDENTITY INSERT setting for INSERT with inline VALUES
|
| | | |
|
| |/
|
|
|
| |
where engine-level isolation level parameter would raise an error
on connect. fixes #3134
|
| |
|
|
| |
- apply autopep8 + manual fixes to most of test/sql/
|
| |
|
|
|
| |
'username' was assumed to be in the database URL, even though
this might not be the case. Fixes #3128
|
| | |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
the "outer join" propagation along a chain of joined eager loads
would incorrectly convert an "inner join" along a sibling join path
into an outer join as well, when only descendant paths should be
receiving the "outer join" propagation; additionally, fixed related
issue where "nested" join propagation would take place inappropriately
between two sibling join paths.
this is accomplished by re-introducing the removed flag "allow_innerjoin",
now inverted and named "chained_from_outerjoin". Propagating this flag
allows us to know when we have encountered an outerjoin along a load
path, without confusing it for state obtained from a sibling path.
fixes #3131
ref #2976
|
| |
|
|
|
|
|
|
| |
as a scalar subquery such as within an IN would receive inappropriate
substitutions from the enclosing query, if the same table were present
inside the subquery as were in the enclosing query such as in a
joined inheritance scenario.
fixes #3130
|
| | |
|
| |
|
|
|
| |
to again have the chance to veto rendering, as the naming convention
can make the decision that the name is "none" or not now.
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
constraint convention that includes ``constraint_name`` would
then force all :class:`.Boolean` and :class:`.Enum` types to
require names as well, as these implicitly create a
constraint, even if the ultimate target backend were one that does
not require generation of the constraint such as Postgresql.
The mechanics of naming conventions for these particular
constraints has been reorganized such that the naming
determination is done at DDL compile time, rather than at
constraint/table construction time.
fixes #3067
|
| |
|
|
|
|
|
|
|
| |
for the ``description_encoding`` dialect parameter, which when
not explicitly set was preventing cursor.description from
being parsed correctly in the case of result sets that
contained names in alternate encodings. This parameter
shouldn't be needed going forward.
fixes #3091
|
| |
|
|
|
|
|
|
|
| |
:meth:`.Query.select_from` method no longer set up the "from
entity" of the :class:`.Query` object correctly, so that
subsequent :meth:`.Query.filter_by` or :meth:`.Query.join`
calls would fail to check the appropriate "from" entity when
searching for attributes by string name.
fixes #3083
|
| |
|
|
|
|
| |
parameters could be expressed in the wrong final order
when CTEs were nested in certain ways.
fixes #3090
|