+2010-07-07 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ 4.0 updates.
+
+ * ResourceManager.cs: Mark ResourceSets as obsolete.
+ * ResourceReader.cs: New public Dispose method.
+
+2010-07-05 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * ResourceWriter.cs: Implement 4.0 TypeNameConverter.
+
+2010-07-05 Carlos Alberto Cortez <calberto.cortez@gmail.com>
+
+ * ResourceWriter.cs: Implement 4.0 AddResource overloads taking a
+ Stream, as well as implement the same support in our AddResource that
+ takes an object too.
+
+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.
+ Added resourceSource field to store the actual type, which we need for
+ the namespace. Added CheckBaseName method to avoid code duplication.
+ Only check whether basename does not end in '.resources' on 1.0
+ profile. Fixed paramname of ArgumentNullExceptions to match MS.
+ Modified GetManifestResourceStreamNoCase to use resourceSource field
+ to construct manifest resource name. Modified GetStream to use
+ CurrentUICulture when culture is null. Fixed InternalGetResourceSet
+ to use invariant resources when culture is the neutral culture.
+ Code formatting.
+>
+2007-08-24 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * ResourceReader.cs: Fixed exception message to match MS. Removed
+ duplicate checks from string ctor.
+
+2007-08-09 Atsushi Enomoto <atsushi@ximian.com>
+
+ * ResourceReader.cs : implemented GetResourceData(). Resources with
+ unresolvable types could still be parsed, so hold type names
+ instead of types.
+
+2007-07-16 Rodrigo Kumpera <rkumpera@novell.com>
+
+ * ResourceReader.cs (ResourceValue): Put the null resource check
+ before the resource version 2 check, this fixes bug #81757
+
+2007-05-28 Atsushi Enomoto <atsushi@ximian.com>
+
+ * ResourceWriter.cs : fix for runtime serialization type index.
+ Fixed bug #81759.
+
+2007-05-28 Atsushi Enomoto <atsushi@ximian.com>
+
+ * ResourceWriter.cs : temporarily disable 2.0 output until I get
+ bug #81759 fixed.
+
+2007-05-28 Atsushi Enomoto <atsushi@ximian.com>
+
+ * IResourceWriter.cs NeutralResourcesLanguageAttribute.cs
+ SatelliteContractVersionAttribute.cs ResourceManager.cs
+ IResourceReader.cs ResourceSet.cs ResourceWriter.cs
+ ResourceReader.cs UltimateResourceFallbackLocation.cs
+ MissingManifestResourceException.cs :
+ implemented 2.0 resource support (write, and remaining read bits)
+ and GetStream(). Cosmetic attributes fixes.
+
+2007-05-25 Atsushi Enomoto <atsushi@ximian.com>
+
+ * MissingSatelliteAssemblyException.cs : new file.
+
+2007-02-16 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * ResourceReader.cs: Fixed typo.
+
+2006-12-30 Alexander Olk <alex.olk@googlemail.com>
+
+ * ResourceManager.cs: Don't create the ResourceSets hashtable in the
+ protected ctor, instead move it to the public ctors. Fixes some not
+ working nunit tests. Also, return a closed ResourceSet instead of
+ creating a new one. Fixes one more test. If only BaseNameField is
+ provided, try to create a resource set from the BaseNameField. One
+ more test that passes now.
+ * ResourceSet.cs: Remove isDisposed. Not needed anymore.
+
+2006-12-30 Alexander Olk <alex.olk@googlemail.com>
+
+ * ResourceManager.cs: Iterate through the values of the ResourceSets
+ hashtable in ReleaseAllResources instead through the hashtable itself.
+
+2006-12-30 Gert Driesen <drieseng@users.sourceforge.net>
+
+ * ResourceReader.cs: Support reading byte arrays in v2 resource files.
+ Patch provided by Red Forks. Fixes bug #79976.
+
+2006-10-29 Alexander Olk <alex.olk@googlemail.com>
+
+ * ResourceSet.cs, ResourceManager.cs: Calling ResourceSet.Close()
+ disposes a resource set. A closed resource set will now be
+ removed from ResourceSets. Fixes bug #79182.
+
+2006-03-14 Robert Jordan <robertj@gmx.net>
+
+ * ResourceManager.cs: Don't stop the resource set lookup until
+ the invariant culture is reached. Fixes bug #77242.
+
+2005-11-19 Zoltan Varga <vargaz@gmail.com>
+
+ * Win32Resources.cs: Add a new 'FileVersion' property.
+
+2005-07-25 Marek Safar <marek.safar@seznam.cz>
+
+ * ResourceReader.cs: Implemented reading of primitives for version 2.
+
+2005-03-31 Sebastien Pouliot <sebastien@ximian.com>
+
+ * ResourceReader.cs, ResourceSet.cs: Added a LinkDemand for
+ SerializationFormatter when using a Stream constructor (other ctors
+ have different security - e.g. FileIOPermission for opening a file).
+
+2005-03-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * ResourceManager.cs: use culture.Equals in InternalGetResourceSet().
+
+2005-02-12 Geoff Norton <gnorton@customerdna.com>
+
+ * ResourceReader.cs: If a resource type index is -1 return null
+ instead of throwing an exception
+ * ResourceWriter.cs: If an object is null; encode it with type index
+ -1 instead of throwing an exception.
+
+2005-02-11 Zoltan Varga <vargaz@freemail.hu>
+
+ * Win32Resources.cs: Fix warning.
+
+2004-12-06 Ben Maurer <bmaurer@ximian.com>
+
+ * ResourceManager.cs (InternalResourceManager): on msft, they
+ search for a case-insenstitive match too here.
+
+2004-05-02 Sebastien Pouliot <sebastien@ximian.com>
+
+ * ResourceManager.cs: Avoid endless recursion when a resource file
+ isn't found.
+
+2004-04-08 Lluis Sanchez <lluis@ximian.com>
+
+ * ResourceSet.cs: Added minor null check.
+
+2004-02-03 Jackson Harper <jackson@ximian.com>
+
+ * ResourceSet.cs: Do not throw an exception for null strings.
+
+2004-01-13 Zoltan Varga <vargaz@freemail.hu>
+
+ * Win32Resources.cs (Win32VersionInfoResource): Add more properties.
+
+2004-01-09 Zoltan Varga <vargaz@freemail.hu>
+
+ * Win32Resources.cs (Win32VersionInfoResource:WriteTo): Add padding
+ at the end of each string entry.
+
+ * Win32Resources.cs: Fix warnings not detected by mcs.
+
+2004-01-08 Zoltan Varga <vargaz@freemail.hu>
+
+ * Win32Resources.cs: Organize win32 resources into a class hierarchy
+ with the class Win32Resource as the abstract superclass. Add
+ Win32ResFileReader and Win32IconFileReader classes and the
+ corresponding resource types.
+
+ * Win32Resources.cs (Win32VersionInfoResource): Fix version number
+ calculation. Add Language property.
+
+2004-01-05 Zoltan Varga <vargaz@freemail.hu>
+
+ * Win32Resources.cs: New file.
+
+ * Win32Resources.cs: The value of properties can't be empty.
+
+ * Win32Resources.cs: Add Win32ResourceType enumeration. Add accessors
+ for well-known property names. Add missing namespace declaration.
+
+2003-12-17 Zoltan Varga <vargaz@freemail.hu>
+
+ * ResourceWriter.cs (Stream): New internal property used by Ref.Emit.
+
+2003-11-28 Dick Porter <dick@ximian.com>
+
+ * ResourceSet.cs: Do string compares with the Invariant culture.
+
+2003-11-18 Andreas Nahr <ClassDevelopment@A-SoftTech.com>
+
+ * ResourceSet.cs: Implemented v1.1 updates
+
+2003-09-07 Dick Porter <dick@ximian.com>
+
+ * Temporary workaround for bug 43567, so that Npgsql at least
+ can run.
+
+2003-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * ResourceManager.cs: fixed infinite loop when the resource is not
+ found. Also fixes bug #34196.
+
+2003-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * ResourceManager.cs: enabled the code that calls GetSatelliteAssembly
+ and ignore the exception thrown if the assembly cannot be loaded.
+
+2003-05-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+ * ResourceManager.cs: fixed the name for the file when the culture is
+ not de invariant culture. Commented out the GetSatelliteAssembly code
+ to avoid NotImplementedException being thrown.
+
+2002-08-19 Dick Porter <dick@ximian.com>
+
+ * ResourceWriter.cs: Implemented all methods
+
+ * ResourceReader.cs: Cope with our ResourceSet class name, as well
+ as theirs
+
+2002-08-18 Dick Porter <dick@ximian.com>
+
+ * ResourceReader.cs: Finished basic implementation. Some
+ optimisation in conjunction with ResourceSet still possible though
+
+2002-08-14 Dick Porter <dick@ximian.com>
+
+ * ResourceSet.cs: Throw the correct exceptions
+
+ * ResourceManager.cs: Implemented all unfinished methods
+
+2002-03-12 Duncan Mak <duncan@ximian.com>
+
+ * MissingManifestResourceException.cs: This should inherit from
+ SystemException, not Exception.
+
+2002-01-26 Nick Drochak <ndrochak@gol.com>
+
+ * ResourceReader.cs: Finsished reading resource files with just strings
+ in them. Need to figure out other types, and also resources with
+ multiple types in the same file.
+
2002-01-24 Nick Drochak <ndrochak@gol.com>
* ResourceReader.cs: Implemented constructors. Started on the