| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
| |
Fix camelize_classname and pluralize_collection functions as they didn't work as expected.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
| |
|
|
|
|
| |
this is definitely something that is asked regularly.
|
|\
| |
| | |
Missing comma in method params for hybrid docs
|
|/ |
|
|
|
|
|
|
|
|
|
| |
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
:ticket:`3039`, this issue is partially a regression in 1.0.
The pymssql driver appears to be unaffected.
fixes #3464
|
|
|
|
|
|
|
|
| |
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
|
|\
| |
| | |
Fix a tiny typo in test name
|
|/ |
|
|
|
|
| |
as we are using db_opts for the first time with legacy_schema_args
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
- 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
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
Add support for specifying PostgreSQL index storage paramters (e.g.
fillfactor).
|
| |
| |
| |
| |
| |
| | |
- tone down the "never dispose an engine" language
- refer to NullPool for the "I don't like pooling" use case
references #3461
|
| |
| |
| |
| |
| |
| |
| |
| | |
joins of :ticket:`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
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
fixes #3453
|
| |
| |
| |
| | |
test as we implemented that as a separate test.
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
"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.
|
| | |
| | |
| | |
| | |
| | | |
- fix TablesTest to use the bind that we've returned from setup_bind()
to emit DELETE statements
|
| | |
| | |
| | |
| | | |
it to prevent excess memory usage with yield_per
|
| | | |
|
| | |
| | |
| | |
| | | |
fix for #3451
|
| | |
| | |
| | |
| | |
| | | |
to suit #3451 exclude these columns from the "params"
dictionary in the first place, revises pr github:181
|
| | |
| | |
| | |
| | |
| | |
| | | |
fixes #3451
- also add a bulk_insert_mappings test
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Suppose you have a model class with a primary key.
Base = declarative_base()
class User(Base):
id = Column(BigInteger, primary_key=True)
name = Column(String)
Previously, running
`bulk_update_mappings(User, {'id': 1, 'name': 'hello'})`
would emit the following:
```UPDATE users SET id=1, name='hello' WHERE id=1```
This is contrary to the stated behaviour, where primary keys are omitted
from the SET clause. Furthermore, this behaviour is harmful, as it
can cause the db engine to lock over-aggresively (at least in Postgres).
With this change, the emitted SQL is:
```UPDATE users SET name='hello' WHERE id=1```
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
constructor removal; fixes #3446
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
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
|
| |
| |
| |
| | |
in #3349
|
| |
| |
| |
| | |
new begin, as begin_nested() does a flush
|
|\ \ |
|
| | | |
|
| | |
| | |
| | |
| | |
| | | |
that a Python descriptor is no longer used; repairs inspectability
of these methods including support for Sphinx documentation.
|
|/ / |
|
| | |
|
| | |
|
| |
| |
| |
| |
| |
| | |
as test_customfinder_pass at least does not provide the
alternate ext manager and in all cases it's the global function
that counts
|
| |
| |
| |
| | |
Called after the :meth:`.Engine.dispose` method is called.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
psycopg2cffi dialect, in particular that the current 2.7.0 version
does not have native support for the JSONB type. The version detection
for psycopg2 features has been tuned into a specific sub-version
for psycopg2cffi. Additionally, test coverage has been enabled
for the full series of psycopg2 features under psycopg2cffi.
fixes #3439
|