Skip to content

5.5.1 — 2026-09-26

← 5.5.2 | 5.5.0 → | ↑ 5.x series

Fixed

Adapters - SQLAlchemy

  • Sync path no longer requires greenlet - archipy[postgres,sqlalchemy] (and the MySQL, SQLite, and StarRocks equivalents) failed on import with SQLAlchemy 2.1, which no longer installs greenlet by default.
    • The base session manager imported sqlalchemy.ext.asyncio at module level; async names are now TYPE_CHECKING-only and imported lazily inside the async engine and session factory methods
    • Async adapters still need the sqlalchemy-async extra and raise SQLAlchemy's install hint without it
  • Pool arguments hook - Added _get_pool_kwargs() to both base session managers so dialects can adjust pool arguments for the pool class SQLAlchemy selects.

Adapters - SQLite

  • Driver matches adapter mode - Sync and async SQLite adapters share SQLiteSQLAlchemyConfig, whose default DRIVER_NAME is sqlite+aiosqlite, so the sync adapter needed aiosqlite installed.
    • The sync session manager swaps sqlite+aiosqlite for sqlite
    • The async session manager swaps sqlite / sqlite+pysqlite for sqlite+aiosqlite
    • Other explicitly configured drivers are used unchanged
  • In-memory databases - :memory:, empty, and mode=memory URI databases no longer fail with Invalid argument(s) 'pool_timeout','pool_use_lifo','max_overflow'.
    • Queue-pool-only arguments are dropped because SQLAlchemy uses SingletonThreadPool / StaticPool there

Tests

Tests - SQLAlchemy

  • Greenlet-free import scenarios - Added BDD scenarios asserting that importing each sync session manager module (Postgres, SQLite, MySQL, StarRocks) does not load sqlalchemy.ext.asyncio.
  • SQLite driver and in-memory scenarios - Added BDD scenarios running sync and async SQLite adapters with either driver on in-memory and file databases.

Tests - Configuration

  • MinIO test image - Switched the MinIO testcontainer image to pgsty/minio; MinIO no longer publishes public images on Docker Hub and quay.io requires authentication.
  • Feature step lint - Resolved Ruff F errors in feature steps (duplicate step function names, unused imports and locals).