2009-06-20 Zoltan Varga <vargaz@gmail.com>
[mcs.git] / class / corlib / System / ChangeLog
blob10a2ea2612a69b2355de126056b4a3a7737bff28
1 2009-06-20  Zoltan Varga  <vargaz@gmail.com>
3         * IntPtr.cs (.ctor): Allow long values whose 31th bit is set.
5 2009-06-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
7         * DateTime.cs: quick fix for the 1.x build.
9 2009-06-18 Gonzalo Paniagua Javier <gonzalo@novell.com>
11         * AppDomainSetup.cs: update attribute.
12         * TermInfoDriver.cs: ensure we are initialized in CheckWindowDimensions().
13         * DateTimeOffset.cs: Implement Parse().
14         * DateTime.cs: add 'zzz' to the list of default time formats. Return a
15         DateTimeOffset from _DoParse. Fixed the offset minutes when the
16         timezone is specified as a negative one.
17         * Console.cs: updates for MoveBufferArea().
18         * AppDomainManager.cs: implement EntryAssembly.
19         * AppDomain.cs: update attribute.
21 2009-06-15  Atsushi Enomoto  <atsushi@ximian.com>
23         * Environment.cs : bump corlib version.
25 2009-06-12  Bill Holmes  <billholmes54@gmail.com>
27         * Variant.cs (GetValue):  Changing the bool case to use the short value.  
28           This is to avoid junk in the high word.
30         Contributed under MIT/X11 license.
32 2009-06-10  Marek Safar  <marek.safar@gmail.com>
34         * Predicate.cs, Action.cs, Funcs.cs, Comparison.cs, IComparable.cs,
35         Converter.cs, EventHandler.cs: Add type variance.
36         
37         * InvalidTimeZoneException.cs,
38         TimeZoneNotFoundException.cs: New file.
40 2009-05-27  Zoltan Varga  <vargaz@gmail.com>
42         * AppDomain.cs (DoAssemblyResolve): Fix recursion detection. Fixes #507003.
44 2009-05-26  Mark Probst  <mark.probst@gmail.com>
46         * Thread.cs: Don't set the execution context when creating a
47         thread because the _ec member is thread static and we set the
48         wrong one.  It's now set by the runtime.  We just provide the
49         correct one.
51         * Environment.cs: Bump corlib version.
53 2009-05-22  Zoltan Varga  <vargaz@gmail.com>
55         * Tuple.cs Tuples.cs: New files.
57         * Lazy.cs LazyExecutionMode.cs Funcs.cs: New files.
59 2009-05-14 Gonzalo Paniagua Javier <gonzalo@novell.com>
61         * Type.cs: (GetInterfaceMap) 'this' can't be an interface itself.
62         Fixed bug #503728.
64 2009-05-03 Gonzalo Paniagua Javier <gonzalo@novell.com>
66         * TermInfoDriver.cs: replace Peek with DataAvailable.
68 2009-05-02  Sebastien Pouliot  <sebastien@ximian.com>
70         * Console.cs: Remove Windows-specific p/invokes and SSC code
71         from the NET_2_1 build.
73 2009-05-01  Sebastien Pouliot  <sebastien@ximian.com>
75         * AppDomainManager.cs: Fix base class for NET_2_1 and implement
76         CheckSecuritySettings (added in 2.0SP and part of SL API)
78 2009-04-29 Gonzalo Paniagua Javier <gonzalo@novell.com>
80         * Enum.cs: return the value as an enum of the right type.
82 2009-04-28 Gonzalo Paniagua Javier <gonzalo@novell.com>
84         * Enum.cs: avoid exceptions from ToObject and use Try* instead.
86 2009-04-25  Miguel de Icaza  <miguel@novell.com>
88         * TermInfoDriver.cs: Use the new StreamReader.DataAvailable to
89         load all the data that was added into the `stdin' stream when we
90         did the `Read'.
92 2009-04-24  Sebastien Pouliot  <sebastien@ximian.com>
94         * Environment.cs: #ifdef out code that use the registry for the 
95         NET_2_1 profile and some other properties (2) that added
96         [SecuritySafeCritical] methods to audit inside Moonlight.
98 2009-04-21  Mark Probst  <mark.probst@gmail.com>
100         * Environment.cs: Bump corlib version.
102 2009-04-21  Miguel de Icaza  <miguel@novell.com>
104         * TermInfoDriver.cs: Prevent race condition if two threads try to
105         initialize the Console at the same time. 
107         What happens is that inited is set, and elsewhere we try to
108         dereference native_terminal_size before it is set.
110         * Reduce code size by using a table instead of manually making a
111         few hundred calls.
112         
113 2009-04-20  Miguel de Icaza  <miguel@novell.com>
115         * Enum.cs (MonoEnumInfo): Compare bytes, shorts, ints and longs as
116         unsigned values as specified and to fix 371559, from the bug:
118                 So the actual difference is that MSFT's Enum.GetValues
119                 orders the members as unsigned even when the underlying
120                 type is int.  See the following.  Perhaps that's what's
121                 being implied by "binary values" in that Enum.GetValues
122                 MSDN quote above.
124 2009-04-18  Mark Probst  <mark.probst@gmail.com>
126         * NumberFormatter.cs: Keep the current thread's number formatter
127         as a ThreadStatic member.
129 2009-04-18  Mark Probst  <mark.probst@gmail.com>
131         * Environment.cs: Bump corlib version.
133 2009-04-12 Gonzalo Paniagua Javier <gonzalo@novell.com>
135         * GCNotificationStatus.cs: new enum.
137 2009-04-10  Zoltan Varga  <vargaz@gmail.com>
139         * Array.cs: Make some of the InternalArray methods non-generic to cut down
140         on the number of instantiations. Add implementation for 
141         ICollection:IsReadOnly.
143 2009-03-26  Jb Evain  <jbevain@novell.com>
145         * Delegate.cs (CreateDelegate): Support for delegates
146         on static methods closed on a null target.
148 2009-03-26  Zoltan Varga  <vargaz@gmail.com>
150         * Environment.cs: Bump corlib version.
152 2009-03-25  Sebastien Pouliot  <sebastien@ximian.com>
154         * Delegate.cs: Add new parameter to CreateDelegate_internal (icall)
155         * Environment.cs: Bump mono_corlib_version to 73
157 2009-03-25  Jb Evain  <jbevain@novell.com>
159         * Delegate.cs (CreateDelegate): fix checks to deal with
160         valuetypes -> obj conversions for arguments, and avoid
161         issues with such unallowed conversion for return types.
163 2009-03-23  Zoltan Varga  <vargaz@gmail.com>
165         * String.cs (LastIndexOf): Handle empty strings correctly. Fixes #486234.
167 2009-03-18  Zoltan Varga  <vargaz@gmail.com>
169         * Type.cs (GetGenericTypeDefinition): Make this throw an exception to be
170         consistent with MS.NET. Move the real implementation to MonoType.
172 2009-03-18  Marek Safar  <marek.safar@gmail.com>
174         * Decimal.cs: Initialize all fields.
176 2009-03-16 Gonzalo Paniagua Javier <gonzalo@novell.com>
178         * ConsoleDriver.cs:
179         * TermInfoDriver.cs: handle Ctrl-D (or similar) in ReadLine.
180         Fixes bug #483950.
182         * ControlCharacters.cs: index to the control characters list.
183         * Environment.cs: bumped corlib version.
185 2009-03-14  Miguel de Icaza  <miguel@novell.com>
187         * Convert.cs (ToType): Control whether this internal function will
188         call an IConvertible.ToType method or not.  
190         Classes and structs implementing IConvertible in mscorlib (the
191         only callers that can access Convert.ToType) must pass false to
192         avoid a infinite recursion problem and callers from the public
193         Convert API must call it with true.
195         This fixes the regression reported in #485377 that was introduced
196         by the fix for #481687.
198         * Int16.cs, UInt64.cs, Double.cs, Enum.cs, SByte.cs, UInt16.cs,
199         Byte.cs, Decimal.cs, Int32.cs, String.cs, Int64.cs, Char.cs,
200         Boolean.cs, Single.cs, UInt32.cs: Update the call sites.
202 2009-03-07  Gert Driesen  <drieseng@users.sourceforge.net>
204         * Convert.cs: Do not throw InvalidCastException if
205         IConvertible.ToType returns null.
207 2009-03-06  AndrĂ©s G. Aragoneses  <aaragoneses@novell.com>
209         * Convert.cs: Correct typo in exception message.
211 2009-03-06  Miguel de Icaza  <miguel@novell.com>
213         * Convert.cs: Apply patch from Tom Hindle that uses
214         IConvertible.ToType if there are no other possible conversions
215         defined. 
217         Fixes: #481687 
219 2009-03-06  Rodrigo Kumpera  <rkumpera@novell.com>
221         * MonoType.cs (MonoTypeInfo): Add default_ctor field.
223         * MonoType.cs: Add GetDefaultConstructor that caches using
224         type_info.default_ctor.
226         * MonoType.cs (FullName): Protects against type_info been replaced
227         under the hood.
229         * Activator.cs (CreateInstance): If the type is a MonoType resolve the
230         default constructor using the new method from MonoType.
232         Improves Activator::CreateInstance performance by at least 30%, reduces object churn
233         and domain lock contention.
235 2009-03-03  Rodrigo Kumpera  <rkumpera@novell.com>
237         * Guid.cs (BaseToString): Reduce allocations.
239 2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>
241         * Environment.cs: Bump corlib version.
243 2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>
245         * Enum.cs (IsDefined): If the enum underlying type is int32, use
246         the generic version, which doesn't box every element of the array.
248 2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>
250         * Enum.cs (GetName): If the enum underlying type is int32, use
251         the generic version, which doesn't box every element of the array.
253 2009-03-02  Rodrigo Kumpera  <rkumpera@novell.com>
255         * Enum.cs (MonoEnumInfo::GetInfo): Share the boxed form of the
256         MonoEnumInfo between both caches.
258 2009-02-28  Zoltan Varga  <vargaz@gmail.com>
260         * Enum.cs (FindName): Use a hash table for looking up names instead of
261         a linear search for enums with a lot of values.
263 2009-02-27  Rodrigo Kumpera  <rkumpera@novell.com>
265         * UInt16.cs (CompareTo/short): Make it return the
266         same values as the /object version.
268         * Enum.cs (CompareTo): Use new compare_value_to icall to do the comparison.
269         This avoids two allocations and reduce the number of trips to unmanaged land
270         by one.
272         The performance improvement is up to 3.5x with the bonus of reducing the generated
273         garbage.
275 2009-02-26  Marek Safar  <marek.safar@gmail.com>
277         * Nullable.cs: Inline GetValueOrDefault.
279 2009-02-26  Zoltan Varga  <vargaz@gmail.com>
281         * String.cs (FormatHelper): If all the arguments are strings, compute an
282         initial length for the stringbuilder to avoid reallocations.
284         * MonoType.cs (FullName): Cache the result of this in a field, as
285         computing it is expensive.
287         * Environment.cs: Bump corlib version.
288         
289 2009-02-25  Zoltan Varga  <vargaz@gmail.com>
291         * Enum.cs (GetInfo): Add a global cache in addition to the thread-local
292         caches to accomodate short living threads like threadpool threads.
294 2009-02-23  Zoltan Varga  <vargaz@gmail.com>
296         * Type.cs: Add IsUserType internal property.
298 2009-02-21  Jb Evain  <jbevain@novell.com>
300         * MonoType.cs (InvokeMember): don't pass a null args to
301         Binder.BindToMethod. Fix for #471275.
303 2009-02-12  Robert Jordan  <robertj@gmx.net>
305         * Exception.cs: Rename remote_stack_trace for MS.NET
306         compatibility. Fixes #425512.
308 2009-02-12  Lluis Sanchez Gual  <lluis@novell.com>
310         * MarshalByRefObject.cs: Implemented MemberwiseClone(bool).
312 2009-02-10 Gonzalo Paniagua Javier <gonzalo@novell.com>
314         * AppDomain.cs: this fixes the remoting tests.
315         Zoltan found out that there was a domain improperly using shadow
316         copy.
318 2009-02-04 Gonzalo Paniagua Javier <gonzalo@novell.com>
320         * DateTime.cs: check for null and empty strings before anything else
321         in CoreParse.
323 2009-01-27  Zoltan Varga  <vargaz@gmail.com>
325         * Type.cs (GetHashCode): Work on UnderlyingSystemType. Fixes #467229.
327 2009-01-24  Zoltan Varga  <vargaz@gmail.com>
329         * Variant.cs ApplicationIdentity.cs ActivationContext.cs Environment.cs
330         AppDomain.cs: Fix warnings.
332 2009-01-24 Gonzalo Paniagua Javier <gonzalo@novell.com>
334         * AppDomain.cs: LoadAssembly() returns null instead of throwing now.
335         Add new LoadSatellite method.
337 2009-01-20  Mark Probst  <mark.probst@gmail.com>
339         * Exception.cs: Added a comment explaining the use of trace_ips.
341 2009-01-12  Bill Holmes  <billholmes54@gmail.com>
343         * Variant.cs (GetValue):  Handling the NULL IDispatch 
344           and IUnknown case.
346         Contributed under MIT/X11 license.
348 2009-01-09  Miguel de Icaza  <miguel@novell.com>
350         * DateTime.cs: Implement TryParse in a way that will not depend on
351         the try/catch statement.   The try/catch statement is still there
352         *just in case*, I might have missed some codepaths.
354 2009-01-06  Atsushi Enomoto  <atsushi@ximian.com>
356         * DateTime.cs : when ".FF..." is specified, allow milliseconds-less
357           time. Fix #444103.
359 2008-12-19  Bill Holmes  <billholmes54@gmail.com>
361         * Environment.cs (GetEnvironmentVariable) :  Avoiding an nre if 
362           the variable is not set.
364         * Environment.cs (SetEnvironmentVariable) : Adding a call to 
365           internalBroadcastSettingChange to notify Windows that an environment 
366           variable has changed.
368         Contributed under MIT/X11 license.
370 2008-12-18  Jb Evain  <jbevain@novell.com>
372         * String.cs: the Compare methods that were specific to SL2 are now
373         also in .net 2/3.5 sp1.
375 2008-12-10  Bill Holmes  <billholmes54@gmail.com>
377         * Variant.cs (SetValue):   Changing the behavior for COM object in 
378           VARIANTs to match MS.  Also adding support for BStrWrapper, 
379           UnknownWrapper, and DispatchWrapper.
381         Contributed under MIT/X11 license.
383 2008-11-28  Miguel De Icaza  <miguel@novell.com>
385         * TermInfoDriver.cs: Also register a mapping to make verase be the
386         backspace key.  Funny thing: verase was fetched from the termios,
387         but it was *never* actually used in this file.
389         VSUSP and VINTR are likewise ignored.   Must ponder this.
391         This makes the backspace key in MacOS work on interactive
392         applications.
393         
394 2008-11-15  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
396         * Convert.cs: Removed useless check from ToChar (ushort).
398 2008-11-06  Bill Holmes  <billholmes54@gmail.com>
400         * Type.cs (FindMembers):  Changing the instantiated type of the 
401           returned MemberInfo array to match the MemberTypes flag
402           passed in argument 1.
404         Contributed under MIT/X11 license.
406 Mon Nov 3 16:39:37 CET 2008 Paolo Molaro <lupus@ximian.com>
408         * Array.cs: in the IList set_Item, ensure the array
409         element is set using the proper type checks (bug #440819).
411 Mon Oct 13 16:40:56 CEST 2008 Paolo Molaro <lupus@ximian.com>
413         * Environment.cs, OperatingSystem.cs: complete support for
414         PlatformID (bug #433108).
416 2008-10-08 Gonzalo Paniagua Javier <gonzalo@novell.com>
418         * AppDomain.cs: (Load(AssemblyName)) Use the CodeBase after the Name
419         when both are provided.
420         Fixes bug #322228.
422 2008-10-08  Bill Holmes  <billholmes54@gmail.com>
424         * Variant.cs : Adding the BRECORD field to ensure the right size on
425           a 64-bit OS.  32-bit 16 bytes, 32-bit 24 bytes.
427         Contributed under MIT/X11 license.
429 2008-10-08  Bill Holmes  <billholmes54@gmail.com>
431         * Variant.cs (SetValue) : Adding code to handle enums.
433         Contributed under MIT/X11 license.
435 2008-10-08  Bill Holmes  <billholmes54@gmail.com>
437         * Variant.cs : Cleaning up some tab formatting problems.
439         Contributed under MIT/X11 license.
441 2008-10-08  Zoltan Varga  <vargaz@gmail.com>
443         * PlatformID.cs: Define Xbox/MacOSX on the 2.0 profile too, since it
444         is part of NET 3.5 SP1.
446 2008-10-07  Marek Habersack  <mhabersack@novell.com>
448         * Math.cs: implemented the away from zero rounding for the Round
449         (double, int, MidpointRounding) overload.
451 2008-10-06  Zoltan Varga  <vargaz@gmail.com>
453         * Activator.cs (CreateInstance): Don't return the return value of the
454         ctor.Invoke (object, ...) overload since it is null, return 'newOb' instead.
456 Mon Oct 6 15:12:25 CEST 2008 Paolo Molaro <lupus@ximian.com>
458         * Array.cs: better message when keys cannot be compared
459         when sorting (bug #368455).
461 2008-09-29  Rodrigo Kumpera  <rkumpera@novell.com>
463         * Type.cs (MakeGenericType): Only use UnderlyingSystemType for user types.
464         This must exclude TypeBuilder and EnumBuilder. Fixes #430508.
466 2008-09-28  Juraj Skripsky  <js@hotfeet.ch>
468         * String.cs (ReplaceUnchecked): Avoid any unnecessary work and 
469         string allocations by returning early when no oldValue was found.
471 2008-09-24  Marek Habersack  <mhabersack@novell.com>
473         * Double.cs: check whether decimal_separator, group_separator and
474         currency_symbol strings aren't empty before trying to index them
475         in Parse ().
477 2008-09-24  Jb Evain  <jbevain@novell.com>
479         * AppDomain.cs (CreateDomain): call the domain initializer in
480         the newly created AppDomain. Fixes #429545.
482 2008-09-24  Jb Evain  <jbevain@novell.com>
484         * AppDomain.cs: implement the CreateDomain overload which
485         takes an AppDomain initializer. Fixes #429545.
487 2008-09-17  Robert Jordan  <robertj@gmx.net>
489         * DelegateSerializationHolder.cs: Starting with .NET 2.0, delegates
490         of non-public methods are allowed to be serialized. Fixes #425345.
492 2008-09-15  Andy Hume  <andyhume32@yahoo.co.uk>
494         * DateTimeOffset.cs: DateTimeOffset currently has no
495         deserialization constructor, thus deserialization
496         fails ("SerializationException: The constructor to deserialize an
497         object of type System.DateTimeOffset was not found.")
499         Patch attached, implements GetObjectData and that constructor.
500         Also includes tests, which include round-tripping to/from MSFT.
502 2008-09-14  Zoltan Varga  <vargaz@gmail.com>
504         * ConsoleDriver.cs: Remove obsolete GetTtySize icall.
506 2008-09-09  Marek Safar  <marek.safar@gmail.com>
508         * Convert.cs, Decimal.cs: Fixed float/double to decimal range check.
510 2008-09-07  Miguel de Icaza  <miguel@novell.com>
512         * TermInfoDriver.cs: Add support for updating the size of the
513         terminal when it changes.   
515 2008-08-27  Miguel de Icaza  <miguel@novell.com>
517         * TermInfoDriver.cs: Adds support for the Insert and Delete keys
518         on the keyboard.   
520 2008-08-26  Miguel de Icaza  <miguel@novell.com>
522         * New console features are used by gmcs.exe, but since we only
523         build gmcs.exe with the bootstrap corlib, we need to ensure all
524         the new stuff is included in BOOTSTRAP_NET_2_0
526 2008-08-26  Robert Jordan  <robertj@gmx.net>
528         * AppDomain.cs (get_Evidence): Fix endless recursion exposed
529         by the test case of bug #420197.
531 2008-08-24  Miguel de Icaza  <miguel@novell.com>
533         * TermInfoDriver.cs (GetKeyFromBuffer): Add support for reporting
534         Alt-LETTER sequences.   They were ignored previously.
536 2008-08-22  Sebastien Pouliot  <sebastien@ximian.com>
538         * AppDomainSetup.cs: Remove IAppDomainSetup for SL2. This helps
539         the tuner since the methods are then defined correctly (wrt to the
540         implicit implementation of the interfaces)/
542 2008-08-21  Sebastien Pouliot  <sebastien@ximian.com> 
544         * Nullable.cs: Add two ComVisible(false) for SL2 profile.
545         * PlatformID.cs: Add Xbox and MacOX for SL2 profile.
546         * WeakReference.cs: Add default, protected, ctor for SL2.
548 2008-08-20  Miguel de Icaza  <miguel@novell.com>
550         * ConsoleDriver.cs: TtySetup now takes an extra argument: the
551         keypadXmit string.
553 2008-08-16  Gert Driesen  <drieseng@users.sourceforge.net>
555         * Exception.cs: Fixed value of HResult to match MS. Added support for
556         (de)serializing Data. Use deserialized ClassName, if available, to
557         when name of type is used.
559 2008-08-10  Gert Driesen  <drieseng@users.sourceforge.net>
561         * IServiceProvider.cs: Added ComVisible attribute (1.0 only).
562         * String.cs: Fixed argument names to match MS.
564 2008-08-10  Gert Driesen  <drieseng@users.sourceforge.net>
566         * Boolean.cs
567         * Byte.cs
568         * Char.cs
569         * DateTime.cs
570         * DBNull.cs
571         * Decimal.cs
572         * Double.cs
573         * Enum.cs
574         * Int16.cs
575         * Int32.cs
576         * Int64.cs
577         * Single.cs
578         * String.cs
579         * UInt16.cs
580         * UInt32.cs
581         * UInt64.cs: Added missing CLSCompliant attributes for 1.0 profile.
583 2008-08-07  Atsushi Enomoto  <atsushi@ximian.com>
585         * DateTime.cs : zzzz format allows non-fixed length of number, even
586           in exact parsing mode. Fixed bug #377042.
588 2008-08-05  Jb Evain  <jbevain@novell.com>
590         * String.cs: add new NET_2_1 Compare methods.
592 2008-08-03  Miguel de Icaza  <miguel@novell.com>
594         * ConsoleDriver.cs: If the terminal is dumb, do not activate the
595         full terminal support.
597 2008-08-02  Marek Safar  <marek.safar@gmail.com>
599         * Type.cs: Removed _MemberInfo from base classes list.
600         
601 2008-07-28  Marek Safar  <marek.safar@gmail.com>
603         * KnownTerminals.cs: Don't initialize rarely used static data.
605 2008-07-24  Zoltan Varga  <vargaz@gmail.com>
607         * Delegate.cs: Move the rarely used fields to a separate object, add
608         'method_code' field.
610         * Environment.cs: Bump corlib version.
612         * ConsoleDriver.cs: Remove unused Suspend icall.
614 2008-07-21  Marek Safar  <marek.safar@gmail.com>
616         * AppDomain.cs (Load): Check for 0-length assembly name.
618 2008-07-21  Rodrigo Kumpera  <rkumpera@novell.com>
620         * Enum.cs (GetHashCode): Use new icall get_hashcode to
621         avoid allocating a boxed version of the enum basetype.
623 2008-07-17  Marek Safar  <marek.safar@gmail.com>
625         * String.cs: reverted GetHashCode changes.
627 2008-07-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
629         * Char.cs: Remove obsolete lamespecs (it implements IConvertible, small formatting)
631 2008-07-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
633         * Char.cs: Optimize some Is* checks
635 2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
637         * DateTimeOffset.cs: Fix parameter name
639 2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
641         * DateTimeOffset.cs: Remove public, make implicit method
643 2008-07-06  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
645         * Environment.cs: Add missing attribute
647 2008-07-04  Rodrigo Kumpera  <rkumpera@novell.com>
649         * Delegate.cs (get_Method): Use the internal version
650         of GetMethodFromHandle to avoid the generic class check.
652 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
654         * GCCollectionMode.cs: Add attribute
655         * GC.cs: Add semi-stubbed missing method, remove obsolete Lamespec, hide non-public method
657 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
659         * Delegate.cs: Fix parameter names for 2.0 profile
660         * Int64.cs: Fix parameter names
662 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
664         * IntPtr.cs: Fix parameter names, change internal name to accomodate for parameter changes
666 2008-07-04  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
668         * Predicate.cs:
669         * Object.cs:
670         * Nullable.cs
671         * MultiCastDelegate.cs
672         * ModuleHandle.cs
673         * Math.cs
674         * MarshalByRefObject.cs
675         * Int64.cs
676         * Int32.cs
677         * Int16.cs
678         * Environment.cs
679         * Delegate.cs
680         * DateTimeOffset.cs
681         * ConsoleKeyInfo.cs
682         * Console.cs
683         * Array.cs
684         * AppDomain.cs: Fix parameter names
686 2008-07-03  Rodrigo Kumpera  <rkumpera@novell.com>
688         * Exception.cs (GetFullNameForStackTrace): Don't do string
689         concatenation.
691 2008-06-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
693         * ContextMarshalException.cs:
694         * DllNotFoundException.cs:
695         * EntryPointNotFoundException.cs:
696         * FieldAccessException.cs:
697         * MethodAccessException.cs:
698         * MissingFieldException.cs:
699         * PlatformNotSupportedException.cs: Fix parameter names
701 2008-06-30  Marek Safar  <marek.safar@gmail.com>
703         * String.cs: Tweaked hash code methods for better distibution, and speed-up.
705 2008-06-29  Zoltan Varga  <vargaz@gmail.com>
707         * MonoCustomAttrs.cs (IsDefined): Avoid calling the .Assembly property in some
708         cases.
710 2008-06-30  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
712         * Char.cs: Fix formatting, rename wrong named param, remove code duplication
714 2008-06-28  Zoltan Varga  <vargaz@gmail.com>
716         * Enum.cs (GetUnderlyingType): Implement this using an icall.
717         
718         * Enum.cs (Format): Call IsDefined with inherited=false.
720         * Exception.cs: Fix a warning.
722 2008-06-27  Zoltan Varga  <vargaz@gmail.com>
724         * Enum.cs (FindName): Avoid calling String.Compare for the !ignoreCase case.
726 2008-06-27  Rodrigo Kumpera  <rkumpera@novell.com>
728         * Exception.cs: Build method traces using the
729         stack trace StringBuilder.
731 2008-06-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
733         * Version.cs: Fix parameter names
734         * UInt64.cs: 
735         * UInt32.cs:
736         * UInt16.cs:
737         * Int64.cs: Fix parameter names
738         * Int32.cs: Fix parameter names; some small formatting
739         * Int16.cs: Fix parameter names
740         * Double.cs: Fix parameter names; small formatting
741         * Single.cs:
742         * SByte.cs:
743         * Byte.cs:
744         * Boolean.cs:
745         * DateTime.cs:
746         * Enum.cs:
747         * Decimal.cs: Fix parameter names
749 2008-06-14  Zoltan Varga  <vargaz@gmail.com>
751         * Environment.cs: Bump corlib version.
753 2008-06-10  Zoltan Varga  <vargaz@gmail.com>
755         * Math.cs (IEERemainder): Use the normal BitConverter.Int64BitsToDouble method
756         here to fix this on sparc.
758 2008-06-07  Marek Safar  <marek.safar@gmail.com>
760         * Array.cs (IndexOf, LastIndexOf): Fixed more array element comparers used
761         instead of tested value comparers.
763 2008-06-07  Zoltan Varga  <vargaz@gmail.com>
765         * Environment.cs: Bump corlib version.
767 2008-06-05  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
769         * String.cs: Managed replacement for Replace method ;)
771 2008-06-03  Zoltan Varga  <vargaz@gmail.com>
773         * Decimal.cs (Divide): Move expensive equality checks to unmanaged code.
775 2008-06-02  Ivan N. Zlatev  <contact@i-nz.net>
777         * MonoType.cs: For property reflection we should strictly match the return 
778         type if available.
780 2008-06-01  Juraj Skripsky  <js@hotfeet.ch>
782         * String.cs (Substring): Blocking bug #395904 has been fixed,
783         re-enable optimization.
785 2008-06-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
787         * String.cs: Replace Split IndexOf
789 2008-05-30  Marek Safar  <marek.safar@gmail.com>
791         * Array.cs (IndexOf): Use an array element comparer instead of tested value
792         comparer.
794 2008-05-28  Zoltan Varga  <vargaz@gmail.com>
796         * Console.cs (.cctor): Make sdout synchronized in the console case too.
797         Fixes #395069.
799 2008-05-27  Eyal Alaluf <eyala@mainsoft.com>
801         * NumberFormatter.jvm.cs: Fix tables to avoid arithemtic overflow
802           in Double.ToString as exposed by Bug #383531.
804 2008-05-24  Gert Driesen  <drieseng@users.sourceforge.net>
806         * String.cs: Comment out 2.0 compatibility fix for SubString, since it
807         causes regressions in System.Xml.
809 2008-05-24  Gert Driesen  <drieseng@users.sourceforge.net>
811         * String.cs: Changed exception to match MS. Fixed ToCharArray to use
812         startindex for source. In PadLeft and PadRight, only return current
813         string if totalWidth is less than length.
815 2008-05-24 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
817         * Enum.cs: use Array.BinarySearch on the values in IsDefined and
818         GetName instead of looping through the list. Made the cache in
819         MonoEnumInfo thread static to avoid contention.
821 2008-05-20  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
823         * String.cs: Replace Split function
825 2008-05-19  Sebastien Pouliot  <sebastien@ximian.com>
827         * Boolean.cs,
828         * Double.cs,
829         * Enum.cs,
830         * Int64.cs,
831         * Single.cs,
832         * UInt32.cs,
833         * UInt64.cs: Avoid unboxing primitive types more than one time.
834         [Found using Gendarme]
836 2008-05-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
838         * String.cs: Update Trim functions
840 2008-05-19  Zoltan Varga  <vargaz@gmail.com>
842         * ConsoleDriver.cs: Avoid initializing the three driver classes when only one
843         is needed.
845 2008-05-18  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
847         * String.cs: Update Join and Pad functions
849 2008-05-18  Sebastien Pouliot  <sebastien@ximian.com>
851         * Environment.cs: Use String.IsNullOrEmpty inside 2.0 code.
852         [Found using Gendarme]
854 2008-05-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
856         * String.cs: Directly create charenumerator
858 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
860         * String.cs: Resubmit uncritical parts of String patch
862 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
864         * DateTime.cs: Fix parameter names
866 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
868         * Decimal.cs: Fix parameter names
870 2008-05-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
872         * Decimal.cs: Tabbify/Format
874 2008-05-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
876         * Version.cs
877           UnhandledExceptionEventHandler.cs
878           UInt64.cs
879           UInt32.cs
880           UInt16.cs: Fix parameter names
881           Type.cs: Fix parameter names, formatting
882           TimeSpan.cs
883           StringComparer.cs
884           Single.cs
885           SByte.cs: Fix parameter names
887 2008-05-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
889         * Double.cs
890           Enum.cs
891           Exception.cs
892           IComparable.cs
893           IEquatable.cs
894           IFormatProvider.cs
895           IFormattable.cs
896           InsufficientMemoryException.cs: Fix parameter names
898 2008-05-14  Jb Evain  <jbevain@novell.com>
900         * Exception.cs (ToString): output a new line before the 
901         inner exception separator. Fixes #390150.
903 2008-05-12  Gert Driesen  <drieseng@users.sourceforge.net>
905         * Type.cs: Modifies exceptions to match MS. Changed GetTypeFromHandle
906         on 1.0 profile to throw ArgumentException when handle is invalid,
908 2008-05-08  Rodrigo Kumpera  <rkumpera@novell.com>
910         * Activator.cs (CreateInstance): Check for null types when creating
911         the error message.
913 2008-05-07  Robert Jordan  <robertj@gmx.net>
915         * RuntimeFieldHandle.cs, RuntimeTypeHandle.cs, RuntimeMethodHandle.cs:
916         Don't try to serialize uninitialized handles. Fixes #386641.
918 2008-05-06  Marek Safar  <marek.safar@gmail.com>
920         * IntPtr.cs (eplicit long, GetObjectData): Use ToInt64.
922 2008-05-05  Zoltan Varga  <vargaz@gmail.com>
924         * Type.cs (GetTypeFromHandle): Apparently, it is possible to create a 
925         RuntimeTypeHandle with a zero handle value by calling its ctor. Add an argument
926         check for that.
928         * IntPtr.cs (ToInt64): Use (long)(int) on 32 bit platforms to avoid the default
929         unsigned conversion done by the compiler. Fixes #386466.
931 2008-05-04  Zoltan Varga  <vargaz@gmail.com>
933         * Type.cs (UnderlyingSystemType): Add a comment pointing people to 
934         Enum.GetUnderlyingType ().
936 2008-04-26  Zoltan Varga  <vargaz@gmail.com>
938         * Array.cs (LastIndexOf): Return GetLowerBound (0) -1 instead of -1.
939         
940         * Array.cs (LastIndexOf): Fix handling of empty arrays. Fixes #383876.
942 2008-04-13  Zoltan Varga  <vargaz@gmail.com>
944         * String.cs (Split): Fix the handling of RemoveEmptyEntries when the separator
945         matches at the beginning of the string. Fixes #374511.
947 2008-04-13  Jb Evain  <jbevain@novell.com>
949         * ICloneable.cs: use the INSIDE_CORLIB pattern to
950         internalize code that is used outside the corlib.
951         Merged from the Moonlight 2 branch.
953 2008-04-04  Raja R Harinath  <harinath@hurrynot.org>
955         * String.cs (EndsWith) [CultureInfo variant]: Handle null 'culture'.
956         (StartsWith, EndsWith, IndexOf, LastIndexOf) [StringComparison variant]:
957         Throw exception on invalid StringComparison.
959 2008-04-01  Eyal Alaluf <eyala@mainsoft.com>
961         * NumberFormatter.cs NumberFormatter.jvm.cs: Performance optimizations.
962           Reuse a per thread instance to format all the primitive types. Modify
963           class accordingly so the same
964           instance can be used multiple times.
965         * Int16.cs UInt64.cs Double.cs SByte.cs UInt16.cs Byte.csDecimal.cs
966           TimeSpan.cs Int32.cs Int64.cs Single.cs UInt32.cs: Change use of
967           NumberFormatter to adapt to above changes in class interface.
969 2008-03-31  Mark Probst  <mark.probst@gmail.com>
971         * MonoType.cs: Don't do CAS security checks in CheckMethodSecurity
972         for 2.1 profile.
974 2008-03-28  Marek Safar  <marek.safar@gmail.com>
976         * Nullable.cs (Box): Do things explicitly and not rely on broken gmcs
977         behaviour.
979 2008-03-25  Zoltan Varga  <vargaz@gmail.com>
981         * AppDomain.cs: Update after MonoMethod.InternalInvoke signature change.
983         * Environment.cs: Bump corlib version.
985         * DateTime.cs: Fix a warning.
987 2008-03-21  Sebastien Pouliot  <sebastien@ximian.com>
989         * String.cs: Use "this" in Split method instead of calling ToString.
990         Found using Gendarme.
992 2008-03-06  Marek Safar  <marek.safar@gmail.com>
994         * MonoCustomAttrs (GetCustomAttributes): Type cannot be null with
995         typeof (MonoCustomAttrs) hack.
997 Wed Mar 5 19:39:01 CET 2008 Paolo Molaro <lupus@ximian.com>
999         * Type.cs: optimize GetTypeCode () for the common case
1000         (fixes bug #367354).
1002 2008-03-02  Roei Erez  <roeie@mainsoft.com>
1004         * DateTime.cs: Improve the patch supplied by James Purcell to be
1005           dotnet-compatible, and add support for RoundTripKind parsing. 
1006           Fixed reopened bug #352210.
1009 Tue Feb 26 17:50:17 CET 2008 Paolo Molaro <lupus@ximian.com>
1011         * DateTime.cs: instroduce a method that returns ticks monotonically.
1013 2008-02-26  Ivan N. Zlatev  <contact@i-nz.net>
1015         * Attribute.cs, MonoCustomAttrs: MS ignores the inherit param in 
1016         PropertyInfo's ICustomAttributeProvider implementation, but not 
1017         in the Attributes, so directly get the attributes from 
1018         MonoCustomAttrs instead of going throught the PropertyInfo's 
1019         ICustomAttributeProvider.
1020         [Fixes bugs #324472 and #322464]
1022 2008-02-26  Atsushi Enomoto  <atsushi@ximian.com>
1024         * DateTime.cs : fix roundtrip regression in Sys.Xml.XmlConvertTests,
1025           patch by James Purcell (at #352210).
1027 2008-02-25  Atsushi Enomoto  <atsushi@ximian.com>
1029         * DateTime.cs, DateTimeUtils.cs : make Kind value from parse result
1030           as dotnet-compatible. Patch by James Purcell, fixed bug #352210.
1032 2008-02-18  Atsushi Enomoto  <atsushi@ximian.com>
1034         * DBNull.cs : ToType(typeof(DBNull),...) should be allowed.
1036 2008-02-16  Sebastien Pouliot  <sebastien@ximian.com>
1038         * Object.cs: Fix parameter name to match MS implementation. Found
1039         using Gendarme.
1040         * ValueType.cs: Fix parameter name to match MS implementation. 
1041         Found using Gendarme.
1043 2008-02-14  Jb Evain  <jbevain@novell.com>
1045         * Delegate.cs (CreateDelegate): refactor. DRY!
1047 2008-02-12  Gert Driesen  <drieseng@users.sourceforge.net>
1049         * Delegate.cs (CreateDelegate): Walk the inheritance change to find
1050         matching method. Skip methods for which the return type does not match
1051         the delegate. Fixes bug #360784.
1053 2008-02-11  Eyal Alaluf <eyala@mainsoft.com>
1055         * NumberFormatter.cs: Fix ToString("R") for +-Infinity & NaN.
1057 2008-02-08  Sebastien Pouliot  <sebastien@ximian.com>
1059         * Random.cs: Explain (and extend) special case in Next(min,max)
1061 2008-02-08  Juraj Skripsky  <js@hotfeet.ch>
1063         * Random.cs (Next): Use rounding (via implicit conversion) only on
1064         positive values. Fixes bug 359918.
1066 2008-02-03  Sebastien Pouliot  <sebastien@ximian.com>
1068         * Environment.cs: Remove unused method found with Gendarme.
1070 2008-02-02  Gert Driesen  <drieseng@users.sourceforge.net>
1072         * Variant.cs: Fixed line endings.
1073         * MonoType.cs: Fixed parameter name for ArgumentException to match MS.
1075 2008-01-29  Zoltan Varga  <vargaz@gmail.com>
1077         * Type.cs (MakeGenericType): Fix exception message.
1079 2008-01-29  Jb Evain  <jbevain@novell.com>
1081         * AppDomain.cs: add SL overload of DefineDynamicAssembly.
1083 2008-01-29  Marek Safar  <marek.safar@gmail.com>
1085         * Type.cs (MakeGenericType): More argument checks. Fixes #356863 by
1086          Sanghyeon Seo.
1088 2008-01-25  Rodrigo Kumpera  <rkumpera@novell.com>
1090         * MonoType.cs (InvokeMember): Fixed exceptions arguments for last comit.
1092 2008-01-24  Rodrigo Kumpera  <rkumpera@novell.com>
1094         * MonoType.cs (InvokeMember): Check for parameters without default value which
1095         the supplied argument is Missing.Value. Fixes one of the issues of #348522.
1097 2008-01-21  Sebastien Pouliot  <sebastien@ximian.com>
1099         * DateTimeOffset.cs: Avoid NRE on bad cast if null is provided to
1100         Equals(object). Found using Gendarme.
1102 2008-01-16  Zoltan Varga  <vargaz@gmail.com>
1104         * DateTimeOffset.cs: Fix warnings.
1106 2008-01-15  Stephane Delcroix  <sdelcroix@novell.com>
1108         * DateTimeOffset.cs: ParseExact: parse f, F, s too.
1110 2008-01-15  Stephane Delcroix  <sdelcroix@novell.com>
1112         * DateTimeOffset.cs: ParseExact: honor the DateTimeStyles parameter.
1114 2008-01-15  Zoltan Varga  <vargaz@gmail.com>
1116         * AppDomainSetup.cs Buffer.cs Action.cs Array.cs BadImageFormatException.cs Byte.cs
1117         Attribute.cs _AppDomain.cs Boolean.cs AppDomain.cs: Fix some argument names to be 
1118         consistent with MS.
1120 2008-01-14  Sephane Delcroix  <sdelcroix@novell.com>
1122         * DateTimeOffset.cs: start refactoring DoParse.
1124 2008-01-14  Zoltan Varga  <vargaz@gmail.com>
1126         * Type.cs (GetConstructor): Use correct binding flags in type (Type[]) overload.
1127         Fixes #353604.
1129 2008-01-13  Eyal Alaluf <eyala@mainsoft.com>
1131         * NumberFormatter.cs, Double.cs, Single.cs: Fix Single & Double default
1132           ToString to handle +-Infinity & NaN.
1134 2008-01-14  Sephane Delcroix  <sdelcroix@novell.com>
1136         * DateTimeOffset.cs: ParseExact (string, string, IFormatProvider) 
1137         implemented.
1140 2008-01-14  Zoltan Varga  <vargaz@gmail.com>
1142         * NumberFormatter.cs: Remove some redundant assignments.
1144 2008-01-13  Gert Driesen  <drieseng@users.sourceforge.net>
1146         * AppDomain.cs: Also fix bug #350530 for overload taking evidence and
1147         args. On 1.0 profile, throw COMException to match MS and to allow
1148         our unit tests to pass on MS.
1150 2008-01-13  Eyal Alaluf <eyala@mainsoft.com>
1152         * NumberFormatter.cs: Check in redesigned implementation. Improves
1153           double.ToString performance by 2-3 orders of magnitude and other
1154           primitive numeric types ToString performance.
1155         * NumberFormatter.jvm.cs: The TARGET_JVM managed tables for NumberFormatter
1156           class for reuse if a completely managed NumberFormatter is required.
1157         * Int16.cs UInt64.cs Double.cs UInt16.cs SByte.cs Byte.cs TimeSpan.cs
1158           Int32.cs Int64.cs Single.cs UInt32.cs: Adapt to new NumberFormatter.
1160 2008-01-13  Zoltan Varga  <vargaz@gmail.com>
1162         * AppDomain.cs: Check for a missing entry point in the ExecuteAssembly methods.
1163         Fixes #350530.
1165 2008-01-11  Stephane Delcroix  <sdelcroix@novell.com>
1167         * DateTimeOffset.cs: Fixes the MinValue (was equal to MaxValue)...
1169 2008-01-10  Zoltan Varga  <vargaz@gmail.com>
1171         * Delegate.cs: Implement argument checking in CreateDelegate(Type,object,MethodInfo)
1172         method. Make the CreateDelegate(Type,MethodInfo) overload calls this version.
1173         Fixes #352805.
1175 2008-01-10  Stephane Delcroix  <sdelcroix@novell.com>
1177         * DateTimeOffset.cs: chain the Parse* methods together.
1179 2008-01-09  Atsushi Enomoto  <atsushi@ximian.com>
1181         * DateTime.cs : revert the previous fix. It caused regression on
1182           the buildbot.
1184 2008-01-09  Atsushi Enomoto  <atsushi@ximian.com>
1186         * DateTime.cs : fixed bug #352210. Kind is unspecified by default,
1187           while the tick is for local time by default. This fix also involved
1188           special x509 handling.
1190 2008-01-08  Marek Safar  <marek.safar@gmail.com>
1192         * Array.cs (LastIndexOf<T>): Fixed bound checking.
1194 2008-01-06  Zoltan Varga  <vargaz@gmail.com>
1196         * AppDomain.cs: Move the assembly loading in ExecuteAssembly and 
1197         ExecuteAssemblyByName to managed to as said by the MSDN docs. Fixes #350530.
1199         * Environment.cs: Bump corlib version.
1200         
1201 2008-01-02  Marek Habersack  <mhabersack@novell.com>
1203         * Array.cs: fix a typo to unbreak the build.
1205 2008-1-1  Scott Peterson  <lunchtimemama@gmail.com>
1207         * Array.cs: Slight improvement to the quicksort algorithm.
1209 2007-12-28  Gert Driesen  <drieseng@users.sourceforge.net>
1211         * Environment.cs: Bump corlib version.
1213 2007-12-20  Gert Driesen  <drieseng@users.sourceforge.net>
1215         * AppDomain.cs: Added check for null AssemblyName, and invalid
1216         AssemblyName.Name to DefineDynamicAssembly overloads. Loosely based on
1217         patch provided by Cedric Vivier. Fixes bug #349272.
1219 2007-12-20  Stephane Delcroix  <sdelcroix@novell.com>
1221         * DateTimeOffset.cs: set [Min|Max]Value to UTC. Fixes #349621.
1223 2007-12-19  Stephane Delcroix  <sdelcroix@novell.com>
1225         * DateTime.cs:
1226         * DateTimeOffset.cs:
1227         * DateTimeUtils.cs: factored out the common pieces of DT and DTO into DTU.
1229 2007-12-18  Stephane Delcroix  <sdelcroix@novell.com>
1231         * DateTimeOffset.cs: implementing the 4 ToString overloads by reusing
1232         large chunks of System.DateTime code.
1234 2007-12-16  Stephane Delcroix  <sdelcroix@novell.com>
1236         * DateTimeOffset.cs: some bugfix discovered by unit tests.
1238 2007-12-16  Stephane Delcroix  <sdelcroix@novell.com>
1240         * DateTimeOffset.cs: almost complete implementation, still missing the
1241         Parse* and ToString methods.
1243 2007-12-11  Zoltan Varga  <vargaz@gmail.com>
1245         * AppDomain.cs (DoAssemblyResolve): Fix detection of whenever there is a
1246         reflection-only assembly resolve hook.
1248 2007-12-10  Stephane Delcroix  <sdelcroix@novell.com>
1250         * DateTimeOffset.cs: partial implementation. no longer just a stub.
1252 2007-11-30  Zoltan Varga  <vargaz@gmail.com>
1254         * Delegate.cs: Compute the Method property lazily.
1255         
1256         * Delegate.cs: Add a 'method' field.
1258         * Environment.cs: Bump corlib version.
1260 2007-11-21  Zoltan Varga  <vargaz@gmail.com>
1262         * Array.cs: Make the InternalArray_... methods internal.
1264         * Environment.cs: Bump corlib version.
1266 2007-11-21  Atsushi Enomoto  <atsushi@ximian.com>
1268         * AppDomain.cs : filled 2.0 API (extra ones are from 2.0 SP1).
1269         * ContextMarshalException.cs : obsolete in 2.0.
1271 2007-11-21  Atsushi Enomoto  <atsushi@ximian.com>
1273         * MarshalByRefObject.cs : Added MemberwiseClose() stub.
1274           GetLifetimeService() is not virtual (in both 2.0 and 1.1).
1275         * Console.cs : implemented missing 2.0 key members.
1277 2007-11-18  Gert Driesen  <drieseng@users.sourceforge.net>
1279         * Enum.cs: Provided ParamName of Argument(Null)Exceptions. Rewrote
1280         some exception messages.
1282 2007-11-16  Gert Driesen  <drieseng@users.sourceforge.net>
1284         * AppDomain.cs: Added some obsolete messages.
1286 2007-11-15  Gert Driesen  <drieseng@users.sourceforge.net>
1288         * MonoType.cs: Modified ParamName for ArgumentException to match
1289         MS. Provide meaningful exception messages. On 2.0, throw ANE instead
1290         of ArgumentException when args is null.
1292 2007-11-15  Zoltan Varga  <vargaz@gmail.com>
1294         * MonoType.cs (Invoke): Allow BindingFlags.SetField and
1295         BindingFlags.SetProperty to be specified together. Fixes #321735.
1297 2007-11-14  Miguel de Icaza  <miguel@novell.com>
1299         * Console.cs, ConsoleDriver.cs, TermInfoDriver.cs,
1300         TermInfoReader.cs, TermInfoNumber.cs, TermInfoStrings.cs,
1301         CStreamReader.cs, CStreamWriter.cs, NullConsoleDriver.cs,
1302         WindowsConsoleDriver.cs: In the 2.1 profile we do not need the
1303         full-blown Console (the terminal-addressable console) so we shrink
1304         it down to the basic 1.0 Console.
1306 2007-11-14  Marek Safar  <marek.safar@gmail.com>
1308         * Nullable.cs: Optimized to use generic comparers.
1310 2007-11-14  Zoltan Varga  <vargaz@gmail.com>
1312         * Array.cs (Copy): Throw InvalidCastException in more cases.
1314 2007-11-13  Zoltan Varga  <vargaz@gmail.com>
1316         * GCCollectionMode.cs GCLatencyMode.cs: New net 3.5 types.
1318 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
1320         * NumberFormatter.cs : revert previous two changes. It does not
1321           really work for float and hence will rather bring confusion.
1323 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
1325         * NumberFormatter.cs : limit the situation that needs roundtrip
1326           verification in the previous change to Double.
1328 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
1330         * NumberFormatter.cs : applied a quick fix for bug #320433. It needs
1331           true fix to avoid extra perf. loss.
1333 2007-11-08  Sebastien Pouliot  <sebastien@ximian.com>
1335         * TimeZone.cs: Under 2.0 we must return a Local DateTime.MinValue.
1336         Fix the regression on the x86_64 bot which seems to be in it's own
1337         timezone.
1339 2007-11-07  Gert Driesen  <drieseng@users.sourceforge.net>
1341         * Exception.cs: Cosmetic change to default exception message on
1342         2.0 profile.
1344 2007-11-05  Gert Driesen  <drieseng@users.sourceforge.net>
1346         * Array.cs: Distinguish between notstarted and finished state when
1347         throwing IOE in Current, and provide meaningful exception message.
1349 2007-11-05  Sebastien Pouliot  <sebastien@ximian.com>
1351         * Array.cs: Fix Enumerator<T>.Reset (#322248).
1353 2007-11-05  Rodrigo Kumpera  <rkumpera@novell.com>
1355         * Type.cs (MakeGenericType): fix for #331199. If an user-defined type
1356         was used, the runtime would crash. Now we apply UnderlyingSystemType to
1357         all types before handling to the runtime.
1359 2007-11-05  Stephane Delcroix  <sdelcroix@novell.com>
1361         * TimeZone.cs: fix for #323911. The our after DST.Start is already DST.
1363 2007-11-03  Atsushi Enomoto  <atsushi@ximian.com>
1365         * DateTime.cs : fix for #330085. for Local time, convert to Utc
1366           before getting ticks.
1368 2007-11-03  Gert Driesen  <drieseng@users.sourceforge.net>
1370         * ArgumentException.cs: Change default message to match MS. Removed
1371         unnecessary check from Message, since base.Message can never be null.
1373 2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>
1375         * DateTime.cs : ParseExact() should ignore 'K' when there is no
1376           character is left.
1378 2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>
1380         * DateTime.cs : in roundtrip mode, 'Z' should turn the tick value to
1381           utc time and should not result in different ticks.
1382           Fixed bug #338064.
1384 2007-10-30  Miguel de Icaza  <miguel@novell.com>
1386         * UInt32.cs (Parse): Use Jeff Stedfast's parsing code which is
1387         smaller and does not need checked() constructs. 
1389         * Int64.cs, Int32.cs, Int16.cs: small tuneup: do not throw
1390         exception, instead return the exception like every other place in
1391         this code. 
1393         * Int16.cs, Int32.cs, Int64.cs: Use the Jeff Stedfast parsing code
1394         which is smaller.  We no longer use "checked" to check for
1395         overflows, I refactored some stuff and cleaned up the rest and
1396         fixes #331525.
1398 2007-10-27  Zoltan Varga  <vargaz@gmail.com>
1400         * MonoType.cs: Applied patch from Mario A Chavez 
1401         <mario.chavez@gmail.com>. Add support for invoking members with the 
1402         ParamArray attribute. Fixes #336841.
1404 2007-10-26  Zoltan Varga  <vargaz@gmail.com>
1406         * MonoType.cs (InvokeMember): Make sure one operation is passed in the binding
1407         flags. Fixes #336936.
1409 Fri Oct 26 19:43:09 CEST 2007 Paolo Molaro <lupus@ximian.com>
1411         * Environment.cs, String.cs: patch from Tyler Larson
1412         <mono-devel@tlarson.com> to fix the handling of the RemoveEmptyEntries
1413         option in string.Split (bug #322375).
1415 2007-10-26  Dick Porter  <dick@ximian.com>
1417         * Environment.cs: Bump version because of Thread initialisation
1418         changes
1420 2007-10-25  Lluis Sanchez Gual  <lluis@novell.com>
1422         * AppDomain.cs: In DefaultDomain, wrap the returned domain with
1423         a proxy if the current domain is not the root domain.
1425 2007-10-24  Atsushi Enomoto  <atsushi@ximian.com>
1427         * Type.cs : implemented ReflectionOnlyGetType().
1429 2007-10-19  Zoltan Varga  <vargaz@gmail.com>
1431         * AppDomain.cs: Add NET 3.5 DefineDynamicAssembly () overloads.
1433 2007-10-13  Zoltan Varga  <vargaz@gmail.com>
1435         * Delegate.cs (CreateDelegate): Allow binding instance methods to 
1436         delegates with an extra argument, a NET 2.0 feature. Fixes #333647.
1438 Fri Oct 12 08:11:50 CEST 2007 Paolo Molaro <lupus@ximian.com>
1440         * String.cs: reverted unapproved patch that breaks the build.
1442 2007-10-11  Joel Reed  <joelwreed@comcast.com>
1444         * String.cs: fix String.Split(char[],int,StringSplitOptions)
1445         with StringSplitOptions.RemoveEmptyEntries option. The correct 
1446         behavior is to remove empty entries while the string is being split, 
1447         and always return the maximum number of elements possible.
1448         Patch from: Tyler Larson <mono-devel@tlarson.com>
1449         
1450 2007-09-28  Jb Evain  <jbevain@novell.com>
1452         * Object.cs: Make ToString return Type.ToString ()
1453         by default instead of Type.FullName to match .net
1454         behavior. Fix #329419.
1456 2007-09-28  William Holmes  <billholmes54@gmail.com>
1458         * DateTime.cs: Check for AssumeUniversal when parsing string.
1459          Fixes bug #324845
1461 2007-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
1463         * Enum.cs: Use regular single quotes in exception message.
1465 2007-09-14  Paolo Molaro <lupus@ximian.com>
1467         * String.cs: implemented all the string ctors using CreateString
1468         methods, so they can run completely in managed code.
1470 2007-09-13  Marek Safar  <marek.safar@gmail.com>
1472         * DateTimeOffset.cs: Implemented few properties.
1474 2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>
1476         * Decimal.cs, Math.cs : implemented midpoint rounding.
1478 2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>
1480         * Activator.cs : implemented 2.0 CreateInstance()
1481           and CreateInstanceFrom () overloads.
1483 2007-09-12  Sebastien Pouliot  <sebastien@ximian.com>
1485         * Decimal.cs: More explicit text in exception (old and almost 
1486         forgetten patch on laptop ;-)
1488 2007-09-10  Atsushi Enomoto  <atsushi@ximian.com>
1490         * OperatingSystem.cs : implemented ISerializable.
1492 2007-08-28  Zoltan Varga  <vargaz@gmail.com>
1494         * DateTime.cs: Fix a warning.
1496 2007-08-25  Robert Jordan  <robertj@gmx.net>
1498         * DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.
1500 2007-08-25  Alan McGovern  <amcgovern@novell.com>
1502         * DateTime.cs: Reverted DateTime changes.
1504 2007-08-25  Robert Jordan  <robertj@gmx.net>
1506         * DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.
1508 2007-08-24  Zoltan Varga  <vargaz@gmail.com>
1510         * Array.cs: Fix min + max / 2 overflows in the BinarySearch and qsort methods.
1511         Fixes #82469.
1513 2007-08-23  Marek Safar  <marek.safar@gmail.com>
1515         * DateTimeOffset.cs: New .NET 3.5 struct for 2.0 mscorlib.
1516         
1517 2007-08-23  Eyal Alaluf <eyala@mainsoft.com>
1519         * DateTime.cs: Numerous improvements to DateTime.Parse. It handles a lot
1520           more possible formats and more correctly at that. It is also now easier
1521           to manage the formats DateTime.Parse supports.
1523 2007-08-17  Zoltan Varga  <vargaz@gmail.com>
1525         * Exception.cs: Make 1.0 and 2.0 object layout the same since this class is seen
1526         by the runtime. Fixes #82459.
1528 2007-08-16  Gert Driesen  <drieseng@users.sourceforge.net>
1530         * MonoCustomAttrs.cs: In IsDefined, throw ArgumentNullException if
1531         attributeType is null to avoid a SIGSEGV (and match MS). Only partial
1532         fix for bug #82431 on 1.0 profile; it fully fixes the problem for the
1533         1.0 profile, but more changes (in the runtime) are required for the
1534         2.0 profile. Added a FIXME explaining the problem.
1536 2007-08-15  Gert Driesen  <drieseng@users.sourceforge.net>
1538         * MonoCustomAttrs.cs: In IsDefined, only walk inheritance chain if
1539         both AttributeUsage.Inherited and inherit are true. Fixed bug #82431.
1541 2007-08-13  Gert Driesen  <drieseng@users.sourceforge.net>
1543         * ArgumentException.cs: Ignore zero-length ParamName for Message.
1544         Use ParamName property instead of field, since the property is marked
1545         virtual.
1546         * Array.cs: Provide more meaningful exception message when destination
1547         array is not long enough.
1549 2007-08-11  Zoltan Varga  <vargaz@gmail.com>
1551         * Array.cs: Implement InternalArray__set_Item. Fixes #82345.
1553 2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>
1555         * IntPtr.cs : oops, do not ignore format in ToString(string).
1557 2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>
1559         * GC.cs, Exception.cs, IntPtr.cs, Enum.cs, DateTime.cs, Convert.cs
1560           ConsoleKeyInfo.cs, String.cs, Object.cs, Attribute.cs,
1561           Version.cs : couple of cosmetic 2.0 API fixes.
1563 2007-08-06  Aaron Bockover  <abockover@novell.com>
1565         * Environment.cs (ReadXdgUserDir): Support the changes to the
1566         xdg-user-dirs spec that allow $HOME to start the path; also allows
1567         for quotes surrounding the path (Patch ported from Banshee,
1568         BGO #461596)
1570 2007-07-28  Miguel de Icaza  <miguel@novell.com>
1572         * MulticastDelegate.cs (Equals): do not cast to avoid exceptions,
1573         instead use the "as" operator, as pointed out by Jesse Jones'
1574         tool. 
1576 2007-07-21  Gert Driesen  <drieseng@users.sourceforge.net>
1578         * BitConverter.cs: Fixed exceptions to match MS. Fixed invalid use
1579         of ArgumentOutOfRangeException and ArgumentException ctors that take
1580         both parameter name and message. In ToString throws ArgumentException
1581         instead of ArgumentOutOfRangeException when length is negative, and
1582         return zero-length string when length is 0.
1584 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
1586         * AppDomainSetup.cs : fix serialization regression.
1588 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
1590         * AppDomainSetup.cs :
1591           MonoTODO AppDomainInitializer as its implementation is wrong.
1593 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
1595         * AppDomainSetup.cs : added missing 2.0 members.
1596         * AppDomain.cs : support AppDomainInitializer.
1598 2007-06-06  Miguel de Icaza  <miguel@novell.com>
1600         * Int16.cs, UInt64.cs, SByte.cs, UInt16.cs, Byte.cs, Int32.cs,
1601         Int64.cs, UInt32.cs: Fix for 81775.
1603         I removed Parse from a Byte.cs and UInt16.cs as in various cases
1604         they still depended on UInt32.cs for parsing, there is no reason
1605         to keep all of this code duplicated (UInt64 is a different case
1606         though). 
1608         I was hoping for some feedback on whether my tests are correct,
1609         but so far no takers.
1611 2007-07-14  Zoltan Varga  <vargaz@gmail.com>
1613         * ModuleHandle.cs: Implement the generic versions of the ResolveXXXHandle () methods.
1614         
1615         * ModuleHandle.cs: Add stubs for generic ResolveXXXHandle () methods.
1617 2007-07-10  Alan McGovern <amcgovern@novell.com>
1619         * Guid.cs: All whitespace should be trimmed from before and
1620         after a string passed into the Guid constructor. Fixes #81958
1622 2007-07-10  Zoltan Varga  <vargaz@gmail.com>
1624         * RuntimeTypeHandle.cs: Fix signatures of == and != operators.
1626         * ModuleHandle.cs: Add missing 2.0 stuff.
1628 2007-07-08  Zoltan Varga  <vargaz@gmail.com>
1630         * *.cs: Add missing ComVisible attributes.
1632         * Delegate.cs: Add missing 2.0 CreateDelegate () methods.
1634 2007-07-07  Gert Driesen  <drieseng@users.sourceforge.net>
1636         * DateTime.cs: In ParseExact, throw ArgumentNullException if format
1637         is null; throw FormatException if formats array is empty or if one of
1638         items is null or a zero-length string.
1640 2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>
1642         * Double.cs (Parse): Fix for string ending in garbaga, it was just ignoring it
1643         instead of throwing FormatException. Fixes #81777
1645 2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>
1647         * Double.cs (Parse): Fix for whitespace only strings, it was returning zero 
1648         instead of throwing FormatException. Fixes #81630 
1650 2007-07-06  Alan McGovern  <amcgovern@novell.com>
1652         * DateTime.cs: If the format is null or empty, it should default to 'G'.
1653         Fixes bug 81778
1655 2007-07-06  Jonathan Chambers  <joncham@gmail.com>
1657         * __ComObject.cs: Support ExtensibleClassFactory.
1660 2007-07-06  Aaron Bockover  <abockover@novell.com>
1662         * Environment.cs (InternalGetFolderPath): Try reading some
1663         paths from ~/.config/user-dirs.dirs (XDG user dirs spec);
1664         always return something for MyPictures
1666 2007-07-04  Atsushi Enomoto  <atsushi@ximian.com>
1668         * Type.cs : 2.0 TypeHandle and ContainsGenericParameters are virtual
1669           (required fix for 2.0 reflection API fixes).
1671 2007-06-22  Jonathan Chambers  <joncham@gmail.com>
1673         * __ComObject.cs: Move interface lookup to unmanaged.
1675 2007-06-21  Zoltan Varga  <vargaz@gmail.com>
1677         * Environment.cs: Bump corlib version.
1679         * Delegate.cs: Applied patch from Robert Jordan (robertj@gmx.net). Keep
1680         the dynamic method referenced by a delegate alive.
1682 2007-06-05  David Ferguson <davecferguson@gmail.com>
1684         * DateTime.cs: Changed DateTime.Parse() to throw a FormatException
1685           instead of an ArgumentOutOfRangeException for .NET 2.0.  An
1686           ArgumentOutOfRangeException is still thrown for .NET 1.1.
1687           Fixes bug #77633
1688           
1689 Mon Jun 4 14:52:17 CEST 2007 Paolo Molaro <lupus@ximian.com>
1691         * String.cs: optimized CompareOrdinal ().
1693 2007-06-02  Zoltan Varga  <vargaz@gmail.com>
1695         * MonoCustomAttrs.cs (GetBase): Revert last change as it breaks the build.
1696         
1697         * MonoCustomAttrs.cs (GetBase): Handle properties correctly. Fixes #81797.
1699 2007-05-31  Zoltan Varga  <vargaz@gmail.com>
1701         * Delegate.cs: Add invoke_impl field. Reorder fields for better cache behavior. Add
1702         SetMulticastDelegate icall.
1704         * MulticastDelegate.cs (CombineImpl): Call SetMulticastDelegate () on newly created
1705         delegate.
1707         * Environment.cs: Bump corlib version.
1708         
1709 2007-05-25  Jonathan Chambers  <joncham@gmail.com>
1711         * __ComObject.cs: Add overload to GetInterface to allow
1712         not throwing exceptions. Fixes as and is operators for COM objects.
1714 2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>
1716         * Array.cs : reverting Array.cs fixes since the runtime depends on
1717           those method attributes.
1719 2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>
1721         * Int16.cs UInt64.cs UIntPtr.cs Double.cs CrossAppDomainDelegate.cs
1722           ResolveEventHandler.cs IntPtr.cs UnhandledExceptionEventHandler.cs
1723           Void.cs AssemblyLoadEventHandler.cs SByte.cs UInt16.cs DateTime.cs
1724           Byte.cs TimeSpan.cs Decimal.cs Int32.cs Delegate.cs
1725           AppDomainInitializer.cs MulticastDelegate.cs Int64.cs
1726           EventHandler.cs Single.cs UInt32.cs AsyncCallback.cs :
1727           cosmetic attribute fixes (ComVisible/Serializable).
1729 2007-05-22  Atsushi Enomoto  <atsushi@ximian.com>
1731         * Convert.cs : completed 2.0 (ToBase64CharArray).
1732         * String.cs : removed MonoTODO.
1733         * DataMisalignedException.cs : removed extra .ctor().
1734         * Array.cs : internalize extra members. Fixed reliability contract.
1736 2007-05-17  Atsushi Enomoto  <atsushi@ximian.com>
1738         * DateTime.cs : added support for 'K'.
1740 2007-05-11  Jonathan Chambers  <joncham@gmail.com>
1742         * __ComObject.cs: No need to call CoInitialize anymore since
1743         Thread.ApartmentState was implemented.
1745 2007-05-11  Jeffrey Stedfast  <fejj@novell.com>
1747         Fixes bug #81540
1749         * TermInfoDriver.cs (WriteSpecialKey): Actually clear the screen
1750         and reset the cursor position to 0,0 when the key is
1751         ConsoleKey.Clear.
1752         (Clear): Reset the cursor position to 0,0
1754 2007-05-09  Marek Safar  <marek.safar@gmail.com>
1756         * MulticastDelegate.cs: Fixed operators logic.
1758 2007-05-09  Marek Habersack  <mhabersack@novell.com>
1760         * DateTime.cs: add a format used in ASP.NET QuickStarts 
1761           ("HH':'mm tt MM/dd/yyyy")
1763 2007-04-30  Zoltan Varga  <vargaz@gmail.com>
1765         * Type.cs (Equals): Allow a null argument.
1767 2007-04-27  Zoltan Varga  <vargaz@gmail.com>
1769         * Environment.cs (StackTrace): Avoid skipping a frame to be
1770         compatible with MS.
1772 2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>
1774         * DateTimeTest.cs : looks like 'F' even removes preceding '.' ...
1776 2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>
1778         * DateTime.cs : implemented new-2.0 'F' pattern letter.
1780 2007-04-24  Jeffrey Stedfast  <fejj@novell.com>
1782         Fixes the last of the bugs listed in bug #77525
1784         * TermInfoDriver.cs (ctor): For known terminal types, set color16
1785         to true (since we know they support 16 colours).
1786         (Init): set the setlfgcolor and setlbgcolor format strings.
1787         (BackgroundColor): Use the appropriate formatter string for
1788         setting the bgcolor.
1789         (ForegroundColor): Use the appropriate formatter string for
1790         setting the fgcolor.
1791         (TranslateColor): Now takes (and sets appropriately) an output
1792         'bool light' argument.
1794 2007-04-24  Marek Habersack  <mhabersack@novell.com>
1796         * TermInfoDriver.cs: don't include debug stuff by default - it
1797         breaks multithreaded applications (they all attempt to open
1798         console.log and fail because of sharing violation).
1800 2007-04-23  Jeffrey Stedfast  <fejj@novell.com>
1802         * TermInfoDriver.cs (ReadKeyInternal): Since our input stream is
1803         buffered, check if it has more buffered input in addition to our
1804         timeout check. This makes it such that we will actually correctly
1805         match multi-char escape sequences.
1806         (Read): Changed the logic slightly wrt 'fresh' echoing. Once we
1807         encounter a fresh char, all chars afterward should also be
1808         considered 'fresh' even if 'fresh' is returned as false later.
1809         (ReadLine): Same logic here.
1811 2007-04-23  Jeffrey Stedfast  <fejj@novell.com>
1813         Fixes bug #80702 (via getting rid of the casting) and more.
1815         The following change makes it such that even if an application
1816         calls Console.SetOut() with its own output stream, we can still
1817         properly echo user-input from stdin to the real stdout.
1819         * TermInfoDriver.cs (ctor): Grab a reference to the original
1820         Console.stdout so we can be sure we always echo to console.
1821         (QueueEcho): No need to cast Console.stdout anymore.
1822         (EchoFlush): Same.
1823         (WriteConsole: Here too.
1825 2007-04-20  Jeffrey Stedfast  <fejj@novell.com>
1827         * TermInfoDriver.cs (QueueEcho): Renamed from Echo(char). Use
1828         CStreamWriter's new InternalWriteChars().
1829         (Echo): Since we can no longer go thru CStreamWriter's ::Write()
1830         method that does checks for special keys, do the checks here
1831         instead - if it is a special key, flush the echo buffer and then
1832         write the special key.
1833         (EchoFlush): Also updated to use CStreamWriter's new
1834         InternalWriteChars().
1835         (Read): Use the Echo(key) variety.
1836         (ReadKey): Same.
1837         (ReadLine): And here too.
1839         * CStreamWriter.cs (InternalWriteChars): Write a char array
1840         directly to stdout. Do not pass Go, do not collect $200.
1842 2007-04-19  Jeffrey Stedfast  <fejj@novell.com>
1844         Optimization for echoing keypresses back to the console when the
1845         user pastes a block of text rather than manually typing text.
1847         * TermInfoDriver.cs (Echo): A new convenience function for echoing
1848         characters/keys back to the console with an optimization twist and
1849         a bit of lime.
1850         (EchoFlush): Flush our pending echo queue
1851         (Read): Make use of Echo() both for convenience and for speed.
1852         (ReadLine): Same.
1853         (ReadKey): Make use of Echo()/EchoFlush() for simplicity of code,
1854         but we won't get the same optimization out of it.
1856 2007-04-19  Jeffrey Stedfast  <fejj@novell.com>
1858         Fix for bug #81373.
1860         * TermInfoDriver.cs: Changed 'buffer' to be a char array instead
1861         of a byte array and stdin is now a StreamReader rather than a
1862         Stream.
1863         (Init): Setup stdin as a StreamReader using Console.InputEncoding
1864         as our encoding.
1865         (GetCursorPosition): Use stdin.Read() instead of the old
1866         ReadByte() code.
1867         (AddToBuffer): Updated to allocate the correct array type for
1868         'buffer'.
1869         (ReadKeyInternal): Updated to use stdin.Read() rather than
1870         stdin.ReadByte(). This is the main reason we needed to use chars
1871         instead of bytes. Characters entered by the user need to be
1872         represented as unicode chars and not bytes like before.
1873         (Match): Now takes a char[] buffer argument instad of byte[] and
1874         compares the input buffer to the byte-map as chars.
1876 2007-04-18  Jeffrey Stedfast  <fejj@novell.com>
1878         Fixes bug #81159: behave the same as mscorlib
1880         * TermInfoDriver.cs (ReadKeyInternal): Now has an 'out bool fresh'
1881         argument which is used to tell our caller if the key was freshly
1882         read from the console or pre-buffered.
1883         (Read): New implementation of Console.In.Read(char[], int, int)
1884         that behaves exactly like mscorlib's implementation.
1885         (ReadKey): Updated for the ReadKeyInternal() API change - only
1886         echo if the key was fresh.
1887         (ReadLine): Same.
1889         * CStreamReader.cs (Read): Call the new TermInfoDriver.Read()
1891 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1893         * CStreamWriter.cs (Write): Optimized this some more, we don't
1894         need a temporary buffer. Just blit chunks of the src buffer
1895         instead.
1897         * CStreamReader.cs (Read): Need to increment our array index so
1898         that we don't store each byte read into the same
1899         position. Discovered this while testing bug #81159 (which appears
1900         to work as expected with current svn, other than this buglet).
1902         * TermInfoDriver.cs (CursorTop::set): SetCursorPosition() sets our
1903         internal cursorTop variable, so no need to explicitly set it again
1904         after calling SetCursorPosition().
1905         (CursorLeft::set): Same idea here.
1907 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1909         * TermInfoDriver.cs (ReadLine): Implemented a workaround for
1910         IronPython going behind System.Console's back when writing text to
1911         the screen (it doesn't seem to use Console.stdout, instead it
1912         creates its own file stream or something which just so happens to
1913         write to the same file descriptor) by querying for the cursor
1914         position in ReadLine(), so we lose no real performance (since we
1915         have to wait for user input anyway).
1917 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1919         * TermInfoDriver.cs (Init): SetEcho(false), we'll be manually
1920         echoing from now on (ReadLine() has already been doing this, might
1921         as well make ReadKey() behave the same).
1922         (GetCursorPosition): No longer need to disable/re-enable echo
1923         anymore since it is now always false.
1924         (ReadKey): Manually echo the key back to the console just like
1925         ReadLine() has been doing (in the interest of consistancy) if
1926         intercept is false.
1927         (ReadLine): No longer need to disable/re-enable echo, echo is
1928         always off now. Also, fixed what appears to have been a typo.
1930 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
1932         * TermInfoDriver.cs (IsSpecialKey): Oops, Enter should not be
1933         treated as a special key. Just update out cursor state here like
1934         we do with normal chars.
1935         (WriteSpecialKey): Enter is a no-op now because it is not treated
1936         as a special key anymore.
1938         * CStreamWriter.cs (Write): Only flush our buffer if j > 0
1940 2007-04-17  Jeffrey Stedfast  <fejj@gnome.org>
1942         Turns out my last patch was broken wrt handling some special keys
1943         like Backspace and anything else that changed the cursor position
1944         in some non-standard way.
1946         * CStreamWriter.cs (Write): Instead of calling NotifyWrite(), we
1947         instead need to check IsSpecialKey(), and, if so, flush whatever
1948         we have saved in our temporary buffer and then call
1949         WriteSpecialKey(). Otherwise go on as we did in the last patch.
1951         * TermInfoDriver.cs (NotifyWrite): Broken up into 2 functions:
1952         (IsSpecialKey): Returns true if we need to do some special voodoo
1953         for this key
1954         (WriteSpecialKey): Write the special key (using whatever voodoo
1955         necessary)
1957 2007-04-16  Jeffrey Stedfast  <fejj@gnome.org>
1959         * CStreamWriter.cs (Write): Instead of writing 1 char at a time,
1960         copy the bytes into a temporary char array (with a fixed max size)
1961         so that we can minimize the number of Write() calls we make on the
1962         underlying stream (and thus on the write() system call).
1964 2007-04-17  Alp Toker  <alp@atoker.com>
1966         * Array.cs: Make GetRank() icall private. Subclasses should use the
1967         public Rank property.
1969 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
1971         * WindowsConsoleDriver.cs: Get rid of unused Echo property.
1973         * NullConsoleDriver.cs: Get rid of Echo property.
1975         * IConsoleDriver.cs: Get rid of Echo property.
1977         * ConsoleDriver.cs (Echo::get/set): Removed, not needed.
1979         * TermInfoDriver.cs (Echo::get/set): Removed, this isn't necessary
1980         and is confusing.
1981         (ReadKey): If we are intercepting the key, call SetEcho (false)
1982         and then reset back to true after reading the key.
1983         (ReadLine): Same idea here.
1984         (GetCursorPosition): We no longer need to keep track of the
1985         previous echo state, we no longer have it :)
1987 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
1989         Fix for bug #80710 (and a bug I introduced in my last fix due to
1990         this code assuming the underlying term echo state was always
1991         false) and other buglets that I noticed.
1993         * TermInfoDriver.cs (ReadLine): Set (term) Echo to false as we do
1994         our own manual echoing which prevents ^H from getting displayed on
1995         the screen when the user hits backspace.
1996         (ReadLine): If the user hits Backspace and builder.Length is 0, DO
1997         NOT echo the backspace back to the console, ever.
1998         (ReadLine): Only echo characters back to the console if echo is
1999         set to true. Seems the Echo ConsoleDriver property is a Mono
2000         extension, and I'm assuming this is the intended behavior? I can't
2001         see what else the Echo property would be useful for...
2003 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
2005         Fixes bug #81050
2007         * TermInfoDriver.cs: Renamed the noEcho variable to echo, makes
2008         the logic cleaner/simpler/etc. Plus it was never actually used
2009         other than in the property methods which are called Echo.
2010         (Init): Call ConsoleDriver.SetEcho() with the 'echo' value -
2011         allows for a slight optimization if called from within the
2012         Echo::set property.
2013         (GetCursorPosition): Instead of calling the Echo property methods,
2014         call ConsoleDriver.SetEcho() directly to toggle echo off (if echo
2015         isn't already off, and then back on once we're finished getting
2016         the position - assuming the echo state is on, of course) - this
2017         avoids calling back into Init() which just felt dirty.
2018         (Echo::set): If the Echo state differs from our current state,
2019         call ConsoleDriver.SetEcho() with the new state (this is the
2020         important piece of the fix for bug #81050).
2021         (ReadKey): Simplified the echo logic to make it a bit clearer.
2022         (ReadLine): Same.
2024 2007-04-16  Marek Safar  <marek.safar@gmail.com>
2026         * Char.cs (IsLetter): Faster version.
2028 2007-04-15  Alp Toker  <alp@atoker.com>
2030         * Decimal.cs: Provide 2.0 Round() overloads using System.Math.
2032 2007-04-15  Alp Toker  <alp@atoker.com>
2034         * Activator.cs: CreateInstance(Type,object[]) was not params before
2035         2.0.
2037 2007-04-15  Alp Toker  <alp@atoker.com>
2039         * NonSerializedAttribute.cs: Inherited=false in 2.0.
2041 2007-04-05  Dick Porter  <dick@ximian.com>
2043         * Environment.cs: Increment mono_corlib_version
2045 2007-04-03  Alp Toker  <alp@atoker.com>
2047         * Array.cs: CreateInstance(Type,int[]) is params.
2048         * AppDomain.cs: ExecuteAssemblyByName(string,Evidence,string[]) is
2049         params.
2051 2007-04-03  Alp Toker  <alp@atoker.com>
2053         * Convert.cs:
2054         * Math.cs: Should be static classes in 2.0.
2056 2007-04-03  Alp Toker  <alp@atoker.com>
2058         * Delegate.cs: DynamicInvoke(object[]) is params in 2.0.
2060 2007-04-03  Alp Toker  <alp@atoker.com>
2062         * Delegate.cs: Combine(Delegate[]) is params in 2.0.
2064 2007-03-27  Dick Porter  <dick@ximian.com>
2066         * Environment.cs: Increment mono_corlib_version;
2068 2007-03-16  Miguel de Icaza  <miguel@novell.com>
2070         * BitConverter.cs: Revert the patch from 72237 as that introduces
2071         a regression and we are not sure yet what we will be doing about
2072         that.
2074         Introduce a new InternalInt64BitsToDouble method that provides the
2075         fixed functionality, mark it as internal.
2077         Introduce a new SwappableToDouble method that includes the
2078         swapping ToDouble routine as introduced by Zoltan on 72237, this
2079         is used by InternalInt64BitsToDouble.
2081         * Math.cs (IEEERemainder): Use the InternalInt64BitsToDouble
2082         routine here to preserve the semantics from Zoltan.  
2084         The problem with BitConverter.cs is that it is completely hossed.
2085         In .NET 1.1 it is a bitwise copy, no attempt is ever done to do
2086         endian-specific swapping.   In .NET 2.0 it is *almost* like that,
2087         but it is subtly broken: if data is unaligned then endian
2088         conversions happen.  If the data is properly aligned it behaves
2089         like 1.0.
2091         In general BitConverter is a sad class that offers little control,
2092         we will be introducing a new mono bit converter and encourage
2093         users to use that instead of the entirely broken
2094         System.BitConverter. 
2096 2007-03-11  Gert Driesen  <drieseng@users.sourceforge.net>
2098         * Delegate.cs: Fixed bootstrap build.
2100 2007-03-08  Gert Driesen  <drieseng@users.sourceforge.net>
2102         * StringComparer.cs: Renamed StringComparer classes and promoted them
2103         to top-level classes. Merged Ordinal and OrdinalIgnoreCase comparers.
2104         Fixes binary serialization compatibility with MS.
2106 2007-03-06  Zoltan Varga  <vargaz@gmail.com>
2107   
2108         * Type.cs (Equals): Remove a useless check.
2110         * Type.cs: Rename Type:Equals(Type) to EqualsInternal, and add support for checking
2111         UnderlyingSystemType. Fixes #81037.
2113 2007-03-05 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
2115         * TermInfoDriver.cs: adjust buffer indexes after *every* read. Fixes
2116         bug #80329. Robert Jordan attached a similar patch to the bug report
2117         but I didn't see it until after my commit...
2119 2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>
2121         * Enum.cs: The above patch makes the formatting for specifiers 'x'
2122         and 'X' behave like MS.NET, including the correct length for each
2123         possible underlying type, and correctly using capital letters for
2124         the 'X' case.
2126         Patch also includes some more test cases in EnumTests.cs.
2128 2007-02-25  Gert Driesen  <drieseng@users.sourceforge.net>
2130         * AppDomainSetup.cs: If configuration file is not an absolute path,
2131         then throw a MemberAccessException if ApplicationBase is not set,
2132         or otherwise consider it as a path relative to ApplicationBase.
2133         Fixes bug #80934. Patch provided by Jamie Cansdale.
2134         * AppDomain.cs: In CreateDomain, construct AppDomain with
2135         ApplicationBase of default domain if not explicitly set in specified
2136         AppDomainSetup. If config file is not set, then use filename of the
2137         default domain config file. Base on patch provided by Jamie Cansdale.
2139 2007-02-16  Sebastien Pouliot  <sebastien@ximian.com>
2141         * Random.cs: Fix exception messages ("then" -> "than"). Spotted by
2142         Mark A. Nicolosi (#80873).
2144 2007-02-12  Miguel de Icaza  <miguel@novell.com>
2146         * CStreamWriter.cs (Write with char []): take the lock once for
2147         all characters and call manually the InternalWriteChar properly to
2148         speed things up.
2150         (Write with string parameter): same thing, if the driver is not
2151         initialized use a fast path.
2153         If the driver has not been initialized, use a fast path instead. 
2155 Mon Feb 12 21:54:57 CET 2007 Paolo Molaro <lupus@ximian.com>
2157         * MonoType.cs: patch from Cedric Vivier <cedricv@neonux.com> to
2158         get correctly non-public fields from generic types.
2160 2007-02-08  Jonathan Chambers  <joncham@gmail.com>
2162         * __ComObject.cs: Add IUnknown field to object. Cleanup icalls.
2163         
2164 2007-02-03  Zoltan Varga  <vargaz@gmail.com>
2166         * BitConverter.cs (ToDouble): Fix this on big-endian machines.
2168 2007-01-30  Atsushi Enomoto  <atsushi@ximian.com>
2170         * TimeZone.cs: According to the docs, we should not throw when
2171         converting to Localtime if we are a negative value.  Instead we
2172         return DateTime.MinValue.
2174 2007-01-25  Atsushi Enomoto  <atsushi@ximian.com>
2176         * DateTime.cs : copy Kind in those members that return DateTime.
2177           Fixed bug #80614.
2179 2007-01-20  Miguel de Icaza  <miguel@novell.com>
2181         * Array.cs (InternalArray__ICollection_Contains,
2182         InternalArray__IndexOf): Cope with null values in the array (See
2183         bug #80563).
2185 2007-01-19  Marek Habersack  <grendello@gmail.com>
2187         * AppDomain.cs: Make sure that domain
2188         SetupInformation.ConfigurationFile is never null. MS.NET by
2189         default copies the default domain's ConfigurationFile value
2190         there. Fixes bug #80547.
2192 2007-01-14  Jensen Somers <jensen.somers@gmail.com>
2194         * ArraySegment.cs: Added Equals() method, operator == and !=
2195         overloading and GetHashCode().
2197 2007-01-10  Andy Hume <andyhume32@yahoo.co.uk>
2199         * Fixes to a number of exception classes.
2200         
2201         A project of mine uses #ctor(String,Exception) on 
2202         ObjectDisposedException, so I looked at adding that, and any 
2203         other similar constructors missing as per the class status report.
2204         
2205         I also spotted inconsistent setting of HResult, and fixed 
2206         those too.  For instance, ArgumentNullException sets HResult 
2207         only in three out of the four constuctors; not setting it in 
2208         the v2 (String,Exception) one -- and correctly not in the 
2209         Serialization constructor.
2210         
2211         
2212         So, I fixed the remaining missing (String,Exception) 
2213         constructors in corlib (2 of), and fixed the Hresult setting 
2214         in all exceptions there (4 of).
2215         
2216         The remaining Exception constructor omission listed was 
2217         InvalidCastException.ctor(System.String, System.Int32).  MSDN   says:
2218         "This constructor supplies an HRESULT value that is 
2219         accessible to inheritors of the InvalidCastException class, 
2220         via the protected HResult property of the Exception class."
2221         I added that method too, setting the HResult property from 
2222         the Int32 argument.
2224 2007-01-10  Atsushi Enomoto  <atsushi@ximian.com>
2226         * String.cs, StringComparer.cs : avoid extra string creation in
2227           StringComparer.OrdinalIgnoreCase.
2229 2007-01-05  Sebastien Pouliot  <sebastien@ximian.com>
2231         * DateTime.cs: Under 2.0 fix ParseExact to set DateTimeKind.Utc when
2232         DateTimeStyles.AdjustToUniversal is used.
2234 2007-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2236         * TermInfoDriver.cs: honor the backspace in ReadLine.
2238 2006-12-30  Marek Safar  <marek.safar@gmail.com>
2240         * String.cs: Character based method only.
2241         (IndexOf, LastIndexOf, Replace, IndexOfAny): Performance improvements.
2242         (Substring): Returns same instance when index is 0.
2244 2006-12-30  Alp Toker  <alp@atoker.com>
2246         * Decimal.cs:
2247         * Math.cs: Implement missing Decimal.Ceiling methods for 2.0.
2248         Closes #80384.
2250 2006-12-22  Sebastien Pouliot  <sebastien@ximian.com> 
2252         * DateTime.cs: Implement missing [To|From]Binary methods for 2.0.
2253         * OperatingSystem.cs: Implement missing ServicePack and VersionString
2254         properties (2.0).
2255         * Version.cs: Add missing Major|MinorRevision properties for 2.0.
2257 2006-12-14  Raja R Harinath  <rharinath@novell.com>
2259         * Type.cs (MakeGenericType): Can only be called on a generic type
2260         definition.
2262 2006-12-03  Miguel de Icaza  <miguel@novell.com>
2264         * DateTime.cs: Fix this on the 2.0 profile, return the
2265         DateTimeKind for the Now property
2267 2006-12-01  Duncan Mak  <duncan@a-chinaman.com>
2269         * ArgumentOutOfRangeException.cs (.ctor): 
2270         * NotFiniteNumberException.cs (.ctor): Add the 2.0 constructor
2271         that takes a string and an inner Exception.
2273 2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
2275         * DateTime.cs :
2276           When comparing enumerations, two or more enumeration values might
2277           match. Thus basically we should do complete matching, but right
2278           now just do reverse order search since only numbered abbrev month
2279           names matter (and full iteration is a mess). Fixed bug #80094.
2281 2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
2283         * DateTime.cs :
2284           use new internal clone-less DateTimeFormatInfo members.
2286 2006-11-29  Martin Baulig  <martin@ximian.com>
2288         * INullableValue.cs: Removed.
2290 2006-11-28  Duncan Mak  <duncan@novell.com>
2292         * ArgumentNullException.cs (.ctor): Added new constructor that's
2293         new in .NET 2.0.
2295         * InsufficientMemoryException.cs: Added missing 2.0 exception.
2296         
2297 2006-11-27  Jonathan Chambers  <joncham@gmail.com>
2299         * __ComObject.cs: Removed IDispatchMono.
2300         
2301 2006-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2303         * TermInfoDriver.cs:
2304         * Console.cs: lazy initialization of Console 2.0 (also when
2305         CancelKeyPress is used).
2307 2006-11-27  Miguel de Icaza  <miguel@novell.com>
2309         * Exception.cs (GetType): New method in 2.x, Another Moma catch. 
2311 Mon Nov 27 19:34:16 CET 2006 Paolo Molaro <lupus@ximian.com>
2313         * GC.cs: implemented the needed methods with icalls.
2315 2006-11-26  Miguel de Icaza  <miguel@novell.com>
2317         * Math.cs: Add Floor(Decimal d), for CreativeDocs.NET.
2319         Go Moma!  http://www.mono-project.com/Moma
2321         * Decimal.cs: Refactor code to implement TryParse.
2323         Also, avoid initializing messages on every call to stripStyles
2325 2006-11-22  Miguel de Icaza  <miguel@novell.com>
2327         * DateTime.cs: A small performance hit, we store the actual time
2328         span in a boxed object.   This way, it can be updated from other
2329         threads if necessary.   We always unbox to get the value before
2330         any potential updates. 
2332         Thanks to Gonzalo for catching this.
2334 2006-11-21  Miguel de Icaza  <miguel@novell.com>
2336         * TimeZone.cs (CurrentSystemTimeZone): Cache the current year
2337         daylight savings time in static variables.
2339         (CurrentSystemTimeZone.OnDeserialization): Initialize
2340         this_year_dlt and this_year on this method.
2342         (TimeZone): init statically the currentTimeZone instead of
2343         delaying that to the static property, avoiding a compare. 
2345 2006-11-22  Lluis Sanchez Gual  <lluis@novell.com>
2347         * Array.cs: (compare<T>) if a comparer is provided, it has
2348           priority over other comparison methods.
2350 2006-11-14  Miguel de Icaza  <miguel@novell.com>
2352         * Array.cs: TODOs will from now on be used to flag information
2353         that will be developer-visible, not to flag internal information
2354         that none of us reads or bothers about.
2356         For those, use "FIXME" strings in the source code instead. 
2358         * AppDomain.cs: Update to be more useful.
2360 2006-11-13  Atsushi Enomoto  <atsushi@ximian.com>
2362         * String.cs : fixed incorrect startIndex/length count in
2363           IndexOf(string,StringComparison).
2365 2006-11-07  Marek Safar  <marek.safar@gmail.com>
2367         * String.cs (LastIndexOf): If value is Empty, the return value is
2368         the start index position in value.
2370 2006-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2372         * TermInfoDriver.cs: prevent an invalid cast.
2374 2006-10-26  Marek Safar  <marek.safar@seznam.cz>
2376         * String.cs (Concat): Add fast-path for empty strings.
2378 2006-10-20  Jonathan Chambers  <joncham@gmail.com>
2380         * Variant.cs: Add support for bool and interfaces.
2381         
2382 2006-10-18  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
2384         * Type.cs: Removed is_subtype_of because IsSubclassOf should be used
2385           that is public and virtual. IsClass: Checking for ValueType is
2386           unnecessary. IsEnum: UnderlyingSystemType is not used anymore so
2387           no EnumBuilder hack is necessary. Checking for Enum is
2388           unnecessary. IsSerializable: Walk BaseType for user defined types.
2389           IsSubclassOf: Walk BaseType for user defined types.
2391         * MonoType.cs: IsValueTypeImpl is unnecessary. IsSubclassOf: Unlike
2392           Type system types throw ArgumentNullException on null Type
2393           argument.
2395 2006-10-14  Gert Driesen  <drieseng@users.sourceforge.net>
2397         * BadImageFormatException.cs: Changed message for default ctor to
2398         match MS. Use internal message field of Exception to check whether
2399         Message is null. Match MS default messages when no message is 
2400         set. Fixed ToString to match MS.
2402 2006-10-09  Miguel de Icaza  <miguel@novell.com>
2404         * Environment.cs: Handle SpecialFolder.MyMusic
2406 2006-10-07 Gert Driesen <drieseng@users.sourceforge.net>
2408         * Enum.cs: Use different exception message depending on whether the
2409         type of the passed in value is an Enum or not. Avoid looking up the
2410         enum's underlying type twice in case of "D" or "d" format specifier.
2412 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2414         * TermInfoDriver.cs: don't allow backspace if we're at the beginning
2415         position for a ReadLine.
2417 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2419         * TermInfoDriver.cs: ironpython autocompletion works now.
2421 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2423         * Console.cs: avoid casting on windows.
2425 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2427         * ConsoleDriver.cs:
2428         * TermInfoDriver.cs:
2429         * IConsoleDriver.cs:
2430         * CStreamWriter.cs:
2431         * ConsoleKeyInfo.cs:
2432         * NullConsoleDriver.cs:
2433         * Console.cs:
2434         * CStreamReader.cs:
2435         * WindowsConsoleDriver.cs: initial changes to handle cursor position
2436         and screen buffers.
2438 2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
2440         * ArithmeticException.cs: Modified default message to match MS, to
2441         ensure a local regression test passes on both Mono and .NET.
2443 2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
2445         * Exception.cs: Marked message internal to allow derived classes to
2446         access the raw message (without changing the public API).
2448 2006-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2450         * ConsoleDriver.cs:
2451         * TermInfoDriver.cs:
2452         * IConsoleDriver.cs:
2453         * Console.cs:
2454         * WindowsConsoleDriver.cs: don't switch to the alternate window.
2455         Trigger the cancel event. Retrieve the cursor position at the
2456         beginning, as we're going to keep track of it instead of querying it
2457         all the time.
2459 2006-09-14  Jonathan Chambers  <joncham@gmail.com>
2461         * Environment.cs (ProcessorCount): Implement as icall.
2462         Patch by Jason McFall.
2464 2006-09-05  Raja R Harinath  <rharinath@novell.com>
2466         * DateTime.cs (Today) [NET_2_0]: Set kind to Local.
2468 2006-09-02  Zoltan Varga  <vargaz@gmail.com>
2470         * Enum.cs (Equals): Use the generic Equals implementation from ValueType which
2471         is faster and avoids allocations.
2473 2006-09-01  Martin Baulig  <martin@ximian.com>
2475         * Array.cs (Array.InternalArray): Removed the helper class;
2476         instead we use private generic methods in System.Array which are
2477         inserted into the vtable at runtime.
2479 2006-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2481         * ConsoleCancelEventArgs.cs: fix my build.
2483 2006-08-22  Miguel de Icaza  <miguel@novell.com>
2485         * MulticastDelegate.cs: Make DynamicInvokeImpl internal in 2.0 
2487         * Converter.cs: update signature to final.
2489         * ModuleHandle.cs: Removed the [Obsolete] flags as they removed
2490         those in the final 2.0
2492         * DateTime.cs: Fixed the signature. 
2494         * Convert.cs: Removed API calls that were deprecated in final 2.0
2496         * Enum.cs: Updated to use the obsoletes flagged in 2.0.
2498         * ConsoleCancelEventArgs.cs: Updated to 2.0
2500 2006-08-19  Miguel de Icaza  <miguel@novell.com>
2502         * Attribute.cs: This needs to do a deep compare, not a shallow
2503         one.   Ran into this bug with the VBNC compiler that compares two
2504         separate attributes for equality using this.
2506         * String.cs (StartsWith): Fix the overloaded constructor that
2507         takes a CultureInfo, if that is null, it means to use the current
2508         culture. 
2510         * TermInfoDriver.cs: Do not throw exceptions on the driver for
2511         SetWindowSize and SetWindowPosition, they can be treated as nops.
2513 2006-08-18  Zoltan Varga  <vargaz@gmail.com>
2515         * *.cs: Use String.Empty instead of "" in a lot of places.
2517 2006-08-17  Sebastien Pouliot  <sebastien@ximian.com>
2519         * DateTime.cs: Remove last patch to DateTime as the fix wasn't correct
2520         and made most x.509 unit tests fails. However the original problem is 
2521         back (only on 2.0).
2523 2006-08-14  Raja R Harinath  <rharinath@novell.com>
2525         Fix #78943
2526         * Activator.cs (CreateInstance): Throw ArgumentException on open
2527         generic types.
2529 2006-08-14  Miguel de Icaza  <miguel@novell.com>
2531         * MonoType.cs: Do the argument testinf for SetField later,
2532         otherwise the implicit (and not documented, but already considered
2533         side effect of checking SetProperty) did not work.
2535         Bug fix #79023
2537 2006-08-13  Atsushi Enomoto  <atsushi@ximian.com>
2539         * String.cs : Normalize() and IsNormalized() implementation.
2541 2006-08-10  Jonathan Chambers  <joncham@gmail.com>
2543         * __ComObject.cs: Added defintion of IDispatch interface, and
2544         property. Get CLSID of supertype for creation if class not
2545         ComImport attributed (allows for inheritance of RCW).
2546         * MonoType.cs: Implement IsCOMObjectImpl.
2548 2006-08-09  Atsushi Enomoto  <atsushi@ximian.com>
2550         * DateTime.cs : fixed X509Certificate() case that regressed only
2551           under NET_2_0.
2553 2006-08-07  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
2555         * Console.cs: Use correct code pages on Windows and initialize
2556           InputEncoding and OutputEncoding to the actual encodings used.
2558 2006-08-05  Duncan Mak  <duncan@novell.com>
2560         * Char.cs (TryParse): Implemented missing 2.0 method, which fixed
2561         bug #79007.
2563 2006-07-28  Jonathan Chambers  <joncham@gmail.com>
2565         * __ComObject.cs: Added support for marshalling objects.
2566         
2567 2006-07-24  Atsushi Enomoto  <atsushi@ximian.com>
2569         * Char.cs : implemented utf32 conversion methods thus fixed bug #78856.
2571 2006-07-19  John Luke  <john.luke@gmail.com>
2573         * TermInfoDriver.cs: switch order of alt and control when
2574         calling new ConsoleKeyInfo()
2576 2006-07-19  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
2578         * String.cs: Improve CreateString () performance when length is zero.
2580 2006-07-18  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
2582         * String.cs: Added CreateString () methods. Constructors with matching
2583           argument list are redirected to these methods that improves
2584           performance as well as fixes bug #78703.
2586 2006-07-15  Jonathan Chambers  <joncham@gmail.com>
2588         * __ComObject.cs: Begin implementing COM Interop.
2589         * Environment.cs: Increment corlib version.
2590         
2591 2006-07-12  Zoltan Varga  <vargaz@gmail.com>
2593         * Delegate.cs (DynamicInvokeImpl): Add support for bound delegates in Net 2.0.
2595 2006-07-11  Zoltan Varga  <vargaz@gmail.com>
2597         * Double.cs (Parse): Fix handling of inner whitespace.
2599 2006-07-09  Zoltan Varga  <vargaz@gmail.com>
2601         * Int32.cs: Fix a warning.
2603 2006-07-07  Atsushi Enomoto  <atsushi@ximian.com>
2605         * TimeZone.cs : consider DateTimeKind in ToLocalTime() and 
2606           ToUniversalTime(). Fixed bug #78784. Patch by Thong Nguyen.
2607         * DateTime.cs : DateTimeKind for UtcNow should be Utc.
2609 2006-06-28  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
2611         * Char.cs: Implemented IsHighSurrogate and IsLowSurrogate methods.
2613 2006-06-27  Atsushi Enomoto  <atsushi@ximian.com>
2615         * Double.cs : don't throw Exception in TryParse() for 'E'.
2616           Fixed bug #78546.
2618 2006-06-20  Jb Evain  <jbevain@gmail.com>
2620         * Math.cs: implement Math.Truncate.
2622 2006-06-13  Atsushi Enomoto  <atsushi@ximian.com>
2624         * DateTime.cs :
2625           Another lame win32 dependent pattern. Fixed bug #78618.
2627 2006-06-09  Jonathan Chambers  <jonathan.chambers@ansys.com>
2629         * Environment.cs: Implement Set/GetEnvironmentVariable for User/Machine.        
2631 2006-06-07  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
2633         * Environment.cs: Use Consts.FxFileVersion for Environment.Version
2634           as Consts.RuntimeVersion was removed.
2636 2006-06-05  Jonathan Chambers  <jonathan.chambers@ansys.com>
2638         * Variant.cs: Added.
2639         * Environment.cs: Incremented corlib version since adding Variant.      
2640         
2641 2006-06-01  Raja R Harinath  <rharinath@novell.com>
2643         * Nullable.cs (operator==, operator!=): Remove.
2645 2006-05-31  Zoltan Varga  <vargaz@gmail.com>
2647         * MonoDummy.cs: Removed as it is no longer needed.
2649         * Environment.cs: Bump corlib version.
2650         
2651         * Environment.cs: Revert the last change.
2652         
2653         * Environment.cs: Bump corlib version.
2655         * MonoAsyncCall.cs: New file.
2657 2006-05-30  Gert Driesen  <drieseng@users.sourceforge.net>
2659         * Char.cs: Removed duplicate (explicit) interface implementation.
2660         * String.cs: Removed duplicate (explicit) interface implemenation.
2661         * MulticastDelegate.cs: Fixed API mismatches.
2663 2006-05-29 Paolo Molaro <lupus@ximian.com>
2665         * String.cs: make sure that the chars truncated by a stringbuilder
2666         are zeroed.
2668 2006-05-29  Martin Baulig  <martin@ximian.com>
2670         * Exception.cs
2671         (Exception.StackTrace): Use the new stack trace format which is
2672         very similar to the one of MS.NET - method name goes first,
2673         file / line number last and in the method name, we separate class
2674         and method name by `.'.
2676         * Environment.cs
2677         (Environment.StackTrace): Enable line-number information.
2679 2006-05-24  Atsushi Enomoto  <atsushi@ximian.com>
2681         * DateTime.cs :
2682           Implement 2.0 TryParseExact(). Patch by Seo Sanghyeon.
2684 2006-05-17  Kazuki Oikawa  <kazuki@panicode.com>
2686         * Array.cs : added internal sort method used
2687           in System.Collections.Generics.List<T>.Sort(Comparison<T>).
2689 2006-05-15  Zoltan Varga  <vargaz@gmail.com>
2691         * Environment.cs: Bump corlib version.
2693 2006-05-10  Zoltan Varga  <vargaz@gmail.com>
2695         * MonoType.cs (GetMethodImpl): Fix a warning.
2697 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
2699         * ArrayTest.cs : use proper comparer in IndexOf() and LastIndexOf().
2700           Patch by Kazuki Oikawa. Fixed bug #77277.
2702 2006-05-07  Zoltan Varga  <vargaz@gmail.com>
2704         * Nullable.cs (Equals): Fix comparison to null. Fixes #78322.
2706 2006-04-28  Atsushi Enomoto  <atsushi@ximian.com>
2708         * Nullable.cs : updated Nullable<T> API to 2.0 RTM.
2710 2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>
2712         * Double.cs : (Parse) handle currency symbol when
2713           AllowCurrencySymbol is passed as part of the style. Patch by
2714           nede@aliquant.com, modified to eliminate redundant Substring().
2715           This fixes bug #77721.
2717 2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>
2719         * MonoType.cs : (GetMethod) when zero-length type[] is explicitly
2720           passed, don't return methods with some arguments. Fixed bug #77367.
2722 2006-04-21  Gert Driesen  <drieseng@users.souceforge.net>
2724         * Enum.cs: Provide meaningful message when type of passed in value
2725         does not match enum type.
2727 2006-04-19  Raja R Harinath  <rharinath@novell.com>
2729         * Char.cs (Equals): Don't access 'm_value' field of other
2730         instances.  Cast directly to 'char'.
2732 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
2734         * DateTime.cs : implement SpecifyKind(). Patch by Thong Nguyen.
2736 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
2738         * NumberFormatter.cs : general performance improvements. Avoid 
2739           extraneous evaluation for simple formatting. Details are seen in 
2740           bug #77792. Patch by Kazuki Oikawa.
2742 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
2744         * DateTime.cs : implement IsDaylightSavingTime().
2745           Patch by Seo Sanghyeon <tinuviel@sparcs.kaist.ac.kr>.
2747 2006-04-04  Atsushi Enomoto  <atsushi@ximian.com>
2749         * Array.cs :
2750           added some more [ReliabilityContract].
2751           removed some [CLSCompliant].
2752           renamed generic method parameter names.
2754 2006-03-31  Zoltan Varga  <vargaz@gmail.com>
2756         * Environment.cs (SetEnvironmentVariable): Implement.
2758 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
2760         * Array.cs : oops, the last change caused regression. The array must
2761           be transparent to ReadOnlyCollection, not create another list.
2763 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
2765         * Array.cs : AsReadOnly<T>() in RTM returns ReadOnlyCollection<T>.
2766           Thus removed ReadOnlyArray<T> and ReadOnlyArrayEnumerator<T>.
2767           In 2.0 some members became non-virtual.
2769 2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>
2771         * String.cs : oops, NET_2_0.
2773 2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>
2775         * String.cs : added new IndexOf() and LastIndexOf() overloads, and
2776           IEnumerable<char>.GetEnumerator().
2778 2006-03-21  KornĂ©l PĂ¡l  <kornelpal@gmail.com>
2780         * String.cs: Make memcpy4 private as it is a helper method.
2781           Make memcpy internal to can be used from UnicodeEncoding.
2783 2006-03-19  Marek Safar  <marek.safar@seznam.cz>
2785         * Nullable.cs (Compare, Equals): Added constrain as gmcs now correctly
2786         reports an error here.
2788 2006-03-16  Atsushi Enomoto  <atsushi@ximian.com>
2790         * Double.cs : (Parse) reject String.Empty.
2792 Wed Mar 15 16:30:51 CET 2006 Paolo Molaro <lupus@ximian.com>
2794         * LocalDataStoreSlot.cs: implement as index in an array.
2795         Implemented finalizer and allow it to remove the data stored
2796         in the slot.
2798 2006-03-15  Zoltan Varga  <vargaz@gmail.com>
2800         * Environment.cs: Bump corlib version.
2802 2006-03-10  Zoltan Varga  <vargaz@gmail.com>
2804         * MonoCustomAttrs.cs (IsDefined): Avoid a runtime assert if a type
2805         overwrites GetCustomAttributes () but not IsDefined ().
2807 2006-03-07  Peter Dennis Bartok  <pbartok@novell.com>
2809         * Environment.cs: Bumped corlib version to 48 (due to r57532)
2811 2006-03-07  Martin Baulig  <martin@ximian.com>
2813         * String.cs (String.FormatHelper): Try getting an `ICustomFormatter'
2814         from the `provider' if possible.
2816 2006-02-26  Gert Driesen  <drieseng@users.souceforge.net>
2818         * DecimalFormatter.cs: Removed obsolete class, as it has been replaced
2819         by NumberFormatter.
2820         * DoubleFormatter.cs: Same.
2821         * SingleFormatter.cs: Same.
2823 2006-02-21  Marek Safar  <marek.safar@seznam.cz>
2825         * String.cs (Equals): Optimized for speed.
2827 2006-02-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2829         * TermInfoDriver.cs: patch by Mike Hull that fixes bug #77518.
2831 Mon Feb 20 11:19:54 CET 2006 Paolo Molaro <lupus@ximian.com>
2833         * MonoType.cs: patch from Joachim Ante <joe@otee.dk> to
2834         improve error messages.
2836 2006-02-15  Martin Baulig  <martin@ximian.com>
2838         * Type.cs (Type.IsGenericInstance): Removed.
2840 2006-02-14  Ankit Jain  <jankit@novell.com>
2841             Raja R Harinath  <rharinath@novell.com>
2843         * ArraySegment.cs (.ctor): Fix bounds check. Rename param 'length' to
2844         'count'.
2846 2006-02-11  Zoltan Varga  <vargaz@gmail.com>
2848         * TermInfoDriver.cs (CreateKeyInfoFromInt): Fix handling of tab and its
2849         friends.
2850         
2851         * TermInfoDriver.cs (GetWindowDimensions): Obtain the exact terminal
2852         size using an icall.
2853         (GetCursorPosition): Convert the row and column to 0 based indexing. 
2854         Also fix reading of large values.
2855         (CreateKeyInfoFromInt): Convert LF to ConsoleKey.Enter.
2857         * ConsoleDriver.cs (GetTtySize): New icall.
2859 2006-02-10  Zoltan Varga  <vargaz@gmail.com>
2861         * Array.cs: Fix some methods which previously returned Nullable<T>.
2863         * Nullable.cs: Add T: struct constraint and fix constructor.
2865 Fri Feb 3 11:01:46 CET 2006 Paolo Molaro <lupus@ximian.com>
2867         * String.cs: changed StartsWith/EndsWith to faster versions.
2869 2006-02-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2871         * String.cs: implement 2.0 StartsWith and EndsWith new overloads. Based
2872         on a patch by Thong Nguyen.
2874 2006-01-31  Zoltan Varga  <vargaz@gmail.com>
2876         * String.cs: Implement one of the new net 2.0 Split methods.
2878 2006-01-31  Atsushi Enomoto  <atsushi@ximian.com>
2880         * String.cs : (LastIndexOf) Fixed bug #77412. It should not expect
2881           that value length is bigger than its index.
2883 2006-01-27  Zoltan Varga  <vargaz@gmail.com>
2885         * DateTime.cs: Add some 2.0 methods and properties.
2887 2006-01-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2889         * Console.cs: if InternalCodePage returns -1, use the default encoding.
2890         Also match the UTF8 one properly. Patch by wall_john@sohu.com.
2892 2006-01-19  Atsushi Enomoto  <atsushi@ximian.com>
2894         * ModuleHandle.cs : GetPEKind() is not public in 2.0 RTM.
2896 2006-01-16  Alp Toker  <alp@atoker.com>
2898         * TimeSpan.cs: Simple implementation of NET 2.0 TryParse() using
2899         try/catch
2901 2006-01-05  Raja R Harinath  <rharinath@novell.com>
2903         Fix regressions introduced by the fix to #71300.
2904         * Activator.cs (CreateInstance): Use Binder.SelectMethod instead
2905         of home-grown FindBestCtor.
2906         (FindBestCtor): Delete.
2908 2006-01-03  Zoltan Varga  <vargaz@gmail.com>
2910         * Nullable.cs: Update to Net 2.0 RTM.
2911         
2912         * Nullable.cs: Add comments about runtime dependencies on the layout of
2913         this type.
2915 2006-01-02  Sebastien Pouliot  <sebastien@ximian.com>
2917         * Activator.cs: Now find the best ctor when null are used for 
2918         paramaters. Fix bug #71300. Added checks for specific types (void,
2919         TypedReference, ArgIterator and RuntimeArgumentHandle).
2920         * Console.cs: Re-use Environment logic to detect Windows.
2921         * Type.cs: Re-applied r45150 as the real bug was in Activator.
2923 2006-01-02  Zoltan Varga  <vargaz@gmail.com>
2925         * Activator.cs: Add a 'params' to one of the CreateInstance overloads.
2927         * RuntimeTypeHandle.cs RuntimeMethodHandle.cs RuntimeFieldHandle.cs:
2928         Add == and != operators.
2930 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com>
2932         * Environment.cs: Bump corlib version to 46.
2933         * TimeZone.cs: Partial fix for #76094. Added [Serializable] attribute 
2934         and renamed internal CurrentTimeZone class to CurrentSystemTimeZone 
2935         (like MS). This allows serialization roundtrip to work in Mono but 
2936         there's still an issue when deserializing a stream from MS. 
2938 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com> 
2940         * NumberFormatter.cs: Fixed rounding for float and the string output
2941         now includes all the precision (not counting preceding zeros). This
2942         fix the DecimalTest.TestConstructSingleRounding_NotWorking test cases.
2944 2005-12-21  Sebastien Pouliot  <sebastien@ximian.com> 
2946         * Array.cs: Fixed Sort<T> with IComparable (generic or not) bug #77039
2948 2005-12-20  Carlos Alberto Cortez <calberto.cortez@gmail.com>
2950         * Array.cs: Added the Sort<T> methods (generics). 
2952 2005-12-19  Sebastien Pouliot  <sebastien@ximian.com> 
2954         * Array.cs: Fixed BinarySearch when the array is empty (#77030). Added
2955         some null check which throws ArgumentNullException under 2.0.
2957 2005-12-15  Sebastien Pouliot  <sebastien@ximian.com>
2959         * DateTime.cs: Added MonoTODO to ctor accepting a Calandar instance.
2960         * Double.cs: Under 2.0 throw a ArgumentException when parsing with
2961          NumberStyles.AllowHexSpecifier. Partial fix for #72221. Added the
2962         second, simpler, TryParse method (2.0).
2963         * Single.cs: Added the TryParse methods for 2.0.
2965 2005-12-15  Raja R Harinath  <rharinath@novell.com>
2967         * Type.cs (IsGenericType): Make virtual.
2969 2005-12-08  Sebastien Pouliot  <sebastien@ximian.com> 
2971         * AppDomainSetup.cs: ApplicationBase throw exception on get (not on 
2972         set). New behaviour is more like MS - but most issues (unit tests)
2973         were really path issues. Fix bug #71291.
2974         * DateTime.cs: Add more information when throwing an exception in 
2975         ctor(long). Useful for debugging.
2977 2005-12-07  Zoltan Varga  <vargaz@gmail.com>
2979         * Single.cs Double.cs: Fix warnings.
2981 2005-12-06  Sebastien Pouliot  <sebastien@ximian.com> 
2983         * Convert.cs: ToBase64String method didn't use the option parameter so
2984         we always included new lines. Fix bug #76876.
2986 2005-12-06  Sebastien Pouliot  <sebastien@ximian.com>
2988         * AppDomainSetup.cs: Added missing ComVisible and removed LAMESPEC 
2989         (the docs were fixed).
2990         * NumberFormatter.cs: Fixed the "NotWorking" case where 1.15 was 
2991         misrounded compared to MS implementation. Extra care is required when
2992         dealing with the extra 2 digits information (e.g. double precision is
2993         15 digits but 17 are kept - for a reason ;-)
2995 2005-12-05  Ben Maurer  <bmaurer@ximian.com>
2997         * Environment.cs: Bump version
2999         * Nullable.cs: New Box and Unbox methods for the jit
3001 2004-12-05  Peter Dennis Bartok <pbartok@novell.com>
3003         * Enum.cs: Properly handle "No bits set" case even if the sorted numbers
3004           list does not have enum value 0 as the first item. Fixes #76921
3006 2005-12-05  Sebastien Pouliot  <sebastien@ximian.com>
3008         * AppDomain.cs: CreateComInstanceFrom isn't static in any profile.
3010 Mon Dec 5 15:14:59 CET 2005 Paolo Molaro <lupus@ximian.com>
3012         * Double.cs: remove unused icall.
3013         * BitConverter.cs: handle double binary format on ARM FPA.
3015 2005-12-02  Alp Toker  <alp@atoker.com>
3017         * MonoType.cs:
3018         * Type.cs: DeclaringMethod should return MethodBase, not MethodInfo
3020 2005-12-02  Alp Toker  <alp@atoker.com>
3022         * AppDomain.cs: ReflectionOnlyPreBindAssemblyResolve renamed to
3023         ReflectionOnlyAssemblyResolve in 2.0 final
3025 2005-12-01  Alp Toker  <alp@atoker.com>
3027         * String.cs: Add static and non-static Equals(... StringComparison) for
3028         2.0.
3030 2005-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3032         * TermInfoDriver.cs: special case for the escape key. Fixes bug #76781.
3034 2005-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3036         * TermInfoDriver.cs: if the cursor_address capability contains a %i, we
3037         have to add 1 to x and y when setting the cursor position.
3038         Fixes bug #76856.
3040         * Convert.cs: remove unused variables.
3042 Wed Nov 30 12:14:20 EST 2005 Paolo Molaro <lupus@ximian.com>
3044         * NumberFormatter.cs: work around arch-specific ulong cast behaviour
3045         with large numbers.
3047 Tue Nov 29 05:38:37 EST 2005 Paolo Molaro <lupus@ximian.com>
3049         * Convert.cs: fix endianess issue when converting to base-8
3050         format. All the base code would need a rewrite for efficience.
3052 2005-11-25  Sebastien Pouliot  <sebastien@ximian.com>
3054         * String.cs: Added support for Compare(... StringComparison) in 2.0.
3056 2005-11-25  Alp Toker  <alp@atoker.com>
3058         * Type.cs (IsVisible): New 2.0 property, implemented recursively.
3060 2005-11-17  Dick Porter  <dick@ximian.com>
3062         * Environment.cs: Incremented corlib version
3064 2005-11-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
3066         * Int32.cs, UInt32.cs, Int16.cs, UInt16.cs, Int64.cs,
3067         UInt64.cs, Byte.cs, SByte.cs, Double.cs : Modify internal Parse
3068         methods to return the exception as an out parameter,
3069         instead of throwing it. This will be of special help
3070         to TryParse methods.
3071         * Environment.cs: Update corlib version to 42.
3072         
3073 2005-11-14  Raja R Harinath  <rharinath@novell.com>
3075         * EventHandler.cs (EventHandler<TEventArgs>): Rename from EventHandler<T>.
3077 2005-11-11  Zoltan Varga  <vargaz@gmail.com>
3079         * Type.cs (GetPseudoCustomAttributes): Return ComImportAttribute as well.
3081 2005-11-11  Lluis Sanchez Gual  <lluis@novell.com>
3083         * TimeZone.cs: Removed incorrect double-check lock and unneeded
3084         hashtable access.
3086 2005-11-11  Marek Safar  <marek.safar@seznam.cz>
3088         * Type.cs: IsNested implemented, signature fixes.
3090 2005-11-11  Raja R Harinath  <rharinath@novell.com>
3092         * Array.cs (Resize<T>) [2-argument variant]: Fix nullref.
3094 2005-11-10  Zoltan Varga  <vargaz@gmail.com>
3096         * Array.cs (Resize<T>): New internal method which takes a 'length' argument
3097         as well to avoid copying the whole array.
3099 2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>
3101         * Int64.cs : ditto for long.
3103 2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>
3105         * Int32.cs : Parse("2147483648", format_provider) should be rejected.
3107 2005-11-09  Sebastien Pouliot  <sebastien@ximian.com>
3109         * AttributeTargets.cs: Added [ComVisible (true)] and [Serializable] 
3110         in 2.0 profile.
3111         * Base64FormattingOptions.cs: Added missing [Flags] attribute.
3112         * ConsoleKey.cs: Removed old BackSpace and WhiteSpace (they were 
3113         already replaced by Backspace and Whitespace)
3114         * DateTime.cs: Moved DayOfWeek enum to it's own file.
3115         * DateTimeKind.cs: New (2.0) enum.
3116         * DayOfWeek.cs: New file (extracted from DateTime.cs).
3117         * DomainManagerInitializationFlags.cs: Removed extra [Serializable].
3118         * EnvironmentVariableTarget.cs: Added [ComVisible (true)] and fixed 
3119         values (-1 to all of them).
3120         *  Exception.cs: Added a LinkDemand for SerializationFormatter on
3121         GetObjectData method.
3122         *  LoaderOptimization.cs: Added [ComVisible (true)] and [Serializable] 
3123         on enum and added [Obsolete] to DomainMask and DisallowBindings in 2.0
3124         profile.
3125         * PlatformID.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
3126         profile.
3127         * StringComparison.cs: New (2.0) enum (needed for Uri).
3128         * TermInfoDriver.cs: Fixed BackSpace -> Backspace (see ConsoleKey.cs).
3129         * TypeCode.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
3130         profile.
3132 2005-11-08  Atsushi Enomoto  <atsushi@ximian.com>
3134         * Type.cs : I forgot to mention, some '(' were missing in the
3135           improved patch ;-)
3137 2005-11-08  Zoltan Varga  <vargaz@freemail.hu>
3139         * Type.cs (GetPseudoCustomAttributes): Check for TypeAttributes.Serializable instead of
3140         IsSerializable property, since the latter returns true for delegates/enums.
3142 2005-11-05  KornĂ©l PĂ¡l  <kornelpal@hotmail.com>
3144         * Environment.cs: Use Consts.RuntimeVersion as Environment.Version that
3145           makes maintenance easier.
3147 2005-10-24  Martin Baulig  <martin@ximian.com>
3149         * Type.cs (Type.IsGenericTypeDefinition): Make this virtual.
3151 2005-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3153         * String.cs: fix bound checkings for LastIndexOfAny. Closes bug #76519.
3155 2005-10-20  Raja R Harinath  <rharinath@novell.com>
3157         * Array.cs (Swapper): Remove NET_2_0 guards from nested declaration.
3159 2005-10-16  Michal Moskal  <malekith@nemerle.org>
3161        * TermInfoDriver.cs: Call Init () in Background/ForegroundColor.
3163 2005-10-14  Atsushi Enomoto  <atsushi@ximian.com>
3165         * DateTime.cs : another crappy Windows dependent format.
3167 2005-10-14  Ben Maurer  <bmaurer@ximian.com>
3169         * DateTime.cs: Speed up when parsing date time objects by not
3170         duplicating cultureinfo arrays.
3172 2005-10-13  Zoltan Varga  <vargaz@gmail.com>
3174         * Type.cs (GetTypeCode): Applied patch from 
3175         Mike Welham <mwelham@gmail.com>. Return TypeCode.Empty when null is
3176         passed in.
3178 2005-10-07  Zoltan Varga  <vargaz@gmail.com>
3180         * Delegate.cs: Add support for delegate covariance and contravariance
3181         from net 2.0.
3183 2005-10-03  Atsushi Enomoto  <atsushi@ximian.com>
3185         * StringComparer.cs : (OrdinalIgnoreCaseComparer.Equals()) reverse.
3187 2005-09-26  Zoltan Varga  <vargaz@gmail.com>
3189         * String.cs (ParseFormatSpecifier): Fix skipping of whitespace. Fixes
3190         #76204.
3192 2005-09-23  Miguel de Icaza  <miguel@novell.com>
3194         * Decimal.cs: Fix typo, patch from Tomas Kukol <tomas.kukol@gmail.com>
3196 2005-09-19  Zoltan Varga  <vargaz@gmail.com>
3198         * MonoCustomAttrs.cs (GetCustomAttributesInternal): Add
3199         attributeType parameter.
3200         (IsDefined): New icall.
3202         * MonoCustomAttrs.cs: Avoid instantiating all custom attrs of an
3203         object when only a specific attribute type is requested. Fixes #76062.
3205         * Environment.cs: Bump corlib version.
3207 2005-09-09  Zoltan Varga  <vargaz@gmail.com>
3209         * TypeLoadException.cs MissingMethodException.cs MissingFieldException.cs: Add new ctors called by the runtime. Improve Message property.
3211 2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>
3213         * DateTime.cs : (_DoParse) don't check ticks range before computing
3214           the actual value. Fixed bug #76082.
3216 2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>
3218         * TimeZone.cs : When the target DateTime is in the range of
3219           DST end to DST + delta, don't adjust UtcOffset gap between that of
3220           DST and that of STD. This should fix bug #75985.
3222 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
3224         * TimeZone.cs, DateTime.cs :
3225           - ToLocalTime() and ToUniversalTime() are moved to TimeZone.
3226           - Added more COM patterns. Patch by Ankit Jain. Fixed bug #72132.
3227           - use ToLocalTime() and don't depend on the own offset computation.
3228             Parse() with 'Z' pattern is closer to correct value on switching
3229             Daylight Saving Time. See bug #75985.
3231 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
3233         * DateTime.cs : (DoParse) DateTimeStyles.AdjustToUniversal was not
3234           handled as expected and it kept time value as local one.
3235           Patch by Brion Vibber. Fixed bug #75995.
3237 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
3239         * DateTime.cs : Literal escape (\) was not checking format as
3240           expected. Fixed bug #75213.
3242 2005-09-05  Miguel de Icaza  <miguel@novell.com>
3244         * MonoType.cs: Patch from Jonathan Chambers to implement
3245         Type.GUID. 
3247 2005-09-05  Martin Baulig  <martin@ximian.com>
3249         Reflect latest API changes in the August CTP.
3251         * Type.cs (Type.HasGenericArguments): Removed.
3252         (Type.BindGenericParameters): Renamed to MakeGenericType().
3254 2005-09-01  Atsushi Enomoto  <atsushi@ximian.com>
3256         * DateTime.cs : another idiotic COM dependent format.
3258 2005-09-01  KornĂ©l PĂ¡l  <kornelpal@hotmail.com>
3260         * __ComObject.cs: Fixed to be internal. Removed CLSCompliant attribute.
3261         Added some comments about the class.
3263 2005-08-30  Sebastien Pouliot  <sebastien@ximian.com>
3265         * AppDomain.cs: Use the more concise property syntax for declarative
3266         security.
3267         * AppDomainManager.cs: Default HostSecurityManager is null.
3269 2005-08-25  Atsushi Enomoto  <atsushi@ximian.com>
3271         * NumberFormatter.cs : eliminate non-ASCII character.
3273 2005-08-25  Marek Safar  <marek.safar@seznam.cz>
3275         * Enum.cs: Better exception message.
3276         
3277 2005-08-21  Gert Driesen  <drieseng@users.sourceforge.net>
3279         * Convert.cs: In FromBase64String, return empty byte array for zero
3280         length string. Pass bool to InternalFromBase64String to control 
3281         whether to allow a whitespace-only string.
3282         * Environment.cs: Bump corlib version.
3284 2005-08-20  Zoltan Varga  <vargaz@freemail.hu>
3286         * Environment.cs: Bump corlib version.
3288 2005-08-19  Zoltan Varga  <vargaz@freemail.hu>
3290         * Math.cs: Implement a new 2.0 Round method.
3292 2005-08-19  Gert Driesen  <drieseng@users.sourceforge.net>
3294         * Convert.cs: Throw OverflowException if result is larger than
3295         ushort.MaxValue to match MS.NET. Remove commented code.
3297 2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>
3299         * Convert.cs: For now, do not throw OverflowException if hex prefixed
3300         value is negative for signed types (other than int64). Need to look
3301         into this further.      
3303 2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>
3305         * Convert.cs: Numerous fixed in overloads taking base to match 
3306         behaviour of MS.NET. Throw ArgumentOutOfRangeException is string is
3307         empty. If base is 16, 8 or 2, then throw ArgumentException if first 
3308         character is a negative sign. Throw OverflowException if hex prefixed 
3309         value is negative for signed types (other than int64) to match MS.NET. 
3311 2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>
3313         * DateTime.cs : added another COM dependent pattern (rather to describe
3314           how it works on .NET than to add the pattern itself...).
3316 2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>
3318         * DateTime.cs : added case for bug #53023.
3320 2005-08-10  Zoltan Varga  <vargaz@freemail.hu>
3322         * Type.cs: Add IsGenericType property from NET 2.0.
3324 2005-08-10  Atsushi Enomoto  <atsushi@ximian.com>
3326         * String.cs : added new StartsWith()/EndsWith() override, fixing
3327           existing EndsWith() which incorrectly assumed that both string
3328           lengths must be equivalent (they are not always equal).
3329         * StringComparer.cs : added Ordinal and OrdinalIgnoreCase.
3331 2005-08-09  Zoltan Varga  <vargaz@freemail.hu>
3333         * String.cs: Implement Split(String[]) methods.
3335 2005-08-09  Miguel de Icaza  <miguel@novell.com>
3337         * AppDomainSetup.cs: Full-pathization of the appBase should only
3338         be done on Windows, the ":" condition never applied to Linux.
3340         * ConsoleKey.cs: Include a few aliases for a few values that were
3341         introduced recently.
3343 2005-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3345         * ConsoleKey.cs: added Backspace, which has the same value as BackSpace.
3346         Fixes bug #75697.
3348 2005-08-08  Atsushi Enomoto  <atsushi@ximian.com>
3350         * String.cs : (StartsWith) compared string lengths are not always the
3351           same in culture-sensitive comparison.
3353 2005-08-05  Gert Driesen  <drieseng@users.sourceforge.net>
3355         * Array.cs: Changed protected ctor to private. Fixes API compatibility
3356         with MS.NET.
3357         * RuntimeFieldHandle.cs: Equals methods and GetHashCode should only
3358         be exposed in 2.0 profile.
3359         * RuntimeMethodHandle.cs: Equals methods and GetHashCode should only
3360         be exposed in 2.0 profile.
3361         * RuntimeTypeHandle.cs: Equals methods and GetHashCode should only
3362         be exposed in 2.0 profile.
3363         * Type.cs: Added GetType method and implemented _Type interface.
3364         Fixes API compatibility with MS.NET.
3366 2005-07-28  Marek Safar  <marek.safar@seznam.cz>
3368         * StringComparer.cs: Add generics version of string interfaces.
3370 2005-07-26  Atsushi Enomoto  <atsushi@ximian.com>
3372         * StringComparer.cs : implemented StringCultureComparer.GetHashCode().
3374 2005-07-26  Zoltan Varga  <vargaz@freemail.hu>
3376         * StringSplitOptions.cs MidpointRounding.cs: New files.
3378         * String.cs Math.cs: Add stubs for some new 2.0 APIs.
3380 2005-07-26  Marek Safar  <marek.safar@seznam.cz>
3382         * StringComparer.cs: New file.
3384 2005-07-26  Raja R Harinath  <harinath@gmail.com>
3386         * Enum.cs (GetValue): Make private.  Return an ulong.
3387         (Parse): Tighten scope of couple of variables.  Use ulong when
3388         twiddling bits.
3390 2005-07-25  Raja R Harinath  <rharinath@novell.com>
3392         * Enum.cs (FindName, GetValue): New.  Carved out of ...
3393         (Parse): ... this.  Refactor and simplify code.  Avoid incurring
3394         exceptions when parsing names.  Avoid allocating arrays unless
3395         necessary.  Avoid conversion of an enumeration constant to its own
3396         type.  (Incorporates ideas from a patch by Gonzalo Paniagua Javier.)
3398 2005-07-13  Lluis Sanchez Gual  <lluis@novell.com>
3400         * MarshalByRefObject.cs: GetLifetimeService() should be virtual.
3401         Fixes bug #75527.
3403 2005-07-13  Miguel de Icaza  <miguel@novell.com>
3405         * Array.cs: Patch from rodrigobamboo@gmail.com that fixes the
3406         signature for GetValue and SetValue to make the long [] argument
3407         be a params argument. 
3409 2005-07-11  Pedro MartĂ­nez JuliĂ¡  <pedromj@gmail.com>
3411         * Convert.cs: Fix the bug when Convert.ChangeType was using
3412         NumberFormatInfo instead of DateTimeFormatInfo when the type to
3413         change is a DateTime.
3415 2005-07-11  Martin Baulig  <martin@ximian.com>
3417         * Array.cs: Use Type.Equals() instead of `==' to compare type
3418         parameters.     
3420 2005-07-10  Kamil Skalski <nazgul@nemerle.org>
3422         * Type.cs: Mark BindGenericParameters as deprecated. Use
3423         MakeGenericType as default implementation with updated signature.
3425 2005-07-09  Zoltan Varga  <vargaz@freemail.hu>
3427         * Attribute.cs (IsDefined): Fix IsDefined for ParameterInfo's. Fixes
3428         #75514.
3430 2005-07-05  Lluis Sanchez Gual  <lluis@novell.com>
3432         * DelegateSerializationHolder.cs: When the deserialized target is
3433         a proxy, call IsInstanceOfType to force the proxy to load the
3434         real type of the remote object. This is needed to make sure that
3435         subsequent calls to GetType() return the expected type. This fixes
3436         bug #75447.
3438 2005-07-03  Ben Maurer  <bmaurer@ximian.com>
3440         * OperatingSystem.cs: patch from Aleksandar Dezelin to fix
3441         serialization.
3443 2005-06-30  Sebastien Pouliot  <sebastien@ximian.com> 
3445         * Guid.cs: Avoid code duplication between overriden methods (new in 
3446         2.0). Avoid exception processing when possible. Renamed parameters to
3447         match the framework. Added ComVisible to NET_2_0.
3449 2005-06-28  Elliott Draper  <el@eldiablo.co.uk>
3451         * Activator.cs: This implements the generic Activator.CreateInstance<T>()
3452         function for NET_2_0. It's full signature is:
3453                 public static T CreateInstance<T>();
3455 2005-06-28  Lluis Sanchez Gual  <lluis@novell.com>
3457         * Decimal.cs: Renamed internal fields for the sake of serialization
3458         interoperability with MS.NET.
3459         * Exception.cs: In the StackTrace property, return the stack trace
3460         if it has a value, even if the exception has not been thrown
3461         (it may have been deserialized).
3463 2005-06-28  Martin Baulig  <martin@ximian.com>
3465         * Array.cs (Array.InternalArray<T>): New nested class; derives
3466         from Array.  This is now used by the runtime for arrays; fixes #74953.
3468 2005-06-27  Atsushi Enomoto  <atsushi@ximian.com>
3470         * String.cs : added some extra whitespace characters for Trim().
3471           Fixed bug #75259.
3473 2005-06-13  Michal Moskal <malekith@nemerle.org>
3474         
3475         * MonoType.cs: Don't use MethodHandle in GetMethod/GetConstructor,
3476         since it now throws on MethodBuilders. Don't use FieldHandle in
3477         GetField (throws on FieldBuilder) - just use the name.
3479 2005-06-13  Martin Baulig  <martin@ximian.com>
3481         * MonoType.cs
3482         (MonoType.getFullName): Added `bool assembly_qualified' argument.
3483         (MonoType.AssemblyQualifiedName): The interncall now adds the
3484         assembly name, so we don't need to do it here.
3485         (MonoType.FullName): Use the new getFullName() API.
3487 2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>
3489         * Char.cs: ToLowerInvariant and ToUpperInvariant are now public in 
3490         NET_2_0. Added "new" white char and ComVisible for 2.0.
3492 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3494         * Convert.cs: FromBase64String and FromBase64CharArray are now internal
3495         calls to avoid extra allocations.
3497 2005-06-09  Kamil Skalski <nazgul@nemerle.org>
3499         * Type.cs: Add MakeGenericType method form .NET 2.0 beta 2 API
3501         * Type.cs MonoType.cs: Add internal virtual
3502         Get{Method,Constructor,Field} for obtaining instanciated *Info objects
3503         from non-instanciated counterparts
3505 2005-06-09  Zoltan Varga  <vargaz@freemail.hu>
3507         * ModuleHandle RuntimeMethodHandle.cs RuntimeTypeHandle.cs RuntimeFieldHandle.cs RuntimeArgumentHandle.cs: Add missing 2.0 attributes.
3509 2005-06-08  Zoltan Varga  <vargaz@freemail.hu>
3511         * Type.cs: Add missing 2.0 attributes.
3513 2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>
3515         * MonoCustomAttrs.cs: Added GetCustomAttributesDataInternal icall, and
3516         also internal method GetCustomAttributesData, used by 
3517         System.Reflection.CustomAttributeData.
3518         
3519 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
3521         * Activator.cs: Added  _Activator interface (and members) for 1.1 and
3522         missing attributes (for both 1.1 and 2.0).
3523         * String.cs: Made internal To[Lower|Upper]Invariant methods public for
3524         2.0. Reworked Trim() to skip a useless call. Added missing attribute
3525         for 2.0.
3526         * Type.cs: Added  _Type, _MemberInfo interfaces (1.1/2.0). Added 
3527         missing attribute for 2.0. Hided some public/protected methods.
3529 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
3531         * ModuleHandle.cs: Update after PortableExecutableKinds name change.
3533 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
3535         * _AppDomain.cs: Added new members in the interface (added in 1.1 SP1)
3536         * AppDomain.cs: Added new members from _AppDomain interface.
3537         * AppDomainManager.cs: Fixed flags and added attributes.
3538         * DomainManagerInitializationFlags.cs: The flag has been renamed to 
3539         AppDomainManagerInitializationOptions in beta2.
3541 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
3543         * Type.cs MonoCustomAttrs.cs: Return SerializableAttribute for types as well.
3545 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
3547         * Exception.cs: Implements _Exception only for 2.0.
3549 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
3551         * GC.cs: Fix build.
3552         
3553         * GC.cs UnhandledExceptionEventArgs.cs IntPtr.cs RuntimeFieldHandle.cs 
3554           String.cs Object.cs Math.cs RuntimeMethodHandle.cs ModuleHandle.cs 
3555           RuntimeTypeHandle.cs AppDomain.cs: Add some missing 2.0 methods/attributes.
3557 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3559         * Environment.cs:
3560         * AppDomain.cs: if the assembly is loaded from a byte array, Location
3561         returns "". Fixes bug #74958.
3563 2005-06-04  Ben Maurer  <bmaurer@ximian.com>
3565         * *.cs: More 2.0 API fixups
3567         * *.cs: In beta 2, generics are no longer non-cls-compliant.
3569 2005-06-05  Kazuki Oikawa  <kazuki@panicode.com>
3571         * NumberFormatter.cs: Fixed the output of 0.ToString("00.00E00")
3572         that was different from MSFT.
3573         * String.cs: Fixed IndexOfAny thrown an exception
3574         when startIndex of arguments equals Length. (Closes bug #75083.)
3576         * Decimal.cs: Changed to use NumberFormatter in ToString.
3577         * NumberFormatter.cs: Implemented decimal formatter.
3579 2005-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3581         * Type.cs: reverted wrong fix for bug #71300 in r45150. This makes SSL
3582         support in System.Net work again.
3584 2005-06-01  Ben Maurer  <bmaurer@ximian.com>
3586         * CharEnumerator.cs: add IEnumerable <char> support
3588 2005-05-30  Sebastien Pouliot  <sebastien@ximian.com>
3590         * Activator.cs: Added missing validation on parameters.
3592 2005-05-28  Ben Maurer  <bmaurer@ximian.com>
3594         * Type.cs: Check that the arguments of the `types' array are
3595         non-null. Fixes bug 71300
3597 2005-05-28  Sebastien Pouliot  <sebastien@ximian.com>
3599         * AppDomainSetup.cs: Added new 2,0 constructors and the 
3600         ActivationArguments property.
3601         * AppDomainManager.cs: Added using System.Runtime.Hosting as it is the
3602         new location for the ApplicationActivator class.
3603         * ApplicationActivator.cs: Moved to System.Runtime.Hosting namespace.
3605 2005-05-27  Vladimir Vukicevic  <vladimir@pobox.com>
3607         * Environment.cs: bump corlib version for bug #75060.
3609 2005-05-27  Raja R Harinath  <rharinath@novell.com>
3611         * Environment.cs (ExpandEnvironmentVariables): Rewrite
3612         sb.Append (s.SubString (a, b)) to sb.Append (s, a, b).
3613         * String.cs (FormatHelper): Rewrite sb.Append (s.SubString (a)) to
3614         sb.Append (s, a, s.Length - a).  Avoid allocating 'pad' string --
3615         StringBuilder has an appropriate Append overload.
3617 2005-05-26  Zoltan Varga  <vargaz@freemail.hu>
3619         * Type.cs (IsEnum): Special case EnumBuilder here.
3621 2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>
3623         * MonoType.cs: Changed call from GetName to UnprotectedGetName to
3624         allow call to work with serialization under a restrictive policy.
3625         The code path (the protected information) isn't being used.
3627 2005-05-25  Zoltan Varga  <vargaz@freemail.hu>
3629         * Exception.cs: Use the new StackTrace ctor.
3631         * Type.cs: Improve support for user defined type subclasses.
3633 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
3635         * DateTime.cs : Added minimum digit parameter to ParseNumber() to
3636           reject 2 digit years for "yyyy".
3637           Use GetAllDateTimePatterns() instead of constant string.
3638           Fixed bug #72788.
3640 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
3642         * DateTime.cs : next_not_digit prevented some valid parse.
3643           Just remove it, since now we pass max length to ParseNumber() and
3644           thus it is not needed anymore. Fixed bug 63137.
3646 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
3648         * DateTime.cs : HH should not always block tt. Fixed bug #60912.
3649           Reset num after whitespace parsing.
3650           Added "M/d/yyyy HH':'mm':'ss tt" as an invariant pattern.
3652 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
3654         * DateTime.cs : Allow ',' where whitespaces are allowed.
3655           Fixed bug #71289.
3657 2005-05-22  Ben Maurer  <bmaurer@ximian.com>
3659         * BitConverter.cs: Speed this up, fixing 74014. Patch from
3660         `Aleksandar Dezelin'.
3662 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
3664         * Type.cs: Add some helper methods needed by other classes.
3666         * Array.cs: Improve support for user defined Type subclasses.   
3667         
3668         * Type.cs: Rename GetTypeCode icall to GetTypeCodeInternal and add a managed
3669         wrapper function, not used yet.
3671         * Type.cs Array.cs: Revert this as it breaks the build.
3673         * Type.cs Array.cs: Improve support for user defined Type subclasses.
3675 2005-05-19  Ben Maurer  <bmaurer@ximian.com>
3677         * Delegate.cs (Equals): Use `as' to protect in the case where !
3678         (obj is Delegate)
3680 2005-05-19  Raja R Harinath  <rharinath@novell.com>
3682         * Console.cs (Readline) [NET_2_0]: Avoid "uninitialized variable"
3683         error.
3685 2005-05-19  Miguel de Icaza  <miguel@novell.com>
3687         * TermInfoDriver.cs: Removed warning.
3689         * Array.cs (Resize<T>, TrueForAll<T>, ConvertAll<TInput,TOutput>,
3690         FindLastIndex<T>: Parameter names are normative.        
3691         Fix coding style ("Method<T>" not "Method <T>")
3692         Throw argument exceptions per argument.
3693         
3694         (FindAll): Fix bug, actually return the values that were computed,
3695         not a short version of the original array.
3696         
3697 2005-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3699         * Console.cs: fix error in the 2_0 side and split ReadLine in 2, one
3700         for each framework version.
3702 2005-05-15  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
3704         * Attribute.cs:
3705         * Exception.cs: .Net 1.1 already has these interfaces
3707 Mon May 16 18:23:49 CEST 2005 Paolo Molaro <lupus@ximian.com>
3709         * MonoCustomAttrs.cs, Type.cs: do not create a SerializableAttribute
3710         object on GetCustomAttributes (fixes bug #74717).
3712 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
3714         * DateTime.cs : for 'z' next_not_digit didn't work as expected.
3715           Fixed bug #74775.
3717 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
3719         * DateTime.cs : don't allow extraneous pattern characters also for
3720           non-exact parsing (ParseExact() was fine). Bug #74936 fixed
3722 2005-05-13  Gert Driesen <drieseng@users.sourceforge.net>
3724         * Activator.cs: Match exceptions thrown by MS.NET for
3725         CreateInstance overloads if type is abstract. Fixes bug #74861.
3727 2005-05-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3729         * OperatingSystem.cs: PlatformID.Unix.
3731 2005-05-09  Sebastien Pouliot  <sebastien@ximian.com>
3733         * Environment.cs: Patch from Gonzalo to fix Environment.OSVersion.
3734         Platform under NET_2_0 to return PlatformID.Unix. Fix bug #74841.
3736 2005-05-07  Atsushi Enomoto  <atsushi@ximian.com>
3738         * NumberFormatter.cs : roundtrip number is already rounded before
3739           FormatGeneral() and DefaultMaxPrecision was extraneous. This fixes
3740           bug #72955.
3742 2005-05-07  Ben Maurer  <bmaurer@ximian.com>
3744         * Array.cs (BinarySearch): Patch from kazuki to pass arguments to
3745         the comparer in the same order as msft. Fixes #70725
3747 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3749         * Enum.cs: the hashtable don't need to be synchronized any more, since
3750         it's only accessed from withint a lock.
3752         * Console.cs: stdin, stdout and stderr will never be finalized. Fixes
3753         bug 74768.
3755 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
3757         * Array.cs: Remove CLSCompliant (false) attributes.
3759 2005-05-06  Martin Baulig  <martin@ximian.com>
3761         * Predicate.cs, Action.cs, Comparision.cs, Converter.cs: Add
3762         [CLSCompliant(true)] attribute.
3764 2005-05-04  Miguel de Icaza  <miguel@novell.com>
3766         * Enum.cs (MonoEnumInfo): Based on a patch from James Willcox,
3767         initialize cache as a static method.  Fixes #74828.
3769 2005-05-03  Marek Safar  <marek.safar@seznam.cz>
3771         * Console.cs: CancelKeyPress is stubbed.
3773 2005-04-25  Sebastien Pouliot  <sebastien@ximian.com>
3775         * ActivationContext.cs: Updated for beta2.
3776         * AppDomainManager.cs: Updated for beta2.
3777         * ApplicationId.cs: Updated for beta2.
3778         * ApplicationIdentity.cs: Updated for beta2.
3779         * Exception.cs: Now use Assembly.UnprotectedGetName () as Exception 
3780         doesn't leak the code base from the returned AssemblyName.
3782 2005-04-25  Martin Baulig  <martin@ximian.com>
3784         * Environment.cs (Environment.Version): Changed to 2.0.50215.
3786 2005-04-22  Sebastien Pouliot  <sebastien@ximian.com>
3788         * Attribute.cs: Added _Attribute interface to NET_2_0 to reduce the 
3789         number of "missing" in the class status pages.
3791 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3793         * MulticastDelegate.cs: (GetInvocationList) when building the list that
3794         is later traversed forward, mark 'this' as the end of the chain.
3795         Fixes bug #74607.
3797 2005-04-19  Zoltan Varga  <vargaz@freemail.hu>
3799         * Environment.cs: Bump corlib version.
3801 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3803         * WindowsConsoleDriver.cs: ignore key release events.
3805 2005-04-06  Atsushi Enomoto  <atsushi@ximian.com>
3807         * Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.
3809 2005-04-05  Sebastien Pouliot  <sebastien@ximian.com>
3811         * _AppDomain.cs: Add security checks to the interface. Declarative 
3812         security on events requires BOOTSTRAP_WITH_OLDLIB to work properly 
3813         with older MCS.
3814         * AppDomain.cs: Add some (not complete) security checks. Bug#74411 is
3815         blocking some cases from working properly. Declarative security on 
3816         events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS.
3818 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>
3820         * AppDomain.cs: Use the PolicyLevel to resolve the granted permissions
3821         on the AppDomain. Added an internal property to get the granted set.
3823 2005-04-04  Atsushi Enomoto  <atsushi@ximian.com>
3825         * String.cs,
3826           Char.cs : use TextInfo for ToLower() and ToUpper().
3828 2005-03-31  Sebastien Pouliot  <sebastien@ximian.com>
3830         * Exception.cs: Added Assert for TypeInformation to GetObjectData and
3831         ToString methods (not required for 2.0 as TypeInformation will be 
3832         deprecated). Added null check for GetObjectData.
3834 Tue Mar 29 11:47:19 CEST 2005 Paolo Molaro <lupus@ximian.com>
3836         * Delegate.cs: allow IronPython 0.7 to compile.
3838 2005-03-24  Miguel de Icaza  <miguel@novell.com>
3840         * Delegate.cs: Add CreateDelegate with a target option, currently
3841         internal as it is not exposed by the framework yet.
3843 2005-03-24  Zoltan Varga  <vargaz@freemail.hu>
3845         * String.cs: Add some 2.0 methods.
3847 2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>
3849         * Activator.cs: Now use the supplied evidences when loading 
3850         assemblies. Added LinkDemand for RemotingConfiguration on both
3851         GetObject methods.
3852         * Console.cs: Added Assert for UnmanagedCode on OpenStandard[Error|
3853         Input|Output] as they use a handle on a FileStream (which is
3854         restricted otherwise). Added Demand for UnmanagedCode for the
3855         Set[Error|In|Out] methods.
3856         * MarshalByRefObject.cs: Added LinkDemand for Infrastructure on 
3857         CreateObjRef, GetLifetimeService and InitializeLifetimeService.
3858         * RuntimeMethodHandle.cs: Added Demand for UnmanagedCode on 
3859         GetFunctionPointer method.
3860         * TypedReference.cs: Added LinkDemand for ReflectionPermission's
3861         MemberAccess on MakeTypedReference.
3863 2005-03-14  Sebastien Pouliot  <sebastien@ximian.com>
3865         * Environment.cs: Fix CAS unit tests for NET_1_1.
3866         * Exception.cs: Fix CAS unit tests for NET_1_1.
3868 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3870         * Version.cs: don't ignore the last number. Fixes bug #73539.
3872 2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>
3874         * MonoType.cs: When the security manager is active, constructors and
3875         methods will return null if a linkdemand fails during reflection 
3876         query.
3878 2005-03-11  Zoltan Varga  <vargaz@freemail.hu>
3880         * Array.cs (Sort): Bail out early if length <= 1. Fixes #72721.
3882 2005-03-10  Zoltan Varga  <vargaz@freemail.hu>
3884         * Environment.cs: Bump corlib version.
3886 2005-03-10  Martin Baulig  <martin@ximian.com>
3888         * Nullable.cs (Nullable<T>.ToString): Return an empty string if
3889         we're null.
3891 2005-03-09  Zoltan Varga  <vargaz@freemail.hu>
3893         * Activator.cs MonoType.cs: Applied patch from Carlos Alberto Cortez
3894         (carlos@unixmexico.org). Allow creation of valuetypes with no ctor.
3895         Fixes #73432.
3897 2005-03-04  Zoltan Varga  <vargaz@freemail.hu>
3899         * Environment.cs: Bump corlib version.
3901         * Exception.cs (StackTrace): Return the wrapper info as well.
3903 2005-03-02  Kazuki Oikawa  <kazuki@panicode.com>
3905         * NumberFormatter.cs: Some internal classes was converted to structs,
3906         and improved some points.
3908 2005-02-26  Kazuki Oikawa  <kazuki@panicode.com>
3910         * NumberFormatter.cs: Improved performance and memory usage
3911         when integer standard format.
3912         * SByte.cs:
3913         * Int16.cs:
3914         * Int32.cs:
3915         * Int64.cs:
3916         * Byte.cs:
3917         * UInt16.cs:
3918         * UInt32.cs:
3919         * UInt64.cs:
3920         * Single.cs:
3921         * Double.cs:
3922         * TimeSpan.cs: Improved these directly call to NumberFormatter.
3924 2005-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3926         * TermInfoDriver.cs: set the xmit mode if available. Handle key input
3927         and translate them into a ConsoleKeyInfo.
3928         * TermInfoReader.cs: added a method to return the bytes of a string
3929         property.
3930         * ConsoleKeyInfo.cs: added copy constructor and setters.
3932 2005-02-24  Zoltan Varga  <vargaz@freemail.hu>
3934         * Array.cs: Add missing 2.0 attributes and correct some parameter names.
3936 2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>
3938         * AppDomain.cs: Changed GetAssemblies, LoadAssembly, and Load signatures,
3939         and added some to support the reflection only methods. DoAssemblyResolve
3940         was modified to invoke the new PreBindAssemblyResolve event when the
3941         assembly is reflection only.
3942         
3943 2005-02-21  Zoltan Varga  <vargaz@freemail.hu>
3945         * GC.cs Double.cs IntPtr.cs Array.cs Decimal.cs Math.cs Single.cs:
3946         Add net 2.0 ReliabilityContractAttributes.
3948 2005-02-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3950         * TermInfoDriver.cs: cygwin terminals are handled by the windows
3951         console driver.
3953         * TermInfoReader.cs:
3954         * TermInfoNumbers.cs:
3955         * KnownTerminals.cs:
3956         * TermInfoBooleans.cs:
3957         * TermInfoStrings.cs: documented.
3959 2005-02-19  Kazuki Oikawa <kazuki@panicode.com>
3961         * Array.cs: Reverse the order in the Equals calls.
3963 2005-02-18  Zoltan Varga  <vargaz@freemail.hu>
3965         * Exception.cs (StackTrace): Implement this in managed code since it is
3966         needed by CAS. Fixes #72146.
3968 2005-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3970         * WindowsConsoleDriver.cs: implemented MoveBufferArea.
3972 2005-02-14  Raja R Harinath  <rharinath@novell.com>
3974         * Array.cs (Array.Swapper) [!BOOTSTRAP_WITH_OLDLIB]: Make nested.
3975         See #72015.
3977 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
3979         * Version.cs (CompareTo, Equals): Make sure the versions for
3980         generics handle `null'. The non-generics versions now just call
3981         the regular versions, to reduce code duplication.
3983         * Boolean.cs (CompareTo): make this really work for generics 
3985         * Type.cs (GetProperty): Passing new Type [0] is different than
3986         null. null means `I don't care how many types this has,' while new
3987         Type [0] means `this must have 0 types.'
3989 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3991         * corlib.dll.sources: added WindowsConsoleDriver.cs
3993         * System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and
3994         implemented the few missing properties/methods.
3996         * System/IConsoleDriver.cs: uncommented all methods/properties.
3997         * System/TermInfoDriver.cs: implement changes from IConsoleDriver.
3998         * System/WindowsConsoleDriver.cs: implemented IConsoleDriver for
3999         windows. Only missing MoveBufferArea by now.
4001 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
4003         * Type.cs (IsAssignableFrom): Add support for TypeBuilders.
4005         * Int32.cs AppDomain.cs: Fix warnings.
4007 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
4009         * IServiceProvider.cs: Is not ComVisible.
4011         * NonSerializedAttribute.cs: Fix AttributeUsage flags.
4013         * Type.cs: Fix ClassInterface attribute.
4015 Tue Feb 8 19:26:47 CET 2005 Paolo Molaro <lupus@ximian.com>
4017         * Delegate.cs: remove the finalizer from Delegate: this
4018         is handled internally by the runtime now.
4020 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4022         * Activator.cs: provide the Type name when throwing an exception.
4024 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4026         * TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes
4027         bug #72238.
4029 Fri Feb 4 15:46:04 CET 2005 Paolo Molaro <lupus@ximian.com>
4031         * Array.cs: provide specialized versions of some methods.
4033 Thu Feb 3 15:15:25 CET 2005 Paolo Molaro <lupus@ximian.com>
4035         * String.cs: provide a managed memcpy and memset method
4036         for use both in corlib and from the JIT. Implement
4037         some methods with the managed helpers and remove some icalls.
4039 2005-01-31  Sebastien Pouliot  <sebastien@ximian.com>
4041         * Exception.cs: Added Data property for NET_2_0 (required for new
4042         unit tests).
4044 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4046         * ConsoleDriver.cs:
4047         * TermInfoDriver.cs:
4048         * IConsoleDriver.cs:
4049         * Console.cs: added BufferWidth and BufferHeight.
4051 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4053         * ConsoleDriver.cs:
4054         * Console.cs:
4055         * TermInfoDriver.cs:
4056         * IConsoleDriver.cs: added a few more properties and fixed cursor
4057         addressing.
4059 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4061         * ConsoleDriver.cs: static class that forwards the Console 2.0 class
4062         calls to the proper driver.
4063         * TermInfoDriver.cs: terminfo based console driver.
4064         * IConsoleDriver.cs: interface implemented by console drivers.
4066         * ConsoleCancelEventArgs.cs:
4067         * ConsoleCancelEventHandler.cs:
4069         * ConsoleModifiers.cs: 
4070         * ConsoleSpecialKey.cs:
4071         * ConsoleColor.cs:
4072         * ConsoleKey.cs: new enumerations.
4074         * ConsoleKeyInfo.cs: New file.
4076         * TermInfoReader.cs: reader for terminfo capabilities files.
4078         * TermInfoNumbers.cs:
4079         * TermInfoBooleans.cs:
4080         * TermInfoStrings.cs: enumations for terminfo property names.
4082         * KnownTerminals.cs: byte arrays for selected terminals.
4084         * Console.cs: added more 2.0 methods and implemented some of them.
4087 2005-01-30  Atsushi Enomoto  <atsushi@ximian.com>
4089         * Int32.cs : (FindSign) IndexOf() is better than creating substring.
4091 2005-01-27  Sebastien Pouliot  <sebastien@ximian.com>
4093         * BadImageFormatException.cs: Protect the fusion (GAC) log from being
4094         disclosed unless code has ControlPolicy and ControlEvidence.
4096 2005-01-27  Zoltan Varga  <vargaz@freemail.hu>
4098         * Exception.cs: Compute stack trace on demand.
4100 2005-01-26  Sebastien Pouliot  <sebastien@ximian.com>
4102         * Environment.cs: Removed hack for static class (NET_2_0). Added 
4103         proper security for FailFast (documented in FDBK20543). Added new
4104         method IsRunningOnWindows to replace (Platform == 128) as the logic is
4105         gonna change in the future (Unix is id #4 in NET_2_0).
4107 2005-01-24  Sebastien Pouliot  <sebastien@ximian.com>
4109         * Environment.cs: Added CAS security (both declarative and imperative)
4110         as a test. This shouldn't affect execution unless --security is 
4111         specified.
4113 2005-01-19  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
4114         * Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase
4115         and Type.FilterName delegates They weren't dealing with the optional '*'
4116         at the end of the filter mask
4118 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
4120         * Array.cs: Fix a typo in the previous patch.
4121         
4122         * Array.cs: Fix some test failures in the generic methods.
4124         * Array.cs: Implement AsReadOnly.
4126 2005-01-13  Geoff Norton  <gnorton@customerdna.com>
4128         * Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE).  Fixes
4129         #71242
4131 2005-01-11  Sebastien Pouliot  <sebastien@ximian.com>
4133         * AppDomain.cs: Removed Activate and ActivateNewProcess methods. They
4134         have been removed from 2.0.
4136 2005-01-11  Zoltan Varga  <vargaz@freemail.hu>
4138         * Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable<T> in
4139         NET 2.0.
4141 2005-01-10  Sebastien Pouliot  <sebastien@ximian.com>
4143         * ApplicationIdentity.cs: Throw ArgumentNullException if name is null.
4144         Add default culture (neutral) to the name when none is specified.
4145         * AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we 
4146         can't trust Id ?
4148 2005-01-09  Sebastien Pouliot  <sebastien@ximian.com>
4150         * DateTime.cs: Reverted last patch for utc as it broke all certificate
4151         handling and another unit test in DateTime.
4153 2005-01-09  Miguel de Icaza  <miguel@ximian.com>
4155         * DateTime.cs: Return immediately if useutc is set to true, there
4156         is no need to do the extra computation (which also happened to
4157         create a new DateTime using the `use_localtime' constructor, which
4158         lead to the erroneous date returns when using 'u' or `U'
4159         formats).   
4161         Fixes another bug in the regression test suite.
4163 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com> 
4165         * AppDomain.cs: Fix the DefaultDomain property to return the root 
4166         domain (as it seems that the root's Id isn't always 0).
4167         * BitConverter.cs: The "special support" for ToString(new byte[0]) is
4168         only for NET_2_0 - previously this was an ArgumentOutOfRangeException.
4170 2005-01-08  Miguel de Icaza  <miguel@ximian.com>
4172         * IntegerFormatter.cs: The - sign inside the "negative" section in
4173         a multi-format string means `show the sign' only if it is the
4174         first token, not `copy verbatim'.  In the other sections it means
4175         `copy-verbatim'.
4177         This makes things like:  (-34).ToString ("#;-#") show up as "-34"
4178         instead of "--34".
4180         The bad news is that this code needs to be rewritten to handle all
4181         the formatting cases, see bug #71112 for details.
4183         * Convert.cs (Convert.ToType): Throw an InvalidCastException if
4184         the conversion is invalid, not ArgumentException, this fixes
4185         another regression in our test suite.
4187 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com>
4189         * AppDomain.cs: Add ApplicationIdentity property for 2.0;
4190         * AppDomainManager.cs: Remove HostRefusedSet support (it does not 
4191         exists anymore).
4193 2005-01-08  Zoltan Varga  <vargaz@freemail.hu>
4195         * DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static 
4196         initialization problems.
4198 2005-01-02  Ben Maurer  <bmaurer@ximian.com>
4200         * Int32.cs: NumberStyles.AllowExponent was supported by the
4201         Int32.Parse function. From Akira <mei@work.email.ne.jp>. Fixes bug
4202         70469.
4204 2005-01-01  Atsushi Enomoto  <atsushi@ximian.com>
4206         * Base64FormattingOptions.cs : it was not in System namespace.
4208 2004-12-21  Atsushi Enomoto  <atsushi@ximian.com>
4210         * DateTime.cs : If no progress on value string, don't regard as
4211           matched. This fixes bug #70707.
4213 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
4215         * Environment.cs: Bump corlib version.
4217 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
4219         * Array.cs (DoBinarySearch): Fix a warning.
4221 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
4223         * Environment.cs: Bump corlib version.
4225         * AppDomain.cs: Add new DefineInternalDynamicAssembly () method.
4227 2004-12-06  Ben Maurer  <bmaurer@ximian.com>
4229         * Exception.cs: Prevent stringifying the type name on the
4230         ctor. this gets called a few times on every execution to create a
4231         nullref exception.
4233 2004-12-06  Martin Baulig  <martin@ximian.com>
4235         * Decimal.cs: Decimal constant support has been merged into GMCS,
4236         removed the FIXME.
4238 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
4240         * Environment.cs: Bump corlib version.
4241         
4242         * Environment.cs: Bump corlib version.
4244 2004-11-30  Zoltan Varga  <vargaz@freemail.hu>
4246         * MonoType.cs (UnderlyingSystemType): Make this return this as in
4247         MS.NET. Fixes #56245.
4249 2004-11-29  Atsushi Enomoto  <atsushi@ximian.com>
4251         * GC.cs : Collect(generation) actually does not throw an exception
4252           even if generation > MaxGeneration (MS document bug).
4254 2004-11-28  Zoltan Varga  <vargaz@freemail.hu>
4256         * Exception.cs: Implement _Exception under NET_2_0.
4258         * Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0.
4260         * AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs
4261         NotCancelableException.cs TimeoutException.cs: New files.
4263 2004-11-23  Raja R Harinath  <rharinath@novell.com>
4265         * Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal
4266         constant support.
4268 2004-11-23  Raja R Harinath  <rharinath@novell.com>
4270         * Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers
4271         without decimal constant support.
4273 2004-11-23  Marek Safar  <marek.safar@seznam.cz>
4275         * Decimal.cs: Updated to use compiler decimal constant support.
4277 2004-11-20  Zoltan Varga  <vargaz@freemail.hu>
4279         * MonoType.cs: Revert last change since it breaks remoting.
4281 2004-11-18  Zoltan Varga  <vargaz@freemail.hu>
4283         * MonoType.cs (UnderlyingSystemType): Make this return this as in
4284         MS.NET. Fixes #56245.
4286 2004-11-17  Carlos Alberto Cortez <carlos@unixmexico.org>
4288         * INullable.cs: New interface added.
4289         * Nullable.cs: Methods added. Also a static Nullable class
4290         containing static methods.
4291         
4292 2004-11-15  Sebastien Pouliot  <sebastien@ximian.com>
4294         * BitConverter.cs: Added support for special case when ToString is 
4295         called with (new byte [0]).
4297 2004-11-10  Lluis Sanchez  <lluis@novell.com>
4299         * Exception.cs: Added setter for StackTrace.
4301 2004-11-07  Ben Maurer  <bmaurer@ximian.com>
4303         * IntegerFormatter.cs: Avoid .ToCharArray
4305 2004-11-06  Ben Maurer  <bmaurer@ximian.com>
4307         * Single.cs, Double.cs (GetHashCode): Better hashcode impl
4309 2004-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4311         * InvalidOperationException.cs: make the message more meaningful and
4312         real. Fixes bug #69055.
4314 2004-10-28  Ben Maurer  <bmaurer@ximian.com>
4316         * String.cs: Rather than == String.Empty, use .Length == 0. It
4317         is a bit faster (avoids a method call, and the code is less complex).
4319 2004-10-24  Fawad Halim  <fawad@fawad.net>
4320         * Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches.
4321         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.
4322         This fixes bug #64995.
4324 2004-10-19  Lluis Sanchez  <lluis@novell.com>
4326         * MarshalByRefObject.cs: Field _identity is not serializable.
4327         This fixes bug #68567.
4329 2004-10-17  Ben Maurer  <bmaurer@ximian.com>
4331         * DateTime.cs (ZeroPad): Use unsafe code to speed this up. We
4332         avoid entering slow integer formatting code.
4334         (_ToString): Use ZeroPad here when possible, as it is faster.
4336 2004-10-11  Martin Baulig  <martin@ximian.com>
4338         * Environment.cs: Bump corlib version to 28.
4340 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
4342         * Convert.cs (ToType): Throw an exception when converting null to a
4343         valuetype. Fixes #67780.
4345 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
4347         * DateTime.cs : Performance fix. ParseExact() implementation should
4348           avoid s = s.Substring(1).
4350 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
4352         * DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix
4353           of m/s/t/z. This fixes bug 66723.
4355 Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro <lupus@ximian.com>
4357         * String.cs: make GetHashCode() managed.
4359 2004-10-04  Zoltan Varga  <vargaz@freemail.hu>
4361         * AppDomain.cs: Make ThreadStatic variables static. Fixes #56614.
4363         * Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode.
4365         * ModuleHandle.cs: Add missing methods.
4367         * RuntimeTypeHandle.cs: Add GetModuleHandle () method.
4369 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
4371         * AttributeTargets.cs: Add 2.0 GenericParameter value.
4373         * Environment.cs: Bump corlib version.
4375 2004-10-02  Zoltan Varga  <vargaz@freemail.hu>
4377         * Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods.
4379 2004-09-30  Geoff Norton  <gnorton@customerdna.com>
4381         * Convert.cs: ConvertToBase* was not endian aware.  Implemented EndianSwap
4382         and swapping of all values before going into the BitConverter so that values
4383         are returned with proper endianess.
4385 2004-09-23  Martin Garton  <martin@wrasse.demon.co.uk>
4387         * Convert.cs: ToType was returning unconverted object when it should
4388         fail with an ArgumentException.
4390 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
4392         * Array.cs: Add stub for AsReadOnly<T>.
4393         
4394 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
4396         * Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType.
4398         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
4399         parameters.
4401 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
4403         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
4404         methods and fields.
4405         
4406         * MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo
4407         custom attributes.
4409         * MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion.
4411         * MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is 
4412         sealed' optimization.
4414         * Type.cs: Implement 2.0 StructLayoutAttribute property. 
4416         * Type.cs Add GetPseudoCustomAttributes () method.
4418 2004-09-24  Martin Baulig  <martin@ximian.com>
4420         * Type.cs (Type.GetGenericParameterConstraints): New public method.
4422 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
4424         * MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to
4425         GetCustomAttributesInternal and add a 'pseudoAttrs' argument.
4427         * Type.cs: Tweak Module property in 2.0 build.
4429 2004-09-23  Martin Baulig  <martin@ximian.com>
4431         * Type.cs (Type.GenericParameterAttributes): New public property.
4433 2004-09-23  Martin Baulig  <martin@ximian.com>
4435         * GenericParameterAttributes.cs: New file.
4437 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
4439         * ModuleHandle.cs: Updated after changes to Module class.
4441 2004-09-21  Geoff Norton <gnorton@customerdna.com>
4443         * Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements
4444         this filter. Fixes bug #65778.
4446 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
4448         * Environment.cs: Bump corlib version.
4450 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
4452         * ModuleHandle.cs: New file.
4454         * RuntimeFieldHandle.cs: Add an internal ctor.
4456 2004-09-19  Dick Porter  <dick@ximian.com>
4458         * Console.cs: Use the internal wrappers for StreamReader and
4459         StreamWriter that catch IOException.
4461 2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>
4463         * Environment.cs: Bumped mono_corlib_version to 25.
4465 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4467         * AppDomain.cs: added SetupInformationNoCopy property, since
4468         SetupInformation creates a copy now, all updates to it should use the
4469         actual data. Fixes bug #61991 take 2.
4471 2004-09-09  Tim Coleman <tim@timcoleman.com>
4472         * Base64FormattingOptions.cs: New enum
4473         * Convert.cs: Add new ToBase64String methods for Fx 2.0
4475 2004-09-08  Marek Safar  <marek.safar@seznam.cz>
4477         * Console.cs,
4478         * GC.cs: Class is static for NET_2_0.
4480 2004-09-07 Ben Maurer  <bmaurer@users.sourceforge.net>
4482         * Activator.cs: Make sure not to call .GetType on a
4483         null argument. fixes 63852
4485 2004-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>
4487         * Array.cs (Clear): make this an icall.
4489 2004-09-05 Ben Maurer  <bmaurer@users.sourceforge.net>
4491         * MonoCustomAttribute.cs: Avoid the call to GetBase when possible.
4493 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
4495         * Environment.cs: (ExpandEnvironmentVariables) don't nullify the case
4496         insensitive enironment variables hashtable once we create it.
4498 2004-09-04  Sebastien Pouliot  <sebastien@ximian.com>
4500         * AppDomain.cs: Changed 2 imperative security demands to declarative
4501         (unsupported) so it doesn't (for now) call the security runtime.
4503 2004-09-02  Zoltan Varga  <vargaz@freemail.hu>
4505         * Delegate.cs: Free the delegate trampoline in the finalizer.
4507 2004-08-26  Sebastien Pouliot  <sebastien@ximian.com>
4509         * ApplicationId.cs: Completed GetHashCode using information from MS
4510         (FDBK13339).
4512 2004-08-23  Sebastien Pouliot  <sebastien@ximian.com>
4514         * Boolean.cs: Added TryParse static method for NET_2_0 profile.
4516 2004-08-19  Atsushi Enomoto  <atsushi@ximian.com>
4518         * DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly)
4519           allows 12, that should not be accepted (13 is rejected) and
4520           interpreted as 0. This fixes bug 63376.
4522 2004-08-17  Sebastien Pouliot  <sebastien@ximian.com>
4524         * Version.cs: Fixed Clone so we can use it on versions with only
4525         major/minor or major/minor/build.
4527 2004-08-17  Martin Baulig  <martin@ximian.com>
4529         * MonoType.cs (MonoType.getFullName): Added `bool full_name'
4530         argument specifying whether or not to include the type arguments.
4531         (MonoType.FullName): Don't include the type arguments.
4532         (MonoType.ToString): Include them here.
4534         * Environment.cs: Bumped mono_corlib_version to 24.
4536 2004-08-16  Duncan Mak  <duncan@ximian.com>
4538         * AttributeUsageAttribute.cs: Change the AttributeUsage to
4539         AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's
4540         bug #62895.
4542 2004-08-11  Marek Safar  <marek.safar@seznam.cz>
4544         * AppDomain.cs: Fixed typo of DefineDynamicAssembly argument.
4545         Added call to AddPermissionRequests to pass permissions
4546         arguments.
4547         * Environment.cs: Added a few Fx 2.0 methods
4549 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
4551         * ApplicationId.cs: Fixed typo to fix NET_2_0 compilation.
4552         * AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not
4553         references). Added (non-obsolete) Fx 2.0 properties and methods.
4554         * AppDomainSetup.cs: Added internal copy constructor.
4555         * DomainManagerInitializationFlags.cs: Fixed values.
4557 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
4559         * AppDomainInitializer.cs: New Fx 2.0 class for AppDomain.
4560         * AppDomainManager.cs: New Fx 2.0 class for AppDomain.
4561         * ApplicationActivator.cs: New Fx 2.0 class for AppDomain.
4562         * ApplicationId.cs: New Fx 2.0 class.
4563         * ApplicationIdentity.cs: Fixed ToString.
4564         * DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain.
4566 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
4568         * AppDomain.cs: Added a new icall, getDomainByID, to get the an 
4569         AppDomain using it's Id. Completed SetAppDomainPolicy.
4570         * Environment.cs: Bumped mono_corlib_version to 23.
4572 2004-08-02  Martin Baulig  <martin@ximian.com>
4574         * DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable<T>.
4576 2004-07-29  Atsushi Enomoto  <atsushi@ximian.com>
4578         * Environment.cs : GacPath on windows is based on mscorlib.dll, and
4579           now its location is changed.
4581 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
4583         * Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the
4584           NET_2_0 profile.
4585         
4586 2004-07-18  Martin Baulig  <martin@ximian.com>
4588         * Array.cs: Ben Maurer implemented all the new generic methods
4589         here :-)
4591 2004-07-17  Martin Baulig  <martin@ximian.com>
4593         * Decimal.cs: Implement IComparable<Decimal>.
4595 2004-07-17  Martin Baulig  <martin@ximian.com>
4597         * Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs,
4598         UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable<T>.      
4600 2004-07-13  Sebastien Pouliot  <sebastien@ximian.com>
4602         * ActivationContext.cs: New class in Fx 2.0. Required for 
4603         System.Security.Policy.
4604         * ApplicationIdentity.cs: New class in Fx 2.0. Required for 
4605         System.Security.Policy.
4606         * IApplicationDescription.cs: New interface in Fx 2.0. Required for 
4607         System.Security.Policy.
4608         * IHostContext.cs: New interface in Fx 2.0. Required for 
4609         System.Security.Policy.
4611 2004-07-12  Geoff Norton <gnorton@customerdna.com>
4613         * DateTime.cs: Patch for bug #61112.  Our DateTime wasn't roundtripping over timezone
4614           boundaries properly.  This patch checkes ToLocalTime() to see if we're tripping over a boundary
4615           and will add/subtract the hour if needed
4617 2004-07-07  Geoff Norton <gnorton@customerdna.com>
4619         * Monotype.cs: Patch for bug #58844.  Dont throw exceptions right away;
4620           pass through all the possibly BindingInfo's and keep a bool value as to the type
4621           of exception we might need to throw;
4623 2004-07-07  Geoff Norton <gnorton@customerdna.com>
4625         * Patch to fix bug #58973
4627 2004-07-02  Jackson Harper  <jackson@ximian.com>
4629         * PlatformID.cs: New 2.0 values.
4630         
4631 2004-06-25  Ben Maurer <bmaurer@ximian.com>
4632         
4633         * Environment.cs: GetFolderPath has new behavior. r=miguel
4635 2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>
4637         * DateTime.cs: Throw ArgumentOutOfRangeException if the year is
4638         bigger than 9999. Fix bug #41845.
4639         * FloatingPointFormatter.cs: Applied correction from Jon Skeet on
4640         the "R"eversible format for negative numbers.
4642 2004-06-21  Jackson Harper  <jackson@ximian.com>
4644         * Decimal.cs: Make sure to use invariant culture when parsing
4645         floats stringified with the invariant culture. Patch by Rodrigo
4646         B. de Oliveira.
4647         
4648 2004-06-19  Atsushi Enomoto  <atsushi@ximian.com>
4650         * FloatingPointFormatter.cs : Literal string should be kept in the
4651           output.
4653 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
4655         * DateTime.cs : Concatenating whitespace removal was not working fine.
4656           Modified FormatException message (1 cent kindness).
4658 2004-06-18  Ben Maurer  <bmaurer@ximian.com>
4659         
4660         * Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs:
4661         new generics classes
4662         * IComparable.cs: add the new <T> version.
4663         * EventHandler.cs: new <T> version.
4664         
4665 2004-06-18  Dick Porter  <dick@ximian.com>
4667         * String.cs: The icall can cope with embedded \0 now.
4669 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
4671         * DateTime.cs :
4672           - Added new common pattern "yyyy/M/dZ"
4673           - empty string should not be compared in _ParseEnum()
4674           - Use culture independent string comparison in _ParseString()
4675           - Whitespace removal should be checked after '..' token check (some
4676             pattern such like es-ES LongDatePattern contains spaces in '..').
4677           - formats null check should be done (to throw ArgumentNullException)
4678             in ParseExact().
4679           - When specified one character format, dates are incorrectly regarded
4680             as to use invariant culture.
4682 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
4684         * ArgIterator.cs: changed layout to Auto
4685         * DateTime.cs: changed layout to Auto
4687 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
4689         * DateTime.cs: CRLF to LF
4691 2004-06-17  Sebastien Pouliot  <sebastien@ximian.com>
4693         * Decimal.cs: Fixed regression in System.Data caused by the recent 
4694         changes. Adapted (and moved) the code to correct the scale from 
4695         SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where
4696         scale has no importance).
4698 2004-06-17  Lluis Sanchez Gual  <lluis@ximian.com>
4700         * Activator.cs: In CreateInstance(), use Public|Instance if access binding
4701           attributes are omitted.
4703 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4705         * DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also
4706           check if the format character is valid.
4708 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4710         * DateTime.cs : AddDays(double) rounds the input.
4712 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4714         * DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime().
4715           Fixed ToLocalTime() as well, but it does check range for MinValue.
4717 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
4719         * DateTime.cs : Added overflow check in ToUniversalTime() and
4720           ToLocalTime(). Fixed bug #60253.
4722 2004-06-16  Sebastien Pouliot  <sebastien@ximian.com>
4724         * FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet
4725         source code (with permission). Fix (biggest) part of bug #60110.
4726         http://www.yoda.arachsys.com/csharp/floatingpoint.html
4728 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
4730         * Decimal.cs: Fixed scale after Round (a different scale is correct 
4731         from a math point of view but affect the string representation of the
4732         value). Note: other operations also have scale problems!
4733         * DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output.
4734         * FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's
4735         rounding (which is the rounding provided by Math.Round). This fix bug
4736         #60111. The code (new Round methods) should be moved elsewhere (as it
4737         may also be required elsewhere) post Mono 1.0.
4739 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
4741         * AppDomainSetup.cs: added TODO for serialization
4742         * ExecutionEngineException.cs: added missing serialization ctor
4743         * InvalidProgramException.cs: added missing serialization ctor
4744         * MulticastNotSupportedException.cs: added missing serialization ctor
4745         * ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET
4746         * Random.cs: fixed serialization compatibility with MS.NET
4748 2004-06-15  Paolo Molaro <lupus@ximian.com>
4750         * Type.cs: removed unused (and non-existing) icall type_is_instance.
4752 2004-06-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4754         * Environment.cs: use internalGetHome instead of getting "HOME" as
4755         that variable may not be defined.
4757 2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>
4759         * TimeSpan.cs: Fixed timespan with large values for hours or minutes
4760         (overflow is only checked for days but can also occurs in hours and
4761         minutes which uses Int32 when multiplying). The new results match MS
4762         implementation.
4764 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
4766         * FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace
4767           them with matching NumberFormatInfo properties.
4769 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
4771         * Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'.
4772         * FloatingPointFormatter.cs :
4773           Use NumberFormatInfo.NegativeSign. This change saves many XSLT test
4774           failures.
4775           Format Permille pattern (It is undocumented but actually available,
4776           and used in xsl:format-number).
4778 2004-06-14  Raja R Harinath  <rharinath@novell.com>
4780         * Console.cs (Console.Write, Console.WriteLine): Disable __arglist
4781         version with BOOTSTRAP_WITH_OLDLIB.
4782         * String.cs (STring.Concat): Likewise.
4784 2004-06-13  Atsushi Enomoto  <atsushi@ximian.com>
4786         * FloatingPointFormatter.cs :
4787           - Don't format more than 15 fraction digits. Don't report to Pedro
4788             directly (removing the error message with his concent).
4789           - When format string starts with '.', it means integral part format 
4790             is not specified. Ignore '.' characters after the first
4791             appearance. Fixed bug #59890.
4792           - 0.0 is formatted only before the third ';' appearance.
4794 2004-06-11  Sebastien Pouliot  <sebastien@ximian.com>
4796         * DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono"
4797         rounding logic which worked for FromOADate (while the newer didn't).
4798         * TimeSpan.cs: Now throw an OverflowException when the timespan is
4799         over MaxValue or under MinValue.
4801 2004-06-11  Martin Baulig  <martin@ximian.com>
4803         * Console.cs (Write, WriteLine): Implemented the varargs versions.
4805 2004-06-11  Martin Baulig  <martin@ximian.com>
4807         * String.cs (Concat): Implemented the varargs version.
4809 2004-06-10  Sebastien Pouliot  <sebastien@ximian.com>
4811         * Decimal.cs: Hacked the Parse method to allow the runtime C code to
4812         decode it properly (i.e. matching MS results). Fixed the Round method
4813         for negative decimal numbers (moved code from Math.cs).
4814         * Math.cs: Now use Decimal class for Round(Decimal,int). Required to
4815         fix a bug when rounding a negative decimal.
4817 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4819         * AppDomain.cs: set the _principal to null when changing the policy.
4820         * Console.cs: remove ClsCompliant attribute from a method marked as
4821         internal and added comment.
4823 2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>
4825         * Delegate.cs: marked protected fields private to match public
4826         API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl
4827         protected to fix public API
4828         * Enum.cs: marked ctor protected to match public API of MS.NET
4829         * MulticastDelegate.cs: marked DynamicInvokeImpl protected to
4830         match public API of MS.NET
4832 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
4834         * DateTime.cs : Added more common patterns.
4836 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
4838         * Decimal.cs: Fixed banker rounding by calling Math.Round. This won't
4839         be a performance winner (the actual Math code has a note to wait a
4840         better Decimal implementation) but it returns the correct results
4841         (without adding new code in corlib or the runtime). Fix #37744.
4843 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
4845         * DateTime.cs :
4846           - A bunch of fixes (patch by Steven Brown). Fraction seconds are 
4847             now represented as double. Strict token check for 'Z'.
4848           - Pattern validity check in GetDateTimeFormats(char).
4849           - Fixed pattern "yyyy/M/d HH:mm:ss".
4851 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
4853         * Decimal.cs: Fixed remainder (and optimized some cases not to call 
4854         unmanaged code). Simplified divide. Removed workaround for bug #59793.
4855         Fixed GetHashCode to return different result for X and -X.
4857 2004-06-08  Atsushi Enomoto  <atsushi@ximian.com>
4859         * DateTime.cs :
4860           - Now re-checked all common format patterns. They should be tried
4861             with both current culture and invariant culture. Since '/' covers
4862             '-', removed extraneous patterns. Added more common patterns
4863             such as "yyyy-MM-dd" and X509Certificate pattern (it is valid
4864             only after NET_1_1). Commented out 1 character format patterns.
4865           - The format patterns we should try should not be obtained by
4866             GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one
4867             character patterns), to handle UTC correctly. Examined patterns
4868             are changed, to 1) common patterns with specified (or current)
4869             culture, 2) common patterns with invariant, 3) The above "one
4870             character patterns" with specified (or current) culture.
4871           - When trying to parse some kind of patterns such as RFC1123, 
4872             always use invariant DateTimeFormatInfo so that they can avoid
4873             parsing with culture-dependent calendar.
4874           - Check "GMT" only when doing Parse(). Don't it when ParseExact().
4875           - Removed extraneous '-' case. It is not special one.
4876           - When ParseExact(), allow only '/' for '/' pattern character.
4877           - When Parse(), allow any non-letter & non-number characters.
4878           - When pattern is not fully parsed, reject that format.
4879           - Added "exact" parameter to some ParseExact().
4880           - RFC1123 pattern is (again) now parsed in local time. I regressed
4881             some problems in previous fix.
4883 2004-06-08  Sebastien Pouliot  <sebastien@ximian.com>
4885         * Decimal.cs: Fixed cast to integer types to truncate (not round) the
4886         value.
4888 2004-06-07  Duncan Mak  <duncan@ximian.com>
4890         * Exception.cs (Source): This can return null.
4892 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
4894         * DateTime.cs: Fixed FromFileTime for negative values. Fixed 
4895         constructor to limit range of milliseconds from 0,999. Fixed
4896         ToType method to work for object, string and DateTime.
4898 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
4900         * DateTime.cs: Fixed OLE Automation date conversions: timezone 
4901         insensitive, wrong exception in FromOADate, handling of Min/Max 
4902         values, negative doubles where integer part is negative but 
4903         decimals are positive! Charming format ;-)
4905 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
4907         * String.cs: Fixed Join in case separator parameter is null.
4908         * TimeSpan.cs: Cache format errors during parsing and throw 
4909         FormatException only if there was no overflow.
4911 2004-06-06  Gert Driesen <drieseng@users.sourceforge.net>
4913         * MonoCustomAttrs.cs: fixed issue where an empty array was 
4914         returned when GetCustomAttributes was invoked with null
4915         attribute type and there was only one result
4917 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
4919         * Decimal.cs: Fixed ToString(String.Empty) to default ("G").
4920         * Int16.cs: Fixed ToString(String.Empty) to default ("G").
4921         * Int32.cs: Fixed ToString(String.Empty) to default ("G").
4922         * Int64.cs: Fixed ToString(String.Empty) to default ("G").
4923         * SByte.cs: Fixed ToString(String.Empty) to default ("G").
4924         * UInt16.cs: Fixed ToString(String.Empty) to default ("G").
4925         * UInt32.cs: Fixed ToString(String.Empty) to default ("G").
4926         * UInt64.cs: Fixed ToString(String.Empty) to default ("G").
4928 2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>
4930         * Convert.cs: Fixed the convertion of negative integers (byte, short, 
4931         int and long) into string in a specific base (2, 8, 10 or 16).
4933 2004-06-04  Sebastien Pouliot  <sebastien@ximian.com>
4935         * Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when
4936         the dividend is negative and the result is 0 (remainder).
4938 2004-06-03  Sebastien Pouliot  <sebastien@ximian.com>
4940         * Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]).
4942 2004-06-02  Sebastien Pouliot  <sebastien@ximian.com>
4944         * TimeSpan.cs: Fixed overflow issues when delaing with big (days) time
4945         spans. Fixed parsing when only days are presents in the string (which
4946         should be illegal according to the documentation but is supported).
4948 2004-06-01  Sebastien Pouliot  <sebastien@ximian.com>
4950         * TimeSpan.cs: Fixed exceptions in FromXXX methods as they are 
4951         somewhat different from the documentation.
4953 2004-06-01  Gert Driesen <drieseng@users.sourceforge.net>
4955         * Type.cs: added missing attributes on InvokeMember
4957 2004-06-01  Miguel de Icaza  <miguel@ximian.com>
4959         * String.cs: Flag concat with four arguments internal. 
4961 2004-05-31  Sebastien Pouliot  <sebastien@ximian.com>
4963         * Array.cs: Fixed legal case where value is null.
4964         * Byte.cs: Fixed ToString when format is an empty string (use "G").
4965         * Guid.cs: Renamed private fields (and changed some to signed) to 
4966         match MS implementation and allow serialization to work. Fix 
4967         bug #59113.
4969 2004-05-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4971         * DateTime.cs: adjust milliseconds for fraction specifier ('f').
4973 2004-05-30  Miguel de Icaza  <miguel@ximian.com>
4975         * Console.cs: Remove *again* the version of WriteLine with four
4976         arguments;  That should *not* be added.  
4978         Flag it as internal as people migrate their code.
4980 2004-05-29  Sebastien Pouliot  <sebastien@ximian.com>
4982         * Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw 
4983         ArgumentNullException (only case, all other returns 0). Fixed exception
4984         reporting for hex prefix only strings. Fixed ChangeTo where null could
4985         be misinterpreted between null and Empty.
4987 2004-05-28  Sebastien Pouliot  <sebastien@ximian.com>
4989         * Convert.cs: Fixed integer parsing for special cases (0x, 0X for base
4990         16), non-base 10 negative numbers ... see new unit tests. Fixed the 
4991         case when we parse Int64.MinValue (positive doesn't fit a signed long).
4993 2004-05-28  Jackson Harper  <jackson@ximian.com>
4995         * Environment.cs: Increment version number.
4996         
4997 2004-05-28  Zoltan Varga  <vargaz@freemail.hu>
4999         * AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists.
5000         Fixes #59189.
5002 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
5004         * DateTime.cs : I reverted my fix by accident :(
5006 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
5008         * DateTime.cs :
5009           - In ToString(), Don't use culture-dependent daynames to format
5010             Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'.
5011           - Fixed GetDateTimeFormats () that generated incorrect 'U' value 
5012             (since the format string is the same as 'F').
5014 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
5016         * DateTime.cs : don't adjust utc value in ToString(). It must output
5017           the same time value, just adding 'Z' for UTC.
5019 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
5021         * DateTime.cs : in 'Z' case, remove the 'Z' char from input before
5022           proceeding.
5024 2004-05-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5026         * AppDomainSetup.cs: InitAppDomainSetup is not needed now.
5028 2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>
5030         * Byte.cs: Fixed parsing for "-0" which is valid for unsigned types.
5031         * Convert.cs: Convert with a base parameter cannot parse negative 
5032         string numbers, even "-0".
5033         * UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types.
5034         * UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types.
5035         * UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types.
5037 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
5039         * DateTime.cs : 
5040           - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'"
5041             to common formats (yes, I know it is nothing more than hack)
5042           - Fixed some GetDateTimeFormats() that just returned patterns.
5043           - For InvariantCulture, now try both supported formats and our
5044             predefined formats.
5045           - It was accepting incorrectly extraneous characters. That caused
5046             some UTC/non-UTC bug.
5047           - RFC1123 string should return universal time. Uncomment again (the
5048             problem should went away because of the extra characters fix above.
5050             With some of the changes above, fixed bug #47720.
5052 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
5054         * DateTime.cs : quick revert 'Z' support for certificate verifications.
5056 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
5058         * Array.cs: Removed duplicate condition if LastIndexOf.
5060 2004-05-26  Atsushi Enomoto <atsushi@ximian.com>
5062         * DateTime.cs :
5063           - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns".
5064             (Fixed bug #58938.)
5065           - As a quick remedy to accept more patterns, Parse() now also tries
5066             InvariantInfo patterns (this is because we have no more than one
5067             pattern for each pattern component.)
5068           - In _DoParse(), 'Z' should not be read as timezone specifier. Some
5069             culture uses 'Z' as AM/PM designer, and it should be recognized as
5070             part of the UTCpattern (if it actually UTC pattern for the culture
5071             contains 'Z').
5073 2004-05-26  Gert Driesen (drieseng@users.sourceforge.net)
5075         * MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS
5076         seems to allow multiple attributes with AllowMultiple at
5077         runtime.
5079 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
5081         * Byte.cs: Throw an OverflowException for negative numbers.
5082         * Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings.
5083         * Environment.cs: Bumped mono_corlib_version to 20 (rng interface).
5085 2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
5087         * Array.cs: Fixed possible integer overflow.
5088         * BitConverter.cs: Fixed a possible integer overflow in ToString.
5089         * Guid.cs: Added an internal method to create a random Guid without
5090         using CryptoConfig (which is heavy on first use). This is only used
5091         in S.R.E.ModuleBuilder to speedup MCS compilation.
5092         * String.cs: Fixed reported exception for PadLeft|Right. Fixed 
5093         possible integer overflow in methods that takes index and count
5094         as parameters.
5096 2004-05-25  Zoltan Varga  <vargaz@freemail.hu>
5098         * String.cs: Add new Strcpy icalls which take a char array as 
5099         parameter.
5101 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
5103         * DateTime.cs : added more invariant format patterns. This should
5104           really fix bug #57656.
5106 2004-05-25 14:14 CET Patrik Torstensson <totte@hiddenpeaks.com>
5108         * BitConverter.cs (ToBoolean): Return true or false instead
5109         of unsafe returing byte as bool. Fixes bug #58874.
5111 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
5113         * DateTime.cs : In ToString(string, IFormatProvider), use "G" if
5114           string format argument is null.
5116 2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>
5118         * Version.cs: Rename of data fields to match those in Microsoft.NET.
5119           Patch by PAF@design.ru.
5121 2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5123         * DateTime.cs: allow double quotes in the formats. Don't set
5124         next_not_digit to true in presence of single or double quotes. Patch by
5125         Martin Probst.
5127 2004-05-24  Zoltan Varga  <vargaz@freemail.hu>
5129         * AppDomainSetup.cs (InitAppDomainSetup): This one returns void.
5131 2004-05-23  Sebastien Pouliot  <sebastien@ximian.com>
5133         * Array.cs: Fixed exception when we try to Clear outside bounds.
5134         * Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874).
5135         * BitConverter.cs: Fixed negative index and integer overflow in
5136         To... methods.
5137         * Buffer.cs: Fixed integer overflow in BlockCopy.
5139 2004-05-22  Sebastien Pouliot  <sebastien@ximian.com>
5141         * Array.cs: Clear can now work on multidimentional arrays.
5142         * IntPtr.cs: We now only accept 32bits values in the long constructor
5143         unless we're on a 64 bits machine.
5144         * UIntPtr.cs: We now only accept 32bits unsigned values in the ulong 
5145         constructor unless we're on a 64 bits machine.
5147 2004-05-22  Duncan Mak  <duncan@ximian.com>
5149         * Convert.cs: The file was mostly in DOS endings already, for the
5150         sake of consistency, converted it all to DOS endings.
5151         (ToType): When value is null, immediately return null and don't
5152         ever throw a NullReferenceException. When conversionType is null,
5153         throw an InvalidCastException. Give a better error message when
5154         attempting to convert to a DBNull as well.
5156 2004-05-21  Sebastien Pouliot  <sebastien@ximian.com>
5158         * Decimal.cs: Fixed To... methods that needs to trunk the integer part
5159         of Decimal (and not use the banker's rounding like Convert.To...).
5160         * Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt
5161         to NaN compares (see new unit tests).
5163 2004-05-20  Sebastien Pouliot  <sebastien@ximian.com>
5165         * Convert.cs: Added checks for integer overflow for From|ToBase64Char.
5166         Also fixed the case where wide (16 bits) characters were converted to 
5167         bytes.
5169 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
5171         * ThreadStaticAttribute.cs
5172         * ContextStaticAttribute.cs
5173         * FlagsAttribute.cs
5174         * ObsoleteAttribute.cs : now that Inherited is false by
5175         default on AttributeUsageAttribute (as it should be) we
5176         need to explicitly set Inherited to false for those
5177         attributes should it be be false.
5179 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
5181         * AttributeUsageAttribute.cs: Inherited property should be
5182         true by defaultrs.cs: respect Inherited property, and
5184 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
5186         * MonoCustomAttrs.cs: respect Inherited property, and
5187         AllowMultiple property of a CustomAttribute. This fixes
5188         a major issue we had with respect to custom attributes.
5190 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
5192         * MonoType.cs: throw ArgumentNullException when type parameter in
5193         GetCustomAttributes(Type, bool) is null
5195 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
5197         * Buffer.cs: Added checks for null source and destination. Fix failing
5198         CryptoStream unit test.
5199         * Guid.cs: Fixed thread-safety issue. Simplified implementation to use
5200         pseudo-random numbers to generate GUIDs (as per section 3.4 of the 
5201         spec). This removes the TODO to get the computer MAC address and
5202         the chances to get a duplicate GUID (across different machines).
5204 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5206         * TimeSpan.cs: Only catch expected exceptions, if we get other exceptions
5207           than OverflowExceptions then something went wrong internally
5209 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5211         * Char.cs: Fix long standing bug with ToLower/ToUpper not being
5212           culture - sensitive
5214 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
5216         * Buffer.cs: Optimize BlockCopy.
5218         * Environment.cs: Bump corlib version.
5220 2004-05-14  Atsushi Enomoto <atsushi@ximian.com>
5222         * __ComObject.cs : This class is not regarded as CLSCompliant by csc.
5223           See also bug #58478.
5225 2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5227         * AppDomainSetup.cs: don't throw an exception if dynamic_base has not
5228         been set. Just return null as MS. Fixes bug #58120.
5230 2004-05-14  Marek Safar  <marek.safar@seznam.cz>
5232         * Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs,
5233           Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs,
5234           Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs,
5235           String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed
5236           useless [CLSCompliant (false)]
5239 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
5241         * __ComObject.cs: To please corcompare (no implementation).
5243 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
5245         * Environment.cs: Bump corlib version.
5247 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
5249         * Environement.cs: Removed two security attributes for CurrentDirectory
5250         that weren't documented (and anyway we don't support them).
5252 2004-05-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5254         * Char.cs: Fix exceptions
5256 2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>
5258         * MissingMemberException.cs: Fix in serialization constructor.
5260 2004-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5262         * Environment.cs: GetGacPath return value is resolved at runtime on
5263         windows.
5265 2004-05-07  Sebastien Pouliot  <sebastien@ximian.com>
5267         * Convert.cs: ToBase64CharArray method was depending on a bug in 
5268         S.S.C.ToBase64Transform class to work. Added an internal method to 
5269         provide the same functionality (multiple block processing).
5271 2004-05-06  Jackson Harper  <jackson@ximian.com>
5273         * Environment.cs: Make $HOME the personal directory.
5275 2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
5277         * Convert.cs: ToBase64String method was depending on a bug in 
5278         S.S.C.ToBase64Transform class to work. Added an internal method to 
5279         provide the same functionality (multiple block processing).
5281 2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
5283         * Environment.cs: Completed OSVersion property.
5284         * Version.cs: Added internal CreateFromString() to "try" to build the
5285         best version number form the specified string.
5287 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5289         * TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch.
5290           Fixes several potential bugs and makes things way faster.
5292 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5294         * TimeSpan.cs: Formatting changes
5296 2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>
5298         * Activator.cs: change _flags to a const.
5299         * IntegerFormatter.cs: make tables readonly.
5300         * Convert.cs: tables readonly
5301         * DateTime.cs: ditto.
5302         * IntPtr.cs: avoid a cctor.
5304 2004-04-29  Jackson Harper  <jackson@ximian.com>
5306         * MonoType.cs: 
5307         * Type.cs: NET_2_0 now instead of 1_2. 
5308         
5309 2004-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5311         * Environment.cs: implemented GetLogicalDrives.
5313 2004-04-28  Miguel de Icaza  <miguel@ximian.com>
5315         * Applied patch from Atsushi Enomoto that allows Synchronized
5316         writers to have a `dont close' flag, this fixes 52094
5318 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
5320         * MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not
5321         return the method if it is private (it did until now because of a
5322         bug). Make sure it works as it worked before the fix.
5323         * Type.cs: Implemented FilterAttribute delegate.
5325 2004-04-28  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5327         * IntegerFormatter.cs: Prevent the use of the explicit static constuctor
5329 2004-04-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5331         * IntegerFormatter.cs: Made functions internal (needed by other patches)
5333 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
5335         * DateTime.cs: TODO cleaning.
5336         * Delegate.cs: GetObjectData should be virtual.
5337         * IntegerFormatter.cs: Method factorization. I don't want to fix bugs in
5338           30 methods almost identical.
5339         * MulticastDelegate.cs: Implemented GetObjectData.
5340         
5341 2004-04-26  Jackson Harper  <jackson@ximian.com>
5343         * Environment.cs: Things going bump in the night.
5345 2004-04-25  Miguel de Icaza  <miguel@ximian.com>
5347         * Convert.cs (toBase64Transform): Make private.
5349 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5351         * Convert.cs:
5352         * Decimal.cs:
5353         * DecimalFormatter.cs:
5354         * FloatingPointFormatter.cs: Call invariant Char functions
5355         * Guid.cs: Call invariant Char and String functions
5356         * String.cs: Call invariant Char functions
5358 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5360         * String.cs: Refactored the Invariant ToXXX into its own internal methods
5361           so they are directly callable within corlib (can prevent early
5362           construction of CultureInfo, InvariantCulture and related classes)
5364 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5366         * String.cs: Managed impl. of Invariant parts of ToLower, ToUpper
5367         * Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper
5369 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5371         * String.cs: Check for null values
5373 2004-04-23  Peter Bartok <pbartok@novell.com>
5375         * Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo
5376           will do a better fix in the future, but this way apps can at least use it.
5378 2004-04-23  Sebastien Pouliot  <sebastien@ximian.com>
5380         * Environment.cs: Better support for GetFolderPath (same results as MS 
5381           on Windows).
5383 2004-04-22  Lluis Sanchez Gual  <lluis@ximian.com>
5385         * Activator.cs: Removed TODOs for finished methods.
5386         * AppDomainSetup.cs: When setting a relative path to ApplicationBase, it
5387           must be relative to the current directory, not the temp directory.
5388           Implemented DynamicBase.
5389         * Convert.cs: No need to create a ToBase64Transform instance at every call
5390           to ToBase64CharArray.
5391         * DateTime.cs: Implemented missing methods FromFileTimeUtc and 
5392           ToFileTimeUtc.
5393         * Decimal.cs: Implemented FromOACurrency and ToOACurrency.
5394         * Delegate.cs: Removed class TODO.
5395         * IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc
5396           methods.
5397         * Type.cs: Removed TODOs for things already implemented.
5398         
5399 2004-04-21  Lluis Sanchez Gual  <lluis@ximian.com>
5401         * Char.cs: Implemented culture-dependent ToLower and ToUpper methods.
5402         * MulticastDelegate.cs: Removed unused code.
5404 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
5406         * AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase.
5407         * Array.cs: Removed some TODOs in CreateInstance and IndexOf.
5408         * BadImageFormatException.cs: TODO reformat.
5409         * DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats.
5410         * DelegateSerializationHolder.cs: Made class internal.
5411         * Enum.cs: Removed TODO for localization, since this is something that has
5412           to be done for all classes.
5413         * Environment.cs: Removed TODO.
5414         * Exception.cs: Changed ToString to use StringBuilder.
5415         * MonoDummy.cs: Made class internal.
5416         * UnitySerializationHolder.cs: Added support for modules.
5418 2004-04-16  David Sheldon <dave-mono@earth.li>
5420         * DecimalFormatter.cs: Don't append a decimal point after the
5421           end of a number. ((decimal)1).ToString("P0") should be "100 %", not
5422           "100. %"
5424 2004-04-09  Miguel de Icaza  <miguel@ximian.com>
5426         * OutOfMemoryException.cs: Removed the call to Locale.GetText from
5427           this.
5429 2004-04-10  Gert Driesen (drieseng@users.sourceforge.net)
5431         * MonoDummy.cs: added MonoTODO to make sure we remove this class
5432           when its no longer needed
5434 2004-04-09  David Sheldon <dave-mono@earth.li>
5436         * Convert.cs: Allow + signs in strings for ToInt32, and
5437           - if it is base 10.
5439 2004-04-08  Atsushi Enomoto  <atsushi@ximian.com>
5441         * Nullable.cs : usingdecl should also be conditional.
5443 2004-04-07  Martin Baulig  <martin@ximian.com>
5445         * Nullable.cs: New file.
5447 2004-04-07  Martin Baulig  <martin@ximian.com>
5449         * Type.cs (Type.GetGenericArguments): Make this abstract.
5451 2004-04-07  Jackson Harper  <jackson@ximian.com>
5453         * Environment.cs: Increase corlib version number.
5454         
5455 2004-04-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5457         * Environment.cs:
5458         (ExpandEnvironmentVariables): on windows, env. vars. are case
5459         insensitive.
5461 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
5463         * AppDomain.cs: Added static to [ThreadStatic] _principal field. 
5464         Removed [ThreadStatic] for _principalPolicy (not required).
5466 2004-04-06  Miguel de Icaza  <miguel@ximian.com>
5468         * Guid.cs: Flag as Sequential.
5470 2004-04-02  Dick Porter  <dick@ximian.com>
5472         * String.cs: More sanity checks in Replace().  Fixes bug 55822.
5474 2004-04-02  Sebastien Pouliot  <sebastien@ximian.com>
5476         * Environment.cs: Implement ExpandEnvironmentVariables static method.
5477         Now call the runtime to get the username (fix #56144).
5479 2004-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5481         * MonoType.cs: AssemblyQualifiedName now displays culture, version...
5482         Fixes bug #56341.
5484 2004-03-29  Miguel de Icaza  <miguel@ximian.com>
5486         * Console.cs: If we fail to open stdin/stdout/stderr, create
5487         readers with a NullStream.  This can happen if our caller does not
5488         setup stdin/stoud/stderr file handles.  #56158 exposed this, but
5489         it will happen elsewhere.
5491 2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>
5493         * Convert.cs: In ToSingle(double), removed checks for Single.MaxValue
5494         and Single.MinValue. MS.NET don't do it. This fixes bug #56005.
5495         * Guid.cs: Added support for guid strings in the "N" and "P" formats in
5496           the constructor. This fixes bug #54019.
5498 2004-03-23  Lluis Sanchez Gual <lluis@ximian.com>
5500         * FloatingPointFormatter.cs: Made the class thread safe. Had to move some
5501           internal variables to structures that are moved around methods.
5502           Factorized some common formatting code into FormatNumberInternal.
5503           
5504 2004-03-23  Dick Porter  <dick@ximian.com>
5506         * DateTime.cs: Allow any character for DateSeparator when parsing,
5507         except TimeSeparator, a digit or a letter.  Fixes bug 54047.  Also
5508         deleted the previous fix for 54721, because this covers it too.
5509         
5510 2004-03-23  Dick Porter  <dick@ximian.com>
5512         * DateTime.cs: Check the date string for too many digits when
5513         parsing.  Fixes bugs 53023 and 53025.
5515 2004-03-22  Dick Porter  <dick@ximian.com>
5517         * String.cs: Use the provider when converting strings to other
5518         types.
5520         * DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing
5521         formats.  Fixes bug 54721.
5523 2004-03-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5525         * Console.cs: Styled, optimized calls
5526         * CrossAppDomainDelegate.cs: Small header fix
5527         * Buffer.cs: Style, improve errors
5528         * BitConverter.cs: Style, improve errors, remove obsolete comment
5529         * Attribute.cs: Style, improve errors, small fix
5530         * Array.cs: Style, improve errors, small fix, added TODOs
5531         * Activator.cs: Style, localized errors, added error checks
5532         * Byte.cs: Style, localized errors, fixed wrong exception parameters
5533         * Char.cs: Style
5534         * Boolean.cs: Style
5535         * AppDomainSetup.cs: Style
5536         * AppDomain.cs: Style, implemented two methods (redirect)
5538 2004-03-21  Jackson Harper  <jackson@ximian.com>
5540         * FloatingPointFormatter.cs: Set precision from number format info
5541         when it is not specified. This fixes bug #54983.
5542         
5543 2004-03-18  Nick Drochak <ndrochak@ieee.org>
5545         * Math.cs: Use IsNaN() method not "x == NaN".
5547 2004-03-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5549         * EntryPointNotFoundException.cs
5550         * DuplicateWaitObjectException.cs
5551         * DllNotFoundException.cs
5552         * DivideByZeroException.cs
5553         * ContextMarshalException.cs
5554         * CannotUnloadAppDomainException.cs
5555         * BadImageFormatException.cs
5556         * ArrayTypeMismatchException.cs
5557         * ArithmeticException.cs
5558         * ArgumentOutOfRangeException.cs
5559         * ArgumentNullException.cs
5560         * ArgumentException.cs
5561         * ApplicationException.cs
5562         * AppDomainUnloadedException.cs: Added missing HResult overrides
5564         * BadImageFormatException.cs: Improved/ Fixed implementation
5566 2004-03-15  Sebastien Pouliot  <sebastien@ximian.com>
5568         * Random.cs: Corrected random value when Next is called with a 
5569         negative value. Testing indictae that our results aren't exactly the 
5570         same as MS, we have a +/- 1 (probably rounding errors due to 
5571         different implementation).
5573 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5575         * Environment.cs: updated corlib version.
5577 2004-03-15  Lluis Sanchez Gual <lluis@ximian.com>
5579         * Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs,
5580           SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal
5581           field "value" to "m_value", so it is interoperable with MS.NET when 
5582           serializing and deserializing data. Based on the patch from Daniel
5583           Keep.
5585 2004-03-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5587         * TypeInitializationException.cs
5588         * SystemException.cs
5589         * StackOverflowException.cs
5590         * RankException.cs
5591         * OverflowExceptionException.cs
5592         * OutOfMemoryException.cs
5593         * NullReferenceException.cs
5594         * NotSupportedException.cs
5595         * NotFiniteNumberException.cs
5596         * InvalidOperationException.cs
5597         * InvalidCastException.cs
5598         * IndexOutOfRangeException.cs
5599         * FormatException.cs
5600         * ExecutionEngineException.cs: improved parameter names
5602 2004-03-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5604         * Enum.cs
5605         * EntryPointNotFoundException.cs
5606         * DuplicateWaitObjectException.cs
5607         * DoubleFormatter.cs
5608         * DllNotFoundException.cs
5609         * DivideByZeroException.cs
5610         * DelegateSerializationHolder.cs
5611         * Delegate.cs
5612         * DBNull.cs
5613         * ContextStaticAttribute.cs
5614         * ContextMarshalException.cs
5615         * ContextBoundObject.cs
5616         * CLSCompliantAttribute.cs
5617         * CharEnumerator.cs
5618         * CannotUnloadAppDomainException.cs
5619         * BadImageFormatException.cs
5620         * AttributeUsageAttribute.cs
5621         * AttributeTargets.cs
5622         * AsyncCallback.cs
5623         * AssemblyLoadEventHandler.cs
5624         * AssemblyLoadEventArgs.cs
5625         * ArrayTypeMismatchException.cs
5626         * ArithmeticException.cs
5627         * ArgumentOutOfRangeException.cs
5628         * ArgumentNullException.cs
5629         * ArgumentException.cs
5630         * ArgIterator.cs
5631         * ApplicationException.cs
5632         * AppDomainUnloadedException.cs
5633         * AppDomain.cs: Mono styled, fixed exceptions/ locales
5634           removed excess usings
5636 2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
5638         * Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and
5639         spaces) which fixed #54939. Changed the way that the length is 
5640         validated (multiple of 4) because the ignored characters must not be
5641         included in the count.
5643 2004-03-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5645         * String.cs: Monostyled
5647 2004-03-09  Jackson Harper  <jackson@ximian.com>
5649         * Char.cs: Only use a byte for numeric data.
5650         
5651 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5653         * TypedReference.cs: Added missing Attributes
5654         * ParamArrayAttribute.cs: Small style fix
5655         * OperatingSystem.cs: Added .Net 1.1 member
5657 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5659         * FieldAccessException.cs
5660         * FormatException.cs
5661         * InvalidCastException.cs
5662         * InvalidOperationException.cs
5663         * MemberAccessException.cs
5664         * MethodAccessException.cs
5665         * MissingFieldException.cs: Locale strings
5666         * MissingMemberException.cs: Locale strings
5667         * MissingMethodException.cs: Locale strings
5668         * NotFiniteNumberException.cs
5669         * NotImplementedException.cs
5670         * NotSupportedException.cs
5671         * NullReferenceException.cs
5672         * ObjectDisposedException.cs
5673         * OutOfMemoryException.cs
5674         * OverflowExceptionException.cs
5675         * PlatformNotSupportedException.cs
5676         * RankException.cs: Added missing HResult overrides
5678 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5680         * RuntimeTypeHandle.cs
5681         * RuntimeMethodHandle.cs
5682         * RuntimeFieldHandle.cs: Implemented serialization (partially untested)
5684 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5686         * EventArgs.cs
5687         * Exception.cs
5688         * ExecutionEngineException.cs
5689         * FieldAccessException.cs
5690         * FormatException.cs
5691         * GC.cs
5692         * Guid.cs
5693         * IndexOutOfRangeException.cs
5694         * IntPtr.cs
5695         * InvalidCastException.cs
5696         * InvalidOperationException.cs
5697         * InvalidProgramException.cs
5698         * IServiceProvider.cs
5699         * LoaderOptimization.cs
5700         * LoaderOptimizationAttribute.cs
5701         * MarshalByRefObject.cs
5702         * Math.cs
5703         * MemberAccessException.cs
5704         * MethodAccessException.cs
5705         * MissingFieldException.cs
5706         * MissingMemberException.cs
5707         * MissingMethodException.cs
5708         * MultiCastDelegate.cs
5709         * MulticastNotSupportedException.cs
5710         * NonSerializedAttribute.cs
5711         * NotFiniteNumberException.cs
5712         * NotImplementedException.cs
5713         * NotSupportedException.cs
5714         * NullReferenceException.cs
5715         * ObjectDisposedException.cs
5716         * ObsoleteAttribute.cs
5717         * OperatingSystem.cs
5718         * OutOfMemoryException.cs
5719         * OverflowExceptionException.cs
5720         * PlatformID.cs
5721         * PlatformNotSupportedException.cs
5722         * Random.cs
5723         * RankException.cs
5724         * ResolveEventArgs.cs
5725         * ResolveEventHandler.cs
5726         * RuntimeFieldHandle.cs
5727         * RuntimeMethodHandle.cs
5728         * RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales
5729           removed excess usings
5731 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5733         * SystemException.cs: Exceptions set the HResult
5734         * TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage
5735         * SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException
5737 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5739         * TypedReference.cs
5740         * TypeLoadException.cs
5741         * TypeInitializationException.cs
5742         * TypeCode.cs
5743         * TimeZone.cs
5744         * ThreadStaticAttribute.cs
5745         * SystemException.cs
5746         * STAThreadAttribute.cs
5747         * StackOverflowException.cs
5748         * SingleFormatter.cs
5749         * Single.cs
5750         * SerializableAttribute.cs: Mono styled, fixed exceptions/ locales
5751           removed excess usings
5753 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5755         * UnauthorizedAccessException.cs: Exceptions set the HResult
5756         * UInt64.cs: Implemented two missing methods
5757         * UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert
5758         * UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert
5760 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5762         * WeakReference.cs
5763         * Void.cs
5764         * Version.cs
5765         * ValueType.cs
5766         * UnitySerializationHolder.cs
5767         * UnhandledExceptionEventHandler.cs
5768         * UnauthorizedAccessException.cs
5769         * UIntPtr.cs
5770         * UInt64.cs
5771         * UInt32.cs
5772         * UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes
5774 2004-03-04  Lluis Sanchez Gual <lluis@ximian.com>
5776         * Environment.cs: Bump corlib version.
5778 2004-03-04  Jackson Harper  <jackson@ximian.com>
5780         * Char.cs: New managed implementation. Modified patch by Andreas Nahr.
5781         
5782 2004-02-27  Lluis Sanchez Gual <lluis@ximian.com>
5784         * String.cs: Concat() fixed crash when one of the arguments is an object
5785           whose ToString() method returns null.
5786         * TypeLoadException.cs: Added some serialization fiels, needed for
5787           compatibility with MS.NET.
5789 2004-02-23 Ben Maurer  <bmaurer@users.sourceforge.net>
5791         * String.cs (Equals): Speed up this method by avoiding Array
5792          Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.
5794         This gives between 0x (for 1 char) and >2x (for large strings)
5795         factor of improvement.
5797         A big thanks to Miguel, who suggested the integer compares.
5799 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5801         * MonoType.cs: use the binder in GetPropertyImpl.
5803 2004-02-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
5805         * Math.cs: MonoStyled, replaced space with tabs,
5806           speedup of some methods by avoiding method calls
5808 2004-02-18  Atsushi Enomoto  <atsushi@ximian.com>
5810         * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
5811           (Moved from InternalCall to Managed code).
5813 2004-02-17  Martin Baulig  <martin@ximian.com>
5815         * MonoType.cs (GetConstructors): Renamed the interncall to
5816         GetConstructors_internal(), made it internal and added a `Type
5817         reflected_type' argument to it.
5818         (GetEvents, GetFields): Likewise.
5819         (GetMethodsByName): Added `Type reflected_type' argument.
5820         (GetPropertiesByName): Likewise.
5822 2004-02-16  Jackson Harper  <jackson@ximian.com>
5824         * FloatingPointFormater.cs: Allow precision to be up to the number
5825         of decimals without rounding.
5826         
5827 2004-02-14  Zoltan Varga  <vargaz@freemail.hu>
5829         * Delegate.cs (Equals): Do not compare method_ptr, since it might
5830         point to a trampoline.
5832 2004-02-12  Jackson Harper  <jackson@ximian.com>
5834         * AppDomainSetup.cs: If relative paths are used they should be
5835         rooted in the temp directory.
5836         
5837 2004-02-11  Marek Safar  <marek.safar@seznam.cz>
5839         * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.
5841 2004-02-10  Zoltan Varga  <vargaz@freemail.hu>
5843         * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
5844         avoid an assert in the runtime.
5846 2004-02-08  Duncan Mak  <duncan@ximian.com>
5848         * Convert.cs (ToType): Always let a Convert.ChangeType call
5849         succeed if the source object is already of the destination type.
5851         Patch by Ian MacLean (ianm@activestate.com).
5853 2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>
5855         * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.
5857 2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
5859         * Environment.cs: Bump corlib version.
5861 2004-02-02  Sebastien Pouliot  <sebastien@ximian.ca>
5863         * DateTime.cs: Corrected support for "Z" in the mask (Parse). This
5864         fix bug #53461.
5866 2004-01-27  Sebastien Pouliot  <spouliot@videotron.ca>
5868         * Exception.cs: Changed ToString to remove the \n when no stack trace
5869         is present (which fixed a unit test for SecurityException). Changed
5870         all \n to Environment.NewLine.
5872 2004-01-27  Lluis Sanchez Gual <lluis@ximian.com>
5874         * ContextBoundObject.cs: Removed TODO.
5876 2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5878         * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
5879         (double), which might round up.
5881 2004-01-19  Jackson Harper <jackson@ximian.com>
5883         * FloatingPointFormatter.cs: Use the default decimal digits count
5884         if they are not specified. This fixes bug #52927.
5885         
5886 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
5888         * Environment.cs: Bump version number.
5890 2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>
5892         * Type.cs: Added internal call for IsInstanceOfType. The old implementation
5893         uses IsAssignableFrom(o.GetType()), which is not always valid for 
5894         transparent proxies (because GetType will not return the type of the remote
5895         object if its assembly is not present).
5897 2004-01-18  David Sheldon <dave-mono@earth.li>
5899   * FloatingPointFormatter.cs: Skip the decimal point if we have an 
5900     integer mantassa. So: 1E+15, rather than 1.E+15.
5902 2004-01-18  David Sheldon <dave-mono@earth.li>
5904         * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, 
5905         even though docs say it should be an ArgumentNull. Two test cases now
5906   pass. See also nickd's commit of 2003-12-24.
5908 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5910         * Environment.cs: increased corlib version.
5912 2004-01-14  Lluis Sanchez Gual <lluis@ximian.com>
5914         * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
5915         be reused because they could be modified. This fixes bug #52655.
5917 2004-01-12  Patrik Torstensson
5919         * Environment.cs: Bump corlib version number due to new StringBuilder
5920         
5921         * String.cs: New internal method to support the new StringBuilder that
5922         uses the string as a buffer (until ToString is called)
5924 2004-01-12  Zoltan Varga  <vargaz@freemail.hu>
5926         * Environment.cs: Bump corlib version number for real this time.
5927         
5928         * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
5929         the runtime, so it can take into account the Culture etc.
5931         * Environment.cs: Bump corlib version number.
5932         
5933 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5935         * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
5936         new parameter with the method name and a boolean for ignoring case.
5937         Removed some string comparisons no longer needed.
5939 2004-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5941         * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
5942         new parameter with the property name and a boolean for ignoring case.
5943         Fixes bug #52753.
5945 2004-01-11  David Sheldon <dave-mono@earth.li>
5947         * DateTime.cs: Correct processing of formats with multiple '-'s, fixing
5948         bug 52274.
5950 2004-01-10  Zoltan Varga  <vargaz@freemail.hu>
5952         * AppDomain.cs: Keep track of type resolve and assembly resolve 
5953         events in progress to prevent infinite recursion.
5955 2004-01-06  Miguel de Icaza  <miguel@ximian.com>
5957         * Console.cs: Test for UTF-8 being present anywhere on the
5958         string, also do ToUpper instead of ToLower, which will work even
5959         around the ICU bug with different locales (#52065), and addresses #52101
5961 2004-01-05  Zoltan Varga  <vargaz@freemail.hu>
5963         * Environment.cs: Bump version.
5965 2003-12-24 Ben Maurer  <bmaurer@users.sourceforge.net>
5967         * Type.cs (IsNotPublic): One would normally assume that
5968         IsNotPublic == !IsPublic, but this is not the case (note to MS,
5969         make better names ;-). Fixes #52547, `Type.IsNotPublic not 
5970         correct for Nested types'
5972 2003-12-24  Nick Drochak  <ndrochak@ieee.org>
5974         * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, 
5975         even though docs say it should be an ArgumentNull. Sent email to MS
5976         about this "bug".
5978 2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>
5980         * Exception.cs: Several changes to make it compatible with MS.NET (needed
5981         for remoting interoperability): set a default value for hresult, added 
5982         initialization of class_name, serialization field RemoteStackTrace must
5983         be RemoteStackTraceString, added ser. field ExceptionMethod.
5985         * IndexOutOfRangeException.cs: Added serialization constructor.
5987 2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>
5989         * Int32 (Parse):
5990           Int64 (Parse): Fix overflow checking for AllowHexSpecifier
5992 2003-12-20  Zoltan Varga  <vargaz@freemail.hu>
5994         * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
5995         user supplied no parameter info, but not when the user supplied an
5996         empty parameter list. This fixes IKVM.
5998         * Environment.cs: Bump corlib version.
6000 2003-12-19  Dick Porter  <dick@ximian.com>
6002         * String.cs: Added Compare shortcut for length==0.
6004 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
6006         * Environment.cs: Bump corlib version.
6008 2003-12-17  Dick Porter  <dick@ximian.com>
6010         * String.cs: Fix StartsWith and EndsWith when the argument is the
6011         empty string.  Fixes bug 52283.
6013 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
6015         * Environment.cs (HasShutdownStarted): Implement.
6017 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
6019         * Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
6020         
6021         * Environment.cs: Bump version number.
6023 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6025         * DateTime.cs: don't bail out with that year out of range error on
6026         stuff like "MM/dd/yyyy HH:MM:ss".
6028 2003-12-13  Zoltan Varga  <vargaz@freemail.hu>
6030         * Environment.cs: Make it a const instead.
6031         
6032         * Environment.cs: Make version field static.
6034 2003-12-10  Zoltan Varga  <vargaz@freemail.hu>
6036         * Type.cs: Make DefaultBindingFlags protected.
6038         * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
6039         Add new GacPath property + its associated icall.
6041 2003-12-09 Anirban Bhattacharjee <banirban@novell.com>
6043         * DateTime.cs : Bugs fixed (41845, 51422)
6044         * MonoType.cs : Exception message changed 
6046 2003-12-08  Martin Baulig  <martin@ximian.com>
6048         * Type.cs (MakeByRefType): New public method.
6050 2003-12-08  Zoltan Varga  <vargaz@freemail.hu>
6052         * Environment.cs: Add a version number for the corlib-runtime interface
6053         to make it easier to diagnose problems resulting from a mismatch 
6054         between the two.
6056 2003-12-08  Patrik Torstensson   <p@rxc.se>
6058         * Type.cs (GetMethod): Check type arguments within array
6059         * MonoType.cs (GetMethodImpl): Handle methods with a new slot
6060         (same signature but different classes (derived level)
6062 2003-12-07  Zoltan Varga  <vargaz@freemail.hu>
6064         * Type.cs (MakeArrayType): Add argument checking.
6066 2003-12-06  Dick Porter  <dick@ximian.com>
6068         * String.cs: Don't use CompareInfo for non-culture-sensitive
6069         IndexOf and LastIndexOf methods.
6071 2003-12-06  Ravindra  <rkumar@novell.com>
6073         * DateTime.cs: Made Parse(string, IFormatProvider) method to
6074         use second argument. Fixed bug #51464.
6076 2003-12-04  Martin Baulig  <martin@ximian.com>
6078         * Type.cs (Type.MakeArrayType): New public method.
6080 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6082         * Buffer.cs:
6083         (BlockCopy): make the exception thrown helpful.
6085 2003-12-03  Dick Porter  <dick@ximian.com>
6087         * String.cs: Calling Replace on an empty string returns itself.
6089 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
6091         * MonoType.cs: Get rid of get_type_info, use a separate icall for
6092         each property instead.
6094 2003-12-02  Dick Porter  <dick@ximian.com>
6096         * Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
6097         Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
6099 2003-12-01  Dick Porter  <dick@ximian.com>
6101         * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
6102         Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
6104 2003-11-28  Dick Porter  <dick@ximian.com>
6106         * Type.cs: 
6107         * MonoType.cs: 
6108         * Enum.cs: 
6109         * Boolean.cs: Do string compares with the Invariant culture.
6111 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
6113         * Array.cs: make the enumerator ICloneable
6115 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
6117         * Decimal.cs (ToXXX): Call Convert.ToXXX.
6119 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
6121         * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
6122         Implement Load(byte[]) methods.
6124         * BadImageFormatException.cs: Fix ToString.
6126 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
6128         * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
6129         GetConstructor, as done by MS.
6131 2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
6133         * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
6135 2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>
6137         * TypeInitializationException.cs: Added missing serialization constructor.
6139 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6141         * AppDomainSetup.cs: Don't add an extra '/' at the end of 
6142         ApplicationBase. The tests pass now with mono.
6144 2003-11-18  Zoltan Varga  <vargaz@freemail.hu>
6146         * ValueType.cs: New optimized implementation for Equals and GetHashCode.
6148 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6150         * Environment.cs: use Directory in CurrentDirectory property.
6151         We were not throwing any exception when setting the directory to an
6152         invalid path.
6154 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6156         * Array.cs:
6157         * Delegate.cs: implemented 1.1 stuff.
6159         * Enum.cs:
6160         * IntPtr.cs: removed extra attribute.
6161         * PlatformID.cs: added WinCE.
6163 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6165         * ValueType.cs:
6166         (Equals): compare the fields of structs too.
6167         (GetHashCode): combine the hash code of all the fields.
6168         Fixes bug #50901 (will remove the icall in a couple of days).
6170 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6172         * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
6174 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6176         * DateTime.cs: handle century when we try to parse 4-digit years and
6177         only 2 digits are present. Fixes bug #49394.
6179 2003-11-13  Miguel de Icaza  <miguel@ximian.com>
6181         * Console.cs: On utf-8 consoles, use unmarked output.
6183 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
6185         * IAppDomainSetup.cs:
6186         * _AppDomain.cs: 
6187         * Object.cs:
6188         * Type.cs: Added missing attribute
6190 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
6192         * Environment.cs: Added internal method for getting the path to 
6193         machine.config.
6194         
6195 2003-11-12 Jackson Harper <jackson@ximian.com>
6197         * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
6198         enum. This fixes the SWF build.
6199         
6200 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
6202         * PlatformID.cs: Remove Unix platform, we cant expose constants
6203         that are not in the framework.
6205         * OperatingSystem.cs: Adjust for the breakage.
6207         * RuntimeMethodHandle.cs: Fix signature.
6209         * Double.cs: Fix signature of TryParse.
6211         * String.cs (Concat (object, object, object, object)): Add missing method.
6213         * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
6214         in the .NET Framework.
6216         * Enum.cs: Hide constructor.  
6218         Fix ToUint16 to be explicitly implemented.
6220         * Console.cs: Add couple of extra missing methods (Write and
6221         WriteLine overloaded)
6223 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
6225         * AppDomain.cs, Activator.cs: New unimplmented entry points from
6226         1.1 (Com activation related).
6227         
6228         * Exception.cs: Formatting.
6229         
6230         * IServiceProvider.cs: Add ComVisible (true).
6232         * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 
6234 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
6236         * AppDomain.cs: Added some null checks in Load methods. This fixes bug
6237           #50356.
6239 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
6241         * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
6242         on MonoMethod instead of Invoke.
6244 2003-11-01  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6246         * DateTime.cs: Fixed Add* methods handling. Now it works properly
6247         with extreme values (there is a bug with Overflow and Underflow in
6248         long type).
6250 2003-10-31  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6252         * DateTime.cs: Fixed a few format bugs.
6254 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
6256         * AppDomain.cs (InternalPushDomainRef): New icalls.
6258         * AppDomain.cs (InvokeInDomain): New method to execute code in a 
6259         different appdomain.
6261 2003-10-27  Zoltan Varga  <vargaz@freemail.hu>
6263         * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
6265 2003-10-25  Zoltan Varga  <vargaz@freemail.hu>
6267         * AppDomain.cs (IsFinalizingForUnload): Implement.
6269         * AppDomain.cs (Unload): Move the notification of OnUnload listeners
6270         to unmanaged code.
6272 2003-10-25  Martin Baulig  <martin@ximian.com>
6274         * MonoType.cs: Don't make this sealed.
6276 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
6278         * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
6280 2003-10-24  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6282         * DateTime.cs: When handling '-' as a date separator, MS.NET uses
6283         the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
6285 2003-10-22  Dick Porter  <dick@ximian.com>
6287         * DateTime.cs: Handle '-' as a date separator when parsing formats.
6289 2003-10-20  Duncan Mak  <duncan@ximian.com>
6291         * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
6292         and merge the two iterations into one.
6294 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
6296         * TypedReference.cs: Add new field used by the runtime.
6298 2003-10-15  Martin Baulig  <martin@ximian.com>
6300         * Type.cs (Type.DeclaringMethod): For a generic method's type
6301         parameter, return this method - otherwise, return null.
6303 2003-10-14  Martin Baulig  <martin@ximian.com>
6305         The generics API has changed in the spec since it was added here;
6306         these modifications make it match the spec again.
6308         * Type.cs
6309         (GetGenericParameters): Renamed to `GetGenericArguments'.
6310         (HasGenericParameters): Renamed to `HasGenericArguments'.
6311         (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
6312         (IsGenericTypeDefinition): New property.
6313         (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
6315         * MonoType.cs (ContainsGenericParameters): Implement this here;
6316         this is no interncall anymore.
6318 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6320         * Delegate.cs: add the method name to the exception when it cannot be
6321         bound.
6322         * Exception.cs: fix nullref in Source.
6324 2003-10-10  Zoltan Varga  <vargaz@freemail.hu>
6326         * Array.cs: Add argument checking to GetValue and SetValue.
6328 2003-10-09  Miguel de Icaza  <miguel@ximian.com>
6330         * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
6331         should not be TimeSpan.MaxValue, because it overflow.  Set this to
6332         be MAX_VALUE_TICKS
6334 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6336         * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
6337         duplicate entry exception.
6339 2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>
6341         * DateTime.cs (ToString): Total rewrite, fixes #49358.
6343 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
6345         * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
6347 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6349         * Enum.cs:
6350         (Equals): check that the object is an Enum before comparing the types.
6352 2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6354         * Array.cs: reduced xsp allocated memory by 1/2.
6356 2003-09-25  Martin Baulig  <martin@ximian.com>
6358         * Type.cs (Type.IsGenericTypeDefinition): Removed this method
6359         since it was identical to GetGenericTypeDefinition().
6360         (Type.IsGenericInstance): New property.
6362 2003-09-24  Duncan Mak  <duncan@ximian.com>
6364         * Math.cs (Abs): Fix double Locale.GetText bug reported by
6365         davejp@volny.cz. This fixes #48788.
6367 2003-09-14  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6369         * FloatingPointFormatter.cs: Add the necessary castings to char
6370         conversions.
6372 2003-09-13  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6374         * FloatingPointFormatter.cs: Make the method calls more functional
6375         for protecting the values from different threads (make it more
6376         thread safe).
6378 2003-09-13  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6380         * FloatingPointFormatter.cs: Fix a bug with the negative value of
6381         count parameter.
6383 2003-09-12  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6385         * FloatingPointFormatter.cs: Applied a lot of improvements in string
6386         construction, make use of Append/Insert with the "count" parameter.
6387     Thanks to Ben Maurer.
6389 2003-09-10  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6391         * FloatingPointFormatter.cs: Fix a bug with Custm Format.
6393         * FloatingPointFormatter.cs: Fix a little bug I've introduced the
6394         last change.
6396 2003-09-10  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6398         * DoubleFormatter.cs: A few optimizations. Now, only one object
6399         is created to convert all double numbers.
6401         * SingleFormatter.cs: A few optimizations. Now, only one object
6402         is created to convert all float numbers.
6404         * FloatingPointFormatter.cs: Split the "number type parameters" from
6405         the "numver value and format parameters". The first ones are in the
6406         constructor and the others are in a method.
6408 2003-09-09  Zoltan Varga  <vargaz@freemail.hu>
6410         * Array.cs: Added argument checking to some NET_1_1 methods.
6412 2003-09-04  Martin Baulig  <martin@ximian.com>
6414         * Type.cs (GetGenericTypeDefinition): Make this method virtual.
6416 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6418         * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
6419         taking 'longs'. All tests pass.
6421 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
6423         * Exception.cs: Add ClassInterface attr. Implement TargetSite and
6424         Source. Remove MonoTODO attributes (class is 100% done). Also
6425         passes all Rotor tests for Exception!
6427 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
6429         * Enum.cs: Remove [MonoTODO]'s that had been completed.
6431 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6433         * String.cs: fixed bug #47802.
6435 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
6437         * String.cs: Created method FormatHelper that does formatting,
6438         using a StringBuilder.
6440 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6442         * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
6444 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6446         * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
6447         methods under MS.
6449 2003-08-11  Duncan Mak  <duncan@ximian.com>
6451         * Environment.cs (Version): Return the same numbers as the MS
6452         implementation.
6454 2003-08-10  Miguel de Icaza  <miguel@ximian.com>
6456         * Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
6457         replicated tests, and have a routine that does the heavy lifting.
6459 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
6461         * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
6462           of DateTime.
6463         * Environment.cs: return $HOME for ApplicationData folder.
6465 2003-08-04  Duncan Mak  <duncan@ximian.com>
6467         * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
6468         Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
6469         floating point values. This fixes bug #46175.
6471         * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
6472         noted by c5n4kh6u02@sneakemail.com in
6473         http://bugzilla.ximian.com/show_bug.cgi?id=43098.
6475 Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
6477         * Double.cs: added icall Double.AssertEndianity.
6479 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
6481         * Type.cs, MonoType.cs: implemented generic-specific methods.
6483 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
6485         * Buffer.cs: Add new internal MemCopy call.
6487         Removed the above.
6489 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
6491         * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
6492         to icalls, to avoid special cases in some call conventions.
6494 2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6496         * Enum.cs: added Serializable attribute.
6498 2003-07-25  Duncan Mak  <duncan@ximian.com>
6500         * AppDomain.cs (Equals):
6501         (GetHashCode): Removed because they do not need to be defined
6502         here.
6504 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6506         * TypeLoadException.cs: removed unused fields. TypeName returns "" if
6507         cannot even get the type.
6509 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
6511         * Type.cs: Added generics stubs.
6513 2003-07-23  Duncan Mak  <duncan@ximian.com>
6515         * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
6516         as values for NET_1_1.
6517         (GetFolderPath): Return the empty string ("") for values of
6518         SpecialFolder that have no corresponding equivalents in
6519         Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
6520         and "$HOME" for SpecialFolder.Personal.
6522         * IntPtr.cs (GetObjectData): Mark it as an interface
6523         implementation, instead of a public method.
6525         * Guid.cs (NewGuid): Remove MonoTODOAttribute.
6527         * TypeLoadException.cs (GetObjectData):
6528         Create stubs for the fields that are being serialized.
6530         * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
6532 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
6533         
6534         * Enum.cs: Fixed enum formatting. For flag enums, if one of
6535           the flags is unnamed, ToString() returns the integer value.
6537 2003-07-22  Jerome Laban <jlaban@wanadoo.fr>
6539         * Guid.cs: Fixed ToString (), was producing incorrect string.
6541 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6543         * AppDomainSetup.cs: fixed bug #46609.
6545 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
6547         * MonoType.cs: use an icall for IsPrimitiveImpl ().
6549 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
6551         * Guid.cs: faster ToString ().
6553 2003-07-15  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6555         * FloatingPointFormatter.cs: Few changes for get working Rotor
6556         tests.
6558 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
6560         * Type.cs (IsAssignableFrom): Implement this as an icall since the
6561         runtime already includes the neccessary logic.
6563 2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6565         * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
6566         if it's present and get the full path for non-Uri paths.
6568 2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>
6570         * DateTime.cs: Fixed formatting of fractions of second.
6572 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
6574         * Console.cs: Turn off buffering for the streams returned by
6575         OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
6577 2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>
6579         * Random.cs: Changed behavior of Random to match MS.NET. When Next is
6580           called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
6581           a new random number (although it is not needed), while mono did not. 
6582           As a result, the sequence of random numbers could be different for the
6583           same seed.
6585 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
6587         * FloatingPointFormatter.cs: use dec_len2 as default precision.
6589 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
6591         * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
6592           be done after the correspondig UTC offset has been applied.
6594 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
6596         * Object.cs: Object must have the Serializable attribute.
6597         * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
6598           to the resulting date. Also fixed _ToString so now correctly formates the
6599           UTC offset.
6601 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
6603         * Enum.cs: fix race in cache (bug#41841).
6605 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
6607         * FloatingPointFormatter.cs: if the precision is not specified, use
6608         the default precision for the data type.
6610 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
6612         * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
6613         (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
6615 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6617         * MonoType.cs: don't throw nullref when the return type for a property
6618         is specified and the property doesn't have a get accessor.
6620 2003-06-10  Duncan Mak  <duncan@ximian.com>
6622         * Array.cs (CreateInstance): Fixed a typo. It should throw
6623         ArgumentNullException instead of ArgumentException.
6625 2003-06-09  Duncan Mak  <duncan@ximian.com>
6627         * Array.cs: Revert the last revert. I fixed it.
6628         (Sort): Put a try-catch block around qsort, and wrap whatever
6629         Exception we get into a InvalidOperationException.
6631 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
6633         * Array.cs: Revert last patch, it broke some other functionality.
6634                 
6635 2003-06-08  Duncan Mak  <duncan@ximian.com>
6637         * Array.cs: Throw more exceptions. This fixes the errors we see
6638         from the Rotor testsuite.
6640         (CreateInstance): Throw ArgumentNullException when the input are
6641         null. Throw ArgumentOutOfRangeException when bounds + length is
6642         greater than Int32.MaxValue.
6643         (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
6644         the valid range of indices of array.
6645         (Sort): Throw InvalidOperationException when comparer is null and
6646         none of the elements in keys implements IComparable.
6648 2003-06-08  Duncan Mak  <duncan@ximian.com>
6650         * Array.cs (CreateInstance): Throw a TypeLoadException if the
6651         Length of the input array 'lengths' is greater than 255 so that we
6652         won't see the g_assert that is in mono_array_class_get in class.c.
6654         This fixes bug #44304.
6656 2003-06-05  Nick Drochak  <ndrochak@gol.com>
6658         * UnitySerializataionHolder.cs: Cleanups according to class status page
6660 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
6662         * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
6663         RuntimeTypeHandle.cs: implemented the needed stuff to handle
6664         vararg calls.
6666 2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>
6668         * Random.cs: New implementation based on Knuth ran3 to fix #43597.
6669         See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
6670         for Ben Maurer after review and testing.
6672 2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
6673         
6674         * Array.cs: Added better argument checking to Array.Sort ()
6675         * DBNull.cs: Made the conversions throw like they do in MS.
6677 2003-05-24  Philip Van Hoof  <me@freax.org>
6679         * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
6681 2003-05-21  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6683         * FloatingPointFormatter.cs: Take care with the explicit precision
6684         and round the number to that precision.
6686         * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
6688         * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
6690 2003-05-20  Philip Van Hoof <me@freax.org>
6692         * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
6693         Implemented.
6695 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
6697         * AppDomainSetup.cs: Added new field which is used to notify the
6698         runtime that the search path has changed.
6700 2003-05-18  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6702         * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
6703         introduced the last change I've done.
6705 2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>
6707         * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
6708         MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
6709         behaving correctly).
6710         
6711 2003-05-17  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6713         * FloatingPointFormatter.cs: Fixed little format mismatches.
6715 2003-05-16  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6717         * FloatingPointFormatter.cs: Fixed "-0" result emited.
6719 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6721         * AppDomain.cs: Added null argument check in Load().
6722         * Activator.cs: fixed bug #39926.
6724 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6726         * Enum.cs: fixed bugs #41522 and #42879.
6728 2003-05-12  Zoltan Varga  <vargaz@freemail.hu>
6730         * String.cs: Tweak IndexOf and LastIndexOf to match specification and
6731         undocumented MS behaviour.
6733 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6735         * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
6736         Jaime.
6738 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6740         * String.cs: fixed bug #41411 and another similar problem in
6741         LastIndexOf (string).
6743 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6745         * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
6746         bug #42695.
6748 2003-05-09  Zoltan Varga  <vargaz@freemail.hu>
6750         * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
6751         construction if the delegate list only has one element.
6753 2003-05-01  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6755         * Environment.cs: Changed the method GetFolderPath because it must
6756         return at least a directory name (not null).
6758         * Convert.cs: In ToType, if the destination type is unknown, try to
6759         cast the value to object (then, the calling method will downcast it
6760         to the type it wants).
6762 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6764         * Enum.cs: fixed bug #41522.
6766 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
6768         * Enum.cs: protect with the lock also the lookup (bug #41841).
6770 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
6772         * MonoType.cs: allow a null name if InvokeMember is called with
6773         BindingFlags.CreateInstance set.
6775 2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6777         * Enum.cs: reverted my previous patch.
6779 2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6781         * Enum.cs: fixed bug #41841.
6783 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6785         * MonoType.cs:
6786         (GetPropertyImpl): handle BindingFlags.IgnoreCase.
6788 2003-04-22  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6790         * FloatingPointFormatter.cs: Little fixes for get the same results
6791         as MS.NET and show a message when something goes wrong with the
6792         parser of Custom Formats.
6794 2003-04-22  Nick Drochak  <ndrochak@gol.com>
6796         * Double.cs (ToString):
6797         * Single.cs (ToString): Handle case where param is a CultureInfo.
6799 2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
6801         * Object.cs ValueType.cs: Make the Object::GetHashCode() and 
6802         ValueType::Equals() icalls static non-virtual, so they can be called
6803         by the code in RuntimeHelpers.
6805 2003-04-18  Miguel de Icaza  <miguel@ximian.com>
6807         * Delegate.cs (operator ==): Do not crash if the second argument
6808         is null.  Bug fix submitted by Juan Cri.
6810 2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
6812         * Array.cs: Deleted the exception in Array.Initialize(), it looks
6813         like the method do nothing for C#, is still a MonoTODO until
6814         we find a compiler that uses that.
6816 2003-04-14  Miguel de Icaza  <miguel@ximian.com>
6818         * Delegate.cs (Delegate): Seems like a typo, we were checking the
6819         a field rather than the argument 
6821         * MonoType.cs: Make GetNestedType an external method implementation.
6823 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6825         * Enum.cs: fixed bug #41294.
6827 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6829         * DateTime.cs: fixes bug #40910, part 2.
6831 2003-04-11  Dietmar Maurer  <dietmar@ximian.com>
6833         * String.cs (Equals): avoid the internal call, code cleanups
6835 2003-04-11  Alan Tam <Tam@SiuLung.com>
6837         * Convert.cs: fixed bug #41085.
6839 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
6841         * AppDomain.cs: Added internal method for getting process guid.
6843 2003-04-09  Ville Palo <vi64pa@kolumbus.fi>
6845         * Array.cs: Little fix to compare () method.
6846         
6847 2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
6849         * String.cs (Equals): Add trivial optimization.
6851 2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6853         * DateTime.cs: fixed bug #40910.
6855 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
6857         * Console.cs: Make stderr, stdout and stdin use synchronized
6858         versions of the their readers/writers.
6860 2003-04-04  Dick Porter  <dick@ximian.com>
6862         * Version.cs: Make operator== and operator!= cope with null
6863         objects.  Didn't change operator<, operator<=, operator> or
6864         operator>= because its not meaningful to use those to compare
6865         against null, and throwing a NullReferenceException is probably
6866         the best thing to do there anyway.
6868         Fixes bug 40720.
6870 2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6872         * AppDomain.cs: fixed InvalidCastException.
6874 2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
6876         * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
6877         type checks and let it decide whenever a fast copy is possible.
6879 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6881         * MonoType.cs:
6882         (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
6884 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
6886         * Activator.cs (CreateInstance): Call GetConstructor with the right
6887         arguments so the nonPublic argument is handled correctly.
6889 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6891         * Type.cs: fixed bug #40123.
6893 2003-03-22  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6895         * FloatingPointFormatter.cs: Fixed some bugs for get the same
6896         results than MS.NET. Added simple error recovering, now ToString
6897         will return a general format if there is any exception in the
6898         process of formatting. This make the library more robust while the
6899         formatters are refined.
6901 2003-03-16  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6903         * FloatingPointFormatter.cs: Added support for group separators.
6905 2003-03-16  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6907         * Single.cs:
6908         * Double.cs: Apply changes of .ToString methods.
6909         * SingleFormatter.cs:
6910         * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
6911         * FloatingPointFormatter.cs: New class. Implementation of double and
6912         single formatters. It is unified now and parametrized with precission
6913         values.
6915 2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>
6917         * AppDomain.cs: fixes bugs #39380 and #39331.
6919 2003-03-06  Nick Drochak  <ndrochak@gol.com>
6921         * TimeSpan.cs (Negate): Throw exception when value is MinValue.
6923 2003-03-04  Dick Porter  <dick@ximian.com>
6925         * Single.cs:
6926         * Double.cs: Temporarily reverted the Double and Single ToString()
6927         change, because it broke nunit.
6930 2003-03-04  Pedro MartĂ­nez JuliĂ¡  <yoros@wanadoo.es>
6932         * Double.cs: Changed ToString method. Added NumberFormatInfo support
6933         with DoubleFormatter class.
6934         * Single.cs: Changed ToString method. Added NumberFormatInfo support
6935         with SingleFormatter class.
6936         * DoubleFormatter.cs: New class with Double formatting functions.
6937         * SingleFormatter.cs: New class with Single formatting functions.
6939 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
6941         * Activator.cs: Added support for activation using activation attributes.
6942         * AppDomain.cs: Added internal method to get the default context from the runtime.
6944 2003-02-28  Elan Feingold  <efeingold@mn.rr.com>
6946         * DateTime.cs: FileTime is expressed in Universal time, and as such must
6947         be converted before subtracting the magic offset.
6948         * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
6949         the timezone at the end) *must* be parsed by DateTime.Parse() for
6950         compatibility with Microsoft.
6952 2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6954         * Attribute.cs:
6955         * MonoCustomAttrs.cs: fix for the regression test failure (see bug
6956         #38238).
6958         * IntPtr.cs: added serialization .ctor
6960 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6962         * AppDomain.cs: check for null in Unload and changed method name.
6964 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6966         * MonoCustomAttrs.cs: fixed bug #38238.
6968 2003-02-17  Martin Baulig  <martin@ximian.com>
6970         * Exception.cs (Exception.ToString): Print a newline between the
6971         exception message and the stack trace.
6973 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6975         * AppDomain.cs: implemented GetCurrentThreadId ().
6977 2003-02-14  Patrik Torstensson
6979         * Exception.cs: Fixed message output formating
6981 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6983         * Int32.cs:
6984         (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
6986 2003-02-12  Miguel de Icaza  <miguel@ximian.com>
6988         * Type.cs: IsClass should return false for Enumerations
6990 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6992         * MonoCustomAttrs.cs: return the correct array type in the short case.
6993         Fixes bug #37818.
6995 2003-02-08  Pedro MartĂ­enz JuliĂ¡  <yoros@wanadoo.es>
6997         * Math.cs: Fix a few methods (like Round) and add with comments the
6998         new methods: BigMul and DivRem that were in ECMA specs.
7000 2003-02-07  Patrik Torstensson
7002         * Exception.cs: Fixed formating
7004 2003-02-05  Patrik Torstensson
7006         * AppDomain.cs: Partly fixed the unload method 
7007         
7008 2003-02-04  Patrik Torstensson
7010         * AppDomain.cs: Fixed lease issue with appdomain
7012 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
7014         * MarshalByRefObject.cs: Implemented GetLifetimeService() and 
7015           InitializeLifetimeService().
7017 2003-02-03  Patrik Torstensson
7019         * AppDomain.cs: New internalcalls for handling domain/context switches
7020         * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
7022 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7024         * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
7025         and ClearShadowCopyPath and fixed GetType ().
7027         * Attribute.cs: clean up.
7029         * Console.cs: removed UnixConsoleEncoding. Use Default.
7031 2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7033         * Attribute.cs: fixed all IsDefined overloads. Gotta fix
7034         GetCustomAttributes later.
7036 2003-01-31  Patrik Torstensson
7038         * Buffer.cs: Changed access level of BlockCopyInternal
7040 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
7042         * String.cs, IntegerFormatter.cs: use const where appropriate.
7044 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7046         * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
7047         reporting.
7049 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7051         * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
7052         The argument ICustomAttributeProvider can be of other types different
7053         from Type. Handle it.
7055 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
7057         * DateTime.cs: fix FromFileTime so the time returned by 
7058         File::GetLastModificationTime etc. is in the correct timezone.
7060 2003-01-28  Patrik Torstensson
7061         * Exception.cs: reverted formating/endline changes (sorry guys)
7063 2003-01-28  Patrik Torstensson
7065         * MarshalByRefObject.cs: implemented GetObjectIdentity
7066         * Exception.cs: added support for remote exceptions
7068 2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7070         * DateTime.cs: fixed bug #37225.
7072 2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7074         * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
7076 2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
7078         * AppDomain.cs: Added DoTypeResolve method which will be called by
7079         the runtime to raise TypeResolve events.
7081 2003-01-27  Duncan Mak  <duncan@ximian.com>
7083         * Enum.cs (ToType): Implement this using Convert.ToType.
7085 2003-01-21  Miguel de Icaza  <miguel@ximian.com>
7087         * Math.cs: Remove Pow's implementation body as it was wrong.  The
7088         C code does the right thing.  The code was trying to handle a
7089         number of cases, and that was incorrect.
7091 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7093         * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
7094         bug #37113.
7096 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7098         * Enum.cs: added caching to GetInfo.
7100 2003-01-23  Dick Porter  <dick@ximian.com>
7102         * Environment.cs (System): Implemented ExitCode
7104 2003-01-23  Zoltan Varga  <vargaz@freemail.hu>
7106         * Type.cs (IsInstanceOfType): fixed regression caused by the change
7107         to IsSubclassOf().
7109 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7111         * MonoType.cs: re-added lines that were removed in the previous commit.
7113 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
7115         * Type.cs: corrected property IsSerializable. It should always return
7116         true for enums and delegates
7117         * MonoType.cs: added serialization support.
7118         * Delegate.cs: added serialization support.
7119         * DBNull.cs: added serialization support.
7120         * UnitySerializationHolder.cs: supports serialization of Assembly,
7121         MonoType and DBNull.
7122         * DelegateSerializationHolder.cs: added.
7124 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7126         * Exception.cs: changed default message to match MS one.
7128 2003-01-12  Patrik Torstensson <totte@race-x-change.com>
7130         * String.cs: Fixed bug with CompareOrdinal
7132 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7134         * Enum.cs: implements IFormattable.
7136 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7138         * AppDomain.cs: implemented DoCallBack method.
7139         * MonoType.cs:
7140         (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
7141         Public, Instance.
7143         NUnit2 tests start moving.
7145 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7147         * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
7148         instantiate an abstract class.
7150 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7152         * Type.cs:
7153         (IsSubclassOf): return false when null. Use != instead of Equals.
7155 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7157         * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
7159 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
7161         * MonoType.cs: fixed Namespace property for nested types.
7163 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
7165         * MonoCustomAttrs.cs: create properly typed arrays when returning
7166         arrays of attributes of a given type.
7168 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
7170         * MonoType.cs: fixed MemberType property for nested types.
7172 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7174         * String.cs: fixed bug #36209.
7176 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
7178         * Activator.cs: implemented method GetObject.
7180 2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>
7182         * Activator.cs: Since the documentation indicates the method
7183         either succeeds or throws one of the listed exceptions, we weren't
7184         expecting that CreateInstance might be returning null.
7186         For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
7188 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
7190         * MarshalByRefObject.cs: implemented CreateObjRef.
7192 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7194         * DateTime.cs: fixed bug #30076.
7195         * TimeZone.cs: provide the parameter name in a exception.
7197 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7199         * DecimalFormatter.cs: fixed bug #35560.
7201 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
7203         * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
7205 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7207         * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
7208         nulls. Fixes #34909.
7210 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7212         * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
7213         returns a non-null assembly.
7215 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7217         * MulticastDelegate.cs: make GetInvocationList work for more than 1
7218         delegate.
7220 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7222         * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
7223         if this is the correct order of invocation.
7225 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7227         * Type.cs: changed the signature of internal_from_name. Modified
7228         the overloads of GetType to use it and check the typeName argument.
7229         Implemented FindInterfaces.
7231 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7233         * MarshalByRefObject.cs: undo latest changes. It breaks the build by
7234         some obscure reasons (try make -f makefile.gnu using a corlib which has
7235         the modified version).
7237 2002-11-26  Miguel de Icaza  <miguel@ximian.com>
7239         * String.cs (Concat): Reduce the number of compares required. 
7241 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
7243         * Activator.cs: throw a MissingMethodException if the default
7244         constructor is not found in CreateInstance.
7246 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7248         * String.cs:
7249         (Equals (str, str)): use 'as' instead of casting to object.
7250         (Equals (obj)): check the length of the strings (until now,
7251         "Hello".Equals ((object) "Hellow World!) was true!).
7253 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7255         * MonoType.cs: implemented GetEvent (name, flags).
7257 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7259         * AppDomain.cs: implemented a couple of methods called from the runtime
7260         to fire AssemblyLoad and AssemblyResolve events.
7262 2002-10-31  Dick Porter  <dick@ximian.com>
7264         * Environment.cs: MonoIO methods now have an error parameter
7266 2002-10-29  Zoltan Varga  <vargaz@freemail.hu>
7268         * Enum.cs: Added support for whitespaces in Enum:Parse().
7270 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7272         * Type.cs: fixed GetProperty (string, Type []) and removed get_property
7273         internal call. Closes bug #32992.
7275 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7277         * Exception.cs: display the inner exception, if any, in ToString ().
7279 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7281         * Environment.cs: fixed StackTrace property.
7283 2002-10-16  Nick Drochak  <ndrochak@gol.com>
7285         * Enum.cs (Parse): Then fix the code so that it works too.
7287 2002-10-15  Nick Drochak  <ndrochak@gol.com>
7289         * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
7291 2002-10-12  Nick Drochak  <ndrochak@gol.com>
7293         * IntegerFormatter.cs: Fix compiler warnings.
7295 2002-10-11  Tim Haynes <thaynes@openlinksw.com>
7297         * Type.cs (GetConstructors): Use the correct flags.
7299 2002-10-09  Nick Drochak  <ndrochak@gol.com>
7301         * IntegerFormatter.cs: Suppress insignificant leading zeros
7303 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
7305         * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
7306         <stonewell@21cn.com> to return also derived types.
7308 2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7310         * Activator.cs: little fix in CreateInstance (Type, bool).
7312 2002-09-19  Duncan Mak  <duncan@ximian.com>
7314         * Array.cs (CopyTo): Revert back to 1.40, this is stopping
7315         I18N/Common from building right now.
7317 2002-09-19  Nick Drochak  <ndrochak@gol.com>
7319         * Array.cs (CopyTo): Account for Object type and base (primitive) types
7320         * Type.cs (IsAssignableFrom): return false for a null parameter
7322 2002-09-19  Nick Drochak <ndrochak@gol.com>
7324         * Array.cs (CopyTo): Check that source type can be cast automatically
7325         to the destination type.
7327 2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7329         * Type.cs: implemented IsAssignableFrom, DefaultBinder and
7330         GetDefaultMembers.
7332 2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7334         * Char.cs: implemented ToString (char)
7335         * IntegerFormatter.cs: made it internal.
7337 2002-09-13  Nick Drochak  <ndrochak@gol.com>
7339         * Enum.cs (Format): handle the "d" format for both signed and unsigned
7340         underlying types.
7342 2002-09-12  Dick Porter  <dick@ximian.com>
7344         * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
7345         attribute, as there doesn't appear to be any struct
7346         layout-depending code here (and corcompare says it should be
7347         LayoutKind.Sequential)
7349         * Decimal.cs: Stub out missing methods, add
7350         [DecimalConstantAttribute] to the constant fields (as shown by
7351         corcompare).
7353         * LocalDataStoreSlot.cs: 
7354         * Environment.cs: 
7355         * Char.cs: 
7356         * Array.cs: Stub out missing methods.
7358         * TypedReference.cs: 
7359         * ArgIterator.cs: Stub out
7361         * AppDomainSetup.cs: 
7362         * AppDomain.cs: Stub out missing methods, add missing
7363         ClassInterface(ClassInterfaceType.None) attribute.
7365 2002-09-12  Nick Drochak  <ndrochak@gol.com>
7367         * Double.cs (ToString): Throw exception when "X" format is passed in.
7369 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
7371         * MonoType.cs: implemented Module property.
7373 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
7375         * MonoType.cs, Type.cs: implemented InvokeMember.
7377 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
7379         * Delegate.cs: check the type passed to CreateDelegate is a Delegate
7380         type. Check the method signature matches.
7382 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
7384         * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
7386 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
7388         * Console.cs: Specify an encoder, otherwise we will get the UTF8
7389         encoder that by default emits the byte markers.
7391 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
7393         * Delegate.cs: look also for non-public methods until we have the
7394         security checks in place.
7396 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
7398         * MonoType.cs: consider also the full name in GetInterface.
7400 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
7402         * MonoType.cs: implemented GetMembers, GetConstructorImpl and
7403         GetMethodImpl using the binder.
7404         * Type.cs: GetConstructorImpl/GetConstructor fixes.
7406 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
7407         * Enum.cs: Get rid of warning CS0162.
7409 2002-09-04  Miguel de Icaza  <miguel@ximian.com>
7411         * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
7412         actual value instead of public.
7414         * LocalDataStoreSlot.cs: Make constructor internal.
7416         * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
7417         SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
7418         instead of public.
7420 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
7421         * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
7422                    properly.
7424 2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7426         * DateTime.cs: fixed buglet.
7428 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
7430         * MonoType.cs: speedup access to common data.
7432 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7434         * Double.cs: implemented TryParse.
7436         * Math.cs: PowImpl is now private.
7438         * MissingFieldException.cs: implemented Message.
7440         * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
7442         * _AppDomain.cs: Uncommented ToString.
7444 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7446         * Type.cs:
7447         (IsValueTypeImpl): it's virtual, not abstract. Implemented.
7449 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7451         * ArgumentException.cs: use the field instead of the property for
7452         param_name.
7454         * ArgumentOutOfRangeException.cs: modified Message.
7456         * DateTime.cs: 
7457         (_DoParse): throw out of range exception for year. Removed check
7458         for month (it's done in the constructor).
7460 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
7462         * Environment.cs: Implemented OSVersion property.
7464 2002-08-21  Dietmar Maurer  <dietmar@ximian.com>
7466         * Exception.cs: set stack_trace to null
7468 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
7470         * AppDomain.cs: implemented ToString().
7472 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7474         * AppDomain.cs: securityInfo can be null in CreateDomain.
7476 2002-08-19  Dick Porter  <dick@ximian.com>
7478         * MonoType.cs: Add a space before the Assembly name in
7479         AssemblyQualifiedName (needed for resource files so the MS runtime
7480         can load types)
7482 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7484         * AppDomain.cs: parameter name when throwing ArgumentNullException.
7486         * ArgumentException.cs: modified Message to do what MS does.
7488         * ArgumentNullException.cs: don't use {0} in message.
7490         * Exception.cs: use Message property in ToString ().
7492 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
7494         * WeakReference.cs: Changed the constructor and GetObjectData
7495         method needed for ISerializable implementation in order to be
7496         compatible with SOAP generated by MS.
7498 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
7500         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
7502 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
7504         * Exception.cs (ToString): changed the ouput format.
7506 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
7508         * MonoType.cs: moved get_method icall to this class, we can
7509         remove it as soon someone provides a full featured GetMethodImpl.
7511         * Type.cs: use GetMethodImpl everywhere.
7513         * Delegate.cs: new CreateDelegate implementations.
7515 2002-08-06  Tim Coleman <tim@timcoleman.com>
7516         * MonoType.cs: 
7517                 Fix bug #28582.  Now checks parameters for properties
7518                 in GetPropertyImpl.
7520 2002-08-04  Nick Drochak  <ndrochak@gol.com>
7522         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
7524 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7526         * String.cs:
7527         (FormatSpecifier): allow white space between the comman and the width
7528         specifier.
7530 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7532         * Int32.cs:
7533         * Int64.cs:
7534         * UInt32.cs:
7535         * UInt64.cs: fixed bug #28050. May be a MS bug?
7537 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
7539         * MonoType.cs: fix IsArrayImpl.
7541 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7543         * String.cs: make ToLower (culture) and ToUpper (culture) use the
7544         default ToLower and ToUpper and don't throw NotImplemented.
7546 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
7548         * Type.cs: make GettTypeCode an icall. Test implementation of
7549         GetMember().
7551 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7553         * AppDomainSetup.cs: implemented LoaderOptimization.
7555 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7557         * Activator.cs: some more intermediate results checking in
7558         in CreateInstance and CreateInstanceFrom and use GetConstructor and
7559         Invoke only with Type [] until the other overloaded versions work.
7561 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7563         * Activator.cs: reformatted. Implemented CreateInstance* methods
7564         that return ObjectHandle.
7566         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
7568 2002-07-03  Nick Drochak  <ndrochak@gol.com>
7570         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
7571         the divisor is not) and avoid the icall, which seems to have a bug.
7573 2002-07-03  Nick Drochak  <ndrochak@gol.com>
7575         * Double.cs (CompareTo): Correctly handle the case where the instance
7576         is NaN. Also return 0 if the values are equal.
7578 2002/07/03  Nick Drochak <ndrochak@gol.com>
7580         * MissingMethodException: Add missing Message property
7581         * MissingMemberException: Add missing Message property
7583 2002-06-30  Nick Drochak  <ndrochak@gol.com>
7585         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
7586         subtraction trick, it doesn't work when the values have a diference of
7587         less than one.
7589         * Single.cs (CompareTo): same
7591 2002-06-27  Martin Baulig  <martin@gnome.org>
7593         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
7594         constructor argument.  [FIXME: The implicit conversion to an
7595         unsigned integer doesn't work with mcs.]
7597 2002-06-26  Martin Baulig  <martin@gnome.org>
7599         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
7600         not `S = System'.  This file now compiles with mcs.
7602         * String.cs: Removed the already ifdef-outed __arglist Concat function
7603         to make it compile with mcs.
7605 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7607         * IntegerFormatter.cs:
7608         (FormatParse.FormatNumber): fixed custom format for negative numbers.
7610 2002-06-21  Martin Baulig  <martin@gnome.org>
7612         * Double.cs: Replace the private `enum State' with constants since this
7613         will avoid some bigger headaches in mcs.
7615 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
7617         * TimeSpan.cs: do not pollute the namespace with the
7618         System.Parser name.
7620 2002-06-18  Nick Drochak  <ndrochak@gol.com>
7622         * ArgumentException.cs: Use the message given in the constructor when
7623         accessing the Message property.  Thanks to Dietmar for the help with 
7624         "base".
7626 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
7628         * MonoType.cs: GetField is now a InternalCall
7630 2002-06-13  Nick Drochak  <ndrochak@gol.com>
7632         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
7633         sortable format(s), e.g. "2002-02-25"
7635 2002/06/12  Nick Drochak <ndrochak@gol.com>
7637         * Random.cs (Next): Fix math error.  Return a number within the range.
7639 2002-06-12  Nick Drochak  <ndrochak@gol.com>
7641         * String.cs (IndexOf): Return -1 if start index is equal to string
7642         length.
7644 2002-06-10  Duncan Mak  <duncan@ximian.com>
7646         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
7647         (ToType): Added null field in conversionTable to avoid
7648         IndexOutOfRangeException. Changed what exceptions we throw to match
7649         the spec.
7650         
7651 2002-06-11  Nick Drochak  <ndrochak@gol.com>
7653         * Int64.cs (Parse): Added unique strings to the messages where we throw
7654         a FormatException. Needed these to debug, so just left them in since
7655         they might be useful later. Fixed Currency parsing where we weren't
7656         looking at CurrencyDecimalSeparator, etc.
7658 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>
7660         * DateTime.cs: fixes to pass tests M0 to M6:
7661                 if yy pattern then year values >= 30 are in 20th century
7662                 rfc1123 pattern is always in GMT, therefor useutc must be false
7663         made GetNow() internal static so it can be called from TimeZone.
7664         * TimeZone.cs: removed dependency on year 2002 from initialization of 
7665         current timezone.
7667 2002-06-09  Duncan Mak  <duncan@ximian.com>
7669         * Convert.cs (ToType): Rearranged what Exceptions we throw to
7670         match MS behavior.
7672 2002-06-08  Duncan Mak  <duncan@ximian.com>
7674         * Decimal.cs: Added support for the IConvertible interface.
7676 2002-06-08  Martin Baulig  <martin@gnome.org>
7678         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
7679         doesn't necessarily need to be of the enum's underlying type.
7681 2002/06/07  Nick Drochak <ndrochak@gol.com>
7683         * String.cs: Add [Serializable] to class
7684         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
7686 2002-06-04  Nick Drochak  <ndrochak@gol.com>
7688         * Double.cs (Parse): Recognize the group separator string, but still we
7689         don't check the format for the proper number of digits between
7690         separators. Also throw OverflowException when we get Pos or Neg
7691         Infinity from runtime.
7693 2002-06-03  Duncan Mak  <duncan@ximian.com>
7695         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
7697 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
7699         * Type.cs: fixed GetTypeCode.
7701 2002-06-02  Duncan Mak  <duncan@ximian.com>
7703         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
7704         cast from an int so that we throw OverFlowException correctly.
7705         
7706         (ToInt64): Use a new 64bit version of ConvertToBase.
7707         
7708         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
7709         and Int32.MaxValue).
7711         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
7713 2002-06-02  Nick Drochak  <ndrochak@gol.com>
7715         * Convert.cs (ToSByte): Check for special value.
7716         * Single.cs (Parse): 
7717         * UInt16.cs (Parse):
7718         * UInt32.cs (Parse): Throw OverflowException if negative
7720 2002-06-02  Duncan Mak  <duncan@ximian.com>
7722         * Convert.cs (DBNull): Point it to DBNull.Value.
7723         (IsDBNull): Instead of checking typecodes, just check to see if
7724         it's the same as the DBNull field.
7726 2002-06-02  Nick Drochak  <ndrochak@gol.com>
7728         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
7730 2002-06-02  Duncan Mak  <duncan@ximian.com>
7732         * Char.cs (Parse): Simplify the Exception handling.
7734         * Convert.cs (ToDecimal): Remove call to Math.Round () when
7735         converting from a float.
7737 2002-05-30  Martin Baulig  <martin@gnome.org>
7739         * MonoType.cs (GetInterface): Implemented.
7741 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
7743         * Activator.cs: implemented CreateInstance ().
7745 2002-05-22  Duncan Mak  <duncan@ximian.com>
7747         * Convert.cs (ConvertToBase): Added new 64bit version.
7748         (BuildConvertedString64): New 64bit version of
7749         BuildConvertedString.
7751         This fixes bug 25068.
7753         (ConvertFromBase): Added additional test for checking if the
7754         digits are valid. Thanks to Miguel for coming up with this test.
7756         This fixes bug 25071.
7757         
7758 2002-05-21  Duncan Mak  <duncan@ximian.com>
7760         * Convert.cs (ToType): Rearranged to fit the new layout of
7761         conversionTable.
7763         (conversionTable): Rearranged to fit the layout of the
7764         System.TypeCode enum.
7766         This should fix bug 25075.
7767         
7768 2002-05-21  Duncan Mak  <duncan@ximian.com>
7770         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
7771         mixed up the two code paths, one for converting to a specific base
7772         (this case), another from converting from a foreign base to base10
7773         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
7775         * Convert.cs (ToByte)
7776         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
7777         that we won't confuse FormatException with OverflowException.
7779 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
7781         * Environment.cs: CommandLine missed spaces between arguments.
7782         Implemented StackTrace. Returning MachineName in UserDomainName
7783         instead of null.
7784         
7785 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
7787         * MonoCustomAttrs.cs: handle inherit argument.
7789 2002-05-21  Nick Drochak  <ndrochak@gol.com>
7791         * Math.cs (Pow): Change icall method name and insert parameter
7792         checks in for infinities and NaN.
7794 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
7796         * Double.cs (Parse): Reimplement by cleaning up the string first,
7797         and then passing to strtof in the mono runtime.
7799         * Single.cs (Parse): Use the Double implementation and cast to
7800         float. 
7802 2002-05-21  Nick Drochak  <ndrochak@gol.com>
7804         * Math.cs 
7805                 (Ceiling): Check for "special" values
7806                 (Floor): Check for "special" values
7807                 (Round): Fix off-by-one error on decimal shifting
7809 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>
7811         * DateTime.cs: ToString () using "G" format specifier 
7813 2002-05-19  Martin Baulig  <martin@gnome.org>
7815         * Convert.cs (FromBase64CharArray): Do correct exception handling.
7817 2002-05-19  Martin Baulig  <martin@gnome.org>
7819         * Convert.cs (FromBase64CharArray): Convert the char array using
7820         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
7821         a byte array.
7823 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
7825         * MonoType.cs: Style changes.
7827         * Type.cs: Style changes.
7829 2002-05-16  Piers Haken <piersh@friksit.com
7831         * UInt64.cs: fix declaration of IConvertible.To* overrides.
7833 2002-05-16  Nick Drochak  <ndrochak@gol.com>
7835         * BitConverter.cs (ToString): Add parameter check for invalid start 
7836         index.
7838         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
7839         now that StreamWriter uses buffering
7841 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
7843         * Double.cs: Oops.  Also handle exponents without finding a dot.
7845 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7847         * ChangeLog: removed empty entry at the top of the file.
7849         * Int32.cs: made static functions used by Parse internal.
7851         * Int64.cs:
7852         * UInt32.cs:
7853         * UInt64.cs: removed static fucntions used by Parse and use the ones
7854         in Int32.cs
7856 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
7858         * IServiceProvider.cs: added using System
7860 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
7862         * Single.cs: copied ToString() and Parse() methods from 
7863         Double to Single and modified a tiny bit for Single.  
7864         There is still a FIXME for Double and Single about
7865         passing the format and provider info to the icall too.
7867 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7869         * Int32.cs:
7870         * Int64.cs:
7871         * UInt32.cs:
7872         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
7873         Don't use a delegate to test for valid digits.
7875 2002-05-01  Duncan Mak  <duncan@ximian.com>
7877         * Convert.cs: 
7878         * Math.cs: Added missing CLSCompliant attributes where necessary.
7879         
7880 2002-04-30  Duncan Mak  <duncan@ximian.com>
7882         * ArgumentException.cs (Message): 
7883         * ArgumentOutOfRangeException.cs (Message): Added.
7885 2002-04-30  Nick Drochak  <ndrochak@gol.com>
7887         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
7889 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
7891         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
7893 2002-04-28  Duncan Mak  <duncan@ximian.com>
7895         * DivideByZeroException.cs: Added missing serialization constructor.
7897         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
7899 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7901         * Math.cs: fix Floor () and Round (). Closes #23960.
7903 2002-04-27  Nick Drochak  <ndrochak@gol.com>
7905         * Array.cs (IList.Contains): Should throw a RankException if this is 
7906         called on a Rank > 1 array. Not in the docs, but this is what the 
7907         MS.NET does.
7909 2002-04-26  Duncan Mak  <duncan@ximian.com>
7911         * MissingMemberException.cs: Made the message variable 'protected'
7912         instead of 'private', so that we can see it in
7913         MissingMethodException and MissingFieldException.
7915         * MissingFieldException.cs:
7916         * MissingMethodException.cs: Added missing (string, string)
7917         constructor, and also the Message property.
7919 2002-04-26  Martin Baulig  <martin@gnome.org>
7921         * Enum.cs: Implemented the IConvertible methods.
7923 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7925         * SByte.cs: little change in Parse (string) to avoid incorrect
7926         OverflowException thrown (reported by nickd).
7928 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
7930         * ValueType.cs: Add Serializable attribute.
7932         * String.cs: ifdef-out out the __arglist Concat function until I
7933         add support for that to mcs.
7935 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
7937         * AppDomain.cs (GetValue): usage of the correct icall (bug)
7939 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
7941         * GC.cs: implement most of the methods as icalls.
7943 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7945         * DecimalFormatter.cs (ToString): return correct value when the
7946         decimal number is 0.
7948 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
7949         
7950         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
7951         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
7953 2002-04-24  Nick Drochak  <ndrochak@gol.com>
7955         * Double.cs (Parse): Handle case where there are no digits before the 
7956         decimal point, such as ".1".
7958 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
7960         * Int32.cs:
7961         * UInt32.cs:
7962         * Int64.cs:
7963         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
7965 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
7967         * String.cs (Split): fixed invalid split of count 0 and 1.
7968         
7969 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
7970         
7971         * String.cs (LastIndexOf): fixed argument checking.
7972         * String.cs (Equals): made internal for performace.
7974 2002-04-23  Nick Drochak  <ndrochak@gol.com>
7976         * String.cs (Join): check argument and throw exception if needed
7978 2002-04-23  Nick Drochak  <ndrochak@gol.com>
7980         * String.cs (StartsWith): check argument and throw exception if needed
7982 2002-04-22  Nick Drochak  <ndrochak@gol.com>
7984         * String.cs (IndexOfAny): check arguments and throw exceptions as
7985         neccessary.  ALso remove some debug WriteLines.
7987 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
7989         * String.cs: use internal constructors
7990         buf fix in Concat.
7992 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
7994         * MonoType.cs: make GetElementType its own icall.
7996 2002-04-18  Nick Drochak <ndrochak@gol.com>
7998         * String.cs: Modified file. Re-add methods needed by the unit tests.
8000 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
8002         * String.cs: some code speedups and restored GetTypeCode().
8004 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
8006         * String.cs: New implementation using internal calls.
8007         
8008 2002-04-16  Nick Drochak  <ndrochak@gol.com>
8010         * DecimalFormatter.cs: Trim off excess null characters from the string
8011         that decimal2string gives back.
8013 2002-04-16  Nick Drochak  <ndrochak@gol.com>
8015         * String.cs (SubString): revert my change.  I can't reproduce the
8016         problem anymore.
8018 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8020         * Attribute.cs: added GetHashCode and Equals.
8022 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8024         * Enum.cs: little improvements to Format ().
8026 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
8028         * String.cs: internalcall GetHashCode().
8029         * Array.cS: optimize access to elements.
8031 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
8033         * String.cs: make IndexOfAny() use an internalcall.
8035 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8037         * Int32.cs:
8038         * UInt32.cs:
8039         * Int64.cs: 
8040         * UInt64.cs: fixed error when testing for validity of flags.
8042 2002-04-11  Nick Drochak  <ndrochak@gol.com>
8044         * Double.cs: Use an internal call for ToString(). This is just a simple
8045         implementation to get away from throwing a NotImplementedException.
8047 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8049         * Int32.cs:
8050         * UInt32.cs:
8051         * Int64.cs: 
8052         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
8053         lupus.
8055         * Int32.cs:
8056         * Int64.cs: throw an OverFlowException when parsing a string 
8057         containing a dot followed by any non '0' number.
8059 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8061         * Byte.cs:
8062         * UInt16.cs:
8063         * UInt32.cs:
8064         * UInt64.cs: added complex Parse ().
8066 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8068         * SByte.cs:
8069         * Int16.cs:
8070         * Int32.cs:
8071         * Int64.cs: added complex Parse ().
8073 2002-04-09  Nick Drochak  <ndrochak@gol.com>
8075         * Array.cs (BinarySearch): Add checks on paramters before using them
8076         and throw exceptions as needed.
8078         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
8079         "G" format to "F" if so.
8081 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
8083         * MonoCustomAttrs.cs: return arrays of type Attribute[]
8084         instead of object[].
8086 2002/04/09  Nick Drochak <ndrochak@gol.com>
8088         * String.cs (Substring): Copy only non-null characters to the new
8089         string.
8091 2002-04-09  Nick Drochak  <ndrochak@gol.com>
8093         * IntegerFormatter.cs: Don't use a format character to indicate a
8094         custom format was passed in. It was using 'z' to indicate a custom
8095         format, but really it should throw a format exception if the user
8096         tries to use "z" as the format string. Now it does.
8098         * Activator.cs: New File.
8100 2002-04-08  Nick Drochak  <ndrochak@gol.com>
8102         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
8103         applied to an enum. Need to handle the different possible integer
8104         types of an enum somehow.  Can anyone say generics?
8106 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
8108         * Convert.cs: switched the To*(object) methods to use
8109         IConvertible directly instead of calling ChangeType
8111 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
8113         * ValueType.cs: make Equals() an internalcall.
8115 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
8117         * Type.cs: also look for nested types in FindMembers.
8118         * MonoType.cs: make GetNestedTypes() an internalcall.
8120 2002-04-05  Nick Drochak  <ndrochak@gol.com>
8122         * Enum.cs (Parse): Handle different underlying types.
8124 2002/04/04 Nick Drochak <ndrochak@gol.com>
8126         * Enum.cs (IsDefined): Throw exception when type of value to look for
8127         is not the correct one.  Attempt to have it work with string values
8128         too, but not sure if the unit tests are getting that far yet.
8130 2002-04-04  Nick Drochak  <ndrochak@gol.com>
8132         * Decimal.cs: Fix a couple of typos.
8134 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
8136         * Enum.cs: the values array is of the enum and not of the underlying
8137         type. Updates and some bug fixes.
8138         * MonoType.cs: make the internalcall return FullName instead of the
8139         assembly qualified name.
8140         * Type.cs: make ToString () simply return FullName.
8142 2002-04-03  Nick Drochak  <ndrochak@gol.com>
8144         * Type.cs (GetTypeCode): provide some of the implementation for this
8145         method.  It's still too simplistic to be considered complete.
8147 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
8149         * Object.cs: fixed FieldGetter/FieldSetter signature
8151 2002-04-02  Nick Drochak  <ndrochak@gol.com>
8153         * Environment.cs: add MonoTODO's on parts that should have it.
8155 2002-04-01  Nick Drochak  <ndrochak@gol.com>
8157         * Enum.cs: added reality checks (check parameters to most methods that
8158         need them).
8160 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
8162         * Object.cs: added FieldGetter/FieldSetter
8164 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8166         * IntegerFormatter.cs: fixed initialization error in static
8167         constructor.
8169 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
8171         * Delegate.cs: added new field to store a trampoline function
8173 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
8175         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
8176         make custom format strings work (not fully functional yet).
8178 2002/03/28  Nick Drochak <ndrochak@gol.com>
8180         * IntegerFormatter.cs: Change class from internal to public.  Add
8181         necessary [CLSCompliant(false)] attributes.
8183 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
8184         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
8185         (was a typo)
8187 2002-03-28  Nick Drochak  <ndrochak@gol.com>
8189         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
8191 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
8193         * Console.cs: Modified to get std handles from MonoIO.
8194         * Environment.cs: removed PAL dependencies.
8196 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
8198         * String.cs (System): Removed internal enumeration, because
8199         bootstrapping the corlib at this point does not support
8200         enumerations. 
8202         * IntPtr.cs: Temporary work-around until I fix the assembly
8203         attributes bug.
8205 2002-03-24  Martin Baulig  <martin@gnome.org>
8207         * Enum.cs (GetValues): According to the docu this is sorted after
8208         values, not names.
8210         * String.cs (System): Removed enumeration, because it is pretty
8211         hard to support enumerations in /nostdlib mode for the core types.
8213 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
8215         * Array.cs: move error handling in the catch block.
8216         * MulticastDelegate.cs: remove == and != operators that were
8217         removed with the delegate changes (when you add stuff, please do not
8218         remove existing functionality!).
8219         * Type.cs: if a property is not found in a type, search for it
8220         in the parent types, too.
8222 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
8223         
8224         * Math.cs: changed to use icall instead of PAL.
8226 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
8228         * Double.cs: added check for NaN (Bug [22082])
8230 2002-03-19  Nick Drochak  <ndrochak@gol.com>
8232         * Enum.cs (Equals): check for null and throw if it is.
8233         * Enum.cs (Format): check for null parameters and throw if necessary.
8234         This method still needs more argument checking.
8236 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
8238         * Enum.cs (Equals): check if Enums are of the same type
8240 2002-03-18  Nick Drochak  <ndrochak@gol.com>
8242         * Double.cs: Explicitly handle comparisons in CompareTo() for
8243         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
8245         * Enum.cs(CompareTo): Check types of values before trying to compare.
8246         Throw exceptions if types are invalid or don't match.
8248 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
8250         * Array.cs: Add some extra debugging information.
8252 2002-03-15  Nick Drochak  <ndrochak@gol.com>
8254         * Array.cs: Added IList and IEnumerable. 
8256 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
8258         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
8259         NonCLSCompliant. 
8261 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
8263         * Delegate.cs (Equals): also compare method_ptr 
8264         (GetHashCode): returm method_ptr as hash
8266 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
8267         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
8268         such as 42.ToString("0000000"), as these are (currently) not implemented
8269         in System.IntegerFormatter. TimeSpan luckely can do with Standard
8270         Numeric Format Strings, such as 42.ToString("D7").
8272 2002-03-12  Duncan Mak  <duncan@ximian.com>
8274         * FieldAccessException.cs: 
8275         * MethodAccessException.cs: 
8276         * PlatformNotSupportedException.cs: Inherit from
8277         MemberAccessException, not SystemException.
8279         * ObsoleteAttribute.cs: Made Message and IsError properties
8280         instead of fields.
8282 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
8284         * GC.cs: make SuppressFinalize() a nop.
8285         * Delegate.cs: fix == operator.
8287 2002-03-13  Nick Drochak  <ndrochak@gol.com>
8289         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
8290         runtime that goes with this patch.
8292 2002-03-10  Martin Baulig  <martin@gnome.org>
8294         * Int32.cs (Parse): Correctly parse negative numbers.
8296 2002-03-08  Martin Baulig  <martin@gnome.org>
8298         * String.cs (Split): Really fix it this time. Also adding several new
8299         testcase to the testsuite.       
8301 2002-03-08  Martin Baulig  <martin@gnome.org>
8303         * Array.cs (Copy): Optimized: removed duplicate null check, removed
8304         two duplicate GetLowerBound() calls and one duplicate IsValueType.
8306 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
8308         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
8309         * String.cs: use the dumb code for IndexOf(string): this is worth
8310         15-20 % speedup in mcs compile with mint.
8312 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
8314         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
8316 2002-03-07  Martin Baulig  <martin@gnome.org>
8318         * String.cs (Join): Throw an ArgumentNullException.
8319         (LastIndexOf (string,int,int)): This method does a backwards search,
8320         so startIndex points to the end of value, not to its beginning. Don't
8321         throw an exception if startIndex equals this.Length. Always return -1
8322         if startIndex is smaller than the length of value.
8323         (Replace (string,string)): Replace all occurences of oldValue.
8324         If newValue is null, all occurences of oldValue are to be removed.
8325         (Split (char[],int)): Return an empty array if maxCount is zero, throw
8326         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
8327         elements, not maxValue+1.
8329 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
8331         * MonoType.cs: make GetEvents() an internal call.
8332         * MulticastDelegate.cs: copy the passed in array.
8334 2002-03-06  Martin Baulig  <martin@gnome.org>
8336         * Array.cs (Copy): Use FastCopy when appropriate and do correct
8337         exception handling.
8339 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
8340         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
8341         some of the failures found be new tests (see ChangeLog in 
8342         Test/System). Comments added to this method, based on
8343         the representation invariant of this class, that (try to) explain
8344         why it now should be correct.
8346 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
8348         * Int64.cs (Parse): bug fix for max. negative value. 
8350 2002-03-07  Nick Drochak  <ndrochak@gol.com>
8352         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
8353         I need to understand what the difference between the attribute and
8354         the interface is.
8356 2002-03-06  Martin Baulig  <martin@gnome.org>
8358         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
8359         an InvalidCastException if the widening conversion failed. See
8360         testcases #M94-#M96.
8362         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
8363         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
8364         for this.
8366         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
8367         (Copy): Actually allow copying multi-dimensional arrays.
8369 2002-03-05  Duncan Mak  <duncan@ximian.com>
8371         * Convert.cs:
8372         (DBNull) Added the missing field.
8373         (IsDBNull) Fixed typo.
8374         (ToByte (string, int)) Implemented.
8375         (ToString (byte, int)) Implemented.
8376         (ConvertToBase)
8377         (BuildConvertedString) internal functions used for converting values to
8378         a specific base.
8380         * Int16.cs: 
8381         * Int32.cs:
8382         * Int64.cs:
8383         * Single.cs:
8384         * UInt16.cs: 
8385         * UInt32.cs: Implemented the IConvertible interface.    
8387         * CharEnumerator.cs: Renamed to variables to be clearer and
8388         changed some of the tests to conform to the 1.0 spec.
8390 2002-03-06  Martin Baulig  <martin@gnome.org>
8392         * Array.cs (Copy): Calculate absolute array position here and use
8393         GetValueImpl() and SetValueImpl() with that position. We can now
8394         copy multi-dimensional arrays.
8395         (CopyTo): Small bug fix.
8397 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
8399         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
8400         Nick (See VersionTest.cs).
8401         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
8402         error comparing the current position (idx) against the length of the
8403         string iterated and it set idx to an unrecognized special value (-2)
8405 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
8407         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
8408         to do this dirty work, but someone has to do it (and I need it to pass
8409         the "200 sample tests compiled on linux" mark).
8411 2002-03-06  Nick Drochak  <ndrochak@gol.com>
8413         * Attribute.cs
8414         * DecimalFormatter.cs
8415         * Delegate.cs
8416         * Double.cs
8417         * GC.cs
8418         * Int16.cs
8419         * Int32.cs
8420         * MonoType.cs
8421         * RuntimeMethodHandle.cs
8422         * RuntimeTypeHandle.cs
8423         * String.cs
8424         * Type.cs:
8425                 Add [MonoTODO]'s to places where we currently throw a
8426                 NotImplementedException.
8428 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
8430         * Int16.cs (Parse): do not overflow on max negative value
8432         * Int32.cs (Parse): do not overflow on max negative value
8434 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
8436         * Type.cs: fixed IsClass.
8437         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
8438         IsByRefImpl. Added GetInterfaces().
8439         * IServiceProvider.cs: compilation fix.
8441 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
8443         * Array.cs: allow copying an empty array to an empty array.
8445 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
8447         * String.cs: fixed LastIndexOf (string) to do a bit of argument
8448         checking.
8450 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
8451         * Version.cs: many fixes to failures found by the newly created
8452         test cases for this class. Specifically, the CompareTo member
8453         returned wrong values due to the use of Int32.MaxValue as a special
8454         value indicating an "undefined" version component. Also implemented the
8455         missing operators (==, <, >, etc.), one missing constructor and
8456         and some exception throwing.
8458 2002-03-04  Nick Drochak  <ndrochak@gol.com>
8460         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
8461         * Attribute.cs: Add missing attributes: Serializable and
8462         AttributeUsage(AttributeTargets.All)
8464 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
8466         * MonoType.cs: implemented GetConstructors(), GetFields(),
8467         GetMethods(), GetProperties().
8468         * Object.cs: added debugging icall obj_address().
8469         * Type.cs: fixed the binding flags for some Get* methods.
8470         Implemented FindMembers() as calls to the specific GetMember
8471         methods.
8473 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
8474         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
8475         should give an exception for n>=s.Length.
8477 2002-03-01  Martin Baulig  <martin@gnome.org>
8479         * Array.cs: More argument checking and bug fixing.
8481 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
8483         * BitConverter.cs: Indentation match
8485         * AppDomain.cs: Added MonoTODOs to this too.
8487         * Buffer.cs: Added MonoTODOs to this.
8489 2002-03-01  Martin Baulig  <martin@gnome.org>
8491         * Array.cs: Added argument checking to all methods where it was missing.
8493 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
8495         * BitConverter.cs: Fixed bugs in ToString methods
8497 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
8499         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
8501 2002-03-01  Nick Drochak  <ndrochak@gol.com>
8503         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
8504         ArgumentOutOfRangeException like the docs say.
8506 2002-03-01  Martin Baulig  <martin@gnome.org>
8508         * Enum.cs (CompareTo): Correctly override this method from IComparable.
8510         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
8512 2002-02-28  Martin Baulig  <martin@gnome.org>
8514         * String.cs: This file now passes the testsuite on Linux :-)
8515         
8516         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
8517         make them private and provide C# wrappers which do proper argument checking.
8519         * String.cs (Format): Correctly handle escaped brackets.
8521         * String.cs (_CompareChar): New internal function which compares two chars.
8522         (_Compare): Provide an internal compare method which can do all sorts of
8523         comparision and call it from all the Compare() methods. Also fixed a lot of
8524         bugs here, this code now actually passes the testsuite.
8526 2002-02-28  Duncan Mak  <duncan@ximian.com>
8528         * Convert.cs: Added the missing methods. The new class status page
8529         kicks ass, it even found my typos! Woohoo!
8530         (ConvertFromBase): Moved the Exception throwing in here and
8531         removed the other occurances so it's all centralized now.
8532         (ISDBNull): Implemented.
8533         (GetTypeCode): Implemented.
8535 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
8536         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
8537         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
8538         states that a lacking format should be interpreted as "N".  
8539         Also added [Serializable] attribute
8540         * TimeSpan.cs: some formatting and added the [Serializable] attribute
8542 2002-02-26  Duncan Mak  <duncan@ximian.com>
8544         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
8546 2002-02-26  Martin Baulig  <martin@gnome.org>
8548         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
8549         fields of the interncall GetTimeZoneData.
8551         * DateTime.cs: Implemented Parse and fixed a few bugs.
8553         * String.cs (TrimStart): Small fix.
8555 2002-02-26  Martin Baulig  <martin@gnome.org>
8557         * DateTime.cs: ParseExact is now fully functional.
8559         * String.cs (TrimEnd): Small fix.
8561 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
8562         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
8563         missing for about six months.
8565 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
8567         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
8569 2002-02-26  Martin Baulig  <martin@gnome.org>
8571         * DateTime.cs: Miguel already committed this, but there was still a
8572         ChangeLog entry for this missing ....
8573         We're now reusing functionality from TimeSpan, printing dates is
8574         fully implemented, currently working on parsing.
8576         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
8577         runtime for this.
8579 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
8581         * MonoType.cs: disable constructor.
8582         * Object.cs: make GetType() an internalcall.
8583         * Type.cs: added correct bindingflags to GetMethods ().
8584         All such calls should be reviewed to use the correct flags.
8586 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
8588         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
8589         argument.
8591 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
8593         * Type.cs: implemented IsAssignableFrom.
8595 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
8596         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
8597         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
8598         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
8599         The former is documented by Microsoft. The latter is how they
8600         actually implemented it in mscorlib:-)
8602 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
8604         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
8605         runtime.
8606         * MonoType.cs: Implemented custom attributes methods.
8609 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
8610         * Guid.cs: 
8612 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
8614         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
8615         runtime.
8616         * MonoType.cs: Implemented custom attributes methods.
8618 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
8620         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
8622 2002-02-19  Duncan Mak  <duncan@ximian.com>
8624         * Convert.cs: Finished up the missing methods in Convert. Added a
8625         new private method ConvertFromBase.
8627 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
8629         * String.cs: impl. IConvertible interface
8631 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
8632         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
8634 2002-02-18  Duncan Mak  <duncan@ximian.com>
8636         * Convert.cs: Changed from using Type.GetType (string) to just
8637         typeof (). Probably will speed things up a bit?         
8639 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
8641         * Array.cs:         
8642         1. Fix for GetUpperBound to return correct values
8643         2. made some Properties virtual
8644         3. Adds IsFixedSize and IsReadOnly properties.
8645         4. changes CreateInstance(Type,int[],int[]) to throw Exception
8646         when third arg is null. InternalCall CreateInstance changed to  
8647         CreateInstanceImpl
8648         5. Fixed array.GetUpperBound at a couple of places
8649         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
8650         7. Added two FIXME's in BinarySearch functions.
8652 2002-02-17  Duncan Mak  <duncan@ximian.com>
8654         * TimeZone.cs:  Applied the rest of Ajay's patch for    
8655         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
8656         it works!
8658 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
8659         * Guid.cs: added stub for Guid(string) ctor
8661 2002-02-17  Duncan Mak  <duncan@ximian.com>
8663         * Convert.cs: Near-complete implementation of Convert.cs
8665         Added all the To* methods taking (object) and
8666         (object, IFormatProvider) as parameters.
8668         Added [CLSCompliant (false)] attributes to methods dealing with
8669         unsigned types.
8671         Added the missing section on converting to and from DateTime. Only
8672         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
8674 2002-02-16  Duncan Mak  <duncan@ximian.com>
8676         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
8677         make IsDaylightSavingTime (DateTime) call 
8678         IsDaylightSavingTime (DateTime, DaylightTime).  
8679         
8680         Added internal class CurrentTimeZone from Ajay. It needs more work
8681         to fill in the appropriate internal calls.
8682         
8683 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
8685         * Type.cs: fix IsClass.
8687 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
8689         * String.cs: fix Trim().
8691 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
8693         * String.cs: fix more off by one errors.
8695 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
8697         * MonoType.cs: fix IsValueTypeImpl.
8698         * Type.cs: fix IsEnum. Implement Equals methods.
8700 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
8702         * Int32.cs: implement IConvertible interface.
8703         
8704 2002-02-12  Duncan Mak  <duncan@ximian.com>
8706         * TimeZone.cs: Implemented and added to CVS.
8708 2002-02-11  Duncan Mak  <duncan@ximian.com>
8710         * Convert.cs: Implemented the ChangeType () methods.
8712 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
8714         * Array.cs: make Clone() an internal call.
8716 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
8717         * Changed Guid.NewGuid so that it can use both System.Random and 
8718           System.Security.Cryptography.RandomNumberGenerator
8720 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
8721         * First version of Guid.NewGuid
8723 2002-02-08  Duncan Mak  <duncan@ximian.com>
8725         * RuntimeArgumentHandle.cs: Added to CVS.
8727 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
8729         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
8730         UnhandledExceptionEventHandler.cs: added delegates.
8732 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
8734         * MarshalByRefObject.cs: add ToString () method
8735         (apparently needed by nunit).
8736         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
8737         by it in the runtime.
8739 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
8740         
8741         * String.cs (Format): implemented
8743 2002-02-07  Duncan Mak  <duncan@ximian.com>
8744         
8745         * DuplicateWaitObjectException:
8746         * InvalidCastException:
8747         * NotImplementedException:
8748         * NotSupportedException:
8749         * NullReferenceException:
8750         * OutOfMemoryException:
8751         * OverflowException:
8752         * RankException:
8753         * StackOverflowException.cs:
8754         * UnauthorizedAccessException: Added missing constructor used for serialization.
8756 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
8758         * String.cs (System.Compare): bug fix 
8760 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
8762         * Enum.cs (Parse,  GetHashCode): impl. 
8764 2002-02-05  Duncan Mak  <duncan@ximian.com>
8766         * DBNull.cs: This is my first crack at the DBNull class. I think I
8767         actually got most of the IConvertible methods right, but I haven't
8768         done the research to test whether or not this is the correct
8769         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
8771         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
8773 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
8775         * Enum.cs: added more functionality (GetName, ToObject, Equals)
8777 2002-01-31  Duncan Mak  <duncan@ximian.com>
8779         * InvalidOperationException.cs:
8780         * NotFiniteNumberException.cs:
8781         * ObjectDisposedException.cs:
8782         * TypeInitializationException.cs: Added missing bits for serialization/
8783         
8784         * AppDomainUnloadedException.cs:
8785         * ApplicationException.cs:
8786         * ArgumentOutOfRangeException.cs:
8787         * ArithmeticException.cs:
8788         * ArrayTypeMismatchException:
8789         * BadImageFormatException.cs:
8790         * Exception.cs:
8791         * MissingMemberException.cs:
8792         * TypeLoadException.cs: Added missing bits for serialization.
8794 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
8795         * Guid.cs: implemented everything but Guid.NewGuid
8797 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
8799         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
8800         to have it in this interface and it screws up the method vtable setup.
8802 2002-01-28  Andrei Zmievski <andrei@php.net>
8804         * Double.cs: implemented IConvertible interface.
8806 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
8808         * ArgumentException.cs: Implement serialization constructor.
8809         (GetObjectData): Implement serializer.
8810         
8811         * ArgumentNullException.cs: Implement serialization constructor.
8813         * Exception.cs: Implement serialization constructor.
8814         (GetObjectData): Implement serializer.
8816 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
8818         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
8820 2002-01-23  Duncan Mak  <duncan@ximian.com>
8822         * EntryPointNotFoundException.cs:
8823         * FormatException: Added missing constructor and related bits.
8825         * TypeLoadException: Added missing constructor, methods and properties.
8827 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
8829         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
8830         manually getting the enumerator.
8832         (AppDomain.AppDomain): Prime the loaded assemblies with the
8833         assemblies loaded by the runtime in our behalf.
8835         * AppDomainSetup.cs: Remove private keyword, that is the default.
8836         Add a new property DisallowPublisherPolicy.
8838         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
8840 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
8842         * MonoType.cs, Type.cs: many updates, corrected implementation,
8843         completed stubs.
8845 2002-01-20  Andrei Zmievski <andrei@php.net>
8847         * Byte.cs:
8848         * Char.cs: implemented IConvertible interface.
8850         * Boolean.cs: use our own ToString() method directly.
8852 2002-01-20  Duncan Mak  <duncan@ximian.com>
8854         * Files I commited recently: Fixed indentation style.
8856 2002-01-20 Nick Drochak  <ndrochak@gol.com>
8858         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
8859         and delegates too. Added the appropriate usage flags.
8861 2002-01-18  Duncan Mak  <duncan@ximian.com>
8863         * CharEnumerator.cs: Implemented.
8864         * String.cs (System): Fixed the GetEnumerator () method(s).
8866         * ObsoleteAttribute.cs:
8867         * STAThreadAttribute.cs:
8868         * MTAThreadAttribute.cs:
8869         * ThreadStaticAttribute.cs:
8870         * LoaderOptimizationAttribute.cs:
8871         * PlatformNotSupportedException.cs:
8872         * LoaderOptimization.cs: Added to CVS.
8874 2002-01-18  Duncan Mak  <duncan@ximian.com>
8876         * AppDomainUnloadedException.cs:
8877         * MethodAccessException.cs:
8878         * ContextMarshalException.cs:
8879         * CannotUnloadAppDomainException.cs:
8880         * DllNotFoundException.cs:
8881         * EntryPointNotFoundException.cs:
8882         * FieldAccessException.cs:
8883         * TypeUnloadedException.cs:
8884         * MissingFieldException.cs: Added to CVS.
8886         * ApplicationException.cs: 
8887         * MemberAccessException.cs:
8888         * MissingMemberException.cs
8889         * MissingMethodException.cs:
8890         * SystemException.cs: Added [Serializable] attribute.
8892         * Exception.cs: Added [Serializable] attribute, made properties
8893         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
8894         spec.
8896         * ContextStaticAttribute.cs: Added [Serializable] attribute and
8897         put in the missing constructor.
8899         * Environment.cs: Commented out references to
8900         EnvironmentPermissionAttribute, because they're just stubbed out
8901         right now and has no implementation.
8903 2002-01-16  Andrei Zmievski <andrei@php.net>
8905         * Boolean.cs: implemented IConvertible interface
8907 2002-01-15  Nick Drochak  <ndrochak@gol.com>
8909         * ResolveEventArgs.cs: class should derive from EventArgs.
8911 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
8913         * String.cs (System): Use DefaultMemberName for the String class.
8915 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
8917         * String.cs: use IndexerName in index char accessor.
8919 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
8921         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
8922         * String.c: eliminate 64k+ method calls in search.
8923         * Type.cs: handle byref and array types in ToString ().
8925 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
8927         * Guid.cs: created first version
8929 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
8931         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
8933 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
8935         * MulticastDelegate.cs: add == and != operator stubs.
8936         * String.cs: check for null in == operator.
8937         * Type.cs: use a virtual method to get TypeAttributes.
8939 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
8940         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
8942 2002-01-09  Nick Drochak  <ndrochak@gol.com>
8943         
8944         * Environment.cs: Comment out Security attribute and put a MonoTODO
8945         there as a reminder.  We need mcs magic to handle security attributes in
8946         corlib.
8948 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
8949         * Created IAppDomainSetup.cs
8951 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
8952         * Created System._AppDomain interface in _AppDomain.cs
8954 2002-01-06  Nick Drochak  <ndrochak@gol.com>
8956         * ResolveEventArgs.cs: New File, completely implemented! ;)
8958 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
8960         * Enum.cs: dummy ToString impl.
8961         * String.cs: dummy format implementations to get compiler errors
8962         somewhat working.
8963         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
8965 2002-01-05  Ravi Pratap  <ravi@ximian.com>
8967         * TODOAttribute.cs : Augment some more; provide two constructors
8968         with support for a comment too.
8970 2002-01-05  Nick Drochak  <ndrochak@gol.com>
8972         * Uncommented those MonoTODO's now that Ravi's got
8973         the class in there
8975 2001-01-04  Ravi Pratap  <ravi@ximian.com>
8977         * TODOAttribute.cs : Actually add this time ;-)
8979         Change name to MonoTODO.
8981 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
8983         * String.cs (Trim): Fixed a few logic bugs in the code that
8984         calculated how much to trim off the end of the string.
8986 2001-01-04  Nick Drochak  <ndrochak@gol.com>
8987         
8988         * Commented out the [TODO] attributes for now.  We don't have the
8989         class written.  Also changed it to [MonoTODO]
8991 2002-01-04  Ravi Pratap  <ravi@ximian.com>
8993         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
8994         our class libraries that are incomplete.
8996         * Array.cs : Apply attribute wherever we find a FIXME which says
8997         we need something to be implemented there.
8999         * Int32.cs : Ditto.
9001         * MulticastDelegate.cs : Ditto.
9003         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
9004         RuntimeTypeHandle.cs : Ditto.
9006         * String.cs : Ditto.
9008         * Type.cs : Ditto.
9010         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
9012         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
9013         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
9015         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
9016         Delegate.cs : Ditto.
9018         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
9019         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
9020         
9021 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
9023         * Delegate.cs: add Remove() stub.
9024         * Enum.cs: add ToObject().
9025         * Type.cs: add IsEnum property.
9027 2002-01-03  Kristian Rietveld  <kris@gtk.org>
9029         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
9030         DateTime and object.
9032 2001-12-30  Nick Drochak  <ndrochak@gol.com>
9034         * Byte.cs (Parse): Add comments to aid in testing.
9036 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
9038         * Char.cs (Parse): Implement.
9040         * Byte.cs (Parse): Implement a fast parser.
9041         
9042         * SByte.cs (Parse): Implement a fast parser.
9044         * UInt16.cs (Parse): Implement a fast parser.
9045         
9046         * Int16.cs (Parse): Implement a fast parser.
9048         * UInt32.cs (Parse): Implement a fast parser.
9050         * Int32.cs (Parse): Implement a fast parser.
9052 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
9054         * Array.cs: fix null ref in sort code.
9055         * UInt64.cs: add bare-bones parse.
9057 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
9058         
9059         * Byte.cs: removed use of Regexes.
9061 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
9063         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
9064         IsDefined(), GetUnderlyingType().
9065         * String.cs: fix one instance of Compare().
9066         * Type.cs: implemented GetProperties(), GetProperty().
9068 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
9070         * Array.cs: implement CopyTo ().
9071         * Char.cs: implement ToString ().
9072         * Exception.cs: bugfix.
9073         * Int32.cs: bare-bones Parse ().
9074         * MonoType.cs: query the needed info with an internalcall.
9075         * String.cs: speedups, bugfixes, reduced copies.
9076         * Type.cs: added missing fields. Implemented many of the Is*
9077         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
9078         GetFields(), FindMembers(), ToString().
9079         
9080 2001-12-11  Dick Porter  <dick@ximian.com>
9082         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
9084         * Console.cs: Use handles rather than casting file descriptors
9086 2001-12-08  Nick Drochak  <ndrochak@gol.com>
9088         * Byte.cs (Parse): Start implementation. Parse(string) works, but
9089         now we need to handle other formats
9091 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
9093         * DateTime.cs: added an icall to GetNow()
9095 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
9097         * Double.cs: added the parse method from Bob Smith
9099 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
9101         * UInt64.cs: ditto.
9103         * UInt32.cs: ditto.
9105         * Int32.cs (Int32.CompareTo): Fix because we can not just
9106         substract the values.
9108         Return possitive value if the object is null.
9110         * Boolean.cs: (Boolean.CompareTo): ditto.
9112         * Int16.cs (Int16.CompareTo): ditto.
9114         * Byte.cs (Byte.CompareTo): ditto.
9116         * SByte.cs (SByte.CompareTo): ditto.
9118         * Char.cs (Char.CompareTo): ditto.
9119         
9120         * Decimal.cs (Decimal.CompareTo): ditto.
9122         * Int64.cs (Int64.CompareTo): ditto.
9124         * Single.cs: Ditto.
9126         * UInt16.cs: Ditto.
9128 2001-11-28  Nick Drochak <ndrochak@gol.com>
9130         * Byte.cs: Throw NotImplementedException for Parse.
9132 2001-11-27  Derek Holden  <dholden@draper.com>
9134         * IntegerFormatter.cs: Formatting of type "Number" was not
9135         using NumberFormatInfo.NumberNegativePattern.
9137 2001-11-26  Dick Porter  <dick@ximian.com>
9139         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
9140         the finalise routine any more
9142 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
9144         * ApplicationException.cs: internationalize by adding calls to
9145         Locale.GetText ().  And throw NotImplementedExceptions on calls
9146         that we have to implement.
9148         * Version.cs: Ditto.
9150         * ValueType.cs: ditto.
9152         * UnauthorizedAccessException.cs: ditto.
9154         * UInt32.cs: ditto.
9156         * UInt64.cs: ditto.
9158         * UInt16.cs: ditto.
9160         * TypeLoadException.cs: ditto
9162         * TypeInitializationException.cs: ditto.
9164         * Type.cs: ditto.
9166         * TimeSpan.cs: ditto.
9168         * SystemException.cs: ditto.
9170         * String.cs: ditto.
9172         * StackOverflowException.cs: ditto.x
9174         * Single.cs: ditto.
9176         * SByte.cs: ditto.
9178         * RuntimeTypeHandle.cs: ditto.
9180         * RuntimeMethodHandle.cs: ditto.
9182         * RuntimeFieldHandle.cs: ditto.
9184         * Random.cs: ditto.
9186         * OutOfMemoryException.cs: ditto.
9188         * OperatingSystem.cs: ditto.
9190         * ObjectDisposedException.cs: ditto.
9192         * NullReferenceException.cs: ditto.
9194         * NotImplementedException.cs: ditto.
9196         * NotFiniteNumberException.cs: ditto.o
9198         * MulticastNotSupportedException.cs: ditto.
9200         * MissingMethodException.cs: ditto.
9202         * MemberAccessException.cs: ditto.
9204         * Math.cs: ditto.
9206         * InvalidCastException.cs: ditto.
9208         * IntegerFormatter.cs: ditto.
9210         * Int32.cs: ditto.
9212         * Int16.cs: ditto.
9214         * IndexOutOfRangeException.cs: ditto.
9216         * Environment.cs: ditto
9218         * Enum.cs: ditto.
9220         * DuplicateWaitObjectException.cs: ditto.
9222         * DivideByZeroException.cs: ditto.
9224         * Delegate.cs: ditto
9226         * DecimalFormatter.cs: ditto.
9228         * Decimal.cs: ditto.
9230         * DateTime.cs: ditto.
9232         * Convert.cs: ditto.
9234         * Char.cs: ditto.
9236         * Byte.cs: ditto.
9238         * Boolean.cs: ditto.
9240         * ArrayTypeMismatchException.cs: ditto.
9242         * ArithmeticException.cs: ditto.
9244         * ArgumentOutOfRangeException.cs: ditto.
9246         * ArgumentNullException.cs: ditto.
9248         * Enum.cs: Make it derive from ValueType, add CompareTo method.
9250         * Attribute.cs: Reformat.
9252 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
9254         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
9255         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
9256         exception if the value is null too.
9258         * Char.cs (CompareTo): ditto.
9260         * ApplicationException.cs: Added constructor that does serialization.
9262         * ParamArrayAttribute.cs: Define attribute correctly.
9264 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
9266         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
9267         * Array.cs: fix Array.Copy.
9268         * AssemblyLoadEventArgs.cs: rename field.
9269         * CLSCompliantAttribute.cs: use correct name for the class.
9270         * Char.cs: fix IsLetter.
9271         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
9272         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
9273         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
9274         * Delegate.cs: renamed target field to m_target.
9275         * Enum.cs: added missing methods.
9276         * MonoType.cs: add a constructor and some needed properties.
9277         * Object.cs: implement GetType().
9278         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
9279         ending 0 char.
9280         * Type.cs: add missing methods/properties.
9282 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
9284         * AttributeUseage.cs: Should define AttributeUsageAttribute.
9286         * CLSCompliant.cs: Marked with AttributeUsage attribute.
9288         * Decimal.cs: Fixed CLSCompliant attributes.
9290         * Type.cs: changed _impl to internal (needs to be accessable by
9291         subclasses).
9293         (TypeHandle): Marked as abstract, implementation removed.
9295         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
9296         GetMethod): Added stub implementations so NUnit would link against
9297         corlib
9299 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
9301         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
9303 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
9305         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
9306         attribute. 
9308 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
9310         * String.cs: fix a couple of bugs.
9311         * AppDomain.cs: use new AppBuilder constructor.
9312         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
9313         NotImplementedException.cs, ObjectDisposedException.cs,
9314         UnauthorizedAccessException.cs: add implementation.
9315         * OverflowException.cs: fix class name.
9317 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
9319         * String.cs: Don't use a terminating nil char for our internal
9320         array.
9322 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
9324         * Delegate.cs (Delegate.CombineImpl): Implement.
9325         (Delegate.Combine): Implement.
9327         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
9329         (MulticastDelegate.CombineImpl): This was not as trivial as I
9330         thought. 
9332         * ContextStaticAttribute.cs: Added AttributeUsage to
9333         ContextStaticAttribute. 
9335         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
9337 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
9339         * added Decimal.cs * added DecimalFormatter.cs (internal class
9340         used from System.Decimal)
9342 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
9344         * Convert.cs: Added methods for Base64 transforming just used the
9345           existing System.Security.Cryptography.ToBase64Transform, should
9346           be changed to use a stand-alone class, e.g. Base64Encoder
9347           
9348 2001-10-10  Derek Holden  <dholden@draper.com>
9350         * IntegerFormatter.cs: Added. Implements ToString for all the
9351         integer data types for all the format types.
9353         * Byte.cs: Using IntegerFormatter for ToString's.
9355         * SByte.cs: Using IntegerFormatter for ToString's.
9357         * Int16.cs: Using IntegerFormatter for ToString's.
9359         * Int32.cs: Using IntegerFormatter for ToString's.
9361         * Int64.cs: Using IntegerFormatter for ToString's.
9363         * UInt16.cs: Using IntegerFormatter for ToString's.
9365         * UInt32.cs: Using IntegerFormatter for ToString's.
9367         * UInt64.cs: Using IntegerFormatter for ToString's.
9369 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
9371         * Exception.cs: Implement bits of serialization.
9373         * RuntimeFieldHandle.cs: Implement Serialization features.
9375         * Type.cs: Implement TypeHandle property.
9377 2001-09-28  Dick Porter  <dick@ximian.com>
9379         * LocalDataStoreSlot.cs: Implemented
9381 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
9383         * String.cs: fix off-by-one error in Trim().
9385 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
9387         * Type.cs: added GetType () method.
9389 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
9391         * MissingMethodException.cs, MissingMemberException.cs,
9392         MemberAccessException.cs: added.
9394 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
9396         * String.cs: don't access the string array out of bounds in
9397         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
9399 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
9401         * String.cs: make Intern and IsIntern internalcalls.
9403 2001-09-13  Dick Porter  <dick@ximian.com>
9405         * Type.cs: Added a stub for the IsValueType property.
9407         * SystemException.cs (System): Added the other constructor, so
9408         that System.Threading exceptions can inherit it.
9410 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
9412         * String.cs (TrimStart): Don't keep looping through the trimchars
9413         once we've found a match.
9414         (TrimEnd): Same here.
9415         (Trim): And finally here.
9417 2001-09-07  Ravi Pratap  <ravi@ximian.com>
9419         * Char.cs (IsLetterOrDigit): Implement.
9420         (IsLower): Implement, but we need to be Unicode aware.
9421         (IsNumber): Implement.
9422         (IsPunctuation): Implement.
9423         (IsWhiteSpace): Implement.
9424         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
9425         (ToLower): Same here.
9427 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
9429         * Object.cs: Shortcut, if (a == b) then return true.
9431 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
9433         * Delegate.cs: we need a pointer to the method thunk in
9434         the delegate object.
9436 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
9438         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
9440 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
9442         * String.cs (System): Don't mix uint and int.
9444 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
9446         * String.cs (BoyerMoore): Modified to not use pointers and to instead
9447         use indexes.
9448         (IndexOf): Use BoyerMoore.
9450 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
9452         * All over: Use the autogenerated enumerations from the ECMA
9453         documentation that Sergey wrote.
9454         
9455         * PlatformID.cs: Add Unix definition.
9457         * OperatingSystem.cs: Use Unix instead of Linux here.
9459         * MarshalByRefObject.cs: Mark class as [Serializable].
9461 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
9463         * Console.cs: impl. (write only)
9464         implemented the stdin stuff
9466         * Int32.cs: impl. real op_Equal
9468 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
9470         * (common.src): Removed IAsyncResult as it is not on CVS yet.
9472         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
9473         as it breaks the build.
9475 2001-08-23  Michael Lambert <michaellambert@email.com>
9477         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
9478         added CLSCompliant attribute
9480         * IAsyncResult.cs: Added
9482         * common.src: Added IAsyncResult.cs
9484 2001-08-23  Michael Lambert <michaellambert@email.com>
9486         * UIntPtr.cs: Added
9488         * common.src: Added UIntPtr.cs
9490 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
9492         * Attribute.cs: uncomment some code to make it compile again
9494         * mono.src: removed duplicated Attribute.cs
9496 2001-08-16  Nick Drochak <ndrochak@gol.com>
9498         * Attribute.cs: implemented all methods except GetHashCode()
9500         * common.src: added Attribute.cs so it would compile in
9502 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
9504         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
9505         marked it as InternalCall
9506         
9507         * common.src: removed UriFormatException.cs because the file is
9508         not there.
9510         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
9511         * Char.cs: replaced byte with char
9513         * Array.cs: make it work with the mono interpreter
9515 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
9517         * Version.cs: Make the class sealed
9519 2001-08-08  Bob Smith  <bob@thestuff.net>
9521         * Random.cs: Many compile fixes.
9522         * Random.cs: I read a bad spec. Class updated to match real spec.
9524 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
9526         * IntPtr.cs: Added and Completed implementation.
9528         * Uri.cs: Add a note.
9530 2001-08-06  Bob Smith  <bob@thestuff.net>
9532         * Random.cs: Compile fix. Needs more testing.
9534 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
9536         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
9537         into account IPv6 addresses, url encoding needs to be implemented, and 
9538         various minor methods need to be written, but this is a decent start.
9540 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
9542         * common.src: added Object.cs
9544         * mono.src: added ValueType.cs
9546 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
9548         * Math.cs: replaced libc with libm
9550 2001-08-02  Bob Smith  <bob@thestuff.net>
9552         * Random.cs: Implemented. Needs testing.
9554 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
9556         * IServiceProvider.cs, EventHandler.cs: New files.
9558 2001-08-02  Marcel Narings  <marcel@narings.nl>
9559         
9560         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
9561         Added exceptions. Added IConvertible. Still needs some platform 
9562         dependend stuff, the Parse and ToString members
9564 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
9566         * Type.cs (GetTypeFromHandle): added placeholder 
9568 2001-07-24  Derek Holden  <dholden@draper.com>
9570         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
9571         which is really an IConvertible defined method.
9573         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
9574         behavior, still need to do the main Parse and ToString.
9576         * Char.cs: Added a bunch of missing ECMA methods. Commented a
9577         specification discrepency. Still didn't any unicode stuff, though
9578         every IsFoo(char c) method has an IsFoo(string, index)
9579         counterpart, added wrappers for those.
9580         
9581         * Convert.cs: Fixed NaN/Inf checking and double/float
9582         rounding. Added ToType for IConvertible classes
9584         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
9585         IsNaN methods. Changed Inf/NaN internals.
9587         * IConvertible.cs: Added comments for using
9588         Convert.ToType. Changed return values to draft base values.
9590         * Int16.cs: Added a missing Parse statement. Put in behavior for
9591         overloaded ToString and Parse methods.
9593         * Int32.cs: Added a missing Parse statement. Put in behavior for
9594         overloaded ToString and Parse methods.
9596         * Int64.cs: Added a missing Parse statement. Put in behavior for
9597         overloaded ToString and Parse methods.
9598         
9599         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
9600         methods. Changed Inf/NaN internals.
9602         * SByte.cs: Added a missing Parse method. Put in Parse and
9603         ToString behavior, still need to do the main Parse and ToString.
9605         * UInt16.cs: Added a missing Parse statement. Put in behavior for
9606         overloaded ToString and Parse methods.
9608         * UInt32.cs: Added a missing Parse statement. Put in behavior for
9609         overloaded ToString and Parse methods.
9611         * UInt64.cs: Added a missing Parse statement. Put in behavior for
9612         overloaded ToString and Parse methods.
9613         
9614 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
9616         * MulticastDelegate.cs: New File.
9618         * Delegate.cs: New file.
9620         * Enum.cs: New file.
9622         * Attribute.cs: New file.
9624         * Type.cs: New file.
9626         * ParamArrayAttribute.cs: New file.
9628         * RuntimeTypeHandle.cs: New file.
9630         * MulticastDelegate.cs: Added.
9632         * DateTime.cs: Added
9634         * Delegate.cs: Added
9636 2001-07-18  Michael Lambert <michaellambert@email.com>
9638         * AttributeTargets.cs: Add.
9640 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
9642         * Char.cs: Made ToUpper and ToLower public methods.
9644         * String.cs: Lots and lots of compile fixes - just need to write
9645         DateTime.cs and this should build completely now.
9647 2001-07-19  Bob Smith (bob@thestuff.net)
9649         * Math.cs: Implemented. 
9651 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
9653         * String.cs: Removed tolower and toupper.
9655         * Char.cs: Moved ToLower and ToUpper from string to here. 
9657         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
9658         instead of comparing the value to Nan.
9660 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
9662         * TimeSpan.cs: New implementation.
9664 2001-07-18  Scott Sanders <scott@stonecobra.com>
9666          * UriFormatExcpetion.cs: Add - 85% complete
9668 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
9670         * String.cs (IndexOf): Slight optimization that allows skipping
9671         over a few chars here and there. This isn't as good as using my
9672         Boyer-Moore implementation, however, Boyer-Moore is only really
9673         good for long strings (I plan on making the code decide which
9674         string search algorithm it should use on-the-fly at some point).
9675         (LastIndexOf): Fix to work correctly.
9676         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
9678 2001-07-16  Michael Lambert <michaellambert@email.com>
9680         * EventArgs.cs: Add.
9681         
9682 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
9684         * Version.cs: Remove my buggy comment.
9686 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
9688         * String.cs: Spelling error of IComparable, object's
9689         MemberwiseClone cannot be overridden.  Made indexer valid for now,
9690         but not sure what to do about this in the long run.  Seems to be a
9691         couple bugs in csc.exe having to do with multiple pointer defs in
9692         the same statement, and returning subclasses of a class in the
9693         return type of an interface function implementation.  Also moved
9694         operators inside of class definition.
9696 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
9698         * String.cs: A tom of compile fixes, although we still don't compile.
9700         * IConvertible.cs: The To*Int64() methods return *Int64's, not
9701         *Int32's. Also, it's ToDateTime() not ToDateType().
9703 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
9705         * String.cs: Apparently I needed to at least write stubs for the
9706         IConvertible interfaces. *sigh*
9708 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
9710         * String.cs: Many logic/other fixes and better usage of the
9711         features of c#
9712         (tolower): New convenience method to help condense code.
9713         (toupper): Another new helper method.
9714         (Compare): Use the new helper methods.
9715         (ToLower): use tolower().
9716         (ToUpper): use toupper().
9717         (LastIndexOfAny): Implemented.
9718         (BoyerMoore): New private helper method that implements a modified
9719         version of the Boyer-Moore search algorithm. Noothing uses it yet
9720         as I'm not 100% sure it even works properly with unicode strings
9721         not to mention it uses a huge lookup-table :-)
9722         (Split): Implemented.
9724 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
9726         * TODO: Added things that need to be finished in System.String
9728         * String.cs: New source file implementing the System.String class
9730 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
9732         * TypeCode.cs: UInt64 was UInt63.
9734         * Object.cs: Fixed a numer of compiler errors.
9736         * Array.cs: Fixed some compiler errors.
9738         * IComparable.cs: Fixed some compiler errors.
9740         * ICloneable.cs: Fixed some compiler errors.
9742         * IConvertible.cs: Fixed some compiler errors.
9744         * IFormattable.cs: Fixed a compiler error.
9746         * IFormatProvider.cs: Fixed a compiler error.
9748         * IDisposable.cs: Fixed a compiler error.
9750         * IFormatProvider.cs: Added public accesability type to
9751         IFormatProvider.
9753         * Exception.cs: Added a using statement to remove compile time
9754         error.
9756         * ApplicationException.cs: Removed a ; that was causing a compiler
9757         error.
9759         * Int16.cs: Fixed some compiler errors.
9761         * Int32.cs: Fixed some compiler errors.
9763         * Int64.cs: Fixed some compiler errors.
9765         * SystemException.cs: Fixed a compiler error.
9767         * UInt16.cs: Fixed some compiler errors.
9769         * UInt32.cs: Fixed some compiler errors.
9771         * UInt64.cs: Fixed some compiler errors.
9773         * Void.cs: Fixed a compiler error.      
9775 2001-07-12  Joe Shaw  <joe@ximian.com>
9777         * Array.cs: Fix backwards parameters to Array.SetValue()
9778         throughout.
9779         (BinarySearch): Fix backward logic surrounding whether to call
9780         value.CompareTo or comparer.Compare.
9781         (LastIndexOf): Stop being stupid. I am so not used to strongly
9782         bounded arrays...
9783         (Sort): Implement a quicksort.
9785 2001-07-11  Joe Shaw  <joe@ximian.com>
9787         * Array.cs: Change all instances of trying to access an array with
9788         the index operator to calls to GetValue and SetValue, and add
9789         InternalGetValue and InternalSetValue which are internal calls
9790         into the runtime. Ew.
9792 2001-07-10  Joe Shaw  <joe@ximian.com>
9794         * Array.cs: Implemented everything but Sort().
9796 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
9798         * Object.cs (Object::Equals): Object variable name is `o'.
9800 2001-07-06  Joe Shaw  <joe@ximian.com>
9802         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
9803         Implement the IComparable and IFormattable interfaces. Fix a typo
9804         (publig -> public)
9806         * ApplicationException.cs, ArgumentException.cs,
9807         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
9808         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
9809         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
9810         ExecutionEngineException.cs, FormatException.cs,
9811         IndexOutOfRangeException.cs, InvalidCastException.cs,
9812         InvalidOperationException.cs, InvalidProgramException.cs,
9813         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
9814         NotSupportedException.cs, NullReferenceException.cs,
9815         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
9816         StackOverflowException.cs, SystemException.cs,
9817         TypeInitializationException.cs: Added all of the exceptions
9818         specified by the language spec. Mmmm... bloat.
9820 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
9822         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
9823         do a generic routine all of these guys use.
9825         * Int16.cs: identified missing methods.
9827         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
9829 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
9831         * TypeCode.cs: Implement
9833         * Void.cs: Implement.
9835         * TODO: Add file to keep track of pending tasks.
9837         * Object.cs, ValueType.cs: Implement.