Release notes¶
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
This project uses towncrier and the changes for the upcoming release can be found in https://github.com/fedora-infra/sqlalchemy-helpers/tree/develop/news/.
Version 2.0.1¶
Released on 2025-05-31. This is a bugfix release.
Bug Fixes¶
Never return
Nonewhen getting the manager or the session from the Flask Extension while outside of the application context.
Development Improvements¶
Add typing to the unit tests
Improve typing of the codebase
Version 2.0.0¶
This is a major version. The main backwards-incompatible change is that you now
need to import Base instead of calling get_base() as the base class for your
models.
If you are using the synchronous version:
-from sqlalchemy_helpers import get_base
+from sqlalchemy_helpers import Base
If you are using the asynchronous version:
-from sqlalchemy_helpers import Base
+from sqlalchemy_helpers.aio import Base
Or if you are using the asynchronous version and were manually mixing in the AsyncAttrs class:
from sqlalchemy.ext.asyncio import AsyncAttrs
-from sqlalchemy_helpers import get_base
+from sqlalchemy_helpers.aio import Base
-Base = get_base(cls=AsyncAttrs)
This version also requires SQLAlchemy >= 2.0, and Pydantic >= 2.0 if you are using the FastAPI integration.
Features¶
Dependency Changes¶
Version 1.0.2¶
Released on 2025-05-28. This is a bugfix release.
Dependency Changes¶
Drop support for Python 3.8, it’s EOL
Fix SQLAlchemy dependency, we need at least 1.4.0
Use the “asyncio” extra of SQLAlchemy
Version 1.0.1¶
Released on 2024-06-05. This is a bugfix release.
Bug Fixes¶
Don’t include the tests when installing the package with pip (685b92a)
Development Improvements¶
Version 1.0.0¶
Released on 2024-05-30. This is a feature release.
Features¶
Add an
update_or_create()function similar to Django’s (#422)Allow
aio.manager_from_config()to pass arguments to theAsyncDatabaseManagerAllow a few methods to use an existing session (993e6a5).
Officially support Python 3.12 (7b88ef7).
The
engine_argsandbase_modelarguments must now be keywords (abaccdc).
Version 0.13.0¶
Released on 2023-11-16. This is a feature release that adds customization of the model base class.
Features¶
Allow customization of the model base class (bc26cd3).
Version 0.12.1¶
Released on 2023-10-12. This is a minor release that adds docs and development improvements
Development Improvements¶
Automatically publish to PyPI and release (c572657).
Documentation Improvements¶
Version 0.12.0¶
Released on 2023-08-09. This is a feature release that adds MySQL/MariaDB support in the async mode.
Features¶
Add support for MySQL/MariaDB in the async mode (#325).
Bug Fixes¶
The psycopg driver raises a ProgrammingError where sqlite raises an OperationalError (469d9c7).
Dependency Changes¶
Version 0.11.0¶
Released on 2023-06-23. This is a major release that adds AsyncIO and FastAPI support.