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