2005-04-25 Atsushi Enomoto * String.cs : added IsNormalized() and Normalize() (NET_2_0). Note that you will have to build Normalization.cs which can be generated in Mono.Globalization.Unicode directory (automatic build is not supported and those generated sources will be checked in at a certain stage). 2005-04-22 Sebastien Pouliot * Attribute.cs: Added _Attribute interface to NET_2_0 to reduce the number of "missing" in the class status pages. 2005-04-21 Gonzalo Paniagua Javier * MulticastDelegate.cs: (GetInvocationList) when building the list that is later traversed forward, mark 'this' as the end of the chain. Fixes bug #74607. 2005-04-19 Zoltan Varga * Environment.cs: Bump corlib version. 2005-04-08 Gonzalo Paniagua Javier * WindowsConsoleDriver.cs: ignore key release events. 2005-04-06 Atsushi Enomoto * Char.cs : ToUpper()/ToLower() comparison ranges were incorrect. 2005-04-05 Sebastien Pouliot * _AppDomain.cs: Add security checks to the interface. Declarative security on events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS. * AppDomain.cs: Add some (not complete) security checks. Bug#74411 is blocking some cases from working properly. Declarative security on events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS. 2005-04-04 Sebastien Pouliot * AppDomain.cs: Use the PolicyLevel to resolve the granted permissions on the AppDomain. Added an internal property to get the granted set. 2005-04-04 Atsushi Enomoto * String.cs, Char.cs : use TextInfo for ToLower() and ToUpper(). 2005-03-31 Sebastien Pouliot * Exception.cs: Added Assert for TypeInformation to GetObjectData and ToString methods (not required for 2.0 as TypeInformation will be deprecated). Added null check for GetObjectData. Tue Mar 29 11:47:19 CEST 2005 Paolo Molaro * Delegate.cs: allow IronPython 0.7 to compile. 2005-03-24 Miguel de Icaza * Delegate.cs: Add CreateDelegate with a target option, currently internal as it is not exposed by the framework yet. 2005-03-24 Zoltan Varga * String.cs: Add some 2.0 methods. 2005-03-24 Sebastien Pouliot * Activator.cs: Now use the supplied evidences when loading assemblies. Added LinkDemand for RemotingConfiguration on both GetObject methods. * Console.cs: Added Assert for UnmanagedCode on OpenStandard[Error| Input|Output] as they use a handle on a FileStream (which is restricted otherwise). Added Demand for UnmanagedCode for the Set[Error|In|Out] methods. * MarshalByRefObject.cs: Added LinkDemand for Infrastructure on CreateObjRef, GetLifetimeService and InitializeLifetimeService. * RuntimeMethodHandle.cs: Added Demand for UnmanagedCode on GetFunctionPointer method. * TypedReference.cs: Added LinkDemand for ReflectionPermission's MemberAccess on MakeTypedReference. 2005-03-14 Sebastien Pouliot * Environment.cs: Fix CAS unit tests for NET_1_1. * Exception.cs: Fix CAS unit tests for NET_1_1. 2005-03-11 Gonzalo Paniagua Javier * Version.cs: don't ignore the last number. Fixes bug #73539. 2005-03-11 Sebastien Pouliot * MonoType.cs: When the security manager is active, constructors and methods will return null if a linkdemand fails during reflection query. 2005-03-11 Zoltan Varga * Array.cs (Sort): Bail out early if length <= 1. Fixes #72721. 2005-03-10 Zoltan Varga * Environment.cs: Bump corlib version. 2005-03-10 Martin Baulig * Nullable.cs (Nullable.ToString): Return an empty string if we're null. 2005-03-09 Zoltan Varga * Activator.cs MonoType.cs: Applied patch from Carlos Alberto Cortez (carlos@unixmexico.org). Allow creation of valuetypes with no ctor. Fixes #73432. 2005-03-04 Zoltan Varga * Environment.cs: Bump corlib version. * Exception.cs (StackTrace): Return the wrapper info as well. 2005-03-02 Kazuki Oikawa * NumberFormatter.cs: Some internal classes was converted to structs, and improved some points. 2005-02-26 Kazuki Oikawa * NumberFormatter.cs: Improved performance and memory usage when integer standard format. * SByte.cs: * Int16.cs: * Int32.cs: * Int64.cs: * Byte.cs: * UInt16.cs: * UInt32.cs: * UInt64.cs: * Single.cs: * Double.cs: * TimeSpan.cs: Improved these directly call to NumberFormatter. 2005-02-25 Gonzalo Paniagua Javier * TermInfoDriver.cs: set the xmit mode if available. Handle key input and translate them into a ConsoleKeyInfo. * TermInfoReader.cs: added a method to return the bytes of a string property. * ConsoleKeyInfo.cs: added copy constructor and setters. 2005-02-24 Zoltan Varga * Array.cs: Add missing 2.0 attributes and correct some parameter names. 2005-02-24 Carlos Alberto Cortez * AppDomain.cs: Changed GetAssemblies, LoadAssembly, and Load signatures, and added some to support the reflection only methods. DoAssemblyResolve was modified to invoke the new PreBindAssemblyResolve event when the assembly is reflection only. 2005-02-21 Zoltan Varga * GC.cs Double.cs IntPtr.cs Array.cs Decimal.cs Math.cs Single.cs: Add net 2.0 ReliabilityContractAttributes. 2005-02-20 Gonzalo Paniagua Javier * TermInfoDriver.cs: cygwin terminals are handled by the windows console driver. * TermInfoReader.cs: * TermInfoNumbers.cs: * KnownTerminals.cs: * TermInfoBooleans.cs: * TermInfoStrings.cs: documented. 2005-02-19 Kazuki Oikawa * Array.cs: Reverse the order in the Equals calls. 2005-02-18 Zoltan Varga * Exception.cs (StackTrace): Implement this in managed code since it is needed by CAS. Fixes #72146. 2005-02-15 Gonzalo Paniagua Javier * WindowsConsoleDriver.cs: implemented MoveBufferArea. 2005-02-14 Raja R Harinath * Array.cs (Array.Swapper) [!BOOTSTRAP_WITH_OLDLIB]: Make nested. See #72015. 2005-02-12 Ben Maurer * Version.cs (CompareTo, Equals): Make sure the versions for generics handle `null'. The non-generics versions now just call the regular versions, to reduce code duplication. * Boolean.cs (CompareTo): make this really work for generics * Type.cs (GetProperty): Passing new Type [0] is different than null. null means `I don't care how many types this has,' while new Type [0] means `this must have 0 types.' 2005-02-11 Gonzalo Paniagua Javier * corlib.dll.sources: added WindowsConsoleDriver.cs * System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and implemented the few missing properties/methods. * System/IConsoleDriver.cs: uncommented all methods/properties. * System/TermInfoDriver.cs: implement changes from IConsoleDriver. * System/WindowsConsoleDriver.cs: implemented IConsoleDriver for windows. Only missing MoveBufferArea by now. 2005-02-11 Zoltan Varga * Type.cs (IsAssignableFrom): Add support for TypeBuilders. * Int32.cs AppDomain.cs: Fix warnings. 2005-02-10 Marek Safar * IServiceProvider.cs: Is not ComVisible. * NonSerializedAttribute.cs: Fix AttributeUsage flags. * Type.cs: Fix ClassInterface attribute. Tue Feb 8 19:26:47 CET 2005 Paolo Molaro * Delegate.cs: remove the finalizer from Delegate: this is handled internally by the runtime now. 2005-02-05 Gonzalo Paniagua Javier * Activator.cs: provide the Type name when throwing an exception. 2005-02-05 Gonzalo Paniagua Javier * TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes bug #72238. Fri Feb 4 15:46:04 CET 2005 Paolo Molaro * Array.cs: provide specialized versions of some methods. Thu Feb 3 15:15:25 CET 2005 Paolo Molaro * String.cs: provide a managed memcpy and memset method for use both in corlib and from the JIT. Implement some methods with the managed helpers and remove some icalls. 2005-01-31 Sebastien Pouliot * Exception.cs: Added Data property for NET_2_0 (required for new unit tests). 2005-01-31 Gonzalo Paniagua Javier * ConsoleDriver.cs: * TermInfoDriver.cs: * IConsoleDriver.cs: * Console.cs: added BufferWidth and BufferHeight. 2005-01-31 Gonzalo Paniagua Javier * ConsoleDriver.cs: * Console.cs: * TermInfoDriver.cs: * IConsoleDriver.cs: added a few more properties and fixed cursor addressing. 2005-01-31 Gonzalo Paniagua Javier * ConsoleDriver.cs: static class that forwards the Console 2.0 class calls to the proper driver. * TermInfoDriver.cs: terminfo based console driver. * IConsoleDriver.cs: interface implemented by console drivers. * ConsoleCancelEventArgs.cs: * ConsoleCancelEventHandler.cs: * ConsoleModifiers.cs: * ConsoleSpecialKey.cs: * ConsoleColor.cs: * ConsoleKey.cs: new enumerations. * ConsoleKeyInfo.cs: New file. * TermInfoReader.cs: reader for terminfo capabilities files. * TermInfoNumbers.cs: * TermInfoBooleans.cs: * TermInfoStrings.cs: enumations for terminfo property names. * KnownTerminals.cs: byte arrays for selected terminals. * Console.cs: added more 2.0 methods and implemented some of them. 2005-01-30 Atsushi Enomoto * Int32.cs : (FindSign) IndexOf() is better than creating substring. 2005-01-27 Sebastien Pouliot * BadImageFormatException.cs: Protect the fusion (GAC) log from being disclosed unless code has ControlPolicy and ControlEvidence. 2005-01-27 Zoltan Varga * Exception.cs: Compute stack trace on demand. 2005-01-26 Sebastien Pouliot * Environment.cs: Removed hack for static class (NET_2_0). Added proper security for FailFast (documented in FDBK20543). Added new method IsRunningOnWindows to replace (Platform == 128) as the logic is gonna change in the future (Unix is id #4 in NET_2_0). 2005-01-24 Sebastien Pouliot * Environment.cs: Added CAS security (both declarative and imperative) as a test. This shouldn't affect execution unless --security is specified. 2005-01-19 Rafael Teixeira * Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase and Type.FilterName delegates They weren't dealing with the optional '*' at the end of the filter mask 2005-01-19 Zoltan Varga * Array.cs: Fix a typo in the previous patch. * Array.cs: Fix some test failures in the generic methods. * Array.cs: Implement AsReadOnly. 2005-01-13 Geoff Norton * Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE). Fixes #71242 2005-01-11 Sebastien Pouliot * AppDomain.cs: Removed Activate and ActivateNewProcess methods. They have been removed from 2.0. 2005-01-11 Zoltan Varga * Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable in NET 2.0. 2005-01-10 Sebastien Pouliot * ApplicationIdentity.cs: Throw ArgumentNullException if name is null. Add default culture (neutral) to the name when none is specified. * AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we can't trust Id ? 2005-01-09 Sebastien Pouliot * DateTime.cs: Reverted last patch for utc as it broke all certificate handling and another unit test in DateTime. 2005-01-09 Miguel de Icaza * DateTime.cs: Return immediately if useutc is set to true, there is no need to do the extra computation (which also happened to create a new DateTime using the `use_localtime' constructor, which lead to the erroneous date returns when using 'u' or `U' formats). Fixes another bug in the regression test suite. 2005-01-08 Sebastien Pouliot * AppDomain.cs: Fix the DefaultDomain property to return the root domain (as it seems that the root's Id isn't always 0). * BitConverter.cs: The "special support" for ToString(new byte[0]) is only for NET_2_0 - previously this was an ArgumentOutOfRangeException. 2005-01-08 Miguel de Icaza * IntegerFormatter.cs: The - sign inside the "negative" section in a multi-format string means `show the sign' only if it is the first token, not `copy verbatim'. In the other sections it means `copy-verbatim'. This makes things like: (-34).ToString ("#;-#") show up as "-34" instead of "--34". The bad news is that this code needs to be rewritten to handle all the formatting cases, see bug #71112 for details. * Convert.cs (Convert.ToType): Throw an InvalidCastException if the conversion is invalid, not ArgumentException, this fixes another regression in our test suite. 2005-01-08 Sebastien Pouliot * AppDomain.cs: Add ApplicationIdentity property for 2.0; * AppDomainManager.cs: Remove HostRefusedSet support (it does not exists anymore). 2005-01-08 Zoltan Varga * DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static initialization problems. 2005-01-02 Ben Maurer * Int32.cs: NumberStyles.AllowExponent was supported by the Int32.Parse function. From Akira . Fixes bug 70469. 2005-01-01 Atsushi Enomoto * Base64FormattingOptions.cs : it was not in System namespace. 2004-12-21 Atsushi Enomoto * DateTime.cs : If no progress on value string, don't regard as matched. This fixes bug #70707. 2004-12-20 Sebastien Pouliot * Environment.cs: Bump corlib version. 2004-12-16 Zoltan Varga * Array.cs (DoBinarySearch): Fix a warning. 2004-12-08 Zoltan Varga * Environment.cs: Bump corlib version. * AppDomain.cs: Add new DefineInternalDynamicAssembly () method. 2004-12-06 Ben Maurer * Exception.cs: Prevent stringifying the type name on the ctor. this gets called a few times on every execution to create a nullref exception. 2004-12-06 Martin Baulig * Decimal.cs: Decimal constant support has been merged into GMCS, removed the FIXME. 2004-12-06 Zoltan Varga * Environment.cs: Bump corlib version. * Environment.cs: Bump corlib version. 2004-11-30 Zoltan Varga * MonoType.cs (UnderlyingSystemType): Make this return this as in MS.NET. Fixes #56245. 2004-11-29 Atsushi Enomoto * GC.cs : Collect(generation) actually does not throw an exception even if generation > MaxGeneration (MS document bug). 2004-11-28 Zoltan Varga * Exception.cs: Implement _Exception under NET_2_0. * Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0. * AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs NotCancelableException.cs TimeoutException.cs: New files. 2004-11-23 Raja R Harinath * Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal constant support. 2004-11-23 Raja R Harinath * Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers without decimal constant support. 2004-11-23 Marek Safar * Decimal.cs: Updated to use compiler decimal constant support. 2004-11-20 Zoltan Varga * MonoType.cs: Revert last change since it breaks remoting. 2004-11-18 Zoltan Varga * MonoType.cs (UnderlyingSystemType): Make this return this as in MS.NET. Fixes #56245. 2004-11-17 Carlos Alberto Cortez * INullable.cs: New interface added. * Nullable.cs: Methods added. Also a static Nullable class containing static methods. 2004-11-15 Sebastien Pouliot * BitConverter.cs: Added support for special case when ToString is called with (new byte [0]). 2004-11-10 Lluis Sanchez * Exception.cs: Added setter for StackTrace. 2004-11-07 Ben Maurer * IntegerFormatter.cs: Avoid .ToCharArray 2004-11-06 Ben Maurer * Single.cs, Double.cs (GetHashCode): Better hashcode impl 2004-11-03 Gonzalo Paniagua Javier * InvalidOperationException.cs: make the message more meaningful and real. Fixes bug #69055. 2004-10-28 Ben Maurer * String.cs: Rather than == String.Empty, use .Length == 0. It is a bit faster (avoids a method call, and the code is less complex). 2004-10-24 Fawad Halim * Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches. Add text between end of current lookup window and next % match if we just got a match, or add all text to the end if there are no further % matches. This fixes bug #64995. 2004-10-19 Lluis Sanchez * MarshalByRefObject.cs: Field _identity is not serializable. This fixes bug #68567. 2004-10-17 Ben Maurer * DateTime.cs (ZeroPad): Use unsafe code to speed this up. We avoid entering slow integer formatting code. (_ToString): Use ZeroPad here when possible, as it is faster. 2004-10-11 Martin Baulig * Environment.cs: Bump corlib version to 28. 2004-10-08 Zoltan Varga * Convert.cs (ToType): Throw an exception when converting null to a valuetype. Fixes #67780. 2004-10-08 Atsushi Enomoto * DateTime.cs : Performance fix. ParseExact() implementation should avoid s = s.Substring(1). 2004-10-08 Atsushi Enomoto * DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix of m/s/t/z. This fixes bug 66723. Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro * String.cs: make GetHashCode() managed. 2004-10-04 Zoltan Varga * AppDomain.cs: Make ThreadStatic variables static. Fixes #56614. * Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode. * ModuleHandle.cs: Add missing methods. * RuntimeTypeHandle.cs: Add GetModuleHandle () method. 2004-10-03 Zoltan Varga * AttributeTargets.cs: Add 2.0 GenericParameter value. * Environment.cs: Bump corlib version. 2004-10-02 Zoltan Varga * Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods. 2004-09-30 Geoff Norton * Convert.cs: ConvertToBase* was not endian aware. Implemented EndianSwap and swapping of all values before going into the BitConverter so that values are returned with proper endianess. 2004-09-23 Martin Garton * Convert.cs: ToType was returning unconverted object when it should fail with an ArgumentException. 2004-09-27 Zoltan Varga * Array.cs: Add stub for AsReadOnly. 2004-09-25 Zoltan Varga * Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType. * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for parameters. 2004-09-24 Zoltan Varga * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for methods and fields. * MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo custom attributes. * MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion. * MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is sealed' optimization. * Type.cs: Implement 2.0 StructLayoutAttribute property. * Type.cs Add GetPseudoCustomAttributes () method. 2004-09-24 Martin Baulig * Type.cs (Type.GetGenericParameterConstraints): New public method. 2004-09-23 Zoltan Varga * MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to GetCustomAttributesInternal and add a 'pseudoAttrs' argument. * Type.cs: Tweak Module property in 2.0 build. 2004-09-23 Martin Baulig * Type.cs (Type.GenericParameterAttributes): New public property. 2004-09-23 Martin Baulig * GenericParameterAttributes.cs: New file. 2004-09-22 Zoltan Varga * ModuleHandle.cs: Updated after changes to Module class. 2004-09-21 Geoff Norton * Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements this filter. Fixes bug #65778. 2004-09-20 Zoltan Varga * Environment.cs: Bump corlib version. 2004-09-19 Zoltan Varga * ModuleHandle.cs: New file. * RuntimeFieldHandle.cs: Add an internal ctor. 2004-09-19 Dick Porter * Console.cs: Use the internal wrappers for StreamReader and StreamWriter that catch IOException. 2004-09-16 Sebastien Pouliot * Environment.cs: Bumped mono_corlib_version to 25. 2004-09-13 Gonzalo Paniagua Javier * AppDomain.cs: added SetupInformationNoCopy property, since SetupInformation creates a copy now, all updates to it should use the actual data. Fixes bug #61991 take 2. 2004-09-09 Tim Coleman * Base64FormattingOptions.cs: New enum * Convert.cs: Add new ToBase64String methods for Fx 2.0 2004-09-08 Marek Safar * Console.cs, * GC.cs: Class is static for NET_2_0. 2004-09-07 Ben Maurer * Activator.cs: Make sure not to call .GetType on a null argument. fixes 63852 2004-09-06 Ben Maurer * Array.cs (Clear): make this an icall. 2004-09-05 Ben Maurer * MonoCustomAttribute.cs: Avoid the call to GetBase when possible. 2004-09-05 Gonzalo Paniagua Javier * Environment.cs: (ExpandEnvironmentVariables) don't nullify the case insensitive enironment variables hashtable once we create it. 2004-09-04 Sebastien Pouliot * AppDomain.cs: Changed 2 imperative security demands to declarative (unsupported) so it doesn't (for now) call the security runtime. 2004-09-02 Zoltan Varga * Delegate.cs: Free the delegate trampoline in the finalizer. 2004-08-26 Sebastien Pouliot * ApplicationId.cs: Completed GetHashCode using information from MS (FDBK13339). 2004-08-23 Sebastien Pouliot * Boolean.cs: Added TryParse static method for NET_2_0 profile. 2004-08-19 Atsushi Enomoto * DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly) allows 12, that should not be accepted (13 is rejected) and interpreted as 0. This fixes bug 63376. 2004-08-17 Sebastien Pouliot * Version.cs: Fixed Clone so we can use it on versions with only major/minor or major/minor/build. 2004-08-17 Martin Baulig * MonoType.cs (MonoType.getFullName): Added `bool full_name' argument specifying whether or not to include the type arguments. (MonoType.FullName): Don't include the type arguments. (MonoType.ToString): Include them here. * Environment.cs: Bumped mono_corlib_version to 24. 2004-08-16 Duncan Mak * AttributeUsageAttribute.cs: Change the AttributeUsage to AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's bug #62895. 2004-08-11 Marek Safar * AppDomain.cs: Fixed typo of DefineDynamicAssembly argument. Added call to AddPermissionRequests to pass permissions arguments. * Environment.cs: Added a few Fx 2.0 methods 2004-08-09 Sebastien Pouliot * ApplicationId.cs: Fixed typo to fix NET_2_0 compilation. * AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not references). Added (non-obsolete) Fx 2.0 properties and methods. * AppDomainSetup.cs: Added internal copy constructor. * DomainManagerInitializationFlags.cs: Fixed values. 2004-08-08 Sebastien Pouliot * AppDomainInitializer.cs: New Fx 2.0 class for AppDomain. * AppDomainManager.cs: New Fx 2.0 class for AppDomain. * ApplicationActivator.cs: New Fx 2.0 class for AppDomain. * ApplicationId.cs: New Fx 2.0 class. * ApplicationIdentity.cs: Fixed ToString. * DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain. 2004-08-05 Sebastien Pouliot * AppDomain.cs: Added a new icall, getDomainByID, to get the an AppDomain using it's Id. Completed SetAppDomainPolicy. * Environment.cs: Bumped mono_corlib_version to 23. 2004-08-02 Martin Baulig * DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable. 2004-07-29 Atsushi Enomoto * Environment.cs : GacPath on windows is based on mscorlib.dll, and now its location is changed. 2004-07-21 Lluis Sanchez Gual * Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the NET_2_0 profile. 2004-07-18 Martin Baulig * Array.cs: Ben Maurer implemented all the new generic methods here :-) 2004-07-17 Martin Baulig * Decimal.cs: Implement IComparable. 2004-07-17 Martin Baulig * Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable. 2004-07-13 Sebastien Pouliot * ActivationContext.cs: New class in Fx 2.0. Required for System.Security.Policy. * ApplicationIdentity.cs: New class in Fx 2.0. Required for System.Security.Policy. * IApplicationDescription.cs: New interface in Fx 2.0. Required for System.Security.Policy. * IHostContext.cs: New interface in Fx 2.0. Required for System.Security.Policy. 2004-07-12 Geoff Norton * DateTime.cs: Patch for bug #61112. Our DateTime wasn't roundtripping over timezone boundaries properly. This patch checkes ToLocalTime() to see if we're tripping over a boundary and will add/subtract the hour if needed 2004-07-07 Geoff Norton * Monotype.cs: Patch for bug #58844. Dont throw exceptions right away; pass through all the possibly BindingInfo's and keep a bool value as to the type of exception we might need to throw; 2004-07-07 Geoff Norton * Patch to fix bug #58973 2004-07-02 Jackson Harper * PlatformID.cs: New 2.0 values. 2004-06-25 Ben Maurer * Environment.cs: GetFolderPath has new behavior. r=miguel 2004-06-23 Sebastien Pouliot * DateTime.cs: Throw ArgumentOutOfRangeException if the year is bigger than 9999. Fix bug #41845. * FloatingPointFormatter.cs: Applied correction from Jon Skeet on the "R"eversible format for negative numbers. 2004-06-21 Jackson Harper * Decimal.cs: Make sure to use invariant culture when parsing floats stringified with the invariant culture. Patch by Rodrigo B. de Oliveira. 2004-06-19 Atsushi Enomoto * FloatingPointFormatter.cs : Literal string should be kept in the output. 2004-06-18 Atsushi Enomoto * DateTime.cs : Concatenating whitespace removal was not working fine. Modified FormatException message (1 cent kindness). 2004-06-18 Ben Maurer * Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs: new generics classes * IComparable.cs: add the new version. * EventHandler.cs: new version. 2004-06-18 Dick Porter * String.cs: The icall can cope with embedded \0 now. 2004-06-18 Atsushi Enomoto * DateTime.cs : - Added new common pattern "yyyy/M/dZ" - empty string should not be compared in _ParseEnum() - Use culture independent string comparison in _ParseString() - Whitespace removal should be checked after '..' token check (some pattern such like es-ES LongDatePattern contains spaces in '..'). - formats null check should be done (to throw ArgumentNullException) in ParseExact(). - When specified one character format, dates are incorrectly regarded as to use invariant culture. 2004-06-18 Gert Driesen * ArgIterator.cs: changed layout to Auto * DateTime.cs: changed layout to Auto 2004-06-18 Gert Driesen * DateTime.cs: CRLF to LF 2004-06-17 Sebastien Pouliot * Decimal.cs: Fixed regression in System.Data caused by the recent changes. Adapted (and moved) the code to correct the scale from SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where scale has no importance). 2004-06-17 Lluis Sanchez Gual * Activator.cs: In CreateInstance(), use Public|Instance if access binding attributes are omitted. 2004-06-17 Atsushi Enomoto * DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also check if the format character is valid. 2004-06-17 Atsushi Enomoto * DateTime.cs : AddDays(double) rounds the input. 2004-06-17 Atsushi Enomoto * DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime(). Fixed ToLocalTime() as well, but it does check range for MinValue. 2004-06-17 Atsushi Enomoto * DateTime.cs : Added overflow check in ToUniversalTime() and ToLocalTime(). Fixed bug #60253. 2004-06-16 Sebastien Pouliot * FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet source code (with permission). Fix (biggest) part of bug #60110. http://www.yoda.arachsys.com/csharp/floatingpoint.html 2004-06-15 Sebastien Pouliot * Decimal.cs: Fixed scale after Round (a different scale is correct from a math point of view but affect the string representation of the value). Note: other operations also have scale problems! * DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output. * FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's rounding (which is the rounding provided by Math.Round). This fix bug #60111. The code (new Round methods) should be moved elsewhere (as it may also be required elsewhere) post Mono 1.0. 2004-06-15 Gert Driesen * AppDomainSetup.cs: added TODO for serialization * ExecutionEngineException.cs: added missing serialization ctor * InvalidProgramException.cs: added missing serialization ctor * MulticastNotSupportedException.cs: added missing serialization ctor * ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET * Random.cs: fixed serialization compatibility with MS.NET 2004-06-15 Paolo Molaro * Type.cs: removed unused (and non-existing) icall type_is_instance. 2004-06-15 Gonzalo Paniagua Javier * Environment.cs: use internalGetHome instead of getting "HOME" as that variable may not be defined. 2004-06-14 Sebastien Pouliot * TimeSpan.cs: Fixed timespan with large values for hours or minutes (overflow is only checked for days but can also occurs in hours and minutes which uses Int32 when multiplying). The new results match MS implementation. 2004-06-14 Atsushi Enomoto * FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace them with matching NumberFormatInfo properties. 2004-06-14 Atsushi Enomoto * Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'. * FloatingPointFormatter.cs : Use NumberFormatInfo.NegativeSign. This change saves many XSLT test failures. Format Permille pattern (It is undocumented but actually available, and used in xsl:format-number). 2004-06-14 Raja R Harinath * Console.cs (Console.Write, Console.WriteLine): Disable __arglist version with BOOTSTRAP_WITH_OLDLIB. * String.cs (STring.Concat): Likewise. 2004-06-13 Atsushi Enomoto * FloatingPointFormatter.cs : - Don't format more than 15 fraction digits. Don't report to Pedro directly (removing the error message with his concent). - When format string starts with '.', it means integral part format is not specified. Ignore '.' characters after the first appearance. Fixed bug #59890. - 0.0 is formatted only before the third ';' appearance. 2004-06-11 Sebastien Pouliot * DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono" rounding logic which worked for FromOADate (while the newer didn't). * TimeSpan.cs: Now throw an OverflowException when the timespan is over MaxValue or under MinValue. 2004-06-11 Martin Baulig * Console.cs (Write, WriteLine): Implemented the varargs versions. 2004-06-11 Martin Baulig * String.cs (Concat): Implemented the varargs version. 2004-06-10 Sebastien Pouliot * Decimal.cs: Hacked the Parse method to allow the runtime C code to decode it properly (i.e. matching MS results). Fixed the Round method for negative decimal numbers (moved code from Math.cs). * Math.cs: Now use Decimal class for Round(Decimal,int). Required to fix a bug when rounding a negative decimal. 2004-06-11 Gonzalo Paniagua Javier * AppDomain.cs: set the _principal to null when changing the policy. * Console.cs: remove ClsCompliant attribute from a method marked as internal and added comment. 2004-06-10 Gert Driesen * Delegate.cs: marked protected fields private to match public API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl protected to fix public API * Enum.cs: marked ctor protected to match public API of MS.NET * MulticastDelegate.cs: marked DynamicInvokeImpl protected to match public API of MS.NET 2004-06-10 Atsushi Enomoto * DateTime.cs : Added more common patterns. 2004-06-09 Sebastien Pouliot * Decimal.cs: Fixed banker rounding by calling Math.Round. This won't be a performance winner (the actual Math code has a note to wait a better Decimal implementation) but it returns the correct results (without adding new code in corlib or the runtime). Fix #37744. 2004-06-09 Atsushi Enomoto * DateTime.cs : - A bunch of fixes (patch by Steven Brown). Fraction seconds are now represented as double. Strict token check for 'Z'. - Pattern validity check in GetDateTimeFormats(char). - Fixed pattern "yyyy/M/d HH:mm:ss". 2004-06-09 Sebastien Pouliot * Decimal.cs: Fixed remainder (and optimized some cases not to call unmanaged code). Simplified divide. Removed workaround for bug #59793. Fixed GetHashCode to return different result for X and -X. 2004-06-08 Atsushi Enomoto * DateTime.cs : - Now re-checked all common format patterns. They should be tried with both current culture and invariant culture. Since '/' covers '-', removed extraneous patterns. Added more common patterns such as "yyyy-MM-dd" and X509Certificate pattern (it is valid only after NET_1_1). Commented out 1 character format patterns. - The format patterns we should try should not be obtained by GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one character patterns), to handle UTC correctly. Examined patterns are changed, to 1) common patterns with specified (or current) culture, 2) common patterns with invariant, 3) The above "one character patterns" with specified (or current) culture. - When trying to parse some kind of patterns such as RFC1123, always use invariant DateTimeFormatInfo so that they can avoid parsing with culture-dependent calendar. - Check "GMT" only when doing Parse(). Don't it when ParseExact(). - Removed extraneous '-' case. It is not special one. - When ParseExact(), allow only '/' for '/' pattern character. - When Parse(), allow any non-letter & non-number characters. - When pattern is not fully parsed, reject that format. - Added "exact" parameter to some ParseExact(). - RFC1123 pattern is (again) now parsed in local time. I regressed some problems in previous fix. 2004-06-08 Sebastien Pouliot * Decimal.cs: Fixed cast to integer types to truncate (not round) the value. 2004-06-07 Duncan Mak * Exception.cs (Source): This can return null. 2004-06-07 Sebastien Pouliot * DateTime.cs: Fixed FromFileTime for negative values. Fixed constructor to limit range of milliseconds from 0,999. Fixed ToType method to work for object, string and DateTime. 2004-06-07 Sebastien Pouliot * DateTime.cs: Fixed OLE Automation date conversions: timezone insensitive, wrong exception in FromOADate, handling of Min/Max values, negative doubles where integer part is negative but decimals are positive! Charming format ;-) 2004-06-06 Sebastien Pouliot * String.cs: Fixed Join in case separator parameter is null. * TimeSpan.cs: Cache format errors during parsing and throw FormatException only if there was no overflow. 2004-06-06 Gert Driesen * MonoCustomAttrs.cs: fixed issue where an empty array was returned when GetCustomAttributes was invoked with null attribute type and there was only one result 2004-06-06 Sebastien Pouliot * Decimal.cs: Fixed ToString(String.Empty) to default ("G"). * Int16.cs: Fixed ToString(String.Empty) to default ("G"). * Int32.cs: Fixed ToString(String.Empty) to default ("G"). * Int64.cs: Fixed ToString(String.Empty) to default ("G"). * SByte.cs: Fixed ToString(String.Empty) to default ("G"). * UInt16.cs: Fixed ToString(String.Empty) to default ("G"). * UInt32.cs: Fixed ToString(String.Empty) to default ("G"). * UInt64.cs: Fixed ToString(String.Empty) to default ("G"). 2004-06-05 Sebastien Pouliot * Convert.cs: Fixed the convertion of negative integers (byte, short, int and long) into string in a specific base (2, 8, 10 or 16). 2004-06-04 Sebastien Pouliot * Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when the dividend is negative and the result is 0 (remainder). 2004-06-03 Sebastien Pouliot * Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]). 2004-06-02 Sebastien Pouliot * TimeSpan.cs: Fixed overflow issues when delaing with big (days) time spans. Fixed parsing when only days are presents in the string (which should be illegal according to the documentation but is supported). 2004-06-01 Sebastien Pouliot * TimeSpan.cs: Fixed exceptions in FromXXX methods as they are somewhat different from the documentation. 2004-06-01 Gert Driesen * Type.cs: added missing attributes on InvokeMember 2004-06-01 Miguel de Icaza * String.cs: Flag concat with four arguments internal. 2004-05-31 Sebastien Pouliot * Array.cs: Fixed legal case where value is null. * Byte.cs: Fixed ToString when format is an empty string (use "G"). * Guid.cs: Renamed private fields (and changed some to signed) to match MS implementation and allow serialization to work. Fix bug #59113. 2004-05-30 Gonzalo Paniagua Javier * DateTime.cs: adjust milliseconds for fraction specifier ('f'). 2004-05-30 Miguel de Icaza * Console.cs: Remove *again* the version of WriteLine with four arguments; That should *not* be added. Flag it as internal as people migrate their code. 2004-05-29 Sebastien Pouliot * Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw ArgumentNullException (only case, all other returns 0). Fixed exception reporting for hex prefix only strings. Fixed ChangeTo where null could be misinterpreted between null and Empty. 2004-05-28 Sebastien Pouliot * Convert.cs: Fixed integer parsing for special cases (0x, 0X for base 16), non-base 10 negative numbers ... see new unit tests. Fixed the case when we parse Int64.MinValue (positive doesn't fit a signed long). 2004-05-28 Jackson Harper * Environment.cs: Increment version number. 2004-05-28 Zoltan Varga * AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists. Fixes #59189. 2004-05-28 Atsushi Enomoto * DateTime.cs : I reverted my fix by accident :( 2004-05-28 Atsushi Enomoto * DateTime.cs : - In ToString(), Don't use culture-dependent daynames to format Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'. - Fixed GetDateTimeFormats () that generated incorrect 'U' value (since the format string is the same as 'F'). 2004-05-28 Atsushi Enomoto * DateTime.cs : don't adjust utc value in ToString(). It must output the same time value, just adding 'Z' for UTC. 2004-05-28 Atsushi Enomoto * DateTime.cs : in 'Z' case, remove the 'Z' char from input before proceeding. 2004-05-28 Gonzalo Paniagua Javier * AppDomainSetup.cs: InitAppDomainSetup is not needed now. 2004-05-27 Sebastien Pouliot * Byte.cs: Fixed parsing for "-0" which is valid for unsigned types. * Convert.cs: Convert with a base parameter cannot parse negative string numbers, even "-0". * UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types. * UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types. * UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types. 2004-05-27 Atsushi Enomoto * DateTime.cs : - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'" to common formats (yes, I know it is nothing more than hack) - Fixed some GetDateTimeFormats() that just returned patterns. - For InvariantCulture, now try both supported formats and our predefined formats. - It was accepting incorrectly extraneous characters. That caused some UTC/non-UTC bug. - RFC1123 string should return universal time. Uncomment again (the problem should went away because of the extra characters fix above. With some of the changes above, fixed bug #47720. 2004-05-27 Atsushi Enomoto * DateTime.cs : quick revert 'Z' support for certificate verifications. 2004-05-26 Sebastien Pouliot * Array.cs: Removed duplicate condition if LastIndexOf. 2004-05-26 Atsushi Enomoto * DateTime.cs : - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns". (Fixed bug #58938.) - As a quick remedy to accept more patterns, Parse() now also tries InvariantInfo patterns (this is because we have no more than one pattern for each pattern component.) - In _DoParse(), 'Z' should not be read as timezone specifier. Some culture uses 'Z' as AM/PM designer, and it should be recognized as part of the UTCpattern (if it actually UTC pattern for the culture contains 'Z'). 2004-05-26 Gert Driesen (drieseng@users.sourceforge.net) * MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS seems to allow multiple attributes with AllowMultiple at runtime. 2004-05-26 Sebastien Pouliot * Byte.cs: Throw an OverflowException for negative numbers. * Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings. * Environment.cs: Bumped mono_corlib_version to 20 (rng interface). 2004-05-25 Sebastien Pouliot * Array.cs: Fixed possible integer overflow. * BitConverter.cs: Fixed a possible integer overflow in ToString. * Guid.cs: Added an internal method to create a random Guid without using CryptoConfig (which is heavy on first use). This is only used in S.R.E.ModuleBuilder to speedup MCS compilation. * String.cs: Fixed reported exception for PadLeft|Right. Fixed possible integer overflow in methods that takes index and count as parameters. 2004-05-25 Zoltan Varga * String.cs: Add new Strcpy icalls which take a char array as parameter. 2004-05-25 Atsushi Enomoto * DateTime.cs : added more invariant format patterns. This should really fix bug #57656. 2004-05-25 14:14 CET Patrik Torstensson * BitConverter.cs (ToBoolean): Return true or false instead of unsafe returing byte as bool. Fixes bug #58874. 2004-05-25 Atsushi Enomoto * DateTime.cs : In ToString(string, IFormatProvider), use "G" if string format argument is null. 2004-05-25 Lluis Sanchez Gual * Version.cs: Rename of data fields to match those in Microsoft.NET. Patch by PAF@design.ru. 2004-05-25 Gonzalo Paniagua Javier * DateTime.cs: allow double quotes in the formats. Don't set next_not_digit to true in presence of single or double quotes. Patch by Martin Probst. 2004-05-24 Zoltan Varga * AppDomainSetup.cs (InitAppDomainSetup): This one returns void. 2004-05-23 Sebastien Pouliot * Array.cs: Fixed exception when we try to Clear outside bounds. * Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874). * BitConverter.cs: Fixed negative index and integer overflow in To... methods. * Buffer.cs: Fixed integer overflow in BlockCopy. 2004-05-22 Sebastien Pouliot * Array.cs: Clear can now work on multidimentional arrays. * IntPtr.cs: We now only accept 32bits values in the long constructor unless we're on a 64 bits machine. * UIntPtr.cs: We now only accept 32bits unsigned values in the ulong constructor unless we're on a 64 bits machine. 2004-05-22 Duncan Mak * Convert.cs: The file was mostly in DOS endings already, for the sake of consistency, converted it all to DOS endings. (ToType): When value is null, immediately return null and don't ever throw a NullReferenceException. When conversionType is null, throw an InvalidCastException. Give a better error message when attempting to convert to a DBNull as well. 2004-05-21 Sebastien Pouliot * Decimal.cs: Fixed To... methods that needs to trunk the integer part of Decimal (and not use the banker's rounding like Convert.To...). * Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt to NaN compares (see new unit tests). 2004-05-20 Sebastien Pouliot * Convert.cs: Added checks for integer overflow for From|ToBase64Char. Also fixed the case where wide (16 bits) characters were converted to bytes. 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net) * ThreadStaticAttribute.cs * ContextStaticAttribute.cs * FlagsAttribute.cs * ObsoleteAttribute.cs : now that Inherited is false by default on AttributeUsageAttribute (as it should be) we need to explicitly set Inherited to false for those attributes should it be be false. 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net) * AttributeUsageAttribute.cs: Inherited property should be true by defaultrs.cs: respect Inherited property, and 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net) * MonoCustomAttrs.cs: respect Inherited property, and AllowMultiple property of a CustomAttribute. This fixes a major issue we had with respect to custom attributes. 2004-05-19 Gert Driesen (drieseng@users.sourceforge.net) * MonoType.cs: throw ArgumentNullException when type parameter in GetCustomAttributes(Type, bool) is null 2004-05-18 Sebastien Pouliot * Buffer.cs: Added checks for null source and destination. Fix failing CryptoStream unit test. * Guid.cs: Fixed thread-safety issue. Simplified implementation to use pseudo-random numbers to generate GUIDs (as per section 3.4 of the spec). This removes the TODO to get the computer MAC address and the chances to get a duplicate GUID (across different machines). 2004-05-17 Andreas Nahr * TimeSpan.cs: Only catch expected exceptions, if we get other exceptions than OverflowExceptions then something went wrong internally 2004-05-17 Andreas Nahr * Char.cs: Fix long standing bug with ToLower/ToUpper not being culture - sensitive 2004-05-14 Zoltan Varga * Buffer.cs: Optimize BlockCopy. * Environment.cs: Bump corlib version. 2004-05-14 Atsushi Enomoto * __ComObject.cs : This class is not regarded as CLSCompliant by csc. See also bug #58478. 2004-05-14 Gonzalo Paniagua Javier * AppDomainSetup.cs: don't throw an exception if dynamic_base has not been set. Just return null as MS. Fixes bug #58120. 2004-05-14 Marek Safar * Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs, Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs, Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs, String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed useless [CLSCompliant (false)] 2004-05-13 Sebastien Pouliot * __ComObject.cs: To please corcompare (no implementation). 2004-05-13 Zoltan Varga * Environment.cs: Bump corlib version. 2004-05-13 Sebastien Pouliot * Environement.cs: Removed two security attributes for CurrentDirectory that weren't documented (and anyway we don't support them). 2004-05-11 Andreas Nahr * Char.cs: Fix exceptions 2004-05-11 Lluis Sanchez Gual * MissingMemberException.cs: Fix in serialization constructor. 2004-05-10 Gonzalo Paniagua Javier * Environment.cs: GetGacPath return value is resolved at runtime on windows. 2004-05-07 Sebastien Pouliot * Convert.cs: ToBase64CharArray method was depending on a bug in S.S.C.ToBase64Transform class to work. Added an internal method to provide the same functionality (multiple block processing). 2004-05-06 Jackson Harper * Environment.cs: Make $HOME the personal directory. 2004-05-06 Sebastien Pouliot * Convert.cs: ToBase64String method was depending on a bug in S.S.C.ToBase64Transform class to work. Added an internal method to provide the same functionality (multiple block processing). 2004-05-05 Sebastien Pouliot * Environment.cs: Completed OSVersion property. * Version.cs: Added internal CreateFromString() to "try" to build the best version number form the specified string. 2004-05-01 Andreas Nahr * TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch. Fixes several potential bugs and makes things way faster. 2004-05-01 Andreas Nahr * TimeSpan.cs: Formatting changes 2004-04-29 Ben Maurer * Activator.cs: change _flags to a const. * IntegerFormatter.cs: make tables readonly. * Convert.cs: tables readonly * DateTime.cs: ditto. * IntPtr.cs: avoid a cctor. 2004-04-29 Jackson Harper * MonoType.cs: * Type.cs: NET_2_0 now instead of 1_2. 2004-04-29 Gonzalo Paniagua Javier * Environment.cs: implemented GetLogicalDrives. 2004-04-28 Miguel de Icaza * Applied patch from Atsushi Enomoto that allows Synchronized writers to have a `dont close' flag, this fixes 52094 2004-04-29 Lluis Sanchez Gual * MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not return the method if it is private (it did until now because of a bug). Make sure it works as it worked before the fix. * Type.cs: Implemented FilterAttribute delegate. 2004-04-28 Andreas Nahr * IntegerFormatter.cs: Prevent the use of the explicit static constuctor 2004-04-27 Andreas Nahr * IntegerFormatter.cs: Made functions internal (needed by other patches) 2004-04-27 Lluis Sanchez Gual * DateTime.cs: TODO cleaning. * Delegate.cs: GetObjectData should be virtual. * IntegerFormatter.cs: Method factorization. I don't want to fix bugs in 30 methods almost identical. * MulticastDelegate.cs: Implemented GetObjectData. 2004-04-26 Jackson Harper * Environment.cs: Things going bump in the night. 2004-04-25 Miguel de Icaza * Convert.cs (toBase64Transform): Make private. 2004-04-25 Andreas Nahr * Convert.cs: * Decimal.cs: * DecimalFormatter.cs: * FloatingPointFormatter.cs: Call invariant Char functions * Guid.cs: Call invariant Char and String functions * String.cs: Call invariant Char functions 2004-04-25 Andreas Nahr * String.cs: Refactored the Invariant ToXXX into its own internal methods so they are directly callable within corlib (can prevent early construction of CultureInfo, InvariantCulture and related classes) 2004-04-24 Andreas Nahr * String.cs: Managed impl. of Invariant parts of ToLower, ToUpper * Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper 2004-04-24 Andreas Nahr * String.cs: Check for null values 2004-04-23 Peter Bartok * Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo will do a better fix in the future, but this way apps can at least use it. 2004-04-23 Sebastien Pouliot * Environment.cs: Better support for GetFolderPath (same results as MS on Windows). 2004-04-22 Lluis Sanchez Gual * Activator.cs: Removed TODOs for finished methods. * AppDomainSetup.cs: When setting a relative path to ApplicationBase, it must be relative to the current directory, not the temp directory. Implemented DynamicBase. * Convert.cs: No need to create a ToBase64Transform instance at every call to ToBase64CharArray. * DateTime.cs: Implemented missing methods FromFileTimeUtc and ToFileTimeUtc. * Decimal.cs: Implemented FromOACurrency and ToOACurrency. * Delegate.cs: Removed class TODO. * IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc methods. * Type.cs: Removed TODOs for things already implemented. 2004-04-21 Lluis Sanchez Gual * Char.cs: Implemented culture-dependent ToLower and ToUpper methods. * MulticastDelegate.cs: Removed unused code. 2004-04-19 Lluis Sanchez Gual * AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase. * Array.cs: Removed some TODOs in CreateInstance and IndexOf. * BadImageFormatException.cs: TODO reformat. * DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats. * DelegateSerializationHolder.cs: Made class internal. * Enum.cs: Removed TODO for localization, since this is something that has to be done for all classes. * Environment.cs: Removed TODO. * Exception.cs: Changed ToString to use StringBuilder. * MonoDummy.cs: Made class internal. * UnitySerializationHolder.cs: Added support for modules. 2004-04-16 David Sheldon * DecimalFormatter.cs: Don't append a decimal point after the end of a number. ((decimal)1).ToString("P0") should be "100 %", not "100. %" 2004-04-09 Miguel de Icaza * OutOfMemoryException.cs: Removed the call to Locale.GetText from this. 2004-04-10 Gert Driesen (drieseng@users.sourceforge.net) * MonoDummy.cs: added MonoTODO to make sure we remove this class when its no longer needed 2004-04-09 David Sheldon * Convert.cs: Allow + signs in strings for ToInt32, and - if it is base 10. 2004-04-08 Atsushi Enomoto * Nullable.cs : usingdecl should also be conditional. 2004-04-07 Martin Baulig * Nullable.cs: New file. 2004-04-07 Martin Baulig * Type.cs (Type.GetGenericArguments): Make this abstract. 2004-04-07 Jackson Harper * Environment.cs: Increase corlib version number. 2004-04-07 Gonzalo Paniagua Javier * Environment.cs: (ExpandEnvironmentVariables): on windows, env. vars. are case insensitive. 2004-04-06 Sebastien Pouliot * AppDomain.cs: Added static to [ThreadStatic] _principal field. Removed [ThreadStatic] for _principalPolicy (not required). 2004-04-06 Miguel de Icaza * Guid.cs: Flag as Sequential. 2004-04-02 Dick Porter * String.cs: More sanity checks in Replace(). Fixes bug 55822. 2004-04-02 Sebastien Pouliot * Environment.cs: Implement ExpandEnvironmentVariables static method. Now call the runtime to get the username (fix #56144). 2004-04-02 Gonzalo Paniagua Javier * MonoType.cs: AssemblyQualifiedName now displays culture, version... Fixes bug #56341. 2004-03-29 Miguel de Icaza * Console.cs: If we fail to open stdin/stdout/stderr, create readers with a NullStream. This can happen if our caller does not setup stdin/stoud/stderr file handles. #56158 exposed this, but it will happen elsewhere. 2004-03-29 Lluis Sanchez Gual * Convert.cs: In ToSingle(double), removed checks for Single.MaxValue and Single.MinValue. MS.NET don't do it. This fixes bug #56005. * Guid.cs: Added support for guid strings in the "N" and "P" formats in the constructor. This fixes bug #54019. 2004-03-23 Lluis Sanchez Gual * FloatingPointFormatter.cs: Made the class thread safe. Had to move some internal variables to structures that are moved around methods. Factorized some common formatting code into FormatNumberInternal. 2004-03-23 Dick Porter * DateTime.cs: Allow any character for DateSeparator when parsing, except TimeSeparator, a digit or a letter. Fixes bug 54047. Also deleted the previous fix for 54721, because this covers it too. 2004-03-23 Dick Porter * DateTime.cs: Check the date string for too many digits when parsing. Fixes bugs 53023 and 53025. 2004-03-22 Dick Porter * String.cs: Use the provider when converting strings to other types. * DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing formats. Fixes bug 54721. 2004-03-22 Andreas Nahr * Console.cs: Styled, optimized calls * CrossAppDomainDelegate.cs: Small header fix * Buffer.cs: Style, improve errors * BitConverter.cs: Style, improve errors, remove obsolete comment * Attribute.cs: Style, improve errors, small fix * Array.cs: Style, improve errors, small fix, added TODOs * Activator.cs: Style, localized errors, added error checks * Byte.cs: Style, localized errors, fixed wrong exception parameters * Char.cs: Style * Boolean.cs: Style * AppDomainSetup.cs: Style * AppDomain.cs: Style, implemented two methods (redirect) 2004-03-21 Jackson Harper * FloatingPointFormatter.cs: Set precision from number format info when it is not specified. This fixes bug #54983. 2004-03-18 Nick Drochak * Math.cs: Use IsNaN() method not "x == NaN". 2004-03-16 Andreas Nahr * EntryPointNotFoundException.cs * DuplicateWaitObjectException.cs * DllNotFoundException.cs * DivideByZeroException.cs * ContextMarshalException.cs * CannotUnloadAppDomainException.cs * BadImageFormatException.cs * ArrayTypeMismatchException.cs * ArithmeticException.cs * ArgumentOutOfRangeException.cs * ArgumentNullException.cs * ArgumentException.cs * ApplicationException.cs * AppDomainUnloadedException.cs: Added missing HResult overrides * BadImageFormatException.cs: Improved/ Fixed implementation 2004-03-15 Sebastien Pouliot * Random.cs: Corrected random value when Next is called with a negative value. Testing indictae that our results aren't exactly the same as MS, we have a +/- 1 (probably rounding errors due to different implementation). 2004-03-15 Gonzalo Paniagua Javier * Environment.cs: updated corlib version. 2004-03-15 Lluis Sanchez Gual * Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal field "value" to "m_value", so it is interoperable with MS.NET when serializing and deserializing data. Based on the patch from Daniel Keep. 2004-03-14 Andreas Nahr * TypeInitializationException.cs * SystemException.cs * StackOverflowException.cs * RankException.cs * OverflowExceptionException.cs * OutOfMemoryException.cs * NullReferenceException.cs * NotSupportedException.cs * NotFiniteNumberException.cs * InvalidOperationException.cs * InvalidCastException.cs * IndexOutOfRangeException.cs * FormatException.cs * ExecutionEngineException.cs: improved parameter names 2004-03-13 Andreas Nahr * Enum.cs * EntryPointNotFoundException.cs * DuplicateWaitObjectException.cs * DoubleFormatter.cs * DllNotFoundException.cs * DivideByZeroException.cs * DelegateSerializationHolder.cs * Delegate.cs * DBNull.cs * ContextStaticAttribute.cs * ContextMarshalException.cs * ContextBoundObject.cs * CLSCompliantAttribute.cs * CharEnumerator.cs * CannotUnloadAppDomainException.cs * BadImageFormatException.cs * AttributeUsageAttribute.cs * AttributeTargets.cs * AsyncCallback.cs * AssemblyLoadEventHandler.cs * AssemblyLoadEventArgs.cs * ArrayTypeMismatchException.cs * ArithmeticException.cs * ArgumentOutOfRangeException.cs * ArgumentNullException.cs * ArgumentException.cs * ArgIterator.cs * ApplicationException.cs * AppDomainUnloadedException.cs * AppDomain.cs: Mono styled, fixed exceptions/ locales removed excess usings 2004-03-10 Sebastien Pouliot * Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and spaces) which fixed #54939. Changed the way that the length is validated (multiple of 4) because the ignored characters must not be included in the count. 2004-03-10 Andreas Nahr * String.cs: Monostyled 2004-03-09 Jackson Harper * Char.cs: Only use a byte for numeric data. 2004-03-09 Andreas Nahr * TypedReference.cs: Added missing Attributes * ParamArrayAttribute.cs: Small style fix * OperatingSystem.cs: Added .Net 1.1 member 2004-03-09 Andreas Nahr * FieldAccessException.cs * FormatException.cs * InvalidCastException.cs * InvalidOperationException.cs * MemberAccessException.cs * MethodAccessException.cs * MissingFieldException.cs: Locale strings * MissingMemberException.cs: Locale strings * MissingMethodException.cs: Locale strings * NotFiniteNumberException.cs * NotImplementedException.cs * NotSupportedException.cs * NullReferenceException.cs * ObjectDisposedException.cs * OutOfMemoryException.cs * OverflowExceptionException.cs * PlatformNotSupportedException.cs * RankException.cs: Added missing HResult overrides 2004-03-09 Andreas Nahr * RuntimeTypeHandle.cs * RuntimeMethodHandle.cs * RuntimeFieldHandle.cs: Implemented serialization (partially untested) 2004-03-09 Andreas Nahr * EventArgs.cs * Exception.cs * ExecutionEngineException.cs * FieldAccessException.cs * FormatException.cs * GC.cs * Guid.cs * IndexOutOfRangeException.cs * IntPtr.cs * InvalidCastException.cs * InvalidOperationException.cs * InvalidProgramException.cs * IServiceProvider.cs * LoaderOptimization.cs * LoaderOptimizationAttribute.cs * MarshalByRefObject.cs * Math.cs * MemberAccessException.cs * MethodAccessException.cs * MissingFieldException.cs * MissingMemberException.cs * MissingMethodException.cs * MultiCastDelegate.cs * MulticastNotSupportedException.cs * NonSerializedAttribute.cs * NotFiniteNumberException.cs * NotImplementedException.cs * NotSupportedException.cs * NullReferenceException.cs * ObjectDisposedException.cs * ObsoleteAttribute.cs * OperatingSystem.cs * OutOfMemoryException.cs * OverflowExceptionException.cs * PlatformID.cs * PlatformNotSupportedException.cs * Random.cs * RankException.cs * ResolveEventArgs.cs * ResolveEventHandler.cs * RuntimeFieldHandle.cs * RuntimeMethodHandle.cs * RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales removed excess usings 2004-03-08 Andreas Nahr * SystemException.cs: Exceptions set the HResult * TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage * SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException 2004-03-08 Andreas Nahr * TypedReference.cs * TypeLoadException.cs * TypeInitializationException.cs * TypeCode.cs * TimeZone.cs * ThreadStaticAttribute.cs * SystemException.cs * STAThreadAttribute.cs * StackOverflowException.cs * SingleFormatter.cs * Single.cs * SerializableAttribute.cs: Mono styled, fixed exceptions/ locales removed excess usings 2004-03-08 Andreas Nahr * UnauthorizedAccessException.cs: Exceptions set the HResult * UInt64.cs: Implemented two missing methods * UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert * UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert 2004-03-08 Andreas Nahr * WeakReference.cs * Void.cs * Version.cs * ValueType.cs * UnitySerializationHolder.cs * UnhandledExceptionEventHandler.cs * UnauthorizedAccessException.cs * UIntPtr.cs * UInt64.cs * UInt32.cs * UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes 2004-03-04 Lluis Sanchez Gual * Environment.cs: Bump corlib version. 2004-03-04 Jackson Harper * Char.cs: New managed implementation. Modified patch by Andreas Nahr. 2004-02-27 Lluis Sanchez Gual * String.cs: Concat() fixed crash when one of the arguments is an object whose ToString() method returns null. * TypeLoadException.cs: Added some serialization fiels, needed for compatibility with MS.NET. 2004-02-23 Ben Maurer * String.cs (Equals): Speed up this method by avoiding Array Bounds Checks and by comparing by 32 bit words rather than 16 bit chars. This gives between 0x (for 1 char) and >2x (for large strings) factor of improvement. A big thanks to Miguel, who suggested the integer compares. 2004-02-23 Gonzalo Paniagua Javier * MonoType.cs: use the binder in GetPropertyImpl. 2004-02-22 Andreas Nahr * Math.cs: MonoStyled, replaced space with tabs, speedup of some methods by avoiding method calls 2004-02-18 Atsushi Enomoto * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit(). (Moved from InternalCall to Managed code). 2004-02-17 Martin Baulig * MonoType.cs (GetConstructors): Renamed the interncall to GetConstructors_internal(), made it internal and added a `Type reflected_type' argument to it. (GetEvents, GetFields): Likewise. (GetMethodsByName): Added `Type reflected_type' argument. (GetPropertiesByName): Likewise. 2004-02-16 Jackson Harper * FloatingPointFormater.cs: Allow precision to be up to the number of decimals without rounding. 2004-02-14 Zoltan Varga * Delegate.cs (Equals): Do not compare method_ptr, since it might point to a trampoline. 2004-02-12 Jackson Harper * AppDomainSetup.cs: If relative paths are used they should be rooted in the temp directory. 2004-02-11 Marek Safar * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup. 2004-02-10 Zoltan Varga * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to avoid an assert in the runtime. 2004-02-08 Duncan Mak * Convert.cs (ToType): Always let a Convert.ChangeType call succeed if the source object is already of the destination type. Patch by Ian MacLean (ianm@activestate.com). 2004-02-05 Sebastien Pouliot * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal. 2004-02-02 Zoltan Varga * Environment.cs: Bump corlib version. 2004-02-02 Sebastien Pouliot * DateTime.cs: Corrected support for "Z" in the mask (Parse). This fix bug #53461. 2004-01-27 Sebastien Pouliot * Exception.cs: Changed ToString to remove the \n when no stack trace is present (which fixed a unit test for SecurityException). Changed all \n to Environment.NewLine. 2004-01-27 Lluis Sanchez Gual * ContextBoundObject.cs: Removed TODO. 2004-01-22 Gonzalo Paniagua Javier * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays (double), which might round up. 2004-01-19 Jackson Harper * FloatingPointFormatter.cs: Use the default decimal digits count if they are not specified. This fixes bug #52927. 2004-01-19 Zoltan Varga * Environment.cs: Bump version number. 2004-01-19 Lluis Sanchez Gual * Type.cs: Added internal call for IsInstanceOfType. The old implementation uses IsAssignableFrom(o.GetType()), which is not always valid for transparent proxies (because GetType will not return the type of the remote object if its assembly is not present). 2004-01-18 David Sheldon * FloatingPointFormatter.cs: Skip the decimal point if we have an integer mantassa. So: 1E+15, rather than 1.E+15. 2004-01-18 David Sheldon * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, even though docs say it should be an ArgumentNull. Two test cases now pass. See also nickd's commit of 2003-12-24. 2004-01-16 Gonzalo Paniagua Javier * Environment.cs: increased corlib version. 2004-01-14 Lluis Sanchez Gual * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't be reused because they could be modified. This fixes bug #52655. 2004-01-12 Patrik Torstensson * Environment.cs: Bump corlib version number due to new StringBuilder * String.cs: New internal method to support the new StringBuilder that uses the string as a buffer (until ToString is called) 2004-01-12 Zoltan Varga * Environment.cs: Bump corlib version number for real this time. * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to the runtime, so it can take into account the Culture etc. * Environment.cs: Bump corlib version number. 2004-01-12 Gonzalo Paniagua Javier * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a new parameter with the method name and a boolean for ignoring case. Removed some string comparisons no longer needed. 2004-01-11 Gonzalo Paniagua Javier * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a new parameter with the property name and a boolean for ignoring case. Fixes bug #52753. 2004-01-11 David Sheldon * DateTime.cs: Correct processing of formats with multiple '-'s, fixing bug 52274. 2004-01-10 Zoltan Varga * AppDomain.cs: Keep track of type resolve and assembly resolve events in progress to prevent infinite recursion. 2004-01-06 Miguel de Icaza * Console.cs: Test for UTF-8 being present anywhere on the string, also do ToUpper instead of ToLower, which will work even around the ICU bug with different locales (#52065), and addresses #52101 2004-01-05 Zoltan Varga * Environment.cs: Bump version. 2003-12-24 Ben Maurer * Type.cs (IsNotPublic): One would normally assume that IsNotPublic == !IsPublic, but this is not the case (note to MS, make better names ;-). Fixes #52547, `Type.IsNotPublic not correct for Nested types' 2003-12-24 Nick Drochak * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, even though docs say it should be an ArgumentNull. Sent email to MS about this "bug". 2003-12-23 Lluis Sanchez Gual * Exception.cs: Several changes to make it compatible with MS.NET (needed for remoting interoperability): set a default value for hresult, added initialization of class_name, serialization field RemoteStackTrace must be RemoteStackTraceString, added ser. field ExceptionMethod. * IndexOutOfRangeException.cs: Added serialization constructor. 2003-12-22 Bernie Solomon * Int32 (Parse): Int64 (Parse): Fix overflow checking for AllowHexSpecifier 2003-12-20 Zoltan Varga * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the user supplied no parameter info, but not when the user supplied an empty parameter list. This fixes IKVM. * Environment.cs: Bump corlib version. 2003-12-19 Dick Porter * String.cs: Added Compare shortcut for length==0. 2003-12-17 Zoltan Varga * Environment.cs: Bump corlib version. 2003-12-17 Dick Porter * String.cs: Fix StartsWith and EndsWith when the argument is the empty string. Fixes bug 52283. 2003-12-16 Zoltan Varga * Environment.cs (HasShutdownStarted): Implement. 2003-12-15 Zoltan Varga * Environment.cs (HasShutdownStarted): Make this static under NET 1.1. * Environment.cs: Bump version number. 2003-12-15 Gonzalo Paniagua Javier * DateTime.cs: don't bail out with that year out of range error on stuff like "MM/dd/yyyy HH:MM:ss". 2003-12-13 Zoltan Varga * Environment.cs: Make it a const instead. * Environment.cs: Make version field static. 2003-12-10 Zoltan Varga * Type.cs: Make DefaultBindingFlags protected. * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org). Add new GacPath property + its associated icall. 2003-12-09 Anirban Bhattacharjee * DateTime.cs : Bugs fixed (41845, 51422) * MonoType.cs : Exception message changed 2003-12-08 Martin Baulig * Type.cs (MakeByRefType): New public method. 2003-12-08 Zoltan Varga * Environment.cs: Add a version number for the corlib-runtime interface to make it easier to diagnose problems resulting from a mismatch between the two. 2003-12-08 Patrik Torstensson * Type.cs (GetMethod): Check type arguments within array * MonoType.cs (GetMethodImpl): Handle methods with a new slot (same signature but different classes (derived level) 2003-12-07 Zoltan Varga * Type.cs (MakeArrayType): Add argument checking. 2003-12-06 Dick Porter * String.cs: Don't use CompareInfo for non-culture-sensitive IndexOf and LastIndexOf methods. 2003-12-06 Ravindra * DateTime.cs: Made Parse(string, IFormatProvider) method to use second argument. Fixed bug #51464. 2003-12-04 Martin Baulig * Type.cs (Type.MakeArrayType): New public method. 2003-12-04 Gonzalo Paniagua Javier * Buffer.cs: (BlockCopy): make the exception thrown helpful. 2003-12-03 Dick Porter * String.cs: Calling Replace on an empty string returns itself. 2003-12-03 Zoltan Varga * MonoType.cs: Get rid of get_type_info, use a separate icall for each property instead. 2003-12-02 Dick Porter * Decimal.cs: Fix NumberFormatInfo lookup. Patch by Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443. 2003-12-01 Dick Porter * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith, Replace, ToLower, ToUpper and Equals use the correct CultureInfo. 2003-11-28 Dick Porter * Type.cs: * MonoType.cs: * Enum.cs: * Boolean.cs: Do string compares with the Invariant culture. 2003-11-27 Ben Maurer * Array.cs: make the enumerator ICloneable 2003-11-27 Ben Maurer * Decimal.cs (ToXXX): Call Convert.ToXXX. 2003-11-26 Zoltan Varga * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). Implement Load(byte[]) methods. * BadImageFormatException.cs: Fix ToString. 2003-11-24 Zoltan Varga * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and GetConstructor, as done by MS. 2003-11-19 Andreas Nahr * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings 2003-11-18 Lluis Sanchez Gual * TypeInitializationException.cs: Added missing serialization constructor. 2003-11-18 Gonzalo Paniagua Javier * AppDomainSetup.cs: Don't add an extra '/' at the end of ApplicationBase. The tests pass now with mono. 2003-11-18 Zoltan Varga * ValueType.cs: New optimized implementation for Equals and GetHashCode. 2003-11-15 Gonzalo Paniagua Javier * Environment.cs: use Directory in CurrentDirectory property. We were not throwing any exception when setting the directory to an invalid path. 2003-11-14 Gonzalo Paniagua Javier * Array.cs: * Delegate.cs: implemented 1.1 stuff. * Enum.cs: * IntPtr.cs: removed extra attribute. * PlatformID.cs: added WinCE. 2003-11-14 Gonzalo Paniagua Javier * ValueType.cs: (Equals): compare the fields of structs too. (GetHashCode): combine the hash code of all the fields. Fixes bug #50901 (will remove the icall in a couple of days). 2003-11-14 Gonzalo Paniagua Javier * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968. 2003-11-14 Gonzalo Paniagua Javier * DateTime.cs: handle century when we try to parse 4-digit years and only 2 digits are present. Fixes bug #49394. 2003-11-13 Miguel de Icaza * Console.cs: On utf-8 consoles, use unmarked output. 2003-11-13 Andreas Nahr * IAppDomainSetup.cs: * _AppDomain.cs: * Object.cs: * Type.cs: Added missing attribute 2003-11-12 Lluis Sanchez Gual * Environment.cs: Added internal method for getting the path to machine.config. 2003-11-12 Jackson Harper * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder enum. This fixes the SWF build. 2003-11-12 Miguel de Icaza * PlatformID.cs: Remove Unix platform, we cant expose constants that are not in the framework. * OperatingSystem.cs: Adjust for the breakage. * RuntimeMethodHandle.cs: Fix signature. * Double.cs: Fix signature of TryParse. * String.cs (Concat (object, object, object, object)): Add missing method. * OperatingSystem.cs: Removed Equals, GetHashCode, they were not in the .NET Framework. * Enum.cs: Hide constructor. Fix ToUint16 to be explicitly implemented. * Console.cs: Add couple of extra missing methods (Write and WriteLine overloaded) 2003-11-11 Miguel de Icaza * AppDomain.cs, Activator.cs: New unimplmented entry points from 1.1 (Com activation related). * Exception.cs: Formatting. * IServiceProvider.cs: Add ComVisible (true). * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 2003-11-03 Lluis Sanchez Gual * AppDomain.cs: Added some null checks in Load methods. This fixes bug #50356. 2003-11-01 Zoltan Varga * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke on MonoMethod instead of Invoke. 2003-11-01 Pedro Martínez Juliá * DateTime.cs: Fixed Add* methods handling. Now it works properly with extreme values (there is a bug with Overflow and Underflow in long type). 2003-10-31 Pedro Martínez Juliá * DateTime.cs: Fixed a few format bugs. 2003-10-31 Zoltan Varga * AppDomain.cs (InternalPushDomainRef): New icalls. * AppDomain.cs (InvokeInDomain): New method to execute code in a different appdomain. 2003-10-27 Zoltan Varga * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload. 2003-10-25 Zoltan Varga * AppDomain.cs (IsFinalizingForUnload): Implement. * AppDomain.cs (Unload): Move the notification of OnUnload listeners to unmanaged code. 2003-10-25 Martin Baulig * MonoType.cs: Don't make this sealed. 2003-10-24 Zoltan Varga * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls. 2003-10-24 Pedro Martínez Juliá * DateTime.cs: When handling '-' as a date separator, MS.NET uses the same symbol in the parse (not DateTimeFormatInfo.DateSeparator). 2003-10-22 Dick Porter * DateTime.cs: Handle '-' as a date separator when parsing formats. 2003-10-20 Duncan Mak * Delegate.cs (CreateDelegate): Avoid creating an extra Type array and merge the two iterations into one. 2003-10-15 Zoltan Varga * TypedReference.cs: Add new field used by the runtime. 2003-10-15 Martin Baulig * Type.cs (Type.DeclaringMethod): For a generic method's type parameter, return this method - otherwise, return null. 2003-10-14 Martin Baulig The generics API has changed in the spec since it was added here; these modifications make it match the spec again. * Type.cs (GetGenericParameters): Renamed to `GetGenericArguments'. (HasGenericParameters): Renamed to `HasGenericArguments'. (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'. (IsGenericTypeDefinition): New property. (IsUnboundGenericParameter): Renamed to `IsGenericParameter'. * MonoType.cs (ContainsGenericParameters): Implement this here; this is no interncall anymore. 2003-10-14 Gonzalo Paniagua Javier * Delegate.cs: add the method name to the exception when it cannot be bound. * Exception.cs: fix nullref in Source. 2003-10-10 Zoltan Varga * Array.cs: Add argument checking to GetValue and SetValue. 2003-10-09 Miguel de Icaza * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue should not be TimeSpan.MaxValue, because it overflow. Set this to be MAX_VALUE_TICKS 2003-10-09 Gonzalo Paniagua Javier * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a duplicate entry exception. 2003-10-08 Ben Maurer * DateTime.cs (ToString): Total rewrite, fixes #49358. 2003-10-03 Zoltan Varga * AppDomain.cs: Change accessibility of DoTypeResolve to fix build. 2003-10-03 Gonzalo Paniagua Javier * Enum.cs: (Equals): check that the object is an Enum before comparing the types. 2003-09-30 Gonzalo Paniagua Javier * Array.cs: reduced xsp allocated memory by 1/2. 2003-09-25 Martin Baulig * Type.cs (Type.IsGenericTypeDefinition): Removed this method since it was identical to GetGenericTypeDefinition(). (Type.IsGenericInstance): New property. 2003-09-24 Duncan Mak * Math.cs (Abs): Fix double Locale.GetText bug reported by davejp@volny.cz. This fixes #48788. 2003-09-14 Pedro Martínez Juliá * FloatingPointFormatter.cs: Add the necessary castings to char conversions. 2003-09-13 Pedro Martínez Juliá * FloatingPointFormatter.cs: Make the method calls more functional for protecting the values from different threads (make it more thread safe). 2003-09-13 Pedro Martínez Juliá * FloatingPointFormatter.cs: Fix a bug with the negative value of count parameter. 2003-09-12 Pedro Martínez Juliá * FloatingPointFormatter.cs: Applied a lot of improvements in string construction, make use of Append/Insert with the "count" parameter. Thanks to Ben Maurer. 2003-09-10 Pedro Martínez Juliá * FloatingPointFormatter.cs: Fix a bug with Custm Format. * FloatingPointFormatter.cs: Fix a little bug I've introduced the last change. 2003-09-10 Pedro Martínez Juliá * DoubleFormatter.cs: A few optimizations. Now, only one object is created to convert all double numbers. * SingleFormatter.cs: A few optimizations. Now, only one object is created to convert all float numbers. * FloatingPointFormatter.cs: Split the "number type parameters" from the "numver value and format parameters". The first ones are in the constructor and the others are in a method. 2003-09-09 Zoltan Varga * Array.cs: Added argument checking to some NET_1_1 methods. 2003-09-04 Martin Baulig * Type.cs (GetGenericTypeDefinition): Make this method virtual. 2003-08-27 Gonzalo Paniagua Javier * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue taking 'longs'. All tests pass. 2003-08-26 Ben Maurer * Exception.cs: Add ClassInterface attr. Implement TargetSite and Source. Remove MonoTODO attributes (class is 100% done). Also passes all Rotor tests for Exception! 2003-08-26 Ben Maurer * Enum.cs: Remove [MonoTODO]'s that had been completed. 2003-08-22 Gonzalo Paniagua Javier * String.cs: fixed bug #47802. 2003-08-21 Ben Maurer * String.cs: Created method FormatHelper that does formatting, using a StringBuilder. 2003-08-20 Gonzalo Paniagua Javier * Array.cs: patch by lb@lb.ods.org that fixes bug #47707. 2003-08-11 Gonzalo Paniagua Javier * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static methods under MS. 2003-08-11 Duncan Mak * Environment.cs (Version): Return the same numbers as the MS implementation. 2003-08-10 Miguel de Icaza * Array.cs: Applied patch from Thong (Tum) Nguyen; Removed replicated tests, and have a routine that does the heavy lifting. 2003-08-08 Lluis Sanchez Gual * DateTime.cs: Fixed DoParse. It was calling the wrong constructor of DateTime. * Environment.cs: return $HOME for ApplicationData folder. 2003-08-04 Duncan Mak * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey Demakov to fix formatting for Big power of 10 floating point values. This fixes bug #46175. * Convert.cs (ToUInt16): Throw an OverflowException correctly, as noted by c5n4kh6u02@sneakemail.com in http://bugzilla.ximian.com/show_bug.cgi?id=43098. Sat Aug 2 13:01:46 BST 2003 Malte Hildingson * Double.cs: added icall Double.AssertEndianity. Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro * Type.cs, MonoType.cs: implemented generic-specific methods. 2003-07-29 Miguel de Icaza * Buffer.cs: Add new internal MemCopy call. Removed the above. Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values to icalls, to avoid special cases in some call conventions. 2003-07-26 Gonzalo Paniagua Javier * Enum.cs: added Serializable attribute. 2003-07-25 Duncan Mak * AppDomain.cs (Equals): (GetHashCode): Removed because they do not need to be defined here. 2003-07-24 Gonzalo Paniagua Javier * TypeLoadException.cs: removed unused fields. TypeName returns "" if cannot even get the type. 2003-07-24 Miguel de Icaza * Type.cs: Added generics stubs. 2003-07-23 Duncan Mak * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer' as values for NET_1_1. (GetFolderPath): Return the empty string ("") for values of SpecialFolder that have no corresponding equivalents in Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory and "$HOME" for SpecialFolder.Personal. * IntPtr.cs (GetObjectData): Mark it as an interface implementation, instead of a public method. * Guid.cs (NewGuid): Remove MonoTODOAttribute. * TypeLoadException.cs (GetObjectData): Create stubs for the fields that are being serialized. * UIntPtr.cs: Removed erroneous CLSCompliantAttributes. 2003-07-23 Lluis Sanchez Gual * Enum.cs: Fixed enum formatting. For flag enums, if one of the flags is unnamed, ToString() returns the integer value. 2003-07-22 Jerome Laban * Guid.cs: Fixed ToString (), was producing incorrect string. 2003-07-20 Gonzalo Paniagua Javier * AppDomainSetup.cs: fixed bug #46609. Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro * MonoType.cs: use an icall for IsPrimitiveImpl (). Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro * Guid.cs: faster ToString (). 2003-07-15 Pedro Martínez Juliá * FloatingPointFormatter.cs: Few changes for get working Rotor tests. 2003-07-13 Zoltan Varga * Type.cs (IsAssignableFrom): Implement this as an icall since the runtime already includes the neccessary logic. 2003-07-06 Gonzalo Paniagua Javier * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase if it's present and get the full path for non-Uri paths. 2003-07-2 Lluis Sanchez Gual * DateTime.cs: Fixed formatting of fractions of second. 2003-06-30 Zoltan Varga * Console.cs: Turn off buffering for the streams returned by OpenStandardOutput () and OpenStandardError () if the buffer size is 0. 2003-06-28 Lluis Sanchez Gual * Random.cs: Changed behavior of Random to match MS.NET. When Next is called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates a new random number (although it is not needed), while mono did not. As a result, the sequence of random numbers could be different for the same seed. Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro * FloatingPointFormatter.cs: use dec_len2 as default precision. 2003-06-26 Lluis Sanchez Gual * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must be done after the correspondig UTC offset has been applied. 2003-06-26 Lluis Sanchez Gual * Object.cs: Object must have the Serializable attribute. * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset to the resulting date. Also fixed _ToString so now correctly formates the UTC offset. Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro * Enum.cs: fix race in cache (bug#41841). Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro * FloatingPointFormatter.cs: if the precision is not specified, use the default precision for the data type. Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro * Array.cs: throw ArgumentOutOfRangeException in Copy if needed (patch by tum@veridicus.com (Thong (Tum) Nguyen)). 2003-06-11 Gonzalo Paniagua Javier * MonoType.cs: don't throw nullref when the return type for a property is specified and the property doesn't have a get accessor. 2003-06-10 Duncan Mak * Array.cs (CreateInstance): Fixed a typo. It should throw ArgumentNullException instead of ArgumentException. 2003-06-09 Duncan Mak * Array.cs: Revert the last revert. I fixed it. (Sort): Put a try-catch block around qsort, and wrap whatever Exception we get into a InvalidOperationException. 2003-06-08 Jackson Harper * Array.cs: Revert last patch, it broke some other functionality. 2003-06-08 Duncan Mak * Array.cs: Throw more exceptions. This fixes the errors we see from the Rotor testsuite. (CreateInstance): Throw ArgumentNullException when the input are null. Throw ArgumentOutOfRangeException when bounds + length is greater than Int32.MaxValue. (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside the valid range of indices of array. (Sort): Throw InvalidOperationException when comparer is null and none of the elements in keys implements IComparable. 2003-06-08 Duncan Mak * Array.cs (CreateInstance): Throw a TypeLoadException if the Length of the input array 'lengths' is greater than 255 so that we won't see the g_assert that is in mono_array_class_get in class.c. This fixes bug #44304. 2003-06-05 Nick Drochak * UnitySerializataionHolder.cs: Cleanups according to class status page Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs, RuntimeTypeHandle.cs: implemented the needed stuff to handle vararg calls. 2003-06-02 Sebastien Pouliot * Random.cs: New implementation based on Knuth ran3 to fix #43597. See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited for Ben Maurer after review and testing. 2003-05-28 Ben Maurer * Array.cs: Added better argument checking to Array.Sort () * DBNull.cs: Made the conversions throw like they do in MS. 2003-05-24 Philip Van Hoof * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem). 2003-05-21 Pedro Martínez Juliá * FloatingPointFormatter.cs: Take care with the explicit precision and round the number to that precision. * DoubleFormatter.cs: Adapt to the two level precision (15 - 17). * SingleFormatter.cs: Adapt to the two level precision (7 - 8). 2003-05-20 Philip Van Hoof * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate): Implemented. 2003-05-20 Zoltan Varga * AppDomainSetup.cs: Added new field which is used to notify the runtime that the search path has changed. 2003-05-18 Pedro Martínez Juliá * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've introduced the last change I've done. 2003-05-17 Ben Maurer * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was behaving correctly). 2003-05-17 Pedro Martínez Juliá * FloatingPointFormatter.cs: Fixed little format mismatches. 2003-05-16 Pedro Martínez Juliá * FloatingPointFormatter.cs: Fixed "-0" result emited. 2003-05-13 Gonzalo Paniagua Javier * AppDomain.cs: Added null argument check in Load(). * Activator.cs: fixed bug #39926. 2003-05-13 Gonzalo Paniagua Javier * Enum.cs: fixed bugs #41522 and #42879. 2003-05-12 Zoltan Varga * String.cs: Tweak IndexOf and LastIndexOf to match specification and undocumented MS behaviour. 2003-05-10 Gonzalo Paniagua Javier * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and Jaime. 2003-05-10 Gonzalo Paniagua Javier * String.cs: fixed bug #41411 and another similar problem in LastIndexOf (string). 2003-05-10 Gonzalo Paniagua Javier * String.cs: patch by Jean Marc that fixes bug #42695. 2003-05-09 Zoltan Varga * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList construction if the delegate list only has one element. 2003-05-01 Pedro Martínez Juliá * Environment.cs: Changed the method GetFolderPath because it must return at least a directory name (not null). * Convert.cs: In ToType, if the destination type is unknown, try to cast the value to object (then, the calling method will downcast it to the type it wants). 2003-04-30 Gonzalo Paniagua Javier * Enum.cs: fixed bug #41522. Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro * Enum.cs: protect with the lock also the lookup (bug #41841). Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro * MonoType.cs: allow a null name if InvokeMember is called with BindingFlags.CreateInstance set. 2003-04-28 Gonzalo Paniagua Javier * Enum.cs: reverted my previous patch. 2003-04-27 Gonzalo Paniagua Javier * Enum.cs: fixed bug #41841. 2003-04-26 Gonzalo Paniagua Javier * MonoType.cs: (GetPropertyImpl): handle BindingFlags.IgnoreCase. 2003-04-22 Pedro Martínez Juliá * FloatingPointFormatter.cs: Little fixes for get the same results as MS.NET and show a message when something goes wrong with the parser of Custom Formats. 2003-04-22 Nick Drochak * Double.cs (ToString): * Single.cs (ToString): Handle case where param is a CultureInfo. 2003-04-18 Zoltan Varga * Object.cs ValueType.cs: Make the Object::GetHashCode() and ValueType::Equals() icalls static non-virtual, so they can be called by the code in RuntimeHelpers. 2003-04-18 Miguel de Icaza * Delegate.cs (operator ==): Do not crash if the second argument is null. Bug fix submitted by Juan Cri. 2003-04-18 Eduardo Garcia Cebollero * Array.cs: Deleted the exception in Array.Initialize(), it looks like the method do nothing for C#, is still a MonoTODO until we find a compiler that uses that. 2003-04-14 Miguel de Icaza * Delegate.cs (Delegate): Seems like a typo, we were checking the a field rather than the argument * MonoType.cs: Make GetNestedType an external method implementation. 2003-04-13 Gonzalo Paniagua Javier * Enum.cs: fixed bug #41294. 2003-04-12 Gonzalo Paniagua Javier * DateTime.cs: fixes bug #40910, part 2. 2003-04-11 Dietmar Maurer * String.cs (Equals): avoid the internal call, code cleanups 2003-04-11 Alan Tam * Convert.cs: fixed bug #41085. 2003-04-10 Lluis Sanchez Gual * AppDomain.cs: Added internal method for getting process guid. 2003-04-09 Ville Palo * Array.cs: Little fix to compare () method. 2003-04-09 Zoltan Varga * String.cs (Equals): Add trivial optimization. 2003-04-08 Gonzalo Paniagua Javier * DateTime.cs: fixed bug #40910. 2003-04-05 Miguel de Icaza * Console.cs: Make stderr, stdout and stdin use synchronized versions of the their readers/writers. 2003-04-04 Dick Porter * Version.cs: Make operator== and operator!= cope with null objects. Didn't change operator<, operator<=, operator> or operator>= because its not meaningful to use those to compare against null, and throwing a NullReferenceException is probably the best thing to do there anyway. Fixes bug 40720. 2003-04-02 Gonzalo Paniagua Javier * AppDomain.cs: fixed InvalidCastException. 2003-03-30 Zoltan Varga * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive type checks and let it decide whenever a fast copy is possible. 2003-03-26 Gonzalo Paniagua Javier * MonoType.cs: (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322. 2003-03-25 Zoltan Varga * Activator.cs (CreateInstance): Call GetConstructor with the right arguments so the nonPublic argument is handled correctly. 2003-03-25 Gonzalo Paniagua Javier * Type.cs: fixed bug #40123. 2003-03-22 Pedro Martínez Juliá * FloatingPointFormatter.cs: Fixed some bugs for get the same results than MS.NET. Added simple error recovering, now ToString will return a general format if there is any exception in the process of formatting. This make the library more robust while the formatters are refined. 2003-03-16 Pedro Martínez Juliá * FloatingPointFormatter.cs: Added support for group separators. 2003-03-16 Pedro Martínez Juliá * Single.cs: * Double.cs: Apply changes of .ToString methods. * SingleFormatter.cs: * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter. * FloatingPointFormatter.cs: New class. Implementation of double and single formatters. It is unified now and parametrized with precission values. 2003-03-15 Lluis Sanchez Gual * AppDomain.cs: fixes bugs #39380 and #39331. 2003-03-06 Nick Drochak * TimeSpan.cs (Negate): Throw exception when value is MinValue. 2003-03-04 Dick Porter * Single.cs: * Double.cs: Temporarily reverted the Double and Single ToString() change, because it broke nunit. 2003-03-04 Pedro Martínez Juliá * Double.cs: Changed ToString method. Added NumberFormatInfo support with DoubleFormatter class. * Single.cs: Changed ToString method. Added NumberFormatInfo support with SingleFormatter class. * DoubleFormatter.cs: New class with Double formatting functions. * SingleFormatter.cs: New class with Single formatting functions. 2003-03-03 Lluis Sanchez Gual * Activator.cs: Added support for activation using activation attributes. * AppDomain.cs: Added internal method to get the default context from the runtime. 2003-02-28 Elan Feingold * DateTime.cs: FileTime is expressed in Universal time, and as such must be converted before subtracting the magic offset. * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note the timezone at the end) *must* be parsed by DateTime.Parse() for compatibility with Microsoft. 2003-02-24 Gonzalo Paniagua Javier * Attribute.cs: * MonoCustomAttrs.cs: fix for the regression test failure (see bug #38238). * IntPtr.cs: added serialization .ctor 2003-02-19 Gonzalo Paniagua Javier * AppDomain.cs: check for null in Unload and changed method name. 2003-02-18 Gonzalo Paniagua Javier * MonoCustomAttrs.cs: fixed bug #38238. 2003-02-17 Martin Baulig * Exception.cs (Exception.ToString): Print a newline between the exception message and the stack trace. 2003-02-17 Gonzalo Paniagua Javier * AppDomain.cs: implemented GetCurrentThreadId (). 2003-02-14 Patrik Torstensson * Exception.cs: Fixed message output formating 2003-02-14 Gonzalo Paniagua Javier * Int32.cs: (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512). 2003-02-12 Miguel de Icaza * Type.cs: IsClass should return false for Enumerations 2003-02-11 Gonzalo Paniagua Javier * MonoCustomAttrs.cs: return the correct array type in the short case. Fixes bug #37818. 2003-02-08 Pedro Martíenz Juliá * Math.cs: Fix a few methods (like Round) and add with comments the new methods: BigMul and DivRem that were in ECMA specs. 2003-02-07 Patrik Torstensson * Exception.cs: Fixed formating 2003-02-05 Patrik Torstensson * AppDomain.cs: Partly fixed the unload method 2003-02-04 Patrik Torstensson * AppDomain.cs: Fixed lease issue with appdomain 2003-02-04 Lluis Sanchez Gual * MarshalByRefObject.cs: Implemented GetLifetimeService() and InitializeLifetimeService(). 2003-02-03 Patrik Torstensson * AppDomain.cs: New internalcalls for handling domain/context switches * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object 2003-02-03 Gonzalo Paniagua Javier * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath and ClearShadowCopyPath and fixed GetType (). * Attribute.cs: clean up. * Console.cs: removed UnixConsoleEncoding. Use Default. 2003-02-01 Gonzalo Paniagua Javier * Attribute.cs: fixed all IsDefined overloads. Gotta fix GetCustomAttributes later. 2003-01-31 Patrik Torstensson * Buffer.cs: Changed access level of BlockCopyInternal Thu Jan 30 19:54:30 CET 2003 Paolo Molaro * String.cs, IntegerFormatter.cs: use const where appropriate. 2003-01-30 Gonzalo Paniagua Javier * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for reporting. 2003-01-30 Gonzalo Paniagua Javier * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes. The argument ICustomAttributeProvider can be of other types different from Type. Handle it. 2003-01-28 Zoltan Varga * DateTime.cs: fix FromFileTime so the time returned by File::GetLastModificationTime etc. is in the correct timezone. 2003-01-28 Patrik Torstensson * Exception.cs: reverted formating/endline changes (sorry guys) 2003-01-28 Patrik Torstensson * MarshalByRefObject.cs: implemented GetObjectIdentity * Exception.cs: added support for remote exceptions 2003-01-28 Gonzalo Paniagua Javier * DateTime.cs: fixed bug #37225. 2003-01-27 Gonzalo Paniagua Javier * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus! 2003-01-27 Zoltan Varga * AppDomain.cs: Added DoTypeResolve method which will be called by the runtime to raise TypeResolve events. 2003-01-27 Duncan Mak * Enum.cs (ToType): Implement this using Convert.ToType. 2003-01-21 Miguel de Icaza * Math.cs: Remove Pow's implementation body as it was wrong. The C code does the right thing. The code was trying to handle a number of cases, and that was incorrect. 2003-01-24 Gonzalo Paniagua Javier * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes bug #37113. 2003-01-24 Gonzalo Paniagua Javier * Enum.cs: added caching to GetInfo. 2003-01-23 Dick Porter * Environment.cs (System): Implemented ExitCode 2003-01-23 Zoltan Varga * Type.cs (IsInstanceOfType): fixed regression caused by the change to IsSubclassOf(). 2003-01-17 Gonzalo Paniagua Javier * MonoType.cs: re-added lines that were removed in the previous commit. 2003-01-16 Lluis Sanchez Gual * Type.cs: corrected property IsSerializable. It should always return true for enums and delegates * MonoType.cs: added serialization support. * Delegate.cs: added serialization support. * DBNull.cs: added serialization support. * UnitySerializationHolder.cs: supports serialization of Assembly, MonoType and DBNull. * DelegateSerializationHolder.cs: added. 2003-01-12 Gonzalo Paniagua Javier * Exception.cs: changed default message to match MS one. 2003-01-12 Patrik Torstensson * String.cs: Fixed bug with CompareOrdinal 2003-01-10 Gonzalo Paniagua Javier * Enum.cs: implements IFormattable. 2003-01-10 Gonzalo Paniagua Javier * AppDomain.cs: implemented DoCallBack method. * MonoType.cs: (GetConstructorImpl): when the flag is BindingFlags.Default, set it to Public, Instance. NUnit2 tests start moving. 2003-01-09 Gonzalo Paniagua Javier * Activator.cs: fixed bug #36052. Also added checks to avoid trying to instantiate an abstract class. 2003-01-09 Gonzalo Paniagua Javier * Type.cs: (IsSubclassOf): return false when null. Use != instead of Equals. 2003-01-09 Gonzalo Paniagua Javier * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga. Fri Jan 3 20:18:51 CET 2003 Paolo Molaro * MonoType.cs: fixed Namespace property for nested types. Fri Jan 3 16:18:27 CET 2003 Paolo Molaro * MonoCustomAttrs.cs: create properly typed arrays when returning arrays of attributes of a given type. Fri Jan 3 11:10:14 CET 2003 Paolo Molaro * MonoType.cs: fixed MemberType property for nested types. 2003-01-03 Gonzalo Paniagua Javier * String.cs: fixed bug #36209. 2002-12-20 Lluis Sanchez Gual * Activator.cs: implemented method GetObject. 2002-12-28 Marcus Urban * Activator.cs: Since the documentation indicates the method either succeeds or throws one of the listed exceptions, we weren't expecting that CreateInstance might be returning null. For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109 2002-12-20 Lluis Sanchez Gual * MarshalByRefObject.cs: implemented CreateObjRef. 2002-12-19 Gonzalo Paniagua Javier * DateTime.cs: fixed bug #30076. * TimeZone.cs: provide the parameter name in a exception. 2002-12-13 Gonzalo Paniagua Javier * DecimalFormatter.cs: fixed bug #35560. Wed Dec 4 16:04:28 CET 2002 Paolo Molaro * Type.cs: implemented GetInterfaceMap (needs an updated runtime). 2002-12-03 Gonzalo Paniagua Javier * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid nulls. Fixes #34909. 2002-12-03 Gonzalo Paniagua Javier * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers returns a non-null assembly. 2002-12-03 Gonzalo Paniagua Javier * MulticastDelegate.cs: make GetInvocationList work for more than 1 delegate. 2002-12-02 Gonzalo Paniagua Javier * MulticastDelegate.cs: implemented GetInvocationList. I'll check later if this is the correct order of invocation. 2002-12-02 Gonzalo Paniagua Javier * Type.cs: changed the signature of internal_from_name. Modified the overloads of GetType to use it and check the typeName argument. Implemented FindInterfaces. 2002-11-29 Gonzalo Paniagua Javier * MarshalByRefObject.cs: undo latest changes. It breaks the build by some obscure reasons (try make -f makefile.gnu using a corlib which has the modified version). 2002-11-26 Miguel de Icaza * String.cs (Concat): Reduce the number of compares required. Mon Nov 18 17:54:22 CET 2002 Paolo Molaro * Activator.cs: throw a MissingMethodException if the default constructor is not found in CreateInstance. 2002-11-13 Gonzalo Paniagua Javier * String.cs: (Equals (str, str)): use 'as' instead of casting to object. (Equals (obj)): check the length of the strings (until now, "Hello".Equals ((object) "Hellow World!) was true!). 2002-11-04 Gonzalo Paniagua Javier * MonoType.cs: implemented GetEvent (name, flags). 2002-11-03 Gonzalo Paniagua Javier * AppDomain.cs: implemented a couple of methods called from the runtime to fire AssemblyLoad and AssemblyResolve events. 2002-10-31 Dick Porter * Environment.cs: MonoIO methods now have an error parameter 2002-10-29 Zoltan Varga * Enum.cs: Added support for whitespaces in Enum:Parse(). 2002-10-29 Gonzalo Paniagua Javier * Type.cs: fixed GetProperty (string, Type []) and removed get_property internal call. Closes bug #32992. 2002-10-29 Gonzalo Paniagua Javier * Exception.cs: display the inner exception, if any, in ToString (). 2002-10-24 Gonzalo Paniagua Javier * Environment.cs: fixed StackTrace property. 2002-10-16 Nick Drochak * Enum.cs (Parse): Then fix the code so that it works too. 2002-10-15 Nick Drochak * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings. 2002-10-12 Nick Drochak * IntegerFormatter.cs: Fix compiler warnings. 2002-10-11 Tim Haynes * Type.cs (GetConstructors): Use the correct flags. 2002-10-09 Nick Drochak * IntegerFormatter.cs: Suppress insignificant leading zeros Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro * MonoCustomAttrs.cs: applied patch by "Si Jingnan" to return also derived types. 2002-09-26 Gonzalo Paniagua Javier * Activator.cs: little fix in CreateInstance (Type, bool). 2002-09-19 Duncan Mak * Array.cs (CopyTo): Revert back to 1.40, this is stopping I18N/Common from building right now. 2002-09-19 Nick Drochak * Array.cs (CopyTo): Account for Object type and base (primitive) types * Type.cs (IsAssignableFrom): return false for a null parameter 2002-09-19 Nick Drochak * Array.cs (CopyTo): Check that source type can be cast automatically to the destination type. 2002-09-18 Gonzalo Paniagua Javier * Type.cs: implemented IsAssignableFrom, DefaultBinder and GetDefaultMembers. 2002-09-12 Gonzalo Paniagua Javier * Char.cs: implemented ToString (char) * IntegerFormatter.cs: made it internal. 2002-09-13 Nick Drochak * Enum.cs (Format): handle the "d" format for both signed and unsigned underlying types. 2002-09-12 Dick Porter * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)] attribute, as there doesn't appear to be any struct layout-depending code here (and corcompare says it should be LayoutKind.Sequential) * Decimal.cs: Stub out missing methods, add [DecimalConstantAttribute] to the constant fields (as shown by corcompare). * LocalDataStoreSlot.cs: * Environment.cs: * Char.cs: * Array.cs: Stub out missing methods. * TypedReference.cs: * ArgIterator.cs: Stub out * AppDomainSetup.cs: * AppDomain.cs: Stub out missing methods, add missing ClassInterface(ClassInterfaceType.None) attribute. 2002-09-12 Nick Drochak * Double.cs (ToString): Throw exception when "X" format is passed in. Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro * MonoType.cs: implemented Module property. Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro * MonoType.cs, Type.cs: implemented InvokeMember. Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro * Delegate.cs: check the type passed to CreateDelegate is a Delegate type. Check the method signature matches. Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro * RuntimeMethodHandle.cs: implemented GetFunctionPointer(). 2002-09-06 Miguel de Icaza * Console.cs: Specify an encoder, otherwise we will get the UTF8 encoder that by default emits the byte markers. Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro * Delegate.cs: look also for non-public methods until we have the security checks in place. Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro * MonoType.cs: consider also the full name in GetInterface. Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro * MonoType.cs: implemented GetMembers, GetConstructorImpl and GetMethodImpl using the binder. * Type.cs: GetConstructorImpl/GetConstructor fixes. 2002-09-03 Jonathan Pryor * Enum.cs: Get rid of warning CS0162. 2002-09-04 Miguel de Icaza * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the actual value instead of public. * LocalDataStoreSlot.cs: Make constructor internal. * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs, SByte.cs, Byte.cs, Char.cs: Use internal for the actual value instead of public. 2002-09-03 Jonathan Pryor * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work properly. 2002-08-28 Gonzalo Paniagua Javier * DateTime.cs: fixed buglet. Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro * MonoType.cs: speedup access to common data. 2002-08-23 Gonzalo Paniagua Javier * Double.cs: implemented TryParse. * Math.cs: PowImpl is now private. * MissingFieldException.cs: implemented Message. * RuntimeMethodHandle.cs: stubbed GetFunctionPointer. * _AppDomain.cs: Uncommented ToString. 2002-08-23 Gonzalo Paniagua Javier * Type.cs: (IsValueTypeImpl): it's virtual, not abstract. Implemented. 2002-08-23 Gonzalo Paniagua Javier * ArgumentException.cs: use the field instead of the property for param_name. * ArgumentOutOfRangeException.cs: modified Message. * DateTime.cs: (_DoParse): throw out of range exception for year. Removed check for month (it's done in the constructor). 2002-08-21 Miguel de Icaza * Environment.cs: Implemented OSVersion property. 2002-08-21 Dietmar Maurer * Exception.cs: set stack_trace to null Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro * AppDomain.cs: implemented ToString(). 2002-08-20 Gonzalo Paniagua Javier * AppDomain.cs: securityInfo can be null in CreateDomain. 2002-08-19 Dick Porter * MonoType.cs: Add a space before the Assembly name in AssemblyQualifiedName (needed for resource files so the MS runtime can load types) 2002-08-19 Gonzalo Paniagua Javier * AppDomain.cs: parameter name when throwing ArgumentNullException. * ArgumentException.cs: modified Message to do what MS does. * ArgumentNullException.cs: don't use {0} in message. * Exception.cs: use Message property in ToString (). 2002-08-14 Cesar Octavio Lopez Nataren * WeakReference.cs: Changed the constructor and GetObjectData method needed for ISerializable implementation in order to be compatible with SOAP generated by MS. Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes. 2002-08-12 Dietmar Maurer * Exception.cs (ToString): changed the ouput format. 2002-08-07 Dietmar Maurer * MonoType.cs: moved get_method icall to this class, we can remove it as soon someone provides a full featured GetMethodImpl. * Type.cs: use GetMethodImpl everywhere. * Delegate.cs: new CreateDelegate implementations. 2002-08-06 Tim Coleman * MonoType.cs: Fix bug #28582. Now checks parameters for properties in GetPropertyImpl. 2002-08-04 Nick Drochak * Buffer.cs: Throw correct exception in GetByte() and SetByte(). 2002-08-01 Gonzalo Paniagua Javier * String.cs: (FormatSpecifier): allow white space between the comman and the width specifier. 2002-07-22 Gonzalo Paniagua Javier * Int32.cs: * Int64.cs: * UInt32.cs: * UInt64.cs: fixed bug #28050. May be a MS bug? Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro * MonoType.cs: fix IsArrayImpl. 2002-07-13 Gonzalo Paniagua Javier * String.cs: make ToLower (culture) and ToUpper (culture) use the default ToLower and ToUpper and don't throw NotImplemented. Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro * Type.cs: make GettTypeCode an icall. Test implementation of GetMember(). 2002-07-13 Gonzalo Paniagua Javier * AppDomainSetup.cs: implemented LoaderOptimization. 2002-07-10 Gonzalo Paniagua Javier * Activator.cs: some more intermediate results checking in in CreateInstance and CreateInstanceFrom and use GetConstructor and Invoke only with Type [] until the other overloaded versions work. 2002-07-09 Gonzalo Paniagua Javier * Activator.cs: reformatted. Implemented CreateInstance* methods that return ObjectHandle. * AppDomain.cs: implemented CreateInstance*AndUnwrap methods. 2002-07-03 Nick Drochak * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and the divisor is not) and avoid the icall, which seems to have a bug. 2002-07-03 Nick Drochak * Double.cs (CompareTo): Correctly handle the case where the instance is NaN. Also return 0 if the values are equal. 2002/07/03 Nick Drochak * MissingMethodException: Add missing Message property * MissingMemberException: Add missing Message property 2002-06-30 Nick Drochak * Double.cs (CompareTo): Just see which is bigger. Don't use the subtraction trick, it doesn't work when the values have a diference of less than one. * Single.cs (CompareTo): same 2002-06-27 Martin Baulig * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the constructor argument. [FIXME: The implicit conversion to an unsigned integer doesn't work with mcs.] 2002-06-26 Martin Baulig * DecimalFormatter.cs: Removed MSTEST stuff, use `System', not `S = System'. This file now compiles with mcs. * String.cs: Removed the already ifdef-outed __arglist Concat function to make it compile with mcs. 2002-06-24 Gonzalo Paniagua Javier * IntegerFormatter.cs: (FormatParse.FormatNumber): fixed custom format for negative numbers. 2002-06-21 Martin Baulig * Double.cs: Replace the private `enum State' with constants since this will avoid some bigger headaches in mcs. Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro * TimeSpan.cs: do not pollute the namespace with the System.Parser name. 2002-06-18 Nick Drochak * ArgumentException.cs: Use the message given in the constructor when accessing the Message property. Thanks to Dietmar for the help with "base". 2002-06-17 Dietmar Maurer * MonoType.cs: GetField is now a InternalCall 2002-06-13 Nick Drochak * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the sortable format(s), e.g. "2002-02-25" 2002/06/12 Nick Drochak * Random.cs (Next): Fix math error. Return a number within the range. 2002-06-12 Nick Drochak * String.cs (IndexOf): Return -1 if start index is equal to string length. 2002-06-10 Duncan Mak * Convert.cs (ToDouble): Remove rounding in ToDouble (float). (ToType): Added null field in conversionTable to avoid IndexOutOfRangeException. Changed what exceptions we throw to match the spec. 2002-06-11 Nick Drochak * Int64.cs (Parse): Added unique strings to the messages where we throw a FormatException. Needed these to debug, so just left them in since they might be useful later. Fixed Currency parsing where we weren't looking at CurrencyDecimalSeparator, etc. 2002-06-09 Lawrence Pit * DateTime.cs: fixes to pass tests M0 to M6: if yy pattern then year values >= 30 are in 20th century rfc1123 pattern is always in GMT, therefor useutc must be false made GetNow() internal static so it can be called from TimeZone. * TimeZone.cs: removed dependency on year 2002 from initialization of current timezone. 2002-06-09 Duncan Mak * Convert.cs (ToType): Rearranged what Exceptions we throw to match MS behavior. 2002-06-08 Duncan Mak * Decimal.cs: Added support for the IConvertible interface. 2002-06-08 Martin Baulig * Enum.cs (IsDefined): `value' may be of the enum's type itself, it doesn't necessarily need to be of the enum's underlying type. 2002/06/07 Nick Drochak * String.cs: Add [Serializable] to class * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads 2002-06-04 Nick Drochak * Double.cs (Parse): Recognize the group separator string, but still we don't check the format for the proper number of digits between separators. Also throw OverflowException when we get Pos or Neg Infinity from runtime. 2002-06-03 Duncan Mak * Convert.cs (ToDouble): Fixed ToDouble (byte value). Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro * Type.cs: fixed GetTypeCode. 2002-06-02 Duncan Mak * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct cast from an int so that we throw OverFlowException correctly. (ToInt64): Use a new 64bit version of ConvertToBase. (ConvertToBase): Add checks for overflow (checks Int32.MinValue and Int32.MaxValue). (ConvertFromBase64): New 64-bit version of ConvertFromBase. 2002-06-02 Nick Drochak * Convert.cs (ToSByte): Check for special value. * Single.cs (Parse): * UInt16.cs (Parse): * UInt32.cs (Parse): Throw OverflowException if negative 2002-06-02 Duncan Mak * Convert.cs (DBNull): Point it to DBNull.Value. (IsDBNull): Instead of checking typecodes, just check to see if it's the same as the DBNull field. 2002-06-02 Nick Drochak * Convert.cs (ConvertFromBase): Detect bad digits correctly. 2002-06-02 Duncan Mak * Char.cs (Parse): Simplify the Exception handling. * Convert.cs (ToDecimal): Remove call to Math.Round () when converting from a float. 2002-05-30 Martin Baulig * MonoType.cs (GetInterface): Implemented. Thu May 23 17:17:28 CEST 2002 Paolo Molaro * Activator.cs: implemented CreateInstance (). 2002-05-22 Duncan Mak * Convert.cs (ConvertToBase): Added new 64bit version. (BuildConvertedString64): New 64bit version of BuildConvertedString. This fixes bug 25068. (ConvertFromBase): Added additional test for checking if the digits are valid. Thanks to Miguel for coming up with this test. This fixes bug 25071. 2002-05-21 Duncan Mak * Convert.cs (ToType): Rearranged to fit the new layout of conversionTable. (conversionTable): Rearranged to fit the layout of the System.TypeCode enum. This should fix bug 25075. 2002-05-21 Duncan Mak * Convert.cs (ToString): Fixed the ToString methods. Previously I had mixed up the two code paths, one for converting to a specific base (this case), another from converting from a foreign base to base10 (used by ToInt16|32|64 (string, int)). This fixes bug 25068. * Convert.cs (ToByte) (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so that we won't confuse FormatException with OverflowException. 2002-05-22 Lawrence Pit * Environment.cs: CommandLine missed spaces between arguments. Implemented StackTrace. Returning MachineName in UserDomainName instead of null. Tue May 21 17:25:49 CEST 2002 Paolo Molaro * MonoCustomAttrs.cs: handle inherit argument. 2002-05-21 Nick Drochak * Math.cs (Pow): Change icall method name and insert parameter checks in for infinities and NaN. 2002-05-13 Miguel de Icaza * Double.cs (Parse): Reimplement by cleaning up the string first, and then passing to strtof in the mono runtime. * Single.cs (Parse): Use the Double implementation and cast to float. 2002-05-21 Nick Drochak * Math.cs (Ceiling): Check for "special" values (Floor): Check for "special" values (Round): Fix off-by-one error on decimal shifting 2002-05-20 Lawrence Pit * DateTime.cs: ToString () using "G" format specifier 2002-05-19 Martin Baulig * Convert.cs (FromBase64CharArray): Do correct exception handling. 2002-05-19 Martin Baulig * Convert.cs (FromBase64CharArray): Convert the char array using System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to a byte array. 2002-05-17 Miguel de Icaza * MonoType.cs: Style changes. * Type.cs: Style changes. 2002-05-16 Piers Haken * BitConverter.cs (ToString): Add parameter check for invalid start index. * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout now that StreamWriter uses buffering 2002-05-14 Miguel de Icaza * Double.cs: Oops. Also handle exponents without finding a dot. 2002-05-14 Gonzalo Paniagua Javier * ChangeLog: removed empty entry at the top of the file. * Int32.cs: made static functions used by Parse internal. * Int64.cs: * UInt32.cs: * UInt64.cs: removed static fucntions used by Parse and use the ones in Int32.cs 2002-05-12 Daniel Morgan * IServiceProvider.cs: added using System 2002-05-09 Daniel Morgan * Single.cs: copied ToString() and Parse() methods from Double to Single and modified a tiny bit for Single. There is still a FIXME for Double and Single about passing the format and provider info to the icall too. 2002-05-02 Gonzalo Paniagua Javier * Int32.cs: * Int64.cs: * UInt32.cs: * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits. Don't use a delegate to test for valid digits. 2002-05-01 Duncan Mak * Convert.cs: * Math.cs: Added missing CLSCompliant attributes where necessary. 2002-04-30 Duncan Mak * ArgumentException.cs (Message): * ArgumentOutOfRangeException.cs (Message): Added. 2002-04-30 Nick Drochak * MonoType.cs: Remove unused variable and eliminate a compiler warning. Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro * Environment.cs: support for Exit(), CommandLine, CommandLineArgs (). 2002-04-28 Duncan Mak * DivideByZeroException.cs: Added missing serialization constructor. * UnauthorizedAccessException.cs: Added the missing Serializable attribute. 2002-04-28 Gonzalo Paniagua Javier * Math.cs: fix Floor () and Round (). Closes #23960. 2002-04-27 Nick Drochak * Array.cs (IList.Contains): Should throw a RankException if this is called on a Rank > 1 array. Not in the docs, but this is what the MS.NET does. 2002-04-26 Duncan Mak * MissingMemberException.cs: Made the message variable 'protected' instead of 'private', so that we can see it in MissingMethodException and MissingFieldException. * MissingFieldException.cs: * MissingMethodException.cs: Added missing (string, string) constructor, and also the Message property. 2002-04-26 Martin Baulig * Enum.cs: Implemented the IConvertible methods. 2002-04-25 Gonzalo Paniagua Javier * SByte.cs: little change in Parse (string) to avoid incorrect OverflowException thrown (reported by nickd). 2002-04-22 Miguel de Icaza * ValueType.cs: Add Serializable attribute. * String.cs: ifdef-out out the __arglist Concat function until I add support for that to mcs. 2002-04-24 Patrik Torstensson * AppDomain.cs (GetValue): usage of the correct icall (bug) Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro * GC.cs: implement most of the methods as icalls. 2002-04-24 Gonzalo Paniagua Javier * DecimalFormatter.cs (ToString): return correct value when the decimal number is 0. 2002-04-24 Patrik Torstensson * Type.cs (GetProperty): fixed call syntax (needs an empty array not null) * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers) 2002-04-24 Nick Drochak * Double.cs (Parse): Handle case where there are no digits before the decimal point, such as ".1". 2002-04-23 Gonzalo Paniagua Javier * Int32.cs: * UInt32.cs: * Int64.cs: * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong). 2002-04-23 Patrik Torstensson * String.cs (Split): fixed invalid split of count 0 and 1. 2002-04-23 Patrik Torstensson * String.cs (LastIndexOf): fixed argument checking. * String.cs (Equals): made internal for performace. 2002-04-23 Nick Drochak * String.cs (Join): check argument and throw exception if needed 2002-04-23 Nick Drochak * String.cs (StartsWith): check argument and throw exception if needed 2002-04-22 Nick Drochak * String.cs (IndexOfAny): check arguments and throw exceptions as neccessary. ALso remove some debug WriteLines. 2002-04-20 Dietmar Maurer * String.cs: use internal constructors buf fix in Concat. Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro * MonoType.cs: make GetElementType its own icall. 2002-04-18 Nick Drochak * String.cs: Modified file. Re-add methods needed by the unit tests. Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro * String.cs: some code speedups and restored GetTypeCode(). 2002-04-17 Patrik Torstensson * String.cs: New implementation using internal calls. 2002-04-16 Nick Drochak * DecimalFormatter.cs: Trim off excess null characters from the string that decimal2string gives back. 2002-04-16 Nick Drochak * String.cs (SubString): revert my change. I can't reproduce the problem anymore. 2002-04-13 Gonzalo Paniagua Javier * Attribute.cs: added GetHashCode and Equals. 2002-04-12 Gonzalo Paniagua Javier * Enum.cs: little improvements to Format (). Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro * String.cs: internalcall GetHashCode(). * Array.cS: optimize access to elements. Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro * String.cs: make IndexOfAny() use an internalcall. 2002-04-10 Gonzalo Paniagua Javier * Int32.cs: * UInt32.cs: * Int64.cs: * UInt64.cs: fixed error when testing for validity of flags. 2002-04-11 Nick Drochak * Double.cs: Use an internal call for ToString(). This is just a simple implementation to get away from throwing a NotImplementedException. 2002-04-10 Gonzalo Paniagua Javier * Int32.cs: * UInt32.cs: * Int64.cs: * UInt64.cs: changed Type.GetType () by typeof (), as suggested by lupus. * Int32.cs: * Int64.cs: throw an OverFlowException when parsing a string containing a dot followed by any non '0' number. 2002-04-10 Gonzalo Paniagua Javier * Byte.cs: * UInt16.cs: * UInt32.cs: * UInt64.cs: added complex Parse (). 2002-04-09 Gonzalo Paniagua Javier * SByte.cs: * Int16.cs: * Int32.cs: * Int64.cs: added complex Parse (). 2002-04-09 Nick Drochak * Array.cs (BinarySearch): Add checks on paramters before using them and throw exceptions as needed. * Enum.cs (Format): Check if [Flags] is applied to enum and convert "G" format to "F" if so. Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro * MonoCustomAttrs.cs: return arrays of type Attribute[] instead of object[]. 2002/04/09 Nick Drochak * String.cs (Substring): Copy only non-null characters to the new string. 2002-04-09 Nick Drochak * IntegerFormatter.cs: Don't use a format character to indicate a custom format was passed in. It was using 'z' to indicate a custom format, but really it should throw a format exception if the user tries to use "z" as the format string. Now it does. * Activator.cs: New File. 2002-04-08 Nick Drochak * Enum.cs (ToString): Big ugly fix for the case where [Flags] is applied to an enum. Need to handle the different possible integer types of an enum somehow. Can anyone say generics? Mon Apr 8 06:22:42 2002 Piers Haken * Convert.cs: switched the To*(object) methods to use IConvertible directly instead of calling ChangeType Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro * ValueType.cs: make Equals() an internalcall. Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro * Type.cs: also look for nested types in FindMembers. * MonoType.cs: make GetNestedTypes() an internalcall. 2002-04-05 Nick Drochak * Enum.cs (Parse): Handle different underlying types. 2002/04/04 Nick Drochak * Enum.cs (IsDefined): Throw exception when type of value to look for is not the correct one. Attempt to have it work with string values too, but not sure if the unit tests are getting that far yet. 2002-04-04 Nick Drochak * Decimal.cs: Fix a couple of typos. Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro * Enum.cs: the values array is of the enum and not of the underlying type. Updates and some bug fixes. * MonoType.cs: make the internalcall return FullName instead of the assembly qualified name. * Type.cs: make ToString () simply return FullName. 2002-04-03 Nick Drochak * Type.cs (GetTypeCode): provide some of the implementation for this method. It's still too simplistic to be considered complete. 2002-04-02 Dietmar Maurer * Object.cs: fixed FieldGetter/FieldSetter signature 2002-04-02 Nick Drochak * Environment.cs: add MonoTODO's on parts that should have it. 2002-04-01 Nick Drochak * Enum.cs: added reality checks (check parameters to most methods that need them). 2002-03-30 Dietmar Maurer * Object.cs: added FieldGetter/FieldSetter 2002-03-28 Gonzalo Paniagua Javier * IntegerFormatter.cs: fixed initialization error in static constructor. 2002-03-28 Dietmar Maurer * Delegate.cs: added new field to store a trampoline function 2002-03-28 Gonzalo Paniagua Javier * IntegerFormatter.cs: added workaround for bug #22668. First patch to make custom format strings work (not fully functional yet). 2002/03/28 Nick Drochak * IntegerFormatter.cs: Change class from internal to public. Add necessary [CLSCompliant(false)] attributes. 2002-03-27 Duco Fijma * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData (was a typo) 2002-03-28 Nick Drochak * Type.cs: Added MonoTODO tags on members that have FIXME, etc. 2002-03-27 Dan Lewis * Console.cs: Modified to get std handles from MonoIO. * Environment.cs: removed PAL dependencies. 2002-03-25 Miguel de Icaza * String.cs (System): Removed internal enumeration, because bootstrapping the corlib at this point does not support enumerations. * IntPtr.cs: Temporary work-around until I fix the assembly attributes bug. 2002-03-24 Martin Baulig * Enum.cs (GetValues): According to the docu this is sorted after values, not names. * String.cs (System): Removed enumeration, because it is pretty hard to support enumerations in /nostdlib mode for the core types. Tue Mar 19 18:18:49 CET 2002 Paolo Molaro * Array.cs: move error handling in the catch block. * MulticastDelegate.cs: remove == and != operators that were removed with the delegate changes (when you add stuff, please do not remove existing functionality!). * Type.cs: if a property is not found in a type, search for it in the parent types, too. 2002-03-18 Dan Lewis * Math.cs: changed to use icall instead of PAL. 2002-03-18 Dietmar Maurer * Double.cs: added check for NaN (Bug [22082]) 2002-03-19 Nick Drochak * Enum.cs (Equals): check for null and throw if it is. * Enum.cs (Format): check for null parameters and throw if necessary. This method still needs more argument checking. 2002-03-18 Dietmar Maurer * Enum.cs (Equals): check if Enums are of the same type 2002-03-18 Nick Drochak * Double.cs: Explicitly handle comparisons in CompareTo() for Positive/Negative Infinity and NaN. Unit Test now passes on Linux. * Enum.cs(CompareTo): Check types of values before trying to compare. Throw exceptions if types are invalid or don't match. 2002-03-14 Miguel de Icaza * Array.cs: Add some extra debugging information. 2002-03-15 Nick Drochak * Array.cs: Added IList and IEnumerable. 2002-03-14 Miguel de Icaza * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as NonCLSCompliant. 2002-03-14 Dietmar Maurer * Delegate.cs (Equals): also compare method_ptr (GetHashCode): returm method_ptr as hash 2002-03-13 Duco Fijma * TimeSpan.cs: removed the use of Custom Numeric Format Strings, such as 42.ToString("0000000"), as these are (currently) not implemented in System.IntegerFormatter. TimeSpan luckely can do with Standard Numeric Format Strings, such as 42.ToString("D7"). 2002-03-12 Duncan Mak * FieldAccessException.cs: * MethodAccessException.cs: * PlatformNotSupportedException.cs: Inherit from MemberAccessException, not SystemException. * ObsoleteAttribute.cs: Made Message and IsError properties instead of fields. Tue Mar 12 19:21:18 CET 2002 Paolo Molaro * GC.cs: make SuppressFinalize() a nop. * Delegate.cs: fix == operator. 2002-03-13 Nick Drochak * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the runtime that goes with this patch. 2002-03-10 Martin Baulig * Int32.cs (Parse): Correctly parse negative numbers. 2002-03-08 Martin Baulig * String.cs (Split): Really fix it this time. Also adding several new testcase to the testsuite. 2002-03-08 Martin Baulig * Array.cs (Copy): Optimized: removed duplicate null check, removed two duplicate GetLowerBound() calls and one duplicate IsValueType. Fri Mar 8 18:49:19 CET 2002 Paolo Molaro * Object.cs: commit my hacked GetHashCode(): it's good enough for now. * String.cs: use the dumb code for IndexOf(string): this is worth 15-20 % speedup in mcs compile with mint. Fri Mar 8 12:45:44 CET 2002 Paolo Molaro * String.cs: revert change to Split() that broke the compiler (hi martin!:-). 2002-03-07 Martin Baulig * String.cs (Join): Throw an ArgumentNullException. (LastIndexOf (string,int,int)): This method does a backwards search, so startIndex points to the end of value, not to its beginning. Don't throw an exception if startIndex equals this.Length. Always return -1 if startIndex is smaller than the length of value. (Replace (string,string)): Replace all occurences of oldValue. If newValue is null, all occurences of oldValue are to be removed. (Split (char[],int)): Return an empty array if maxCount is zero, throw an ArgumentOutOfRangeException if it's less than zero. Return maxValue elements, not maxValue+1. Thu Mar 7 17:16:06 CET 2002 Paolo Molaro * MonoType.cs: make GetEvents() an internal call. * MulticastDelegate.cs: copy the passed in array. 2002-03-06 Martin Baulig * Array.cs (Copy): Use FastCopy when appropriate and do correct exception handling. 2002-03-06 Duco Fijma * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing some of the failures found be new tests (see ChangeLog in Test/System). Comments added to this method, based on the representation invariant of this class, that (try to) explain why it now should be correct. 2002-03-06 Dietmar Maurer * Int64.cs (Parse): bug fix for max. negative value. 2002-03-07 Nick Drochak * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say. I need to understand what the difference between the attribute and the interface is. 2002-03-06 Martin Baulig * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not an InvalidCastException if the widening conversion failed. See testcases #M94-#M96. * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle arrays with non-zero lower bounds. Also adding testcases #F10-#F13 for this. * Array.cs (CopyTo): Reverted my last change, it was incorrect. (Copy): Actually allow copying multi-dimensional arrays. 2002-03-05 Duncan Mak * Convert.cs: (DBNull) Added the missing field. (IsDBNull) Fixed typo. (ToByte (string, int)) Implemented. (ToString (byte, int)) Implemented. (ConvertToBase) (BuildConvertedString) internal functions used for converting values to a specific base. * Int16.cs: * Int32.cs: * Int64.cs: * Single.cs: * UInt16.cs: * UInt32.cs: Implemented the IConvertible interface. * CharEnumerator.cs: Renamed to variables to be clearer and changed some of the tests to conform to the 1.0 spec. 2002-03-06 Martin Baulig * Array.cs (Copy): Calculate absolute array position here and use GetValueImpl() and SetValueImpl() with that position. We can now copy multi-dimensional arrays. (CopyTo): Small bug fix. 2002-03-05 Duco Fijma * Version.cs: CompareTo changed according the LAMESPEC discovered by Nick (See VersionTest.cs). * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one error comparing the current position (idx) against the length of the string iterated and it set idx to an unrecognized special value (-2) Tue Mar 5 17:34:14 CET 2002 Paolo Molaro * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants to do this dirty work, but someone has to do it (and I need it to pass the "200 sample tests compiled on linux" mark). 2002-03-06 Nick Drochak * Attribute.cs * DecimalFormatter.cs * Delegate.cs * Double.cs * GC.cs * Int16.cs * Int32.cs * MonoType.cs * RuntimeMethodHandle.cs * RuntimeTypeHandle.cs * String.cs * Type.cs: Add [MonoTODO]'s to places where we currently throw a NotImplementedException. 2002-03-05 Dietmar Maurer * Int16.cs (Parse): do not overflow on max negative value * Int32.cs (Parse): do not overflow on max negative value Mon Mar 4 20:36:05 CET 2002 Paolo Molaro * Type.cs: fixed IsClass. * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl, IsByRefImpl. Added GetInterfaces(). * IServiceProvider.cs: compilation fix. Mon Mar 4 18:37:03 CET 2002 Paolo Molaro * Array.cs: allow copying an empty array to an empty array. Mon Mar 4 17:59:16 CET 2002 Paolo Molaro * String.cs: fixed LastIndexOf (string) to do a bit of argument checking. 2002-03-04 Duco Fijma * Version.cs: many fixes to failures found by the newly created test cases for this class. Specifically, the CompareTo member returned wrong values due to the use of Int32.MaxValue as a special value indicating an "undefined" version component. Also implemented the missing operators (==, <, >, etc.), one missing constructor and and some exception throwing. 2002-03-04 Nick Drochak * IServiceProvider.cs: Add missing attribute: ComVisible(false) * Attribute.cs: Add missing attributes: Serializable and AttributeUsage(AttributeTargets.All) Mon Mar 4 11:26:49 CET 2002 Paolo Molaro * MonoType.cs: implemented GetConstructors(), GetFields(), GetMethods(), GetProperties(). * Object.cs: added debugging icall obj_address(). * Type.cs: fixed the binding flags for some Get* methods. Implemented FindMembers() as calls to the specific GetMember methods. 2002-03-01 Duco Fijma * BitConverter.cs: fixed one little bug: ToString(s, n, 0) should give an exception for n>=s.Length. 2002-03-01 Martin Baulig * Array.cs: More argument checking and bug fixing. 2002-03-01 Miguel de Icaza * BitConverter.cs: Indentation match * AppDomain.cs: Added MonoTODOs to this too. * Buffer.cs: Added MonoTODOs to this. 2002-03-01 Martin Baulig * Array.cs: Added argument checking to all methods where it was missing. 2002-03-01 Duco Fijma * BitConverter.cs: Fixed bugs in ToString methods Fri Mar 1 15:20:00 CET 2002 Paolo Molaro * MulticastDelegate.cs: implement operators so mcs3 can be used on linux. 2002-03-01 Nick Drochak * BitConverter.cs: Throw ArgumentException like mscorlib, instead of ArgumentOutOfRangeException like the docs say. 2002-03-01 Martin Baulig * Enum.cs (CompareTo): Correctly override this method from IComparable. * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError. 2002-02-28 Martin Baulig * String.cs: This file now passes the testsuite on Linux :-) * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned; make them private and provide C# wrappers which do proper argument checking. * String.cs (Format): Correctly handle escaped brackets. * String.cs (_CompareChar): New internal function which compares two chars. (_Compare): Provide an internal compare method which can do all sorts of comparision and call it from all the Compare() methods. Also fixed a lot of bugs here, this code now actually passes the testsuite. 2002-02-28 Duncan Mak * Convert.cs: Added the missing methods. The new class status page kicks ass, it even found my typos! Woohoo! (ConvertFromBase): Moved the Exception throwing in here and removed the other occurances so it's all centralized now. (ISDBNull): Implemented. (GetTypeCode): Implemented. 2002-02-27 Duco Fijma * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which states that a lacking format should be interpreted as "N". Also added [Serializable] attribute * TimeSpan.cs: some formatting and added the [Serializable] attribute 2002-02-26 Duncan Mak * WeakReference.cs: Committed for Ajay Kumar Dwivedi. 2002-02-26 Martin Baulig * TimeZone.cs: Use an internal enum rather than magic numbers to access the fields of the interncall GetTimeZoneData. * DateTime.cs: Implemented Parse and fixed a few bugs. * String.cs (TrimStart): Small fix. 2002-02-26 Martin Baulig * DateTime.cs: ParseExact is now fully functional. * String.cs (TrimEnd): Small fix. 2002-02-26 Duco Fijma * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously missing for about six months. Tue Feb 26 14:21:19 CET 2002 Paolo Molaro * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags. 2002-02-26 Martin Baulig * DateTime.cs: Miguel already committed this, but there was still a ChangeLog entry for this missing .... We're now reusing functionality from TimeSpan, printing dates is fully implemented, currently working on parsing. * TimeZone.cs: Fully implemented this. There's a new InternCall in the runtime for this. Fri Feb 22 18:47:08 CET 2002 Paolo Molaro * MonoType.cs: disable constructor. * Object.cs: make GetType() an internalcall. * Type.cs: added correct bindingflags to GetMethods (). All such calls should be reviewed to use the correct flags. Thu Feb 21 19:23:46 CET 2002 Paolo Molaro * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra argument. Thu Feb 21 16:56:51 CET 2002 Paolo Molaro * Type.cs: implemented IsAssignableFrom. 2002-02-21 Duco Fijma * Guid.cs: fixed Guid.Guid(string) ctor. Changed format: "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" The former is documented by Microsoft. The latter is how they actually implemented it in mscorlib:-) Tue Feb 19 20:34:35 CET 2002 Paolo Molaro * MonoCustomAttrs.cs: hooks to get the custom attributes from the runtime. * MonoType.cs: Implemented custom attributes methods. 2002-02-21 Duco Fijma * Guid.cs: Tue Feb 19 20:34:35 CET 2002 Paolo Molaro * MonoCustomAttrs.cs: hooks to get the custom attributes from the runtime. * MonoType.cs: Implemented custom attributes methods. 2002-02-19 Dietmar Maurer * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 2002-02-19 Duncan Mak * Convert.cs: Finished up the missing methods in Convert. Added a new private method ConvertFromBase. 2002-02-19 Dietmar Maurer * String.cs: impl. IConvertible interface 2002-02-18 Duco Fijma * Guid.cs: actual implementation for Guid.Guid(string) Ctor 2002-02-18 Duncan Mak * Convert.cs: Changed from using Type.GetType (string) to just typeof (). Probably will speed things up a bit? 2002-02-18 Ajay Kumar Dwivedi * Array.cs: 1. Fix for GetUpperBound to return correct values 2. made some Properties virtual 3. Adds IsFixedSize and IsReadOnly properties. 4. changes CreateInstance(Type,int[],int[]) to throw Exception when third arg is null. InternalCall CreateInstance changed to CreateInstanceImpl 5. Fixed array.GetUpperBound at a couple of places 6. IndexOf and LastIndexOf now use Object.Equals instead of "==" 7. Added two FIXME's in BinarySearch functions. 2002-02-17 Duncan Mak * TimeZone.cs: Applied the rest of Ajay's patch for IsDaylightSavingTime. Thanks a lot for the nice explanation of how it works! 2002-02-17 Duco Fijma * Guid.cs: added stub for Guid(string) ctor 2002-02-17 Duncan Mak * Convert.cs: Near-complete implementation of Convert.cs Added all the To* methods taking (object) and (object, IFormatProvider) as parameters. Added [CLSCompliant (false)] attributes to methods dealing with unsigned types. Added the missing section on converting to and from DateTime. Only 6 missing methods, all marked with MonoTODOs. Will tackle them later. 2002-02-16 Duncan Mak * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to make IsDaylightSavingTime (DateTime) call IsDaylightSavingTime (DateTime, DaylightTime). Added internal class CurrentTimeZone from Ajay. It needs more work to fill in the appropriate internal calls. Sat Feb 16 12:41:41 CET 2002 Paolo Molaro * Type.cs: fix IsClass. Sat Feb 16 12:02:02 CET 2002 Paolo Molaro * String.cs: fix Trim(). Fri Feb 15 21:02:46 CET 2002 Paolo Molaro * String.cs: fix more off by one errors. Thu Feb 14 18:54:09 CET 2002 Paolo Molaro * MonoType.cs: fix IsValueTypeImpl. * Type.cs: fix IsEnum. Implement Equals methods. Wed Feb 13 21:50:13 CET 2002 Paolo Molaro * Int32.cs: implement IConvertible interface. 2002-02-12 Duncan Mak * TimeZone.cs: Implemented and added to CVS. 2002-02-11 Duncan Mak * Convert.cs: Implemented the ChangeType () methods. Mon Feb 11 19:48:58 CET 2002 Paolo Molaro * Array.cs: make Clone() an internal call. 2002-02-09 Duco Fijma * Changed Guid.NewGuid so that it can use both System.Random and System.Security.Cryptography.RandomNumberGenerator 2002-02-09 Duco Fijma * First version of Guid.NewGuid 2002-02-08 Duncan Mak * RuntimeArgumentHandle.cs: Added to CVS. Fri Feb 8 19:14:54 CET 2002 Paolo Molaro * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs, UnhandledExceptionEventHandler.cs: added delegates. Fri Feb 8 18:06:20 CET 2002 Paolo Molaro * MarshalByRefObject.cs: add ToString () method (apparently needed by nunit). * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered by it in the runtime. 2002-02-08 Dan Lewis * String.cs (Format): implemented 2002-02-07 Duncan Mak * DuplicateWaitObjectException: * InvalidCastException: * NotImplementedException: * NotSupportedException: * NullReferenceException: * OutOfMemoryException: * OverflowException: * RankException: * StackOverflowException.cs: * UnauthorizedAccessException: Added missing constructor used for serialization. 2002-02-07 Dietmar Maurer * String.cs (System.Compare): bug fix 2002-02-06 Dietmar Maurer * Enum.cs (Parse, GetHashCode): impl. 2002-02-05 Duncan Mak * DBNull.cs: This is my first crack at the DBNull class. I think I actually got most of the IConvertible methods right, but I haven't done the research to test whether or not this is the correct behavior. IConvertible.ToType () is the most iffy of all, IMHO. * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException. 2002-02-05 Dietmar Maurer * Enum.cs: added more functionality (GetName, ToObject, Equals) 2002-01-31 Duncan Mak * InvalidOperationException.cs: * NotFiniteNumberException.cs: * ObjectDisposedException.cs: * TypeInitializationException.cs: Added missing bits for serialization/ * AppDomainUnloadedException.cs: * ApplicationException.cs: * ArgumentOutOfRangeException.cs: * ArithmeticException.cs: * ArrayTypeMismatchException: * BadImageFormatException.cs: * Exception.cs: * MissingMemberException.cs: * TypeLoadException.cs: Added missing bits for serialization. 2002-01-30 Duco Fijma * Guid.cs: implemented everything but Guid.NewGuid Tue Jan 29 22:32:36 CET 2002 Paolo Molaro * _AppDomain.cs: remove ToString() method: it doesn't seem right to have it in this interface and it screws up the method vtable setup. 2002-01-28 Andrei Zmievski * Double.cs: implemented IConvertible interface. 2002-01-28 Miguel de Icaza * ArgumentException.cs: Implement serialization constructor. (GetObjectData): Implement serializer. * ArgumentNullException.cs: Implement serialization constructor. * Exception.cs: Implement serialization constructor. (GetObjectData): Implement serializer. 2002-01-23 Miguel de Icaza * DateTime.cs (UnixEpoch): The Begining of the Unix epoch. 2002-01-23 Duncan Mak * EntryPointNotFoundException.cs: * FormatException: Added missing constructor and related bits. * TypeLoadException: Added missing constructor, methods and properties. 2002-01-23 Miguel de Icaza * AppDomain.cs (GetAssemblies): Use foreach construct instead of manually getting the enumerator. (AppDomain.AppDomain): Prime the loaded assemblies with the assemblies loaded by the runtime in our behalf. * AppDomainSetup.cs: Remove private keyword, that is the default. Add a new property DisallowPublisherPolicy. * AppDomain.cs (AppDomain.GetAssemblies): Implement. Tue Jan 22 22:51:48 CET 2002 Paolo Molaro * MonoType.cs, Type.cs: many updates, corrected implementation, completed stubs. 2002-01-20 Andrei Zmievski * Byte.cs: * Char.cs: implemented IConvertible interface. * Boolean.cs: use our own ToString() method directly. 2002-01-20 Duncan Mak * Files I commited recently: Fixed indentation style. 2002-01-20 Nick Drochak * SerializableAttribute.cs: this attrib can be used on enums, structs, and delegates too. Added the appropriate usage flags. 2002-01-18 Duncan Mak * CharEnumerator.cs: Implemented. * String.cs (System): Fixed the GetEnumerator () method(s). * ObsoleteAttribute.cs: * STAThreadAttribute.cs: * MTAThreadAttribute.cs: * ThreadStaticAttribute.cs: * LoaderOptimizationAttribute.cs: * PlatformNotSupportedException.cs: * LoaderOptimization.cs: Added to CVS. 2002-01-18 Duncan Mak * AppDomainUnloadedException.cs: * MethodAccessException.cs: * ContextMarshalException.cs: * CannotUnloadAppDomainException.cs: * DllNotFoundException.cs: * EntryPointNotFoundException.cs: * FieldAccessException.cs: * TypeUnloadedException.cs: * MissingFieldException.cs: Added to CVS. * ApplicationException.cs: * MemberAccessException.cs: * MissingMemberException.cs * MissingMethodException.cs: * SystemException.cs: Added [Serializable] attribute. * Exception.cs: Added [Serializable] attribute, made properties 'Message', 'Source' and 'StackTrace' virtual methods, per 1.0 spec. * ContextStaticAttribute.cs: Added [Serializable] attribute and put in the missing constructor. * Environment.cs: Commented out references to EnvironmentPermissionAttribute, because they're just stubbed out right now and has no implementation. 2002-01-16 Andrei Zmievski * Boolean.cs: implemented IConvertible interface 2002-01-15 Nick Drochak * ResolveEventArgs.cs: class should derive from EventArgs. 2002-01-14 Miguel de Icaza * String.cs (System): Use DefaultMemberName for the String class. Mon Jan 14 17:06:40 CET 2002 Paolo Molaro * String.cs: use IndexerName in index char accessor. Thu Jan 10 21:05:23 CET 2002 Paolo Molaro * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank. * String.c: eliminate 64k+ method calls in search. * Type.cs: handle byref and array types in ToString (). 2002-01-09 Duco Fijma * Guid.cs: created first version 2002-01-10 Dietmar Maurer * MonoType.cs: added missing TypeAttributes to MonoTypeInfo Wed Jan 9 19:35:07 CET 2002 Paolo Molaro * MulticastDelegate.cs: add == and != operator stubs. * String.cs: check for null in == operator. * Type.cs: use a virtual method to get TypeAttributes. Tue Jan 8 23:30:19 EST 2002 Matt Kimball * String.cs: Fixed several off-by-one errors in LastIndexOf* methods 2002-01-09 Nick Drochak * Environment.cs: Comment out Security attribute and put a MonoTODO there as a reminder. We need mcs magic to handle security attributes in corlib. 2002-01-07 Duco Fijma * Created IAppDomainSetup.cs 2002-01-06 Duco Fijma * Created System._AppDomain interface in _AppDomain.cs 2002-01-06 Nick Drochak * ResolveEventArgs.cs: New File, completely implemented! ;) Sat Jan 5 15:53:50 CET 2002 Paolo Molaro * Enum.cs: dummy ToString impl. * String.cs: dummy format implementations to get compiler errors somewhat working. * Type.cs: implemented filter delegates. FindMembers runs the filter, now. 2002-01-05 Ravi Pratap * TODOAttribute.cs : Augment some more; provide two constructors with support for a comment too. 2002-01-05 Nick Drochak * Uncommented those MonoTODO's now that Ravi's got the class in there 2001-01-04 Ravi Pratap * TODOAttribute.cs : Actually add this time ;-) Change name to MonoTODO. 2002-01-04 Jeffrey Stedfast * String.cs (Trim): Fixed a few logic bugs in the code that calculated how much to trim off the end of the string. 2001-01-04 Nick Drochak * Commented out the [TODO] attributes for now. We don't have the class written. Also changed it to [MonoTODO] 2002-01-04 Ravi Pratap * TODOAttribute.cs : Add. We use this attribute to tag all bits in our class libraries that are incomplete. * Array.cs : Apply attribute wherever we find a FIXME which says we need something to be implemented there. * Int32.cs : Ditto. * MulticastDelegate.cs : Ditto. * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs, RuntimeTypeHandle.cs : Ditto. * String.cs : Ditto. * Type.cs : Ditto. * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto. * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto. * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto. * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto. Thu Jan 3 23:24:04 CET 2002 Paolo Molaro * Delegate.cs: add Remove() stub. * Enum.cs: add ToObject(). * Type.cs: add IsEnum property. 2002-01-03 Kristian Rietveld * Convert.cs: add non-CLS-compliant ToBoolean methods for char, DateTime and object. 2001-12-30 Nick Drochak * Byte.cs (Parse): Add comments to aid in testing. 2001-12-21 Miguel de Icaza * Char.cs (Parse): Implement. * Byte.cs (Parse): Implement a fast parser. * SByte.cs (Parse): Implement a fast parser. * UInt16.cs (Parse): Implement a fast parser. * Int16.cs (Parse): Implement a fast parser. * UInt32.cs (Parse): Implement a fast parser. * Int32.cs (Parse): Implement a fast parser. Fri Dec 21 15:14:52 CET 2001 Paolo Molaro * Array.cs: fix null ref in sort code. * UInt64.cs: add bare-bones parse. Thu Dec 20 15:29:52 CET 2001 Paolo Molaro * Byte.cs: removed use of Regexes. Tue Dec 18 18:39:54 CET 2001 Paolo Molaro * Enum.cs: implemented GetValues(), GetNames(), GetName(), IsDefined(), GetUnderlyingType(). * String.cs: fix one instance of Compare(). * Type.cs: implemented GetProperties(), GetProperty(). Thu Dec 13 20:10:57 CET 2001 Paolo Molaro * Array.cs: implement CopyTo (). * Char.cs: implement ToString (). * Exception.cs: bugfix. * Int32.cs: bare-bones Parse (). * MonoType.cs: query the needed info with an internalcall. * String.cs: speedups, bugfixes, reduced copies. * Type.cs: added missing fields. Implemented many of the Is* properties. Implemented GetMethod(), GetConstructor(), GetMethods(), GetFields(), FindMembers(), ToString(). 2001-12-11 Dick Porter * DateTime.cs: Implemented FromFileTime() and ToFileTime() * Console.cs: Use handles rather than casting file descriptors 2001-12-08 Nick Drochak * Byte.cs (Parse): Start implementation. Parse(string) works, but now we need to handle other formats 2001-12-06 Dietmar Maurer * DateTime.cs: added an icall to GetNow() 2001-12-04 Dietmar Maurer * Double.cs: added the parse method from Bob Smith 2001-11-28 Miguel de Icaza * UInt64.cs: ditto. * UInt32.cs: ditto. * Int32.cs (Int32.CompareTo): Fix because we can not just substract the values. Return possitive value if the object is null. * Boolean.cs: (Boolean.CompareTo): ditto. * Int16.cs (Int16.CompareTo): ditto. * Byte.cs (Byte.CompareTo): ditto. * SByte.cs (SByte.CompareTo): ditto. * Char.cs (Char.CompareTo): ditto. * Decimal.cs (Decimal.CompareTo): ditto. * Int64.cs (Int64.CompareTo): ditto. * Single.cs: Ditto. * UInt16.cs: Ditto. 2001-11-28 Nick Drochak * Byte.cs: Throw NotImplementedException for Parse. 2001-11-27 Derek Holden * IntegerFormatter.cs: Formatting of type "Number" was not using NumberFormatInfo.NumberNegativePattern. 2001-11-26 Dick Porter * LocalDataStoreSlot.cs: No need to delete a system TLS slot in the finalise routine any more 2001-11-21 Miguel de Icaza * ApplicationException.cs: internationalize by adding calls to Locale.GetText (). And throw NotImplementedExceptions on calls that we have to implement. * Version.cs: Ditto. * ValueType.cs: ditto. * UnauthorizedAccessException.cs: ditto. * UInt32.cs: ditto. * UInt64.cs: ditto. * UInt16.cs: ditto. * TypeLoadException.cs: ditto * TypeInitializationException.cs: ditto. * Type.cs: ditto. * TimeSpan.cs: ditto. * SystemException.cs: ditto. * String.cs: ditto. * StackOverflowException.cs: ditto.x * Single.cs: ditto. * SByte.cs: ditto. * RuntimeTypeHandle.cs: ditto. * RuntimeMethodHandle.cs: ditto. * RuntimeFieldHandle.cs: ditto. * Random.cs: ditto. * OutOfMemoryException.cs: ditto. * OperatingSystem.cs: ditto. * ObjectDisposedException.cs: ditto. * NullReferenceException.cs: ditto. * NotImplementedException.cs: ditto. * NotFiniteNumberException.cs: ditto.o * MulticastNotSupportedException.cs: ditto. * MissingMethodException.cs: ditto. * MemberAccessException.cs: ditto. * Math.cs: ditto. * InvalidCastException.cs: ditto. * IntegerFormatter.cs: ditto. * Int32.cs: ditto. * Int16.cs: ditto. * IndexOutOfRangeException.cs: ditto. * Environment.cs: ditto * Enum.cs: ditto. * DuplicateWaitObjectException.cs: ditto. * DivideByZeroException.cs: ditto. * Delegate.cs: ditto * DecimalFormatter.cs: ditto. * Decimal.cs: ditto. * DateTime.cs: ditto. * Convert.cs: ditto. * Char.cs: ditto. * Byte.cs: ditto. * Boolean.cs: ditto. * ArrayTypeMismatchException.cs: ditto. * ArithmeticException.cs: ditto. * ArgumentOutOfRangeException.cs: ditto. * ArgumentNullException.cs: ditto. * Enum.cs: Make it derive from ValueType, add CompareTo method. * Attribute.cs: Reformat. 2001-11-14 Miguel de Icaza * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32, UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the exception if the value is null too. * Char.cs (CompareTo): ditto. * ApplicationException.cs: Added constructor that does serialization. * ParamArrayAttribute.cs: Define attribute correctly. Wed Nov 14 16:31:19 CET 2001 Paolo Molaro * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf. * Array.cs: fix Array.Copy. * AssemblyLoadEventArgs.cs: rename field. * CLSCompliantAttribute.cs: use correct name for the class. * Char.cs: fix IsLetter. * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs, SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates. * Convert.cs: CLSCompliant updates, add ChangeType() methods. * Delegate.cs: renamed target field to m_target. * Enum.cs: added missing methods. * MonoType.cs: add a constructor and some needed properties. * Object.cs: implement GetType(). * String.cs: CLSCompliant updates. Fixes everywhere to remove the ending 0 char. * Type.cs: add missing methods/properties. 2001-11-10 Sean MacIsaac * AttributeUseage.cs: Should define AttributeUsageAttribute. * CLSCompliant.cs: Marked with AttributeUsage attribute. * Decimal.cs: Fixed CLSCompliant attributes. * Type.cs: changed _impl to internal (needs to be accessable by subclasses). (TypeHandle): Marked as abstract, implementation removed. (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor, GetMethod): Added stub implementations so NUnit would link against corlib Tue Nov 6 09:11:43 CET 2001 Paolo Molaro * AppDomain.cs: use an internal constructor for AssemblyBuilder. 2001-11-05 Miguel de Icaza * NonSerializedAttribute.cs: Add AttributeUsage rules for this attribute. Fri Nov 2 18:23:15 CET 2001 Paolo Molaro * String.cs: fix a couple of bugs. * AppDomain.cs: use new AppBuilder constructor. * Buffer.cs, GC.cs, NonSerializedAttribute.cs, NotImplementedException.cs, ObjectDisposedException.cs, UnauthorizedAccessException.cs: add implementation. * OverflowException.cs: fix class name. 2001-10-28 Jeffrey Stedfast * String.cs: Don't use a terminating nil char for our internal array. 2001-10-27 Miguel de Icaza * Delegate.cs (Delegate.CombineImpl): Implement. (Delegate.Combine): Implement. * MulticastDelegate.cs (MulticastDelegate.Equals): Implement. (MulticastDelegate.CombineImpl): This was not as trivial as I thought. * ContextStaticAttribute.cs: Added AttributeUsage to ContextStaticAttribute. * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute 2001-10-15 Martin Weindel * added Decimal.cs * added DecimalFormatter.cs (internal class used from System.Decimal) 2001-10-11 Thomas Neidhart * Convert.cs: Added methods for Base64 transforming just used the existing System.Security.Cryptography.ToBase64Transform, should be changed to use a stand-alone class, e.g. Base64Encoder 2001-10-10 Derek Holden * IntegerFormatter.cs: Added. Implements ToString for all the integer data types for all the format types. * Byte.cs: Using IntegerFormatter for ToString's. * SByte.cs: Using IntegerFormatter for ToString's. * Int16.cs: Using IntegerFormatter for ToString's. * Int32.cs: Using IntegerFormatter for ToString's. * Int64.cs: Using IntegerFormatter for ToString's. * UInt16.cs: Using IntegerFormatter for ToString's. * UInt32.cs: Using IntegerFormatter for ToString's. * UInt64.cs: Using IntegerFormatter for ToString's. 2001-10-07 Miguel de Icaza * Exception.cs: Implement bits of serialization. * RuntimeFieldHandle.cs: Implement Serialization features. * Type.cs: Implement TypeHandle property. 2001-09-28 Dick Porter * LocalDataStoreSlot.cs: Implemented Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro * String.cs: fix off-by-one error in Trim(). Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro * Type.cs: added GetType () method. Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro * MissingMethodException.cs, MissingMemberException.cs, MemberAccessException.cs: added. Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro * String.cs: don't access the string array out of bounds in LastIndexOf. * Type.cs: fix return type of the Assembly property. Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro * String.cs: make Intern and IsIntern internalcalls. 2001-09-13 Dick Porter * Type.cs: Added a stub for the IsValueType property. * SystemException.cs (System): Added the other constructor, so that System.Threading exceptions can inherit it. 2001-09-08 Jeffrey Stedfast * String.cs (TrimStart): Don't keep looping through the trimchars once we've found a match. (TrimEnd): Same here. (Trim): And finally here. 2001-09-07 Ravi Pratap * Char.cs (IsLetterOrDigit): Implement. (IsLower): Implement, but we need to be Unicode aware. (IsNumber): Implement. (IsPunctuation): Implement. (IsWhiteSpace): Implement. (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :) (ToLower): Same here. 2001-09-04 Miguel de Icaza * Object.cs: Shortcut, if (a == b) then return true. Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro * Delegate.cs: we need a pointer to the method thunk in the delegate object. Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro * AsyncCallback.cs, common.src: add AsyncCallback delegate. 2001-09-06 Jeffrey Stedfast * String.cs (System): Don't mix uint and int. 2001-09-04 Jeffrey Stedfast * String.cs (BoyerMoore): Modified to not use pointers and to instead use indexes. (IndexOf): Use BoyerMoore. 2001-09-02 Miguel de Icaza * All over: Use the autogenerated enumerations from the ECMA documentation that Sergey wrote. * PlatformID.cs: Add Unix definition. * OperatingSystem.cs: Use Unix instead of Linux here. * MarshalByRefObject.cs: Mark class as [Serializable]. 2001-08-28 Dietmar Maurer * Console.cs: impl. (write only) implemented the stdin stuff * Int32.cs: impl. real op_Equal 2001-08-24 Miguel de Icaza * (common.src): Removed IAsyncResult as it is not on CVS yet. * UIntPtr.cs: Removed CLSCompliant attribute before the namespace, as it breaks the build. 2001-08-23 Michael Lambert * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, added CLSCompliant attribute * IAsyncResult.cs: Added * common.src: Added IAsyncResult.cs 2001-08-23 Michael Lambert * UIntPtr.cs: Added * common.src: Added UIntPtr.cs 2001-08-20 Dietmar Maurer * Attribute.cs: uncomment some code to make it compile again * mono.src: removed duplicated Attribute.cs 2001-08-16 Nick Drochak * Attribute.cs: implemented all methods except GetHashCode() * common.src: added Attribute.cs so it would compile in 2001-08-10 Dietmar Maurer * Object.cs: changed MemberWiseClone to MemberwiseClone, and marked it as InternalCall * common.src: removed UriFormatException.cs because the file is not there. * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr * Char.cs: replaced byte with char * Array.cs: make it work with the mono interpreter 2001-08-06 Miguel de Icaza * Version.cs: Make the class sealed 2001-08-08 Bob Smith * Random.cs: Many compile fixes. * Random.cs: I read a bad spec. Class updated to match real spec. 2001-08-06 Miguel de Icaza * IntPtr.cs: Added and Completed implementation. * Uri.cs: Add a note. 2001-08-06 Bob Smith * Random.cs: Compile fix. Needs more testing. 2001-08-06 Garrett Rooney * Uri.cs: Initial Implementation. Parsing needs to be fixed to take into account IPv6 addresses, url encoding needs to be implemented, and various minor methods need to be written, but this is a decent start. 2001-08-06 Dietmar Maurer * common.src: added Object.cs * mono.src: added ValueType.cs 2001-08-02 Dietmar Maurer * Math.cs: replaced libc with libm 2001-08-02 Bob Smith * Random.cs: Implemented. Needs testing. 2001-08-02 Miguel de Icaza * IServiceProvider.cs, EventHandler.cs: New files. 2001-08-02 Marcel Narings * DateTime.cs: Cleaned up a bit. Added the Add* family members. Added exceptions. Added IConvertible. Still needs some platform dependend stuff, the Parse and ToString members 2001-08-01 Dietmar Maurer * Type.cs (GetTypeFromHandle): added placeholder 2001-07-24 Derek Holden * Boolean.cs: Formatted to code style standard. Added GetTypeCode which is really an IConvertible defined method. * Byte.cs: Added a missing Parse method. Put in Parse and ToString behavior, still need to do the main Parse and ToString. * Char.cs: Added a bunch of missing ECMA methods. Commented a specification discrepency. Still didn't any unicode stuff, though every IsFoo(char c) method has an IsFoo(string, index) counterpart, added wrappers for those. * Convert.cs: Fixed NaN/Inf checking and double/float rounding. Added ToType for IConvertible classes * Double.cs: Fixed ECMA min and max values. Added IsInfinity / IsNaN methods. Changed Inf/NaN internals. * IConvertible.cs: Added comments for using Convert.ToType. Changed return values to draft base values. * Int16.cs: Added a missing Parse statement. Put in behavior for overloaded ToString and Parse methods. * Int32.cs: Added a missing Parse statement. Put in behavior for overloaded ToString and Parse methods. * Int64.cs: Added a missing Parse statement. Put in behavior for overloaded ToString and Parse methods. * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN methods. Changed Inf/NaN internals. * SByte.cs: Added a missing Parse method. Put in Parse and ToString behavior, still need to do the main Parse and ToString. * UInt16.cs: Added a missing Parse statement. Put in behavior for overloaded ToString and Parse methods. * UInt32.cs: Added a missing Parse statement. Put in behavior for overloaded ToString and Parse methods. * UInt64.cs: Added a missing Parse statement. Put in behavior for overloaded ToString and Parse methods. 2001-07-20 Miguel de Icaza * MulticastDelegate.cs: New File. * Delegate.cs: New file. * Enum.cs: New file. * Attribute.cs: New file. * Type.cs: New file. * ParamArrayAttribute.cs: New file. * RuntimeTypeHandle.cs: New file. * MulticastDelegate.cs: Added. * DateTime.cs: Added * Delegate.cs: Added 2001-07-18 Michael Lambert * AttributeTargets.cs: Add. 2001-07-19 Jeffrey Stedfast * Char.cs: Made ToUpper and ToLower public methods. * String.cs: Lots and lots of compile fixes - just need to write DateTime.cs and this should build completely now. 2001-07-19 Bob Smith (bob@thestuff.net) * Math.cs: Implemented. 2001-07-19 Miguel de Icaza * String.cs: Removed tolower and toupper. * Char.cs: Moved ToLower and ToUpper from string to here. * Convert.cs ToByte (float value), ToByte (double value) Use IsNan instead of comparing the value to Nan. 2001-07-19 Duco Fijma (duco@lorentz.xs4all.nl) * TimeSpan.cs: New implementation. 2001-07-18 Scott Sanders * UriFormatExcpetion.cs: Add - 85% complete 2001-07-17 Jeffrey Stedfast * String.cs (IndexOf): Slight optimization that allows skipping over a few chars here and there. This isn't as good as using my Boyer-Moore implementation, however, Boyer-Moore is only really good for long strings (I plan on making the code decide which string search algorithm it should use on-the-fly at some point). (LastIndexOf): Fix to work correctly. (BoyerMoore): Took out some unneeded code and fixed an edge-case. 2001-07-16 Michael Lambert * EventArgs.cs: Add. 2001-07-16 Miguel de Icaza * Version.cs: Remove my buggy comment. 2001-07-15 Sean MacIsaac * String.cs: Spelling error of IComparable, object's MemberwiseClone cannot be overridden. Made indexer valid for now, but not sure what to do about this in the long run. Seems to be a couple bugs in csc.exe having to do with multiple pointer defs in the same statement, and returning subclasses of a class in the return type of an interface function implementation. Also moved operators inside of class definition. 2001-07-14 Jeffrey Stedfast * String.cs: A tom of compile fixes, although we still don't compile. * IConvertible.cs: The To*Int64() methods return *Int64's, not *Int32's. Also, it's ToDateTime() not ToDateType(). 2001-07-14 Jeffrey Stedfast * String.cs: Apparently I needed to at least write stubs for the IConvertible interfaces. *sigh* 2001-07-14 Jeffrey Stedfast * String.cs: Many logic/other fixes and better usage of the features of c# (tolower): New convenience method to help condense code. (toupper): Another new helper method. (Compare): Use the new helper methods. (ToLower): use tolower(). (ToUpper): use toupper(). (LastIndexOfAny): Implemented. (BoyerMoore): New private helper method that implements a modified version of the Boyer-Moore search algorithm. Noothing uses it yet as I'm not 100% sure it even works properly with unicode strings not to mention it uses a huge lookup-table :-) (Split): Implemented. 2001-07-13 Jeffrey Stedfast * TODO: Added things that need to be finished in System.String * String.cs: New source file implementing the System.String class 2001-07-12 Sean MacIsaac * TypeCode.cs: UInt64 was UInt63. * Object.cs: Fixed a numer of compiler errors. * Array.cs: Fixed some compiler errors. * IComparable.cs: Fixed some compiler errors. * ICloneable.cs: Fixed some compiler errors. * IConvertible.cs: Fixed some compiler errors. * IFormattable.cs: Fixed a compiler error. * IFormatProvider.cs: Fixed a compiler error. * IDisposable.cs: Fixed a compiler error. * IFormatProvider.cs: Added public accesability type to IFormatProvider. * Exception.cs: Added a using statement to remove compile time error. * ApplicationException.cs: Removed a ; that was causing a compiler error. * Int16.cs: Fixed some compiler errors. * Int32.cs: Fixed some compiler errors. * Int64.cs: Fixed some compiler errors. * SystemException.cs: Fixed a compiler error. * UInt16.cs: Fixed some compiler errors. * UInt32.cs: Fixed some compiler errors. * UInt64.cs: Fixed some compiler errors. * Void.cs: Fixed a compiler error. 2001-07-12 Joe Shaw * Array.cs: Fix backwards parameters to Array.SetValue() throughout. (BinarySearch): Fix backward logic surrounding whether to call value.CompareTo or comparer.Compare. (LastIndexOf): Stop being stupid. I am so not used to strongly bounded arrays... (Sort): Implement a quicksort. 2001-07-11 Joe Shaw * Array.cs: Change all instances of trying to access an array with the index operator to calls to GetValue and SetValue, and add InternalGetValue and InternalSetValue which are internal calls into the runtime. Ew. 2001-07-10 Joe Shaw * Array.cs: Implemented everything but Sort(). 2001-07-09 Jeffrey Stedfast * Object.cs (Object::Equals): Object variable name is `o'. 2001-07-06 Joe Shaw * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs: Implement the IComparable and IFormattable interfaces. Fix a typo (publig -> public) * ApplicationException.cs, ArgumentException.cs, ArgumentNullException.cs, ArgumentOutOfRangeException.cs, ArtithmeticException.cs, ArrayTypeMismatchException.cs, DivideByZeroException.cs, DuplicateWaitObjectException.cs, ExecutionEngineException.cs, FormatException.cs, IndexOutOfRangeException.cs, InvalidCastException.cs, InvalidOperationException.cs, InvalidProgramException.cs, MulticateNotSupportedException.cs, NotFiniteNumberException.cs, NotSupportedException.cs, NullReferenceException.cs, OutOfMemoryException.cs, OverflowException.cs, RankException.cs, StackOverflowException.cs, SystemException.cs, TypeInitializationException.cs: Added all of the exceptions specified by the language spec. Mmmm... bloat. 2001-07-06 Miguel de Icaza * Int64.cs, Int32.cs: Put. Parsing and ToString missing. Should do a generic routine all of these guys use. * Int16.cs: identified missing methods. * UInt16.cs, UInt32.cs, UInt64.cs: Add. 2001-06-26 Miguel de Icaza * TypeCode.cs: Implement * Void.cs: Implement. * TODO: Add file to keep track of pending tasks. * Object.cs, ValueType.cs: Implement.