Update to SQLAlchemy 2.0 by Daniel-Faber · Pull Request #78 · cosmicpython/code
The used sqlalchemy.orm.mappers are deprecated in SQLAlchemy 2.0, alongside other breaking changes fixed in this PR.
Mainly we have to use sqlalchemy.orm.registry.map_imperatively instead of sqlalchemy.orm.mappers.
We can also re-use the mapper_registry to replace sqlalchemy.Metadata, see the docs: https://docs.sqlalchemy.org/en/20/orm/mapping_styles.html#imperative-mapping
Full Changelog fixing all breaking changes in SQLAlchemy 2.0:
- Use
sqlalchemy.sql.textwhen runningsqlalchemy.orm.session.execute - Convert rows to dicts via
row._asdict()instead ofdict(r) - Use
sqlalchemy.orm.registry.map_imperativelyinstead ofsqlalchemy.orm.mappers - Optional: Use
sqlalchemy.orm.registry.metadatainstead ofsqlalchemy.Metadata