| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
| |
simple but unusual system allows for a dramatic savings in Python
overhead for the construction and processing of orm :class:`.Query`
objects, from query construction up through rendering of a string
SQL statement.
fixes #3054
|
| |
|
| |
|
|
|
|
| |
for the slots-based __getattr__ thing getting hit
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
| |
directly into the unit of work's facility for emitting INSERT
and UPDATE statements has been created. When used correctly,
this expert-oriented system can allow ORM-mappings to be used
to generate bulk insert and update statements batched into
executemany groups, allowing the statements to proceed at
speeds that rival direct use of the Core.
fixes #3100
|
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
mapped columns are re-mapped to
match column names as well as grouping of columns; in particular,
this allows columns that are explicitly grouped in a same-column-named
joined inheritance scenario to be mapped in the same way in the
history mappings, avoiding warnings added in the 0.9 series
regarding this pattern and allowing the same view of attribute
keys.
|
| | |
|
| |
| |
| |
| |
| |
| |
| |
| | |
examples/generic_assocaitions/discriminator_on_association.py
example, where the subclasses of AddressAssociation were not being
mapped as "single table inheritance", leading to problems when trying
to use the mappings further.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
|\ \
| |/ |
|
| | |
|
| | |
|
|/ |
|
| |
|
|
|
|
| |
Found using: https://github.com/intgr/topy
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
is currently being supported in addition to nose, and will likely
be preferred to nose going forward. The nose plugin system used
by SQLAlchemy has been split out so that it works under pytest as
well. There are no plans to drop support for nose at the moment
and we hope that the test suite itself can continue to remain as
agnostic of testing platform as possible. See the file
README.unittests.rst for updated information on running tests
with pytest.
The test plugin system has also been enhanced to support running
tests against mutiple database URLs at once, by specifying the ``--db``
and/or ``--dburi`` flags multiple times. This does not run the entire test
suite for each database, but instead allows test cases that are specific
to certain backends make use of that backend as the test is run.
When using pytest as the test runner, the system will also run
specific test suites multiple times, once for each database, particularly
those tests within the "dialect suite". The plan is that the enhanced
system will also be used by Alembic, and allow Alembic to run
migration operation tests against multiple backends in one run, including
third-party backends not included within Alembic itself.
Third party dialects and extensions are also encouraged to standardize
on SQLAlchemy's test suite as a basis; see the file README.dialects.rst
for background on building out from SQLAlchemy's test platform.
|
|
|
|
| |
defaults would prevent history values of NULL from being written.
|
|
|
|
|
|
|
| |
- pep8 cleanup
- fix tests for "changed" column
- document that "changed" is optional
- changelog
|
|\ |
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
"history" on a relationship-bound attribute will now no longer emit
any SQL if the relationship is unloaded.
|
| | |
|
| |
| |
| |
| | |
- fix broken py2k/py3k isms
|
| |
| |
| |
| | |
the primaryjoin examples there
|
| |
| |
| |
| |
| |
| |
| |
| | |
standalone gendered pronoun with a gender-neutral subject, but also
have replaced all occurences of "his/her", "his or her", etc. The docs have always
strived to account for both genders in any non-specific singular pronoun,
however recent controversy in the community suggests
that a zero-gendered-pronoun policy is probably best going forward.
|
| | |
|
| | |
|
| |
| |
| |
| |
| | |
- add the other versioning examples from the wiki
- modernize the dictlike examples
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
viewcode extension
to allow ad-hoc display of the source of any file, as well as a "directory listing" structure.
- reorganize examples/ to take advantage of new extension. in particular, keep moving all
the descriptive text for files etc. into module docstrings, taking more advantage of
self-documentation.
|
|/ |
|
|
|
|
|
|
| |
joined inheritance schemes more than one level deep.
- don't need to use _lib.py here anymore now that these features are in
sqlalchemy.testing
|
|
|
|
|
|
| |
they're too big
- fix the targeting of module names moved around by using custom handlers for "Bases", etc.
|
|
|
|
| |
- clean up these tests to not use globals so much, close out the session
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
that ``discriminator_on_association.py`` makes use of single table
inheritance do the work with the "discriminator". Also
added a true "generic foreign key" example, which works similarly
to other popular frameworks in that it uses an open-ended integer
to point to any other table, foregoing traditional referential
integrity. While we don't recommend this pattern, information wants
to be free. Also in 0.8.3.
- Added a convenience class decorator :func:`.as_declarative`, is
a wrapper for :func:`.declarative_base` which allows an existing base
class to be applied using a nifty class-decorated approach. Also
in 0.8.3.
|
|
|
|
| |
follow up to https://bitbucket.org/zzzeek/sqlalchemy/pull-request/2
|
|
|
|
| |
The code that determines whether an object in a relation has been added/removed does not take into account that that relation may be a backref. If the relation is a backref, then nothing on the current table is changing, and therefore no history entry should be created.
|
|\ |
|
| |
| |
| |
| |
| | |
of SQL cache keys wasn't applying deduping labels to the
statement the same way :class:`.Query` normally does.
|
|/
|
|
| |
- went through examples/ and cleaned out excess list() calls
|