2009-06-12 Bill Holmes <billholmes54@gmail.com>
[mono.git] / mcs / class / System.Runtime.Serialization / System.Runtime.Serialization / ChangeLog
1 2009-06-01  Atsushi Enomoto  <atsushi@ximian.com>
2
3         * XmlFormatterSerializer.cs, KnownTypeCollection.cs : collection
4           types does not emit xsi:type when the actual type is different
5           from the nominal serilaization type. To achieve this, introduced
6           the idea of the actual serialization type.
7
8 2009-05-28  Atsushi Enomoto  <atsushi@ximian.com>
9
10         * SerializationMap.cs : for default / shared type map, members are
11           serialized in alphabetical order.
12
13 2009-05-28  Atsushi Enomoto  <atsushi@ximian.com>
14
15         * SerializationMap.cs : generic interface search has to be more
16           complicated. Give kind error message on setting deserialized value.
17
18 2009-05-28  Atsushi Enomoto  <atsushi@ximian.com>
19
20         * SerializationMap.cs: collection interface cannot be instantiated,
21           so create List<T> (generic) or ArrayList (non-generic) instead.
22
23 2009-05-25  Atsushi Enomoto  <atsushi@ximian.com>
24
25         * SerializationMap.cs, XmlFormatterSerializer.cs :
26           collection types should not output xsi:type e.g. IList<T> should
27           not exposed xsi:type as xsi:type=List`1.
28
29 2009-05-18  Atsushi Enomoto  <atsushi@ximian.com>
30
31         * SerializationMap.cs, XmlFormatterDeserializer.cs,
32           KnownTypeCollection.cs : Support for array of some primitive types
33           in the deserializer was missing, which resulted in peer resolver
34           RegisterInfo deserialization failure.
35
36 2009-05-18  Atsushi Enomoto  <atsushi@ximian.com>
37
38         * XmlFormatterDeserializer.cs : remove type lookup optimization
39           (since .NET 3.5 introduced system types with DC) and fix
40           serialization of system types (ISerializable types were not
41           resolved in previous code).
42
43 2009-05-18  Atsushi Enomoto  <atsushi@ximian.com>
44
45         * SerializationMap.cs : it was only about 2.1. Fix build.
46
47 2009-05-18  Atsushi Enomoto  <atsushi@ximian.com>
48
49         * SerializationMap.cs : It is not possible to get schema without
50           IXmlSerializable instance.
51
52 2009-05-15  Atsushi Enomoto  <atsushi@ximian.com>
53
54         * DataContractSerializer.cs : write dictionary string directly for
55           root name/ns (root only, so far).
56
57 2009-05-14  Atsushi Enomoto  <atsushi@ximian.com>
58
59         * SerializationMap.cs: interface collection failed to serialize as
60           it was calling inappropriate GetInterfaceMap().
61
62 2009-04-01  Atsushi Enomoto  <atsushi@ximian.com>
63
64         * XmlFormatterDeserializer.cs : more hack to handle empty
65           element nicely.
66
67 2009-03-24  Atsushi Enomoto  <atsushi@ximian.com>
68
69         * SerializationMap.cs, XmlFormatterDeserializer.cs:
70           empty collection deserialization resulted in extra
71           consumption of the next xml node.
72
73 2009-03-19  Atsushi Enomoto  <atsushi@ximian.com>
74
75         * KnownTypeCollection.cs, XmlFormatterDeserializer.cs :
76           to infer type from xml qname, consider DataContractAttribute
77           names.
78
79 2009-03-12  Atsushi Enomoto  <atsushi@ximian.com>
80
81         * SerializationMap.cs : make generic type parsing sloppy.
82           because we don't know some cryptic hash algorithm:
83           http://jeffbarnes.net/portal/blogs/jeff_barnes/archive/2007/05/10/wcf-serialization-and-generics.aspx
84
85 2009-03-12  Atsushi Enomoto  <atsushi@ximian.com>
86
87         * SerializationMap.cs, KnownTypeCollection.cs :
88           support CollectionDataContract-based dictionary too.
89
90 2009-03-12  Atsushi Enomoto  <atsushi@ximian.com>
91
92         * SerializationMap.cs, KnownTypeCollection.cs :
93           added support for dictionary serialization (not for
94           CollectionDataContract-attributed dictionary yet).
95
96 2009-03-12  Atsushi Enomoto  <atsushi@ximian.com>
97
98         * SerializationMap.cs : cosmetic !NET_2_1 fix (no effect).
99         * KnownTypeCollection.cs : use ICollection<> and IList instead of
100           IEnumerable. This causes confusion for dictionary.
101
102 2009-03-11  Atsushi Enomoto  <atsushi@ximian.com>
103
104         * XmlFormatterSerializer.cs, XmlObjectSerializer.cs,
105           XmlFormatterDeserializer.cs, KnownTypeCollection.cs :
106           add more xsi:type to cover collection items.
107
108 2009-03-11  Atsushi Enomoto  <atsushi@ximian.com>
109
110         * KnownTypeCollection.cs : fix generic argument names in xml.
111           They should use xmlized names instead of raw type name.
112         * XmlFormatterDeserializer.cs : remove extra Console.WriteLine.
113
114 2009-03-11  Atsushi Enomoto  <atsushi@ximian.com>
115
116         * SerializationMap.cs : eliminate whitespace misuses.
117
118 2009-03-11  Atsushi Enomoto  <atsushi@ximian.com>
119
120         * SerializationMap.cs : actually it could just be ICollection<T>.
121
122 2009-03-11  Atsushi Enomoto  <atsushi@ximian.com>
123
124         * SerializationMap.cs : implemented generic IList deserialization.
125
126 2009-03-10  Atsushi Enomoto  <atsushi@ximian.com>
127
128         * KnownTypeCollection.cs : fix for generic serialization.
129
130 2009-02-27  Atsushi Enomoto  <atsushi@ximian.com>
131
132         * SerializationMap.cs : look for unordered members first, in
133           different iteration. Got SL OpenStreetMap working.
134
135 2009-02-13  Atsushi Enomoto  <atsushi@ximian.com>
136
137         * SerializationMap.cs : remove use of non-2.1 CreateInstance().
138         * XmlFormatterDeserializer.cs : allow empty element.
139
140 2009-02-13  Atsushi Enomoto  <atsushi@ximian.com>
141
142         * SerializationMap.cs, DataContractSerializer.cs,
143           KnownTypeCollection.cs : now .NET 3.5/SP1 supports non-contract
144           type serialization.
145
146 2009-02-13  Atsushi Enomoto  <atsushi@ximian.com>
147
148         * SerializationMap.cs, KnownTypeCollection.cs : couple of refactoring
149           to simplify code base and handle CollectionDataContract namespace.
150
151 2009-02-13  Atsushi Enomoto  <atsushi@ximian.com>
152
153         * SerializationMap.cs : oops, remove debug lines.
154
155 2009-02-13  Atsushi Enomoto  <atsushi@ximian.com>
156
157         * DataContractSerializer.cs : remove extra writexmlns.
158         * SerializationMap.cs : allow DataMember of collection contract type
159           as read-only.
160         * KnownTypeCollection.cs : it was not iterating interfaces to find
161           IEnumerable<T> correctly.
162
163 2009-02-03  Atsushi Enomoto  <atsushi@ximian.com>
164
165         * SerializationMap.cs : a bit more detailed error message.
166
167 2009-01-23  Atsushi Enomoto  <atsushi@ximian.com>
168
169         * KnownTypeCollection.cs : similar fix to the previous one,
170           on uint16.
171
172 2009-01-22  Alan McGovern  <amcgovern@novell.com>
173
174         * KnownTypeCollection.cs : The byte overload doesn't exist in
175         Silverlight, so cast the byte to an int instead.
176
177 2008-11-23  Atsushi Enomoto  <atsushi@ximian.com>
178
179         * DataContractAttribute.cs : remove MonoTODO.
180
181 2008-11-23  Atsushi Enomoto  <atsushi@ximian.com>
182
183         * SerializationMap.cs, XmlFormatterSerializer.cs,
184           XmlFormatterDeserializer.cs, DataContractAttribute.cs,
185           CollectionDataContractAttribute.cs, KnownTypeCollection.cs :
186           support IsReference (new in 3.5 SP1).
187
188 2008-11-23  Atsushi Enomoto  <atsushi@ximian.com>
189
190         * DataContractSerializer.cs : remove extra type validity check.
191
192 2008-11-23  Atsushi Enomoto  <atsushi@ximian.com>
193
194         * XmlFormatterSerializer.cs : one object could not be serialized
195           twice in non-circular situation.
196
197 2008-09-09  Atsushi Enomoto  <atsushi@ximian.com>
198                         Jb Evain  <jbevain@novell.com>
199
200         * IDataContractSurrogater.cs, SerializationMap.cs:
201         add support to build on the net_2_1 profile.
202
203 2008-06-19  Noam Lampert <noaml@mainsoft.com>
204         
205         * KnownTypeCollection.cs: Support anyUri type
206
207 2008-06-05  Noam Lampert <noaml@mainsoft.com>
208         
209         * KnownTypeCollection.cs: Support XmlRoot attribute
210
211 2008-06-01  Noam Lampert <noaml@mainsoft.com>
212         
213         * KnownTypeCollection.cs: Implement byte[] serialization.
214
215 2008-05-19  Noam Lampert <noaml@mainsoft.com>
216         
217         * KnownTypeCollection.cs: Implement char serialization.
218            
219 2008-05-19  Noam Lampert <noaml@mainsoft.com>
220         
221         * KnownTypeCollection.cs, XmlFormatterDeserializer.cs: Imporve support for 
222            Nullable types in contracts.
223            
224 2008-04-29  Eyal Alaluf <eyala@mainsoft.com>
225
226         * KnownTypeCollection.cs: Fixed a typo in long conversion.
227
228 2008-04-17  Eyal Alaluf <eyala@mainsoft.com>
229
230         * SerializationMap.cs: Implement partially collections deserialization.
231           Supports arrays and types derived from IList. Needs support for calling
232           'Add' method and for dictionaries.
233         * SerializationMap.cs XmlFormatterSerializer.cs DataContractSerializer.cs:
234           Serialize namespaces for base members according to base class namespace.
235
236 2008-04-14  Eyal Alaluf <eyala@mainsoft.com>
237
238         * SerializationMap.cs: Use FormatterServices.GetUninitializedObject instead
239           of Activator.CreateInstance.
240
241 2008-04-10  Eyal Alaluf <eyala@mainsoft.com>
242
243         * DataContractSerializer.cs: Write and register the current type namespace
244           within the writer.
245         * XmlObjectSerializer.cs: ReadObject verifies by default.
246         * XmlFormatterSerializer.cs: Write and register XML namespaces.
247         * XmlFormatterDeserializer.cs: Refactored so Deserialize instance method can
248           be used from SerializationMap deserialization logic recursively.
249         * SerializationMap.cs: Reimplemented main deserialization logic. Now it
250           handles better missing entries, consumes the XmlReader until the end
251           element and handles XML namespaces correctly.
252           Enabled checks for required fields.
253
254 2008-02-27  Eyal Alaluf <eyala@mainsoft.com>
255
256         * SerializationMap.cs: Fix namespace logic at least in simple case where
257           there are several unknown elements before the current element.
258         * ContractNamespaceAttribute.cs: The ClrNamespace is not set by the ctor.
259         * XmlObjectSerializer.cs: Dispose the XmlWriter created in WriteObject
260           to a stream.
261         * DataMemberAttribute.cs: Added the EmitDefaultValue property.
262         * XsdDataContractImporter.cs: Handle null arguments in Import methods.
263         * KnownTypeCollection.cs: Use XmlConvert.ToDateTime with roundtrip style.
264
265 2007-12-05  Atsushi Enomoto  <atsushi@ximian.com>
266
267         * XmlObjectSerializer.cs : some methods became virtual (in Redbits).
268         * DataContractSerializer.cs : added some overriden methods in Redbits.
269           knownTypes can be null in .ctor().
270
271 2007-08-17  Atsushi Enomoto  <atsushi@ximian.com>
272
273         * SerializationMap.cs : for void it cannot be instantiated. Return
274           null instead.
275
276 2007-08-17  Atsushi Enomoto  <atsushi@ximian.com>
277
278         * XmlFormatterDeserializer.cs DataContractSerializer.cs :
279           uhoh, the semantic of bool parameter in ReadObject() has
280           changed in the RTM. Implemented it as verifyObjectName.
281
282 2007-03-27  Atsushi Enomoto  <atsushi@ximian.com>
283
284         * SerializationMap.cs
285           XmlFormatterSerializer.cs
286           DataContractSerializer.cs :
287           now it needs some mess to handle serialization namespaces.
288           Collection items are serialized in its own xml namespace. Others,
289           (including the collection member itself) is serialized in its
290           parent xml namespace. Collection items are serialized with its
291           wrapping element.
292         * XsdDataContractImporter.cs : use constant.
293
294 2007-03-26  Atsushi Enomoto  <atsushi@ximian.com>
295
296         * KnownTypeCollection.cs : added support for Guid serialization.
297
298 2006-10-20  Atsushi Enomoto  <atsushi@ximian.com>
299
300         * KnownTypeCollection.cs : (RemoveItem) don't remove items while 
301           iterating.
302
303 2006-09-06  Ankit Jain  <jankit@novell.com>
304
305         * SerializationMap.cs (SerializationMap.GetSequence): Set minOccurs = 0
306
307 2006-09-05  Ankit Jain  <jankit@novell.com>
308
309         * XsdDataContractExporter.cs (XsdDataContractExporter.MSTypesSchema):
310         Load resource mstypes.schema
311         (XsdDataContractExporter.Schemas): Add MSTypesSchema by default.
312
313 2006-09-05  Ankit Jain  <jankit@novell.com>
314
315         * SerializationMap.cs (SerializationMap.AddImport): New.
316         (SerializationMap.GetSequence): Use AddImport.
317
318 2006-09-04  Ankit Jain  <jankit@novell.com>
319
320         * SerializationMap.cs (SerializationMap.GetSchemaSet): Remove.
321         (SerializationMap.GetSchemaType):
322         (SerializationMap.GetSequence):
323         (SerializationMap.GetSchema): Change XmlSchemas param to XmlSchemaSet.
324         Call XmlSchemaSet.Reprocess whenever an existing schema is modified.
325         * XsdDataContractExporter.cs (XsdDataContractExporter.Export): Update to
326         changes in SerializationMap.
327         (XsdDataContractExporter.CanExport): Implement.
328         (XsdDataContractExporter.GetSchemaType): Implement.
329         (XsdDataContractExporter.GetSchemaTypeName): Implement.
330         (XsdDataContractExporter.KnownTypes): New.
331         (XsdDataContractExporter.GeneratedTypes): New.
332
333 2006-09-01  Ankit Jain  <jankit@novell.com>
334
335         * SerializationMap.cs (SerializationMap.GetSchemaSet): New.
336         (SerializationMap.IsPrimitive): New.
337         (SerializationMap.GetSchemaType): New.
338         (SerializationMap.GetSequence): New.
339         (SerializationMap.GetMembers): New.
340         (SerializationMap.GetSchemaElement): New.
341         (SerializationMap.GetSchema): New.
342         (SerializationMap.GetQualifiedName): New.
343         New methods for exporting schema for the type.
344
345         (SharedContractMap.ctor): Move code for building Members list to ..
346         (SharedContractMap.GetMembers): .. here.
347
348         (CollectionTypeMap.Serialize): Mark 'override'.
349         (CollectionTypeMap.GetMembers): 'override' and throw
350         NotImplementedException.
351         (CollectionTypeMap.GetSchemaType): Implement.
352
353         (SharedTypeMap..ctor): Move code to ..
354         (SharedTypeMap.GetMembers): .. here.
355         (EnumMap.GetSchemaType): Implement.
356
357         * XsdDataContractExporter.cs (XsdDataContractExporter.Export):
358         Implement.
359         * KnownTypeCollection.cs (KnownTypeCollection.GetCollectionQName): Use
360         GetQName instead of GetXmlName. Set Namespace for collections of
361         primitive types to MSArraysNamespace
362
363 2006-08-31  Ankit Jain  <jankit@novell.com>
364
365         * SerializationMap.cs (EnumMap): New. For de/serializing enums.
366         (EnumMemberInfo): New.
367         (SerializationMap.DeserializeContent): Made protected virtual from private.
368         * DataContractSerializer.cs (WriteStartObject):
369         Ensure that "i:type" is not emitted for enums.
370         * KnownTypeCollection.cs (GetPrimitiveTypeName): Don't treat enum as a
371         primitive type.
372         (GetQName): Likewise. Use GetEnumQName for enums.
373         (GetEnumQName): New.
374         (IsPrimitiveNotEnum): New.
375         (TryRegister): Add support for enums.
376         (RegisterEnum): New.
377
378 2006-08-14  Atsushi Enomoto  <atsushi@ximian.com>
379
380         * XmlFormatterSerializer.cs : (contd from my previous change)
381           ... and don't complain at WriteObject(). It is somehow required
382           in S.SM.D.WSTrustContract (soon to be committed).
383
384 2006-07-27  Ankit Jain  <jankit@novell.com>
385
386         * XsdDataContractImporter.cs (Compile): Remove, thanks to eno
387         XmlSchemaSet.Compile () works now.
388         Update to directly use XmlSchemaSet.Compile ()
389
390 2006-07-27  Ankit Jain  <jankit@novell.com>
391
392         * XsdDataContractImporter.cs (ImportInternal): New.
393         Update various overloads of Import to use this.
394         (ImportFromTypeMapping): New. Emits code for a DataContract from a
395         XmlTypeMapping. Code is duplicate of
396         ServiceContractGenerator.ExportDataContract .
397         (GetNamespace): New. Duplicate like above.
398         (Compile): New. Temporary hack, will XmlSchemaSet.Compile is not
399         working.
400
401 2006-07-18  Atsushi Enomoto  <atsushi@ximian.com>
402
403         * XmlFormatterSerializer.cs, KnownTypeCollection.cs :
404           don't raise an error at DataContractSerializer..ctor(). Raise
405           InvalidDataContractException on WriteObject().
406
407 2006-07-12  Ankit Jain  <jankit@novell.com>
408
409         * SerializationMap.cs (XmlSerializableMap): New. Map for classes which
410         implement IXmlSerializable interface.
411         * KnownTypeCollection.cs (KnownTypeCollection.GetQName): Add support for
412         types which implement IXmlSerializable interface. Change the order in
413         which DataContractAttribute/IXmlSerializable/SerializableAttribute get
414         selected.
415         (KnownTypeCollection.TryRegister): Change the order like above.
416         (KnownTypeCollection.RegisterIXmlSerializable): New.
417
418 2006-07-04  Atsushi Enomoto  <atsushi@ximian.com>
419
420         * XsdDataContractExporter.cs, XmlObjectSerializer.cs,
421           InvalidDataContractException.cs : some June CTP updates.
422
423 2006-07-04  Atsushi Enomoto  <atsushi@ximian.com>
424
425         * IDataContractSurrogate.cs, ExportOptions.cs,
426           DataContractSerializer.cs, KnownTypeCollection.cs :
427           June CTP updates.
428
429 2006-05-09  Atsushi Enomoto  <atsushi@ximian.com>
430
431         * DataContractSerializer.cs : null knownTypes argument is allowed.
432         * KnownTypeCollection.cs : Type.Namespace could be null.
433
434 2006-05-09  Atsushi Enomoto  <atsushi@ximian.com>
435
436         * KnownTypeCollection.cs : for nested classes, treat localName of
437           the QName as "Parent.Child", not "Child".
438           Don't encode name here (to pass ".").
439
440 2006-05-09  Atsushi Enomoto  <atsushi@ximian.com>
441
442         * DataContractSerializer.cs :
443           Added maxObjectsInGraph range check.
444           interface type has BaseType as null, so end base type check when
445           it is null (I don't think this check is required btw).
446
447 2006-04-05  Atsushi Enomoto  <atsushi@ximian.com>
448
449         * DataContractSerializer.cs : xmlns:xsi is not written when the
450           target type is string.
451
452 2006-03-22  Ankit Jain  <jankit@novell.com>
453
454         * SerializationMap.cs (CheckDataContractEqual): Remove.
455         (Deserialize): Allows expected type to be a derived one from actual
456         type.
457         (DeserializeInternal): Handle DataMember of type 'object'.
458         * XmlFormatterSerializer.cs (SerializeNonPrimitive): Serialize types not
459         already known.
460         * DataContractSerializer.cs (.ctor): Use KnownTypeCollection.GetQName
461         instead of doing it manually.
462         (PopulateTypes): Change return type from KnownTypeCollection to void.
463         Scan the base types to ensure that all have DataContract or Serializable
464         attributes.
465         Add all (including inherited) KnownTypeAttribute values to the
466         collection.
467
468 2006-03-18  Ankit Jain  <jankit@novell.com>
469
470         * SerializationMap.cs (SerializationMap.GetEmptyInstance): Rename to ..
471         (SerializationMap.GetInstance): .. this. Gets the instance or null if nil=true.
472         (SerializationMap.DeserializeInternal): New. Renamed from .. 
473         (SerializationMap.Deserialize): .. this. Check DataContract equivalence, and use new
474         DeserializeInternal for rest of the work.
475         (DeserializeContent): Cleanup and handle various "null" cases.
476         * XmlFormatterSerializer.cs (Write_i_type): New. Write i:type=".."
477         (SerializeNonPrimitive): Update to use Write_i_type.
478         * DataContractSerializer.cs (WriteStartObject): Add rootType to known_types.
479
480 2006-03-16  Ankit Jain  <jankit@novell.com>
481
482         * SerializationMap.cs (SerializationMap.Deserialize): Use NameTable.Get
483         before reader.LookupNamespace.
484         (DataMemberInfo.Compare): Use String.CompareOrdinal instead of
485         String.Compare.
486
487 2006-03-16  Ankit Jain  <jankit@novell.com>
488
489         * SerializationMap.cs (SerializationMap.GetEmptyInstance): New.
490         (SerializationMap.Deserialize): Refactor, handle primitive types and nils.
491         (SerializationMap.DeserializeContent): Handle nils and nested DataContracts.
492         (SharedContractMap.ctor): Include inherited properties and fields, in
493         the correct order.
494
495 2006-03-15  Ankit Jain  <jankit@novell.com>
496
497         * KnownTypeCollection.cs (IsPrimitiveType): New.
498         * SerializationMap.cs (Deserialize): Handle primitive types.
499
500 2006-03-15  Ankit Jain  <jankit@novell.com>
501
502         * DataContractSerializer.cs (WriteObjectContent): Handle null.
503         (WriteStartObject): Rewritten.
504         * KnownTypeCollection.cs (GetQName): New. Return QName for a given type.        
505         (GetContractQName):
506         (GetSerializableQName):
507         (GetCollectionQName): New.
508         (RegisterContract):
509         (RegisterSerializable):
510         (RegisterCollection): Update to use new Get* methods.
511         * SerializationMap.cs (CheckDataContractEqual): New.
512         (Deserialize): Split into this and ..
513         (DeserializeContent): .. this.
514         * XmlDictionaryWriter.cs (CreateTextWriter): Use UTF8Encoding.
515
516 2006-03-09  Atsushi Enomoto  <atsushi@ximian.com>
517
518         * DataContractSerializer.cs : xmlns output should be done at
519           WriteStartObject().
520
521 2006-03-08  Ankit Jain  <jankit@novell.com>
522
523         * DataContractSerializer.cs (.ctor): Use name & namespace specified (if any) 
524         with the DataContractAttribute for non-primitive types.
525         (DataContractSerializer.WriteStartObject): DataContractAttribute.Name
526         cannot be "".
527
528 2006-03-03  Atsushi Enomoto  <atsushi@ximian.com>
529
530         * DataContractSerializer.cs : Handle primitive type name rather than
531           raw type name in constructors that don't receive root QName.
532           In case the actual graph is not of root type, write xsi:type.
533
534 2006-03-02  Atsushi Enomoto  <atsushi@ximian.com>
535
536         * KnownTypeCollection.cs : default namespace contains common MS base
537           URI fragment.
538         * XmlObjectSerializer.cs : added internal common utility field.
539         * DataContractSerializer.cs : Fixed constructors to fill fields and
540           make it work.
541         * NetDataContractSerializer.cs : just leave it unimplemented until
542           we find how it works. It looks different from what
543           DataContractSerializer does.
544
545 2006-01-17  Atsushi Enomoto  <atsushi@ximian.com>
546
547         * XmlFormatter.cs : extra namespaces are not written in Dec.CTP.
548
549 2005-11-28  Atsushi Enomoto  <atsushi@ximian.com>
550
551         * KnownTypeCollection.cs : override.
552
553 2005-11-02  Atsushi Enomoto  <atsushi@ximian.com>
554
555         * SerializationMap.cs, XmlFormatterSerializer.cs, XmlFormatter.cs
556           XmlFormatterDeserializer.cs, KnownTypeCollection.cs :
557           several changes. Partial support for collection serialization.
558           SerializationMap now contains its own Deserialize()/Serialize()
559           methods.
560
561 2005-10-20  Atsushi Enomoto  <atsushi@ximian.com>
562
563         * XmlFormatterDeserializer.cs : new file.
564         * SerializationMap.cs, XmlFormatter.cs, KnownTypeCollection.cs :
565           several changes for pretty primitive Deserialize() implementation.
566
567 2005-10-07  Atsushi Enomoto  <atsushi@ximian.com>
568
569         Added hacky serialization feature. Actually it should be rewritten to
570         be based on IDataContractSurrogate.
571         * SerializationMap.cs, XmlFormatterSerializer.cs :
572           new files for Serialize() implementation.
573         * KnownTypeCollection.cs : use serialization maps to check contracts.
574         * XmlFormatter.cs : implemented hacky Serialize().
575         * DataMemberAttribute.cs : default Order is -1.
576         * DataContractAttribute.cs : added tiny comment.
577
578 2005-10-03  Atsushi Enomoto  <atsushi@ximian.com>
579
580         * XmlFormatter.cs : Added implementation switch between
581           BinaryFormatter and internal DataContractFormatter.
582         * XmlSerializableServices.cs : WriteNodes() impl.
583
584 2005-10-03  Atsushi Enomoto  <atsushi@ximian.com>
585
586         * XmlSerializableServices.cs : ReadNodes() impl.
587
588 2005-09-28  Atsushi Enomoto  <atsushi@ximian.com>
589
590         * KnownTypeAttribute.cs : fixed attribute usage.
591
592 2005-09-22  Atsushi Enomoto  <atsushi@ximian.com>
593
594         * IDataContractSurrogate.cs, ContractNamespaceAttribute.cs,
595           XsdDataContractExporter.cs, KnownTypeAttribute.cs,
596           SerializationMode.cs, XmlFormatter.cs, DataMemberAttribute.cs,
597           ImportOptions.cs, UnknownSerializationData.cs,
598           SerializationFactoryMethodAttribute.cs, XmlSerializableServices.cs,
599           DataContractAttribute.cs, ExportOptions.cs,
600           InvalidDataContractException.cs, IUnknownSerializationData.cs,
601           CollectionDataContractAttribute.cs, XsdDataContractImporter.cs,
602           KnownTypeCollection.cs :
603           #if NET_2_0. coding style was updated.
604
605 2005-09-22  Atsushi Enomoto  <atsushi@ximian.com>
606
607         * CollectionDataContractAttribute.cs
608           ContractNamespaceAttribute.cs
609           DataContractAttribute.cs
610           DataMemberAttribute.cs
611           ExportOptions.cs
612           IDataContractSurrogate.cs
613           InvalidDataContractException.cs
614           IUnknownSerializationData.cs
615           ImportOptions.cs
616           KnownTypeAttribute.cs
617           KnownTypeCollection.cs
618           SerializationFactoryMethodAttribute.cs
619           SerializationMode.cs
620           UnknownSerializationData.cs
621           XmlFormatter.cs
622           XmlSerializableServices.cs
623           XsdDataContractExporter.cs
624           XsdDataContractImporter.cs : new files.
625