File: ChangeLog.rst

package info (click to toggle)
django-dirtyfields 1.3.1-2
  • links: PTS, VCS
  • area: main
  • in suites: bullseye
  • size: 272 kB
  • sloc: python: 812; makefile: 168
file content (227 lines) | stat: -rw-r--r-- 5,956 bytes parent folder | download | duplicates (3)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
ChangeLog
=========

.. _master:

master (unreleased)
-------------------


.. _v1.3.1:

1.3.1 (28/02/2017)
------------------

*New:*
    - Updates python classifier in setup file (#116). Thanks amureki.
    - Adds PEP8 validation in travisCI run (#123). Thanks hsmett.

*Bugfix:*

    - Avoids :code:`get_deferred_fields` to be called too many times on :code:`_as_dict` (#115). Thanks benjaminrigaud.
    - Respects :code:`FIELDS_TO_CHECK` in `reset_state` (#114). Thanks bparker98.

.. _v1.3:

1.3 (23/08/2017)
----------------

*New:*

    - Drop support for unsupported Django versions: 1.4, 1.5, 1.6 and 1.7 series.
    - Fixes issue with verbose mode when the object has not been yet saved in the database (MR #99). Thanks vapkarian.
    - Add test coverage for Django 1.11.
    - A new attribute :code:`FIELDS_TO_CHECK` has been added to :code:`DirtyFieldsMixin` to specify a limited set of fields to check.

*Bugfix:*

    - Correctly handle :code:`ForeignKey.db_column` :code:`{}_id` in :code:`update_fields`. Thanks Hugo Smett.
    - Fixes #111: Eliminate a memory leak.
    - Handle deferred fields in :code:`update_fields`


.. _v1.2.1:

1.2.1 (2016-11-16)
------------------

*New:*

    - :code:`django-dirtyfields` is now tested with PostgreSQL, especially with specific fields

*Bugfix:*

    - Fixes #80: Use of :code:`Field.rel` raises warnings from Django 1.9+
    - Fixes #84: Use :code:`only()` in conjunction with 2 foreign keys triggers a recursion error
    - Fixes #77: Shallow copy does not work with Django 1.9's JSONField
    - Fixes #88: :code:`get_dirty_fields` on a newly-created model does not work if pk is specified
    - Fixes #90: Unmark dirty fields only listed in :code:`update_fields`


.. _v1.2:

1.2 (2016-08-11)
----------------

*New:*

    - :code:`django-dirtyfields` is now compatible with Django 1.10 series (deferred field handling has been updated).


.. _v1.1:

1.1 (2016-08-04)
----------------

*New:*

    - A new attribute :code:`ENABLE_M2M_CHECK` has been added to :code:`DirtyFieldsMixin` to enable/disable m2m check
      functionality. This parameter is set to :code:`False` by default.
      IMPORTANT: backward incompatibility with v1.0.x series. If you were using :code:`check_m2m` parameter to
      check m2m relations, you should now add :code:`ENABLE_M2M_CHECK = True` to these models inheriting from
      :code:`DirtyFieldsMixin`. Check the documentation to see more details/examples.


.. _v1.0.1:

1.0.1 (2016-07-25)
------------------

*Bugfix:*

    - Fixing a bug preventing :code:`django-dirtyfields` to work properly on models with custom primary keys.


.. _v1.0:

1.0 (2016-06-26)
----------------

After several years of existence, django-dirty-fields is mature enough to switch to 1.X version.
There is a backward-incompatibility on this version. Please read careful below.

*New:*

    - IMPORTANT: :code:`get_dirty_fields` is now more consistent for models not yet saved in the database.
      :code:`get_dirty_fields` is, in that situation, always returning ALL fields, where it was before returning
      various results depending on how you initialised your model.
      It may affect you specially if you are using :code:`get_dirty_fields` in a :code:`pre_save` receiver.
      See more details at https://github.com/romgar/django-dirtyfields/issues/65.
    - Adding compatibility for old _meta API, deprecated in Django `1.10` version and now replaced by an official API.
    - General test cleaning.


.. _v0.9:

0.9 (2016-06-18)
----------------

*New:*

    - Adding Many-to-Many fields comparison method :code:`check_m2m` in :code:`DirtyFieldsMixin`.
    - Adding :code:`verbose` parameter in :code:`get_dirty_fields` method to get old AND new field values.


.. _v0.8.2:

0.8.2 (2016-03-19)
------------------

*New:*

    - Adding field comparison method :code:`compare_function` in :code:`DirtyFieldsMixin`.
    - Also adding a specific comparison function :code:`timezone_support_compare` to handle different Datetime situations.


.. _v0.8.1:

0.8.1 (2015-12-08)
------------------

*Bugfix:*

    - Not comparing fields that are deferred (:code:`only` method on :code:`QuerySet`).
    - Being more tolerant when comparing values that can be on another type than expected.



.. _v0.8:

0.8 (2015-10-30)
----------------

*New:*

    - Adding :code:`save_dirty_fields` method to save only dirty fields in the database.


.. _v0.7:

0.7 (2015-06-18)
----------------

*New:*

    - Using :code:`copy` to properly track dirty fields on complex fields.
    - Using :code:`py.test` for tests launching.


.. _v0.6.1:

0.6.1 (2015-06-14)
------------------

*Bugfix:*

    - Preventing django db expressions to be evaluated when testing dirty fields (#39).


.. _v0.6:

0.6 (2015-06-11)
----------------

*New:*

    - Using :code:`to_python` to avoid false positives when dealing with model fields that internally convert values (#4)

*Bugfix:*

    - Using :code:`attname` instead of :code:`name` on fields to avoid massive useless queries on ForeignKey fields (#34). For this kind of field, :code:`get_dirty_fields()` is now returning instance id, instead of instance itself.


.. _v0.5:

0.5 (2015-05-06)
----------------

*New:*

    - Adding code compatibility for python3,
    - Launching travis-ci tests on python3,
    - Using :code:`tox` to launch tests on Django 1.5, 1.6, 1.7 and 1.8 versions,
    - Updating :code:`runtests.py` test script to run properly on every Django version.

*Bugfix:*

    - Catching :code:`Error` when trying to get foreign key object if not existing (#32).


.. _v0.4.1:

0.4.1 (2015-04-08)
------------------

*Bugfix:*

    - Removing :code:`model_to_form` to avoid bug when using models that have :code:`editable=False` fields.


.. _v0.4:

0.4 (2015-03-31)
----------------

*New:*

    - Adding :code:`check_relationship` parameter on :code:`is_dirty` and :code:`get_dirty_field` methods to also check foreign key values.