]> git.ipfire.org Git - thirdparty/sqlalchemy/sqlalchemy.git/commit
Add PEP 646 integration
authorYurii Karabas <1998uriyyo@gmail.com>
Wed, 17 Jan 2024 17:08:05 +0000 (12:08 -0500)
committerFederico Caselli <cfederico87@gmail.com>
Mon, 22 Jan 2024 18:49:05 +0000 (19:49 +0100)
commit00072000c53d27fff1044722e3fbf265887c6ef3
treeec67d16a2b47db4968e6eb74ab2fd6ad10922e7c
parent9fe5f4fcf2f36e35c7a6865bbaa29dc05617d01e
Add PEP 646 integration

The :class:`.Row` object now no longer makes use of an intermediary
``Tuple`` in order to represent its individual element types; instead,
the individual element types are present directly, via new :pep:`646`
integration, now available in more recent versions of Mypy.  Mypy
1.7 or greater is now required for statements, results and rows
to be correctly typed.   Pull request courtesy Yurii Karabas.

Fixes: #10635
Closes: #10634
Pull-request: https://github.com/sqlalchemy/sqlalchemy/pull/10634
Pull-request-sha: 430785c8a04a48fe96ce35b4f4e08476700c1f79

Change-Id: Ibd0ae31a98b4ea69dcb89f970e640920b2be6c48
58 files changed:
doc/build/changelog/migration_21.rst
doc/build/changelog/unreleased_21/10296.rst
doc/build/changelog/unreleased_21/10635.rst [new file with mode: 0644]
doc/build/changelog/whatsnew_20.rst
lib/sqlalchemy/engine/_py_row.py
lib/sqlalchemy/engine/base.py
lib/sqlalchemy/engine/cursor.py
lib/sqlalchemy/engine/default.py
lib/sqlalchemy/engine/events.py
lib/sqlalchemy/engine/result.py
lib/sqlalchemy/engine/row.py
lib/sqlalchemy/ext/asyncio/engine.py
lib/sqlalchemy/ext/asyncio/result.py
lib/sqlalchemy/ext/asyncio/scoping.py
lib/sqlalchemy/ext/asyncio/session.py
lib/sqlalchemy/ext/horizontal_shard.py
lib/sqlalchemy/orm/bulk_persistence.py
lib/sqlalchemy/orm/context.py
lib/sqlalchemy/orm/descriptor_props.py
lib/sqlalchemy/orm/interfaces.py
lib/sqlalchemy/orm/loading.py
lib/sqlalchemy/orm/mapper.py
lib/sqlalchemy/orm/query.py
lib/sqlalchemy/orm/scoping.py
lib/sqlalchemy/orm/session.py
lib/sqlalchemy/orm/state.py
lib/sqlalchemy/orm/util.py
lib/sqlalchemy/orm/writeonly.py
lib/sqlalchemy/sql/_selectable_constructors.py
lib/sqlalchemy/sql/_typing.py
lib/sqlalchemy/sql/compiler.py
lib/sqlalchemy/sql/dml.py
lib/sqlalchemy/sql/elements.py
lib/sqlalchemy/sql/functions.py
lib/sqlalchemy/sql/selectable.py
lib/sqlalchemy/sql/sqltypes.py
lib/sqlalchemy/sql/util.py
lib/sqlalchemy/util/typing.py
test/base/test_result.py
test/orm/test_query.py
test/sql/test_resultset.py
test/typing/plain_files/engine/engines.py
test/typing/plain_files/ext/asyncio/engines.py
test/typing/plain_files/ext/hybrid/hybrid_one.py
test/typing/plain_files/orm/composite.py
test/typing/plain_files/orm/composite_dc.py
test/typing/plain_files/orm/declared_attr_one.py
test/typing/plain_files/orm/issue_9340.py
test/typing/plain_files/orm/session.py
test/typing/plain_files/orm/typed_queries.py
test/typing/plain_files/sql/common_sql_element.py
test/typing/plain_files/sql/functions.py
test/typing/plain_files/sql/functions_again.py
test/typing/plain_files/sql/lambda_stmt.py
test/typing/plain_files/sql/typed_results.py
tools/generate_sql_functions.py
tools/generate_tuple_map_overloads.py
tox.ini