merge r98600
[mono.git] / mcs / class / corlib / System.Resources / ChangeLog
1 2008-03-15  Gert Driesen  <drieseng@users.sourceforge.net>
2
3         * ResourceManager.cs: Default to RuntimeResourceSet for all ctors.
4         * ResourceSet.cs: Avoid duplicate argument checks. On 2.0 profile,
5         throw ObjectDisposedException when ResourceSet is disposed.
6         * RuntimeResourceSet.cs: On 2.0 profile, throw ObjectDisposedException
7         when ResourceSet is disposed.
8
9 2008-03-04  Sebastien Pouliot  <sebastien@ximian.com>
10
11         * ResourceManager.cs: Use RuntimeResourceSet, an internal type, just
12         like MS does (and tell us indirectly with a Type property).
13         * ResourceSet.cs: Fix a few problems found with new unit tests. Also
14         fix some exception parameters.
15         * RuntimeResourceSet.cs: New. Internal type used by ResourceManager.
16         ResouceSet cannot be used, as is, because it does not clone objects,
17         when possible, leading to problems when those objects are disposed.
18
19 2008-01-26  Gert Driesen  <drieseng@users.sourceforge.net>
20
21         * ResourceWriter.cs: On 2.0 profile, do not mistakenly identify an
22         enum as a predefined type. Fixes bug #325223.
23
24 2007-11-10  Gert Driesen  <drieseng@users.sourceforge.net>
25
26         * ResourceWriter.cs: On 2.0 profile, use case-insensitive SortedList.
27         Changed exception messages and params to match MS. Allow null values
28         in AddResource overloads. In Dispose (bool), also generate resources
29         (header) if no resources were added. Fixes bug #339074. When Generate
30         is done, reset resources to null to prevent further editing.  This
31         also avoids the need for a separate bool to indicate whether generate
32         was already invoked. Code formatting.
33
34 2007-10-27  Gert Driesen  <drieseng@users.sourceforge.net>
35
36         * ResourceManager.cs: Removed temporary workaround for bug #43567.
37         Reworked basename to only throw ArgumentException if resource with
38         name ending on ".resources" does not actually exist. Fixes bug
39         #336283. Do not throw exception in GetStream since this is already
40         done in InternalGetResourceSet. In InternalGetResourceSet, do not
41         throw MissingManifestResourceException when culture is null. Fixed
42         MissingManifestResourceException message to match MS. When using
43         file-based ResourceManager, then also throw an exception when file
44         does not exist for neutral culture.
45
46 2007-09-17  Gert Driesen  <drieseng@users.sourceforge.net>
47
48         * ResourceManager.cs: Move code for determining manifest resource
49         name into separate method. Only use satellite assemblies for
50         non-invariant cultures. For invariant culture, only load resources
51         from main assembly.
52
53 2007-09-17  Gert Driesen  <drieseng@users.sourceforge.net>
54
55         * ResourceManager.cs: BaseName(Field) should return only the name.
56         Added resourceSource field to store the actual type, which we need for
57         the namespace. Added CheckBaseName method to avoid code duplication.
58         Only check whether basename does not end in '.resources' on 1.0
59         profile. Fixed paramname of ArgumentNullExceptions to match MS.
60         Modified GetManifestResourceStreamNoCase to use resourceSource field
61         to construct manifest resource name. Modified GetStream to use
62         CurrentUICulture when culture is null. Fixed InternalGetResourceSet
63         to use invariant resources when culture is the neutral culture.
64         Code formatting.
65 >
66 2007-08-24  Gert Driesen  <drieseng@users.sourceforge.net>
67
68         * ResourceReader.cs: Fixed exception message to match MS. Removed
69         duplicate checks from string ctor.
70
71 2007-08-09  Atsushi Enomoto  <atsushi@ximian.com>
72
73         * ResourceReader.cs : implemented GetResourceData(). Resources with
74           unresolvable types could still be parsed, so hold type names
75           instead of types.
76
77 2007-07-16  Rodrigo Kumpera  <rkumpera@novell.com>
78
79         * ResourceReader.cs (ResourceValue): Put the null resource check
80           before the resource version 2 check, this fixes bug #81757
81
82 2007-05-28  Atsushi Enomoto  <atsushi@ximian.com>
83
84         * ResourceWriter.cs : fix for runtime serialization type index.
85           Fixed bug #81759.
86
87 2007-05-28  Atsushi Enomoto  <atsushi@ximian.com>
88
89         * ResourceWriter.cs : temporarily disable 2.0 output until I get
90           bug #81759 fixed.
91
92 2007-05-28  Atsushi Enomoto  <atsushi@ximian.com>
93
94         * IResourceWriter.cs NeutralResourcesLanguageAttribute.cs
95           SatelliteContractVersionAttribute.cs ResourceManager.cs
96           IResourceReader.cs ResourceSet.cs ResourceWriter.cs
97           ResourceReader.cs UltimateResourceFallbackLocation.cs
98           MissingManifestResourceException.cs :
99           implemented 2.0 resource support (write, and remaining read bits)
100           and GetStream(). Cosmetic attributes fixes.
101
102 2007-05-25  Atsushi Enomoto  <atsushi@ximian.com>
103
104         * MissingSatelliteAssemblyException.cs : new file.
105
106 2007-02-16  Gert Driesen  <drieseng@users.sourceforge.net>
107
108         * ResourceReader.cs: Fixed typo.
109
110 2006-12-30  Alexander Olk  <alex.olk@googlemail.com>
111
112         * ResourceManager.cs: Don't create the ResourceSets hashtable in the
113         protected ctor, instead move it to the public ctors. Fixes some not
114         working nunit tests. Also, return a closed ResourceSet instead of
115         creating a new one. Fixes one more test. If only BaseNameField is
116         provided, try to create a resource set from the BaseNameField. One
117         more test that passes now.
118         * ResourceSet.cs: Remove isDisposed. Not needed anymore.
119
120 2006-12-30  Alexander Olk  <alex.olk@googlemail.com>
121
122         * ResourceManager.cs: Iterate through the values of the ResourceSets
123         hashtable in ReleaseAllResources instead through the hashtable itself.
124
125 2006-12-30  Gert Driesen  <drieseng@users.sourceforge.net>
126
127         * ResourceReader.cs: Support reading byte arrays in v2 resource files.
128         Patch provided by Red Forks. Fixes bug #79976.
129
130 2006-10-29  Alexander Olk  <alex.olk@googlemail.com>
131
132         * ResourceSet.cs, ResourceManager.cs: Calling ResourceSet.Close()
133           disposes a resource set. A closed resource set will now be
134           removed from ResourceSets. Fixes bug #79182.
135
136 2006-03-14  Robert Jordan  <robertj@gmx.net>
137
138         * ResourceManager.cs: Don't stop the resource set lookup until
139         the invariant culture is reached. Fixes bug #77242.
140
141 2005-11-19  Zoltan Varga  <vargaz@gmail.com>
142
143         * Win32Resources.cs: Add a new 'FileVersion' property.
144
145 2005-07-25  Marek Safar  <marek.safar@seznam.cz>
146
147         *  ResourceReader.cs: Implemented reading of primitives for version 2.
148
149 2005-03-31  Sebastien Pouliot  <sebastien@ximian.com>
150
151         *  ResourceReader.cs, ResourceSet.cs: Added a LinkDemand for 
152         SerializationFormatter when using a Stream constructor (other ctors
153         have different security - e.g. FileIOPermission for opening a file).
154
155 2005-03-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
156
157         * ResourceManager.cs: use culture.Equals in InternalGetResourceSet().
158
159 2005-02-12  Geoff Norton  <gnorton@customerdna.com>
160
161         * ResourceReader.cs: If a resource type index is -1 return null 
162         instead of throwing an exception
163         * ResourceWriter.cs: If an object is null; encode it with type index
164         -1 instead of throwing an exception.
165         
166 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
167
168         * Win32Resources.cs: Fix warning.
169
170 2004-12-06  Ben Maurer  <bmaurer@ximian.com>
171
172         * ResourceManager.cs (InternalResourceManager): on msft, they
173         search for a case-insenstitive match too here.
174
175 2004-05-02  Sebastien Pouliot  <sebastien@ximian.com>
176
177         * ResourceManager.cs: Avoid endless recursion when a resource file
178         isn't found.
179
180 2004-04-08  Lluis Sanchez <lluis@ximian.com>
181
182         * ResourceSet.cs: Added minor null check.
183
184 2004-02-03  Jackson Harper <jackson@ximian.com>
185
186         * ResourceSet.cs: Do not throw an exception for null strings.
187         
188 2004-01-13  Zoltan Varga  <vargaz@freemail.hu>
189
190         * Win32Resources.cs (Win32VersionInfoResource): Add more properties.
191
192 2004-01-09  Zoltan Varga  <vargaz@freemail.hu>
193
194         * Win32Resources.cs (Win32VersionInfoResource:WriteTo): Add padding
195         at the end of each string entry.
196
197         * Win32Resources.cs: Fix warnings not detected by mcs.
198
199 2004-01-08  Zoltan Varga  <vargaz@freemail.hu>
200
201         * Win32Resources.cs: Organize win32 resources into a class hierarchy
202         with the class Win32Resource as the abstract superclass. Add 
203         Win32ResFileReader and Win32IconFileReader classes and the 
204         corresponding resource types.
205
206         * Win32Resources.cs (Win32VersionInfoResource): Fix version number 
207         calculation. Add Language property.
208
209 2004-01-05  Zoltan Varga  <vargaz@freemail.hu>
210
211         * Win32Resources.cs: New file.
212
213         * Win32Resources.cs: The value of properties can't be empty.
214
215         * Win32Resources.cs: Add Win32ResourceType enumeration. Add accessors
216         for well-known property names. Add missing namespace declaration.
217
218 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
219
220         * ResourceWriter.cs (Stream): New internal property used by Ref.Emit.
221
222 2003-11-28  Dick Porter  <dick@ximian.com>
223
224         * ResourceSet.cs: Do string compares with the Invariant culture.
225
226 2003-11-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
227
228         * ResourceSet.cs: Implemented v1.1 updates
229
230 2003-09-07  Dick Porter  <dick@ximian.com>
231
232         * Temporary workaround for bug 43567, so that Npgsql at least
233         can run.
234
235 2003-05-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
236
237         * ResourceManager.cs: fixed infinite loop when the resource is not
238         found. Also fixes bug #34196.
239
240 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
241
242         * ResourceManager.cs: enabled the code that calls GetSatelliteAssembly
243         and ignore the exception thrown if the assembly cannot be loaded.
244
245 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
246
247         * ResourceManager.cs: fixed the name for the file when the culture is
248         not de invariant culture. Commented out the GetSatelliteAssembly code
249         to avoid NotImplementedException being thrown.
250
251 2002-08-19  Dick Porter  <dick@ximian.com>
252
253         * ResourceWriter.cs: Implemented all methods
254
255         * ResourceReader.cs: Cope with our ResourceSet class name, as well
256         as theirs
257
258 2002-08-18  Dick Porter  <dick@ximian.com>
259
260         * ResourceReader.cs: Finished basic implementation.  Some
261         optimisation in conjunction with ResourceSet still possible though
262
263 2002-08-14  Dick Porter  <dick@ximian.com>
264
265         * ResourceSet.cs: Throw the correct exceptions
266
267         * ResourceManager.cs: Implemented all unfinished methods
268
269 2002-03-12  Duncan Mak  <duncan@ximian.com>
270
271         * MissingManifestResourceException.cs: This should inherit from
272         SystemException, not Exception.
273
274 2002-01-26  Nick Drochak  <ndrochak@gol.com>
275
276         * ResourceReader.cs: Finsished reading resource files with just strings
277         in them.  Need to figure out other types, and also resources with
278         multiple types in the same file.
279
280 2002-01-24  Nick Drochak  <ndrochak@gol.com>
281
282         * ResourceReader.cs: Implemented constructors. Started on the 
283         GetEnumerator() method.  Not done yet, but comitting for 
284         'disaster recovery' purposes.
285
286 2002-01-19  Duncan Mak  <duncan@ximian.com>
287
288         * *.cs: Fixed indentation. There was a stupid bug in my .emacs file.
289
290 2002-1-17  Duncan Mak  <duncan@duncan@ximian.com>
291
292         * ResourceSet.cs: Implemented GetObject (string, bool) and GetString
293         (string, bool). ResourceSet has no more MonoTODOs! Also added in the
294         Serializable attribute.
295         
296         * *.cs: convert to Miguel's brace style.
297
298 2002-01-17  Duncan Mak  <duncan@ximian.com>
299
300         * ResourceManager.cs: Fixed GetNeutralResourcesLanguage () and added
301         new attributes documented in 1.0 SDK.
302
303 2002-01-17  Duncan Mak  <duncan@ximian.com>
304
305         * ResourceWriter.cs: Added MonoTODO decorations.
306
307         * SatelliteContractVersionAttribute.cs: added new attributes in 1.0 SDK.
308
309         * NeutralResoucesLanguageAttribute.cs: added new attributes in 1.0 SDK
310         
311 2002-01-16  Duncan Mak  <duncan@ximian.com>
312
313         * ResourceReader.cs: Fixed some typos.
314
315         * ResourceManager.cs: After reading the tutorial from the SDK,
316         finished all the ResourceManager constructors and removed those
317         MonoTODO tags.
318         
319         Removed MonoTODO from GetNeutralResourcesLanguage (Assembly)
320         because Miguel just implemented the whole class, including the
321         constructor that I needed (CultureInfo (string)).
322
323         Updated fields after reading the new docs from the final SDK.
324
325         * ResXFileRef.cs, ResXResourceReader.cs: Removed. They are part of
326         Windows.Forms and require System.Xml, which we don't have access to.
327
328 2002-01-13  Duncan Mak  <duncan@ximian.com>
329
330         * ResourceManager.cs: Added more MonoTODOs and cleaned up some 
331         indenting.
332
333 2002-01-09  Duncan Mak  <duncan@ximian.com>
334
335         * ResourceManager.cs: Fixed the GetSatelliteContractVersion()
336         method. It was missing a cast before. Removed MonoTODO
337         attribute. ;-) It was tested by John Barnette, so this shouldn't break
338         the build.
339
340         * ResourceManager.cs: Removed MonoTODO attribute on GetString
341         (string), as I believe it's correct. However, GetString
342         (string, CultureInfo) is definitely broken, so I'm marking it with
343         MonoTODO there. I also added MonoTODO to IntenalGetResourceSet().
344
345 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
346         * Finalizing IResourceReader and IResourceWriter interfaces: 
347           Added "new"-modifier to IResourceReader.GetEnumerator
348         * Fixed compilation issues in other *.cs, so that the 
349           System.Resources namespaces can be included in the corlib build.
350
351 2002-01-05  Ravi Pratap  <ravi@ximian.com>
352
353         * ResourceManager.cs : MonoTODO attribute decoration.
354         
355 Tue Dec 18 13:18:32 CET 2001 Paolo Molaro <lupus@ximian.com>
356
357         * *.cs: fixed some of the compilation issues: missing
358         using directives, typos.
359
360 2001-12-11  Duncan Mak  <duncan@ximian.com>
361
362         * Checked in to CVS.
363
364 2001-12-10  Duncan Mak  <duncan@ximian.com>
365
366         * ResourceManager.cs (GetNeutralResourcesLanguage):
367         (GetSatelliteContractVersion): Implemented.
368         
369 2001-12-09  Duncan Mak  <duncan@ximian.com>
370
371         * ResXResourceReader.cs: Initial attempt.
372
373         * ResXFileRef.cs: Initial attempt.
374
375         * ResourceWriter.cs: Initial attempt.
376
377         * ResourceSet.cs (ReadResources): Implemented, with help from Radek Doulik.
378
379 2001-11-28  Duncan Mak <duncan@ximian.com>      
380
381         * ResourceManager.cs: First attempt.
382
383 2001-11-27  Duncan Mak <duncan@ximian.com>
384
385         * ResourceSet.cs:
386         First attempt, can't continue until ResourceReader and ResourceWriter are implemented.
387                 
388         * SatelliteContractVersionAttribute.cs: First attempt. The spec is quite amibiguous here.
389
390         * NeutralResoucesLanguageAttribute.cs: Complete.
391
392         * MissingManifestResourceException.cs: Complete.
393
394         * IResourceReader.cs: Complete.
395
396         * IResourceWriter.cs: Complete.