Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

User specific schema configurations #201

Open
wants to merge 253 commits into
base: feature/schema-tools
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
253 commits
Select commit Hold shift + click to select a range
8314e78
Make tests compatible with older versions of sqlite
kvesteri Mar 26, 2014
b29f090
Skip mod column creation for assoc tables
kvesteri Mar 26, 2014
b0b3bd3
Update changes
kvesteri Mar 26, 2014
95ca466
Fix get_bind schematics, fixes #48
kvesteri Apr 7, 2014
637d2a2
Update SA dependency
kvesteri Apr 9, 2014
896d600
Add remove_versioning func, fixes #45
kvesteri Apr 9, 2014
91b7d45
Update changes
kvesteri Apr 9, 2014
4ba3eaa
Fix example
kvesteri Apr 9, 2014
3b16e59
Update docs
kvesteri Apr 9, 2014
b10eb83
Make versions order by deterministic
kvesteri Apr 9, 2014
f3ac0f3
Fix test
kvesteri Apr 10, 2014
29a67c3
Various fixes for inheritance reflection
kvesteri Apr 18, 2014
3fd0e0a
Added support for order_by and column_prefix mapper args
kvesteri Apr 18, 2014
95da74d
Add tests for concrete inheritance
kvesteri Apr 18, 2014
bcb88ed
Add tests for mapper args
kvesteri Apr 18, 2014
992cdfb
Fix tx id condition
kvesteri Apr 18, 2014
63f22c4
Refactor fetcher
kvesteri Apr 19, 2014
291e4c2
Refactor fetcher
kvesteri Apr 19, 2014
8c9adee
Remove futile import
kvesteri Apr 19, 2014
a9e4ba8
Refactor fetcher and unit of work classes
kvesteri Apr 19, 2014
03886ba
Bump version
kvesteri Apr 19, 2014
9fa2208
Fixed many to many support for engine bind
kvesteri Apr 19, 2014
e833a37
Update SA-Utils dependency
kvesteri Apr 21, 2014
ddf216d
Fix primary key alias handling
kvesteri Apr 21, 2014
403451c
Add skipped test case
kvesteri Apr 21, 2014
1949dd0
Fix many-to-many issue with custom tx column
kvesteri Apr 21, 2014
6088e2b
Bump version
kvesteri Apr 21, 2014
bd42aa7
Update requirements
kvesteri Apr 22, 2014
b9e0097
Added order_by arg ignore
kvesteri Apr 22, 2014
649442c
Fix code block
kvesteri Apr 24, 2014
bc66eec
Add more tests for m2m relationships
kvesteri Apr 24, 2014
1a12f70
Fix naming conventions
kvesteri Apr 24, 2014
f0a2839
Fix relationship reflection to non versioned classes, fixes #52
kvesteri Apr 24, 2014
475870b
Add example of relationships to non versioned classes
kvesteri Apr 24, 2014
e25d091
Fix typo
kvesteri Apr 24, 2014
88c9566
Fix code blocks
kvesteri Apr 24, 2014
048fdb2
Refactor utils tests
kvesteri Apr 25, 2014
3cbd641
Add some funcs to main import
kvesteri Apr 25, 2014
24ea738
Fix get_versioning_manager exc handling
kvesteri Apr 25, 2014
d10c772
Add configurable user_cls parameter, fixes #53
kvesteri Apr 29, 2014
61eda8b
Bump version
kvesteri May 7, 2014
5d897d5
Renamed history_class to version_class following code change in commi…
karih May 7, 2014
6f70343
Merge pull request #58 from karih/master
kvesteri May 8, 2014
f975cc6
Add repr for Transaction class, fixes #59
kvesteri May 12, 2014
4679528
Fix links
kvesteri May 13, 2014
45b8ada
Add doc block
kvesteri May 13, 2014
a50bc55
Add failing test for many-to-many relationship with different transac…
nkocic May 14, 2014
e5c7b23
Merge pull request #63 from nikola-kocic/bad-many-to-many-relationship
kvesteri May 14, 2014
be4b93b
Remove wontfix test
kvesteri Jun 16, 2014
df38327
Add doc blocks
kvesteri Jun 16, 2014
b8d88b4
Make transaction_cls configurable, remove generic backref relationshi…
kvesteri Jun 16, 2014
f880f84
Update SA-Utils dependency to 0.26.2
kvesteri Jun 16, 2014
a6552b8
Remove relationships from tx changes class to versioned classes
kvesteri Jun 16, 2014
751ba88
Update docs and changes
kvesteri Jun 16, 2014
9d41cae
Bump version
kvesteri Jun 16, 2014
1d93693
Fix model delete with deferred columns
kvesteri Jun 18, 2014
6ed20e0
Fix viewonly relationships with assoc tables handling
kvesteri Jun 18, 2014
9e12322
Add release date
kvesteri Jun 18, 2014
c337afe
Allow easier overriding of column creation
kvesteri Jun 24, 2014
2ddaa5a
Add support for SA 0.9.6
kvesteri Jul 10, 2014
c1cf2f2
Merge pull request #66 from kvesteri/SA-0.9.6
kvesteri Jul 10, 2014
b8855e4
Update SA-Utils dependency to 0.26.5
kvesteri Jul 11, 2014
013d2b5
Refactor model builder
kvesteri Jul 11, 2014
0d16632
Refactor table builder
kvesteri Jul 11, 2014
60be50c
Bump version
kvesteri Jul 11, 2014
d76087a
Fix after flush processing in exotic scenarios, add __repr__ to Opera…
kvesteri Jul 16, 2014
4ba7aa0
Update activity.py
milonline-eu Jul 31, 2014
b9d2031
Add more links
kvesteri Aug 10, 2014
5e9a9ea
Merge pull request #67 from milonline-eu/patch-1
kvesteri Aug 10, 2014
0372abf
Update transaction_meta.py
milonline-eu Aug 11, 2014
bc984fd
Merge pull request #68 from milonline-eu/patch-2
kvesteri Aug 11, 2014
838a764
Add trigger based versioning for PostgreSQL
kvesteri Aug 14, 2014
bc28343
Refactor trigger builder
kvesteri Aug 18, 2014
d9f8a5c
Split trigger building into more logical components
kvesteri Aug 18, 2014
bac2a72
Refactor schema listener generation
kvesteri Aug 18, 2014
6e57092
Add identifier quoting
kvesteri Aug 18, 2014
2ea7033
Fix custom tx column name handling
kvesteri Aug 18, 2014
4545040
Fix python 2.6 support
kvesteri Aug 19, 2014
7d30282
Skip end_tx_id test if not using validity strategy
kvesteri Aug 19, 2014
9d84ae6
Refactor config tests
kvesteri Aug 20, 2014
0eb00ec
Make deletes update mod tracking columns
kvesteri Aug 20, 2014
eae8bb1
Add create models option
kvesteri Aug 20, 2014
30ef16f
Fix mod column update expression
kvesteri Aug 20, 2014
e7538dc
Refactor tests
kvesteri Aug 20, 2014
b541aac
Refactor builder
kvesteri Aug 20, 2014
89398b7
Refactor native versioning
kvesteri Aug 20, 2014
754d8f7
Add more tests for PropertyModTrackerPlugin
kvesteri Aug 26, 2014
1ebef0b
Fix consequtive insert/update mod tracking in native versioning
kvesteri Aug 26, 2014
d68e96e
Add test for savepoints
kvesteri Aug 27, 2014
d6a0ace
Add count_versions utility function
kvesteri Aug 27, 2014
d2b7f42
Fix class inspection
kvesteri Sep 2, 2014
69a5f28
Fix savepoint management
kvesteri Sep 2, 2014
5e31809
Skip test for SQLite
kvesteri Sep 2, 2014
64becec
Remove commented tests
kvesteri Sep 2, 2014
0db3af3
Fix column exclusion with native versioning
kvesteri Sep 2, 2014
27240ee
Add some docs for native versioning
kvesteri Sep 2, 2014
906395a
Add sync_trigger, drop_trigger and create_trigger functions
kvesteri Sep 3, 2014
3ba7c93
Add example of sync_trigger
kvesteri Sep 3, 2014
d45319c
Add benchmark
kvesteri Sep 3, 2014
2a854a0
Fix native versioning issues with txid_current and server switching
kvesteri Sep 4, 2014
aa53e9f
Fix version model building
kvesteri Sep 4, 2014
5f40e95
Fix transaction arg setting
kvesteri Sep 4, 2014
c237fe6
Skip trigger tests when not using native versioning
kvesteri Sep 4, 2014
d88582e
Make test database agnostic
kvesteri Sep 4, 2014
a211895
Add docs for sync_trigger
kvesteri Sep 7, 2014
19ad187
Refactor create_transaction
kvesteri Sep 7, 2014
5cd2049
Make reset accept session param
kvesteri Sep 7, 2014
b6bd1ae
Make Flask tests also test native versioning
kvesteri Sep 7, 2014
147ee96
Remove old tests
kvesteri Sep 7, 2014
a6ee0ce
Add py34 to test suite
kvesteri Sep 7, 2014
1b5f1c8
Add raw SQL tracking for native versioning
kvesteri Sep 7, 2014
b8809b1
Refactor trigger builder
kvesteri Sep 9, 2014
57444a6
Speed up native versioning using temp tables
kvesteri Sep 9, 2014
9af3b8f
Add benchmark of multiple commits
kvesteri Sep 10, 2014
f13b543
Allow mixing of raw statements and object flushes
kvesteri Sep 10, 2014
1b3c76a
Add more tests
kvesteri Sep 10, 2014
fbe18ab
Fix transaction object merging
kvesteri Sep 10, 2014
ffe08cd
Fix scoped session handling
kvesteri Sep 11, 2014
0538d5a
Fix select_or_insert handling
kvesteri Sep 11, 2014
d0ed204
Fix Flask test and refactor raw sql tests
kvesteri Sep 11, 2014
0b4ceaa
Optimize native versioning
kvesteri Sep 11, 2014
dc313b0
Skip assoc operation tracking with native versioning
kvesteri Sep 29, 2014
8686b1c
Simplify transaction temp table creation with trigger
kvesteri Oct 1, 2014
c624bbd
Merge branch 'native-versioning/tx-table-trigger'
kvesteri Oct 1, 2014
e642863
Remove native_tx_id column
kvesteri Oct 1, 2014
ef92461
Fix native versioning trigger syncing
kvesteri Oct 7, 2014
4e91ac1
Add identifier quoting to drop_trigger
kvesteri Oct 13, 2014
fe07d10
Make FlaskPlugin accept factory params
kvesteri Oct 23, 2014
dc80e92
Add automatic version inspection
kvesteri Oct 23, 2014
976d5bd
Remove cmdclass
kvesteri Oct 23, 2014
22dbc81
Fix i18n tests
kvesteri Oct 23, 2014
75e368c
Typo.
seizethedave Oct 31, 2014
3a4cda0
Merge pull request #78 from seizethedave/master
kvesteri Nov 5, 2014
b12bb7d
failing one-to-many test case
dtheodor Nov 10, 2014
ba58094
Modified one-to-many query
dtheodor Nov 10, 2014
c0819d0
Fix formatting, bump version
kvesteri Nov 11, 2014
2c2aed3
Merge branch 'dtheodor-relationship'
kvesteri Nov 11, 2014
a9ca745
many-to-many test
dtheodor Nov 12, 2014
d6ab2ae
Many-to-many query fix
dtheodor Nov 12, 2014
d0c74e6
Merge branch 'dtheodor-many2many'
kvesteri Nov 12, 2014
cf8a6d5
Fix inclusion and exclusion of aliased columns
kvesteri Dec 6, 2014
4fd0d5c
Make file adhere to coding standards
kvesteri Dec 6, 2014
3c0ffce
Fix test setup
kvesteri Dec 6, 2014
8cfda09
Rewrite column exclusion schematics
kvesteri Dec 6, 2014
6331b73
Update SA-Utils requirement to 0.27.11
kvesteri Dec 6, 2014
24f9239
Fix native versioning column exclusion handling
kvesteri Dec 6, 2014
904ca09
Skip tests for mysql < 5.6
kvesteri Dec 6, 2014
aef54ad
Update config docs for column exclusion
kvesteri Dec 9, 2014
a7bc1de
Add support for non-integer User class primary key
Dec 17, 2014
fb34abd
Fix self-referential many-to-one query
dtheodor Dec 26, 2014
c39aa41
Fix many-to-many self-referential query
dtheodor Dec 26, 2014
1b171d2
rename variable
dtheodor Dec 26, 2014
0ab7ef6
Add smart user class primary key type inspection
kvesteri Dec 28, 2014
2173e1e
Merge branch 'mattupstate-master'
kvesteri Dec 28, 2014
139d9e4
Merge branch 'self-referential' of https://github.com/dtheodor/sqlalc…
kvesteri Dec 28, 2014
ae03342
Merge branch 'dtheodor-self-referential'
kvesteri Dec 28, 2014
562eeac
Bump version
kvesteri Dec 28, 2014
76d82ed
Remove changes attr from version classes
kvesteri Dec 30, 2014
b6202a4
Remove VersionExpressionParser
kvesteri Jul 24, 2015
69c9b91
Refactor VersionExpressionReflector
kvesteri Jul 24, 2015
68e4b7b
Update requirements
kvesteri Jul 24, 2015
e87e011
Wrap expression with sa.text
kvesteri Jul 24, 2015
4f73465
Fix test setup
kvesteri Jul 24, 2015
794a840
Remove is_modified checks from insert tracking
kvesteri Jul 24, 2015
5818916
Bump version
kvesteri Jul 31, 2015
1d69219
Restoring relationships to their previous state, removing added items.
Aug 24, 2015
dd6a27e
Fix visited objects check
Aug 24, 2015
3cb86d7
Breaking out functional style
Aug 24, 2015
0f18208
remove assumption of User table id column
avilaton Sep 10, 2015
4764794
Fix deep joined table inheritance handling, refs #105
Sep 9, 2015
6119d45
Merge branch 'piotr-dobrogost-master'
kvesteri Sep 27, 2015
96d84f8
Merge pull request #108 from avilaton/master
kvesteri Sep 27, 2015
e249e76
Update changes
kvesteri Sep 27, 2015
c4e13bc
Merge branch 'restore-relationships' of https://github.com/sdorazio/s…
kvesteri Sep 27, 2015
f49ed1b
Merge branch 'sdorazio-restore-relationships'
kvesteri Sep 27, 2015
c2cd53a
Bump version
kvesteri Sep 27, 2015
224311a
Fix some relationship changes not counted as modifications
tvuotila Dec 8, 2015
596da3e
Merge pull request #116 from tvuotila/hotfix/detect-changed-relations…
kvesteri Dec 8, 2015
51e45f1
Bump version
kvesteri Dec 8, 2015
8c24d2b
Option to use module name on version class name
kyheo Dec 17, 2015
112f00b
Python 2.6 support when naming version classes
kyheo Dec 17, 2015
7031d82
Merge branch 'kyheo-feature/module-as-class-name'
kvesteri Jan 10, 2016
3185ce8
Bump version
kvesteri Jan 10, 2016
0bb36e0
Add explicit sequence names
kvesteri Jan 21, 2016
cb72563
Make tests fail on memory leaks, refs #131
quantus Mar 18, 2016
7638ae2
Fix UnitOfWork related memory leak, refs #131
quantus Mar 18, 2016
a605477
Fix memory leak when session bind value is engine, refs #131
quantus Mar 16, 2016
10e6060
Drop py2.6 support
kvesteri Mar 20, 2016
efd9bab
Add py35 to test matrix
kvesteri Mar 20, 2016
d0b3e20
Merge pull request #133 from quantus/hotfix/memory-leakage4
kvesteri Mar 20, 2016
8ac917a
Failing tests for entities living in other schema
vault Mar 21, 2016
e2c7c5e
transaction uses pkey column for user_id foreign key
vault Feb 27, 2016
4f5ed91
table_builder copies schema of versioned table
vault Mar 1, 2016
4b656c6
Fix many-to-many versioning in separate schemas
vault Mar 18, 2016
5d1bc51
Convert readthedocs links for their .org -> .io migration for hosted …
Jun 2, 2016
5f682e6
Merge pull request #142 from adamchainz/readthedocs.io
kvesteri Jun 3, 2016
95a7a65
Fixed `changeset` method for multi-flush transactions
oinopion Jun 20, 2016
52594a3
New style Flask imports
jirikuncar Nov 8, 2016
447f3ab
Merge pull request #148 from jirikuncar/flask_login
kvesteri Nov 8, 2016
1a9628c
add return value to actor property
stepsame Nov 22, 2016
4ab7bf3
Merge pull request #151 from stepsame/hotfix-activity-plugins
kvesteri Nov 22, 2016
7fc694b
Fix PyPy shield icons in README
grakic Jan 24, 2017
f80e95a
Merge pull request #157 from grakic/fix_readme_icons
kvesteri Jan 24, 2017
8f5ac89
Bump version
kvesteri Jan 30, 2017
bc177de
Fix i18n tests
kvesteri Jan 30, 2017
506d7d4
Update code sample
grakic Jan 23, 2017
283e092
Merge pull request #155 from grakic/patch-1
kvesteri Mar 5, 2017
ce9369d
correct spelling mistakes
EdwardBetts Apr 9, 2017
be1bf52
Merge pull request #161 from EdwardBetts/patch-1
kvesteri Apr 9, 2017
160cb54
Fix possible random subclass retrieval on closest_matching_table.
debonzi Jun 15, 2017
6eb358f
Add test for inheritance case.
debonzi Jun 20, 2017
9ed7169
Merge pull request #163 from debonzi/bugfix/ordered_subclass_lookup
kvesteri Jun 28, 2017
c6099ac
Bump version
kvesteri Jun 28, 2017
7647e9b
Fix typo in relationship_builder
Jun 28, 2017
ee857be
Merge pull request #165 from frankjwu/master
kvesteri Jul 4, 2017
b8fa575
little grammar fix
fpruitt Aug 24, 2017
bef7999
Merge pull request #168 from fpruitt/patch-1
kvesteri Aug 24, 2017
48f2491
improve memory usage on large tables
fuhrysteve Sep 4, 2017
8720552
Merge pull request #170 from fuhrysteve/vacuum_memory_enhancement
kvesteri Sep 7, 2017
7089b81
Merge pull request #132 from vault/master
kvesteri Oct 12, 2017
9cf6ebe
Bump version
kvesteri Oct 12, 2017
cdb2398
Merge branch 'fix-changeset' of https://github.com/oinopion/sqlalchem…
kvesteri Nov 5, 2017
712fa57
Merge branch 'oinopion-fix-changeset'
kvesteri Nov 5, 2017
486b6c8
Bump version
kvesteri Nov 5, 2017
8399829
don't include excluded properties
fuhrysteve Sep 4, 2017
4e222f2
add mypy & .cache to gitignore
fuhrysteve Sep 4, 2017
d540483
add test for excluded relationship
fuhrysteve Oct 11, 2017
a9ac2fb
add python 3.6, remove 3.3 to travis
fuhrysteve Nov 8, 2017
9027b5d
Update README.rst
tsantanaDH Mar 5, 2018
7181ffa
Update intro.rst
tsantanaDH Mar 5, 2018
f036ffa
Merge pull request #183 from tsantanaDH/patch-1
kvesteri Mar 7, 2018
5e00c0d
Merge pull request #169 from fuhrysteve/dont_include_excluded_relatio…
kvesteri Mar 7, 2018
c4aad39
Bump version
kvesteri Mar 7, 2018
f98469d
Adding a unittest, reproducing #166
May 16, 2018
acef01b
track cloned connections
Aug 15, 2017
8658a89
Merge pull request #167 from netcriptus/hotfix/track-cloned-connections
kvesteri Jun 3, 2018
d4ed900
Bump version
kvesteri Jun 3, 2018
79b9876
Reraise original exception instead of a new one
fuhrysteve Jun 7, 2018
5a3fbcf
Merge pull request #189 from fuhrysteve/reraise_original_exception
kvesteri Jun 12, 2018
8496cdd
Test for leaked connections on external rollback
vault Jul 26, 2018
3a5b967
Check connection.closed before connection.connection
vault Jul 26, 2018
4ded9b3
Invalidate units_of_work on Engine rollback event
vault Jul 26, 2018
345be03
Merge pull request #196 from vault/fix-connections-leaking
kvesteri Jul 30, 2018
cedad54
Bump version
kvesteri Jul 30, 2018
88d1b25
Added Custom schema_name options for version tables, adds more flexib…
raheelriax Sep 26, 2018
6ecf476
Added Transaction table options
raheelriax Sep 26, 2018
4dce399
Merge branch 'develop' into hotfix/version-table-fix
raheelriax Sep 26, 2018
a0d8417
Fixed version_table_schema_issue
raheelriax Sep 26, 2018
5b73670
Merge branch 'hotfix/version-table-fix' into develop
raheelriax Sep 26, 2018
1a06240
Added Universal options for version tables schema
raheelriax Sep 26, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 8 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -34,3 +34,11 @@ nosetests.xml
.mr.developer.cfg
.project
.pydevproject

