NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #4911 most downloaded on PyPI
Versioning and auditing extension for SQLAlchemy.
Last release 6 days ago
29 Sep 2026
Release timing varies
gaps range from 8 days to 1.3 years
Nearly every release is documented
notes for 60 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
13 years old
104 releases · first in 2013
- Smarter changeset handling
Smarter changeset handling
- Improved reify() speed
Improved reify() speed
Fixed changeset when parent contains more columns than version class.
One column per quarter.
Fixed changeset when parent contains more columns than version class.
Transaction log and transaction changes records only created if actual net changes were made during transaction.
Transaction log and transaction changes records only created if actual net changes were made during transaction.
Removed last references for old revision versioning
Removed last references for old revision versioning
Added is_versioned utility function
Added is_versioned utility function
Fixed before operation listeners
Version tables no longer have revision column
Version tables no longer have revision column
Parent tables no longer need revision column
Version tables primary key is now (parent table pks + transaction_id)
Make versioned join table inherited classes support multiple consecutive flushes per transaction
Make versioned join table inherited classes support multiple consecutive flushes per transaction
Fixed association versioning when using executemany
Fixed association versioning when using executemany
Improved transaction log changed_entities schematics
Improved transaction log changed_entities schematics
Added possibility to add lazy values in transaction context meta
Added possibility to add lazy values in transaction context meta
Version tables no longer generated when versioning attribute of model set to False
Version tables no longer generated when versioning attribute of model set to False
Revision column not nullable in version classes
Revision column not nullable in version classes
Fixed relationship building for non-versioned classes
Fixed relationship building for non-versioned classes
Parent table primary keys remain not nullable in generated version table
Parent table primary keys remain not nullable in generated version table
Added database agnostic versioning (no need for PostgreSQL specific triggers anymore)
Added database agnostic versioning (no need for PostgreSQL specific triggers anymore)
Fixed version object relationships (never worked properly in previous versions)
New configuration option versioning allows setting the versioning on and off per child class.
Added column exclusion
Added improved context managing capabilities for transactions via VersioningManager.tx_context
Added improved context managing capabilities for transactions via VersioningManager.tx_context
Removed Versioned base class, versioned objects only need to have __versioned__ defined.
Removed Versioned base class, versioned objects only need to have __versioned__ defined.
Session versioning now part of make_versioned function
Added meta parameter in TransactionLog
TransactionChanges model for tracking changed entities in given transaction
Added Flask extension
Alembic trigger syncing fixed for drop column and add column
Alembic trigger syncing fixed for drop column and add column
- Alembic trigger syncing fixed
Alembic trigger syncing fixed
Added support for multiple updates for same row within single transaction
Added support for multiple updates for same row within single transaction
History tables have now own revision column
Not null constraints removed from all reflected columns
Not null constraints removed from all reflected columns
Fixed reify when parent has not null constraints
Added support for reifying deletion
Single table inheritance support added
Single table inheritance support added
Generated operation_type column not nullable by default
Generated operation_type column not nullable by default
Added drop_table trigger synchronization
Added drop_table trigger synchronization
Autoincrementation automatically removed from reflected primary keys
Autoincrementation automatically removed from reflected primary keys
Added identifier quoting for all column names
Added identifier quoting for all column names
Identifier quoting for create_trigger_sql
Identifier quoting for create_trigger_sql
Added alembic operations proxy class
Added alembic operations proxy class
VersioningManager now added in __versioned__ dict of each versioned class
VersioningManager now added in __versioned__ dict of each versioned class
Creating TransactionLog now checks if it already exists.
Creating TransactionLog now checks if it already exists.
Added operation_type column to version tables.
Added operation_type column to version tables.
Fixed previous and next accessors
Model changesets
Fixed previous and next accessors
Updates generate versions only if actual changes occur
Added sanity check in all_affected_entities
Added sanity check in all_affected_entities
Added backref relations to TransactionLog
Added backref relations to TransactionLog
Added all_affected_entities property to TransactionLog
Renamed internal attribute __pending__ to __pending_versioned__ in order to avoid variable naming collisions.
Renamed internal attribute __pending__ to __pending_versioned__ in order to avoid variable naming collisions.
Better checking of model table name in scenarios where model does not have __tablename__ defined.
Better checking of model table name in scenarios where model does not have __tablename__ defined.
Added make_versioned for more robust declaration of versioned mappers
Added make_versioned for more robust declaration of versioned mappers
- Added PostgreSQLAdapter class
Added PostgreSQLAdapter class
Made trigger procedures table specific to allow more fine-grained control.
Made trigger procedures table specific to allow more fine-grained control.
- Added column order inspection.
Added column order inspection.
- Fixed packaging
Fixed packaging
Initial support for join table inheritance
Initial support for join table inheritance
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →