]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commit
Build out new declarative systems; deprecate mapper()
authorMike Bayer <mike_mp@zzzcomputing.com>
Mon, 31 Aug 2020 15:46:55 +0000 (11:46 -0400)
committerMike Bayer <mike_mp@zzzcomputing.com>
Thu, 10 Sep 2020 21:53:53 +0000 (17:53 -0400)
commit450f5c0d6519a439f4025c3892fe4cf3ee2d892c
tree1f3f2467306304a5e9ccb25f10bfdf9989327ae2
parent96bb6dc56d1da2b4fa30afd08ac4dfa665752913
Build out new declarative systems; deprecate mapper()

The ORM Declarative system is now unified into the ORM itself, with new
import spaces under ``sqlalchemy.orm`` and new kinds of mappings.  Support
for decorator-based mappings without using a base class, support for
classical style-mapper() calls that have access to the declarative class
registry for relationships, and full integration of Declarative with 3rd
party class attribute systems like ``dataclasses`` and ``attrs`` is now
supported.

Fixes: #5508
Change-Id: I130b2b6edff6450bfe8a3e6baa099ff04b5471ff
66 files changed:
doc/build/changelog/migration_14.rst
doc/build/changelog/unreleased_14/5027.rst
doc/build/changelog/unreleased_14/5508.rst [new file with mode: 0644]
doc/build/core/engines_connections.rst
doc/build/core/expression_api.rst
doc/build/core/index.rst
doc/build/core/schema.rst
doc/build/core/types.rst
doc/build/faq/index.rst
doc/build/orm/basic_relationships.rst
doc/build/orm/declarative_config.rst [new file with mode: 0644]
doc/build/orm/declarative_mapping.rst [new file with mode: 0644]
doc/build/orm/declarative_mixins.rst [new file with mode: 0644]
doc/build/orm/declarative_tables.rst [new file with mode: 0644]
doc/build/orm/extensions/declarative/api.rst
doc/build/orm/extensions/declarative/basic_use.rst
doc/build/orm/extensions/declarative/index.rst
doc/build/orm/extensions/declarative/inheritance.rst
doc/build/orm/extensions/declarative/mixins.rst
doc/build/orm/extensions/declarative/relationships.rst
doc/build/orm/extensions/declarative/table_config.rst
doc/build/orm/inheritance.rst
doc/build/orm/internals.rst
doc/build/orm/loading_objects.rst
doc/build/orm/mapper_config.rst
doc/build/orm/mapping_api.rst
doc/build/orm/mapping_columns.rst
doc/build/orm/mapping_styles.rst
doc/build/orm/nonstandard_mappings.rst
doc/build/orm/relationships.rst
doc/build/orm/scalar_mapping.rst
doc/build/orm/session.rst
doc/build/orm/tutorial.rst
lib/sqlalchemy/exc.py
lib/sqlalchemy/ext/automap.py
lib/sqlalchemy/ext/declarative/__init__.py
lib/sqlalchemy/ext/declarative/api.py [deleted file]
lib/sqlalchemy/ext/declarative/extensions.py [new file with mode: 0644]
lib/sqlalchemy/orm/__init__.py
lib/sqlalchemy/orm/clsregistry.py [moved from lib/sqlalchemy/ext/declarative/clsregistry.py with 72% similarity]
lib/sqlalchemy/orm/decl_api.py [new file with mode: 0644]
lib/sqlalchemy/orm/decl_base.py [moved from lib/sqlalchemy/ext/declarative/base.py with 73% similarity]
lib/sqlalchemy/orm/instrumentation.py
lib/sqlalchemy/orm/mapper.py
lib/sqlalchemy/orm/relationships.py
lib/sqlalchemy/testing/entities.py
lib/sqlalchemy/testing/fixtures.py
lib/sqlalchemy/util/__init__.py
lib/sqlalchemy/util/deprecations.py
test/ext/declarative/test_inheritance.py
test/ext/declarative/test_reflection.py
test/orm/declarative/test_basic.py [moved from test/ext/declarative/test_basic.py with 95% similarity]
test/orm/declarative/test_clsregistry.py [moved from test/ext/declarative/test_clsregistry.py with 77% similarity]
test/orm/declarative/test_concurrency.py [moved from test/ext/declarative/test_concurrency.py with 95% similarity]
test/orm/declarative/test_inheritance.py [new file with mode: 0644]
test/orm/declarative/test_mixin.py [moved from test/ext/declarative/test_mixin.py with 93% similarity]
test/orm/declarative/test_reflection.py [new file with mode: 0644]
test/orm/inheritance/_poly_fixtures.py
test/orm/test_dataclasses_py3k.py
test/orm/test_default_strategies.py
test/orm/test_deferred.py
test/orm/test_eager_relations.py
test/orm/test_events.py
test/orm/test_mapper.py
test/orm/test_options.py
test/orm/test_relationships.py