Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

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