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