# mypy
.mypy_cache/

# Unit test / coverage reports
.cache

\.idea/
9 changes: 6 additions & 3 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,21 @@ addons:
env:
- DB=mysql
- DB=postgres
- DB=postgres-native
- DB=sqlite

before_script:
- sh -c "if [ '$DB' = 'postgres' ]; then psql -c 'create database sqlalchemy_continuum_test;' -U postgres; fi"
- sh -c "if [ '$DB' = 'postgres-native' ]; then psql -c 'create database sqlalchemy_continuum_test;' -U postgres; fi"
- sh -c "if [ '$DB' = 'mysql' ]; then mysql -e 'create database sqlalchemy_continuum_test;'; fi"

language: python
python:
- 2.6
- 2.7
- 3.3
- 3.4
- 3.5
- 3.6
install:
- pip install -e ".[test]"
script:
- python setup.py test
- py.test
204 changes: 203 additions & 1 deletion CHANGES.rst
Original file line number Diff line number Diff line change
Expand Up @@ -3,9 +3,211 @@ Changelog

Here you can see the full list of changes between each SQLAlchemy-Continuum release.

1.0-b1 (2014-03-14)

1.3.6 (2018-07-30)
^^^^^^^^^^^^^^^^^^

- Fixed ResourceClosedErrors from connections leaking when using an external transaction (#196, courtesy of vault)


1.3.5 (2018-06-03)
^^^^^^^^^^^^^^^^^^

- Track cloned connections (#167, courtesy of netcriptus)


1.3.4 (2018-03-07)
^^^^^^^^^^^^^^^^^^

- Exclude many-to-many properties from versioning if they are added in exclude parameter (#169, courtesy of fuhrysteve)


1.3.3 (2017-11-05)
^^^^^^^^^^^^^^^^^^

- Fixed changeset when updating object in same transaction as inserting it (#141, courtesy of oinopion)


1.3.2 (2017-10-12)
^^^^^^^^^^^^^^^^^^

- Fixed multiple schema handling (#132, courtesy of vault)


1.3.1 (2017-06-28)
^^^^^^^^^^^^^^^^^^

- Fixed subclass retrieval for closest_matching_table (#163, courtesy of debonzi)


1.3.0 (2017-01-30)
^^^^^^^^^^^^^^^^^^

- Dropped py2.6 support
- Fixed memory leaks with UnitOfWork instances (#131, courtesy of quantus)


1.2.4 (2016-01-10)
^^^^^^^^^^^^^^^^^^

- Added explicit sequence names for Oracle (#118, courtesy of apfeiffer1)


1.2.3 (2016-01-10)
^^^^^^^^^^^^^^^^^^

- Added use_module_name configuration option (#119, courtesy of kyheo)


1.2.2 (2015-12-08)
^^^^^^^^^^^^^^^^^^

- Fixed some relationship changes not counted as modifications (#116, courtesy of tvuotila)


1.2.1 (2015-09-27)
^^^^^^^^^^^^^^^^^^

- Fixed deep joined table inheritance handling (#105, courtesy of piotr-dobrogost)
- Fixed naive assumption of related User model always having id column (#107, courtesy of avilaton)
- Fixed one-to-many relationship reverting (#102, courtesy of sdorazio)


1.2.0 (2015-07-31)
^^^^^^^^^^^^^^^^^^

- Removed generated changes attribute from version classes. This attribute can be accessed through `transaction.changes`
- Removed is_modified checking from insert operations


1.1.5 (2014-12-28)
^^^^^^^^^^^^^^^^^^

- Added smart primary key type inspection for user class (#86, courtesy of mattupstate)
- Added support for self-referential version relationship reflection (#88, courtesy of dtheodor)


1.1.4 (2014-12-06)
^^^^^^^^^^^^^^^^^^

- Fixed One-To-Many version relationship handling (#82, courtesy of dtheodor)
- Fixed Many-To-Many version relationship handling (#83, courtesy of dtheodor)
- Fixed inclusion and exclusion of aliased columns
- Removed automatic exclusion of auto-assigned datetime columns and tsvector columns (explicit is better than implicit)


1.1.3 (2014-10-23)
^^^^^^^^^^^^^^^^^^

- Made FlaskPlugin accepts overriding of current_user_id_factory and remote_addr_factory


1.1.2 (2014-10-07)
^^^^^^^^^^^^^^^^^^

- Fixed identifier quoting in trigger syncing


1.1.1 (2014-10-07)
^^^^^^^^^^^^^^^^^^

- Fixed native versioning trigger syncing


1.1.0 (2014-10-02)
^^^^^^^^^^^^^^^^^^

- Added Python 3.4 to test suite
- Added optional native trigger based versioning for PostgreSQL dialect
- Added create_models option
- Added count_versions utility function
- Fixed custom transaction column name handling with models using joined table inheritance
- Fixed subquery strategy support for models using joined table inheritance
- Fixed savepoint handling
- Fixed version model building when no versioned models were found (previously threw AttributeError)
- Replaced plugin template methods before_create_tx_object and after_create_tx_object with transaction_args to better cope with native versioning


1.0.3 (2014-07-16)
^^^^^^^^^^^^^^^^^^

- Added __repr__ for Operations class
- Fixed an issue where assigning unmodified object's attributes in user defined before flush listener would raise TypeError in UnitOfWork


1.0.2 (2014-07-11)
^^^^^^^^^^^^^^^^^^

- Allowed easier overriding of PropertyModTracker column creation
- Rewrote join table inheritance handling schematics (now working with SA 0.9.6)
- SQLAlchemy-Utils dependency updated to 0.26.5


1.0.1 (2014-06-18)
^^^^^^^^^^^^^^^^^^

- Fixed an issue where deleting an object with deferred columns would throw ObjectDeletedError.
- Made viewonly relationships with association tables not register the association table to versioning manager registry.


1.0 (2014-06-16)
^^^^^^^^^^^^^^^^

- Added __repr__ for Transaction class, issue #59
- Made transaction_cls of VersioningManager configurable.
- Removed generic relationships from transaction class to versioned classes.
- Removed generic relationships from transaction changes class to versioned classes.
- Removed relation_naming_function (no longer needed)
- Moved get_bind to SQLAlchemy-Utils
- Removed inflection package from dependencies (no longer needed)
- SQLAlchemy-Utils dependency updated to 0.26.2


1.0b5 (2014-05-07)
^^^^^^^^^^^^^^^^^^

- Added order_by mapper arg ignoring for version class reflection if other than string argument is used
- Added support for customizing the User class which the Transaction class should have relationship to (issue #53)
- Changed get_versioning_manager to throw ClassNotVersioned exception if first argument is not a versioned class
- Fixed relationship reflection from versioned classes to non versioned classes (issue #52)
- SQLAlchemy-Utils dependency updated to 0.25.4


1.0-b4 (2014-04-20)
^^^^^^^^^^^^^^^^^^^

- Fixed many-to-many unit of work inspection when using engine bind instead of collection bind
- Fixed various issues if primary key aliases were used in declarative models
- Fixed an issue where association versioning would not work with custom transaction column name
- SQLAlchemy-Utils dependency updated to 0.25.3


1.0-b3 (2014-04-19)
^^^^^^^^^^^^^^^^^^^

- Added support for concrete inheritance
- Added order_by mapper arg reflection to version classes
- Added support for column_prefix mapper arg
- Made model builder copy inheritance mapper args to version classes from parent classes
- Fixed end transaction id setting for join table inheritance classes. Now end transaction id is set explicitly to all tables in inheritance hierarchy.
- Fixed single table inheritance handling


1.0-b2 (2014-04-09)
^^^^^^^^^^^^^^^^^^^

- Added some schema tools to help migrating between different plugins and versioning strategies
- Added remove_versioning utility function, see issue #45
- Added order_by transaction_id default to versions relationship
- Fixed PropertyModTrackerPlugin association table handling.
- Fixed get_bind schematics (Flask-SQLAlchemy integration wasn't working)
- Fixed a bug where committing a session without objects would result in KeyError
- SQLAlchemy dependency updated to 0.9.4


1.0-b1 (2014-03-14)
^^^^^^^^^^^^^^^^^^^

- Added new plugin architecture
- Added ActivityPlugin
- Naming conventions change: History -> Version (to be consistent throughout Continuum)
Expand Down
26 changes: 20 additions & 6 deletions README.rst
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,7 @@ Features
- Transactions can be queried afterwards using SQLAlchemy query syntax
- Query for changed records at given transaction
- Temporal relationship reflection. Version object's relationship show the parent objects relationships as they where in that point in time.
- Supports native versioning for PostgreSQL database (trigger based versioning)


QuickStart
Expand All @@ -40,7 +41,7 @@ In order to make your models versioned you need two things:
from sqlalchemy_continuum import make_versioned


make_versioned()
make_versioned(user_cls=None)


class Article(Base):
Expand Down Expand Up @@ -77,7 +78,7 @@ In order to make your models versioned you need two things:
Resources
---------

- `Documentation <http://sqlalchemy-continuum.readthedocs.org/>`_
- `Documentation <https://sqlalchemy-continuum.readthedocs.io/>`_
- `Issue Tracker <http://github.com/kvesteri/sqlalchemy-continuum/issues>`_
- `Code <http://github.com/kvesteri/sqlalchemy-continuum/>`_

Expand All @@ -87,7 +88,20 @@ Resources

.. |Build Status| image:: https://travis-ci.org/kvesteri/sqlalchemy-continuum.png?branch=master
:target: https://travis-ci.org/kvesteri/sqlalchemy-continuum
.. |Version Status| image:: https://pypip.in/v/SQLAlchemy-Continuum/badge.png
:target: https://crate.io/packages/SQLAlchemy-Continuum/
.. |Downloads| image:: https://pypip.in/d/SQLAlchemy-Continuum/badge.png
:target: https://crate.io/packages/SQLAlchemy-Continuum/
.. |Version Status| image:: https://img.shields.io/pypi/v/SQLAlchemy-Continuum.png
:target: https://pypi.python.org/pypi/SQLAlchemy-Continuum/
.. |Downloads| image:: https://img.shields.io/pypi/dm/SQLAlchemy-Continuum.png
:target: https://pypi.python.org/pypi/SQLAlchemy-Continuum/


More information
----------------

- http://en.wikipedia.org/wiki/Slowly_changing_dimension
- http://en.wikipedia.org/wiki/Change_data_capture
- http://en.wikipedia.org/wiki/Anchor_Modeling
- http://en.wikipedia.org/wiki/Shadow_table
- https://wiki.postgresql.org/wiki/Audit_trigger
- https://wiki.postgresql.org/wiki/Audit_trigger_91plus
- http://kosalads.blogspot.fi/2014/06/implement-audit-functionality-in.html
- https://github.com/2ndQuadrant/pgaudit
Loading