New test.
[mono.git] / mcs / class / corlib / System.Resources / ChangeLog
index 34d14d82143392b00234ceb7e58c962157cd0e5e..6027a5bd4fb4a3a95b01be66da85110f666e824c 100644 (file)
@@ -1,3 +1,189 @@
+2010-03-16  Jb Evain  <jbevain@novell.com>
+
+       * ResourceManager.cs: use MOONLIGHT symbol to disambiguate
+       MonoTouch and Moonlight code.
+
+2010-03-01  Miguel de Icaza  <miguel@novell.com>
+
+       * Win32Resources.cs: Prevent infinite loops if the resource that
+       we are reading is invalid.   Fixes the mscorlib part of #327500
+
+2009-11-01  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * ResourceManager.cs (GetResourceFilePath): Don't use 
+       'resourceDir' which should always be null for Moonlight
+
+2009-10-19  Jb Evain  <jbevain@novell.com>
+
+       * ResourceReader.cs: fix the build.
+
+2009-10-18  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * ResourceReader.cs, ResourceSet.cs, RuntimeResourceSet.cs: Use 
+       UnmanagedMemoryStream (instead of IntPtrStream)
+
+2009-04-16  Geoff Norton  <gnorton@novell.com>
+
+       * ResourceWriter.cs: The magic internal type here is required to match
+       Microsofts for SL2 resource deserialization.
+
+2009-03-06 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ResourceSet.cs: for custom resource sets without a reader, pretende
+       that's we've already read the stream.
+
+2009-02-27 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ResourceSet.cs: populating the resource should be locked because the
+       resourceset could be shared.
+
+2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ResourceManager.cs: don't throw every time we try to load a resource
+       satellite assembly that does not exist.
+
+2008-12-22 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ResourceManager.cs: cache negative results too.
+
+2008-12-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ResourceManager.cs: avoid duplication of keys if more than one
+       thread is creating the ResourceSet.
+
+2008-12-17 Gonzalo Paniagua Javier <gonzalo@novell.com>
+
+       * ResourceManager.cs: cache ResourceSets instead of loading them from
+       their assembly every time they are needed.
+
+2008-08-11  Larry Ewing  <lewing@novell.com>
+
+       * ResourceReader.cs: fix reading/writing beyond the end of the
+       current resource when the resource is larger than 1024 bytes.
+
+2008-06-30  Marek Safar  <marek.safar@gmail.com>
+
+       * ResourceReader.cs: Cache resources enumerator in ResourceReader.
+
+2008-06-30  Marek Safar  <marek.safar@gmail.com>
+
+       * ResourceReader.cs: Sealed ResourceEnumerator.
+
+2008-06-28  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * ResourceReader.cs (LoadResourceValues): Kill ununsed local.
+
+       * ResourceReader.cs (CreateResourceInfo): Don't return a big
+       struct on stack, pass it as a reference argument.
+
+2008-06-27  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * ResourceReader.cs: Avoid an extra array copy for the resource arrays.
+
+2008-06-27  Zoltan Varga  <vargaz@gmail.com>
+
+       * ResourceManager.cs: Add a negative cache for culture->resource set mappings
+       which caches lookup failures.
+
+       * ResourceSet.cs (GetObjectInternal): Search the hash table in the ignoreCase
+       case too.
+
+2008-06-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
+
+       * MissingManifestResourceException.cs:
+       * MissingSatelliteAssemblyException.cs:
+       * ResourceManager.cs: Fix parameter names
+
+2008-05-27  Marek Habersack  <mhabersack@novell.com>
+
+       * ResourceReader.cs: reimplement the way resources are read when
+       enumerator is used. The resource indexes and names are read in
+       ReadHeaders when ResourceReader is created and the resource values
+       are read and cached when the enumerator is created. This removed a
+       lot of unnecessary locking and made the whole process more
+       efficient and faster (a test application would acquire the locks
+       40000 times durng a 1.7s run, right now it acquires the lock 1
+       time).
+
+2008-05-08  Miguel de Icaza  <miguel@novell.com>
+
+       * ResourceSet.cs: Pass the ignoreCase argument, needed to
+       implement ResourceManager.IgnoreCase.
+
+       Silverlight 2.0 applications store "page.xaml" as the key in the
+       resource keys, but request Page.xaml ones.
+
+       * ResourceManager.cs: Avoid exception throwing and catching.
+
+       * RutimeResourceSet.cs: Add a constructor that is required to
+       deserialize Silverlight 2.0 applications when deserializing the
+       resources that contains the XAML files in assemblies.
+
+       We do not take advantage of this new constructor that uses an
+       IntPtrStream, instead we stick to the Stream API.
+
+2008-03-29  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * Win32Resources.cs: On 2.0 profile, initiale fixed info to zero-length
+       string when emitting versioninfo in compiler context. Default to
+       neutral language in compiler context. On 1.0 profile, use 0xffff as
+       default value for version parts. In Version, abort on first invalid
+       version part and also set FileVersion string. In ProductVersion and
+       FileVersion, parse version string and abort on first invalid version
+       part.  
+
+2008-03-15  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * ResourceManager.cs: Default to RuntimeResourceSet for all ctors.
+       * ResourceSet.cs: Avoid duplicate argument checks. On 2.0 profile,
+       throw ObjectDisposedException when ResourceSet is disposed.
+       * RuntimeResourceSet.cs: On 2.0 profile, throw ObjectDisposedException
+       when ResourceSet is disposed.
+
+2008-03-04  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * ResourceManager.cs: Use RuntimeResourceSet, an internal type, just
+       like MS does (and tell us indirectly with a Type property).
+       * ResourceSet.cs: Fix a few problems found with new unit tests. Also
+       fix some exception parameters.
+       * RuntimeResourceSet.cs: New. Internal type used by ResourceManager.
+       ResouceSet cannot be used, as is, because it does not clone objects,
+       when possible, leading to problems when those objects are disposed.
+
+2008-01-26  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * ResourceWriter.cs: On 2.0 profile, do not mistakenly identify an
+       enum as a predefined type. Fixes bug #325223.
+
+2007-11-10  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * ResourceWriter.cs: On 2.0 profile, use case-insensitive SortedList.
+       Changed exception messages and params to match MS. Allow null values
+       in AddResource overloads. In Dispose (bool), also generate resources
+       (header) if no resources were added. Fixes bug #339074. When Generate
+       is done, reset resources to null to prevent further editing.  This
+       also avoids the need for a separate bool to indicate whether generate
+       was already invoked. Code formatting.
+
+2007-10-27  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * ResourceManager.cs: Removed temporary workaround for bug #43567.
+       Reworked basename to only throw ArgumentException if resource with
+       name ending on ".resources" does not actually exist. Fixes bug
+       #336283. Do not throw exception in GetStream since this is already
+       done in InternalGetResourceSet. In InternalGetResourceSet, do not
+       throw MissingManifestResourceException when culture is null. Fixed
+       MissingManifestResourceException message to match MS. When using
+       file-based ResourceManager, then also throw an exception when file
+       does not exist for neutral culture.
+
+2007-09-17  Gert Driesen  <drieseng@users.sourceforge.net>
+
+       * ResourceManager.cs: Move code for determining manifest resource
+       name into separate method. Only use satellite assemblies for
+       non-invariant cultures. For invariant culture, only load resources
+       from main assembly.
+
 2007-09-17  Gert Driesen  <drieseng@users.sourceforge.net>
 
        * ResourceManager.cs: BaseName(Field) should return only the name.