4.18.0
·
42 commits
to master
since this release
Added
Adapters - MySQL
- MySQL SQLAlchemy Adapter - Added a full MySQL adapter package with sync and async session managers, session manager registry, and concrete adapters following the existing PostgreSQL/StarRocks patterns.
- Sync driver:
mysql+pymysqlvia themysqlextra - Async driver:
mysql+asyncmyviaasyncmy2and themysql-asyncextra - Patches
MySQLTypeCompiler.visit_UUIDto map PostgreSQL UUID columns toVARCHAR(36)for shared entity models
- Sync driver:
- MySQL Configuration - Added
MySQLSQLAlchemyConfigandMYSQL_SQLALCHEMYonBaseConfigwith defaultsDRIVER_NAME=mysql+pymysqlandPORT=3306. - Atomic Transaction Decorators - Added
mysql_sqlalchemy_atomic_decoratorandasync_mysql_sqlalchemy_atomic_decorator, registered inATOMIC_BLOCK_CONFIGSand the lazy decorator exports.
Tests - MySQL
- MySQL Test Container - Added
MySQLTestContainer(mysql:8.4.11) with@needs-mysqltag mapping and.env.test/.env.exampleconfiguration. - Atomic Transaction Coverage - Wired
mysqlinto allatomic_transactionsscenario outlines (sync and async) alongside PostgreSQL and SQLite.
Docs - MySQL
- Adapter Documentation - Added MySQL tutorial and API reference pages, mkdocs nav entries, installation extras, testing tags, and adapter index rows marked 🟢 Stable.
Changed
Tests - Atomic Transactions
- Cross-Database Determinism - Gave test entity
Stringcolumns explicit lengths for MySQL VARCHAR requirements, and ordered related-entity queries by name so assertions do not depend on insert order.
Dependencies
- Added optional extras
mysql(pymysql) andmysql-async(asyncmy2). - Extended the
testcontainersextra withmysqlsupport.