Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
Newer
Older
100644 369 lines (252 sloc) 12.553 kB
35fb6f5 @mcdonc Add partial work towards schema / validation / serialization / deseri…
mcdonc authored
1 Changes
2 =======
3
ed5b611 @mcdonc - Fix documentation: 0.9.2 requires ``deserialize`` of types to expli…
mcdonc authored
4 Next release
5 ------------
6
7 - Fix documentation: 0.9.2 requires ``deserialize`` of types to explicitly
8 deal with the potential to receive ``colander.null``.
9
9692e15 @mcdonc note nouri's change
mcdonc authored
10 - Use ``default_tzinfo`` when deserializing naive datetimes. See
11 https://github.com/Pylons/colander/issues#issue/5.
12
3a1b50c @mcdonc add note to changelog
mcdonc authored
13 - Allow ``default_tzinfo`` to be ``None`` when creating a
14 ``colander.DateTime``. See
15 https://github.com/Pylons/colander/issues#issue/6.
16
e96597d @cjw296 add changelog entry
cjw296 authored
17 - Add the ability to insert a :class:`~colander.interfaces.Preparer`
18 between deserialization and validation. See the :ref:`preparing`.
19
de7facd @mcdonc prep for 0.9.2
mcdonc authored
20 0.9.2 (2011-03-28)
21 ------------------
518ac48 @mcdonc - New API: ``colander.required``. Used as the marker value when a
mcdonc authored
22
2e269fc @mcdonc docutils cant handle accented chars
mcdonc authored
23 - Added Polish translation, thanks to Jedrzej Nowak.
73a636e @tseaver Changelog for pull request from pigmej.
tseaver authored
24
c57ada4 @mcdonc - Moved to Pylons Project GitHub (https://github.com/Pylons/colander).
mcdonc authored
25 - Moved to Pylons Project GitHub (https://github.com/Pylons/colander).
26
27 - Add tox.ini for testing purposes.
28
518ac48 @mcdonc - New API: ``colander.required``. Used as the marker value when a
mcdonc authored
29 - New API: ``colander.required``. Used as the marker value when a
30 ``missing`` argument is left unspecified.
31
5dab4e2 @mcdonc - Bug fix: if a ``title`` argument which is the empty string or ``Non…
mcdonc authored
32 - Bug fix: if a ``title`` argument which is the empty string or ``None`` is
33 passed explicitly to a SchemaNode, it is no longer replaced by a title
34 computed from the name.
35
b2bf5c9 @mcdonc add changenote
mcdonc authored
36 - Add SchemaNode.__contains__ to support "name in schema".
37
ac50e7b @mcdonc - SchemaNode deserialization now unconditionally calls the schema type's
mcdonc authored
38 - SchemaNode deserialization now unconditionally calls the schema type's
39 ``deserialize`` method to obtain an appstruct before attempting to
40 validate. Third party schema types should now return ``colander.null`` if
41 passed a ``colander.null`` value or another logically "empty" value as a
42 cstruct during ``deserialize``.
43
a0297c8 @mcdonc prep for 0.9.1
mcdonc authored
44 0.9.1 (2010-12-02)
45 ------------------
f8e9b67 @mcdonc back to development:
mcdonc authored
46
13fa908 @mcdonc - When ``colander.null`` was unpickled, the reference created during
mcdonc authored
47 - When ``colander.null`` was unpickled, the reference created during
48 unpickling was *not* a reference to the singleton but rather a new instance
49 of the ``colander._null`` class. This was unintentional, because lots of
50 code checks for ``if x is colander.null``, which will fail across pickling
51 and unpickling. Now the reference created when ``colander.null`` is
52 pickled is unpickled as the singleton itself.
f8e9b67 @mcdonc back to development:
mcdonc authored
53
c326b6f @mcdonc prep for 0.9
mcdonc authored
54 0.9 (2010-11-28)
47cba0e @mcdonc - SchemaNode constructor now accepts arbitrary keyword arguments. It
mcdonc authored
55 -----------------
56
57 - SchemaNode constructor now accepts arbitrary keyword arguments. It
58 sets any unknown values within the ``**kw`` sequence as attributes
59 of the node object.
f257ea8 @tseaver Add Spanish locale: thanks to David Cerna for the translations!
tseaver authored
60
5c1588e @tseaver Apply Douglas Cerna's fixed .pot file, corresponding updates to the …
tseaver authored
61 - Added Spanish locale: thanks to Douglas Cerna for the translations!
f257ea8 @tseaver Add Spanish locale: thanks to David Cerna for the translations!
tseaver authored
62
2f4e389 @mcdonc - If you use a schema with deferred ``validator``, ``missing`` or
mcdonc authored
63 - If you use a schema with deferred ``validator``, ``missing`` or
64 ``default`` attributes, but you use it to perform serialization and
65 deserialization without calling its ``bind`` method:
66
67 - If ``validator`` is deferred, no validation will be performed.
68
69 - If ``missing`` is deferred, the field will be considered *required*.
70
71 - If ``default`` is deferred, the serialization default will be
72 assumed to be ``colander.null``.
73
03b5299 @mcdonc - Undocumented internal API for all type objects: ``flatten``.
mcdonc authored
74 - Undocumented internal API for all type objects: ``flatten``.
75 External type objects should now inherit from
76 ``colander.SchemaType`` to get a default implementation.
2f4e389 @mcdonc - If you use a schema with deferred ``validator``, ``missing`` or
mcdonc authored
77
a6a1aab @mcdonc Prep for 0.8.
mcdonc authored
78 0.8 (2010/09/08)
79 -----------------
289ab36 @mcdonc - Docstring fixes to ``colander.SchemaNode`` (``missing`` is not the
mcdonc authored
80
81 - Docstring fixes to ``colander.SchemaNode`` (``missing`` is not the
82 ``null`` value when required, it's a special marker value).
83
514b06a @mcdonc - The concept of "schema binding" was added, which allows for a more
mcdonc authored
84 - The concept of "schema binding" was added, which allows for a more
85 declarative-looking spelling of schemas and schema nodes which have
86 dependencies on values available after the schema has already been
87 fully constructed. See the new narrative chapter in the
88 documentation entitled "Schema Binding".
89
90 - The interface of ``colander.SchemaNode`` has grown a ``__delitem__``
91 method. The ``__iter__``, and ``__getitem__`` methods have now also
92 been properly documented.
93
6c08194 @mcdonc prep for 0.7.3
mcdonc authored
94 0.7.3 (2010/09/02)
95 ------------------
5e57308 @mcdonc - The title of a schema node now defaults to a titleization of the
mcdonc authored
96
97 - The title of a schema node now defaults to a titleization of the
98 ``name``. Underscores in the ``name`` are replaced with empty
99 strings and the first letter of every resulting word is capitalized.
100 Previously the ``name`` was not split on underscores, and the
101 entirety of the ``name`` was capitalized.
102
7b638c9 @mcdonc - A method of the ``colander.Invalid`` exception named ``messages``
mcdonc authored
103 - A method of the ``colander.Invalid`` exception named ``messages``
104 was added. It returns an iterable of error messages using the
105 ``msg`` attribute of its related exception node. If the ``msg``
106 attribute is iterable, it is returned. If it is not iterable, a
107 single-element list containing the ``msg`` value is returned.
108
c36df01 @mcdonc prep for 0.7.2
mcdonc authored
109 0.7.2 (2010/08/30)
110 ------------------
60df7fe @mcdonc Changelog gardening.
mcdonc authored
111
112 - Add an ``colander.SchemaNode.__iter__`` method, which iterates over
113 the children nodes of a schema node.
114
18c21ba @mcdonc - The constructor of a ``colander.SchemaNode`` now accepts a
mcdonc authored
115 - The constructor of a ``colander.SchemaNode`` now accepts a
116 ``widget`` keyword argument, for use by Deform (it is not used
117 internally).
118
81067b5 @mcdonc prep for 0.7.1
mcdonc authored
119 0.7.1 (2010/06/12)
120 ------------------
165478b @mcdonc - Make it possible to use ``colander.null`` as a ``missing`` argument
mcdonc authored
121
122 - Make it possible to use ``colander.null`` as a ``missing`` argument
123 to ``colander.SchemaNode`` for roundtripping purposes.
124
125 - Make it possible to pickle ``colander.null``.
126
206cc49 @mcdonc prep for 0.7.0
mcdonc authored
127 0.7.0
128 -----
129
130 A release centered around normalizing the treatment of default and
131 missing values.
132
133 Bug Fixes
134 ~~~~~~~~~
12abbf7 @mcdonc - Allow ``colander.Regex`` validator to accept a pattern object
mcdonc authored
135
136 - Allow ``colander.Regex`` validator to accept a pattern object
137 instead of just a string.
138
3655ee9 @mcdonc - Get rid of circular reference in Invalid exceptions: Invalid
mcdonc authored
139 - Get rid of circular reference in Invalid exceptions: Invalid
140 exceptions now no longer have a ``parent`` attribute. Instead, they
141 have a ``positional`` attribute, which signifies that the parent
142 node type of the schema node to which they relate inherits from
143 Positional. This attribute isn't an API; it's used only internally
144 for reporting.
145
2bc84d1 @mcdonc - Raise a ``TypeError`` when bogus keyword arguments are passed to
mcdonc authored
146 - Raise a ``TypeError`` when bogus keyword arguments are passed to
147 ``colander.SchemaNode``.
148
206cc49 @mcdonc prep for 0.7.0
mcdonc authored
149 Backwards Incompatiblities / New Features
150 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
151
f8dee4f @mcdonc simplify defaulting
mcdonc authored
152 - ``missing`` constructor arg to SchemaNode: signifies
153 *deserialization* default, disambiguated from ``default`` which acted
154 as both serialization and deserialization default previously.
155
156 Changes necessitated / made possible by SchemaNode ``missing``
157 addition:
158
159 - The ``allow_empty`` argument of the ``colander.String`` type was
160 removed (use ``missing=''`` as a wrapper SchemaNode argument
161 instead).
162
163 - New concept: ``colander.null`` input to serialization and
206cc49 @mcdonc prep for 0.7.0
mcdonc authored
164 deserialization. Use of ``colander.null`` normalizes serialization
f8dee4f @mcdonc simplify defaulting
mcdonc authored
165 and deserialization default handling.
166
167 Changes necessitated / made possible by ``colander.null`` addition:
168
169 - ``partial`` argument and attribute of colander.MappingSchema has
170 been removed; all serializations are partial, and partial
171 deserializations are not necessary.
172
173 - ``colander.null`` values are added to the cstruct for partial
174 serializations instead of omitting missing node values from
175 the cstruct.
176
177 - ``colander.null`` may now be present in serialized and
178 deserialized data structures.
179
180 - ``sdefault`` attribute of SchemaNode has been removed; we never need
181 to serialize a default anymore.
182
183 - The value ``colander.null`` will be passed as ``appstruct`` to
184 each type's ``serialize`` method when a mapping appstruct doesn't
185 have a corresponding key instead of ``None``, as was the practice
186 previously.
187
188 - The value ``colander.null`` will be passed as ``cstruct`` to
189 each type's ``deserialize`` method when a mapping cstruct
190 doesn't have a corresponding key instead of ``None``, as was the
191 practice previously.
192
193 - Types now must handle ``colander.null`` explicitly during
194 serialization.
195
196 - Updated and expanded documentation, particularly with respect to new
197 ``colander.null`` handling.
198
199 - The ``value`` argument`` to the ``serialize`` method of a SchemaNode
200 is now named ``appstruct``. It is no longer a required argument; it
201 defaults to ``colander.null`` now.
202
203 The ``value`` argument to the ``deserialize`` method of a SchemaNode
204 is now named ``cstruct``. It is no longer a required argument; it
205 defaults to ``colander.null`` now.
206
207 - The ``value`` argument to the ``serialize`` method of each built-in
208 type is now named ``appstruct``, and is now required: it is no
209 longer a keyword argument that has a default.
210
211 The ``value`` argument to the ``deserialize`` method of each
212 built-in type is now named ``cstruct``, and is now required: it is
213 no longer a keyword argument that has a default.
eb67c21 @mcdonc Work towards fixing defaults issue brought up by Chris Shenton
mcdonc authored
214
0367d5d @mcdonc Prep for 0.6.2.
mcdonc authored
215 0.6.2 (2010-05-08)
216 ------------------
4eefbb5 @mcdonc - The default ``encoding`` parameter value to the ``colander.String``
mcdonc authored
217
218 - The default ``encoding`` parameter value to the ``colander.String``
219 type is still ``None``, however its meaning has changed. An
220 encoding of ``None`` now means that no special encoding and decoding
221 of Unicode values is done by the String type. This differs from the
222 previous behavior, where ``None`` implied that the encoding was
223 ``utf-8``. Pass the encoding as ``utf-8`` specifically to get the
cc9f8c4 @mcdonc More tweaks in support of Deform.
mcdonc authored
224 older behavior back. This is in support of Deform.
225
226 - The default ``err_template`` value attached to the ``colander.Date``
206cc49 @mcdonc prep for 0.7.0
mcdonc authored
227 and ``colander.Datetime`` types was changed. It is now simply
cc9f8c4 @mcdonc More tweaks in support of Deform.
mcdonc authored
228 ``Invalid date`` instead of ``_('${val} cannot be parsed as an
229 iso8601 date: ${err}')``. This is in support of Deform.
4eefbb5 @mcdonc - The default ``encoding`` parameter value to the ``colander.String``
mcdonc authored
230
34b3748 @mcdonc Make tests pass again.
mcdonc authored
231 - Fix bug in ``colander.Boolean`` that attempted to call ``.lower`` on
232 a bool value when a default value was found for the schema node.
233
f61417d @mcdonc Prep for 0.6.1.
mcdonc authored
234 0.6.1 (2010-05-04)
235 ------------------
44adcc5 @mcdonc - Add a Decimal type (decimal floating point).
mcdonc authored
236
f61417d @mcdonc Prep for 0.6.1.
mcdonc authored
237 - Add a Decimal type (number type which uses ``decimal.Decimal`` as a
238 deserialization target).
44adcc5 @mcdonc - Add a Decimal type (decimal floating point).
mcdonc authored
239
d3bb804 @mcdonc - Add minimal documentation about the composition of a
mcdonc authored
240 0.6.0 (2010-05-02)
241 ------------------
257b3b7 @mcdonc
mcdonc authored
242
605f148 @mcdonc - (Hopefully) fix intermittent datetime-granularity-related test
mcdonc authored
243 - (Hopefully) fix intermittent datetime-granularity-related test
244 failures.
245
257b3b7 @mcdonc
mcdonc authored
246 - Internationalized error messages. This required some changes to
247 error message formatting, which may impact you if you were feeding
248 colander an error message template.
249
57cdb85 @mcdonc tweak
mcdonc authored
250 - New project dependency: ``translationstring`` package for
251 internationalization.
d3bb804 @mcdonc - Add minimal documentation about the composition of a
mcdonc authored
252
7ac04ee @mcdonc - New argument to ``colander.String`` constructor: ``allow_empty``.
mcdonc authored
253 - New argument to ``colander.String`` constructor: ``allow_empty``.
254 This is a boolean representing whether an empty string is a valid
255 value during deserialization, defaulting to ``False``.
256
d3bb804 @mcdonc - Add minimal documentation about the composition of a
mcdonc authored
257 - Add minimal documentation about the composition of a
258 colander.Invalid exception to the narrative docs.
259
260 - Add (existing, but previously non-API) colander.Invalid attributes
261 to its interface within the API documentation.
262
54aadac @mcdonc Prep for 0.5.2.
mcdonc authored
263 0.5.2 (2010-04-09)
264 ------------------
782d899 @mcdonc - Fix bug in serialization of non-Unicode values in the ``String`` cl…
mcdonc authored
265
40432fb @tseaver Typo.
tseaver authored
266 - Add Email and Regex validators (courtesy Steve Howe).
68d4926 @mcdonc - Add Email and Regex validators.
mcdonc authored
267
cb8b9d0 @mcdonc - Raise a ``colander.Invalid`` error if a ``colander.SequenceSchema``
mcdonc authored
268 - Raise a ``colander.Invalid`` error if a ``colander.SequenceSchema``
269 is created with more than one member.
270
d4c62f4 @mcdonc - Add ``Function`` validator.
mcdonc authored
271 - Add ``Function`` validator.
272
782d899 @mcdonc - Fix bug in serialization of non-Unicode values in the ``String`` cl…
mcdonc authored
273 - Fix bug in serialization of non-Unicode values in the ``String`` class.
274
62f6252 @mcdonc - Get rid of ``pserialize`` in favor of making ``serialize`` always
mcdonc authored
275 - Get rid of ``pserialize`` in favor of making ``serialize`` always
276 partially serialize.
277
278 - Get rid of ``pdeserialize``: it existed only for symmetry. We'll
279 add something like it back later if we need it.
280
2686ec7 @mcdonc Prep for 0.5.1.
mcdonc authored
281 0.5.1 (2010-04-02)
282 ------------------
6b8c500 @mcdonc - The constructor arguments to a the ``colander.Schema`` class are now
mcdonc authored
283
284 - The constructor arguments to a the ``colander.Schema`` class are now
285 sent to the constructed SchemaNode rather than to the type it represents.
286
6653b21 @mcdonc - Allow ``colander.Date`` and ``colander.DateTime`` invalid error
mcdonc authored
287 - Allow ``colander.Date`` and ``colander.DateTime`` invalid error
288 messages to be customized.
289
507ac4b @mcdonc - Add a ``pos`` argument to the ``colander.Invalid.add`` method.
mcdonc authored
290 - Add a ``pos`` argument to the ``colander.Invalid.add`` method.
291
292 - Add a ``__setitem__`` method to the ``colander.Invalid`` class.
293
e82bc8d @mcdonc Fix bug where pserialize was not serializing default properly.
mcdonc authored
294 - The ``colander.Mapping`` constructor keyword argument
295 ``unknown_keys`` has been renamed to ``unknown``.
b97ef0f @mcdonc - New interface methods required by types and schema nodes:
mcdonc authored
296
9275184 @mcdonc - Allow ``colander.Mapping`` type to accept a new constructor
mcdonc authored
297 - Allow ``colander.Mapping`` type to accept a new constructor
b97ef0f @mcdonc - New interface methods required by types and schema nodes:
mcdonc authored
298 argument: ``partial``.
9275184 @mcdonc - Allow ``colander.Mapping`` type to accept a new constructor
mcdonc authored
299
b97ef0f @mcdonc - New interface methods required by types and schema nodes:
mcdonc authored
300 - New interface methods required by types and schema nodes:
301 ``pserialize`` and ``pdeserialize``. These partially serialize or
302 partially deserialize a value (the definition of "partial" is up to
303 the type).
9275184 @mcdonc - Allow ``colander.Mapping`` type to accept a new constructor
mcdonc authored
304
036a108 @mcdonc Prep for 0.5.
mcdonc authored
305 0.5 (2010-03-31)
306 ----------------
307
308 - 0.4 was mispackaged (CHANGES.txt missing); no code changes from 0.4
309 however.
310
2f8c3e2 @mcdonc Prep for 0.4.
mcdonc authored
311 0.4 (2010-03-30)
312 ----------------
27b12a1 @mcdonc - Add ``colander.DateTime`` and ``colander.Date`` data types.
mcdonc authored
313
314 - Add ``colander.DateTime`` and ``colander.Date`` data types.
315
316 - Depend on the ``iso8601`` package for date support.
317
1754051 @mcdonc Prep for 0.3.
mcdonc authored
318 0.3 (2010-03-29)
319 ----------------
de70340 @mcdonc - Add ``colander.Length`` validator class.
mcdonc authored
320
cf3f90a @mcdonc - Subnodes of a schema node are now kept in the ``children`` attribute
mcdonc authored
321 - Subnodes of a schema node are now kept in the ``children`` attribute
322 rather than the ``nodes`` attribute.
323
a9d94df @mcdonc - Add an ``sdefault`` property to ``colander.SchemaNode`` objects.
mcdonc authored
324 - Add an ``sdefault`` property to ``colander.SchemaNode`` objects.
325
c326bb5 @mcdonc - Add a ``clone`` method to ``colander.SchemaNode`` objects.
mcdonc authored
326 - Add a ``clone`` method to ``colander.SchemaNode`` objects.
327
a2a8b5a @mcdonc - Add a ``__str__`` method to the ``colander.Invalid`` exception that
mcdonc authored
328 - Add a ``__str__`` method to the ``colander.Invalid`` exception that
329 prints an error summary.
330
822cbd1 @mcdonc - Various error message improvements.
mcdonc authored
331 - Various error message improvements.
332
de70340 @mcdonc - Add ``colander.Length`` validator class.
mcdonc authored
333 - Add ``colander.Length`` validator class.
334
380a88a @mcdonc Prep for 0.2
mcdonc authored
335 0.2 (2010-03-23)
336 ----------------
337
338 - Make nodetype overrideable.
339
340 - Add __getitem__ to SchemaNode.
341
342 - Fix OneOf message.
343
344 - Capitalize node titles.
345
346 - Deal with empty strings in String, Boolean, and Float types.
347
348 - Introduce description; make title the same as name.
349
350 - Remove copy method from schemanode.
351
352 - Allow schema nodes to have titles.
353
354 - The term "structure" is too overloaded to use for schema purposes:
355 structure -> schema node.
356
357 - Make Sequence more like Tuple and Mapping (it uses a substructure
358 rather than a structure parameter to denote its type).
359
360 - Add __repr__ and copy methods to structure.
361
362 - Add accept_scalar flag to Sequence.
363
364
aecc474 @mcdonc Prep for 0.1.
mcdonc authored
365 0.1 (2010-03-14)
35fb6f5 @mcdonc Add partial work towards schema / validation / serialization / deseri…
mcdonc authored
366 ----------------
367
368 - Initial release.
Something went wrong with that request. Please try again.