You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: CHANGES
+10-7Lines changed: 10 additions & 7 deletions
Original file line number
Diff line number
Diff line change
@@ -1,15 +1,18 @@
1
-
Release 1.4 (dev)
2
-
-----------------
1
+
Release 1.4
2
+
-----------
3
+
* closes :issue:`81`. Add docs and check.
4
+
* fixes :issue:`80`. (thanks Naddiseo for the useful support)
3
5
* Django 1.11 compatibility
4
6
* some minor support for Django 2.0
5
7
8
+
6
9
Release 1.3.2 (10 Sep 2016)
7
-
-------------------------
10
+
---------------------------
8
11
* fixes bug in ConditionalVersionField that produced 'maximum recursion error' when a model had a ManyToManyField with a field to same model (self-relation)
9
12
10
13
11
14
Release 1.3.1 (15 Jul 2016)
12
-
-------------------------
15
+
---------------------------
13
16
* just packaging
14
17
15
18
@@ -117,7 +120,7 @@ Release 0.5.0
117
120
118
121
119
122
Release 0.4.0
120
-
---------------------------------
123
+
-------------
121
124
* start deprecation of ``concurrency.core.VersionChangedError``, ``concurrency.core.RecordModifiedError``,
122
125
``concurrency.core.InconsistencyError``,moved in ``concurrency.exceptions``
123
126
* start deprecation of ``concurrency.core.apply_concurrency_check``, ``concurrency.core.concurrency_check`` moved in ``concurrency.api``
@@ -127,13 +130,13 @@ Release 0.4.0
127
130
* changed way to add concurrency to existing models (:ref:`apply_concurrency_check`)
128
131
* fixed :issue:`4` (thanks FrankBie)
129
132
* removed RandomVersionField
130
-
* new :ref:`concurrency_check`
133
+
* new `concurrency_check`
131
134
* added :ref:`concurrentform` to mitigate some concurrency conflict
132
135
* select_for_update now executed with ``nowait=True``
133
136
* removed some internal methods, to avoid unlikely but possible name clashes
.. warning:: If you customize ``fields`` or ``fieldsets`` remember to add version field to the list. (See issue :ghissue:`81`)
79
+
80
+
81
+
78
82
.. _ConcurrencyActionMixin:
79
83
80
84
ConcurrencyActionMixin
@@ -115,7 +119,6 @@ concurrency.views.conflict
115
119
Helpers
116
120
-------
117
121
118
-
119
122
.. _apply_concurrency_check:
120
123
121
124
`apply_concurrency_check()`
@@ -132,8 +135,7 @@ Add concurrency check to existing classes.
132
135
you need to use a migration to add a `VersionField` to the desired Model.
133
136
134
137
135
-
.. note:: See ``demo.auth_migrations`` for a example how to add
136
-
:class:`IntegerVersionField <concurrency.fields.IntegerVersionField>` to :class:`auth.Group` )
138
+
.. note:: See ``demo.auth_migrations`` for a example how to add :class:`IntegerVersionField <concurrency.fields.IntegerVersionField>` to :class:`auth.Group` )
Copy file name to clipboardExpand all lines: docs/fields.rst
+2-6Lines changed: 2 additions & 6 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -36,13 +36,11 @@ TriggerVersionField
36
36
This field use a database trigger to update the version field.
37
37
Using this you can control external updates (ie using tools like phpMyAdmin, pgAdmin, SQLDeveloper).
38
38
The trigger is automatically created during ``syncdb()``
39
-
or you can use the :ref:`triggers` management command.
39
+
or you can use the `triggers`_ management command.
40
40
41
41
.. versionchanged:: 1.0
42
42
43
-
.. warning:: Before |concurrency| 1.0 two triggers per field were created,
44
-
if you are upgrading you must manually remove old triggers and recreate them
45
-
using :ref:`triggers`_ management command
43
+
.. warning:: Before |concurrency| 1.0 two triggers per field were created, if you are upgrading you must manually remove old triggers and recreate them using `triggers`_ management command
46
44
47
45
`trigger_name`
48
46
~~~~~~~~~~~~~~
@@ -67,8 +65,6 @@ Otherwise for each `TriggerVersionField` will be created two triggers named:
67
65
`triggers` management command
68
66
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
69
67
70
-
.. command:: triggers
71
-
72
68
Helper command to work with triggers:
73
69
74
70
* ``list`` : list existing triggers for each database
Stop at the first conflict and raise :class:`RecordModifiedError <concurrency.exceptions.RecordModifiedError>`.
125
+
Note that if you want to use :class:`ConcurrencyMiddleware <concurrency.middleware.ConcurrencyMiddleware>` based conflict management you must set this flag.
0 commit comments