]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commit
Improve rendering of core statements w/ ORM elements
authorMike Bayer <mike_mp@zzzcomputing.com>
Wed, 29 Apr 2020 23:46:43 +0000 (19:46 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Mon, 1 Jun 2020 01:41:52 +0000 (21:41 -0400)
commit4ecd352a9fbb9dbac7b428fe0f098f665c1f0cb1
tree323868c9f18fffdbfef6168622010c7d19367b12
parentcbfa1363d7201848a56e7209146e81b9c51aa8af
Improve rendering of core statements w/ ORM elements

This patch contains a variety of ORM and expression layer
tweaks to support ORM constructs in select() statements,
without the 1.3.x requiremnt in Query that a full
_compile_context() + new select() is needed in order to
get a working statement object.

Includes such tweaks as the ability to implement
aliased class of an aliased class,
as we are looking to fully support ACs against subqueries,
as well as the ability to access anonymously-labeled
ColumnProperty expressions within subqueries by
naming the ".key" of the label after the property
key.   Some tuning to query.join() as well
as ORMJoin internals to allow things to work more
smoothly.

Change-Id: Id810f485c5f7ed971529489b84694e02a3356d6d
35 files changed:
lib/sqlalchemy/engine/cursor.py
lib/sqlalchemy/ext/baked.py
lib/sqlalchemy/ext/compiler.py
lib/sqlalchemy/future/selectable.py
lib/sqlalchemy/orm/context.py
lib/sqlalchemy/orm/loading.py
lib/sqlalchemy/orm/mapper.py
lib/sqlalchemy/orm/properties.py
lib/sqlalchemy/orm/query.py
lib/sqlalchemy/orm/relationships.py
lib/sqlalchemy/orm/strategies.py
lib/sqlalchemy/orm/util.py
lib/sqlalchemy/sql/base.py
lib/sqlalchemy/sql/elements.py
lib/sqlalchemy/sql/selectable.py
lib/sqlalchemy/sql/traversals.py
lib/sqlalchemy/sql/util.py
lib/sqlalchemy/sql/visitors.py
lib/sqlalchemy/util/compat.py
test/aaa_profiling/test_orm.py
test/orm/inheritance/_poly_fixtures.py
test/orm/inheritance/test_assorted_poly.py
test/orm/inheritance/test_basic.py
test/orm/inheritance/test_polymorphic_rel.py
test/orm/inheritance/test_relationship.py
test/orm/test_core_compilation.py
test/orm/test_froms.py
test/orm/test_joins.py
test/orm/test_of_type.py
test/orm/test_query.py
test/orm/test_utils.py
test/sql/test_compare.py
test/sql/test_compiler.py
test/sql/test_selectable.py
test/sql/test_utils.py