2005-08-11 Atsushi Enomoto <atsushi@ximian.com>
[mono.git] / mcs / class / corlib / System.Runtime.Serialization.Formatters.Binary / ChangeLog
1 2005-05-26  Ben Maurer  <bmaurer@ximian.com>
2
3         * CodeGenerator.cs: Move module creation to cctor to kill double
4         checked locking and typeof locking.
5
6 2005-05-17  Lluis Sanchez Gual  <lluis@ximian.com>
7
8         * CodeGenerator.cs: Don't generate debug info here.
9
10 2005-05-09  Lluis Sanchez Gual  <lluis@ximian.com>
11
12         * ObjectWriter.cs:
13         * CodeGenerator.cs: No need to add the class for inherited fields,
14         since FieldInfo objects returned by the GetSerializableMembers
15         method will already include the class name if needed.
16
17 2005-03-23  Lluis Sanchez Gual  <lluis@ximian.com>
18
19         * BinaryCommon.cs: Added helper method for swapping bytes.
20         * ObjectReader.cs:
21         * ObjectWriter.cs: Implemented serialization of arrays of primitive
22         types using Buffer.BlockCopy to create byffers of data that is written/
23         read in a single call. It's much faster now.
24
25 2005-03-01  Lluis Sanchez Gual  <lluis@ximian.com>
26
27         * BinaryCommon.cs: Found the meaning of two unknown binary elements.
28         * CodeGenerator.cs: Derive generated classes from ClrTypeMetadata
29         instead of TypeMetadata. Added writeTypes parameter to WriteTypeData().
30         * ObjectWriter.cs: Use type and assembly names as keys for the type and
31         assembly caches. This is needed since ISerializable types can provide
32         fake type names (which are mapped to real types by a binder on
33         deserialization).
34         Implemented support for BinaryFormatter.TypeFormat.
35         * BinaryFormatter.cs, MessageFormatter.cs: Implemented support for
36         TypeFormat property.
37         * ObjectReader.cs: Added support for objects serialized without
38         member type information. This fixes bug #73114.
39         If a binder return null, use the default way of loading the type.
40
41 2005-02-25  Lluis Sanchez Gual  <lluis@ximian.com>
42
43         * ObjectReader.cs: In ReadArrayOfPrimitiveType, added a specific
44         read loop for each type. It's much faster and avoids value boxings.
45
46 2005-01-10  Lluis Sanchez Gual  <lluis@ximian.com>
47
48         * BinaryCommon.cs: IntPtr is not a primitive type in the serialization
49         world. This fixes bug #70757.
50
51 2004-12-15  Lluis Sanchez Gual  <lluis@ximian.com>
52
53         * ObjectReader.cs: Use GetField instead of GetMembers. Properties can't
54         be serialized, so it makes no sense to use GetMembers.
55
56 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
57
58         * CodeGenerator.cs: Call new DefineInternalDynamicAssembly method to prevent a race
59         condition in the setting of the CorlibInternal flag.
60
61 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
62
63         * CodeGenerator.cs: Mark the created assembly builder as internal.
64
65 2004-11-29  Lluis Sanchez Gual  <lluis@ximian.com>
66
67         * CodeGenerator.cs: Addded EnumToUnderlying method to get the underlying
68         type of an enum. This fixes bug #69753.
69
70 2004-07-02  Lluis Sanchez Gual  <lluis@ximian.com>
71
72         * BinaryCommon.cs: Added CheckSerializable method.
73         * ObjectWriter.cs: Check for type serializability even for members with
74           null values.
75         
76 2004-05-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
77
78         * ObjectWriter.cs: reduce contention in GetObjectData.
79
80 2004-05-14  Vladimir Vukicevic  <vladimir@pobox.com>
81
82         * binary_serialization_format.htm: renamed filename from having
83           spaces to _'s (checked with lluis)
84
85 2004-05-13  Lluis Sanchez Gual  <lluis@ximian.com>
86
87         * ObjectWriter.cs: Fixed and Simplified WriteGenericArray and 
88           WriteSingleDimensionArrayElements. This also fixes bug #58345.
89
90 2004-05-03  Lluis Sanchez Gual  <lluis@ximian.com>
91
92         * MessageFormatter.cs: In the all-are-primitive case, serialize Args, 
93           not OutArgs.
94
95 2004-04-28  Lluis Sanchez Gual <lluis@ximian.com>
96
97         * MessageFormatter.cs: Serialize Args, not OutArgs, like in MS.NET.
98
99 2004-04-26  Lluis Sanchez Gual <lluis@ximian.com>
100
101         * ObjectReader.cs, ObjectWriter.cs: FIXME cleaning.
102
103 2004-04-20  Lluis Sanchez Gual <lluis@ximian.com>
104
105         * CodeGenerator.cs, ObjectReader.cs, ObjectWriter.cs: Serialize decimals
106           as strings, like in MS.NET. This fixes bug #57186.
107
108 2004-02-23  Lluis Sanchez Gual <lluis@ximian.com>
109
110         * BinaryCommon.cs: Added UseReflectionSerialization property.
111         * CodeGenerator.cs, ObjectWriter.cs: When serializing the name of an 
112           inherited field, prefix the name with the class name. This fixes #54439.
113           Moved check for reflection serialization variable to BinaryCommon.
114         
115 2004-02-17  Lluis Sanchez Gual <lluis@ximian.com>
116
117         * ObjectWriter.cs: Factorized some serialization code in new classes, so it
118           is now possible to use fast IL generated classes that use direct access
119           to class fields instead of using reflection.
120         * CodeGenerator.cs: New file. Has several methods used by ObjectWriter to 
121           generate serialization code.
122
123 2004-02-05  Lluis Sanchez Gual <lluis@ximian.com>
124
125         * ObjectWriter.cs: Get the assembly of a member from the member's type, not
126           from the type of the value, because that is the type written in the
127           metadata section of the object.
128
129 2003-12-23  Lluis Sanchez Gual <lluis@ximian.com>
130
131         * ObjectReader.cs: Field names can include the type name if the field
132           belongs to a base type. Take this into account.
133
134 2003-11-26  Lluis Sanchez Gual <lluis@ximian.com>
135
136         * BinaryFormatter.cs: Added missing methods.
137
138 2003-11-20  Lluis Sanchez Gual <lluis@ximian.com>
139
140         * BinaryFormatter.cs, MessageFormatter.cs, ObjectReader.cs: Added support
141           for TypeFilter property.
142
143 2003-11-16  Lluis Sanchez Gual <lluis@ximian.com>
144
145         * BinaryFormatter.cs, MessageFormatter.cs, ObjectWriter.cs: 
146           Implemented support for AssemblyFormat property.
147
148 2003-11-12  Lluis Sanchez Gual <lluis@ximian.com>
149
150         * ObjectReader.cs, ObjectWriter.cs: Changed some GetType calls to "is" checks.
151
152 2003-07-28  Duncan Mak  <duncan@ximian.com>
153
154         * BinaryFormatter.cs (WriteBinaryHeader): changed from public to
155         private.
156
157 2003-07-25  Lluis Sanchez Gual <lluis@ximian.com>
158
159     * MessageFormatter.cs: WriteMethodCall(): It must write all parameters,
160       including ref and out.
161
162 2003-07-24  Lluis Sanchez Gual <lluis@ximian.com>
163
164     * ObjectReader.cs, ObjectWriter.cs, BinaryCommon.cs: Fixed bug #45970.
165
166 2003-07-17  Lluis Sanchez Gual <lluis@ximian.com>
167
168     * ObjectReader.cs: Keep MemberInfo members in type's metadata object, so it is
169       not necessary to query them for every object.
170     * ObjectWriter.cs: If the value being serialized is a value type (not boxed)
171       then there is no need to register it in the ObjectIDGenerator, because it is
172       not possible to have two references to the same value type object.
173
174 2003-05-13  Lluis Sanchez Gual <lluis@ideary.com>
175
176     * ObjectReader.cs: Changed signature of ReadObjectGraph, so now it returns the
177       deserialized object and the headers.
178     * MessageFormatter.cs: The result of the call to the HeaderHandler delegate is
179       now interpreted as the uri of the target object. This seems to be MS.NET
180       behavior.
181         * BinaryFormatter.cs: Deserialize now calls the HeaderHandler delegate,
182           if provided.
183
184 2003-02-25  Lluis Sanchez Gual <lluis@ideary.com>
185
186         * BinaryFormatter.cs: Implemented support for binders.
187     * MessageFormatter.cs: Implemented support for binders.
188     * ObjectReader.cs: Implemented support for binders.
189
190 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
191
192     * MessageFormatter.cs: Fixed bug in serialization of arguments.
193     * ObjectReader.cs: Fixed bug causing array of structs to fail.
194
195 2003-02-11  Patrik Torstensson
196
197     * ObjectReader.cs: Fixed root object bug causing object reader to return root object 
198           before fixup. Closes bug #37842.
199
200 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
201
202     * MessageFormatter.cs: Corrected some bugs that affected serialization of exceptions
203
204 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
205
206     * MessageFormatter.cs: Implemented serialization of message properties.
207
208 2003-01-24  Martin Baulig  <martin@ximian.com>
209
210         * ObjectReader.cs (ReadNextObject): Call
211         RaiseDeserializationEvent() on the ObjectManager when we're done
212         reading the whole graph.
213
214 2003-01-24  Lluis Sanchez Gual <lluis@ideary.com>
215
216     * ObjectWriter.cs, ObjectReader.cs: Added suport for headers. 
217       Corrected encoding of primitive types. Corrected a bug about zero-length arrays. 
218     * MessageFormatter.cs: Added. Implements serialization of messages.
219     * BinaryFormatter.cs: Added serialization of messages.
220     * BinaryCommon.cs: Added enum of codes of primitive types.
221
222 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
223
224         * ObjectWriter.cs: make the exception message more useful.
225
226 2003-01-16  Lluis Sanchez Gual <lluis@ideary.com>
227
228     * BinaryFormatter.cs: implemented Serialize and Deserialize methods.
229     * ObjectReader.cs: added.
230     * ObjectWriter.cs: added.
231     * BinaryCommon.cs. added.
232
233 2002-08-22  Nick Drochak  <ndrochak@gol.com>
234
235         * BinaryArrayTypeEnum.cs: Removed Non-existent enum (must have been
236         from beta days)
237
238 2002-08-18  Dick Porter  <dick@ximian.com>
239
240         * BinaryFormatter.cs: Stubbed out