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