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