Releases: maxtepkeev/architect
Releases · maxtepkeev/architect
v0.6.0
Improvements:
Changes:
- Backwards Incompatible: Peewee minimum supported version is 2.8.0
- Backwards Incompatible: SQLObject minimum supported version is 3.5.0
- Backwards Incompatible: Removed Python 2.6, 3.2, 3.3, 3.4 support
Bugfixes:
- PostgreSQL: Tables with uppercase names weren't partitioned correctly (Issue #58)
v0.5.6
- Added: Support for testing all databases in one go using
DB=allenvironmental variable - Fixed: Django: Unable to partition tables in multi database configuration without
defaultdatabase - Fixed: PostgreSQL: Failed to partition a table if a reserved keyword was used as a column name (turned out this wasn't fixed properly in v0.5.4) (thanks to ra2er)
v0.5.5
- Fixed: Django: Error handling with 1.10.x branch
v0.5.4
- Added: Django: Issue #30 (Support for using database routers to determine correct database for a model in a multi database configuration)
- Fixed: Peewee: Table partitioning was broken in Peewee >= 2.7.4 due to Peewee API changes
- Fixed: PostgreSQL: Failed to partition a table if a reserved keyword was used as a column name
v0.5.3
v0.5.2
- Fixed: PostgreSQL: Issue #14 (Error when trying to save a record into a table if partitioned column value had special characters inside, using
string_firstcharsandstring_lastcharspartition subtypes) - Fixed: PostgreSQL: Issue #11 (Error when trying to save a record into a table that was partitioned by a column that can be
NULL, now if a column, that was used for partitioning, hasNULLvalue it will be inserted into a special partition with_nullpostfix) - Fixed: SQLObject: Error when trying to partition a model with a field that has a
defaultattribute set to some value
v0.5.1
v0.5.0
- Added: Django: Support for multiple databases (Issue #9)
- Added: Support for custom features, see docs for details
- Changed:
dsnpartition option renamed todbto cover more use cases - Changed:
DsnParseErrorexception renamed toOptionValueErrorto cover more use cases - Fixed: Django: Error when trying to partition a model with Django <= 1.5 in debug mode
- Fixed: "No module named modulename.py" error when trying to specify model's module with .py extension at the end in partition command
v0.4.0
- Added: wheel support
- Added: SQLObject ORM support
- Added: PostgreSQL: New
integer(thanks to Nikolay Yarovoy),string_firstchars(thanks to Dmitry Brytkov) andstring_lastcharsrange partition subtypes, see docs for details - Changed:
rangepartition option renamed toconstraintto better suit new partition subtypes - Changed: PostgreSQL: Triggers refactoring and speedups, don't forget to rerun
partitioncommand to apply new refactored triggers to the database - Fixed:
architect.uninstalldecorator wasn't able to restore modified model methods under Python 3
v0.3.0
- Added: Documentation rewritten from scratch
- Added: Introduced completely new API (almost 80% of Architect code was rewritten from scratch). All functionality is now provided by an
architect.installdecorator which dynamically injects requested feature, e.g. partition, into a model under thearchitectnamespace, e.g.model.architect.partition. No more mixins, inheritance and nested classes with settings that pollute model's namespace. More information is available in the docs - Added: New
operationfeature which provide an abstraction layer to execute raw SQL statements which will work with any supported ORM, see docs - Fixed: Issue #8 (
cannot import name string_literalerror with PonyORM and PyMySQL ifpymysql.install_as_MySQLdb()was used) - Fixed: Issue #7 (SQLite dummy backend was completely broken)
- Fixed: Issue #4 (
autocommit cannot be used inside a transactionerror with Django if a model was used insidewith transaction.atomic()block) - Fixed: Issue #2 (
partitioncommand was unable to find module with models to partition) - Fixed: Issue #1 (
relation already existserror when trying to insert data into non-existent partition simultaneously from several queries) (thanks to Daniel Kontsek)