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