* Enum.cs: Provided ParamName of Argument(Null)Exceptions. Rewrote
[mono.git] / mcs / class / corlib / System / ChangeLog
1 2007-11-18  Gert Driesen  <drieseng@users.sourceforge.net>
2
3         * Enum.cs: Provided ParamName of Argument(Null)Exceptions. Rewrote
4         some exception messages.
5
6 2007-11-16  Gert Driesen  <drieseng@users.sourceforge.net>
7
8         * AppDomain.cs: Added some obsolete messages.
9
10 2007-11-15  Gert Driesen  <drieseng@users.sourceforge.net>
11
12         * MonoType.cs: Modified ParamName for ArgumentException to match
13         MS. Provide meaningful exception messages. On 2.0, throw ANE instead
14         of ArgumentException when args is null.
15
16 2007-11-15  Zoltan Varga  <vargaz@gmail.com>
17
18         * MonoType.cs (Invoke): Allow BindingFlags.SetField and
19         BindingFlags.SetProperty to be specified together. Fixes #321735.
20
21 2007-11-14  Miguel de Icaza  <miguel@novell.com>
22
23         * Console.cs, ConsoleDriver.cs, TermInfoDriver.cs,
24         TermInfoReader.cs, TermInfoNumber.cs, TermInfoStrings.cs,
25         CStreamReader.cs, CStreamWriter.cs, NullConsoleDriver.cs,
26         WindowsConsoleDriver.cs: In the 2.1 profile we do not need the
27         full-blown Console (the terminal-addressable console) so we shrink
28         it down to the basic 1.0 Console.
29
30 2007-11-14  Marek Safar  <marek.safar@gmail.com>
31
32         * Nullable.cs: Optimized to use generic comparers.
33
34 2007-11-14  Zoltan Varga  <vargaz@gmail.com>
35
36         * Array.cs (Copy): Throw InvalidCastException in more cases.
37
38 2007-11-13  Zoltan Varga  <vargaz@gmail.com>
39
40         * GCCollectionMode.cs GCLatencyMode.cs: New net 3.5 types.
41
42 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
43
44         * NumberFormatter.cs : revert previous two changes. It does not
45           really work for float and hence will rather bring confusion.
46
47 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
48
49         * NumberFormatter.cs : limit the situation that needs roundtrip
50           verification in the previous change to Double.
51
52 2007-11-12  Atsushi Enomoto  <atsushi@ximian.com>
53
54         * NumberFormatter.cs : applied a quick fix for bug #320433. It needs
55           true fix to avoid extra perf. loss.
56
57 2007-11-08  Sebastien Pouliot  <sebastien@ximian.com>
58
59         * TimeZone.cs: Under 2.0 we must return a Local DateTime.MinValue.
60         Fix the regression on the x86_64 bot which seems to be in it's own
61         timezone.
62
63 2007-11-07  Gert Driesen  <drieseng@users.sourceforge.net>
64
65         * Exception.cs: Cosmetic change to default exception message on
66         2.0 profile.
67
68 2007-11-05  Gert Driesen  <drieseng@users.sourceforge.net>
69
70         * Array.cs: Distinguish between notstarted and finished state when
71         throwing IOE in Current, and provide meaningful exception message.
72
73 2007-11-05  Sebastien Pouliot  <sebastien@ximian.com>
74
75         * Array.cs: Fix Enumerator<T>.Reset (#322248).
76
77 2007-11-05  Rodrigo Kumpera  <rkumpera@novell.com>
78
79         * Type.cs (MakeGenericType): fix for #331199. If an user-defined type
80         was used, the runtime would crash. Now we apply UnderlyingSystemType to
81         all types before handling to the runtime.
82
83 2007-11-05  Stephane Delcroix  <sdelcroix@novell.com>
84
85         * TimeZone.cs: fix for #323911. The our after DST.Start is already DST.
86
87 2007-11-03  Atsushi Enomoto  <atsushi@ximian.com>
88
89         * DateTime.cs : fix for #330085. for Local time, convert to Utc
90           before getting ticks.
91
92 2007-11-03  Gert Driesen  <drieseng@users.sourceforge.net>
93
94         * ArgumentException.cs: Change default message to match MS. Removed
95         unnecessary check from Message, since base.Message can never be null.
96
97 2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>
98
99         * DateTime.cs : ParseExact() should ignore 'K' when there is no
100           character is left.
101
102 2007-11-01  Atsushi Enomoto  <atsushi@ximian.com>
103
104         * DateTime.cs : in roundtrip mode, 'Z' should turn the tick value to
105           utc time and should not result in different ticks.
106           Fixed bug #338064.
107
108 2007-10-30  Miguel de Icaza  <miguel@novell.com>
109
110         * UInt32.cs (Parse): Use Jeff Stedfast's parsing code which is
111         smaller and does not need checked() constructs. 
112
113         * Int64.cs, Int32.cs, Int16.cs: small tuneup: do not throw
114         exception, instead return the exception like every other place in
115         this code. 
116
117         * Int16.cs, Int32.cs, Int64.cs: Use the Jeff Stedfast parsing code
118         which is smaller.  We no longer use "checked" to check for
119         overflows, I refactored some stuff and cleaned up the rest and
120         fixes #331525.
121
122 2007-10-27  Zoltan Varga  <vargaz@gmail.com>
123
124         * MonoType.cs: Applied patch from Mario A Chavez 
125         <mario.chavez@gmail.com>. Add support for invoking members with the 
126         ParamArray attribute. Fixes #336841.
127
128 2007-10-26  Zoltan Varga  <vargaz@gmail.com>
129
130         * MonoType.cs (InvokeMember): Make sure one operation is passed in the binding
131         flags. Fixes #336936.
132
133 Fri Oct 26 19:43:09 CEST 2007 Paolo Molaro <lupus@ximian.com>
134
135         * Environment.cs, String.cs: patch from Tyler Larson
136         <mono-devel@tlarson.com> to fix the handling of the RemoveEmptyEntries
137         option in string.Split (bug #322375).
138
139 2007-10-26  Dick Porter  <dick@ximian.com>
140
141         * Environment.cs: Bump version because of Thread initialisation
142         changes
143
144 2007-10-25  Lluis Sanchez Gual  <lluis@novell.com>
145
146         * AppDomain.cs: In DefaultDomain, wrap the returned domain with
147         a proxy if the current domain is not the root domain.
148
149 2007-10-24  Atsushi Enomoto  <atsushi@ximian.com>
150
151         * Type.cs : implemented ReflectionOnlyGetType().
152
153 2007-10-19  Zoltan Varga  <vargaz@gmail.com>
154
155         * AppDomain.cs: Add NET 3.5 DefineDynamicAssembly () overloads.
156
157 2007-10-13  Zoltan Varga  <vargaz@gmail.com>
158
159         * Delegate.cs (CreateDelegate): Allow binding instance methods to 
160         delegates with an extra argument, a NET 2.0 feature. Fixes #333647.
161
162 Fri Oct 12 08:11:50 CEST 2007 Paolo Molaro <lupus@ximian.com>
163
164         * String.cs: reverted unapproved patch that breaks the build.
165
166 2007-10-11  Joel Reed  <joelwreed@comcast.com>
167
168         * String.cs: fix String.Split(char[],int,StringSplitOptions)
169         with StringSplitOptions.RemoveEmptyEntries option. The correct 
170         behavior is to remove empty entries while the string is being split, 
171         and always return the maximum number of elements possible.
172         Patch from: Tyler Larson <mono-devel@tlarson.com>
173         
174 2007-09-28  Jb Evain  <jbevain@novell.com>
175
176         * Object.cs: Make ToString return Type.ToString ()
177         by default instead of Type.FullName to match .net
178         behavior. Fix #329419.
179
180 2007-09-28  William Holmes  <billholmes54@gmail.com>
181
182         * DateTime.cs: Check for AssumeUniversal when parsing string.
183          Fixes bug #324845
184
185 2007-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
186
187         * Enum.cs: Use regular single quotes in exception message.
188
189 2007-09-14  Paolo Molaro <lupus@ximian.com>
190
191         * String.cs: implemented all the string ctors using CreateString
192         methods, so they can run completely in managed code.
193
194 2007-09-13  Marek Safar  <marek.safar@gmail.com>
195
196         * DateTimeOffset.cs: Implemented few properties.
197
198 2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>
199
200         * Decimal.cs, Math.cs : implemented midpoint rounding.
201
202 2007-09-13  Atsushi Enomoto  <atsushi@ximian.com>
203
204         * Activator.cs : implemented 2.0 CreateInstance()
205           and CreateInstanceFrom () overloads.
206
207 2007-09-12  Sebastien Pouliot  <sebastien@ximian.com>
208
209         * Decimal.cs: More explicit text in exception (old and almost 
210         forgetten patch on laptop ;-)
211
212 2007-09-10  Atsushi Enomoto  <atsushi@ximian.com>
213
214         * OperatingSystem.cs : implemented ISerializable.
215
216 2007-08-28  Zoltan Varga  <vargaz@gmail.com>
217
218         * DateTime.cs: Fix a warning.
219
220 2007-08-25  Robert Jordan  <robertj@gmx.net>
221
222         * DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.
223
224 2007-08-25  Alan McGovern  <amcgovern@novell.com>
225
226         * DateTime.cs: Reverted DateTime changes.
227
228 2007-08-25  Robert Jordan  <robertj@gmx.net>
229
230         * DateTime.cs: Implement internal To/FromBinary for the 1.1 profile.
231
232 2007-08-24  Zoltan Varga  <vargaz@gmail.com>
233
234         * Array.cs: Fix min + max / 2 overflows in the BinarySearch and qsort methods.
235         Fixes #82469.
236
237 2007-08-23  Marek Safar  <marek.safar@gmail.com>
238
239         * DateTimeOffset.cs: New .NET 3.5 struct for 2.0 mscorlib.
240         
241 2007-08-23  Eyal Alaluf <eyala@mainsoft.com>
242
243         * DateTime.cs: Numerous improvements to DateTime.Parse. It handles a lot
244           more possible formats and more correctly at that. It is also now easier
245           to manage the formats DateTime.Parse supports.
246
247 2007-08-17  Zoltan Varga  <vargaz@gmail.com>
248
249         * Exception.cs: Make 1.0 and 2.0 object layout the same since this class is seen
250         by the runtime. Fixes #82459.
251
252 2007-08-16  Gert Driesen  <drieseng@users.sourceforge.net>
253
254         * MonoCustomAttrs.cs: In IsDefined, throw ArgumentNullException if
255         attributeType is null to avoid a SIGSEGV (and match MS). Only partial
256         fix for bug #82431 on 1.0 profile; it fully fixes the problem for the
257         1.0 profile, but more changes (in the runtime) are required for the
258         2.0 profile. Added a FIXME explaining the problem.
259
260 2007-08-15  Gert Driesen  <drieseng@users.sourceforge.net>
261
262         * MonoCustomAttrs.cs: In IsDefined, only walk inheritance chain if
263         both AttributeUsage.Inherited and inherit are true. Fixed bug #82431.
264
265 2007-08-13  Gert Driesen  <drieseng@users.sourceforge.net>
266
267         * ArgumentException.cs: Ignore zero-length ParamName for Message.
268         Use ParamName property instead of field, since the property is marked
269         virtual.
270         * Array.cs: Provide more meaningful exception message when destination
271         array is not long enough.
272
273 2007-08-11  Zoltan Varga  <vargaz@gmail.com>
274
275         * Array.cs: Implement InternalArray__set_Item. Fixes #82345.
276
277 2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>
278
279         * IntPtr.cs : oops, do not ignore format in ToString(string).
280
281 2007-08-08  Atsushi Enomoto  <atsushi@ximian.com>
282
283         * GC.cs, Exception.cs, IntPtr.cs, Enum.cs, DateTime.cs, Convert.cs
284           ConsoleKeyInfo.cs, String.cs, Object.cs, Attribute.cs,
285           Version.cs : couple of cosmetic 2.0 API fixes.
286
287 2007-08-06  Aaron Bockover  <abockover@novell.com>
288
289         * Environment.cs (ReadXdgUserDir): Support the changes to the
290         xdg-user-dirs spec that allow $HOME to start the path; also allows
291         for quotes surrounding the path (Patch ported from Banshee,
292         BGO #461596)
293
294 2007-07-28  Miguel de Icaza  <miguel@novell.com>
295
296         * MulticastDelegate.cs (Equals): do not cast to avoid exceptions,
297         instead use the "as" operator, as pointed out by Jesse Jones'
298         tool. 
299
300 2007-07-21  Gert Driesen  <drieseng@users.sourceforge.net>
301
302         * BitConverter.cs: Fixed exceptions to match MS. Fixed invalid use
303         of ArgumentOutOfRangeException and ArgumentException ctors that take
304         both parameter name and message. In ToString throws ArgumentException
305         instead of ArgumentOutOfRangeException when length is negative, and
306         return zero-length string when length is 0.
307
308 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
309
310         * AppDomainSetup.cs : fix serialization regression.
311
312 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
313
314         * AppDomainSetup.cs :
315           MonoTODO AppDomainInitializer as its implementation is wrong.
316
317 2007-07-20  Atsushi Enomoto  <atsushi@ximian.com>
318
319         * AppDomainSetup.cs : added missing 2.0 members.
320         * AppDomain.cs : support AppDomainInitializer.
321
322 2007-06-06  Miguel de Icaza  <miguel@novell.com>
323
324         * Int16.cs, UInt64.cs, SByte.cs, UInt16.cs, Byte.cs, Int32.cs,
325         Int64.cs, UInt32.cs: Fix for 81775.
326
327         I removed Parse from a Byte.cs and UInt16.cs as in various cases
328         they still depended on UInt32.cs for parsing, there is no reason
329         to keep all of this code duplicated (UInt64 is a different case
330         though). 
331
332         I was hoping for some feedback on whether my tests are correct,
333         but so far no takers.
334
335 2007-07-14  Zoltan Varga  <vargaz@gmail.com>
336
337         * ModuleHandle.cs: Implement the generic versions of the ResolveXXXHandle () methods.
338         
339         * ModuleHandle.cs: Add stubs for generic ResolveXXXHandle () methods.
340
341 2007-07-10  Alan McGovern <amcgovern@novell.com>
342
343         * Guid.cs: All whitespace should be trimmed from before and
344         after a string passed into the Guid constructor. Fixes #81958
345
346 2007-07-10  Zoltan Varga  <vargaz@gmail.com>
347
348         * RuntimeTypeHandle.cs: Fix signatures of == and != operators.
349
350         * ModuleHandle.cs: Add missing 2.0 stuff.
351
352 2007-07-08  Zoltan Varga  <vargaz@gmail.com>
353
354         * *.cs: Add missing ComVisible attributes.
355
356         * Delegate.cs: Add missing 2.0 CreateDelegate () methods.
357
358 2007-07-07  Gert Driesen  <drieseng@users.sourceforge.net>
359
360         * DateTime.cs: In ParseExact, throw ArgumentNullException if format
361         is null; throw FormatException if formats array is empty or if one of
362         items is null or a zero-length string.
363
364 2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>
365
366         * Double.cs (Parse): Fix for string ending in garbaga, it was just ignoring it
367         instead of throwing FormatException. Fixes #81777
368
369 2007-07-06  Rodrigo Kumpera  <rkumpera@novell.com>
370
371         * Double.cs (Parse): Fix for whitespace only strings, it was returning zero 
372         instead of throwing FormatException. Fixes #81630 
373
374 2007-07-06  Alan McGovern  <amcgovern@novell.com>
375
376         * DateTime.cs: If the format is null or empty, it should default to 'G'.
377         Fixes bug 81778
378
379 2007-07-06  Jonathan Chambers  <joncham@gmail.com>
380
381         * __ComObject.cs: Support ExtensibleClassFactory.
382
383
384 2007-07-06  Aaron Bockover  <abockover@novell.com>
385
386         * Environment.cs (InternalGetFolderPath): Try reading some
387         paths from ~/.config/user-dirs.dirs (XDG user dirs spec);
388         always return something for MyPictures
389
390 2007-07-04  Atsushi Enomoto  <atsushi@ximian.com>
391
392         * Type.cs : 2.0 TypeHandle and ContainsGenericParameters are virtual
393           (required fix for 2.0 reflection API fixes).
394
395 2007-06-22  Jonathan Chambers  <joncham@gmail.com>
396
397         * __ComObject.cs: Move interface lookup to unmanaged.
398
399 2007-06-21  Zoltan Varga  <vargaz@gmail.com>
400
401         * Environment.cs: Bump corlib version.
402
403         * Delegate.cs: Applied patch from Robert Jordan (robertj@gmx.net). Keep
404         the dynamic method referenced by a delegate alive.
405
406 2007-06-05  David Ferguson <davecferguson@gmail.com>
407
408         * DateTime.cs: Changed DateTime.Parse() to throw a FormatException
409           instead of an ArgumentOutOfRangeException for .NET 2.0.  An
410           ArgumentOutOfRangeException is still thrown for .NET 1.1.
411           Fixes bug #77633
412           
413 Mon Jun 4 14:52:17 CEST 2007 Paolo Molaro <lupus@ximian.com>
414
415         * String.cs: optimized CompareOrdinal ().
416
417 2007-06-02  Zoltan Varga  <vargaz@gmail.com>
418
419         * MonoCustomAttrs.cs (GetBase): Revert last change as it breaks the build.
420         
421         * MonoCustomAttrs.cs (GetBase): Handle properties correctly. Fixes #81797.
422
423 2007-05-31  Zoltan Varga  <vargaz@gmail.com>
424
425         * Delegate.cs: Add invoke_impl field. Reorder fields for better cache behavior. Add
426         SetMulticastDelegate icall.
427
428         * MulticastDelegate.cs (CombineImpl): Call SetMulticastDelegate () on newly created
429         delegate.
430
431         * Environment.cs: Bump corlib version.
432         
433 2007-05-25  Jonathan Chambers  <joncham@gmail.com>
434
435         * __ComObject.cs: Add overload to GetInterface to allow
436         not throwing exceptions. Fixes as and is operators for COM objects.
437
438 2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>
439
440         * Array.cs : reverting Array.cs fixes since the runtime depends on
441           those method attributes.
442
443 2007-05-23  Atsushi Enomoto  <atsushi@ximian.com>
444
445         * Int16.cs UInt64.cs UIntPtr.cs Double.cs CrossAppDomainDelegate.cs
446           ResolveEventHandler.cs IntPtr.cs UnhandledExceptionEventHandler.cs
447           Void.cs AssemblyLoadEventHandler.cs SByte.cs UInt16.cs DateTime.cs
448           Byte.cs TimeSpan.cs Decimal.cs Int32.cs Delegate.cs
449           AppDomainInitializer.cs MulticastDelegate.cs Int64.cs
450           EventHandler.cs Single.cs UInt32.cs AsyncCallback.cs :
451           cosmetic attribute fixes (ComVisible/Serializable).
452
453 2007-05-22  Atsushi Enomoto  <atsushi@ximian.com>
454
455         * Convert.cs : completed 2.0 (ToBase64CharArray).
456         * String.cs : removed MonoTODO.
457         * DataMisalignedException.cs : removed extra .ctor().
458         * Array.cs : internalize extra members. Fixed reliability contract.
459
460 2007-05-17  Atsushi Enomoto  <atsushi@ximian.com>
461
462         * DateTime.cs : added support for 'K'.
463
464 2007-05-11  Jonathan Chambers  <joncham@gmail.com>
465
466         * __ComObject.cs: No need to call CoInitialize anymore since
467         Thread.ApartmentState was implemented.
468
469 2007-05-11  Jeffrey Stedfast  <fejj@novell.com>
470
471         Fixes bug #81540
472
473         * TermInfoDriver.cs (WriteSpecialKey): Actually clear the screen
474         and reset the cursor position to 0,0 when the key is
475         ConsoleKey.Clear.
476         (Clear): Reset the cursor position to 0,0
477
478 2007-05-09  Marek Safar  <marek.safar@gmail.com>
479
480         * MulticastDelegate.cs: Fixed operators logic.
481
482 2007-05-09  Marek Habersack  <mhabersack@novell.com>
483
484         * DateTime.cs: add a format used in ASP.NET QuickStarts 
485           ("HH':'mm tt MM/dd/yyyy")
486
487 2007-04-30  Zoltan Varga  <vargaz@gmail.com>
488
489         * Type.cs (Equals): Allow a null argument.
490
491 2007-04-27  Zoltan Varga  <vargaz@gmail.com>
492
493         * Environment.cs (StackTrace): Avoid skipping a frame to be
494         compatible with MS.
495
496 2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>
497
498         * DateTimeTest.cs : looks like 'F' even removes preceding '.' ...
499
500 2007-04-25  Atsushi Enomoto  <atsushi@ximian.com>
501
502         * DateTime.cs : implemented new-2.0 'F' pattern letter.
503
504 2007-04-24  Jeffrey Stedfast  <fejj@novell.com>
505
506         Fixes the last of the bugs listed in bug #77525
507
508         * TermInfoDriver.cs (ctor): For known terminal types, set color16
509         to true (since we know they support 16 colours).
510         (Init): set the setlfgcolor and setlbgcolor format strings.
511         (BackgroundColor): Use the appropriate formatter string for
512         setting the bgcolor.
513         (ForegroundColor): Use the appropriate formatter string for
514         setting the fgcolor.
515         (TranslateColor): Now takes (and sets appropriately) an output
516         'bool light' argument.
517
518 2007-04-24  Marek Habersack  <mhabersack@novell.com>
519
520         * TermInfoDriver.cs: don't include debug stuff by default - it
521         breaks multithreaded applications (they all attempt to open
522         console.log and fail because of sharing violation).
523
524 2007-04-23  Jeffrey Stedfast  <fejj@novell.com>
525
526         * TermInfoDriver.cs (ReadKeyInternal): Since our input stream is
527         buffered, check if it has more buffered input in addition to our
528         timeout check. This makes it such that we will actually correctly
529         match multi-char escape sequences.
530         (Read): Changed the logic slightly wrt 'fresh' echoing. Once we
531         encounter a fresh char, all chars afterward should also be
532         considered 'fresh' even if 'fresh' is returned as false later.
533         (ReadLine): Same logic here.
534
535 2007-04-23  Jeffrey Stedfast  <fejj@novell.com>
536
537         Fixes bug #80702 (via getting rid of the casting) and more.
538
539         The following change makes it such that even if an application
540         calls Console.SetOut() with its own output stream, we can still
541         properly echo user-input from stdin to the real stdout.
542
543         * TermInfoDriver.cs (ctor): Grab a reference to the original
544         Console.stdout so we can be sure we always echo to console.
545         (QueueEcho): No need to cast Console.stdout anymore.
546         (EchoFlush): Same.
547         (WriteConsole: Here too.
548
549 2007-04-20  Jeffrey Stedfast  <fejj@novell.com>
550
551         * TermInfoDriver.cs (QueueEcho): Renamed from Echo(char). Use
552         CStreamWriter's new InternalWriteChars().
553         (Echo): Since we can no longer go thru CStreamWriter's ::Write()
554         method that does checks for special keys, do the checks here
555         instead - if it is a special key, flush the echo buffer and then
556         write the special key.
557         (EchoFlush): Also updated to use CStreamWriter's new
558         InternalWriteChars().
559         (Read): Use the Echo(key) variety.
560         (ReadKey): Same.
561         (ReadLine): And here too.
562
563         * CStreamWriter.cs (InternalWriteChars): Write a char array
564         directly to stdout. Do not pass Go, do not collect $200.
565
566 2007-04-19  Jeffrey Stedfast  <fejj@novell.com>
567
568         Optimization for echoing keypresses back to the console when the
569         user pastes a block of text rather than manually typing text.
570
571         * TermInfoDriver.cs (Echo): A new convenience function for echoing
572         characters/keys back to the console with an optimization twist and
573         a bit of lime.
574         (EchoFlush): Flush our pending echo queue
575         (Read): Make use of Echo() both for convenience and for speed.
576         (ReadLine): Same.
577         (ReadKey): Make use of Echo()/EchoFlush() for simplicity of code,
578         but we won't get the same optimization out of it.
579
580 2007-04-19  Jeffrey Stedfast  <fejj@novell.com>
581
582         Fix for bug #81373.
583
584         * TermInfoDriver.cs: Changed 'buffer' to be a char array instead
585         of a byte array and stdin is now a StreamReader rather than a
586         Stream.
587         (Init): Setup stdin as a StreamReader using Console.InputEncoding
588         as our encoding.
589         (GetCursorPosition): Use stdin.Read() instead of the old
590         ReadByte() code.
591         (AddToBuffer): Updated to allocate the correct array type for
592         'buffer'.
593         (ReadKeyInternal): Updated to use stdin.Read() rather than
594         stdin.ReadByte(). This is the main reason we needed to use chars
595         instead of bytes. Characters entered by the user need to be
596         represented as unicode chars and not bytes like before.
597         (Match): Now takes a char[] buffer argument instad of byte[] and
598         compares the input buffer to the byte-map as chars.
599
600 2007-04-18  Jeffrey Stedfast  <fejj@novell.com>
601
602         Fixes bug #81159: behave the same as mscorlib
603
604         * TermInfoDriver.cs (ReadKeyInternal): Now has an 'out bool fresh'
605         argument which is used to tell our caller if the key was freshly
606         read from the console or pre-buffered.
607         (Read): New implementation of Console.In.Read(char[], int, int)
608         that behaves exactly like mscorlib's implementation.
609         (ReadKey): Updated for the ReadKeyInternal() API change - only
610         echo if the key was fresh.
611         (ReadLine): Same.
612
613         * CStreamReader.cs (Read): Call the new TermInfoDriver.Read()
614
615 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
616
617         * CStreamWriter.cs (Write): Optimized this some more, we don't
618         need a temporary buffer. Just blit chunks of the src buffer
619         instead.
620
621         * CStreamReader.cs (Read): Need to increment our array index so
622         that we don't store each byte read into the same
623         position. Discovered this while testing bug #81159 (which appears
624         to work as expected with current svn, other than this buglet).
625
626         * TermInfoDriver.cs (CursorTop::set): SetCursorPosition() sets our
627         internal cursorTop variable, so no need to explicitly set it again
628         after calling SetCursorPosition().
629         (CursorLeft::set): Same idea here.
630
631 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
632
633         * TermInfoDriver.cs (ReadLine): Implemented a workaround for
634         IronPython going behind System.Console's back when writing text to
635         the screen (it doesn't seem to use Console.stdout, instead it
636         creates its own file stream or something which just so happens to
637         write to the same file descriptor) by querying for the cursor
638         position in ReadLine(), so we lose no real performance (since we
639         have to wait for user input anyway).
640
641 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
642
643         * TermInfoDriver.cs (Init): SetEcho(false), we'll be manually
644         echoing from now on (ReadLine() has already been doing this, might
645         as well make ReadKey() behave the same).
646         (GetCursorPosition): No longer need to disable/re-enable echo
647         anymore since it is now always false.
648         (ReadKey): Manually echo the key back to the console just like
649         ReadLine() has been doing (in the interest of consistancy) if
650         intercept is false.
651         (ReadLine): No longer need to disable/re-enable echo, echo is
652         always off now. Also, fixed what appears to have been a typo.
653
654 2007-04-17  Jeffrey Stedfast  <fejj@novell.com>
655
656         * TermInfoDriver.cs (IsSpecialKey): Oops, Enter should not be
657         treated as a special key. Just update out cursor state here like
658         we do with normal chars.
659         (WriteSpecialKey): Enter is a no-op now because it is not treated
660         as a special key anymore.
661
662         * CStreamWriter.cs (Write): Only flush our buffer if j > 0
663
664 2007-04-17  Jeffrey Stedfast  <fejj@gnome.org>
665
666         Turns out my last patch was broken wrt handling some special keys
667         like Backspace and anything else that changed the cursor position
668         in some non-standard way.
669
670         * CStreamWriter.cs (Write): Instead of calling NotifyWrite(), we
671         instead need to check IsSpecialKey(), and, if so, flush whatever
672         we have saved in our temporary buffer and then call
673         WriteSpecialKey(). Otherwise go on as we did in the last patch.
674
675         * TermInfoDriver.cs (NotifyWrite): Broken up into 2 functions:
676         (IsSpecialKey): Returns true if we need to do some special voodoo
677         for this key
678         (WriteSpecialKey): Write the special key (using whatever voodoo
679         necessary)
680
681 2007-04-16  Jeffrey Stedfast  <fejj@gnome.org>
682
683         * CStreamWriter.cs (Write): Instead of writing 1 char at a time,
684         copy the bytes into a temporary char array (with a fixed max size)
685         so that we can minimize the number of Write() calls we make on the
686         underlying stream (and thus on the write() system call).
687
688 2007-04-17  Alp Toker  <alp@atoker.com>
689
690         * Array.cs: Make GetRank() icall private. Subclasses should use the
691         public Rank property.
692
693 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
694
695         * WindowsConsoleDriver.cs: Get rid of unused Echo property.
696
697         * NullConsoleDriver.cs: Get rid of Echo property.
698
699         * IConsoleDriver.cs: Get rid of Echo property.
700
701         * ConsoleDriver.cs (Echo::get/set): Removed, not needed.
702
703         * TermInfoDriver.cs (Echo::get/set): Removed, this isn't necessary
704         and is confusing.
705         (ReadKey): If we are intercepting the key, call SetEcho (false)
706         and then reset back to true after reading the key.
707         (ReadLine): Same idea here.
708         (GetCursorPosition): We no longer need to keep track of the
709         previous echo state, we no longer have it :)
710
711 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
712
713         Fix for bug #80710 (and a bug I introduced in my last fix due to
714         this code assuming the underlying term echo state was always
715         false) and other buglets that I noticed.
716
717         * TermInfoDriver.cs (ReadLine): Set (term) Echo to false as we do
718         our own manual echoing which prevents ^H from getting displayed on
719         the screen when the user hits backspace.
720         (ReadLine): If the user hits Backspace and builder.Length is 0, DO
721         NOT echo the backspace back to the console, ever.
722         (ReadLine): Only echo characters back to the console if echo is
723         set to true. Seems the Echo ConsoleDriver property is a Mono
724         extension, and I'm assuming this is the intended behavior? I can't
725         see what else the Echo property would be useful for...
726
727 2007-04-16  Jeffrey Stedfast  <fejj@novell.com>
728
729         Fixes bug #81050
730
731         * TermInfoDriver.cs: Renamed the noEcho variable to echo, makes
732         the logic cleaner/simpler/etc. Plus it was never actually used
733         other than in the property methods which are called Echo.
734         (Init): Call ConsoleDriver.SetEcho() with the 'echo' value -
735         allows for a slight optimization if called from within the
736         Echo::set property.
737         (GetCursorPosition): Instead of calling the Echo property methods,
738         call ConsoleDriver.SetEcho() directly to toggle echo off (if echo
739         isn't already off, and then back on once we're finished getting
740         the position - assuming the echo state is on, of course) - this
741         avoids calling back into Init() which just felt dirty.
742         (Echo::set): If the Echo state differs from our current state,
743         call ConsoleDriver.SetEcho() with the new state (this is the
744         important piece of the fix for bug #81050).
745         (ReadKey): Simplified the echo logic to make it a bit clearer.
746         (ReadLine): Same.
747
748 2007-04-16  Marek Safar  <marek.safar@gmail.com>
749
750         * Char.cs (IsLetter): Faster version.
751
752 2007-04-15  Alp Toker  <alp@atoker.com>
753
754         * Decimal.cs: Provide 2.0 Round() overloads using System.Math.
755
756 2007-04-15  Alp Toker  <alp@atoker.com>
757
758         * Activator.cs: CreateInstance(Type,object[]) was not params before
759         2.0.
760
761 2007-04-15  Alp Toker  <alp@atoker.com>
762
763         * NonSerializedAttribute.cs: Inherited=false in 2.0.
764
765 2007-04-05  Dick Porter  <dick@ximian.com>
766
767         * Environment.cs: Increment mono_corlib_version
768
769 2007-04-03  Alp Toker  <alp@atoker.com>
770
771         * Array.cs: CreateInstance(Type,int[]) is params.
772         * AppDomain.cs: ExecuteAssemblyByName(string,Evidence,string[]) is
773         params.
774
775 2007-04-03  Alp Toker  <alp@atoker.com>
776
777         * Convert.cs:
778         * Math.cs: Should be static classes in 2.0.
779
780 2007-04-03  Alp Toker  <alp@atoker.com>
781
782         * Delegate.cs: DynamicInvoke(object[]) is params in 2.0.
783
784 2007-04-03  Alp Toker  <alp@atoker.com>
785
786         * Delegate.cs: Combine(Delegate[]) is params in 2.0.
787
788 2007-03-27  Dick Porter  <dick@ximian.com>
789
790         * Environment.cs: Increment mono_corlib_version;
791
792 2007-03-16  Miguel de Icaza  <miguel@novell.com>
793
794         * BitConverter.cs: Revert the patch from 72237 as that introduces
795         a regression and we are not sure yet what we will be doing about
796         that.
797
798         Introduce a new InternalInt64BitsToDouble method that provides the
799         fixed functionality, mark it as internal.
800
801         Introduce a new SwappableToDouble method that includes the
802         swapping ToDouble routine as introduced by Zoltan on 72237, this
803         is used by InternalInt64BitsToDouble.
804
805         * Math.cs (IEEERemainder): Use the InternalInt64BitsToDouble
806         routine here to preserve the semantics from Zoltan.  
807
808         The problem with BitConverter.cs is that it is completely hossed.
809         In .NET 1.1 it is a bitwise copy, no attempt is ever done to do
810         endian-specific swapping.   In .NET 2.0 it is *almost* like that,
811         but it is subtly broken: if data is unaligned then endian
812         conversions happen.  If the data is properly aligned it behaves
813         like 1.0.
814
815         In general BitConverter is a sad class that offers little control,
816         we will be introducing a new mono bit converter and encourage
817         users to use that instead of the entirely broken
818         System.BitConverter. 
819
820 2007-03-11  Gert Driesen  <drieseng@users.sourceforge.net>
821
822         * Delegate.cs: Fixed bootstrap build.
823
824 2007-03-08  Gert Driesen  <drieseng@users.sourceforge.net>
825
826         * StringComparer.cs: Renamed StringComparer classes and promoted them
827         to top-level classes. Merged Ordinal and OrdinalIgnoreCase comparers.
828         Fixes binary serialization compatibility with MS.
829
830 2007-03-06  Zoltan Varga  <vargaz@gmail.com>
831   
832         * Type.cs (Equals): Remove a useless check.
833
834         * Type.cs: Rename Type:Equals(Type) to EqualsInternal, and add support for checking
835         UnderlyingSystemType. Fixes #81037.
836
837 2007-03-05 Gonzalo Paniagua Javier <gonzalo.mono@gmail.com>
838
839         * TermInfoDriver.cs: adjust buffer indexes after *every* read. Fixes
840         bug #80329. Robert Jordan attached a similar patch to the bug report
841         but I didn't see it until after my commit...
842
843 2007-03-05  Peter Dettman <peter.dettman@iinet.net.au>
844
845         * Enum.cs: The above patch makes the formatting for specifiers 'x'
846         and 'X' behave like MS.NET, including the correct length for each
847         possible underlying type, and correctly using capital letters for
848         the 'X' case.
849
850         Patch also includes some more test cases in EnumTests.cs.
851
852 2007-02-25  Gert Driesen  <drieseng@users.sourceforge.net>
853
854         * AppDomainSetup.cs: If configuration file is not an absolute path,
855         then throw a MemberAccessException if ApplicationBase is not set,
856         or otherwise consider it as a path relative to ApplicationBase.
857         Fixes bug #80934. Patch provided by Jamie Cansdale.
858         * AppDomain.cs: In CreateDomain, construct AppDomain with
859         ApplicationBase of default domain if not explicitly set in specified
860         AppDomainSetup. If config file is not set, then use filename of the
861         default domain config file. Base on patch provided by Jamie Cansdale.
862
863 2007-02-16  Sebastien Pouliot  <sebastien@ximian.com>
864
865         * Random.cs: Fix exception messages ("then" -> "than"). Spotted by
866         Mark A. Nicolosi (#80873).
867
868 2007-02-12  Miguel de Icaza  <miguel@novell.com>
869
870         * CStreamWriter.cs (Write with char []): take the lock once for
871         all characters and call manually the InternalWriteChar properly to
872         speed things up.
873
874         (Write with string parameter): same thing, if the driver is not
875         initialized use a fast path.
876
877         If the driver has not been initialized, use a fast path instead. 
878
879 Mon Feb 12 21:54:57 CET 2007 Paolo Molaro <lupus@ximian.com>
880
881         * MonoType.cs: patch from Cedric Vivier <cedricv@neonux.com> to
882         get correctly non-public fields from generic types.
883
884 2007-02-08  Jonathan Chambers  <joncham@gmail.com>
885
886         * __ComObject.cs: Add IUnknown field to object. Cleanup icalls.
887         
888 2007-02-03  Zoltan Varga  <vargaz@gmail.com>
889
890         * BitConverter.cs (ToDouble): Fix this on big-endian machines.
891
892 2007-01-30  Atsushi Enomoto  <atsushi@ximian.com>
893
894         * TimeZone.cs: According to the docs, we should not throw when
895         converting to Localtime if we are a negative value.  Instead we
896         return DateTime.MinValue.
897
898 2007-01-25  Atsushi Enomoto  <atsushi@ximian.com>
899
900         * DateTime.cs : copy Kind in those members that return DateTime.
901           Fixed bug #80614.
902
903 2007-01-20  Miguel de Icaza  <miguel@novell.com>
904
905         * Array.cs (InternalArray__ICollection_Contains,
906         InternalArray__IndexOf): Cope with null values in the array (See
907         bug #80563).
908
909 2007-01-19  Marek Habersack  <grendello@gmail.com>
910
911         * AppDomain.cs: Make sure that domain
912         SetupInformation.ConfigurationFile is never null. MS.NET by
913         default copies the default domain's ConfigurationFile value
914         there. Fixes bug #80547.
915
916 2007-01-14  Jensen Somers <jensen.somers@gmail.com>
917
918         * ArraySegment.cs: Added Equals() method, operator == and !=
919         overloading and GetHashCode().
920
921 2007-01-10  Andy Hume <andyhume32@yahoo.co.uk>
922
923         * Fixes to a number of exception classes.
924         
925         A project of mine uses #ctor(String,Exception) on 
926         ObjectDisposedException, so I looked at adding that, and any 
927         other similar constructors missing as per the class status report.
928         
929         I also spotted inconsistent setting of HResult, and fixed 
930         those too.  For instance, ArgumentNullException sets HResult 
931         only in three out of the four constuctors; not setting it in 
932         the v2 (String,Exception) one -- and correctly not in the 
933         Serialization constructor.
934         
935         
936         So, I fixed the remaining missing (String,Exception) 
937         constructors in corlib (2 of), and fixed the Hresult setting 
938         in all exceptions there (4 of).
939         
940         The remaining Exception constructor omission listed was 
941         InvalidCastException.ctor(System.String, System.Int32).  MSDN   says:
942         "This constructor supplies an HRESULT value that is 
943         accessible to inheritors of the InvalidCastException class, 
944         via the protected HResult property of the Exception class."
945         I added that method too, setting the HResult property from 
946         the Int32 argument.
947
948 2007-01-10  Atsushi Enomoto  <atsushi@ximian.com>
949
950         * String.cs, StringComparer.cs : avoid extra string creation in
951           StringComparer.OrdinalIgnoreCase.
952
953 2007-01-05  Sebastien Pouliot  <sebastien@ximian.com>
954
955         * DateTime.cs: Under 2.0 fix ParseExact to set DateTimeKind.Utc when
956         DateTimeStyles.AdjustToUniversal is used.
957
958 2007-01-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
959
960         * TermInfoDriver.cs: honor the backspace in ReadLine.
961
962 2006-12-30  Marek Safar  <marek.safar@gmail.com>
963
964         * String.cs: Character based method only.
965         (IndexOf, LastIndexOf, Replace, IndexOfAny): Performance improvements.
966         (Substring): Returns same instance when index is 0.
967
968 2006-12-30  Alp Toker  <alp@atoker.com>
969
970         * Decimal.cs:
971         * Math.cs: Implement missing Decimal.Ceiling methods for 2.0.
972         Closes #80384.
973
974 2006-12-22  Sebastien Pouliot  <sebastien@ximian.com> 
975
976         * DateTime.cs: Implement missing [To|From]Binary methods for 2.0.
977         * OperatingSystem.cs: Implement missing ServicePack and VersionString
978         properties (2.0).
979         * Version.cs: Add missing Major|MinorRevision properties for 2.0.
980
981 2006-12-14  Raja R Harinath  <rharinath@novell.com>
982
983         * Type.cs (MakeGenericType): Can only be called on a generic type
984         definition.
985
986 2006-12-03  Miguel de Icaza  <miguel@novell.com>
987
988         * DateTime.cs: Fix this on the 2.0 profile, return the
989         DateTimeKind for the Now property
990
991 2006-12-01  Duncan Mak  <duncan@a-chinaman.com>
992
993         * ArgumentOutOfRangeException.cs (.ctor): 
994         * NotFiniteNumberException.cs (.ctor): Add the 2.0 constructor
995         that takes a string and an inner Exception.
996
997 2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
998
999         * DateTime.cs :
1000           When comparing enumerations, two or more enumeration values might
1001           match. Thus basically we should do complete matching, but right
1002           now just do reverse order search since only numbered abbrev month
1003           names matter (and full iteration is a mess). Fixed bug #80094.
1004
1005 2006-12-01  Atsushi Enomoto  <atsushi@ximian.com>
1006
1007         * DateTime.cs :
1008           use new internal clone-less DateTimeFormatInfo members.
1009
1010 2006-11-29  Martin Baulig  <martin@ximian.com>
1011
1012         * INullableValue.cs: Removed.
1013
1014 2006-11-28  Duncan Mak  <duncan@novell.com>
1015
1016         * ArgumentNullException.cs (.ctor): Added new constructor that's
1017         new in .NET 2.0.
1018
1019         * InsufficientMemoryException.cs: Added missing 2.0 exception.
1020         
1021 2006-11-27  Jonathan Chambers  <joncham@gmail.com>
1022
1023         * __ComObject.cs: Removed IDispatchMono.
1024         
1025 2006-11-27 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1026
1027         * TermInfoDriver.cs:
1028         * Console.cs: lazy initialization of Console 2.0 (also when
1029         CancelKeyPress is used).
1030
1031 2006-11-27  Miguel de Icaza  <miguel@novell.com>
1032
1033         * Exception.cs (GetType): New method in 2.x, Another Moma catch. 
1034
1035 Mon Nov 27 19:34:16 CET 2006 Paolo Molaro <lupus@ximian.com>
1036
1037         * GC.cs: implemented the needed methods with icalls.
1038
1039 2006-11-26  Miguel de Icaza  <miguel@novell.com>
1040
1041         * Math.cs: Add Floor(Decimal d), for CreativeDocs.NET.
1042
1043         Go Moma!  http://www.mono-project.com/Moma
1044
1045         * Decimal.cs: Refactor code to implement TryParse.
1046
1047         Also, avoid initializing messages on every call to stripStyles
1048
1049 2006-11-22  Miguel de Icaza  <miguel@novell.com>
1050
1051         * DateTime.cs: A small performance hit, we store the actual time
1052         span in a boxed object.   This way, it can be updated from other
1053         threads if necessary.   We always unbox to get the value before
1054         any potential updates. 
1055
1056         Thanks to Gonzalo for catching this.
1057
1058 2006-11-21  Miguel de Icaza  <miguel@novell.com>
1059
1060         * TimeZone.cs (CurrentSystemTimeZone): Cache the current year
1061         daylight savings time in static variables.
1062
1063         (CurrentSystemTimeZone.OnDeserialization): Initialize
1064         this_year_dlt and this_year on this method.
1065
1066         (TimeZone): init statically the currentTimeZone instead of
1067         delaying that to the static property, avoiding a compare. 
1068
1069 2006-11-22  Lluis Sanchez Gual  <lluis@novell.com>
1070
1071         * Array.cs: (compare<T>) if a comparer is provided, it has
1072           priority over other comparison methods.
1073
1074 2006-11-14  Miguel de Icaza  <miguel@novell.com>
1075
1076         * Array.cs: TODOs will from now on be used to flag information
1077         that will be developer-visible, not to flag internal information
1078         that none of us reads or bothers about.
1079
1080         For those, use "FIXME" strings in the source code instead. 
1081
1082         * AppDomain.cs: Update to be more useful.
1083
1084 2006-11-13  Atsushi Enomoto  <atsushi@ximian.com>
1085
1086         * String.cs : fixed incorrect startIndex/length count in
1087           IndexOf(string,StringComparison).
1088
1089 2006-11-07  Marek Safar  <marek.safar@gmail.com>
1090
1091         * String.cs (LastIndexOf): If value is Empty, the return value is
1092         the start index position in value.
1093
1094 2006-10-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1095
1096         * TermInfoDriver.cs: prevent an invalid cast.
1097
1098 2006-10-26  Marek Safar  <marek.safar@seznam.cz>
1099
1100         * String.cs (Concat): Add fast-path for empty strings.
1101
1102 2006-10-20  Jonathan Chambers  <joncham@gmail.com>
1103
1104         * Variant.cs: Add support for bool and interfaces.
1105         
1106 2006-10-18  Kornél Pál  <kornelpal@gmail.com>
1107
1108         * Type.cs: Removed is_subtype_of because IsSubclassOf should be used
1109           that is public and virtual. IsClass: Checking for ValueType is
1110           unnecessary. IsEnum: UnderlyingSystemType is not used anymore so
1111           no EnumBuilder hack is necessary. Checking for Enum is
1112           unnecessary. IsSerializable: Walk BaseType for user defined types.
1113           IsSubclassOf: Walk BaseType for user defined types.
1114
1115         * MonoType.cs: IsValueTypeImpl is unnecessary. IsSubclassOf: Unlike
1116           Type system types throw ArgumentNullException on null Type
1117           argument.
1118
1119 2006-10-14  Gert Driesen  <drieseng@users.sourceforge.net>
1120
1121         * BadImageFormatException.cs: Changed message for default ctor to
1122         match MS. Use internal message field of Exception to check whether
1123         Message is null. Match MS default messages when no message is 
1124         set. Fixed ToString to match MS.
1125
1126 2006-10-09  Miguel de Icaza  <miguel@novell.com>
1127
1128         * Environment.cs: Handle SpecialFolder.MyMusic
1129
1130 2006-10-07 Gert Driesen <drieseng@users.sourceforge.net>
1131
1132         * Enum.cs: Use different exception message depending on whether the
1133         type of the passed in value is an Enum or not. Avoid looking up the
1134         enum's underlying type twice in case of "D" or "d" format specifier.
1135
1136 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1137
1138         * TermInfoDriver.cs: don't allow backspace if we're at the beginning
1139         position for a ReadLine.
1140
1141 2006-10-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1142
1143         * TermInfoDriver.cs: ironpython autocompletion works now.
1144
1145 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1146
1147         * Console.cs: avoid casting on windows.
1148
1149 2006-09-28 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1150
1151         * ConsoleDriver.cs:
1152         * TermInfoDriver.cs:
1153         * IConsoleDriver.cs:
1154         * CStreamWriter.cs:
1155         * ConsoleKeyInfo.cs:
1156         * NullConsoleDriver.cs:
1157         * Console.cs:
1158         * CStreamReader.cs:
1159         * WindowsConsoleDriver.cs: initial changes to handle cursor position
1160         and screen buffers.
1161
1162 2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
1163
1164         * ArithmeticException.cs: Modified default message to match MS, to
1165         ensure a local regression test passes on both Mono and .NET.
1166
1167 2006-09-21  Gert Driesen  <drieseng@users.sourceforge.net>
1168
1169         * Exception.cs: Marked message internal to allow derived classes to
1170         access the raw message (without changing the public API).
1171
1172 2006-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1173
1174         * ConsoleDriver.cs:
1175         * TermInfoDriver.cs:
1176         * IConsoleDriver.cs:
1177         * Console.cs:
1178         * WindowsConsoleDriver.cs: don't switch to the alternate window.
1179         Trigger the cancel event. Retrieve the cursor position at the
1180         beginning, as we're going to keep track of it instead of querying it
1181         all the time.
1182
1183 2006-09-14  Jonathan Chambers  <joncham@gmail.com>
1184
1185         * Environment.cs (ProcessorCount): Implement as icall.
1186         Patch by Jason McFall.
1187
1188 2006-09-05  Raja R Harinath  <rharinath@novell.com>
1189
1190         * DateTime.cs (Today) [NET_2_0]: Set kind to Local.
1191
1192 2006-09-02  Zoltan Varga  <vargaz@gmail.com>
1193
1194         * Enum.cs (Equals): Use the generic Equals implementation from ValueType which
1195         is faster and avoids allocations.
1196
1197 2006-09-01  Martin Baulig  <martin@ximian.com>
1198
1199         * Array.cs (Array.InternalArray): Removed the helper class;
1200         instead we use private generic methods in System.Array which are
1201         inserted into the vtable at runtime.
1202
1203 2006-08-23 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1204
1205         * ConsoleCancelEventArgs.cs: fix my build.
1206
1207 2006-08-22  Miguel de Icaza  <miguel@novell.com>
1208
1209         * MulticastDelegate.cs: Make DynamicInvokeImpl internal in 2.0 
1210
1211         * Converter.cs: update signature to final.
1212
1213         * ModuleHandle.cs: Removed the [Obsolete] flags as they removed
1214         those in the final 2.0
1215
1216         * DateTime.cs: Fixed the signature. 
1217
1218         * Convert.cs: Removed API calls that were deprecated in final 2.0
1219
1220         * Enum.cs: Updated to use the obsoletes flagged in 2.0.
1221
1222         * ConsoleCancelEventArgs.cs: Updated to 2.0
1223
1224 2006-08-19  Miguel de Icaza  <miguel@novell.com>
1225
1226         * Attribute.cs: This needs to do a deep compare, not a shallow
1227         one.   Ran into this bug with the VBNC compiler that compares two
1228         separate attributes for equality using this.
1229
1230         * String.cs (StartsWith): Fix the overloaded constructor that
1231         takes a CultureInfo, if that is null, it means to use the current
1232         culture. 
1233
1234         * TermInfoDriver.cs: Do not throw exceptions on the driver for
1235         SetWindowSize and SetWindowPosition, they can be treated as nops.
1236
1237 2006-08-18  Zoltan Varga  <vargaz@gmail.com>
1238
1239         * *.cs: Use String.Empty instead of "" in a lot of places.
1240
1241 2006-08-17  Sebastien Pouliot  <sebastien@ximian.com>
1242
1243         * DateTime.cs: Remove last patch to DateTime as the fix wasn't correct
1244         and made most x.509 unit tests fails. However the original problem is 
1245         back (only on 2.0).
1246
1247 2006-08-14  Raja R Harinath  <rharinath@novell.com>
1248
1249         Fix #78943
1250         * Activator.cs (CreateInstance): Throw ArgumentException on open
1251         generic types.
1252
1253 2006-08-14  Miguel de Icaza  <miguel@novell.com>
1254
1255         * MonoType.cs: Do the argument testinf for SetField later,
1256         otherwise the implicit (and not documented, but already considered
1257         side effect of checking SetProperty) did not work.
1258
1259         Bug fix #79023
1260
1261 2006-08-13  Atsushi Enomoto  <atsushi@ximian.com>
1262
1263         * String.cs : Normalize() and IsNormalized() implementation.
1264
1265 2006-08-10  Jonathan Chambers  <joncham@gmail.com>
1266
1267         * __ComObject.cs: Added defintion of IDispatch interface, and
1268         property. Get CLSID of supertype for creation if class not
1269         ComImport attributed (allows for inheritance of RCW).
1270         * MonoType.cs: Implement IsCOMObjectImpl.
1271
1272 2006-08-09  Atsushi Enomoto  <atsushi@ximian.com>
1273
1274         * DateTime.cs : fixed X509Certificate() case that regressed only
1275           under NET_2_0.
1276
1277 2006-08-07  Kornél Pál  <kornelpal@gmail.com>
1278
1279         * Console.cs: Use correct code pages on Windows and initialize
1280           InputEncoding and OutputEncoding to the actual encodings used.
1281
1282 2006-08-05  Duncan Mak  <duncan@novell.com>
1283
1284         * Char.cs (TryParse): Implemented missing 2.0 method, which fixed
1285         bug #79007.
1286
1287 2006-07-28  Jonathan Chambers  <joncham@gmail.com>
1288
1289         * __ComObject.cs: Added support for marshalling objects.
1290         
1291 2006-07-24  Atsushi Enomoto  <atsushi@ximian.com>
1292
1293         * Char.cs : implemented utf32 conversion methods thus fixed bug #78856.
1294
1295 2006-07-19  John Luke  <john.luke@gmail.com>
1296
1297         * TermInfoDriver.cs: switch order of alt and control when
1298         calling new ConsoleKeyInfo()
1299
1300 2006-07-19  Kornél Pál  <kornelpal@gmail.com>
1301
1302         * String.cs: Improve CreateString () performance when length is zero.
1303
1304 2006-07-18  Kornél Pál  <kornelpal@gmail.com>
1305
1306         * String.cs: Added CreateString () methods. Constructors with matching
1307           argument list are redirected to these methods that improves
1308           performance as well as fixes bug #78703.
1309
1310 2006-07-15  Jonathan Chambers  <joncham@gmail.com>
1311
1312         * __ComObject.cs: Begin implementing COM Interop.
1313         * Environment.cs: Increment corlib version.
1314         
1315 2006-07-12  Zoltan Varga  <vargaz@gmail.com>
1316
1317         * Delegate.cs (DynamicInvokeImpl): Add support for bound delegates in Net 2.0.
1318
1319 2006-07-11  Zoltan Varga  <vargaz@gmail.com>
1320
1321         * Double.cs (Parse): Fix handling of inner whitespace.
1322
1323 2006-07-09  Zoltan Varga  <vargaz@gmail.com>
1324
1325         * Int32.cs: Fix a warning.
1326
1327 2006-07-07  Atsushi Enomoto  <atsushi@ximian.com>
1328
1329         * TimeZone.cs : consider DateTimeKind in ToLocalTime() and 
1330           ToUniversalTime(). Fixed bug #78784. Patch by Thong Nguyen.
1331         * DateTime.cs : DateTimeKind for UtcNow should be Utc.
1332
1333 2006-06-28  Kornél Pál  <kornelpal@gmail.com>
1334
1335         * Char.cs: Implemented IsHighSurrogate and IsLowSurrogate methods.
1336
1337 2006-06-27  Atsushi Enomoto  <atsushi@ximian.com>
1338
1339         * Double.cs : don't throw Exception in TryParse() for 'E'.
1340           Fixed bug #78546.
1341
1342 2006-06-20  Jb Evain  <jbevain@gmail.com>
1343
1344         * Math.cs: implement Math.Truncate.
1345
1346 2006-06-13  Atsushi Enomoto  <atsushi@ximian.com>
1347
1348         * DateTime.cs :
1349           Another lame win32 dependent pattern. Fixed bug #78618.
1350
1351 2006-06-09  Jonathan Chambers  <jonathan.chambers@ansys.com>
1352
1353         * Environment.cs: Implement Set/GetEnvironmentVariable for User/Machine.        
1354
1355 2006-06-07  Kornél Pál  <kornelpal@gmail.com>
1356
1357         * Environment.cs: Use Consts.FxFileVersion for Environment.Version
1358           as Consts.RuntimeVersion was removed.
1359
1360 2006-06-05  Jonathan Chambers  <jonathan.chambers@ansys.com>
1361
1362         * Variant.cs: Added.
1363         * Environment.cs: Incremented corlib version since adding Variant.      
1364         
1365 2006-06-01  Raja R Harinath  <rharinath@novell.com>
1366
1367         * Nullable.cs (operator==, operator!=): Remove.
1368
1369 2006-05-31  Zoltan Varga  <vargaz@gmail.com>
1370
1371         * MonoDummy.cs: Removed as it is no longer needed.
1372
1373         * Environment.cs: Bump corlib version.
1374         
1375         * Environment.cs: Revert the last change.
1376         
1377         * Environment.cs: Bump corlib version.
1378
1379         * MonoAsyncCall.cs: New file.
1380
1381 2006-05-30  Gert Driesen  <drieseng@users.sourceforge.net>
1382
1383         * Char.cs: Removed duplicate (explicit) interface implementation.
1384         * String.cs: Removed duplicate (explicit) interface implemenation.
1385         * MulticastDelegate.cs: Fixed API mismatches.
1386
1387 2006-05-29 Paolo Molaro <lupus@ximian.com>
1388
1389         * String.cs: make sure that the chars truncated by a stringbuilder
1390         are zeroed.
1391
1392 2006-05-29  Martin Baulig  <martin@ximian.com>
1393
1394         * Exception.cs
1395         (Exception.StackTrace): Use the new stack trace format which is
1396         very similar to the one of MS.NET - method name goes first,
1397         file / line number last and in the method name, we separate class
1398         and method name by `.'.
1399
1400         * Environment.cs
1401         (Environment.StackTrace): Enable line-number information.
1402
1403 2006-05-24  Atsushi Enomoto  <atsushi@ximian.com>
1404
1405         * DateTime.cs :
1406           Implement 2.0 TryParseExact(). Patch by Seo Sanghyeon.
1407
1408 2006-05-17  Kazuki Oikawa  <kazuki@panicode.com>
1409
1410         * Array.cs : added internal sort method used
1411           in System.Collections.Generics.List<T>.Sort(Comparison<T>).
1412
1413 2006-05-15  Zoltan Varga  <vargaz@gmail.com>
1414
1415         * Environment.cs: Bump corlib version.
1416
1417 2006-05-10  Zoltan Varga  <vargaz@gmail.com>
1418
1419         * MonoType.cs (GetMethodImpl): Fix a warning.
1420
1421 2006-05-08  Atsushi Enomoto  <atsushi@ximian.com>
1422
1423         * ArrayTest.cs : use proper comparer in IndexOf() and LastIndexOf().
1424           Patch by Kazuki Oikawa. Fixed bug #77277.
1425
1426 2006-05-07  Zoltan Varga  <vargaz@gmail.com>
1427
1428         * Nullable.cs (Equals): Fix comparison to null. Fixes #78322.
1429
1430 2006-04-28  Atsushi Enomoto  <atsushi@ximian.com>
1431
1432         * Nullable.cs : updated Nullable<T> API to 2.0 RTM.
1433
1434 2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>
1435
1436         * Double.cs : (Parse) handle currency symbol when
1437           AllowCurrencySymbol is passed as part of the style. Patch by
1438           nede@aliquant.com, modified to eliminate redundant Substring().
1439           This fixes bug #77721.
1440
1441 2006-04-26  Atsushi Enomoto  <atsushi@ximian.com>
1442
1443         * MonoType.cs : (GetMethod) when zero-length type[] is explicitly
1444           passed, don't return methods with some arguments. Fixed bug #77367.
1445
1446 2006-04-21  Gert Driesen  <drieseng@users.souceforge.net>
1447
1448         * Enum.cs: Provide meaningful message when type of passed in value
1449         does not match enum type.
1450
1451 2006-04-19  Raja R Harinath  <rharinath@novell.com>
1452
1453         * Char.cs (Equals): Don't access 'm_value' field of other
1454         instances.  Cast directly to 'char'.
1455
1456 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
1457
1458         * DateTime.cs : implement SpecifyKind(). Patch by Thong Nguyen.
1459
1460 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
1461
1462         * NumberFormatter.cs : general performance improvements. Avoid 
1463           extraneous evaluation for simple formatting. Details are seen in 
1464           bug #77792. Patch by Kazuki Oikawa.
1465
1466 2006-04-13  Atsushi Enomoto  <atsushi@ximian.com>
1467
1468         * DateTime.cs : implement IsDaylightSavingTime().
1469           Patch by Seo Sanghyeon <tinuviel@sparcs.kaist.ac.kr>.
1470
1471 2006-04-04  Atsushi Enomoto  <atsushi@ximian.com>
1472
1473         * Array.cs :
1474           added some more [ReliabilityContract].
1475           removed some [CLSCompliant].
1476           renamed generic method parameter names.
1477
1478 2006-03-31  Zoltan Varga  <vargaz@gmail.com>
1479
1480         * Environment.cs (SetEnvironmentVariable): Implement.
1481
1482 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
1483
1484         * Array.cs : oops, the last change caused regression. The array must
1485           be transparent to ReadOnlyCollection, not create another list.
1486
1487 2006-03-28  Atsushi Enomoto  <atsushi@ximian.com>
1488
1489         * Array.cs : AsReadOnly<T>() in RTM returns ReadOnlyCollection<T>.
1490           Thus removed ReadOnlyArray<T> and ReadOnlyArrayEnumerator<T>.
1491           In 2.0 some members became non-virtual.
1492
1493 2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>
1494
1495         * String.cs : oops, NET_2_0.
1496
1497 2006-03-23  Atsushi Enomoto  <atsushi@ximian.com>
1498
1499         * String.cs : added new IndexOf() and LastIndexOf() overloads, and
1500           IEnumerable<char>.GetEnumerator().
1501
1502 2006-03-21  Kornél Pál  <kornelpal@gmail.com>
1503
1504         * String.cs: Make memcpy4 private as it is a helper method.
1505           Make memcpy internal to can be used from UnicodeEncoding.
1506
1507 2006-03-19  Marek Safar  <marek.safar@seznam.cz>
1508
1509         * Nullable.cs (Compare, Equals): Added constrain as gmcs now correctly
1510         reports an error here.
1511
1512 2006-03-16  Atsushi Enomoto  <atsushi@ximian.com>
1513
1514         * Double.cs : (Parse) reject String.Empty.
1515
1516 Wed Mar 15 16:30:51 CET 2006 Paolo Molaro <lupus@ximian.com>
1517
1518         * LocalDataStoreSlot.cs: implement as index in an array.
1519         Implemented finalizer and allow it to remove the data stored
1520         in the slot.
1521
1522 2006-03-15  Zoltan Varga  <vargaz@gmail.com>
1523
1524         * Environment.cs: Bump corlib version.
1525
1526 2006-03-10  Zoltan Varga  <vargaz@gmail.com>
1527
1528         * MonoCustomAttrs.cs (IsDefined): Avoid a runtime assert if a type
1529         overwrites GetCustomAttributes () but not IsDefined ().
1530
1531 2006-03-07  Peter Dennis Bartok  <pbartok@novell.com>
1532
1533         * Environment.cs: Bumped corlib version to 48 (due to r57532)
1534
1535 2006-03-07  Martin Baulig  <martin@ximian.com>
1536
1537         * String.cs (String.FormatHelper): Try getting an `ICustomFormatter'
1538         from the `provider' if possible.
1539
1540 2006-02-26  Gert Driesen  <drieseng@users.souceforge.net>
1541
1542         * DecimalFormatter.cs: Removed obsolete class, as it has been replaced
1543         by NumberFormatter.
1544         * DoubleFormatter.cs: Same.
1545         * SingleFormatter.cs: Same.
1546
1547 2006-02-21  Marek Safar  <marek.safar@seznam.cz>
1548
1549         * String.cs (Equals): Optimized for speed.
1550
1551 2006-02-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1552
1553         * TermInfoDriver.cs: patch by Mike Hull that fixes bug #77518.
1554
1555 Mon Feb 20 11:19:54 CET 2006 Paolo Molaro <lupus@ximian.com>
1556
1557         * MonoType.cs: patch from Joachim Ante <joe@otee.dk> to
1558         improve error messages.
1559
1560 2006-02-15  Martin Baulig  <martin@ximian.com>
1561
1562         * Type.cs (Type.IsGenericInstance): Removed.
1563
1564 2006-02-14  Ankit Jain  <jankit@novell.com>
1565             Raja R Harinath  <rharinath@novell.com>
1566  
1567         * ArraySegment.cs (.ctor): Fix bounds check. Rename param 'length' to
1568         'count'.
1569
1570 2006-02-11  Zoltan Varga  <vargaz@gmail.com>
1571
1572         * TermInfoDriver.cs (CreateKeyInfoFromInt): Fix handling of tab and its
1573         friends.
1574         
1575         * TermInfoDriver.cs (GetWindowDimensions): Obtain the exact terminal
1576         size using an icall.
1577         (GetCursorPosition): Convert the row and column to 0 based indexing. 
1578         Also fix reading of large values.
1579         (CreateKeyInfoFromInt): Convert LF to ConsoleKey.Enter.
1580
1581         * ConsoleDriver.cs (GetTtySize): New icall.
1582
1583 2006-02-10  Zoltan Varga  <vargaz@gmail.com>
1584
1585         * Array.cs: Fix some methods which previously returned Nullable<T>.
1586
1587         * Nullable.cs: Add T: struct constraint and fix constructor.
1588
1589 Fri Feb 3 11:01:46 CET 2006 Paolo Molaro <lupus@ximian.com>
1590
1591         * String.cs: changed StartsWith/EndsWith to faster versions.
1592
1593 2006-02-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1594
1595         * String.cs: implement 2.0 StartsWith and EndsWith new overloads. Based
1596         on a patch by Thong Nguyen.
1597
1598 2006-01-31  Zoltan Varga  <vargaz@gmail.com>
1599
1600         * String.cs: Implement one of the new net 2.0 Split methods.
1601
1602 2006-01-31  Atsushi Enomoto  <atsushi@ximian.com>
1603
1604         * String.cs : (LastIndexOf) Fixed bug #77412. It should not expect
1605           that value length is bigger than its index.
1606
1607 2006-01-27  Zoltan Varga  <vargaz@gmail.com>
1608
1609         * DateTime.cs: Add some 2.0 methods and properties.
1610
1611 2006-01-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1612
1613         * Console.cs: if InternalCodePage returns -1, use the default encoding.
1614         Also match the UTF8 one properly. Patch by wall_john@sohu.com.
1615
1616 2006-01-19  Atsushi Enomoto  <atsushi@ximian.com>
1617
1618         * ModuleHandle.cs : GetPEKind() is not public in 2.0 RTM.
1619
1620 2006-01-16  Alp Toker  <alp@atoker.com>
1621
1622         * TimeSpan.cs: Simple implementation of NET 2.0 TryParse() using
1623         try/catch
1624
1625 2006-01-05  Raja R Harinath  <rharinath@novell.com>
1626
1627         Fix regressions introduced by the fix to #71300.
1628         * Activator.cs (CreateInstance): Use Binder.SelectMethod instead
1629         of home-grown FindBestCtor.
1630         (FindBestCtor): Delete.
1631
1632 2006-01-03  Zoltan Varga  <vargaz@gmail.com>
1633
1634         * Nullable.cs: Update to Net 2.0 RTM.
1635         
1636         * Nullable.cs: Add comments about runtime dependencies on the layout of
1637         this type.
1638
1639 2006-01-02  Sebastien Pouliot  <sebastien@ximian.com>
1640
1641         * Activator.cs: Now find the best ctor when null are used for 
1642         paramaters. Fix bug #71300. Added checks for specific types (void,
1643         TypedReference, ArgIterator and RuntimeArgumentHandle).
1644         * Console.cs: Re-use Environment logic to detect Windows.
1645         * Type.cs: Re-applied r45150 as the real bug was in Activator.
1646
1647 2006-01-02  Zoltan Varga  <vargaz@gmail.com>
1648
1649         * Activator.cs: Add a 'params' to one of the CreateInstance overloads.
1650
1651         * RuntimeTypeHandle.cs RuntimeMethodHandle.cs RuntimeFieldHandle.cs:
1652         Add == and != operators.
1653
1654 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com>
1655
1656         * Environment.cs: Bump corlib version to 46.
1657         * TimeZone.cs: Partial fix for #76094. Added [Serializable] attribute 
1658         and renamed internal CurrentTimeZone class to CurrentSystemTimeZone 
1659         (like MS). This allows serialization roundtrip to work in Mono but 
1660         there's still an issue when deserializing a stream from MS. 
1661
1662 2005-12-23  Sebastien Pouliot  <sebastien@ximian.com> 
1663  
1664         * NumberFormatter.cs: Fixed rounding for float and the string output
1665         now includes all the precision (not counting preceding zeros). This
1666         fix the DecimalTest.TestConstructSingleRounding_NotWorking test cases.
1667
1668 2005-12-21  Sebastien Pouliot  <sebastien@ximian.com> 
1669  
1670         * Array.cs: Fixed Sort<T> with IComparable (generic or not) bug #77039
1671
1672 2005-12-20  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1673
1674         * Array.cs: Added the Sort<T> methods (generics). 
1675
1676 2005-12-19  Sebastien Pouliot  <sebastien@ximian.com> 
1677  
1678         * Array.cs: Fixed BinarySearch when the array is empty (#77030). Added
1679         some null check which throws ArgumentNullException under 2.0.
1680
1681 2005-12-15  Sebastien Pouliot  <sebastien@ximian.com>
1682
1683         * DateTime.cs: Added MonoTODO to ctor accepting a Calandar instance.
1684         * Double.cs: Under 2.0 throw a ArgumentException when parsing with
1685          NumberStyles.AllowHexSpecifier. Partial fix for #72221. Added the
1686         second, simpler, TryParse method (2.0).
1687         * Single.cs: Added the TryParse methods for 2.0.
1688
1689 2005-12-15  Raja R Harinath  <rharinath@novell.com>
1690
1691         * Type.cs (IsGenericType): Make virtual.
1692
1693 2005-12-08  Sebastien Pouliot  <sebastien@ximian.com> 
1694
1695         * AppDomainSetup.cs: ApplicationBase throw exception on get (not on 
1696         set). New behaviour is more like MS - but most issues (unit tests)
1697         were really path issues. Fix bug #71291.
1698         * DateTime.cs: Add more information when throwing an exception in 
1699         ctor(long). Useful for debugging.
1700
1701 2005-12-07  Zoltan Varga  <vargaz@gmail.com>
1702
1703         * Single.cs Double.cs: Fix warnings.
1704
1705 2005-12-06  Sebastien Pouliot  <sebastien@ximian.com> 
1706  
1707         * Convert.cs: ToBase64String method didn't use the option parameter so
1708         we always included new lines. Fix bug #76876.
1709
1710 2005-12-06  Sebastien Pouliot  <sebastien@ximian.com>
1711
1712         * AppDomainSetup.cs: Added missing ComVisible and removed LAMESPEC 
1713         (the docs were fixed).
1714         * NumberFormatter.cs: Fixed the "NotWorking" case where 1.15 was 
1715         misrounded compared to MS implementation. Extra care is required when
1716         dealing with the extra 2 digits information (e.g. double precision is
1717         15 digits but 17 are kept - for a reason ;-)
1718
1719 2005-12-05  Ben Maurer  <bmaurer@ximian.com>
1720
1721         * Environment.cs: Bump version
1722
1723         * Nullable.cs: New Box and Unbox methods for the jit
1724
1725 2004-12-05  Peter Dennis Bartok <pbartok@novell.com>
1726
1727         * Enum.cs: Properly handle "No bits set" case even if the sorted numbers
1728           list does not have enum value 0 as the first item. Fixes #76921
1729
1730 2005-12-05  Sebastien Pouliot  <sebastien@ximian.com>
1731
1732         * AppDomain.cs: CreateComInstanceFrom isn't static in any profile.
1733
1734 Mon Dec 5 15:14:59 CET 2005 Paolo Molaro <lupus@ximian.com>
1735
1736         * Double.cs: remove unused icall.
1737         * BitConverter.cs: handle double binary format on ARM FPA.
1738
1739 2005-12-02  Alp Toker  <alp@atoker.com>
1740
1741         * MonoType.cs:
1742         * Type.cs: DeclaringMethod should return MethodBase, not MethodInfo
1743
1744 2005-12-02  Alp Toker  <alp@atoker.com>
1745
1746         * AppDomain.cs: ReflectionOnlyPreBindAssemblyResolve renamed to
1747         ReflectionOnlyAssemblyResolve in 2.0 final
1748
1749 2005-12-01  Alp Toker  <alp@atoker.com>
1750
1751         * String.cs: Add static and non-static Equals(... StringComparison) for
1752         2.0.
1753
1754 2005-12-01 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1755
1756         * TermInfoDriver.cs: special case for the escape key. Fixes bug #76781.
1757
1758 2005-11-30 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1759
1760         * TermInfoDriver.cs: if the cursor_address capability contains a %i, we
1761         have to add 1 to x and y when setting the cursor position.
1762         Fixes bug #76856.
1763
1764         * Convert.cs: remove unused variables.
1765
1766 Wed Nov 30 12:14:20 EST 2005 Paolo Molaro <lupus@ximian.com>
1767
1768         * NumberFormatter.cs: work around arch-specific ulong cast behaviour
1769         with large numbers.
1770
1771 Tue Nov 29 05:38:37 EST 2005 Paolo Molaro <lupus@ximian.com>
1772
1773         * Convert.cs: fix endianess issue when converting to base-8
1774         format. All the base code would need a rewrite for efficience.
1775
1776 2005-11-25  Sebastien Pouliot  <sebastien@ximian.com>
1777
1778         * String.cs: Added support for Compare(... StringComparison) in 2.0.
1779
1780 2005-11-25  Alp Toker  <alp@atoker.com>
1781
1782         * Type.cs (IsVisible): New 2.0 property, implemented recursively.
1783
1784 2005-11-17  Dick Porter  <dick@ximian.com>
1785
1786         * Environment.cs: Incremented corlib version
1787
1788 2005-11-14  Carlos Alberto Cortez <calberto.cortez@gmail.com>
1789
1790         * Int32.cs, UInt32.cs, Int16.cs, UInt16.cs, Int64.cs,
1791         UInt64.cs, Byte.cs, SByte.cs, Double.cs : Modify internal Parse
1792         methods to return the exception as an out parameter,
1793         instead of throwing it. This will be of special help
1794         to TryParse methods.
1795         * Environment.cs: Update corlib version to 42.
1796         
1797 2005-11-14  Raja R Harinath  <rharinath@novell.com>
1798
1799         * EventHandler.cs (EventHandler<TEventArgs>): Rename from EventHandler<T>.
1800
1801 2005-11-11  Zoltan Varga  <vargaz@gmail.com>
1802
1803         * Type.cs (GetPseudoCustomAttributes): Return ComImportAttribute as well.
1804
1805 2005-11-11  Lluis Sanchez Gual  <lluis@novell.com>
1806
1807         * TimeZone.cs: Removed incorrect double-check lock and unneeded
1808         hashtable access.
1809
1810 2005-11-11  Marek Safar  <marek.safar@seznam.cz>
1811
1812         * Type.cs: IsNested implemented, signature fixes.
1813
1814 2005-11-11  Raja R Harinath  <rharinath@novell.com>
1815
1816         * Array.cs (Resize<T>) [2-argument variant]: Fix nullref.
1817
1818 2005-11-10  Zoltan Varga  <vargaz@gmail.com>
1819
1820         * Array.cs (Resize<T>): New internal method which takes a 'length' argument
1821         as well to avoid copying the whole array.
1822
1823 2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>
1824
1825         * Int64.cs : ditto for long.
1826
1827 2005-11-09  Atsushi Enomoto  <atsushi@ximian.com>
1828
1829         * Int32.cs : Parse("2147483648", format_provider) should be rejected.
1830
1831 2005-11-09  Sebastien Pouliot  <sebastien@ximian.com>
1832
1833         * AttributeTargets.cs: Added [ComVisible (true)] and [Serializable] 
1834         in 2.0 profile.
1835         * Base64FormattingOptions.cs: Added missing [Flags] attribute.
1836         * ConsoleKey.cs: Removed old BackSpace and WhiteSpace (they were 
1837         already replaced by Backspace and Whitespace)
1838         * DateTime.cs: Moved DayOfWeek enum to it's own file.
1839         * DateTimeKind.cs: New (2.0) enum.
1840         * DayOfWeek.cs: New file (extracted from DateTime.cs).
1841         * DomainManagerInitializationFlags.cs: Removed extra [Serializable].
1842         * EnvironmentVariableTarget.cs: Added [ComVisible (true)] and fixed 
1843         values (-1 to all of them).
1844         *  Exception.cs: Added a LinkDemand for SerializationFormatter on
1845         GetObjectData method.
1846         *  LoaderOptimization.cs: Added [ComVisible (true)] and [Serializable] 
1847         on enum and added [Obsolete] to DomainMask and DisallowBindings in 2.0
1848         profile.
1849         * PlatformID.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
1850         profile.
1851         * StringComparison.cs: New (2.0) enum (needed for Uri).
1852         * TermInfoDriver.cs: Fixed BackSpace -> Backspace (see ConsoleKey.cs).
1853         * TypeCode.cs: Added [ComVisible (true)] and [Serializable] in 2.0 
1854         profile.
1855
1856 2005-11-08  Atsushi Enomoto  <atsushi@ximian.com>
1857
1858         * Type.cs : I forgot to mention, some '(' were missing in the
1859           improved patch ;-)
1860
1861 2005-11-08  Zoltan Varga  <vargaz@freemail.hu>
1862
1863         * Type.cs (GetPseudoCustomAttributes): Check for TypeAttributes.Serializable instead of
1864         IsSerializable property, since the latter returns true for delegates/enums.
1865
1866 2005-11-05  Kornél Pál  <kornelpal@hotmail.com>
1867
1868         * Environment.cs: Use Consts.RuntimeVersion as Environment.Version that
1869           makes maintenance easier.
1870
1871 2005-10-24  Martin Baulig  <martin@ximian.com>
1872
1873         * Type.cs (Type.IsGenericTypeDefinition): Make this virtual.
1874
1875 2005-10-22 Gonzalo Paniagua Javier <gonzalo@ximian.com>
1876
1877         * String.cs: fix bound checkings for LastIndexOfAny. Closes bug #76519.
1878
1879 2005-10-20  Raja R Harinath  <rharinath@novell.com>
1880
1881         * Array.cs (Swapper): Remove NET_2_0 guards from nested declaration.
1882
1883 2005-10-16  Michal Moskal  <malekith@nemerle.org>
1884
1885        * TermInfoDriver.cs: Call Init () in Background/ForegroundColor.
1886
1887 2005-10-14  Atsushi Enomoto  <atsushi@ximian.com>
1888
1889         * DateTime.cs : another crappy Windows dependent format.
1890
1891 2005-10-14  Ben Maurer  <bmaurer@ximian.com>
1892
1893         * DateTime.cs: Speed up when parsing date time objects by not
1894         duplicating cultureinfo arrays.
1895
1896 2005-10-13  Zoltan Varga  <vargaz@gmail.com>
1897
1898         * Type.cs (GetTypeCode): Applied patch from 
1899         Mike Welham <mwelham@gmail.com>. Return TypeCode.Empty when null is
1900         passed in.
1901
1902 2005-10-07  Zoltan Varga  <vargaz@gmail.com>
1903
1904         * Delegate.cs: Add support for delegate covariance and contravariance
1905         from net 2.0.
1906
1907 2005-10-03  Atsushi Enomoto  <atsushi@ximian.com>
1908
1909         * StringComparer.cs : (OrdinalIgnoreCaseComparer.Equals()) reverse.
1910
1911 2005-09-26  Zoltan Varga  <vargaz@gmail.com>
1912
1913         * String.cs (ParseFormatSpecifier): Fix skipping of whitespace. Fixes
1914         #76204.
1915
1916 2005-09-23  Miguel de Icaza  <miguel@novell.com>
1917
1918         * Decimal.cs: Fix typo, patch from Tomas Kukol <tomas.kukol@gmail.com>
1919
1920 2005-09-19  Zoltan Varga  <vargaz@gmail.com>
1921
1922         * MonoCustomAttrs.cs (GetCustomAttributesInternal): Add
1923         attributeType parameter.
1924         (IsDefined): New icall.
1925
1926         * MonoCustomAttrs.cs: Avoid instantiating all custom attrs of an
1927         object when only a specific attribute type is requested. Fixes #76062.
1928
1929         * Environment.cs: Bump corlib version.
1930
1931 2005-09-09  Zoltan Varga  <vargaz@gmail.com>
1932
1933         * TypeLoadException.cs MissingMethodException.cs MissingFieldException.cs: Add new ctors called by the runtime. Improve Message property.
1934
1935 2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>
1936
1937         * DateTime.cs : (_DoParse) don't check ticks range before computing
1938           the actual value. Fixed bug #76082.
1939
1940 2005-09-14  Atsushi Enomoto  <atsushi@ximian.com>
1941
1942         * TimeZone.cs : When the target DateTime is in the range of
1943           DST end to DST + delta, don't adjust UtcOffset gap between that of
1944           DST and that of STD. This should fix bug #75985.
1945
1946 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
1947
1948         * TimeZone.cs, DateTime.cs :
1949           - ToLocalTime() and ToUniversalTime() are moved to TimeZone.
1950           - Added more COM patterns. Patch by Ankit Jain. Fixed bug #72132.
1951           - use ToLocalTime() and don't depend on the own offset computation.
1952             Parse() with 'Z' pattern is closer to correct value on switching
1953             Daylight Saving Time. See bug #75985.
1954
1955 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
1956
1957         * DateTime.cs : (DoParse) DateTimeStyles.AdjustToUniversal was not
1958           handled as expected and it kept time value as local one.
1959           Patch by Brion Vibber. Fixed bug #75995.
1960
1961 2005-09-06  Atsushi Enomoto  <atsushi@ximian.com>
1962
1963         * DateTime.cs : Literal escape (\) was not checking format as
1964           expected. Fixed bug #75213.
1965
1966 2005-09-05  Miguel de Icaza  <miguel@novell.com>
1967
1968         * MonoType.cs: Patch from Jonathan Chambers to implement
1969         Type.GUID. 
1970
1971 2005-09-05  Martin Baulig  <martin@ximian.com>
1972
1973         Reflect latest API changes in the August CTP.
1974
1975         * Type.cs (Type.HasGenericArguments): Removed.
1976         (Type.BindGenericParameters): Renamed to MakeGenericType().
1977
1978 2005-09-01  Atsushi Enomoto  <atsushi@ximian.com>
1979
1980         * DateTime.cs : another idiotic COM dependent format.
1981
1982 2005-09-01  Kornél Pál  <kornelpal@hotmail.com>
1983
1984         * __ComObject.cs: Fixed to be internal. Removed CLSCompliant attribute.
1985         Added some comments about the class.
1986
1987 2005-08-30  Sebastien Pouliot  <sebastien@ximian.com>
1988
1989         * AppDomain.cs: Use the more concise property syntax for declarative
1990         security.
1991         * AppDomainManager.cs: Default HostSecurityManager is null.
1992
1993 2005-08-25  Atsushi Enomoto  <atsushi@ximian.com>
1994
1995         * NumberFormatter.cs : eliminate non-ASCII character.
1996
1997 2005-08-25  Marek Safar  <marek.safar@seznam.cz>
1998
1999         * Enum.cs: Better exception message.
2000         
2001 2005-08-21  Gert Driesen  <drieseng@users.sourceforge.net>
2002
2003         * Convert.cs: In FromBase64String, return empty byte array for zero
2004         length string. Pass bool to InternalFromBase64String to control 
2005         whether to allow a whitespace-only string.
2006         * Environment.cs: Bump corlib version.
2007
2008 2005-08-20  Zoltan Varga  <vargaz@freemail.hu>
2009
2010         * Environment.cs: Bump corlib version.
2011
2012 2005-08-19  Zoltan Varga  <vargaz@freemail.hu>
2013
2014         * Math.cs: Implement a new 2.0 Round method.
2015
2016 2005-08-19  Gert Driesen  <drieseng@users.sourceforge.net>
2017
2018         * Convert.cs: Throw OverflowException if result is larger than
2019         ushort.MaxValue to match MS.NET. Remove commented code.
2020
2021 2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>
2022
2023         * Convert.cs: For now, do not throw OverflowException if hex prefixed
2024         value is negative for signed types (other than int64). Need to look
2025         into this further.      
2026
2027 2005-08-17  Gert Driesen  <drieseng@users.sourceforge.net>
2028
2029         * Convert.cs: Numerous fixed in overloads taking base to match 
2030         behaviour of MS.NET. Throw ArgumentOutOfRangeException is string is
2031         empty. If base is 16, 8 or 2, then throw ArgumentException if first 
2032         character is a negative sign. Throw OverflowException if hex prefixed 
2033         value is negative for signed types (other than int64) to match MS.NET. 
2034
2035 2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>
2036
2037         * DateTime.cs : added another COM dependent pattern (rather to describe
2038           how it works on .NET than to add the pattern itself...).
2039
2040 2005-08-16  Atsushi Enomoto  <atsushi@ximian.com>
2041
2042         * DateTime.cs : added case for bug #53023.
2043
2044 2005-08-10  Zoltan Varga  <vargaz@freemail.hu>
2045
2046         * Type.cs: Add IsGenericType property from NET 2.0.
2047
2048 2005-08-10  Atsushi Enomoto  <atsushi@ximian.com>
2049
2050         * String.cs : added new StartsWith()/EndsWith() override, fixing
2051           existing EndsWith() which incorrectly assumed that both string
2052           lengths must be equivalent (they are not always equal).
2053         * StringComparer.cs : added Ordinal and OrdinalIgnoreCase.
2054
2055 2005-08-09  Zoltan Varga  <vargaz@freemail.hu>
2056
2057         * String.cs: Implement Split(String[]) methods.
2058
2059 2005-08-09  Miguel de Icaza  <miguel@novell.com>
2060
2061         * AppDomainSetup.cs: Full-pathization of the appBase should only
2062         be done on Windows, the ":" condition never applied to Linux.
2063
2064         * ConsoleKey.cs: Include a few aliases for a few values that were
2065         introduced recently.
2066
2067 2005-08-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2068
2069         * ConsoleKey.cs: added Backspace, which has the same value as BackSpace.
2070         Fixes bug #75697.
2071
2072 2005-08-08  Atsushi Enomoto  <atsushi@ximian.com>
2073
2074         * String.cs : (StartsWith) compared string lengths are not always the
2075           same in culture-sensitive comparison.
2076
2077 2005-08-05  Gert Driesen  <drieseng@users.sourceforge.net>
2078
2079         * Array.cs: Changed protected ctor to private. Fixes API compatibility
2080         with MS.NET.
2081         * RuntimeFieldHandle.cs: Equals methods and GetHashCode should only
2082         be exposed in 2.0 profile.
2083         * RuntimeMethodHandle.cs: Equals methods and GetHashCode should only
2084         be exposed in 2.0 profile.
2085         * RuntimeTypeHandle.cs: Equals methods and GetHashCode should only
2086         be exposed in 2.0 profile.
2087         * Type.cs: Added GetType method and implemented _Type interface.
2088         Fixes API compatibility with MS.NET.
2089
2090 2005-07-28  Marek Safar  <marek.safar@seznam.cz>
2091
2092         * StringComparer.cs: Add generics version of string interfaces.
2093
2094 2005-07-26  Atsushi Enomoto  <atsushi@ximian.com>
2095
2096         * StringComparer.cs : implemented StringCultureComparer.GetHashCode().
2097
2098 2005-07-26  Zoltan Varga  <vargaz@freemail.hu>
2099
2100         * StringSplitOptions.cs MidpointRounding.cs: New files.
2101
2102         * String.cs Math.cs: Add stubs for some new 2.0 APIs.
2103
2104 2005-07-26  Marek Safar  <marek.safar@seznam.cz>
2105
2106         * StringComparer.cs: New file.
2107
2108 2005-07-26  Raja R Harinath  <harinath@gmail.com>
2109
2110         * Enum.cs (GetValue): Make private.  Return an ulong.
2111         (Parse): Tighten scope of couple of variables.  Use ulong when
2112         twiddling bits.
2113
2114 2005-07-25  Raja R Harinath  <rharinath@novell.com>
2115
2116         * Enum.cs (FindName, GetValue): New.  Carved out of ...
2117         (Parse): ... this.  Refactor and simplify code.  Avoid incurring
2118         exceptions when parsing names.  Avoid allocating arrays unless
2119         necessary.  Avoid conversion of an enumeration constant to its own
2120         type.  (Incorporates ideas from a patch by Gonzalo Paniagua Javier.)
2121
2122 2005-07-13  Lluis Sanchez Gual  <lluis@novell.com>
2123
2124         * MarshalByRefObject.cs: GetLifetimeService() should be virtual.
2125         Fixes bug #75527.
2126
2127 2005-07-13  Miguel de Icaza  <miguel@novell.com>
2128
2129         * Array.cs: Patch from rodrigobamboo@gmail.com that fixes the
2130         signature for GetValue and SetValue to make the long [] argument
2131         be a params argument. 
2132
2133 2005-07-11  Pedro Martínez Juliá  <pedromj@gmail.com>
2134
2135         * Convert.cs: Fix the bug when Convert.ChangeType was using
2136         NumberFormatInfo instead of DateTimeFormatInfo when the type to
2137         change is a DateTime.
2138
2139 2005-07-11  Martin Baulig  <martin@ximian.com>
2140
2141         * Array.cs: Use Type.Equals() instead of `==' to compare type
2142         parameters.     
2143
2144 2005-07-10  Kamil Skalski <nazgul@nemerle.org>
2145
2146         * Type.cs: Mark BindGenericParameters as deprecated. Use
2147         MakeGenericType as default implementation with updated signature.
2148
2149 2005-07-09  Zoltan Varga  <vargaz@freemail.hu>
2150
2151         * Attribute.cs (IsDefined): Fix IsDefined for ParameterInfo's. Fixes
2152         #75514.
2153
2154 2005-07-05  Lluis Sanchez Gual  <lluis@novell.com>
2155
2156         * DelegateSerializationHolder.cs: When the deserialized target is
2157         a proxy, call IsInstanceOfType to force the proxy to load the
2158         real type of the remote object. This is needed to make sure that
2159         subsequent calls to GetType() return the expected type. This fixes
2160         bug #75447.
2161
2162 2005-07-03  Ben Maurer  <bmaurer@ximian.com>
2163
2164         * OperatingSystem.cs: patch from Aleksandar Dezelin to fix
2165         serialization.
2166
2167 2005-06-30  Sebastien Pouliot  <sebastien@ximian.com> 
2168
2169         * Guid.cs: Avoid code duplication between overriden methods (new in 
2170         2.0). Avoid exception processing when possible. Renamed parameters to
2171         match the framework. Added ComVisible to NET_2_0.
2172
2173 2005-06-28  Elliott Draper  <el@eldiablo.co.uk>
2174
2175         * Activator.cs: This implements the generic Activator.CreateInstance<T>()
2176         function for NET_2_0. It's full signature is:
2177                 public static T CreateInstance<T>();
2178
2179 2005-06-28  Lluis Sanchez Gual  <lluis@novell.com>
2180
2181         * Decimal.cs: Renamed internal fields for the sake of serialization
2182         interoperability with MS.NET.
2183         * Exception.cs: In the StackTrace property, return the stack trace
2184         if it has a value, even if the exception has not been thrown
2185         (it may have been deserialized).
2186
2187 2005-06-28  Martin Baulig  <martin@ximian.com>
2188
2189         * Array.cs (Array.InternalArray<T>): New nested class; derives
2190         from Array.  This is now used by the runtime for arrays; fixes #74953.
2191
2192 2005-06-27  Atsushi Enomoto  <atsushi@ximian.com>
2193
2194         * String.cs : added some extra whitespace characters for Trim().
2195           Fixed bug #75259.
2196
2197 2005-06-13  Michal Moskal <malekith@nemerle.org>
2198         
2199         * MonoType.cs: Don't use MethodHandle in GetMethod/GetConstructor,
2200         since it now throws on MethodBuilders. Don't use FieldHandle in
2201         GetField (throws on FieldBuilder) - just use the name.
2202
2203 2005-06-13  Martin Baulig  <martin@ximian.com>
2204
2205         * MonoType.cs
2206         (MonoType.getFullName): Added `bool assembly_qualified' argument.
2207         (MonoType.AssemblyQualifiedName): The interncall now adds the
2208         assembly name, so we don't need to do it here.
2209         (MonoType.FullName): Use the new getFullName() API.
2210
2211 2005-06-14  Sebastien Pouliot  <sebastien@ximian.com>
2212
2213         * Char.cs: ToLowerInvariant and ToUpperInvariant are now public in 
2214         NET_2_0. Added "new" white char and ComVisible for 2.0.
2215
2216 2005-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2217
2218         * Convert.cs: FromBase64String and FromBase64CharArray are now internal
2219         calls to avoid extra allocations.
2220
2221 2005-06-09  Kamil Skalski <nazgul@nemerle.org>
2222
2223         * Type.cs: Add MakeGenericType method form .NET 2.0 beta 2 API
2224
2225         * Type.cs MonoType.cs: Add internal virtual
2226         Get{Method,Constructor,Field} for obtaining instanciated *Info objects
2227         from non-instanciated counterparts
2228
2229 2005-06-09  Zoltan Varga  <vargaz@freemail.hu>
2230
2231         * ModuleHandle RuntimeMethodHandle.cs RuntimeTypeHandle.cs RuntimeFieldHandle.cs RuntimeArgumentHandle.cs: Add missing 2.0 attributes.
2232
2233 2005-06-08  Zoltan Varga  <vargaz@freemail.hu>
2234
2235         * Type.cs: Add missing 2.0 attributes.
2236
2237 2005-06-07  Carlos Alberto Cortez <calberto.cortez@gmail.com>
2238
2239         * MonoCustomAttrs.cs: Added GetCustomAttributesDataInternal icall, and
2240         also internal method GetCustomAttributesData, used by 
2241         System.Reflection.CustomAttributeData.
2242         
2243 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
2244
2245         * Activator.cs: Added  _Activator interface (and members) for 1.1 and
2246         missing attributes (for both 1.1 and 2.0).
2247         * String.cs: Made internal To[Lower|Upper]Invariant methods public for
2248         2.0. Reworked Trim() to skip a useless call. Added missing attribute
2249         for 2.0.
2250         * Type.cs: Added  _Type, _MemberInfo interfaces (1.1/2.0). Added 
2251         missing attribute for 2.0. Hided some public/protected methods.
2252
2253 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
2254
2255         * ModuleHandle.cs: Update after PortableExecutableKinds name change.
2256
2257 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
2258
2259         * _AppDomain.cs: Added new members in the interface (added in 1.1 SP1)
2260         * AppDomain.cs: Added new members from _AppDomain interface.
2261         * AppDomainManager.cs: Fixed flags and added attributes.
2262         * DomainManagerInitializationFlags.cs: The flag has been renamed to 
2263         AppDomainManagerInitializationOptions in beta2.
2264
2265 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
2266
2267         * Type.cs MonoCustomAttrs.cs: Return SerializableAttribute for types as well.
2268
2269 2005-06-06  Sebastien Pouliot  <sebastien@ximian.com>
2270
2271         * Exception.cs: Implements _Exception only for 2.0.
2272
2273 2005-06-06  Zoltan Varga  <vargaz@freemail.hu>
2274
2275         * GC.cs: Fix build.
2276         
2277         * GC.cs UnhandledExceptionEventArgs.cs IntPtr.cs RuntimeFieldHandle.cs 
2278           String.cs Object.cs Math.cs RuntimeMethodHandle.cs ModuleHandle.cs 
2279           RuntimeTypeHandle.cs AppDomain.cs: Add some missing 2.0 methods/attributes.
2280
2281 2005-06-04 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2282
2283         * Environment.cs:
2284         * AppDomain.cs: if the assembly is loaded from a byte array, Location
2285         returns "". Fixes bug #74958.
2286
2287 2005-06-04  Ben Maurer  <bmaurer@ximian.com>
2288
2289         * *.cs: More 2.0 API fixups
2290
2291         * *.cs: In beta 2, generics are no longer non-cls-compliant.
2292
2293 2005-06-05  Kazuki Oikawa  <kazuki@panicode.com>
2294
2295         * NumberFormatter.cs: Fixed the output of 0.ToString("00.00E00")
2296         that was different from MSFT.
2297         * String.cs: Fixed IndexOfAny thrown an exception
2298         when startIndex of arguments equals Length. (Closes bug #75083.)
2299
2300         * Decimal.cs: Changed to use NumberFormatter in ToString.
2301         * NumberFormatter.cs: Implemented decimal formatter.
2302
2303 2005-06-02 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2304
2305         * Type.cs: reverted wrong fix for bug #71300 in r45150. This makes SSL
2306         support in System.Net work again.
2307
2308 2005-06-01  Ben Maurer  <bmaurer@ximian.com>
2309
2310         * CharEnumerator.cs: add IEnumerable <char> support
2311
2312 2005-05-30  Sebastien Pouliot  <sebastien@ximian.com>
2313
2314         * Activator.cs: Added missing validation on parameters.
2315
2316 2005-05-28  Ben Maurer  <bmaurer@ximian.com>
2317
2318         * Type.cs: Check that the arguments of the `types' array are
2319         non-null. Fixes bug 71300
2320
2321 2005-05-28  Sebastien Pouliot  <sebastien@ximian.com>
2322
2323         * AppDomainSetup.cs: Added new 2,0 constructors and the 
2324         ActivationArguments property.
2325         * AppDomainManager.cs: Added using System.Runtime.Hosting as it is the
2326         new location for the ApplicationActivator class.
2327         * ApplicationActivator.cs: Moved to System.Runtime.Hosting namespace.
2328
2329 2005-05-27  Vladimir Vukicevic  <vladimir@pobox.com>
2330
2331         * Environment.cs: bump corlib version for bug #75060.
2332
2333 2005-05-27  Raja R Harinath  <rharinath@novell.com>
2334
2335         * Environment.cs (ExpandEnvironmentVariables): Rewrite
2336         sb.Append (s.SubString (a, b)) to sb.Append (s, a, b).
2337         * String.cs (FormatHelper): Rewrite sb.Append (s.SubString (a)) to
2338         sb.Append (s, a, s.Length - a).  Avoid allocating 'pad' string --
2339         StringBuilder has an appropriate Append overload.
2340
2341 2005-05-26  Zoltan Varga  <vargaz@freemail.hu>
2342
2343         * Type.cs (IsEnum): Special case EnumBuilder here.
2344
2345 2005-05-26  Sebastien Pouliot  <sebastien@ximian.com>
2346
2347         * MonoType.cs: Changed call from GetName to UnprotectedGetName to
2348         allow call to work with serialization under a restrictive policy.
2349         The code path (the protected information) isn't being used.
2350
2351 2005-05-25  Zoltan Varga  <vargaz@freemail.hu>
2352
2353         * Exception.cs: Use the new StackTrace ctor.
2354
2355         * Type.cs: Improve support for user defined type subclasses.
2356
2357 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
2358
2359         * DateTime.cs : Added minimum digit parameter to ParseNumber() to
2360           reject 2 digit years for "yyyy".
2361           Use GetAllDateTimePatterns() instead of constant string.
2362           Fixed bug #72788.
2363
2364 2005-05-25  Atsushi Enomoto  <atsushi@ximian.com>
2365
2366         * DateTime.cs : next_not_digit prevented some valid parse.
2367           Just remove it, since now we pass max length to ParseNumber() and
2368           thus it is not needed anymore. Fixed bug 63137.
2369
2370 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
2371
2372         * DateTime.cs : HH should not always block tt. Fixed bug #60912.
2373           Reset num after whitespace parsing.
2374           Added "M/d/yyyy HH':'mm':'ss tt" as an invariant pattern.
2375
2376 2005-05-24  Atsushi Enomoto  <atsushi@ximian.com>
2377
2378         * DateTime.cs : Allow ',' where whitespaces are allowed.
2379           Fixed bug #71289.
2380
2381 2005-05-22  Ben Maurer  <bmaurer@ximian.com>
2382
2383         * BitConverter.cs: Speed this up, fixing 74014. Patch from
2384         `Aleksandar Dezelin'.
2385
2386 2005-05-20  Zoltan Varga  <vargaz@freemail.hu>
2387
2388         * Type.cs: Add some helper methods needed by other classes.
2389
2390         * Array.cs: Improve support for user defined Type subclasses.   
2391         
2392         * Type.cs: Rename GetTypeCode icall to GetTypeCodeInternal and add a managed
2393         wrapper function, not used yet.
2394
2395         * Type.cs Array.cs: Revert this as it breaks the build.
2396
2397         * Type.cs Array.cs: Improve support for user defined Type subclasses.
2398
2399 2005-05-19  Ben Maurer  <bmaurer@ximian.com>
2400
2401         * Delegate.cs (Equals): Use `as' to protect in the case where !
2402         (obj is Delegate)
2403
2404 2005-05-19  Raja R Harinath  <rharinath@novell.com>
2405
2406         * Console.cs (Readline) [NET_2_0]: Avoid "uninitialized variable"
2407         error.
2408
2409 2005-05-19  Miguel de Icaza  <miguel@novell.com>
2410
2411         * TermInfoDriver.cs: Removed warning.
2412
2413         * Array.cs (Resize<T>, TrueForAll<T>, ConvertAll<TInput,TOutput>,
2414         FindLastIndex<T>: Parameter names are normative.        
2415         Fix coding style ("Method<T>" not "Method <T>")
2416         Throw argument exceptions per argument.
2417         
2418         (FindAll): Fix bug, actually return the values that were computed,
2419         not a short version of the original array.
2420         
2421 2005-05-19 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2422
2423         * Console.cs: fix error in the 2_0 side and split ReadLine in 2, one
2424         for each framework version.
2425
2426 2005-05-15  Andreas Nahr  <ClassDevelopment@A-SoftTech.com>
2427
2428         * Attribute.cs:
2429         * Exception.cs: .Net 1.1 already has these interfaces
2430
2431 Mon May 16 18:23:49 CEST 2005 Paolo Molaro <lupus@ximian.com>
2432
2433         * MonoCustomAttrs.cs, Type.cs: do not create a SerializableAttribute
2434         object on GetCustomAttributes (fixes bug #74717).
2435
2436 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
2437
2438         * DateTime.cs : for 'z' next_not_digit didn't work as expected.
2439           Fixed bug #74775.
2440
2441 2005-05-15  Atsushi Enomoto  <atsushi@ximian.com>
2442
2443         * DateTime.cs : don't allow extraneous pattern characters also for
2444           non-exact parsing (ParseExact() was fine). Bug #74936 fixed
2445
2446 2005-05-13  Gert Driesen <drieseng@users.sourceforge.net>
2447
2448         * Activator.cs: Match exceptions thrown by MS.NET for
2449         CreateInstance overloads if type is abstract. Fixes bug #74861.
2450
2451 2005-05-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
2452
2453         * OperatingSystem.cs: PlatformID.Unix.
2454
2455 2005-05-09  Sebastien Pouliot  <sebastien@ximian.com>
2456
2457         * Environment.cs: Patch from Gonzalo to fix Environment.OSVersion.
2458         Platform under NET_2_0 to return PlatformID.Unix. Fix bug #74841.
2459
2460 2005-05-07  Atsushi Enomoto  <atsushi@ximian.com>
2461
2462         * NumberFormatter.cs : roundtrip number is already rounded before
2463           FormatGeneral() and DefaultMaxPrecision was extraneous. This fixes
2464           bug #72955.
2465
2466 2005-05-07  Ben Maurer  <bmaurer@ximian.com>
2467
2468         * Array.cs (BinarySearch): Patch from kazuki to pass arguments to
2469         the comparer in the same order as msft. Fixes #70725
2470
2471 2005-05-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2472
2473         * Enum.cs: the hashtable don't need to be synchronized any more, since
2474         it's only accessed from withint a lock.
2475
2476         * Console.cs: stdin, stdout and stderr will never be finalized. Fixes
2477         bug 74768.
2478
2479 2005-05-06  Zoltan Varga  <vargaz@freemail.hu>
2480
2481         * Array.cs: Remove CLSCompliant (false) attributes.
2482
2483 2005-05-06  Martin Baulig  <martin@ximian.com>
2484
2485         * Predicate.cs, Action.cs, Comparision.cs, Converter.cs: Add
2486         [CLSCompliant(true)] attribute.
2487
2488 2005-05-04  Miguel de Icaza  <miguel@novell.com>
2489
2490         * Enum.cs (MonoEnumInfo): Based on a patch from James Willcox,
2491         initialize cache as a static method.  Fixes #74828.
2492
2493 2005-05-03  Marek Safar  <marek.safar@seznam.cz>
2494
2495         * Console.cs: CancelKeyPress is stubbed.
2496
2497 2005-04-25  Sebastien Pouliot  <sebastien@ximian.com>
2498
2499         * ActivationContext.cs: Updated for beta2.
2500         * AppDomainManager.cs: Updated for beta2.
2501         * ApplicationId.cs: Updated for beta2.
2502         * ApplicationIdentity.cs: Updated for beta2.
2503         * Exception.cs: Now use Assembly.UnprotectedGetName () as Exception 
2504         doesn't leak the code base from the returned AssemblyName.
2505
2506 2005-04-25  Martin Baulig  <martin@ximian.com>
2507
2508         * Environment.cs (Environment.Version): Changed to 2.0.50215.
2509
2510 2005-04-22  Sebastien Pouliot  <sebastien@ximian.com>
2511
2512         * Attribute.cs: Added _Attribute interface to NET_2_0 to reduce the 
2513         number of "missing" in the class status pages.
2514
2515 2005-04-21 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2516
2517         * MulticastDelegate.cs: (GetInvocationList) when building the list that
2518         is later traversed forward, mark 'this' as the end of the chain.
2519         Fixes bug #74607.
2520
2521 2005-04-19  Zoltan Varga  <vargaz@freemail.hu>
2522
2523         * Environment.cs: Bump corlib version.
2524
2525 2005-04-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2526
2527         * WindowsConsoleDriver.cs: ignore key release events.
2528
2529 2005-04-06  Atsushi Enomoto  <atsushi@ximian.com>
2530
2531         * Char.cs : ToUpper()/ToLower() comparison ranges were incorrect.
2532
2533 2005-04-05  Sebastien Pouliot  <sebastien@ximian.com>
2534
2535         * _AppDomain.cs: Add security checks to the interface. Declarative 
2536         security on events requires BOOTSTRAP_WITH_OLDLIB to work properly 
2537         with older MCS.
2538         * AppDomain.cs: Add some (not complete) security checks. Bug#74411 is
2539         blocking some cases from working properly. Declarative security on 
2540         events requires BOOTSTRAP_WITH_OLDLIB to work properly with older MCS.
2541
2542 2005-04-04  Sebastien Pouliot  <sebastien@ximian.com>
2543
2544         * AppDomain.cs: Use the PolicyLevel to resolve the granted permissions
2545         on the AppDomain. Added an internal property to get the granted set.
2546
2547 2005-04-04  Atsushi Enomoto  <atsushi@ximian.com>
2548
2549         * String.cs,
2550           Char.cs : use TextInfo for ToLower() and ToUpper().
2551
2552 2005-03-31  Sebastien Pouliot  <sebastien@ximian.com>
2553
2554         * Exception.cs: Added Assert for TypeInformation to GetObjectData and
2555         ToString methods (not required for 2.0 as TypeInformation will be 
2556         deprecated). Added null check for GetObjectData.
2557
2558 Tue Mar 29 11:47:19 CEST 2005 Paolo Molaro <lupus@ximian.com>
2559
2560         * Delegate.cs: allow IronPython 0.7 to compile.
2561
2562 2005-03-24  Miguel de Icaza  <miguel@novell.com>
2563
2564         * Delegate.cs: Add CreateDelegate with a target option, currently
2565         internal as it is not exposed by the framework yet.
2566
2567 2005-03-24  Zoltan Varga  <vargaz@freemail.hu>
2568
2569         * String.cs: Add some 2.0 methods.
2570
2571 2005-03-24  Sebastien Pouliot  <sebastien@ximian.com>
2572
2573         * Activator.cs: Now use the supplied evidences when loading 
2574         assemblies. Added LinkDemand for RemotingConfiguration on both
2575         GetObject methods.
2576         * Console.cs: Added Assert for UnmanagedCode on OpenStandard[Error|
2577         Input|Output] as they use a handle on a FileStream (which is
2578         restricted otherwise). Added Demand for UnmanagedCode for the
2579         Set[Error|In|Out] methods.
2580         * MarshalByRefObject.cs: Added LinkDemand for Infrastructure on 
2581         CreateObjRef, GetLifetimeService and InitializeLifetimeService.
2582         * RuntimeMethodHandle.cs: Added Demand for UnmanagedCode on 
2583         GetFunctionPointer method.
2584         * TypedReference.cs: Added LinkDemand for ReflectionPermission's
2585         MemberAccess on MakeTypedReference.
2586
2587 2005-03-14  Sebastien Pouliot  <sebastien@ximian.com>
2588
2589         * Environment.cs: Fix CAS unit tests for NET_1_1.
2590         * Exception.cs: Fix CAS unit tests for NET_1_1.
2591
2592 2005-03-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2593
2594         * Version.cs: don't ignore the last number. Fixes bug #73539.
2595
2596 2005-03-11  Sebastien Pouliot  <sebastien@ximian.com>
2597
2598         * MonoType.cs: When the security manager is active, constructors and
2599         methods will return null if a linkdemand fails during reflection 
2600         query.
2601
2602 2005-03-11  Zoltan Varga  <vargaz@freemail.hu>
2603
2604         * Array.cs (Sort): Bail out early if length <= 1. Fixes #72721.
2605
2606 2005-03-10  Zoltan Varga  <vargaz@freemail.hu>
2607
2608         * Environment.cs: Bump corlib version.
2609
2610 2005-03-10  Martin Baulig  <martin@ximian.com>
2611
2612         * Nullable.cs (Nullable<T>.ToString): Return an empty string if
2613         we're null.
2614
2615 2005-03-09  Zoltan Varga  <vargaz@freemail.hu>
2616
2617         * Activator.cs MonoType.cs: Applied patch from Carlos Alberto Cortez
2618         (carlos@unixmexico.org). Allow creation of valuetypes with no ctor.
2619         Fixes #73432.
2620
2621 2005-03-04  Zoltan Varga  <vargaz@freemail.hu>
2622
2623         * Environment.cs: Bump corlib version.
2624
2625         * Exception.cs (StackTrace): Return the wrapper info as well.
2626
2627 2005-03-02  Kazuki Oikawa  <kazuki@panicode.com>
2628
2629         * NumberFormatter.cs: Some internal classes was converted to structs,
2630         and improved some points.
2631
2632 2005-02-26  Kazuki Oikawa  <kazuki@panicode.com>
2633
2634         * NumberFormatter.cs: Improved performance and memory usage
2635         when integer standard format.
2636         * SByte.cs:
2637         * Int16.cs:
2638         * Int32.cs:
2639         * Int64.cs:
2640         * Byte.cs:
2641         * UInt16.cs:
2642         * UInt32.cs:
2643         * UInt64.cs:
2644         * Single.cs:
2645         * Double.cs:
2646         * TimeSpan.cs: Improved these directly call to NumberFormatter.
2647
2648 2005-02-25 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2649
2650         * TermInfoDriver.cs: set the xmit mode if available. Handle key input
2651         and translate them into a ConsoleKeyInfo.
2652         * TermInfoReader.cs: added a method to return the bytes of a string
2653         property.
2654         * ConsoleKeyInfo.cs: added copy constructor and setters.
2655
2656 2005-02-24  Zoltan Varga  <vargaz@freemail.hu>
2657
2658         * Array.cs: Add missing 2.0 attributes and correct some parameter names.
2659
2660 2005-02-24  Carlos Alberto Cortez <calberto.cortez@gmail.com>
2661
2662         * AppDomain.cs: Changed GetAssemblies, LoadAssembly, and Load signatures,
2663         and added some to support the reflection only methods. DoAssemblyResolve
2664         was modified to invoke the new PreBindAssemblyResolve event when the
2665         assembly is reflection only.
2666         
2667 2005-02-21  Zoltan Varga  <vargaz@freemail.hu>
2668
2669         * GC.cs Double.cs IntPtr.cs Array.cs Decimal.cs Math.cs Single.cs:
2670         Add net 2.0 ReliabilityContractAttributes.
2671
2672 2005-02-20 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2673
2674         * TermInfoDriver.cs: cygwin terminals are handled by the windows
2675         console driver.
2676
2677         * TermInfoReader.cs:
2678         * TermInfoNumbers.cs:
2679         * KnownTerminals.cs:
2680         * TermInfoBooleans.cs:
2681         * TermInfoStrings.cs: documented.
2682
2683 2005-02-19  Kazuki Oikawa <kazuki@panicode.com>
2684
2685         * Array.cs: Reverse the order in the Equals calls.
2686
2687 2005-02-18  Zoltan Varga  <vargaz@freemail.hu>
2688
2689         * Exception.cs (StackTrace): Implement this in managed code since it is
2690         needed by CAS. Fixes #72146.
2691
2692 2005-02-15 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2693
2694         * WindowsConsoleDriver.cs: implemented MoveBufferArea.
2695
2696 2005-02-14  Raja R Harinath  <rharinath@novell.com>
2697
2698         * Array.cs (Array.Swapper) [!BOOTSTRAP_WITH_OLDLIB]: Make nested.
2699         See #72015.
2700
2701 2005-02-12  Ben Maurer  <bmaurer@ximian.com>
2702
2703         * Version.cs (CompareTo, Equals): Make sure the versions for
2704         generics handle `null'. The non-generics versions now just call
2705         the regular versions, to reduce code duplication.
2706
2707         * Boolean.cs (CompareTo): make this really work for generics 
2708
2709         * Type.cs (GetProperty): Passing new Type [0] is different than
2710         null. null means `I don't care how many types this has,' while new
2711         Type [0] means `this must have 0 types.'
2712
2713 2005-02-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2714
2715         * corlib.dll.sources: added WindowsConsoleDriver.cs
2716
2717         * System/ConsoleDriver.cs: use WindowsConsoleDriver on windows and
2718         implemented the few missing properties/methods.
2719
2720         * System/IConsoleDriver.cs: uncommented all methods/properties.
2721         * System/TermInfoDriver.cs: implement changes from IConsoleDriver.
2722         * System/WindowsConsoleDriver.cs: implemented IConsoleDriver for
2723         windows. Only missing MoveBufferArea by now.
2724
2725 2005-02-11  Zoltan Varga  <vargaz@freemail.hu>
2726
2727         * Type.cs (IsAssignableFrom): Add support for TypeBuilders.
2728
2729         * Int32.cs AppDomain.cs: Fix warnings.
2730
2731 2005-02-10  Marek Safar  <marek.safar@seznam.cz>
2732
2733         * IServiceProvider.cs: Is not ComVisible.
2734
2735         * NonSerializedAttribute.cs: Fix AttributeUsage flags.
2736
2737         * Type.cs: Fix ClassInterface attribute.
2738
2739 Tue Feb 8 19:26:47 CET 2005 Paolo Molaro <lupus@ximian.com>
2740
2741         * Delegate.cs: remove the finalizer from Delegate: this
2742         is handled internally by the runtime now.
2743
2744 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2745
2746         * Activator.cs: provide the Type name when throwing an exception.
2747
2748 2005-02-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2749
2750         * TimeZone.cs: lock on the static Hashtable instead of 'this'. Fixes
2751         bug #72238.
2752
2753 Fri Feb 4 15:46:04 CET 2005 Paolo Molaro <lupus@ximian.com>
2754
2755         * Array.cs: provide specialized versions of some methods.
2756
2757 Thu Feb 3 15:15:25 CET 2005 Paolo Molaro <lupus@ximian.com>
2758
2759         * String.cs: provide a managed memcpy and memset method
2760         for use both in corlib and from the JIT. Implement
2761         some methods with the managed helpers and remove some icalls.
2762
2763 2005-01-31  Sebastien Pouliot  <sebastien@ximian.com>
2764
2765         * Exception.cs: Added Data property for NET_2_0 (required for new
2766         unit tests).
2767
2768 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2769
2770         * ConsoleDriver.cs:
2771         * TermInfoDriver.cs:
2772         * IConsoleDriver.cs:
2773         * Console.cs: added BufferWidth and BufferHeight.
2774
2775 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2776
2777         * ConsoleDriver.cs:
2778         * Console.cs:
2779         * TermInfoDriver.cs:
2780         * IConsoleDriver.cs: added a few more properties and fixed cursor
2781         addressing.
2782
2783 2005-01-31 Gonzalo Paniagua Javier <gonzalo@ximian.com>
2784
2785         * ConsoleDriver.cs: static class that forwards the Console 2.0 class
2786         calls to the proper driver.
2787         * TermInfoDriver.cs: terminfo based console driver.
2788         * IConsoleDriver.cs: interface implemented by console drivers.
2789
2790         * ConsoleCancelEventArgs.cs:
2791         * ConsoleCancelEventHandler.cs:
2792
2793         * ConsoleModifiers.cs: 
2794         * ConsoleSpecialKey.cs:
2795         * ConsoleColor.cs:
2796         * ConsoleKey.cs: new enumerations.
2797
2798         * ConsoleKeyInfo.cs: New file.
2799
2800         * TermInfoReader.cs: reader for terminfo capabilities files.
2801
2802         * TermInfoNumbers.cs:
2803         * TermInfoBooleans.cs:
2804         * TermInfoStrings.cs: enumations for terminfo property names.
2805
2806         * KnownTerminals.cs: byte arrays for selected terminals.
2807
2808         * Console.cs: added more 2.0 methods and implemented some of them.
2809
2810
2811 2005-01-30  Atsushi Enomoto  <atsushi@ximian.com>
2812
2813         * Int32.cs : (FindSign) IndexOf() is better than creating substring.
2814
2815 2005-01-27  Sebastien Pouliot  <sebastien@ximian.com>
2816
2817         * BadImageFormatException.cs: Protect the fusion (GAC) log from being
2818         disclosed unless code has ControlPolicy and ControlEvidence.
2819
2820 2005-01-27  Zoltan Varga  <vargaz@freemail.hu>
2821
2822         * Exception.cs: Compute stack trace on demand.
2823
2824 2005-01-26  Sebastien Pouliot  <sebastien@ximian.com>
2825
2826         * Environment.cs: Removed hack for static class (NET_2_0). Added 
2827         proper security for FailFast (documented in FDBK20543). Added new
2828         method IsRunningOnWindows to replace (Platform == 128) as the logic is
2829         gonna change in the future (Unix is id #4 in NET_2_0).
2830
2831 2005-01-24  Sebastien Pouliot  <sebastien@ximian.com>
2832
2833         * Environment.cs: Added CAS security (both declarative and imperative)
2834         as a test. This shouldn't affect execution unless --security is 
2835         specified.
2836
2837 2005-01-19  Rafael Teixeira  <rafaelteixeirabr@hotmail.com>
2838         * Type.cs: Corrected implementation for the Type.FilterNameIgnoreCase
2839         and Type.FilterName delegates They weren't dealing with the optional '*'
2840         at the end of the filter mask
2841
2842 2005-01-19  Zoltan Varga  <vargaz@freemail.hu>
2843
2844         * Array.cs: Fix a typo in the previous patch.
2845         
2846         * Array.cs: Fix some test failures in the generic methods.
2847
2848         * Array.cs: Implement AsReadOnly.
2849
2850 2005-01-13  Geoff Norton  <gnorton@customerdna.com>
2851
2852         * Guid.cs: Fix endian issues (use Mono.Security.BitConverterLE).  Fixes
2853         #71242
2854
2855 2005-01-11  Sebastien Pouliot  <sebastien@ximian.com>
2856
2857         * AppDomain.cs: Removed Activate and ActivateNewProcess methods. They
2858         have been removed from 2.0.
2859
2860 2005-01-11  Zoltan Varga  <vargaz@freemail.hu>
2861
2862         * Boolean.cs Char.cs Single.cs Double.cs: Implement IComparable<T> in
2863         NET 2.0.
2864
2865 2005-01-10  Sebastien Pouliot  <sebastien@ximian.com>
2866
2867         * ApplicationIdentity.cs: Throw ArgumentNullException if name is null.
2868         Add default culture (neutral) to the name when none is specified.
2869         * AppDomain.cs: Changed IsDefaultAppDomain (2.0). Is seems that we 
2870         can't trust Id ?
2871
2872 2005-01-09  Sebastien Pouliot  <sebastien@ximian.com>
2873
2874         * DateTime.cs: Reverted last patch for utc as it broke all certificate
2875         handling and another unit test in DateTime.
2876
2877 2005-01-09  Miguel de Icaza  <miguel@ximian.com>
2878
2879         * DateTime.cs: Return immediately if useutc is set to true, there
2880         is no need to do the extra computation (which also happened to
2881         create a new DateTime using the `use_localtime' constructor, which
2882         lead to the erroneous date returns when using 'u' or `U'
2883         formats).   
2884
2885         Fixes another bug in the regression test suite.
2886
2887 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com> 
2888
2889         * AppDomain.cs: Fix the DefaultDomain property to return the root 
2890         domain (as it seems that the root's Id isn't always 0).
2891         * BitConverter.cs: The "special support" for ToString(new byte[0]) is
2892         only for NET_2_0 - previously this was an ArgumentOutOfRangeException.
2893
2894 2005-01-08  Miguel de Icaza  <miguel@ximian.com>
2895
2896         * IntegerFormatter.cs: The - sign inside the "negative" section in
2897         a multi-format string means `show the sign' only if it is the
2898         first token, not `copy verbatim'.  In the other sections it means
2899         `copy-verbatim'.
2900
2901         This makes things like:  (-34).ToString ("#;-#") show up as "-34"
2902         instead of "--34".
2903
2904         The bad news is that this code needs to be rewritten to handle all
2905         the formatting cases, see bug #71112 for details.
2906
2907         * Convert.cs (Convert.ToType): Throw an InvalidCastException if
2908         the conversion is invalid, not ArgumentException, this fixes
2909         another regression in our test suite.
2910
2911 2005-01-08  Sebastien Pouliot  <sebastien@ximian.com>
2912
2913         * AppDomain.cs: Add ApplicationIdentity property for 2.0;
2914         * AppDomainManager.cs: Remove HostRefusedSet support (it does not 
2915         exists anymore).
2916
2917 2005-01-08  Zoltan Varga  <vargaz@freemail.hu>
2918
2919         * DateTime.cs: Create MaxValue and MinValue using a different constructor to avoid static 
2920         initialization problems.
2921
2922 2005-01-02  Ben Maurer  <bmaurer@ximian.com>
2923
2924         * Int32.cs: NumberStyles.AllowExponent was supported by the
2925         Int32.Parse function. From Akira <mei@work.email.ne.jp>. Fixes bug
2926         70469.
2927
2928 2005-01-01  Atsushi Enomoto  <atsushi@ximian.com>
2929
2930         * Base64FormattingOptions.cs : it was not in System namespace.
2931
2932 2004-12-21  Atsushi Enomoto  <atsushi@ximian.com>
2933
2934         * DateTime.cs : If no progress on value string, don't regard as
2935           matched. This fixes bug #70707.
2936
2937 2004-12-20  Sebastien Pouliot  <sebastien@ximian.com>
2938
2939         * Environment.cs: Bump corlib version.
2940
2941 2004-12-16  Zoltan Varga  <vargaz@freemail.hu>
2942
2943         * Array.cs (DoBinarySearch): Fix a warning.
2944
2945 2004-12-08  Zoltan Varga  <vargaz@freemail.hu>
2946
2947         * Environment.cs: Bump corlib version.
2948
2949         * AppDomain.cs: Add new DefineInternalDynamicAssembly () method.
2950
2951 2004-12-06  Ben Maurer  <bmaurer@ximian.com>
2952
2953         * Exception.cs: Prevent stringifying the type name on the
2954         ctor. this gets called a few times on every execution to create a
2955         nullref exception.
2956
2957 2004-12-06  Martin Baulig  <martin@ximian.com>
2958
2959         * Decimal.cs: Decimal constant support has been merged into GMCS,
2960         removed the FIXME.
2961
2962 2004-12-06  Zoltan Varga  <vargaz@freemail.hu>
2963
2964         * Environment.cs: Bump corlib version.
2965         
2966         * Environment.cs: Bump corlib version.
2967
2968 2004-11-30  Zoltan Varga  <vargaz@freemail.hu>
2969
2970         * MonoType.cs (UnderlyingSystemType): Make this return this as in
2971         MS.NET. Fixes #56245.
2972
2973 2004-11-29  Atsushi Enomoto  <atsushi@ximian.com>
2974
2975         * GC.cs : Collect(generation) actually does not throw an exception
2976           even if generation > MaxGeneration (MS document bug).
2977
2978 2004-11-28  Zoltan Varga  <vargaz@freemail.hu>
2979
2980         * Exception.cs: Implement _Exception under NET_2_0.
2981
2982         * Byte.cs SByte.cs UInt16.cs Int16.cs: Make these compile under csc 2.0.
2983
2984         * AccessViolationException.cs DataMisalignedException.cs OperationCanceledException.cs
2985         NotCancelableException.cs TimeoutException.cs: New files.
2986
2987 2004-11-23  Raja R Harinath  <rharinath@novell.com>
2988
2989         * Decimal.cs [NET_2_0]: Use old code till GMCS imports decimal
2990         constant support.
2991
2992 2004-11-23  Raja R Harinath  <rharinath@novell.com>
2993
2994         * Decimal.cs [BOOTSTRAP_WITH_OLDLIB]: Use old code for compilers
2995         without decimal constant support.
2996
2997 2004-11-23  Marek Safar  <marek.safar@seznam.cz>
2998
2999         * Decimal.cs: Updated to use compiler decimal constant support.
3000
3001 2004-11-20  Zoltan Varga  <vargaz@freemail.hu>
3002
3003         * MonoType.cs: Revert last change since it breaks remoting.
3004
3005 2004-11-18  Zoltan Varga  <vargaz@freemail.hu>
3006
3007         * MonoType.cs (UnderlyingSystemType): Make this return this as in
3008         MS.NET. Fixes #56245.
3009
3010 2004-11-17  Carlos Alberto Cortez <carlos@unixmexico.org>
3011
3012         * INullable.cs: New interface added.
3013         * Nullable.cs: Methods added. Also a static Nullable class
3014         containing static methods.
3015         
3016 2004-11-15  Sebastien Pouliot  <sebastien@ximian.com>
3017
3018         * BitConverter.cs: Added support for special case when ToString is 
3019         called with (new byte [0]).
3020
3021 2004-11-10  Lluis Sanchez  <lluis@novell.com>
3022
3023         * Exception.cs: Added setter for StackTrace.
3024
3025 2004-11-07  Ben Maurer  <bmaurer@ximian.com>
3026
3027         * IntegerFormatter.cs: Avoid .ToCharArray
3028
3029 2004-11-06  Ben Maurer  <bmaurer@ximian.com>
3030
3031         * Single.cs, Double.cs (GetHashCode): Better hashcode impl
3032
3033 2004-11-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3034
3035         * InvalidOperationException.cs: make the message more meaningful and
3036         real. Fixes bug #69055.
3037
3038 2004-10-28  Ben Maurer  <bmaurer@ximian.com>
3039
3040         * String.cs: Rather than == String.Empty, use .Length == 0. It
3041         is a bit faster (avoids a method call, and the code is less complex).
3042
3043 2004-10-24  Fawad Halim  <fawad@fawad.net>
3044         * Environment.cs: If an Environment variable value isn't found, leave the trailing % of the reference for further matches.
3045         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.
3046         This fixes bug #64995.
3047
3048 2004-10-19  Lluis Sanchez  <lluis@novell.com>
3049
3050         * MarshalByRefObject.cs: Field _identity is not serializable.
3051         This fixes bug #68567.
3052
3053 2004-10-17  Ben Maurer  <bmaurer@ximian.com>
3054
3055         * DateTime.cs (ZeroPad): Use unsafe code to speed this up. We
3056         avoid entering slow integer formatting code.
3057
3058         (_ToString): Use ZeroPad here when possible, as it is faster.
3059
3060 2004-10-11  Martin Baulig  <martin@ximian.com>
3061
3062         * Environment.cs: Bump corlib version to 28.
3063
3064 2004-10-08  Zoltan Varga  <vargaz@freemail.hu>
3065
3066         * Convert.cs (ToType): Throw an exception when converting null to a
3067         valuetype. Fixes #67780.
3068
3069 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
3070
3071         * DateTime.cs : Performance fix. ParseExact() implementation should
3072           avoid s = s.Substring(1).
3073
3074 2004-10-08  Atsushi Enomoto  <atsushi@ximian.com>
3075
3076         * DateTime.cs : When it it not exact parse, 'Z' is allowed as a suffix
3077           of m/s/t/z. This fixes bug 66723.
3078
3079 Wed Oct 6 12:37:54 CEST 2004 Paolo Molaro <lupus@ximian.com>
3080
3081         * String.cs: make GetHashCode() managed.
3082
3083 2004-10-04  Zoltan Varga  <vargaz@freemail.hu>
3084
3085         * AppDomain.cs: Make ThreadStatic variables static. Fixes #56614.
3086
3087         * Runtime*Handle.cs ModuleHandle.cs: Add Equals + GetHashCode.
3088
3089         * ModuleHandle.cs: Add missing methods.
3090
3091         * RuntimeTypeHandle.cs: Add GetModuleHandle () method.
3092
3093 2004-10-03  Zoltan Varga  <vargaz@freemail.hu>
3094
3095         * AttributeTargets.cs: Add 2.0 GenericParameter value.
3096
3097         * Environment.cs: Bump corlib version.
3098
3099 2004-10-02  Zoltan Varga  <vargaz@freemail.hu>
3100
3101         * Int32.cs UInt32.cs Byte.cs SByte.cs Int16.cs UInt16.cs Int64.cs UInt64.cs: Implement 2.0 TryParse methods.
3102
3103 2004-09-30  Geoff Norton  <gnorton@customerdna.com>
3104
3105         * Convert.cs: ConvertToBase* was not endian aware.  Implemented EndianSwap
3106         and swapping of all values before going into the BitConverter so that values
3107         are returned with proper endianess.
3108
3109 2004-09-23  Martin Garton  <martin@wrasse.demon.co.uk>
3110
3111         * Convert.cs: ToType was returning unconverted object when it should
3112         fail with an ArgumentException.
3113
3114 2004-09-27  Zoltan Varga  <vargaz@freemail.hu>
3115
3116         * Array.cs: Add stub for AsReadOnly<T>.
3117         
3118 2004-09-25  Zoltan Varga  <vargaz@freemail.hu>
3119
3120         * Type.cs: Add MakePointerType && stub for ReflectionOnlyGetType.
3121
3122         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
3123         parameters.
3124
3125 2004-09-24  Zoltan Varga  <vargaz@freemail.hu>
3126
3127         * MonoCustomAttrs.cs (GetCustomAttributesBase): Add support for
3128         methods and fields.
3129         
3130         * MonoCustomAttrs.cs: Beginnings of support for returning 2.0 pseudo
3131         custom attributes.
3132
3133         * MonoCustomAttrs.cs (RetrieveAttributeUsage): Avoid infinite recursion.
3134
3135         * MonoCustomAttrs.cs (GetCustomAttributes): Fix the 'attributeType is 
3136         sealed' optimization.
3137
3138         * Type.cs: Implement 2.0 StructLayoutAttribute property. 
3139
3140         * Type.cs Add GetPseudoCustomAttributes () method.
3141
3142 2004-09-24  Martin Baulig  <martin@ximian.com>
3143
3144         * Type.cs (Type.GetGenericParameterConstraints): New public method.
3145
3146 2004-09-23  Zoltan Varga  <vargaz@freemail.hu>
3147
3148         * MonoCustomAttrs.cs (GetCustomAttributes): Rename the icall to
3149         GetCustomAttributesInternal and add a 'pseudoAttrs' argument.
3150
3151         * Type.cs: Tweak Module property in 2.0 build.
3152
3153 2004-09-23  Martin Baulig  <martin@ximian.com>
3154
3155         * Type.cs (Type.GenericParameterAttributes): New public property.
3156
3157 2004-09-23  Martin Baulig  <martin@ximian.com>
3158
3159         * GenericParameterAttributes.cs: New file.
3160
3161 2004-09-22  Zoltan Varga  <vargaz@freemail.hu>
3162
3163         * ModuleHandle.cs: Updated after changes to Module class.
3164
3165 2004-09-21  Geoff Norton <gnorton@customerdna.com>
3166
3167         * Type.cs: BindingFlags.IgnoreCase was being ignored, this reimplements
3168         this filter. Fixes bug #65778.
3169
3170 2004-09-20  Zoltan Varga  <vargaz@freemail.hu>
3171
3172         * Environment.cs: Bump corlib version.
3173
3174 2004-09-19  Zoltan Varga  <vargaz@freemail.hu>
3175
3176         * ModuleHandle.cs: New file.
3177
3178         * RuntimeFieldHandle.cs: Add an internal ctor.
3179
3180 2004-09-19  Dick Porter  <dick@ximian.com>
3181
3182         * Console.cs: Use the internal wrappers for StreamReader and
3183         StreamWriter that catch IOException.
3184
3185 2004-09-16  Sebastien Pouliot  <sebastien@ximian.com>
3186
3187         * Environment.cs: Bumped mono_corlib_version to 25.
3188
3189 2004-09-13 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3190
3191         * AppDomain.cs: added SetupInformationNoCopy property, since
3192         SetupInformation creates a copy now, all updates to it should use the
3193         actual data. Fixes bug #61991 take 2.
3194
3195 2004-09-09  Tim Coleman <tim@timcoleman.com>
3196         * Base64FormattingOptions.cs: New enum
3197         * Convert.cs: Add new ToBase64String methods for Fx 2.0
3198
3199 2004-09-08  Marek Safar  <marek.safar@seznam.cz>
3200
3201         * Console.cs,
3202         * GC.cs: Class is static for NET_2_0.
3203
3204 2004-09-07 Ben Maurer  <bmaurer@users.sourceforge.net>
3205
3206         * Activator.cs: Make sure not to call .GetType on a
3207         null argument. fixes 63852
3208
3209 2004-09-06 Ben Maurer  <bmaurer@users.sourceforge.net>
3210
3211         * Array.cs (Clear): make this an icall.
3212
3213 2004-09-05 Ben Maurer  <bmaurer@users.sourceforge.net>
3214
3215         * MonoCustomAttribute.cs: Avoid the call to GetBase when possible.
3216
3217 2004-09-05 Gonzalo Paniagua Javier <gonzalo@ximian.com>
3218
3219         * Environment.cs: (ExpandEnvironmentVariables) don't nullify the case
3220         insensitive enironment variables hashtable once we create it.
3221
3222 2004-09-04  Sebastien Pouliot  <sebastien@ximian.com>
3223
3224         * AppDomain.cs: Changed 2 imperative security demands to declarative
3225         (unsupported) so it doesn't (for now) call the security runtime.
3226
3227 2004-09-02  Zoltan Varga  <vargaz@freemail.hu>
3228
3229         * Delegate.cs: Free the delegate trampoline in the finalizer.
3230
3231 2004-08-26  Sebastien Pouliot  <sebastien@ximian.com>
3232
3233         * ApplicationId.cs: Completed GetHashCode using information from MS
3234         (FDBK13339).
3235
3236 2004-08-23  Sebastien Pouliot  <sebastien@ximian.com>
3237
3238         * Boolean.cs: Added TryParse static method for NET_2_0 profile.
3239
3240 2004-08-19  Atsushi Enomoto  <atsushi@ximian.com>
3241
3242         * DateTime.cs : When hour format is "hh", MS.NET (maybe incorrectly)
3243           allows 12, that should not be accepted (13 is rejected) and
3244           interpreted as 0. This fixes bug 63376.
3245
3246 2004-08-17  Sebastien Pouliot  <sebastien@ximian.com>
3247
3248         * Version.cs: Fixed Clone so we can use it on versions with only
3249         major/minor or major/minor/build.
3250
3251 2004-08-17  Martin Baulig  <martin@ximian.com>
3252
3253         * MonoType.cs (MonoType.getFullName): Added `bool full_name'
3254         argument specifying whether or not to include the type arguments.
3255         (MonoType.FullName): Don't include the type arguments.
3256         (MonoType.ToString): Include them here.
3257
3258         * Environment.cs: Bumped mono_corlib_version to 24.
3259
3260 2004-08-16  Duncan Mak  <duncan@ximian.com>
3261
3262         * AttributeUsageAttribute.cs: Change the AttributeUsage to
3263         AttributeTargets.Class, from AttributeTargets.All, fixes Zoltan's
3264         bug #62895.
3265
3266 2004-08-11  Marek Safar  <marek.safar@seznam.cz>
3267
3268         * AppDomain.cs: Fixed typo of DefineDynamicAssembly argument.
3269         Added call to AddPermissionRequests to pass permissions
3270         arguments.
3271         * Environment.cs: Added a few Fx 2.0 methods
3272
3273 2004-08-09  Sebastien Pouliot  <sebastien@ximian.com>
3274
3275         * ApplicationId.cs: Fixed typo to fix NET_2_0 compilation.
3276         * AppDomain.cs: Fixed use of Evidence and AppDomainSetup (copies, not
3277         references). Added (non-obsolete) Fx 2.0 properties and methods.
3278         * AppDomainSetup.cs: Added internal copy constructor.
3279         * DomainManagerInitializationFlags.cs: Fixed values.
3280
3281 2004-08-08  Sebastien Pouliot  <sebastien@ximian.com>
3282
3283         * AppDomainInitializer.cs: New Fx 2.0 class for AppDomain.
3284         * AppDomainManager.cs: New Fx 2.0 class for AppDomain.
3285         * ApplicationActivator.cs: New Fx 2.0 class for AppDomain.
3286         * ApplicationId.cs: New Fx 2.0 class.
3287         * ApplicationIdentity.cs: Fixed ToString.
3288         * DomainManagerInitializationFlags.cs: New Fx 2.0 flags for AppDomain.
3289
3290 2004-08-05  Sebastien Pouliot  <sebastien@ximian.com>
3291
3292         * AppDomain.cs: Added a new icall, getDomainByID, to get the an 
3293         AppDomain using it's Id. Completed SetAppDomainPolicy.
3294         * Environment.cs: Bumped mono_corlib_version to 23.
3295
3296 2004-08-02  Martin Baulig  <martin@ximian.com>
3297
3298         * DateTime.cs, TimeSpan.cs, Guid.cs, Version.cs: Implement IComparable<T>.
3299
3300 2004-07-29  Atsushi Enomoto  <atsushi@ximian.com>
3301
3302         * Environment.cs : GacPath on windows is based on mscorlib.dll, and
3303           now its location is changed.
3304
3305 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
3306
3307         * Environment.cs: Return the MS.NET 2.0 beta1 runtime version for the
3308           NET_2_0 profile.
3309         
3310 2004-07-18  Martin Baulig  <martin@ximian.com>
3311
3312         * Array.cs: Ben Maurer implemented all the new generic methods
3313         here :-)
3314
3315 2004-07-17  Martin Baulig  <martin@ximian.com>
3316
3317         * Decimal.cs: Implement IComparable<Decimal>.
3318
3319 2004-07-17  Martin Baulig  <martin@ximian.com>
3320
3321         * Byte.cs, Int16.cs, Int32.cs, Int64.cs, SByte.cs, String.cs,
3322         UInt16.cs, UInt32.cs, UInt64.cs: Implement IComparable<T>.      
3323
3324 2004-07-13  Sebastien Pouliot  <sebastien@ximian.com>
3325
3326         * ActivationContext.cs: New class in Fx 2.0. Required for 
3327         System.Security.Policy.
3328         * ApplicationIdentity.cs: New class in Fx 2.0. Required for 
3329         System.Security.Policy.
3330         * IApplicationDescription.cs: New interface in Fx 2.0. Required for 
3331         System.Security.Policy.
3332         * IHostContext.cs: New interface in Fx 2.0. Required for 
3333         System.Security.Policy.
3334
3335 2004-07-12  Geoff Norton <gnorton@customerdna.com>
3336
3337         * DateTime.cs: Patch for bug #61112.  Our DateTime wasn't roundtripping over timezone
3338           boundaries properly.  This patch checkes ToLocalTime() to see if we're tripping over a boundary
3339           and will add/subtract the hour if needed
3340
3341 2004-07-07  Geoff Norton <gnorton@customerdna.com>
3342
3343         * Monotype.cs: Patch for bug #58844.  Dont throw exceptions right away;
3344           pass through all the possibly BindingInfo's and keep a bool value as to the type
3345           of exception we might need to throw;
3346
3347 2004-07-07  Geoff Norton <gnorton@customerdna.com>
3348
3349         * Patch to fix bug #58973
3350
3351 2004-07-02  Jackson Harper  <jackson@ximian.com>
3352
3353         * PlatformID.cs: New 2.0 values.
3354         
3355 2004-06-25  Ben Maurer <bmaurer@ximian.com>
3356         
3357         * Environment.cs: GetFolderPath has new behavior. r=miguel
3358
3359 2004-06-23  Sebastien Pouliot  <sebastien@ximian.com>
3360
3361         * DateTime.cs: Throw ArgumentOutOfRangeException if the year is
3362         bigger than 9999. Fix bug #41845.
3363         * FloatingPointFormatter.cs: Applied correction from Jon Skeet on
3364         the "R"eversible format for negative numbers.
3365
3366 2004-06-21  Jackson Harper  <jackson@ximian.com>
3367
3368         * Decimal.cs: Make sure to use invariant culture when parsing
3369         floats stringified with the invariant culture. Patch by Rodrigo
3370         B. de Oliveira.
3371         
3372 2004-06-19  Atsushi Enomoto  <atsushi@ximian.com>
3373
3374         * FloatingPointFormatter.cs : Literal string should be kept in the
3375           output.
3376
3377 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
3378
3379         * DateTime.cs : Concatenating whitespace removal was not working fine.
3380           Modified FormatException message (1 cent kindness).
3381
3382 2004-06-18  Ben Maurer  <bmaurer@ximian.com>
3383         
3384         * Action.cs, ArraySegment.cs, Comparison.cs, Converter.cs, Predicate.cs:
3385         new generics classes
3386         * IComparable.cs: add the new <T> version.
3387         * EventHandler.cs: new <T> version.
3388         
3389 2004-06-18  Dick Porter  <dick@ximian.com>
3390
3391         * String.cs: The icall can cope with embedded \0 now.
3392
3393 2004-06-18  Atsushi Enomoto  <atsushi@ximian.com>
3394
3395         * DateTime.cs :
3396           - Added new common pattern "yyyy/M/dZ"
3397           - empty string should not be compared in _ParseEnum()
3398           - Use culture independent string comparison in _ParseString()
3399           - Whitespace removal should be checked after '..' token check (some
3400             pattern such like es-ES LongDatePattern contains spaces in '..').
3401           - formats null check should be done (to throw ArgumentNullException)
3402             in ParseExact().
3403           - When specified one character format, dates are incorrectly regarded
3404             as to use invariant culture.
3405
3406 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
3407
3408         * ArgIterator.cs: changed layout to Auto
3409         * DateTime.cs: changed layout to Auto
3410
3411 2004-06-18  Gert Driesen <drieseng@users.sourceforge.net>
3412
3413         * DateTime.cs: CRLF to LF
3414
3415 2004-06-17  Sebastien Pouliot  <sebastien@ximian.com>
3416
3417         * Decimal.cs: Fixed regression in System.Data caused by the recent 
3418         changes. Adapted (and moved) the code to correct the scale from 
3419         SqlMoney. Removed unused (and unusable) IsOne and fixed IsZero (where
3420         scale has no importance).
3421
3422 2004-06-17  Lluis Sanchez Gual  <lluis@ximian.com>
3423
3424         * Activator.cs: In CreateInstance(), use Public|Instance if access binding
3425           attributes are omitted.
3426
3427 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
3428
3429         * DateTime.cs : GetDateTimeFormats(char, IFormatProvider) should also
3430           check if the format character is valid.
3431
3432 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
3433
3434         * DateTime.cs : AddDays(double) rounds the input.
3435
3436 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
3437
3438         * DateTime.cs : Incorrect maxvalue comparison in ToUniversalTime().
3439           Fixed ToLocalTime() as well, but it does check range for MinValue.
3440
3441 2004-06-17  Atsushi Enomoto  <atsushi@ximian.com>
3442
3443         * DateTime.cs : Added overflow check in ToUniversalTime() and
3444           ToLocalTime(). Fixed bug #60253.
3445
3446 2004-06-16  Sebastien Pouliot  <sebastien@ximian.com>
3447
3448         * FloatingPointFormatter.cs: Implemented "R" format using Jon Skeet
3449         source code (with permission). Fix (biggest) part of bug #60110.
3450         http://www.yoda.arachsys.com/csharp/floatingpoint.html
3451
3452 2004-06-15  Sebastien Pouliot  <sebastien@ximian.com>
3453
3454         * Decimal.cs: Fixed scale after Round (a different scale is correct 
3455         from a math point of view but affect the string representation of the
3456         value). Note: other operations also have scale problems!
3457         * DecimalFormatter.cs: Fixed FormatGeneral to match Fx 1.1 output.
3458         * FloatingPointFormatter.cs: Fixed ToString which doesn't use banker's
3459         rounding (which is the rounding provided by Math.Round). This fix bug
3460         #60111. The code (new Round methods) should be moved elsewhere (as it
3461         may also be required elsewhere) post Mono 1.0.
3462
3463 2004-06-15  Gert Driesen <drieseng@users.sourceforge.net>
3464
3465         * AppDomainSetup.cs: added TODO for serialization
3466         * ExecutionEngineException.cs: added missing serialization ctor
3467         * InvalidProgramException.cs: added missing serialization ctor
3468         * MulticastNotSupportedException.cs: added missing serialization ctor
3469         * ObsoleteAttribute.cs: fixed serialization compatibility with MS.NET
3470         * Random.cs: fixed serialization compatibility with MS.NET
3471
3472 2004-06-15  Paolo Molaro <lupus@ximian.com>
3473
3474         * Type.cs: removed unused (and non-existing) icall type_is_instance.
3475
3476 2004-06-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3477
3478         * Environment.cs: use internalGetHome instead of getting "HOME" as
3479         that variable may not be defined.
3480
3481 2004-06-14  Sebastien Pouliot  <sebastien@ximian.com>
3482
3483         * TimeSpan.cs: Fixed timespan with large values for hours or minutes
3484         (overflow is only checked for days but can also occurs in hours and
3485         minutes which uses Int32 when multiplying). The new results match MS
3486         implementation.
3487
3488 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
3489
3490         * FloatingPointFormatter.cs : Recognize '%' and '\u2030' and replace
3491           them with matching NumberFormatInfo properties.
3492
3493 2004-06-14  Atsushi Enomoto  <atsushi@ximian.com>
3494
3495         * Double.cs : Use IFormatProvider.GetFormat() instead of literal '-'.
3496         * FloatingPointFormatter.cs :
3497           Use NumberFormatInfo.NegativeSign. This change saves many XSLT test
3498           failures.
3499           Format Permille pattern (It is undocumented but actually available,
3500           and used in xsl:format-number).
3501
3502 2004-06-14  Raja R Harinath  <rharinath@novell.com>
3503
3504         * Console.cs (Console.Write, Console.WriteLine): Disable __arglist
3505         version with BOOTSTRAP_WITH_OLDLIB.
3506         * String.cs (STring.Concat): Likewise.
3507
3508 2004-06-13  Atsushi Enomoto  <atsushi@ximian.com>
3509
3510         * FloatingPointFormatter.cs :
3511           - Don't format more than 15 fraction digits. Don't report to Pedro
3512             directly (removing the error message with his concent).
3513           - When format string starts with '.', it means integral part format 
3514             is not specified. Ignore '.' characters after the first
3515             appearance. Fixed bug #59890.
3516           - 0.0 is formatted only before the third ';' appearance.
3517
3518 2004-06-11  Sebastien Pouliot  <sebastien@ximian.com>
3519
3520         * DateTime.cs: Added a AddRoundedMilliseconds which use the "old Mono"
3521         rounding logic which worked for FromOADate (while the newer didn't).
3522         * TimeSpan.cs: Now throw an OverflowException when the timespan is
3523         over MaxValue or under MinValue.
3524
3525 2004-06-11  Martin Baulig  <martin@ximian.com>
3526
3527         * Console.cs (Write, WriteLine): Implemented the varargs versions.
3528
3529 2004-06-11  Martin Baulig  <martin@ximian.com>
3530
3531         * String.cs (Concat): Implemented the varargs version.
3532
3533 2004-06-10  Sebastien Pouliot  <sebastien@ximian.com>
3534
3535         * Decimal.cs: Hacked the Parse method to allow the runtime C code to
3536         decode it properly (i.e. matching MS results). Fixed the Round method
3537         for negative decimal numbers (moved code from Math.cs).
3538         * Math.cs: Now use Decimal class for Round(Decimal,int). Required to
3539         fix a bug when rounding a negative decimal.
3540
3541 2004-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3542
3543         * AppDomain.cs: set the _principal to null when changing the policy.
3544         * Console.cs: remove ClsCompliant attribute from a method marked as
3545         internal and added comment.
3546
3547 2004-06-10  Gert Driesen <drieseng@users.sourceforge.net>
3548
3549         * Delegate.cs: marked protected fields private to match public
3550         API of MS.NET, marked DynamicInvokeImpl and GetMethodImpl
3551         protected to fix public API
3552         * Enum.cs: marked ctor protected to match public API of MS.NET
3553         * MulticastDelegate.cs: marked DynamicInvokeImpl protected to
3554         match public API of MS.NET
3555
3556 2004-06-10  Atsushi Enomoto  <atsushi@ximian.com>
3557
3558         * DateTime.cs : Added more common patterns.
3559
3560 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
3561
3562         * Decimal.cs: Fixed banker rounding by calling Math.Round. This won't
3563         be a performance winner (the actual Math code has a note to wait a
3564         better Decimal implementation) but it returns the correct results
3565         (without adding new code in corlib or the runtime). Fix #37744.
3566
3567 2004-06-09  Atsushi Enomoto  <atsushi@ximian.com>
3568
3569         * DateTime.cs :
3570           - A bunch of fixes (patch by Steven Brown). Fraction seconds are 
3571             now represented as double. Strict token check for 'Z'.
3572           - Pattern validity check in GetDateTimeFormats(char).
3573           - Fixed pattern "yyyy/M/d HH:mm:ss".
3574
3575 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
3576
3577         * Decimal.cs: Fixed remainder (and optimized some cases not to call 
3578         unmanaged code). Simplified divide. Removed workaround for bug #59793.
3579         Fixed GetHashCode to return different result for X and -X.
3580
3581 2004-06-08  Atsushi Enomoto  <atsushi@ximian.com>
3582
3583         * DateTime.cs :
3584           - Now re-checked all common format patterns. They should be tried
3585             with both current culture and invariant culture. Since '/' covers
3586             '-', removed extraneous patterns. Added more common patterns
3587             such as "yyyy-MM-dd" and X509Certificate pattern (it is valid
3588             only after NET_1_1). Commented out 1 character format patterns.
3589           - The format patterns we should try should not be obtained by
3590             GetAllDateTimePatterns(). Just use 'd', 'D', 't', 'T', ... (one
3591             character patterns), to handle UTC correctly. Examined patterns
3592             are changed, to 1) common patterns with specified (or current)
3593             culture, 2) common patterns with invariant, 3) The above "one
3594             character patterns" with specified (or current) culture.
3595           - When trying to parse some kind of patterns such as RFC1123, 
3596             always use invariant DateTimeFormatInfo so that they can avoid
3597             parsing with culture-dependent calendar.
3598           - Check "GMT" only when doing Parse(). Don't it when ParseExact().
3599           - Removed extraneous '-' case. It is not special one.
3600           - When ParseExact(), allow only '/' for '/' pattern character.
3601           - When Parse(), allow any non-letter & non-number characters.
3602           - When pattern is not fully parsed, reject that format.
3603           - Added "exact" parameter to some ParseExact().
3604           - RFC1123 pattern is (again) now parsed in local time. I regressed
3605             some problems in previous fix.
3606
3607 2004-06-08  Sebastien Pouliot  <sebastien@ximian.com>
3608
3609         * Decimal.cs: Fixed cast to integer types to truncate (not round) the
3610         value.
3611
3612 2004-06-07  Duncan Mak  <duncan@ximian.com>
3613
3614         * Exception.cs (Source): This can return null.
3615
3616 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
3617
3618         * DateTime.cs: Fixed FromFileTime for negative values. Fixed 
3619         constructor to limit range of milliseconds from 0,999. Fixed
3620         ToType method to work for object, string and DateTime.
3621
3622 2004-06-07  Sebastien Pouliot  <sebastien@ximian.com>
3623
3624         * DateTime.cs: Fixed OLE Automation date conversions: timezone 
3625         insensitive, wrong exception in FromOADate, handling of Min/Max 
3626         values, negative doubles where integer part is negative but 
3627         decimals are positive! Charming format ;-)
3628
3629 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
3630
3631         * String.cs: Fixed Join in case separator parameter is null.
3632         * TimeSpan.cs: Cache format errors during parsing and throw 
3633         FormatException only if there was no overflow.
3634
3635 2004-06-06  Gert Driesen <drieseng@users.sourceforge.net>
3636
3637         * MonoCustomAttrs.cs: fixed issue where an empty array was 
3638         returned when GetCustomAttributes was invoked with null
3639         attribute type and there was only one result
3640
3641 2004-06-06  Sebastien Pouliot  <sebastien@ximian.com>
3642
3643         * Decimal.cs: Fixed ToString(String.Empty) to default ("G").
3644         * Int16.cs: Fixed ToString(String.Empty) to default ("G").
3645         * Int32.cs: Fixed ToString(String.Empty) to default ("G").
3646         * Int64.cs: Fixed ToString(String.Empty) to default ("G").
3647         * SByte.cs: Fixed ToString(String.Empty) to default ("G").
3648         * UInt16.cs: Fixed ToString(String.Empty) to default ("G").
3649         * UInt32.cs: Fixed ToString(String.Empty) to default ("G").
3650         * UInt64.cs: Fixed ToString(String.Empty) to default ("G").
3651
3652 2004-06-05  Sebastien Pouliot  <sebastien@ximian.com>
3653
3654         * Convert.cs: Fixed the convertion of negative integers (byte, short, 
3655         int and long) into string in a specific base (2, 8, 10 or 16).
3656
3657 2004-06-04  Sebastien Pouliot  <sebastien@ximian.com>
3658
3659         * Math.cs: Fixed IEEERemainder to return -0 (0x8000000000000000) when
3660         the dividend is negative and the result is 0 (remainder).
3661
3662 2004-06-03  Sebastien Pouliot  <sebastien@ximian.com>
3663
3664         * Delegate.cs: Fix the NullReferenceException in Combine(Delegate[]).
3665
3666 2004-06-02  Sebastien Pouliot  <sebastien@ximian.com>
3667
3668         * TimeSpan.cs: Fixed overflow issues when delaing with big (days) time
3669         spans. Fixed parsing when only days are presents in the string (which
3670         should be illegal according to the documentation but is supported).
3671
3672 2004-06-01  Sebastien Pouliot  <sebastien@ximian.com>
3673
3674         * TimeSpan.cs: Fixed exceptions in FromXXX methods as they are 
3675         somewhat different from the documentation.
3676
3677 2004-06-01  Gert Driesen <drieseng@users.sourceforge.net>
3678
3679         * Type.cs: added missing attributes on InvokeMember
3680
3681 2004-06-01  Miguel de Icaza  <miguel@ximian.com>
3682
3683         * String.cs: Flag concat with four arguments internal. 
3684
3685 2004-05-31  Sebastien Pouliot  <sebastien@ximian.com>
3686
3687         * Array.cs: Fixed legal case where value is null.
3688         * Byte.cs: Fixed ToString when format is an empty string (use "G").
3689         * Guid.cs: Renamed private fields (and changed some to signed) to 
3690         match MS implementation and allow serialization to work. Fix 
3691         bug #59113.
3692
3693 2004-05-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3694
3695         * DateTime.cs: adjust milliseconds for fraction specifier ('f').
3696
3697 2004-05-30  Miguel de Icaza  <miguel@ximian.com>
3698
3699         * Console.cs: Remove *again* the version of WriteLine with four
3700         arguments;  That should *not* be added.  
3701
3702         Flag it as internal as people migrate their code.
3703
3704 2004-05-29  Sebastien Pouliot  <sebastien@ximian.com>
3705
3706         * Convert.cs: Fixed ToSByte(string,IFormatProvider) to throw 
3707         ArgumentNullException (only case, all other returns 0). Fixed exception
3708         reporting for hex prefix only strings. Fixed ChangeTo where null could
3709         be misinterpreted between null and Empty.
3710
3711 2004-05-28  Sebastien Pouliot  <sebastien@ximian.com>
3712
3713         * Convert.cs: Fixed integer parsing for special cases (0x, 0X for base
3714         16), non-base 10 negative numbers ... see new unit tests. Fixed the 
3715         case when we parse Int64.MinValue (positive doesn't fit a signed long).
3716
3717 2004-05-28  Jackson Harper  <jackson@ximian.com>
3718
3719         * Environment.cs: Increment version number.
3720         
3721 2004-05-28  Zoltan Varga  <vargaz@freemail.hu>
3722
3723         * AppDomain.cs (Load): Try loading from assemblyRef.CodeBase if exists.
3724         Fixes #59189.
3725
3726 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
3727
3728         * DateTime.cs : I reverted my fix by accident :(
3729
3730 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
3731
3732         * DateTime.cs :
3733           - In ToString(), Don't use culture-dependent daynames to format
3734             Universal/RFC1123 date/time. Also, use FullDateTimePattern for 'U'.
3735           - Fixed GetDateTimeFormats () that generated incorrect 'U' value 
3736             (since the format string is the same as 'F').
3737
3738 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
3739
3740         * DateTime.cs : don't adjust utc value in ToString(). It must output
3741           the same time value, just adding 'Z' for UTC.
3742
3743 2004-05-28  Atsushi Enomoto <atsushi@ximian.com>
3744
3745         * DateTime.cs : in 'Z' case, remove the 'Z' char from input before
3746           proceeding.
3747
3748 2004-05-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3749
3750         * AppDomainSetup.cs: InitAppDomainSetup is not needed now.
3751
3752 2004-05-27  Sebastien Pouliot  <sebastien@ximian.com>
3753
3754         * Byte.cs: Fixed parsing for "-0" which is valid for unsigned types.
3755         * Convert.cs: Convert with a base parameter cannot parse negative 
3756         string numbers, even "-0".
3757         * UInt16.cs: Fixed parsing for "-0" which is valid for unsigned types.
3758         * UInt32.cs: Fixed parsing for "-0" which is valid for unsigned types.
3759         * UInt64.cs: Fixed parsing for "-0" which is valid for unsigned types.
3760
3761 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
3762
3763         * DateTime.cs : 
3764           - Added "yyyy/MM/dd HH:mm:ss 'GMT'" and "yyyy-MM-dd HH:mm:ss 'GMT'"
3765             to common formats (yes, I know it is nothing more than hack)
3766           - Fixed some GetDateTimeFormats() that just returned patterns.
3767           - For InvariantCulture, now try both supported formats and our
3768             predefined formats.
3769           - It was accepting incorrectly extraneous characters. That caused
3770             some UTC/non-UTC bug.
3771           - RFC1123 string should return universal time. Uncomment again (the
3772             problem should went away because of the extra characters fix above.
3773
3774             With some of the changes above, fixed bug #47720.
3775
3776 2004-05-27  Atsushi Enomoto <atsushi@ximian.com>
3777
3778         * DateTime.cs : quick revert 'Z' support for certificate verifications.
3779
3780 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
3781
3782         * Array.cs: Removed duplicate condition if LastIndexOf.
3783
3784 2004-05-26  Atsushi Enomoto <atsushi@ximian.com>
3785
3786         * DateTime.cs :
3787           - Added "yyyy-MM-dd HH:mm:ss" to "compatible patterns".
3788             (Fixed bug #58938.)
3789           - As a quick remedy to accept more patterns, Parse() now also tries
3790             InvariantInfo patterns (this is because we have no more than one
3791             pattern for each pattern component.)
3792           - In _DoParse(), 'Z' should not be read as timezone specifier. Some
3793             culture uses 'Z' as AM/PM designer, and it should be recognized as
3794             part of the UTCpattern (if it actually UTC pattern for the culture
3795             contains 'Z').
3796
3797 2004-05-26  Gert Driesen (drieseng@users.sourceforge.net)
3798
3799         * MonoCustomAttrs.cs: Fixed issue with AllowMultiple, as MS
3800         seems to allow multiple attributes with AllowMultiple at
3801         runtime.
3802
3803 2004-05-26  Sebastien Pouliot  <sebastien@ximian.com>
3804
3805         * Byte.cs: Throw an OverflowException for negative numbers.
3806         * Convert.cs: Accept 0x and 0X as prefix when parsing base16 strings.
3807         * Environment.cs: Bumped mono_corlib_version to 20 (rng interface).
3808
3809 2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
3810
3811         * Array.cs: Fixed possible integer overflow.
3812         * BitConverter.cs: Fixed a possible integer overflow in ToString.
3813         * Guid.cs: Added an internal method to create a random Guid without
3814         using CryptoConfig (which is heavy on first use). This is only used
3815         in S.R.E.ModuleBuilder to speedup MCS compilation.
3816         * String.cs: Fixed reported exception for PadLeft|Right. Fixed 
3817         possible integer overflow in methods that takes index and count
3818         as parameters.
3819
3820 2004-05-25  Zoltan Varga  <vargaz@freemail.hu>
3821
3822         * String.cs: Add new Strcpy icalls which take a char array as 
3823         parameter.
3824
3825 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
3826
3827         * DateTime.cs : added more invariant format patterns. This should
3828           really fix bug #57656.
3829
3830 2004-05-25 14:14 CET Patrik Torstensson <totte@hiddenpeaks.com>
3831
3832         * BitConverter.cs (ToBoolean): Return true or false instead
3833         of unsafe returing byte as bool. Fixes bug #58874.
3834
3835 2004-05-25  Atsushi Enomoto <atsushi@ximian.com>
3836
3837         * DateTime.cs : In ToString(string, IFormatProvider), use "G" if
3838           string format argument is null.
3839
3840 2004-05-25  Lluis Sanchez Gual  <lluis@ximian.com>
3841
3842         * Version.cs: Rename of data fields to match those in Microsoft.NET.
3843           Patch by PAF@design.ru.
3844
3845 2004-05-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3846
3847         * DateTime.cs: allow double quotes in the formats. Don't set
3848         next_not_digit to true in presence of single or double quotes. Patch by
3849         Martin Probst.
3850
3851 2004-05-24  Zoltan Varga  <vargaz@freemail.hu>
3852
3853         * AppDomainSetup.cs (InitAppDomainSetup): This one returns void.
3854
3855 2004-05-23  Sebastien Pouliot  <sebastien@ximian.com>
3856
3857         * Array.cs: Fixed exception when we try to Clear outside bounds.
3858         * Boolean.cs: Fixed Equals for True!=True (see bugzilla #58874).
3859         * BitConverter.cs: Fixed negative index and integer overflow in
3860         To... methods.
3861         * Buffer.cs: Fixed integer overflow in BlockCopy.
3862
3863 2004-05-22  Sebastien Pouliot  <sebastien@ximian.com>
3864
3865         * Array.cs: Clear can now work on multidimentional arrays.
3866         * IntPtr.cs: We now only accept 32bits values in the long constructor
3867         unless we're on a 64 bits machine.
3868         * UIntPtr.cs: We now only accept 32bits unsigned values in the ulong 
3869         constructor unless we're on a 64 bits machine.
3870
3871 2004-05-22  Duncan Mak  <duncan@ximian.com>
3872
3873         * Convert.cs: The file was mostly in DOS endings already, for the
3874         sake of consistency, converted it all to DOS endings.
3875         (ToType): When value is null, immediately return null and don't
3876         ever throw a NullReferenceException. When conversionType is null,
3877         throw an InvalidCastException. Give a better error message when
3878         attempting to convert to a DBNull as well.
3879
3880 2004-05-21  Sebastien Pouliot  <sebastien@ximian.com>
3881
3882         * Decimal.cs: Fixed To... methods that needs to trunk the integer part
3883         of Decimal (and not use the banker's rounding like Convert.To...).
3884         * Single.cs: Fixed CompareTo and Equals (copied fix from Double) wrt
3885         to NaN compares (see new unit tests).
3886
3887 2004-05-20  Sebastien Pouliot  <sebastien@ximian.com>
3888
3889         * Convert.cs: Added checks for integer overflow for From|ToBase64Char.
3890         Also fixed the case where wide (16 bits) characters were converted to 
3891         bytes.
3892
3893 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
3894
3895         * ThreadStaticAttribute.cs
3896         * ContextStaticAttribute.cs
3897         * FlagsAttribute.cs
3898         * ObsoleteAttribute.cs : now that Inherited is false by
3899         default on AttributeUsageAttribute (as it should be) we
3900         need to explicitly set Inherited to false for those
3901         attributes should it be be false.
3902
3903 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
3904
3905         * AttributeUsageAttribute.cs: Inherited property should be
3906         true by defaultrs.cs: respect Inherited property, and
3907
3908 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
3909
3910         * MonoCustomAttrs.cs: respect Inherited property, and
3911         AllowMultiple property of a CustomAttribute. This fixes
3912         a major issue we had with respect to custom attributes.
3913
3914 2004-05-19  Gert Driesen (drieseng@users.sourceforge.net)
3915
3916         * MonoType.cs: throw ArgumentNullException when type parameter in
3917         GetCustomAttributes(Type, bool) is null
3918
3919 2004-05-18  Sebastien Pouliot  <sebastien@ximian.com>
3920
3921         * Buffer.cs: Added checks for null source and destination. Fix failing
3922         CryptoStream unit test.
3923         * Guid.cs: Fixed thread-safety issue. Simplified implementation to use
3924         pseudo-random numbers to generate GUIDs (as per section 3.4 of the 
3925         spec). This removes the TODO to get the computer MAC address and
3926         the chances to get a duplicate GUID (across different machines).
3927
3928 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3929
3930         * TimeSpan.cs: Only catch expected exceptions, if we get other exceptions
3931           than OverflowExceptions then something went wrong internally
3932
3933 2004-05-17  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3934
3935         * Char.cs: Fix long standing bug with ToLower/ToUpper not being
3936           culture - sensitive
3937
3938 2004-05-14  Zoltan Varga  <vargaz@freemail.hu>
3939
3940         * Buffer.cs: Optimize BlockCopy.
3941
3942         * Environment.cs: Bump corlib version.
3943
3944 2004-05-14  Atsushi Enomoto <atsushi@ximian.com>
3945
3946         * __ComObject.cs : This class is not regarded as CLSCompliant by csc.
3947           See also bug #58478.
3948
3949 2004-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3950
3951         * AppDomainSetup.cs: don't throw an exception if dynamic_base has not
3952         been set. Just return null as MS. Fixes bug #58120.
3953
3954 2004-05-14  Marek Safar  <marek.safar@seznam.cz>
3955
3956         * Boolean.cs, Byte.cs, Char.cs, DBNull.cs, DateTime.cs,
3957           Decimal.cs, Double.cs, Enum.cs, Int16.cs, Int32.cs,
3958           Int64.cs, IntegerFormatter.cs, SByte.cs, Single.cs,
3959           String.cs, UInt16.cs, UInt32.cs, UInt64.cs: Removed
3960           useless [CLSCompliant (false)]
3961
3962
3963 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
3964
3965         * __ComObject.cs: To please corcompare (no implementation).
3966
3967 2004-05-13  Zoltan Varga  <vargaz@freemail.hu>
3968
3969         * Environment.cs: Bump corlib version.
3970
3971 2004-05-13  Sebastien Pouliot  <sebastien@ximian.com>
3972
3973         * Environement.cs: Removed two security attributes for CurrentDirectory
3974         that weren't documented (and anyway we don't support them).
3975
3976 2004-05-11  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
3977
3978         * Char.cs: Fix exceptions
3979
3980 2004-05-11  Lluis Sanchez Gual  <lluis@ximian.com>
3981
3982         * MissingMemberException.cs: Fix in serialization constructor.
3983
3984 2004-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
3985
3986         * Environment.cs: GetGacPath return value is resolved at runtime on
3987         windows.
3988
3989 2004-05-07  Sebastien Pouliot  <sebastien@ximian.com>
3990  
3991         * Convert.cs: ToBase64CharArray method was depending on a bug in 
3992         S.S.C.ToBase64Transform class to work. Added an internal method to 
3993         provide the same functionality (multiple block processing).
3994
3995 2004-05-06  Jackson Harper  <jackson@ximian.com>
3996
3997         * Environment.cs: Make $HOME the personal directory.
3998
3999 2004-05-06  Sebastien Pouliot  <sebastien@ximian.com>
4000  
4001         * Convert.cs: ToBase64String method was depending on a bug in 
4002         S.S.C.ToBase64Transform class to work. Added an internal method to 
4003         provide the same functionality (multiple block processing).
4004
4005 2004-05-05  Sebastien Pouliot  <sebastien@ximian.com>
4006  
4007         * Environment.cs: Completed OSVersion property.
4008         * Version.cs: Added internal CreateFromString() to "try" to build the
4009         best version number form the specified string.
4010  
4011 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4012
4013         * TimeSpan.cs: Redid a lot of stuff in TimeSpan from scratch.
4014           Fixes several potential bugs and makes things way faster.
4015
4016 2004-05-01  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4017
4018         * TimeSpan.cs: Formatting changes
4019
4020 2004-04-29 Ben Maurer  <bmaurer@users.sourceforge.net>
4021
4022         * Activator.cs: change _flags to a const.
4023         * IntegerFormatter.cs: make tables readonly.
4024         * Convert.cs: tables readonly
4025         * DateTime.cs: ditto.
4026         * IntPtr.cs: avoid a cctor.
4027
4028 2004-04-29  Jackson Harper  <jackson@ximian.com>
4029
4030         * MonoType.cs: 
4031         * Type.cs: NET_2_0 now instead of 1_2. 
4032         
4033 2004-04-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4034
4035         * Environment.cs: implemented GetLogicalDrives.
4036
4037 2004-04-28  Miguel de Icaza  <miguel@ximian.com>
4038
4039         * Applied patch from Atsushi Enomoto that allows Synchronized
4040         writers to have a `dont close' flag, this fixes 52094
4041
4042 2004-04-29  Lluis Sanchez Gual  <lluis@ximian.com>
4043
4044         * MonoCustomAttrs.cs, MonoType.cs: Property.GetGetMethod() does not
4045         return the method if it is private (it did until now because of a
4046         bug). Make sure it works as it worked before the fix.
4047         * Type.cs: Implemented FilterAttribute delegate.
4048
4049 2004-04-28  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4050
4051         * IntegerFormatter.cs: Prevent the use of the explicit static constuctor
4052
4053 2004-04-27  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4054
4055         * IntegerFormatter.cs: Made functions internal (needed by other patches)
4056
4057 2004-04-27  Lluis Sanchez Gual  <lluis@ximian.com>
4058
4059         * DateTime.cs: TODO cleaning.
4060         * Delegate.cs: GetObjectData should be virtual.
4061         * IntegerFormatter.cs: Method factorization. I don't want to fix bugs in
4062           30 methods almost identical.
4063         * MulticastDelegate.cs: Implemented GetObjectData.
4064         
4065 2004-04-26  Jackson Harper  <jackson@ximian.com>
4066
4067         * Environment.cs: Things going bump in the night.
4068
4069 2004-04-25  Miguel de Icaza  <miguel@ximian.com>
4070
4071         * Convert.cs (toBase64Transform): Make private.
4072
4073 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4074
4075         * Convert.cs:
4076         * Decimal.cs:
4077         * DecimalFormatter.cs:
4078         * FloatingPointFormatter.cs: Call invariant Char functions
4079         * Guid.cs: Call invariant Char and String functions
4080         * String.cs: Call invariant Char functions
4081
4082 2004-04-25  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4083
4084         * String.cs: Refactored the Invariant ToXXX into its own internal methods
4085           so they are directly callable within corlib (can prevent early
4086           construction of CultureInfo, InvariantCulture and related classes)
4087
4088 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4089
4090         * String.cs: Managed impl. of Invariant parts of ToLower, ToUpper
4091         * Char.cs: Managed impl. of Invariant parts of ToLower, ToUpper
4092
4093 2004-04-24  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4094
4095         * String.cs: Check for null values
4096
4097 2004-04-23  Peter Bartok <pbartok@novell.com>
4098
4099         * Environment.cs: GetLogicalDrives now returns "/" instead of null. Gonzalo
4100           will do a better fix in the future, but this way apps can at least use it.
4101
4102 2004-04-23  Sebastien Pouliot  <sebastien@ximian.com>
4103
4104         * Environment.cs: Better support for GetFolderPath (same results as MS 
4105           on Windows).
4106
4107 2004-04-22  Lluis Sanchez Gual  <lluis@ximian.com>
4108
4109         * Activator.cs: Removed TODOs for finished methods.
4110         * AppDomainSetup.cs: When setting a relative path to ApplicationBase, it
4111           must be relative to the current directory, not the temp directory.
4112           Implemented DynamicBase.
4113         * Convert.cs: No need to create a ToBase64Transform instance at every call
4114           to ToBase64CharArray.
4115         * DateTime.cs: Implemented missing methods FromFileTimeUtc and 
4116           ToFileTimeUtc.
4117         * Decimal.cs: Implemented FromOACurrency and ToOACurrency.
4118         * Delegate.cs: Removed class TODO.
4119         * IntegerFormatter.cs: Use Char.IsLetter and Char.IsDigit instead of ad-hoc
4120           methods.
4121         * Type.cs: Removed TODOs for things already implemented.
4122         
4123 2004-04-21  Lluis Sanchez Gual  <lluis@ximian.com>
4124
4125         * Char.cs: Implemented culture-dependent ToLower and ToUpper methods.
4126         * MulticastDelegate.cs: Removed unused code.
4127
4128 2004-04-19  Lluis Sanchez Gual  <lluis@ximian.com>
4129
4130         * AppDomain.cs: Implemented DynamicDirectory and SetDynamicBase.
4131         * Array.cs: Removed some TODOs in CreateInstance and IndexOf.
4132         * BadImageFormatException.cs: TODO reformat.
4133         * DateTime.cs: Implemented GetDateTimeFormats and GetDateTimeFormats.
4134         * DelegateSerializationHolder.cs: Made class internal.
4135         * Enum.cs: Removed TODO for localization, since this is something that has
4136           to be done for all classes.
4137         * Environment.cs: Removed TODO.
4138         * Exception.cs: Changed ToString to use StringBuilder.
4139         * MonoDummy.cs: Made class internal.
4140         * UnitySerializationHolder.cs: Added support for modules.
4141
4142 2004-04-16  David Sheldon <dave-mono@earth.li>
4143
4144         * DecimalFormatter.cs: Don't append a decimal point after the
4145           end of a number. ((decimal)1).ToString("P0") should be "100 %", not
4146           "100. %"
4147
4148 2004-04-09  Miguel de Icaza  <miguel@ximian.com>
4149
4150         * OutOfMemoryException.cs: Removed the call to Locale.GetText from
4151           this.
4152
4153 2004-04-10  Gert Driesen (drieseng@users.sourceforge.net)
4154
4155         * MonoDummy.cs: added MonoTODO to make sure we remove this class
4156           when its no longer needed
4157
4158 2004-04-09  David Sheldon <dave-mono@earth.li>
4159
4160         * Convert.cs: Allow + signs in strings for ToInt32, and
4161           - if it is base 10.
4162
4163 2004-04-08  Atsushi Enomoto  <atsushi@ximian.com>
4164
4165         * Nullable.cs : usingdecl should also be conditional.
4166
4167 2004-04-07  Martin Baulig  <martin@ximian.com>
4168
4169         * Nullable.cs: New file.
4170
4171 2004-04-07  Martin Baulig  <martin@ximian.com>
4172
4173         * Type.cs (Type.GetGenericArguments): Make this abstract.
4174
4175 2004-04-07  Jackson Harper  <jackson@ximian.com>
4176
4177         * Environment.cs: Increase corlib version number.
4178         
4179 2004-04-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4180
4181         * Environment.cs:
4182         (ExpandEnvironmentVariables): on windows, env. vars. are case
4183         insensitive.
4184
4185 2004-04-06  Sebastien Pouliot  <sebastien@ximian.com>
4186
4187         * AppDomain.cs: Added static to [ThreadStatic] _principal field. 
4188         Removed [ThreadStatic] for _principalPolicy (not required).
4189
4190 2004-04-06  Miguel de Icaza  <miguel@ximian.com>
4191
4192         * Guid.cs: Flag as Sequential.
4193
4194 2004-04-02  Dick Porter  <dick@ximian.com>
4195
4196         * String.cs: More sanity checks in Replace().  Fixes bug 55822.
4197
4198 2004-04-02  Sebastien Pouliot  <sebastien@ximian.com>
4199
4200         * Environment.cs: Implement ExpandEnvironmentVariables static method.
4201         Now call the runtime to get the username (fix #56144).
4202
4203 2004-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4204
4205         * MonoType.cs: AssemblyQualifiedName now displays culture, version...
4206         Fixes bug #56341.
4207
4208 2004-03-29  Miguel de Icaza  <miguel@ximian.com>
4209
4210         * Console.cs: If we fail to open stdin/stdout/stderr, create
4211         readers with a NullStream.  This can happen if our caller does not
4212         setup stdin/stoud/stderr file handles.  #56158 exposed this, but
4213         it will happen elsewhere.
4214
4215 2004-03-29  Lluis Sanchez Gual <lluis@ximian.com>
4216
4217         * Convert.cs: In ToSingle(double), removed checks for Single.MaxValue
4218         and Single.MinValue. MS.NET don't do it. This fixes bug #56005.
4219         * Guid.cs: Added support for guid strings in the "N" and "P" formats in
4220           the constructor. This fixes bug #54019.
4221
4222 2004-03-23  Lluis Sanchez Gual <lluis@ximian.com>
4223
4224         * FloatingPointFormatter.cs: Made the class thread safe. Had to move some
4225           internal variables to structures that are moved around methods.
4226           Factorized some common formatting code into FormatNumberInternal.
4227           
4228 2004-03-23  Dick Porter  <dick@ximian.com>
4229
4230         * DateTime.cs: Allow any character for DateSeparator when parsing,
4231         except TimeSeparator, a digit or a letter.  Fixes bug 54047.  Also
4232         deleted the previous fix for 54721, because this covers it too.
4233         
4234 2004-03-23  Dick Porter  <dick@ximian.com>
4235
4236         * DateTime.cs: Check the date string for too many digits when
4237         parsing.  Fixes bugs 53023 and 53025.
4238
4239 2004-03-22  Dick Porter  <dick@ximian.com>
4240
4241         * String.cs: Use the provider when converting strings to other
4242         types.
4243
4244         * DateTime.cs: Add MM-dd-yyyy to the list of standard date parsing
4245         formats.  Fixes bug 54721.
4246
4247 2004-03-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4248
4249         * Console.cs: Styled, optimized calls
4250         * CrossAppDomainDelegate.cs: Small header fix
4251         * Buffer.cs: Style, improve errors
4252         * BitConverter.cs: Style, improve errors, remove obsolete comment
4253         * Attribute.cs: Style, improve errors, small fix
4254         * Array.cs: Style, improve errors, small fix, added TODOs
4255         * Activator.cs: Style, localized errors, added error checks
4256         * Byte.cs: Style, localized errors, fixed wrong exception parameters
4257         * Char.cs: Style
4258         * Boolean.cs: Style
4259         * AppDomainSetup.cs: Style
4260         * AppDomain.cs: Style, implemented two methods (redirect)
4261
4262 2004-03-21  Jackson Harper  <jackson@ximian.com>
4263
4264         * FloatingPointFormatter.cs: Set precision from number format info
4265         when it is not specified. This fixes bug #54983.
4266         
4267 2004-03-18  Nick Drochak <ndrochak@ieee.org>
4268
4269         * Math.cs: Use IsNaN() method not "x == NaN".
4270
4271 2004-03-16  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4272
4273         * EntryPointNotFoundException.cs
4274         * DuplicateWaitObjectException.cs
4275         * DllNotFoundException.cs
4276         * DivideByZeroException.cs
4277         * ContextMarshalException.cs
4278         * CannotUnloadAppDomainException.cs
4279         * BadImageFormatException.cs
4280         * ArrayTypeMismatchException.cs
4281         * ArithmeticException.cs
4282         * ArgumentOutOfRangeException.cs
4283         * ArgumentNullException.cs
4284         * ArgumentException.cs
4285         * ApplicationException.cs
4286         * AppDomainUnloadedException.cs: Added missing HResult overrides
4287
4288         * BadImageFormatException.cs: Improved/ Fixed implementation
4289
4290 2004-03-15  Sebastien Pouliot  <sebastien@ximian.com>
4291
4292         * Random.cs: Corrected random value when Next is called with a 
4293         negative value. Testing indictae that our results aren't exactly the 
4294         same as MS, we have a +/- 1 (probably rounding errors due to 
4295         different implementation).
4296
4297 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4298
4299         * Environment.cs: updated corlib version.
4300
4301 2004-03-15  Lluis Sanchez Gual <lluis@ximian.com>
4302
4303         * Boolean.cs, Byte.cs, Char.cs, Double.cs, Int16.cs, Int32.cs, Int64.cs,
4304           SByte.cs, Single.cs, UInt16.cs, UInt32.cs, UInt64.cs: Renamed internal
4305           field "value" to "m_value", so it is interoperable with MS.NET when 
4306           serializing and deserializing data. Based on the patch from Daniel
4307           Keep.
4308
4309 2004-03-14  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4310
4311         * TypeInitializationException.cs
4312         * SystemException.cs
4313         * StackOverflowException.cs
4314         * RankException.cs
4315         * OverflowExceptionException.cs
4316         * OutOfMemoryException.cs
4317         * NullReferenceException.cs
4318         * NotSupportedException.cs
4319         * NotFiniteNumberException.cs
4320         * InvalidOperationException.cs
4321         * InvalidCastException.cs
4322         * IndexOutOfRangeException.cs
4323         * FormatException.cs
4324         * ExecutionEngineException.cs: improved parameter names
4325
4326 2004-03-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4327
4328         * Enum.cs
4329         * EntryPointNotFoundException.cs
4330         * DuplicateWaitObjectException.cs
4331         * DoubleFormatter.cs
4332         * DllNotFoundException.cs
4333         * DivideByZeroException.cs
4334         * DelegateSerializationHolder.cs
4335         * Delegate.cs
4336         * DBNull.cs
4337         * ContextStaticAttribute.cs
4338         * ContextMarshalException.cs
4339         * ContextBoundObject.cs
4340         * CLSCompliantAttribute.cs
4341         * CharEnumerator.cs
4342         * CannotUnloadAppDomainException.cs
4343         * BadImageFormatException.cs
4344         * AttributeUsageAttribute.cs
4345         * AttributeTargets.cs
4346         * AsyncCallback.cs
4347         * AssemblyLoadEventHandler.cs
4348         * AssemblyLoadEventArgs.cs
4349         * ArrayTypeMismatchException.cs
4350         * ArithmeticException.cs
4351         * ArgumentOutOfRangeException.cs
4352         * ArgumentNullException.cs
4353         * ArgumentException.cs
4354         * ArgIterator.cs
4355         * ApplicationException.cs
4356         * AppDomainUnloadedException.cs
4357         * AppDomain.cs: Mono styled, fixed exceptions/ locales
4358           removed excess usings
4359
4360 2004-03-10  Sebastien Pouliot  <sebastien@ximian.com>
4361
4362         * Convert.cs: FromBase64 now ignore some characters (tab, LF, CR and
4363         spaces) which fixed #54939. Changed the way that the length is 
4364         validated (multiple of 4) because the ignored characters must not be
4365         included in the count.
4366
4367 2004-03-10  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4368
4369         * String.cs: Monostyled
4370
4371 2004-03-09  Jackson Harper  <jackson@ximian.com>
4372
4373         * Char.cs: Only use a byte for numeric data.
4374         
4375 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4376
4377         * TypedReference.cs: Added missing Attributes
4378         * ParamArrayAttribute.cs: Small style fix
4379         * OperatingSystem.cs: Added .Net 1.1 member
4380
4381 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4382
4383         * FieldAccessException.cs
4384         * FormatException.cs
4385         * InvalidCastException.cs
4386         * InvalidOperationException.cs
4387         * MemberAccessException.cs
4388         * MethodAccessException.cs
4389         * MissingFieldException.cs: Locale strings
4390         * MissingMemberException.cs: Locale strings
4391         * MissingMethodException.cs: Locale strings
4392         * NotFiniteNumberException.cs
4393         * NotImplementedException.cs
4394         * NotSupportedException.cs
4395         * NullReferenceException.cs
4396         * ObjectDisposedException.cs
4397         * OutOfMemoryException.cs
4398         * OverflowExceptionException.cs
4399         * PlatformNotSupportedException.cs
4400         * RankException.cs: Added missing HResult overrides
4401
4402 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4403
4404         * RuntimeTypeHandle.cs
4405         * RuntimeMethodHandle.cs
4406         * RuntimeFieldHandle.cs: Implemented serialization (partially untested)
4407
4408 2004-03-09  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4409
4410         * EventArgs.cs
4411         * Exception.cs
4412         * ExecutionEngineException.cs
4413         * FieldAccessException.cs
4414         * FormatException.cs
4415         * GC.cs
4416         * Guid.cs
4417         * IndexOutOfRangeException.cs
4418         * IntPtr.cs
4419         * InvalidCastException.cs
4420         * InvalidOperationException.cs
4421         * InvalidProgramException.cs
4422         * IServiceProvider.cs
4423         * LoaderOptimization.cs
4424         * LoaderOptimizationAttribute.cs
4425         * MarshalByRefObject.cs
4426         * Math.cs
4427         * MemberAccessException.cs
4428         * MethodAccessException.cs
4429         * MissingFieldException.cs
4430         * MissingMemberException.cs
4431         * MissingMethodException.cs
4432         * MultiCastDelegate.cs
4433         * MulticastNotSupportedException.cs
4434         * NonSerializedAttribute.cs
4435         * NotFiniteNumberException.cs
4436         * NotImplementedException.cs
4437         * NotSupportedException.cs
4438         * NullReferenceException.cs
4439         * ObjectDisposedException.cs
4440         * ObsoleteAttribute.cs
4441         * OperatingSystem.cs
4442         * OutOfMemoryException.cs
4443         * OverflowExceptionException.cs
4444         * PlatformID.cs
4445         * PlatformNotSupportedException.cs
4446         * Random.cs
4447         * RankException.cs
4448         * ResolveEventArgs.cs
4449         * ResolveEventHandler.cs
4450         * RuntimeFieldHandle.cs
4451         * RuntimeMethodHandle.cs
4452         * RuntimeTypeHandle.cs: Mono styled, fixed exceptions/ locales
4453           removed excess usings
4454
4455 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4456
4457         * SystemException.cs: Exceptions set the HResult
4458         * TypeLoadException.cs: Exceptions set the HResult, fixed wrong exception usage
4459         * SByte.cs: Implemented two missing methods, fix wrong parameters for ArgumentNullException
4460
4461 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4462
4463         * TypedReference.cs
4464         * TypeLoadException.cs
4465         * TypeInitializationException.cs
4466         * TypeCode.cs
4467         * TimeZone.cs
4468         * ThreadStaticAttribute.cs
4469         * SystemException.cs
4470         * STAThreadAttribute.cs
4471         * StackOverflowException.cs
4472         * SingleFormatter.cs
4473         * Single.cs
4474         * SerializableAttribute.cs: Mono styled, fixed exceptions/ locales
4475           removed excess usings
4476
4477 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4478
4479         * UnauthorizedAccessException.cs: Exceptions set the HResult
4480         * UInt64.cs: Implemented two missing methods
4481         * UInt32.cs: Fix wrong parameters for ArgumentNullException, simpler convert
4482         * UInt16.cs: Fix wrong parameters for ArgumentNullException, simpler convert
4483
4484 2004-03-08  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4485
4486         * WeakReference.cs
4487         * Void.cs
4488         * Version.cs
4489         * ValueType.cs
4490         * UnitySerializationHolder.cs
4491         * UnhandledExceptionEventHandler.cs
4492         * UnauthorizedAccessException.cs
4493         * UIntPtr.cs
4494         * UInt64.cs
4495         * UInt32.cs
4496         * UInt16.cs: Mono styled, Locale.GetText fixes, msg fixes
4497
4498 2004-03-04  Lluis Sanchez Gual <lluis@ximian.com>
4499
4500         * Environment.cs: Bump corlib version.
4501
4502 2004-03-04  Jackson Harper  <jackson@ximian.com>
4503
4504         * Char.cs: New managed implementation. Modified patch by Andreas Nahr.
4505         
4506 2004-02-27  Lluis Sanchez Gual <lluis@ximian.com>
4507
4508         * String.cs: Concat() fixed crash when one of the arguments is an object
4509           whose ToString() method returns null.
4510         * TypeLoadException.cs: Added some serialization fiels, needed for
4511           compatibility with MS.NET.
4512
4513 2004-02-23 Ben Maurer  <bmaurer@users.sourceforge.net>
4514
4515         * String.cs (Equals): Speed up this method by avoiding Array
4516          Bounds Checks and by comparing by 32 bit words rather than 16 bit chars.
4517
4518         This gives between 0x (for 1 char) and >2x (for large strings)
4519         factor of improvement.
4520
4521         A big thanks to Miguel, who suggested the integer compares.
4522
4523 2004-02-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4524
4525         * MonoType.cs: use the binder in GetPropertyImpl.
4526
4527 2004-02-22  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4528
4529         * Math.cs: MonoStyled, replaced space with tabs,
4530           speedup of some methods by avoiding method calls
4531
4532 2004-02-18  Atsushi Enomoto  <atsushi@ximian.com>
4533
4534         * Char.cs : optimized IsSeparator(), IsWhiteSpace() and IsDigit().
4535           (Moved from InternalCall to Managed code).
4536
4537 2004-02-17  Martin Baulig  <martin@ximian.com>
4538
4539         * MonoType.cs (GetConstructors): Renamed the interncall to
4540         GetConstructors_internal(), made it internal and added a `Type
4541         reflected_type' argument to it.
4542         (GetEvents, GetFields): Likewise.
4543         (GetMethodsByName): Added `Type reflected_type' argument.
4544         (GetPropertiesByName): Likewise.
4545
4546 2004-02-16  Jackson Harper  <jackson@ximian.com>
4547
4548         * FloatingPointFormater.cs: Allow precision to be up to the number
4549         of decimals without rounding.
4550         
4551 2004-02-14  Zoltan Varga  <vargaz@freemail.hu>
4552
4553         * Delegate.cs (Equals): Do not compare method_ptr, since it might
4554         point to a trampoline.
4555
4556 2004-02-12  Jackson Harper  <jackson@ximian.com>
4557
4558         * AppDomainSetup.cs: If relative paths are used they should be
4559         rooted in the temp directory.
4560         
4561 2004-02-11  Marek Safar  <marek.safar@seznam.cz>
4562
4563         * Type.cs (FilterNameIgnoreCase_impl): Added extra check for speedup.
4564
4565 2004-02-10  Zoltan Varga  <vargaz@freemail.hu>
4566
4567         * AppDomain.cs (Load): Check that assemblyRef.Name is not empty, to
4568         avoid an assert in the runtime.
4569
4570 2004-02-08  Duncan Mak  <duncan@ximian.com>
4571
4572         * Convert.cs (ToType): Always let a Convert.ChangeType call
4573         succeed if the source object is already of the destination type.
4574
4575         Patch by Ian MacLean (ianm@activestate.com).
4576
4577 2004-02-05  Sebastien Pouliot  <sebastien@ximian.com>
4578
4579         * AppDomain.cs: Implemented SetPrincipalPolicy and SetThreadPrincipal.
4580
4581 2004-02-02  Zoltan Varga  <vargaz@freemail.hu>
4582
4583         * Environment.cs: Bump corlib version.
4584
4585 2004-02-02  Sebastien Pouliot  <sebastien@ximian.ca>
4586
4587         * DateTime.cs: Corrected support for "Z" in the mask (Parse). This
4588         fix bug #53461.
4589
4590 2004-01-27  Sebastien Pouliot  <spouliot@videotron.ca>
4591
4592         * Exception.cs: Changed ToString to remove the \n when no stack trace
4593         is present (which fixed a unit test for SecurityException). Changed
4594         all \n to Environment.NewLine.
4595
4596 2004-01-27  Lluis Sanchez Gual <lluis@ximian.com>
4597
4598         * ContextBoundObject.cs: Removed TODO.
4599
4600 2004-01-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4601
4602         * TimeSpan.cs: fixed bug #52075. Days (int) don't rely on TotalDays
4603         (double), which might round up.
4604
4605 2004-01-19  Jackson Harper <jackson@ximian.com>
4606
4607         * FloatingPointFormatter.cs: Use the default decimal digits count
4608         if they are not specified. This fixes bug #52927.
4609         
4610 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
4611
4612         * Environment.cs: Bump version number.
4613
4614 2004-01-19  Lluis Sanchez Gual  <lluis@ximian.com>
4615
4616         * Type.cs: Added internal call for IsInstanceOfType. The old implementation
4617         uses IsAssignableFrom(o.GetType()), which is not always valid for 
4618         transparent proxies (because GetType will not return the type of the remote
4619         object if its assembly is not present).
4620
4621 2004-01-18  David Sheldon <dave-mono@earth.li>
4622
4623   * FloatingPointFormatter.cs: Skip the decimal point if we have an 
4624     integer mantassa. So: 1E+15, rather than 1.E+15.
4625
4626 2004-01-18  David Sheldon <dave-mono@earth.li>
4627
4628         * Array.cs (GetValue/SetValue): Throw NullRef exception like .NET 1.1, 
4629         even though docs say it should be an ArgumentNull. Two test cases now
4630   pass. See also nickd's commit of 2003-12-24.
4631
4632 2004-01-16  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4633
4634         * Environment.cs: increased corlib version.
4635
4636 2004-01-14  Lluis Sanchez Gual <lluis@ximian.com>
4637
4638         * MonoCustomAttrs.cs: Removed attribute cache. Attribute instances can't
4639         be reused because they could be modified. This fixes bug #52655.
4640
4641 2004-01-12  Patrik Torstensson
4642
4643         * Environment.cs: Bump corlib version number due to new StringBuilder
4644         
4645         * String.cs: New internal method to support the new StringBuilder that
4646         uses the string as a buffer (until ToString is called)
4647
4648 2004-01-12  Zoltan Varga  <vargaz@freemail.hu>
4649
4650         * Environment.cs: Bump corlib version number for real this time.
4651         
4652         * AppDomain.cs (LoadAssembly): Pass the assembly name as a string to
4653         the runtime, so it can take into account the Culture etc.
4654
4655         * Environment.cs: Bump corlib version number.
4656         
4657 2004-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4658
4659         * MonoType.cs: GetMethods renamed to GetMethodsByName. It takes a
4660         new parameter with the method name and a boolean for ignoring case.
4661         Removed some string comparisons no longer needed.
4662
4663 2004-01-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4664
4665         * MonoType.cs: GetProperties renamed to GetPropetiesByName. It takes a
4666         new parameter with the property name and a boolean for ignoring case.
4667         Fixes bug #52753.
4668
4669 2004-01-11  David Sheldon <dave-mono@earth.li>
4670
4671         * DateTime.cs: Correct processing of formats with multiple '-'s, fixing
4672         bug 52274.
4673
4674 2004-01-10  Zoltan Varga  <vargaz@freemail.hu>
4675
4676         * AppDomain.cs: Keep track of type resolve and assembly resolve 
4677         events in progress to prevent infinite recursion.
4678
4679 2004-01-06  Miguel de Icaza  <miguel@ximian.com>
4680
4681         * Console.cs: Test for UTF-8 being present anywhere on the
4682         string, also do ToUpper instead of ToLower, which will work even
4683         around the ICU bug with different locales (#52065), and addresses #52101
4684
4685 2004-01-05  Zoltan Varga  <vargaz@freemail.hu>
4686
4687         * Environment.cs: Bump version.
4688
4689 2003-12-24 Ben Maurer  <bmaurer@users.sourceforge.net>
4690
4691         * Type.cs (IsNotPublic): One would normally assume that
4692         IsNotPublic == !IsPublic, but this is not the case (note to MS,
4693         make better names ;-). Fixes #52547, `Type.IsNotPublic not 
4694         correct for Nested types'
4695
4696 2003-12-24  Nick Drochak  <ndrochak@ieee.org>
4697
4698         * Array.cs (CreateInstance): Throw NullRef exception like .NET 1.1, 
4699         even though docs say it should be an ArgumentNull. Sent email to MS
4700         about this "bug".
4701
4702 2003-12-23  Lluis Sanchez Gual  <lluis@ximian.com>
4703
4704         * Exception.cs: Several changes to make it compatible with MS.NET (needed
4705         for remoting interoperability): set a default value for hresult, added 
4706         initialization of class_name, serialization field RemoteStackTrace must
4707         be RemoteStackTraceString, added ser. field ExceptionMethod.
4708
4709         * IndexOutOfRangeException.cs: Added serialization constructor.
4710
4711 2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>
4712
4713         * Int32 (Parse):
4714           Int64 (Parse): Fix overflow checking for AllowHexSpecifier
4715
4716 2003-12-20  Zoltan Varga  <vargaz@freemail.hu>
4717
4718         * MonoType.cs (GetMethodImpl): Only call FindMostDerivedMatch if the
4719         user supplied no parameter info, but not when the user supplied an
4720         empty parameter list. This fixes IKVM.
4721
4722         * Environment.cs: Bump corlib version.
4723
4724 2003-12-19  Dick Porter  <dick@ximian.com>
4725
4726         * String.cs: Added Compare shortcut for length==0.
4727
4728 2003-12-17  Zoltan Varga  <vargaz@freemail.hu>
4729
4730         * Environment.cs: Bump corlib version.
4731
4732 2003-12-17  Dick Porter  <dick@ximian.com>
4733
4734         * String.cs: Fix StartsWith and EndsWith when the argument is the
4735         empty string.  Fixes bug 52283.
4736
4737 2003-12-16  Zoltan Varga  <vargaz@freemail.hu>
4738
4739         * Environment.cs (HasShutdownStarted): Implement.
4740
4741 2003-12-15  Zoltan Varga  <vargaz@freemail.hu>
4742
4743         * Environment.cs (HasShutdownStarted): Make this static under NET 1.1.
4744         
4745         * Environment.cs: Bump version number.
4746
4747 2003-12-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4748
4749         * DateTime.cs: don't bail out with that year out of range error on
4750         stuff like "MM/dd/yyyy HH:MM:ss".
4751
4752 2003-12-13  Zoltan Varga  <vargaz@freemail.hu>
4753
4754         * Environment.cs: Make it a const instead.
4755         
4756         * Environment.cs: Make version field static.
4757
4758 2003-12-10  Zoltan Varga  <vargaz@freemail.hu>
4759
4760         * Type.cs: Make DefaultBindingFlags protected.
4761
4762         * Environment.cs: Applied patch from Todd Berman (tbermann@gentoo.org).
4763         Add new GacPath property + its associated icall.
4764
4765 2003-12-09 Anirban Bhattacharjee <banirban@novell.com>
4766
4767         * DateTime.cs : Bugs fixed (41845, 51422)
4768         * MonoType.cs : Exception message changed 
4769
4770 2003-12-08  Martin Baulig  <martin@ximian.com>
4771
4772         * Type.cs (MakeByRefType): New public method.
4773
4774 2003-12-08  Zoltan Varga  <vargaz@freemail.hu>
4775
4776         * Environment.cs: Add a version number for the corlib-runtime interface
4777         to make it easier to diagnose problems resulting from a mismatch 
4778         between the two.
4779
4780 2003-12-08  Patrik Torstensson   <p@rxc.se>
4781
4782         * Type.cs (GetMethod): Check type arguments within array
4783         * MonoType.cs (GetMethodImpl): Handle methods with a new slot
4784         (same signature but different classes (derived level)
4785
4786 2003-12-07  Zoltan Varga  <vargaz@freemail.hu>
4787
4788         * Type.cs (MakeArrayType): Add argument checking.
4789
4790 2003-12-06  Dick Porter  <dick@ximian.com>
4791
4792         * String.cs: Don't use CompareInfo for non-culture-sensitive
4793         IndexOf and LastIndexOf methods.
4794
4795 2003-12-06  Ravindra  <rkumar@novell.com>
4796
4797         * DateTime.cs: Made Parse(string, IFormatProvider) method to
4798         use second argument. Fixed bug #51464.
4799
4800 2003-12-04  Martin Baulig  <martin@ximian.com>
4801
4802         * Type.cs (Type.MakeArrayType): New public method.
4803
4804 2003-12-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4805
4806         * Buffer.cs:
4807         (BlockCopy): make the exception thrown helpful.
4808
4809 2003-12-03  Dick Porter  <dick@ximian.com>
4810
4811         * String.cs: Calling Replace on an empty string returns itself.
4812
4813 2003-12-03  Zoltan Varga  <vargaz@freemail.hu>
4814
4815         * MonoType.cs: Get rid of get_type_info, use a separate icall for
4816         each property instead.
4817
4818 2003-12-02  Dick Porter  <dick@ximian.com>
4819
4820         * Decimal.cs: Fix NumberFormatInfo lookup.  Patch by
4821         Mohammad DAMT (mdamt@cdl2000.com), fixes bug 51443.
4822
4823 2003-12-01  Dick Porter  <dick@ximian.com>
4824
4825         * String.cs: Make Compare, IndexOf, LastIndexOf, StartsWith,
4826         Replace, ToLower, ToUpper and Equals use the correct CultureInfo.
4827
4828 2003-11-28  Dick Porter  <dick@ximian.com>
4829
4830         * Type.cs: 
4831         * MonoType.cs: 
4832         * Enum.cs: 
4833         * Boolean.cs: Do string compares with the Invariant culture.
4834
4835 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
4836
4837         * Array.cs: make the enumerator ICloneable
4838
4839 2003-11-27 Ben Maurer  <bmaurer@users.sourceforge.net>
4840
4841         * Decimal.cs (ToXXX): Call Convert.ToXXX.
4842
4843 2003-11-26  Zoltan Varga  <vargaz@freemail.hu>
4844
4845         * AppDomain.cs: Applied patch from ztashev@openlinksw.co.uk (Zdravko Tashev). 
4846         Implement Load(byte[]) methods.
4847
4848         * BadImageFormatException.cs: Fix ToString.
4849
4850 2003-11-24  Zoltan Varga  <vargaz@freemail.hu>
4851
4852         * MonoType.cs: Make Standard|HasThis match Standard in GetMethod and
4853         GetConstructor, as done by MS.
4854
4855 2003-11-19  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4856
4857         * FloatingPointFormatter.cs: Removed some unused variables to prevent csc compiler warnings
4858
4859 2003-11-18  Lluis Sanchez Gual  <lluis@ximian.com>
4860
4861         * TypeInitializationException.cs: Added missing serialization constructor.
4862
4863 2003-11-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4864
4865         * AppDomainSetup.cs: Don't add an extra '/' at the end of 
4866         ApplicationBase. The tests pass now with mono.
4867
4868 2003-11-18  Zoltan Varga  <vargaz@freemail.hu>
4869
4870         * ValueType.cs: New optimized implementation for Equals and GetHashCode.
4871
4872 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4873
4874         * Environment.cs: use Directory in CurrentDirectory property.
4875         We were not throwing any exception when setting the directory to an
4876         invalid path.
4877
4878 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4879
4880         * Array.cs:
4881         * Delegate.cs: implemented 1.1 stuff.
4882
4883         * Enum.cs:
4884         * IntPtr.cs: removed extra attribute.
4885         * PlatformID.cs: added WinCE.
4886
4887 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4888
4889         * ValueType.cs:
4890         (Equals): compare the fields of structs too.
4891         (GetHashCode): combine the hash code of all the fields.
4892         Fixes bug #50901 (will remove the icall in a couple of days).
4893
4894 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4895
4896         * Array.cs: fixed Clear for non-zero bounded arrays. Fixes bug #50968.
4897
4898 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
4899
4900         * DateTime.cs: handle century when we try to parse 4-digit years and
4901         only 2 digits are present. Fixes bug #49394.
4902
4903 2003-11-13  Miguel de Icaza  <miguel@ximian.com>
4904
4905         * Console.cs: On utf-8 consoles, use unmarked output.
4906
4907 2003-11-13  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
4908
4909         * IAppDomainSetup.cs:
4910         * _AppDomain.cs: 
4911         * Object.cs:
4912         * Type.cs: Added missing attribute
4913
4914 2003-11-12 Lluis Sanchez Gual <lluis@ximian.com>
4915
4916         * Environment.cs: Added internal method for getting the path to 
4917         machine.config.
4918         
4919 2003-11-12 Jackson Harper <jackson@ximian.com>
4920
4921         * Environment.cs: Add MyMusic and MyPictures to the SpecialFolder
4922         enum. This fixes the SWF build.
4923         
4924 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
4925
4926         * PlatformID.cs: Remove Unix platform, we cant expose constants
4927         that are not in the framework.
4928
4929         * OperatingSystem.cs: Adjust for the breakage.
4930
4931         * RuntimeMethodHandle.cs: Fix signature.
4932
4933         * Double.cs: Fix signature of TryParse.
4934
4935         * String.cs (Concat (object, object, object, object)): Add missing method.
4936
4937         * OperatingSystem.cs: Removed Equals, GetHashCode, they were not
4938         in the .NET Framework.
4939
4940         * Enum.cs: Hide constructor.  
4941
4942         Fix ToUint16 to be explicitly implemented.
4943
4944         * Console.cs: Add couple of extra missing methods (Write and
4945         WriteLine overloaded)
4946
4947 2003-11-11  Miguel de Icaza  <miguel@ximian.com>
4948
4949         * AppDomain.cs, Activator.cs: New unimplmented entry points from
4950         1.1 (Com activation related).
4951         
4952         * Exception.cs: Formatting.
4953         
4954         * IServiceProvider.cs: Add ComVisible (true).
4955
4956         * AppDomainSetup.cs: Add a couple more properties from .NET 1.1 
4957
4958 2003-11-03  Lluis Sanchez Gual <lluis@ximian.com>
4959
4960         * AppDomain.cs: Added some null checks in Load methods. This fixes bug
4961           #50356.
4962
4963 2003-11-01  Zoltan Varga  <vargaz@freemail.hu>
4964
4965         * AppDomain.cs: Make the SetDomain icalls private + call InternalInvoke
4966         on MonoMethod instead of Invoke.
4967
4968 2003-11-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
4969
4970         * DateTime.cs: Fixed Add* methods handling. Now it works properly
4971         with extreme values (there is a bug with Overflow and Underflow in
4972         long type).
4973
4974 2003-10-31  Pedro Martínez Juliá  <yoros@wanadoo.es>
4975
4976         * DateTime.cs: Fixed a few format bugs.
4977
4978 2003-10-31  Zoltan Varga  <vargaz@freemail.hu>
4979
4980         * AppDomain.cs (InternalPushDomainRef): New icalls.
4981
4982         * AppDomain.cs (InvokeInDomain): New method to execute code in a 
4983         different appdomain.
4984
4985 2003-10-27  Zoltan Varga  <vargaz@freemail.hu>
4986
4987         * AppDomain.cs: Fix prototype of InternalIsFinalizingForUnload.
4988
4989 2003-10-25  Zoltan Varga  <vargaz@freemail.hu>
4990
4991         * AppDomain.cs (IsFinalizingForUnload): Implement.
4992
4993         * AppDomain.cs (Unload): Move the notification of OnUnload listeners
4994         to unmanaged code.
4995
4996 2003-10-25  Martin Baulig  <martin@ximian.com>
4997
4998         * MonoType.cs: Don't make this sealed.
4999
5000 2003-10-24  Zoltan Varga  <vargaz@freemail.hu>
5001
5002         * AppDomain.cs: Add InternalInvokeInDomain[ByID] icalls.
5003
5004 2003-10-24  Pedro Martínez Juliá  <yoros@wanadoo.es>
5005
5006         * DateTime.cs: When handling '-' as a date separator, MS.NET uses
5007         the same symbol in the parse (not DateTimeFormatInfo.DateSeparator).
5008
5009 2003-10-22  Dick Porter  <dick@ximian.com>
5010
5011         * DateTime.cs: Handle '-' as a date separator when parsing formats.
5012
5013 2003-10-20  Duncan Mak  <duncan@ximian.com>
5014
5015         * Delegate.cs (CreateDelegate): Avoid creating an extra Type array
5016         and merge the two iterations into one.
5017
5018 2003-10-15  Zoltan Varga  <vargaz@freemail.hu>
5019
5020         * TypedReference.cs: Add new field used by the runtime.
5021
5022 2003-10-15  Martin Baulig  <martin@ximian.com>
5023
5024         * Type.cs (Type.DeclaringMethod): For a generic method's type
5025         parameter, return this method - otherwise, return null.
5026
5027 2003-10-14  Martin Baulig  <martin@ximian.com>
5028
5029         The generics API has changed in the spec since it was added here;
5030         these modifications make it match the spec again.
5031
5032         * Type.cs
5033         (GetGenericParameters): Renamed to `GetGenericArguments'.
5034         (HasGenericParameters): Renamed to `HasGenericArguments'.
5035         (HasUnboundGenericParameters): Renamed to `ContainsGenericParameters'.
5036         (IsGenericTypeDefinition): New property.
5037         (IsUnboundGenericParameter): Renamed to `IsGenericParameter'.
5038
5039         * MonoType.cs (ContainsGenericParameters): Implement this here;
5040         this is no interncall anymore.
5041
5042 2003-10-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5043
5044         * Delegate.cs: add the method name to the exception when it cannot be
5045         bound.
5046         * Exception.cs: fix nullref in Source.
5047
5048 2003-10-10  Zoltan Varga  <vargaz@freemail.hu>
5049
5050         * Array.cs: Add argument checking to GetValue and SetValue.
5051
5052 2003-10-09  Miguel de Icaza  <miguel@ximian.com>
5053
5054         * DateTime.cs: Patch from Chris Turchin: the DateTime.MaxValue
5055         should not be TimeSpan.MaxValue, because it overflow.  Set this to
5056         be MAX_VALUE_TICKS
5057
5058 2003-10-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5059
5060         * MonoCustomAttrs.cs: from_cache is now thread-safe. Yeah, I got a
5061         duplicate entry exception.
5062
5063 2003-10-08 Ben Maurer  <bmaurer@users.sourceforge.net>
5064
5065         * DateTime.cs (ToString): Total rewrite, fixes #49358.
5066
5067 2003-10-03  Zoltan Varga  <vargaz@freemail.hu>
5068
5069         * AppDomain.cs: Change accessibility of DoTypeResolve to fix build.
5070
5071 2003-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5072
5073         * Enum.cs:
5074         (Equals): check that the object is an Enum before comparing the types.
5075
5076 2003-09-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5077
5078         * Array.cs: reduced xsp allocated memory by 1/2.
5079
5080 2003-09-25  Martin Baulig  <martin@ximian.com>
5081
5082         * Type.cs (Type.IsGenericTypeDefinition): Removed this method
5083         since it was identical to GetGenericTypeDefinition().
5084         (Type.IsGenericInstance): New property.
5085
5086 2003-09-24  Duncan Mak  <duncan@ximian.com>
5087
5088         * Math.cs (Abs): Fix double Locale.GetText bug reported by
5089         davejp@volny.cz. This fixes #48788.
5090
5091 2003-09-14  Pedro Martínez Juliá  <yoros@wanadoo.es>
5092
5093         * FloatingPointFormatter.cs: Add the necessary castings to char
5094         conversions.
5095
5096 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
5097
5098         * FloatingPointFormatter.cs: Make the method calls more functional
5099         for protecting the values from different threads (make it more
5100         thread safe).
5101
5102 2003-09-13  Pedro Martínez Juliá  <yoros@wanadoo.es>
5103
5104         * FloatingPointFormatter.cs: Fix a bug with the negative value of
5105         count parameter.
5106
5107 2003-09-12  Pedro Martínez Juliá  <yoros@wanadoo.es>
5108
5109         * FloatingPointFormatter.cs: Applied a lot of improvements in string
5110         construction, make use of Append/Insert with the "count" parameter.
5111     Thanks to Ben Maurer.
5112
5113 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
5114
5115         * FloatingPointFormatter.cs: Fix a bug with Custm Format.
5116
5117         * FloatingPointFormatter.cs: Fix a little bug I've introduced the
5118         last change.
5119
5120 2003-09-10  Pedro Martínez Juliá  <yoros@wanadoo.es>
5121
5122         * DoubleFormatter.cs: A few optimizations. Now, only one object
5123         is created to convert all double numbers.
5124
5125         * SingleFormatter.cs: A few optimizations. Now, only one object
5126         is created to convert all float numbers.
5127
5128         * FloatingPointFormatter.cs: Split the "number type parameters" from
5129         the "numver value and format parameters". The first ones are in the
5130         constructor and the others are in a method.
5131
5132 2003-09-09  Zoltan Varga  <vargaz@freemail.hu>
5133
5134         * Array.cs: Added argument checking to some NET_1_1 methods.
5135
5136 2003-09-04  Martin Baulig  <martin@ximian.com>
5137
5138         * Type.cs (GetGenericTypeDefinition): Make this method virtual.
5139
5140 2003-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5141
5142         * Array.cs: added the new overloaded CreateInstance, GetValue, SetValue
5143         taking 'longs'. All tests pass.
5144
5145 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
5146
5147         * Exception.cs: Add ClassInterface attr. Implement TargetSite and
5148         Source. Remove MonoTODO attributes (class is 100% done). Also
5149         passes all Rotor tests for Exception!
5150
5151 2003-08-26 Ben Maurer  <bmaurer@users.sourceforge.net>
5152
5153         * Enum.cs: Remove [MonoTODO]'s that had been completed.
5154
5155 2003-08-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5156
5157         * String.cs: fixed bug #47802.
5158
5159 2003-08-21 Ben Maurer  <bmaurer@users.sourceforge.net>
5160
5161         * String.cs: Created method FormatHelper that does formatting,
5162         using a StringBuilder.
5163
5164 2003-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5165
5166         * Array.cs: patch by lb@lb.ods.org that fixes bug #47707.
5167
5168 2003-08-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5169
5170         * Delegate.cs: CreteDelegate (Type, MethodInfo) only supports static
5171         methods under MS.
5172
5173 2003-08-11  Duncan Mak  <duncan@ximian.com>
5174
5175         * Environment.cs (Version): Return the same numbers as the MS
5176         implementation.
5177
5178 2003-08-10  Miguel de Icaza  <miguel@ximian.com>
5179
5180         * Array.cs: Applied patch from Thong (Tum) Nguyen;  Removed
5181         replicated tests, and have a routine that does the heavy lifting.
5182
5183 2003-08-08  Lluis Sanchez Gual <lluis@ximian.com>
5184
5185         * DateTime.cs: Fixed DoParse. It was calling the wrong constructor
5186           of DateTime.
5187         * Environment.cs: return $HOME for ApplicationData folder.
5188
5189 2003-08-04  Duncan Mak  <duncan@ximian.com>
5190
5191         * FloatingPointFormatter.cs (Normalize): Apply a patch from Aleksey
5192         Demakov <avd@openlinksw.com> to fix formatting for Big power of 10
5193         floating point values. This fixes bug #46175.
5194
5195         * Convert.cs (ToUInt16): Throw an OverflowException correctly, as
5196         noted by c5n4kh6u02@sneakemail.com in
5197         http://bugzilla.ximian.com/show_bug.cgi?id=43098.
5198
5199 Sat Aug  2 13:01:46 BST 2003 Malte Hildingson <malte@amy.udd.htu.se>
5200
5201         * Double.cs: added icall Double.AssertEndianity.
5202
5203 Fri Aug 1 16:47:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
5204
5205         * Type.cs, MonoType.cs: implemented generic-specific methods.
5206
5207 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
5208
5209         * Buffer.cs: Add new internal MemCopy call.
5210
5211         Removed the above.
5212
5213 Tue Jul 29 12:13:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
5214
5215         * Type.cs, MonoType.cs, ArgIterator.cs: pass the handles values
5216         to icalls, to avoid special cases in some call conventions.
5217
5218 2003-07-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5219
5220         * Enum.cs: added Serializable attribute.
5221
5222 2003-07-25  Duncan Mak  <duncan@ximian.com>
5223
5224         * AppDomain.cs (Equals):
5225         (GetHashCode): Removed because they do not need to be defined
5226         here.
5227
5228 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5229
5230         * TypeLoadException.cs: removed unused fields. TypeName returns "" if
5231         cannot even get the type.
5232
5233 2003-07-24  Miguel de Icaza  <miguel@ximian.com>
5234
5235         * Type.cs: Added generics stubs.
5236
5237 2003-07-23  Duncan Mak  <duncan@ximian.com>
5238
5239         * Environment.cs (SpecialFolder): Added 'Desktop' and 'MyComputer'
5240         as values for NET_1_1.
5241         (GetFolderPath): Return the empty string ("") for values of
5242         SpecialFolder that have no corresponding equivalents in
5243         Linux. Return "$HOME/Desktop" for SpecialFolder.DesktopDirectory
5244         and "$HOME" for SpecialFolder.Personal.
5245
5246         * IntPtr.cs (GetObjectData): Mark it as an interface
5247         implementation, instead of a public method.
5248
5249         * Guid.cs (NewGuid): Remove MonoTODOAttribute.
5250
5251         * TypeLoadException.cs (GetObjectData):
5252         Create stubs for the fields that are being serialized.
5253
5254         * UIntPtr.cs: Removed erroneous CLSCompliantAttributes.
5255
5256 2003-07-23  Lluis Sanchez Gual <lluis@ximian.com>
5257         
5258         * Enum.cs: Fixed enum formatting. For flag enums, if one of
5259           the flags is unnamed, ToString() returns the integer value.
5260
5261 2003-07-22  Jerome Laban <jlaban@wanadoo.fr>
5262
5263         * Guid.cs: Fixed ToString (), was producing incorrect string.
5264
5265 2003-07-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5266
5267         * AppDomainSetup.cs: fixed bug #46609.
5268
5269 Thu Jul 17 17:28:27 CEST 2003 Paolo Molaro <lupus@ximian.com>
5270
5271         * MonoType.cs: use an icall for IsPrimitiveImpl ().
5272
5273 Thu Jul 17 15:23:17 CEST 2003 Paolo Molaro <lupus@ximian.com>
5274
5275         * Guid.cs: faster ToString ().
5276
5277 2003-07-15  Pedro Martínez Juliá  <yoros@wanadoo.es>
5278
5279         * FloatingPointFormatter.cs: Few changes for get working Rotor
5280         tests.
5281
5282 2003-07-13  Zoltan Varga  <vargaz@freemail.hu>
5283
5284         * Type.cs (IsAssignableFrom): Implement this as an icall since the
5285         runtime already includes the neccessary logic.
5286
5287 2003-07-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5288
5289         * AppDomainSetup.cs: remove the "file://" prefix from ApplicationBase
5290         if it's present and get the full path for non-Uri paths.
5291
5292 2003-07-2  Lluis Sanchez Gual <lluis@ximian.com>
5293
5294         * DateTime.cs: Fixed formatting of fractions of second.
5295
5296 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
5297
5298         * Console.cs: Turn off buffering for the streams returned by
5299         OpenStandardOutput () and OpenStandardError () if the buffer size is 0.
5300
5301 2003-06-28  Lluis Sanchez Gual <lluis@ximian.com>
5302
5303         * Random.cs: Changed behavior of Random to match MS.NET. When Next is
5304           called with maxvalue==0 or minvalue==maxvalue, MS.NET internally generates
5305           a new random number (although it is not needed), while mono did not. 
5306           As a result, the sequence of random numbers could be different for the
5307           same seed.
5308
5309 Thu Jun 26 16:06:35 CEST 2003 Paolo Molaro <lupus@ximian.com>
5310
5311         * FloatingPointFormatter.cs: use dec_len2 as default precision.
5312
5313 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
5314
5315         * DateTime.cs: Modified constructor. Check for valid value of TimeSpan must
5316           be done after the correspondig UTC offset has been applied.
5317
5318 2003-06-26  Lluis Sanchez Gual <lluis@ximian.com>
5319
5320         * Object.cs: Object must have the Serializable attribute.
5321         * DateTime.cs: Fixed _DoParse() so it correctly applies the utc offset
5322           to the resulting date. Also fixed _ToString so now correctly formates the
5323           UTC offset.
5324
5325 Wed Jun 18 19:22:22 CEST 2003 Paolo Molaro <lupus@ximian.com>
5326
5327         * Enum.cs: fix race in cache (bug#41841).
5328
5329 Wed Jun 18 18:52:11 CEST 2003 Paolo Molaro <lupus@ximian.com>
5330
5331         * FloatingPointFormatter.cs: if the precision is not specified, use
5332         the default precision for the data type.
5333
5334 Wed Jun 18 18:11:30 CEST 2003 Paolo Molaro <lupus@ximian.com>
5335
5336         * Array.cs: throw ArgumentOutOfRangeException in Copy if needed
5337         (patch by tum@veridicus.com (Thong (Tum) Nguyen)).
5338
5339 2003-06-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5340
5341         * MonoType.cs: don't throw nullref when the return type for a property
5342         is specified and the property doesn't have a get accessor.
5343
5344 2003-06-10  Duncan Mak  <duncan@ximian.com>
5345
5346         * Array.cs (CreateInstance): Fixed a typo. It should throw
5347         ArgumentNullException instead of ArgumentException.
5348
5349 2003-06-09  Duncan Mak  <duncan@ximian.com>
5350
5351         * Array.cs: Revert the last revert. I fixed it.
5352         (Sort): Put a try-catch block around qsort, and wrap whatever
5353         Exception we get into a InvalidOperationException.
5354
5355 2003-06-08 Jackson Harper <jackson@latitudegeo.com>
5356
5357         * Array.cs: Revert last patch, it broke some other functionality.
5358                 
5359 2003-06-08  Duncan Mak  <duncan@ximian.com>
5360
5361         * Array.cs: Throw more exceptions. This fixes the errors we see
5362         from the Rotor testsuite.
5363
5364         (CreateInstance): Throw ArgumentNullException when the input are
5365         null. Throw ArgumentOutOfRangeException when bounds + length is
5366         greater than Int32.MaxValue.
5367         (LastIndexOf): Throw ArgumentOutOfRangeException if index is outside
5368         the valid range of indices of array.
5369         (Sort): Throw InvalidOperationException when comparer is null and
5370         none of the elements in keys implements IComparable.
5371
5372 2003-06-08  Duncan Mak  <duncan@ximian.com>
5373
5374         * Array.cs (CreateInstance): Throw a TypeLoadException if the
5375         Length of the input array 'lengths' is greater than 255 so that we
5376         won't see the g_assert that is in mono_array_class_get in class.c.
5377
5378         This fixes bug #44304.
5379
5380 2003-06-05  Nick Drochak  <ndrochak@gol.com>
5381
5382         * UnitySerializataionHolder.cs: Cleanups according to class status page
5383
5384 Wed Jun 4 16:59:39 CEST 2003 Paolo Molaro <lupus@ximian.com>
5385
5386         * ArgIterator.cs, TypedReference.cs, RuntimeArgumentHandle.cs,
5387         RuntimeTypeHandle.cs: implemented the needed stuff to handle
5388         vararg calls.
5389
5390 2003-06-02  Sebastien Pouliot  <spouliot@videotron.ca>
5391
5392         * Random.cs: New implementation based on Knuth ran3 to fix #43597.
5393         See http://www.library.cornell.edu/nr/bookcpdf/c7-1.pdf. Commited
5394         for Ben Maurer after review and testing.
5395
5396 2003-05-28  Ben Maurer <bmaurer@users.sourceforge.net>
5397         
5398         * Array.cs: Added better argument checking to Array.Sort ()
5399         * DBNull.cs: Made the conversions throw like they do in MS.
5400
5401 2003-05-24  Philip Van Hoof  <me@freax.org>
5402
5403         * Math.cs: Add the MS.NET 1.1 methods (BigMul, DivRem, DivRem).
5404
5405 2003-05-21  Pedro Martínez Juliá  <yoros@wanadoo.es>
5406
5407         * FloatingPointFormatter.cs: Take care with the explicit precision
5408         and round the number to that precision.
5409
5410         * DoubleFormatter.cs: Adapt to the two level precision (15 - 17).
5411
5412         * SingleFormatter.cs: Adapt to the two level precision (7 - 8).
5413
5414 2003-05-20  Philip Van Hoof <me@freax.org>
5415
5416         * DateTime.cs (FromOADate, GetDateTimeFormats, ToOADate):
5417         Implemented.
5418
5419 2003-05-20  Zoltan Varga  <vargaz@freemail.hu>
5420
5421         * AppDomainSetup.cs: Added new field which is used to notify the
5422         runtime that the search path has changed.
5423
5424 2003-05-18  Pedro Martínez Juliá  <yoros@wanadoo.es>
5425
5426         * FloatingPointFormatter.cs: Fixed NullReferenceException bug I've
5427         introduced the last change I've done.
5428
5429 2003-05-17  Ben Maurer  <bmaurer@users.sourceforge.net>
5430
5431         * Array.cs: Fixed SyncRoot to behave like MS (return this). Removed 
5432         MonoTODO from SyncRoot (because fixed) and IsSynchronized (it was
5433         behaving correctly).
5434         
5435 2003-05-17  Pedro Martínez Juliá  <yoros@wanadoo.es>
5436
5437         * FloatingPointFormatter.cs: Fixed little format mismatches.
5438
5439 2003-05-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
5440
5441         * FloatingPointFormatter.cs: Fixed "-0" result emited.
5442
5443 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5444
5445         * AppDomain.cs: Added null argument check in Load().
5446         * Activator.cs: fixed bug #39926.
5447
5448 2003-05-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5449
5450         * Enum.cs: fixed bugs #41522 and #42879.
5451
5452 2003-05-12  Zoltan Varga  <vargaz@freemail.hu>
5453
5454         * String.cs: Tweak IndexOf and LastIndexOf to match specification and
5455         undocumented MS behaviour.
5456
5457 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5458
5459         * Activator.cs: applied patch for bug #39926. Thanks to Jean Marc and
5460         Jaime.
5461
5462 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5463
5464         * String.cs: fixed bug #41411 and another similar problem in
5465         LastIndexOf (string).
5466
5467 2003-05-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5468
5469         * String.cs: patch by Jean Marc <jean-marc.andre@polymtl.ca> that fixes
5470         bug #42695.
5471
5472 2003-05-09  Zoltan Varga  <vargaz@freemail.hu>
5473
5474         * MulticastDelegate.cs (GetInvocationList): Avoid ArrayList 
5475         construction if the delegate list only has one element.
5476
5477 2003-05-01  Pedro Martínez Juliá  <yoros@wanadoo.es>
5478
5479         * Environment.cs: Changed the method GetFolderPath because it must
5480         return at least a directory name (not null).
5481
5482         * Convert.cs: In ToType, if the destination type is unknown, try to
5483         cast the value to object (then, the calling method will downcast it
5484         to the type it wants).
5485
5486 2003-04-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5487
5488         * Enum.cs: fixed bug #41522.
5489
5490 Tue Apr 29 13:58:16 CEST 2003 Paolo Molaro <lupus@ximian.com>
5491
5492         * Enum.cs: protect with the lock also the lookup (bug #41841).
5493
5494 Tue Apr 29 13:24:32 CEST 2003 Paolo Molaro <lupus@ximian.com>
5495
5496         * MonoType.cs: allow a null name if InvokeMember is called with
5497         BindingFlags.CreateInstance set.
5498
5499 2003-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5500
5501         * Enum.cs: reverted my previous patch.
5502
5503 2003-04-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5504
5505         * Enum.cs: fixed bug #41841.
5506
5507 2003-04-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5508
5509         * MonoType.cs:
5510         (GetPropertyImpl): handle BindingFlags.IgnoreCase.
5511
5512 2003-04-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
5513
5514         * FloatingPointFormatter.cs: Little fixes for get the same results
5515         as MS.NET and show a message when something goes wrong with the
5516         parser of Custom Formats.
5517
5518 2003-04-22  Nick Drochak  <ndrochak@gol.com>
5519
5520         * Double.cs (ToString):
5521         * Single.cs (ToString): Handle case where param is a CultureInfo.
5522
5523 2003-04-18  Zoltan Varga  <vargaz@freemail.hu>
5524
5525         * Object.cs ValueType.cs: Make the Object::GetHashCode() and 
5526         ValueType::Equals() icalls static non-virtual, so they can be called
5527         by the code in RuntimeHelpers.
5528
5529 2003-04-18  Miguel de Icaza  <miguel@ximian.com>
5530
5531         * Delegate.cs (operator ==): Do not crash if the second argument
5532         is null.  Bug fix submitted by Juan Cri.
5533
5534 2003-04-18  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
5535
5536         * Array.cs: Deleted the exception in Array.Initialize(), it looks
5537         like the method do nothing for C#, is still a MonoTODO until
5538         we find a compiler that uses that.
5539
5540 2003-04-14  Miguel de Icaza  <miguel@ximian.com>
5541
5542         * Delegate.cs (Delegate): Seems like a typo, we were checking the
5543         a field rather than the argument 
5544
5545         * MonoType.cs: Make GetNestedType an external method implementation.
5546
5547 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5548
5549         * Enum.cs: fixed bug #41294.
5550
5551 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5552
5553         * DateTime.cs: fixes bug #40910, part 2.
5554
5555 2003-04-11  Dietmar Maurer  <dietmar@ximian.com>
5556
5557         * String.cs (Equals): avoid the internal call, code cleanups
5558
5559 2003-04-11  Alan Tam <Tam@SiuLung.com>
5560
5561         * Convert.cs: fixed bug #41085.
5562
5563 2003-04-10  Lluis Sanchez Gual <lluis@ideary.com>
5564
5565         * AppDomain.cs: Added internal method for getting process guid.
5566
5567 2003-04-09  Ville Palo <vi64pa@kolumbus.fi>
5568
5569         * Array.cs: Little fix to compare () method.
5570         
5571 2003-04-09  Zoltan Varga  <vargaz@freemail.hu>
5572
5573         * String.cs (Equals): Add trivial optimization.
5574
5575 2003-04-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5576
5577         * DateTime.cs: fixed bug #40910.
5578
5579 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
5580
5581         * Console.cs: Make stderr, stdout and stdin use synchronized
5582         versions of the their readers/writers.
5583
5584 2003-04-04  Dick Porter  <dick@ximian.com>
5585
5586         * Version.cs: Make operator== and operator!= cope with null
5587         objects.  Didn't change operator<, operator<=, operator> or
5588         operator>= because its not meaningful to use those to compare
5589         against null, and throwing a NullReferenceException is probably
5590         the best thing to do there anyway.
5591
5592         Fixes bug 40720.
5593
5594 2003-04-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5595
5596         * AppDomain.cs: fixed InvalidCastException.
5597
5598 2003-03-30  Zoltan Varga  <vargaz@freemail.hu>
5599
5600         * Array.cs (Copy): Call FastCopy() earlier to avoid the expensive
5601         type checks and let it decide whenever a fast copy is possible.
5602
5603 2003-03-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5604
5605         * MonoType.cs:
5606         (GetMethodImpl): support BindingFlags.IgnoreCase flag. Fixes bug #40322.
5607
5608 2003-03-25  Zoltan Varga  <vargaz@freemail.hu>
5609
5610         * Activator.cs (CreateInstance): Call GetConstructor with the right
5611         arguments so the nonPublic argument is handled correctly.
5612
5613 2003-03-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5614
5615         * Type.cs: fixed bug #40123.
5616
5617 2003-03-22  Pedro Martínez Juliá  <yoros@wanadoo.es>
5618
5619         * FloatingPointFormatter.cs: Fixed some bugs for get the same
5620         results than MS.NET. Added simple error recovering, now ToString
5621         will return a general format if there is any exception in the
5622         process of formatting. This make the library more robust while the
5623         formatters are refined.
5624
5625 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
5626
5627         * FloatingPointFormatter.cs: Added support for group separators.
5628
5629 2003-03-16  Pedro Martínez Juliá  <yoros@wanadoo.es>
5630
5631         * Single.cs:
5632         * Double.cs: Apply changes of .ToString methods.
5633         * SingleFormatter.cs:
5634         * DoubleFormatter.cs: Simple wrappers to FloatingPointFormatter.
5635         * FloatingPointFormatter.cs: New class. Implementation of double and
5636         single formatters. It is unified now and parametrized with precission
5637         values.
5638
5639 2003-03-15  Lluis Sanchez Gual <lluis@ideary.com>
5640
5641         * AppDomain.cs: fixes bugs #39380 and #39331.
5642
5643 2003-03-06  Nick Drochak  <ndrochak@gol.com>
5644
5645         * TimeSpan.cs (Negate): Throw exception when value is MinValue.
5646
5647 2003-03-04  Dick Porter  <dick@ximian.com>
5648
5649         * Single.cs:
5650         * Double.cs: Temporarily reverted the Double and Single ToString()
5651         change, because it broke nunit.
5652
5653
5654 2003-03-04  Pedro Martínez Juliá  <yoros@wanadoo.es>
5655
5656         * Double.cs: Changed ToString method. Added NumberFormatInfo support
5657         with DoubleFormatter class.
5658         * Single.cs: Changed ToString method. Added NumberFormatInfo support
5659         with SingleFormatter class.
5660         * DoubleFormatter.cs: New class with Double formatting functions.
5661         * SingleFormatter.cs: New class with Single formatting functions.
5662
5663 2003-03-03  Lluis Sanchez Gual <lluis@ideary.com>
5664
5665         * Activator.cs: Added support for activation using activation attributes.
5666         * AppDomain.cs: Added internal method to get the default context from the runtime.
5667
5668 2003-02-28  Elan Feingold  <efeingold@mn.rr.com>
5669
5670         * DateTime.cs: FileTime is expressed in Universal time, and as such must
5671         be converted before subtracting the magic offset.
5672         * DateTime.cs: Strings in the format "2003-02-27T10:05:03-11:00" (note
5673         the timezone at the end) *must* be parsed by DateTime.Parse() for
5674         compatibility with Microsoft.
5675
5676 2003-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5677
5678         * Attribute.cs:
5679         * MonoCustomAttrs.cs: fix for the regression test failure (see bug
5680         #38238).
5681
5682         * IntPtr.cs: added serialization .ctor
5683
5684 2003-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5685
5686         * AppDomain.cs: check for null in Unload and changed method name.
5687
5688 2003-02-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5689
5690         * MonoCustomAttrs.cs: fixed bug #38238.
5691
5692 2003-02-17  Martin Baulig  <martin@ximian.com>
5693
5694         * Exception.cs (Exception.ToString): Print a newline between the
5695         exception message and the stack trace.
5696
5697 2003-02-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5698
5699         * AppDomain.cs: implemented GetCurrentThreadId ().
5700
5701 2003-02-14  Patrik Torstensson
5702
5703         * Exception.cs: Fixed message output formating
5704
5705 2003-02-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5706
5707         * Int32.cs:
5708         (Parse): ignore everything after a \0 (MS parses: "512\0hola" as 512).
5709
5710 2003-02-12  Miguel de Icaza  <miguel@ximian.com>
5711
5712         * Type.cs: IsClass should return false for Enumerations
5713
5714 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5715
5716         * MonoCustomAttrs.cs: return the correct array type in the short case.
5717         Fixes bug #37818.
5718
5719 2003-02-08  Pedro Martíenz Juliá  <yoros@wanadoo.es>
5720
5721         * Math.cs: Fix a few methods (like Round) and add with comments the
5722         new methods: BigMul and DivRem that were in ECMA specs.
5723
5724 2003-02-07  Patrik Torstensson
5725
5726         * Exception.cs: Fixed formating
5727
5728 2003-02-05  Patrik Torstensson
5729
5730         * AppDomain.cs: Partly fixed the unload method 
5731         
5732 2003-02-04  Patrik Torstensson
5733
5734         * AppDomain.cs: Fixed lease issue with appdomain
5735
5736 2003-02-04  Lluis Sanchez Gual <lluis@ideary.com>
5737
5738         * MarshalByRefObject.cs: Implemented GetLifetimeService() and 
5739           InitializeLifetimeService().
5740
5741 2003-02-03  Patrik Torstensson
5742
5743         * AppDomain.cs: New internalcalls for handling domain/context switches
5744         * AppDomain.cs (CreateDomain): Return transparant proxy for appdomain object
5745
5746 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5747
5748         * AppDomain.cs: implemented AppendPrivatePath, ClearPrivatePath
5749         and ClearShadowCopyPath and fixed GetType ().
5750
5751         * Attribute.cs: clean up.
5752
5753         * Console.cs: removed UnixConsoleEncoding. Use Default.
5754
5755 2003-02-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5756
5757         * Attribute.cs: fixed all IsDefined overloads. Gotta fix
5758         GetCustomAttributes later.
5759
5760 2003-01-31  Patrik Torstensson
5761
5762         * Buffer.cs: Changed access level of BlockCopyInternal
5763
5764 Thu Jan 30 19:54:30 CET 2003 Paolo Molaro <lupus@ximian.com>
5765
5766         * String.cs, IntegerFormatter.cs: use const where appropriate.
5767
5768 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5769
5770         * MonoCustomAttrs.cs: fixed GetBase () for Type. Thanks to Zoltan for
5771         reporting.
5772
5773 2003-01-30  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5774
5775         * MonoCustomAttrs.cs: fixed shortcut in GetCustomAttributes.
5776         The argument ICustomAttributeProvider can be of other types different
5777         from Type. Handle it.
5778
5779 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
5780
5781         * DateTime.cs: fix FromFileTime so the time returned by 
5782         File::GetLastModificationTime etc. is in the correct timezone.
5783
5784 2003-01-28  Patrik Torstensson
5785         * Exception.cs: reverted formating/endline changes (sorry guys)
5786
5787 2003-01-28  Patrik Torstensson
5788
5789         * MarshalByRefObject.cs: implemented GetObjectIdentity
5790         * Exception.cs: added support for remote exceptions
5791
5792 2003-01-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5793
5794         * DateTime.cs: fixed bug #37225.
5795
5796 2003-01-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5797
5798         * Enum.cs: Clone the arrays in GetNames and GetValues. Thanks lupus!
5799
5800 2003-01-27  Zoltan Varga  <vargaz@freemail.hu>
5801
5802         * AppDomain.cs: Added DoTypeResolve method which will be called by
5803         the runtime to raise TypeResolve events.
5804
5805 2003-01-27  Duncan Mak  <duncan@ximian.com>
5806
5807         * Enum.cs (ToType): Implement this using Convert.ToType.
5808
5809 2003-01-21  Miguel de Icaza  <miguel@ximian.com>
5810
5811         * Math.cs: Remove Pow's implementation body as it was wrong.  The
5812         C code does the right thing.  The code was trying to handle a
5813         number of cases, and that was incorrect.
5814
5815 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5816
5817         * CharEnumerator.cs: fix to Current by crainaj@hotmail.com. Closes
5818         bug #37113.
5819
5820 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5821
5822         * Enum.cs: added caching to GetInfo.
5823
5824 2003-01-23  Dick Porter  <dick@ximian.com>
5825
5826         * Environment.cs (System): Implemented ExitCode
5827
5828 2003-01-23  Zoltan Varga  <vargaz@freemail.hu>
5829
5830         * Type.cs (IsInstanceOfType): fixed regression caused by the change
5831         to IsSubclassOf().
5832
5833 2003-01-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5834
5835         * MonoType.cs: re-added lines that were removed in the previous commit.
5836
5837 2003-01-16  Lluis Sanchez Gual <lsg@ctv.es>
5838
5839         * Type.cs: corrected property IsSerializable. It should always return
5840         true for enums and delegates
5841         * MonoType.cs: added serialization support.
5842         * Delegate.cs: added serialization support.
5843         * DBNull.cs: added serialization support.
5844         * UnitySerializationHolder.cs: supports serialization of Assembly,
5845         MonoType and DBNull.
5846         * DelegateSerializationHolder.cs: added.
5847
5848 2003-01-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5849
5850         * Exception.cs: changed default message to match MS one.
5851
5852 2003-01-12  Patrik Torstensson <totte@race-x-change.com>
5853
5854         * String.cs: Fixed bug with CompareOrdinal
5855
5856 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5857
5858         * Enum.cs: implements IFormattable.
5859
5860 2003-01-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5861
5862         * AppDomain.cs: implemented DoCallBack method.
5863         * MonoType.cs:
5864         (GetConstructorImpl): when the flag is BindingFlags.Default, set it to
5865         Public, Instance.
5866
5867         NUnit2 tests start moving.
5868
5869 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5870
5871         * Activator.cs: fixed bug #36052. Also added checks to avoid trying to
5872         instantiate an abstract class.
5873
5874 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5875
5876         * Type.cs:
5877         (IsSubclassOf): return false when null. Use != instead of Equals.
5878
5879 2003-01-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5880
5881         * Type.cs: fixed IsSubclassOf. Patch from Zoltan Varga.
5882
5883 Fri Jan 3 20:18:51 CET 2003 Paolo Molaro <lupus@ximian.com>
5884
5885         * MonoType.cs: fixed Namespace property for nested types.
5886
5887 Fri Jan 3 16:18:27 CET 2003 Paolo Molaro <lupus@ximian.com>
5888
5889         * MonoCustomAttrs.cs: create properly typed arrays when returning
5890         arrays of attributes of a given type.
5891
5892 Fri Jan 3 11:10:14 CET 2003 Paolo Molaro <lupus@ximian.com>
5893
5894         * MonoType.cs: fixed MemberType property for nested types.
5895
5896 2003-01-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5897
5898         * String.cs: fixed bug #36209.
5899
5900 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
5901
5902         * Activator.cs: implemented method GetObject.
5903
5904 2002-12-28  Marcus Urban <mathpup@mylinuxisp.com>
5905
5906         * Activator.cs: Since the documentation indicates the method
5907         either succeeds or throws one of the listed exceptions, we weren't
5908         expecting that CreateInstance might be returning null.
5909
5910         For more information on the bug, see http://bugs.ximian.com/show_bug.cgi?id=36109
5911
5912 2002-12-20 Lluis Sanchez Gual <lsg@ctv.es>
5913
5914         * MarshalByRefObject.cs: implemented CreateObjRef.
5915
5916 2002-12-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5917
5918         * DateTime.cs: fixed bug #30076.
5919         * TimeZone.cs: provide the parameter name in a exception.
5920
5921 2002-12-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5922
5923         * DecimalFormatter.cs: fixed bug #35560.
5924
5925 Wed Dec 4 16:04:28 CET 2002 Paolo Molaro <lupus@ximian.com>
5926
5927         * Type.cs: implemented GetInterfaceMap (needs an updated runtime).
5928
5929 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5930
5931         * Array.cs: use Object.Equals (obj, obj) to compare objects to avoid
5932         nulls. Fixes #34909.
5933
5934 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5935
5936         * AppDomain.cs: DoAssemblyResolve now returns when one of the handlers
5937         returns a non-null assembly.
5938
5939 2002-12-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5940
5941         * MulticastDelegate.cs: make GetInvocationList work for more than 1
5942         delegate.
5943
5944 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5945
5946         * MulticastDelegate.cs: implemented GetInvocationList. I'll check later
5947         if this is the correct order of invocation.
5948
5949 2002-12-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5950
5951         * Type.cs: changed the signature of internal_from_name. Modified
5952         the overloads of GetType to use it and check the typeName argument.
5953         Implemented FindInterfaces.
5954
5955 2002-11-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5956
5957         * MarshalByRefObject.cs: undo latest changes. It breaks the build by
5958         some obscure reasons (try make -f makefile.gnu using a corlib which has
5959         the modified version).
5960
5961 2002-11-26  Miguel de Icaza  <miguel@ximian.com>
5962
5963         * String.cs (Concat): Reduce the number of compares required. 
5964
5965 Mon Nov 18 17:54:22 CET 2002 Paolo Molaro <lupus@ximian.com>
5966
5967         * Activator.cs: throw a MissingMethodException if the default
5968         constructor is not found in CreateInstance.
5969
5970 2002-11-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5971
5972         * String.cs:
5973         (Equals (str, str)): use 'as' instead of casting to object.
5974         (Equals (obj)): check the length of the strings (until now,
5975         "Hello".Equals ((object) "Hellow World!) was true!).
5976
5977 2002-11-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5978
5979         * MonoType.cs: implemented GetEvent (name, flags).
5980
5981 2002-11-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5982
5983         * AppDomain.cs: implemented a couple of methods called from the runtime
5984         to fire AssemblyLoad and AssemblyResolve events.
5985
5986 2002-10-31  Dick Porter  <dick@ximian.com>
5987
5988         * Environment.cs: MonoIO methods now have an error parameter
5989
5990 2002-10-29  Zoltan Varga  <vargaz@freemail.hu>
5991
5992         * Enum.cs: Added support for whitespaces in Enum:Parse().
5993
5994 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
5995
5996         * Type.cs: fixed GetProperty (string, Type []) and removed get_property
5997         internal call. Closes bug #32992.
5998
5999 2002-10-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6000
6001         * Exception.cs: display the inner exception, if any, in ToString ().
6002
6003 2002-10-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6004
6005         * Environment.cs: fixed StackTrace property.
6006
6007 2002-10-16  Nick Drochak  <ndrochak@gol.com>
6008
6009         * Enum.cs (Parse): Then fix the code so that it works too.
6010
6011 2002-10-15  Nick Drochak  <ndrochak@gol.com>
6012
6013         * Enum.cs (Parse): Use unsigned casts to avoid compiler warnings.
6014
6015 2002-10-12  Nick Drochak  <ndrochak@gol.com>
6016
6017         * IntegerFormatter.cs: Fix compiler warnings.
6018
6019 2002-10-11  Tim Haynes <thaynes@openlinksw.com>
6020
6021         * Type.cs (GetConstructors): Use the correct flags.
6022
6023 2002-10-09  Nick Drochak  <ndrochak@gol.com>
6024
6025         * IntegerFormatter.cs: Suppress insignificant leading zeros
6026
6027 Fri Sep 27 15:06:29 CEST 2002 Paolo Molaro <lupus@ximian.com>
6028
6029         * MonoCustomAttrs.cs: applied patch by "Si Jingnan"
6030         <stonewell@21cn.com> to return also derived types.
6031
6032 2002-09-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6033
6034         * Activator.cs: little fix in CreateInstance (Type, bool).
6035
6036 2002-09-19  Duncan Mak  <duncan@ximian.com>
6037
6038         * Array.cs (CopyTo): Revert back to 1.40, this is stopping
6039         I18N/Common from building right now.
6040
6041 2002-09-19  Nick Drochak  <ndrochak@gol.com>
6042
6043         * Array.cs (CopyTo): Account for Object type and base (primitive) types
6044         * Type.cs (IsAssignableFrom): return false for a null parameter
6045
6046 2002-09-19  Nick Drochak <ndrochak@gol.com>
6047
6048         * Array.cs (CopyTo): Check that source type can be cast automatically
6049         to the destination type.
6050
6051 2002-09-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6052
6053         * Type.cs: implemented IsAssignableFrom, DefaultBinder and
6054         GetDefaultMembers.
6055
6056 2002-09-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6057
6058         * Char.cs: implemented ToString (char)
6059         * IntegerFormatter.cs: made it internal.
6060
6061 2002-09-13  Nick Drochak  <ndrochak@gol.com>
6062
6063         * Enum.cs (Format): handle the "d" format for both signed and unsigned
6064         underlying types.
6065
6066 2002-09-12  Dick Porter  <dick@ximian.com>
6067
6068         * UIntPtr.cs: Remove the [StructLayout(LayoutKind.Auto)]
6069         attribute, as there doesn't appear to be any struct
6070         layout-depending code here (and corcompare says it should be
6071         LayoutKind.Sequential)
6072
6073         * Decimal.cs: Stub out missing methods, add
6074         [DecimalConstantAttribute] to the constant fields (as shown by
6075         corcompare).
6076
6077         * LocalDataStoreSlot.cs: 
6078         * Environment.cs: 
6079         * Char.cs: 
6080         * Array.cs: Stub out missing methods.
6081
6082         * TypedReference.cs: 
6083         * ArgIterator.cs: Stub out
6084
6085         * AppDomainSetup.cs: 
6086         * AppDomain.cs: Stub out missing methods, add missing
6087         ClassInterface(ClassInterfaceType.None) attribute.
6088
6089 2002-09-12  Nick Drochak  <ndrochak@gol.com>
6090
6091         * Double.cs (ToString): Throw exception when "X" format is passed in.
6092
6093 Wed Sep 11 15:26:34 CEST 2002 Paolo Molaro <lupus@ximian.com>
6094
6095         * MonoType.cs: implemented Module property.
6096
6097 Wed Sep 11 12:49:51 CEST 2002 Paolo Molaro <lupus@ximian.com>
6098
6099         * MonoType.cs, Type.cs: implemented InvokeMember.
6100
6101 Wed Sep 11 11:06:43 CEST 2002 Paolo Molaro <lupus@ximian.com>
6102
6103         * Delegate.cs: check the type passed to CreateDelegate is a Delegate
6104         type. Check the method signature matches.
6105
6106 Sat Sep 7 10:16:52 CEST 2002 Paolo Molaro <lupus@ximian.com>
6107
6108         * RuntimeMethodHandle.cs: implemented GetFunctionPointer().
6109
6110 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
6111
6112         * Console.cs: Specify an encoder, otherwise we will get the UTF8
6113         encoder that by default emits the byte markers.
6114
6115 Fri Sep 6 20:14:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
6116
6117         * Delegate.cs: look also for non-public methods until we have the
6118         security checks in place.
6119
6120 Fri Sep 6 12:20:06 CEST 2002 Paolo Molaro <lupus@ximian.com>
6121
6122         * MonoType.cs: consider also the full name in GetInterface.
6123
6124 Fri Sep 6 12:11:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
6125
6126         * MonoType.cs: implemented GetMembers, GetConstructorImpl and
6127         GetMethodImpl using the binder.
6128         * Type.cs: GetConstructorImpl/GetConstructor fixes.
6129
6130 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
6131         * Enum.cs: Get rid of warning CS0162.
6132
6133 2002-09-04  Miguel de Icaza  <miguel@ximian.com>
6134
6135         * Double.cs, Single.cs, Char.cs, Boolean.cs: Use internal for the
6136         actual value instead of public.
6137
6138         * LocalDataStoreSlot.cs: Make constructor internal.
6139
6140         * Int16.cs, UInt16.cs, Int32.cs, UInt32.cs, Int64.cs, UInt64.cs,
6141         SByte.cs, Byte.cs, Char.cs: Use internal for the actual value
6142         instead of public.
6143
6144 2002-09-03  Jonathan Pryor <jonpryor@vt.edu>
6145         * Enum.cs: Fixed Enum.Format so that the "x" format specifier would work
6146                    properly.
6147
6148 2002-08-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6149
6150         * DateTime.cs: fixed buglet.
6151
6152 Tue Aug 27 16:39:47 CEST 2002 Paolo Molaro <lupus@ximian.com>
6153
6154         * MonoType.cs: speedup access to common data.
6155
6156 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6157
6158         * Double.cs: implemented TryParse.
6159
6160         * Math.cs: PowImpl is now private.
6161
6162         * MissingFieldException.cs: implemented Message.
6163
6164         * RuntimeMethodHandle.cs: stubbed GetFunctionPointer.
6165
6166         * _AppDomain.cs: Uncommented ToString.
6167
6168 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6169
6170         * Type.cs:
6171         (IsValueTypeImpl): it's virtual, not abstract. Implemented.
6172
6173 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6174
6175         * ArgumentException.cs: use the field instead of the property for
6176         param_name.
6177
6178         * ArgumentOutOfRangeException.cs: modified Message.
6179
6180         * DateTime.cs: 
6181         (_DoParse): throw out of range exception for year. Removed check
6182         for month (it's done in the constructor).
6183
6184 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
6185
6186         * Environment.cs: Implemented OSVersion property.
6187
6188 2002-08-21  Dietmar Maurer  <dietmar@ximian.com>
6189
6190         * Exception.cs: set stack_trace to null
6191
6192 Wed Aug 21 13:02:20 CEST 2002 Paolo Molaro <lupus@ximian.com>
6193
6194         * AppDomain.cs: implemented ToString().
6195
6196 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6197
6198         * AppDomain.cs: securityInfo can be null in CreateDomain.
6199
6200 2002-08-19  Dick Porter  <dick@ximian.com>
6201
6202         * MonoType.cs: Add a space before the Assembly name in
6203         AssemblyQualifiedName (needed for resource files so the MS runtime
6204         can load types)
6205
6206 2002-08-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6207
6208         * AppDomain.cs: parameter name when throwing ArgumentNullException.
6209
6210         * ArgumentException.cs: modified Message to do what MS does.
6211
6212         * ArgumentNullException.cs: don't use {0} in message.
6213
6214         * Exception.cs: use Message property in ToString ().
6215
6216 2002-08-14  Cesar Octavio Lopez Nataren <cesar@ciencias.unam.mx>
6217
6218         * WeakReference.cs: Changed the constructor and GetObjectData
6219         method needed for ISerializable implementation in order to be
6220         compatible with SOAP generated by MS.
6221
6222 Wed Aug 14 17:34:07 CEST 2002 Paolo Molaro <lupus@ximian.com>
6223
6224         * MonoType.cs, Type.cs: DeclaringType/ReflectedType fixes.
6225
6226 2002-08-12  Dietmar Maurer  <dietmar@ximian.com>
6227
6228         * Exception.cs (ToString): changed the ouput format.
6229
6230 2002-08-07  Dietmar Maurer  <dietmar@ximian.com>
6231
6232         * MonoType.cs: moved get_method icall to this class, we can
6233         remove it as soon someone provides a full featured GetMethodImpl.
6234
6235         * Type.cs: use GetMethodImpl everywhere.
6236
6237         * Delegate.cs: new CreateDelegate implementations.
6238
6239 2002-08-06  Tim Coleman <tim@timcoleman.com>
6240         * MonoType.cs: 
6241                 Fix bug #28582.  Now checks parameters for properties
6242                 in GetPropertyImpl.
6243
6244 2002-08-04  Nick Drochak  <ndrochak@gol.com>
6245
6246         * Buffer.cs: Throw correct exception in GetByte() and SetByte().
6247
6248 2002-08-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6249
6250         * String.cs:
6251         (FormatSpecifier): allow white space between the comman and the width
6252         specifier.
6253
6254 2002-07-22  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6255
6256         * Int32.cs:
6257         * Int64.cs:
6258         * UInt32.cs:
6259         * UInt64.cs: fixed bug #28050. May be a MS bug?
6260
6261 Thu Jul 18 14:47:03 CEST 2002 Paolo Molaro <lupus@ximian.com>
6262
6263         * MonoType.cs: fix IsArrayImpl.
6264
6265 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6266
6267         * String.cs: make ToLower (culture) and ToUpper (culture) use the
6268         default ToLower and ToUpper and don't throw NotImplemented.
6269
6270 Sat Jul 13 15:09:01 CEST 2002 Paolo Molaro <lupus@ximian.com>
6271
6272         * Type.cs: make GettTypeCode an icall. Test implementation of
6273         GetMember().
6274
6275 2002-07-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6276
6277         * AppDomainSetup.cs: implemented LoaderOptimization.
6278
6279 2002-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6280
6281         * Activator.cs: some more intermediate results checking in
6282         in CreateInstance and CreateInstanceFrom and use GetConstructor and
6283         Invoke only with Type [] until the other overloaded versions work.
6284
6285 2002-07-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6286
6287         * Activator.cs: reformatted. Implemented CreateInstance* methods
6288         that return ObjectHandle.
6289
6290         * AppDomain.cs: implemented CreateInstance*AndUnwrap methods.
6291
6292 2002-07-03  Nick Drochak  <ndrochak@gol.com>
6293
6294         * Decimal.cs (Divide): Short cut the case where the dividend is 0 (and
6295         the divisor is not) and avoid the icall, which seems to have a bug.
6296
6297 2002-07-03  Nick Drochak  <ndrochak@gol.com>
6298
6299         * Double.cs (CompareTo): Correctly handle the case where the instance
6300         is NaN. Also return 0 if the values are equal.
6301
6302 2002/07/03  Nick Drochak <ndrochak@gol.com>
6303
6304         * MissingMethodException: Add missing Message property
6305         * MissingMemberException: Add missing Message property
6306
6307 2002-06-30  Nick Drochak  <ndrochak@gol.com>
6308
6309         * Double.cs (CompareTo): Just see which is bigger.  Don't use the
6310         subtraction trick, it doesn't work when the values have a diference of
6311         less than one.
6312
6313         * Single.cs (CompareTo): same
6314
6315 2002-06-27  Martin Baulig  <martin@gnome.org>
6316
6317         * UIntPtr.cs (UIntPtr.Zero): Use an explicit `u' suffix in the
6318         constructor argument.  [FIXME: The implicit conversion to an
6319         unsigned integer doesn't work with mcs.]
6320
6321 2002-06-26  Martin Baulig  <martin@gnome.org>
6322
6323         * DecimalFormatter.cs: Removed MSTEST stuff, use `System',
6324         not `S = System'.  This file now compiles with mcs.
6325
6326         * String.cs: Removed the already ifdef-outed __arglist Concat function
6327         to make it compile with mcs.
6328
6329 2002-06-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6330
6331         * IntegerFormatter.cs:
6332         (FormatParse.FormatNumber): fixed custom format for negative numbers.
6333
6334 2002-06-21  Martin Baulig  <martin@gnome.org>
6335
6336         * Double.cs: Replace the private `enum State' with constants since this
6337         will avoid some bigger headaches in mcs.
6338
6339 Thu Jun 20 17:51:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
6340
6341         * TimeSpan.cs: do not pollute the namespace with the
6342         System.Parser name.
6343
6344 2002-06-18  Nick Drochak  <ndrochak@gol.com>
6345
6346         * ArgumentException.cs: Use the message given in the constructor when
6347         accessing the Message property.  Thanks to Dietmar for the help with 
6348         "base".
6349
6350 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
6351
6352         * MonoType.cs: GetField is now a InternalCall
6353
6354 2002-06-13  Nick Drochak  <ndrochak@gol.com>
6355
6356         * DateTime.cs: (Parse): Accept dates that have no hour,min,sec. in the
6357         sortable format(s), e.g. "2002-02-25"
6358
6359 2002/06/12  Nick Drochak <ndrochak@gol.com>
6360
6361         * Random.cs (Next): Fix math error.  Return a number within the range.
6362
6363 2002-06-12  Nick Drochak  <ndrochak@gol.com>
6364
6365         * String.cs (IndexOf): Return -1 if start index is equal to string
6366         length.
6367
6368 2002-06-10  Duncan Mak  <duncan@ximian.com>
6369
6370         * Convert.cs (ToDouble): Remove rounding in ToDouble (float).
6371         (ToType): Added null field in conversionTable to avoid
6372         IndexOutOfRangeException. Changed what exceptions we throw to match
6373         the spec.
6374         
6375 2002-06-11  Nick Drochak  <ndrochak@gol.com>
6376
6377         * Int64.cs (Parse): Added unique strings to the messages where we throw
6378         a FormatException. Needed these to debug, so just left them in since
6379         they might be useful later. Fixed Currency parsing where we weren't
6380         looking at CurrencyDecimalSeparator, etc.
6381
6382 2002-06-09  Lawrence Pit  <loz@cable.a2000.nl>
6383
6384         * DateTime.cs: fixes to pass tests M0 to M6:
6385                 if yy pattern then year values >= 30 are in 20th century
6386                 rfc1123 pattern is always in GMT, therefor useutc must be false
6387         made GetNow() internal static so it can be called from TimeZone.
6388         * TimeZone.cs: removed dependency on year 2002 from initialization of 
6389         current timezone.
6390
6391 2002-06-09  Duncan Mak  <duncan@ximian.com>
6392
6393         * Convert.cs (ToType): Rearranged what Exceptions we throw to
6394         match MS behavior.
6395
6396 2002-06-08  Duncan Mak  <duncan@ximian.com>
6397
6398         * Decimal.cs: Added support for the IConvertible interface.
6399
6400 2002-06-08  Martin Baulig  <martin@gnome.org>
6401
6402         * Enum.cs (IsDefined): `value' may be of the enum's type itself, it
6403         doesn't necessarily need to be of the enum's underlying type.
6404
6405 2002/06/07  Nick Drochak <ndrochak@gol.com>
6406
6407         * String.cs: Add [Serializable] to class
6408         * SByte.cs (Parse): Add [CLSCompliant(false)] to all the overloads
6409
6410 2002-06-04  Nick Drochak  <ndrochak@gol.com>
6411
6412         * Double.cs (Parse): Recognize the group separator string, but still we
6413         don't check the format for the proper number of digits between
6414         separators. Also throw OverflowException when we get Pos or Neg
6415         Infinity from runtime.
6416
6417 2002-06-03  Duncan Mak  <duncan@ximian.com>
6418
6419         * Convert.cs (ToDouble): Fixed ToDouble (byte value).
6420
6421 Mon Jun 3 12:18:18 CEST 2002 Paolo Molaro <lupus@ximian.com>
6422
6423         * Type.cs: fixed GetTypeCode.
6424
6425 2002-06-02  Duncan Mak  <duncan@ximian.com>
6426
6427         * Convert.cs (ToInt16): use Convert.ToInt16 (int) instead of a direct
6428         cast from an int so that we throw OverFlowException correctly.
6429         
6430         (ToInt64): Use a new 64bit version of ConvertToBase.
6431         
6432         (ConvertToBase): Add checks for overflow (checks Int32.MinValue
6433         and Int32.MaxValue).
6434
6435         (ConvertFromBase64): New 64-bit version of ConvertFromBase.
6436
6437 2002-06-02  Nick Drochak  <ndrochak@gol.com>
6438
6439         * Convert.cs (ToSByte): Check for special value.
6440         * Single.cs (Parse): 
6441         * UInt16.cs (Parse):
6442         * UInt32.cs (Parse): Throw OverflowException if negative
6443
6444 2002-06-02  Duncan Mak  <duncan@ximian.com>
6445
6446         * Convert.cs (DBNull): Point it to DBNull.Value.
6447         (IsDBNull): Instead of checking typecodes, just check to see if
6448         it's the same as the DBNull field.
6449
6450 2002-06-02  Nick Drochak  <ndrochak@gol.com>
6451
6452         * Convert.cs (ConvertFromBase): Detect bad digits correctly.
6453
6454 2002-06-02  Duncan Mak  <duncan@ximian.com>
6455
6456         * Char.cs (Parse): Simplify the Exception handling.
6457
6458         * Convert.cs (ToDecimal): Remove call to Math.Round () when
6459         converting from a float.
6460
6461 2002-05-30  Martin Baulig  <martin@gnome.org>
6462
6463         * MonoType.cs (GetInterface): Implemented.
6464
6465 Thu May 23 17:17:28 CEST 2002 Paolo Molaro <lupus@ximian.com>
6466
6467         * Activator.cs: implemented CreateInstance ().
6468
6469 2002-05-22  Duncan Mak  <duncan@ximian.com>
6470
6471         * Convert.cs (ConvertToBase): Added new 64bit version.
6472         (BuildConvertedString64): New 64bit version of
6473         BuildConvertedString.
6474
6475         This fixes bug 25068.
6476
6477         (ConvertFromBase): Added additional test for checking if the
6478         digits are valid. Thanks to Miguel for coming up with this test.
6479
6480         This fixes bug 25071.
6481         
6482 2002-05-21  Duncan Mak  <duncan@ximian.com>
6483
6484         * Convert.cs (ToType): Rearranged to fit the new layout of
6485         conversionTable.
6486
6487         (conversionTable): Rearranged to fit the layout of the
6488         System.TypeCode enum.
6489
6490         This should fix bug 25075.
6491         
6492 2002-05-21  Duncan Mak  <duncan@ximian.com>
6493
6494         * Convert.cs (ToString): Fixed the ToString methods. Previously I had
6495         mixed up the two code paths, one for converting to a specific base
6496         (this case), another from converting from a foreign base to base10
6497         (used by ToInt16|32|64 (string, int)). This fixes bug 25068.
6498
6499         * Convert.cs (ToByte)
6500         (ToSByte): Fixed bug 25074. Added more bits to ConvertFromBase so
6501         that we won't confuse FormatException with OverflowException.
6502
6503 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
6504
6505         * Environment.cs: CommandLine missed spaces between arguments.
6506         Implemented StackTrace. Returning MachineName in UserDomainName
6507         instead of null.
6508         
6509 Tue May 21 17:25:49 CEST 2002 Paolo Molaro <lupus@ximian.com>
6510
6511         * MonoCustomAttrs.cs: handle inherit argument.
6512
6513 2002-05-21  Nick Drochak  <ndrochak@gol.com>
6514
6515         * Math.cs (Pow): Change icall method name and insert parameter
6516         checks in for infinities and NaN.
6517
6518 2002-05-13  Miguel de Icaza  <miguel@ximian.com>
6519
6520         * Double.cs (Parse): Reimplement by cleaning up the string first,
6521         and then passing to strtof in the mono runtime.
6522
6523         * Single.cs (Parse): Use the Double implementation and cast to
6524         float. 
6525
6526 2002-05-21  Nick Drochak  <ndrochak@gol.com>
6527
6528         * Math.cs 
6529                 (Ceiling): Check for "special" values
6530                 (Floor): Check for "special" values
6531                 (Round): Fix off-by-one error on decimal shifting
6532
6533 2002-05-20  Lawrence Pit  <loz@cable.a2000.nl>
6534
6535         * DateTime.cs: ToString () using "G" format specifier 
6536
6537 2002-05-19  Martin Baulig  <martin@gnome.org>
6538
6539         * Convert.cs (FromBase64CharArray): Do correct exception handling.
6540
6541 2002-05-19  Martin Baulig  <martin@gnome.org>
6542
6543         * Convert.cs (FromBase64CharArray): Convert the char array using
6544         System.Text.UTF8Encoding, not UnicodeEncoding (which is UTF-16) to
6545         a byte array.
6546
6547 2002-05-17  Miguel de Icaza  <miguel@ximian.com>
6548
6549         * MonoType.cs: Style changes.
6550
6551         * Type.cs: Style changes.
6552
6553 2002-05-16  Piers Haken <piersh@friksit.com
6554
6555         * UInt64.cs: fix declaration of IConvertible.To* overrides.
6556
6557 2002-05-16  Nick Drochak  <ndrochak@gol.com>
6558
6559         * BitConverter.cs (ToString): Add parameter check for invalid start 
6560         index.
6561
6562         * Console.cs: Use AutoFlush on the StreamWriter for stdin and stdout
6563         now that StreamWriter uses buffering
6564
6565 2002-05-14  Miguel de Icaza  <miguel@ximian.com>
6566
6567         * Double.cs: Oops.  Also handle exponents without finding a dot.
6568
6569 2002-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6570
6571         * ChangeLog: removed empty entry at the top of the file.
6572
6573         * Int32.cs: made static functions used by Parse internal.
6574
6575         * Int64.cs:
6576         * UInt32.cs:
6577         * UInt64.cs: removed static fucntions used by Parse and use the ones
6578         in Int32.cs
6579
6580 2002-05-12  Daniel Morgan <danmorg@sc.rr.com>
6581
6582         * IServiceProvider.cs: added using System
6583
6584 2002-05-09  Daniel Morgan <danmorg@sc.rr.com>
6585
6586         * Single.cs: copied ToString() and Parse() methods from 
6587         Double to Single and modified a tiny bit for Single.  
6588         There is still a FIXME for Double and Single about
6589         passing the format and provider info to the icall too.
6590
6591 2002-05-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6592
6593         * Int32.cs:
6594         * Int64.cs:
6595         * UInt32.cs:
6596         * UInt64.cs (Parse): don't use Char.IsNumber to test for hex digits.
6597         Don't use a delegate to test for valid digits.
6598
6599 2002-05-01  Duncan Mak  <duncan@ximian.com>
6600
6601         * Convert.cs: 
6602         * Math.cs: Added missing CLSCompliant attributes where necessary.
6603         
6604 2002-04-30  Duncan Mak  <duncan@ximian.com>
6605
6606         * ArgumentException.cs (Message): 
6607         * ArgumentOutOfRangeException.cs (Message): Added.
6608
6609 2002-04-30  Nick Drochak  <ndrochak@gol.com>
6610
6611         * MonoType.cs: Remove unused variable and eliminate a compiler warning.
6612
6613 Mon Apr 29 15:32:02 CEST 2002 Paolo Molaro <lupus@ximian.com>
6614
6615         * Environment.cs: support for Exit(), CommandLine, CommandLineArgs ().
6616
6617 2002-04-28  Duncan Mak  <duncan@ximian.com>
6618
6619         * DivideByZeroException.cs: Added missing serialization constructor.
6620
6621         * UnauthorizedAccessException.cs: Added the missing Serializable attribute.
6622
6623 2002-04-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6624
6625         * Math.cs: fix Floor () and Round (). Closes #23960.
6626
6627 2002-04-27  Nick Drochak  <ndrochak@gol.com>
6628
6629         * Array.cs (IList.Contains): Should throw a RankException if this is 
6630         called on a Rank > 1 array. Not in the docs, but this is what the 
6631         MS.NET does.
6632
6633 2002-04-26  Duncan Mak  <duncan@ximian.com>
6634
6635         * MissingMemberException.cs: Made the message variable 'protected'
6636         instead of 'private', so that we can see it in
6637         MissingMethodException and MissingFieldException.
6638
6639         * MissingFieldException.cs:
6640         * MissingMethodException.cs: Added missing (string, string)
6641         constructor, and also the Message property.
6642
6643 2002-04-26  Martin Baulig  <martin@gnome.org>
6644
6645         * Enum.cs: Implemented the IConvertible methods.
6646
6647 2002-04-25  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6648
6649         * SByte.cs: little change in Parse (string) to avoid incorrect
6650         OverflowException thrown (reported by nickd).
6651
6652 2002-04-22  Miguel de Icaza  <miguel@ximian.com>
6653
6654         * ValueType.cs: Add Serializable attribute.
6655
6656         * String.cs: ifdef-out out the __arglist Concat function until I
6657         add support for that to mcs.
6658
6659 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
6660
6661         * AppDomain.cs (GetValue): usage of the correct icall (bug)
6662
6663 Wed Apr 24 21:15:44 CEST 2002 Paolo Molaro <lupus@ximian.com>
6664
6665         * GC.cs: implement most of the methods as icalls.
6666
6667 2002-04-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6668
6669         * DecimalFormatter.cs (ToString): return correct value when the
6670         decimal number is 0.
6671
6672 2002-04-24      Patrik Torstensson <patrik.torstensson@labs2.com>
6673         
6674         * Type.cs (GetProperty): fixed call syntax (needs an empty array not null)
6675         * MonoType.cs (GetPropertyImpl) : basic implementation (ignores types, bindingAttr, modifiers)
6676
6677 2002-04-24  Nick Drochak  <ndrochak@gol.com>
6678
6679         * Double.cs (Parse): Handle case where there are no digits before the 
6680         decimal point, such as ".1".
6681
6682 2002-04-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6683
6684         * Int32.cs:
6685         * UInt32.cs:
6686         * Int64.cs:
6687         * UInt64.cs: fixed bug #23738 (hex numbers parsed wrong).
6688
6689 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
6690
6691         * String.cs (Split): fixed invalid split of count 0 and 1.
6692         
6693 2002-04-23      Patrik Torstensson <patrik.torstensson@labs2.com>
6694         
6695         * String.cs (LastIndexOf): fixed argument checking.
6696         * String.cs (Equals): made internal for performace.
6697
6698 2002-04-23  Nick Drochak  <ndrochak@gol.com>
6699
6700         * String.cs (Join): check argument and throw exception if needed
6701
6702 2002-04-23  Nick Drochak  <ndrochak@gol.com>
6703
6704         * String.cs (StartsWith): check argument and throw exception if needed
6705
6706 2002-04-22  Nick Drochak  <ndrochak@gol.com>
6707
6708         * String.cs (IndexOfAny): check arguments and throw exceptions as
6709         neccessary.  ALso remove some debug WriteLines.
6710
6711 2002-04-20  Dietmar Maurer  <dietmar@ximian.com>
6712
6713         * String.cs: use internal constructors
6714         buf fix in Concat.
6715
6716 Thu Apr 18 17:16:15 CEST 2002 Paolo Molaro <lupus@ximian.com>
6717
6718         * MonoType.cs: make GetElementType its own icall.
6719
6720 2002-04-18  Nick Drochak <ndrochak@gol.com>
6721
6722         * String.cs: Modified file. Re-add methods needed by the unit tests.
6723
6724 Thu Apr 18 12:38:32 CEST 2002 Paolo Molaro <lupus@ximian.com>
6725
6726         * String.cs: some code speedups and restored GetTypeCode().
6727
6728 2002-04-17      Patrik Torstensson <patrik.torstensson@labs2.com>
6729
6730         * String.cs: New implementation using internal calls.
6731         
6732 2002-04-16  Nick Drochak  <ndrochak@gol.com>
6733
6734         * DecimalFormatter.cs: Trim off excess null characters from the string
6735         that decimal2string gives back.
6736
6737 2002-04-16  Nick Drochak  <ndrochak@gol.com>
6738
6739         * String.cs (SubString): revert my change.  I can't reproduce the
6740         problem anymore.
6741
6742 2002-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6743
6744         * Attribute.cs: added GetHashCode and Equals.
6745
6746 2002-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6747
6748         * Enum.cs: little improvements to Format ().
6749
6750 Thu Apr 11 12:28:13 CEST 2002 Paolo Molaro <lupus@ximian.com>
6751
6752         * String.cs: internalcall GetHashCode().
6753         * Array.cS: optimize access to elements.
6754
6755 Wed Apr 10 21:20:19 CEST 2002 Paolo Molaro <lupus@ximian.com>
6756
6757         * String.cs: make IndexOfAny() use an internalcall.
6758
6759 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6760
6761         * Int32.cs:
6762         * UInt32.cs:
6763         * Int64.cs: 
6764         * UInt64.cs: fixed error when testing for validity of flags.
6765
6766 2002-04-11  Nick Drochak  <ndrochak@gol.com>
6767
6768         * Double.cs: Use an internal call for ToString(). This is just a simple
6769         implementation to get away from throwing a NotImplementedException.
6770
6771 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6772
6773         * Int32.cs:
6774         * UInt32.cs:
6775         * Int64.cs: 
6776         * UInt64.cs: changed Type.GetType () by typeof (), as suggested by
6777         lupus.
6778
6779         * Int32.cs:
6780         * Int64.cs: throw an OverFlowException when parsing a string 
6781         containing a dot followed by any non '0' number.
6782
6783 2002-04-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6784
6785         * Byte.cs:
6786         * UInt16.cs:
6787         * UInt32.cs:
6788         * UInt64.cs: added complex Parse ().
6789
6790 2002-04-09  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6791
6792         * SByte.cs:
6793         * Int16.cs:
6794         * Int32.cs:
6795         * Int64.cs: added complex Parse ().
6796
6797 2002-04-09  Nick Drochak  <ndrochak@gol.com>
6798
6799         * Array.cs (BinarySearch): Add checks on paramters before using them
6800         and throw exceptions as needed.
6801
6802         * Enum.cs (Format): Check if [Flags] is applied to enum and convert
6803         "G" format to "F" if so.
6804
6805 Tue Apr 9 13:12:09 CEST 2002 Paolo Molaro <lupus@ximian.com>
6806
6807         * MonoCustomAttrs.cs: return arrays of type Attribute[]
6808         instead of object[].
6809
6810 2002/04/09  Nick Drochak <ndrochak@gol.com>
6811
6812         * String.cs (Substring): Copy only non-null characters to the new
6813         string.
6814
6815 2002-04-09  Nick Drochak  <ndrochak@gol.com>
6816
6817         * IntegerFormatter.cs: Don't use a format character to indicate a
6818         custom format was passed in. It was using 'z' to indicate a custom
6819         format, but really it should throw a format exception if the user
6820         tries to use "z" as the format string. Now it does.
6821
6822         * Activator.cs: New File.
6823
6824 2002-04-08  Nick Drochak  <ndrochak@gol.com>
6825
6826         * Enum.cs (ToString): Big ugly fix for the case where [Flags] is
6827         applied to an enum. Need to handle the different possible integer
6828         types of an enum somehow.  Can anyone say generics?
6829
6830 Mon Apr  8 06:22:42  2002 Piers Haken <piersh@friskit.com>
6831
6832         * Convert.cs: switched the To*(object) methods to use
6833         IConvertible directly instead of calling ChangeType
6834
6835 Sat Apr 6 20:08:41 CEST 2002 Paolo Molaro <lupus@ximian.com>
6836
6837         * ValueType.cs: make Equals() an internalcall.
6838
6839 Fri Apr 5 15:38:54 CEST 2002 Paolo Molaro <lupus@ximian.com>
6840
6841         * Type.cs: also look for nested types in FindMembers.
6842         * MonoType.cs: make GetNestedTypes() an internalcall.
6843
6844 2002-04-05  Nick Drochak  <ndrochak@gol.com>
6845
6846         * Enum.cs (Parse): Handle different underlying types.
6847
6848 2002/04/04 Nick Drochak <ndrochak@gol.com>
6849
6850         * Enum.cs (IsDefined): Throw exception when type of value to look for
6851         is not the correct one.  Attempt to have it work with string values
6852         too, but not sure if the unit tests are getting that far yet.
6853
6854 2002-04-04  Nick Drochak  <ndrochak@gol.com>
6855
6856         * Decimal.cs: Fix a couple of typos.
6857
6858 Wed Apr 3 19:46:00 CEST 2002 Paolo Molaro <lupus@ximian.com>
6859
6860         * Enum.cs: the values array is of the enum and not of the underlying
6861         type. Updates and some bug fixes.
6862         * MonoType.cs: make the internalcall return FullName instead of the
6863         assembly qualified name.
6864         * Type.cs: make ToString () simply return FullName.
6865
6866 2002-04-03  Nick Drochak  <ndrochak@gol.com>
6867
6868         * Type.cs (GetTypeCode): provide some of the implementation for this
6869         method.  It's still too simplistic to be considered complete.
6870
6871 2002-04-02  Dietmar Maurer  <dietmar@ximian.com>
6872
6873         * Object.cs: fixed FieldGetter/FieldSetter signature
6874
6875 2002-04-02  Nick Drochak  <ndrochak@gol.com>
6876
6877         * Environment.cs: add MonoTODO's on parts that should have it.
6878
6879 2002-04-01  Nick Drochak  <ndrochak@gol.com>
6880
6881         * Enum.cs: added reality checks (check parameters to most methods that
6882         need them).
6883
6884 2002-03-30  Dietmar Maurer  <dietmar@ximian.com>
6885
6886         * Object.cs: added FieldGetter/FieldSetter
6887
6888 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6889
6890         * IntegerFormatter.cs: fixed initialization error in static
6891         constructor.
6892
6893 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
6894
6895         * Delegate.cs: added new field to store a trampoline function
6896
6897 2002-03-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
6898
6899         * IntegerFormatter.cs: added workaround for bug #22668. First patch to
6900         make custom format strings work (not fully functional yet).
6901
6902 2002/03/28  Nick Drochak <ndrochak@gol.com>
6903
6904         * IntegerFormatter.cs: Change class from internal to public.  Add
6905         necessary [CLSCompliant(false)] attributes.
6906
6907 2002-03-27  Duco Fijma  <duco@lorentz.xs4all.nl>
6908         * _AppDomain.cs, AppDomain.cs: renamed method GetDate to GetData
6909         (was a typo)
6910
6911 2002-03-28  Nick Drochak  <ndrochak@gol.com>
6912
6913         * Type.cs: Added MonoTODO tags on members that have FIXME, etc.
6914
6915 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
6916
6917         * Console.cs: Modified to get std handles from MonoIO.
6918         * Environment.cs: removed PAL dependencies.
6919
6920 2002-03-25  Miguel de Icaza  <miguel@ximian.com>
6921
6922         * String.cs (System): Removed internal enumeration, because
6923         bootstrapping the corlib at this point does not support
6924         enumerations. 
6925
6926         * IntPtr.cs: Temporary work-around until I fix the assembly
6927         attributes bug.
6928
6929 2002-03-24  Martin Baulig  <martin@gnome.org>
6930
6931         * Enum.cs (GetValues): According to the docu this is sorted after
6932         values, not names.
6933
6934         * String.cs (System): Removed enumeration, because it is pretty
6935         hard to support enumerations in /nostdlib mode for the core types.
6936
6937 Tue Mar 19 18:18:49 CET 2002 Paolo Molaro <lupus@ximian.com>
6938
6939         * Array.cs: move error handling in the catch block.
6940         * MulticastDelegate.cs: remove == and != operators that were
6941         removed with the delegate changes (when you add stuff, please do not
6942         remove existing functionality!).
6943         * Type.cs: if a property is not found in a type, search for it
6944         in the parent types, too.
6945
6946 2002-03-18  Dan Lewis <dihlewis@yahoo.co.uk>
6947         
6948         * Math.cs: changed to use icall instead of PAL.
6949
6950 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
6951
6952         * Double.cs: added check for NaN (Bug [22082])
6953
6954 2002-03-19  Nick Drochak  <ndrochak@gol.com>
6955
6956         * Enum.cs (Equals): check for null and throw if it is.
6957         * Enum.cs (Format): check for null parameters and throw if necessary.
6958         This method still needs more argument checking.
6959
6960 2002-03-18  Dietmar Maurer  <dietmar@ximian.com>
6961
6962         * Enum.cs (Equals): check if Enums are of the same type
6963
6964 2002-03-18  Nick Drochak  <ndrochak@gol.com>
6965
6966         * Double.cs: Explicitly handle comparisons in CompareTo() for
6967         Positive/Negative Infinity and NaN. Unit Test now passes on Linux.
6968
6969         * Enum.cs(CompareTo): Check types of values before trying to compare.
6970         Throw exceptions if types are invalid or don't match.
6971
6972 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
6973
6974         * Array.cs: Add some extra debugging information.
6975
6976 2002-03-15  Nick Drochak  <ndrochak@gol.com>
6977
6978         * Array.cs: Added IList and IEnumerable. 
6979
6980 2002-03-14  Miguel de Icaza  <miguel@ximian.com>
6981
6982         * UInt64.cs, UInt32.cs, UInt16.cs: Mark public parse methods as
6983         NonCLSCompliant. 
6984
6985 2002-03-14  Dietmar Maurer  <dietmar@ximian.com>
6986
6987         * Delegate.cs (Equals): also compare method_ptr 
6988         (GetHashCode): returm method_ptr as hash
6989
6990 2002-03-13  Duco Fijma  <duco@lorentz.xs4all.n>
6991         * TimeSpan.cs: removed the use of Custom Numeric Format Strings,
6992         such as 42.ToString("0000000"), as these are (currently) not implemented
6993         in System.IntegerFormatter. TimeSpan luckely can do with Standard
6994         Numeric Format Strings, such as 42.ToString("D7").
6995
6996 2002-03-12  Duncan Mak  <duncan@ximian.com>
6997
6998         * FieldAccessException.cs: 
6999         * MethodAccessException.cs: 
7000         * PlatformNotSupportedException.cs: Inherit from
7001         MemberAccessException, not SystemException.
7002
7003         * ObsoleteAttribute.cs: Made Message and IsError properties
7004         instead of fields.
7005
7006 Tue Mar 12 19:21:18 CET 2002 Paolo Molaro <lupus@ximian.com>
7007
7008         * GC.cs: make SuppressFinalize() a nop.
7009         * Delegate.cs: fix == operator.
7010
7011 2002-03-13  Nick Drochak  <ndrochak@gol.com>
7012
7013         * Enum.cs: Add IConvertible methods. Cyclic dependancy fixed in the
7014         runtime that goes with this patch.
7015
7016 2002-03-10  Martin Baulig  <martin@gnome.org>
7017
7018         * Int32.cs (Parse): Correctly parse negative numbers.
7019
7020 2002-03-08  Martin Baulig  <martin@gnome.org>
7021
7022         * String.cs (Split): Really fix it this time. Also adding several new
7023         testcase to the testsuite.       
7024
7025 2002-03-08  Martin Baulig  <martin@gnome.org>
7026
7027         * Array.cs (Copy): Optimized: removed duplicate null check, removed
7028         two duplicate GetLowerBound() calls and one duplicate IsValueType.
7029
7030 Fri Mar 8 18:49:19 CET 2002 Paolo Molaro <lupus@ximian.com>
7031
7032         * Object.cs: commit my hacked GetHashCode(): it's good enough for now.
7033         * String.cs: use the dumb code for IndexOf(string): this is worth
7034         15-20 % speedup in mcs compile with mint.
7035
7036 Fri Mar 8 12:45:44 CET 2002 Paolo Molaro <lupus@ximian.com>
7037
7038         * String.cs: revert change to Split() that broke the compiler (hi martin!:-).
7039
7040 2002-03-07  Martin Baulig  <martin@gnome.org>
7041
7042         * String.cs (Join): Throw an ArgumentNullException.
7043         (LastIndexOf (string,int,int)): This method does a backwards search,
7044         so startIndex points to the end of value, not to its beginning. Don't
7045         throw an exception if startIndex equals this.Length. Always return -1
7046         if startIndex is smaller than the length of value.
7047         (Replace (string,string)): Replace all occurences of oldValue.
7048         If newValue is null, all occurences of oldValue are to be removed.
7049         (Split (char[],int)): Return an empty array if maxCount is zero, throw
7050         an ArgumentOutOfRangeException if it's less than zero. Return maxValue
7051         elements, not maxValue+1.
7052
7053 Thu Mar 7 17:16:06 CET 2002 Paolo Molaro <lupus@ximian.com>
7054
7055         * MonoType.cs: make GetEvents() an internal call.
7056         * MulticastDelegate.cs: copy the passed in array.
7057
7058 2002-03-06  Martin Baulig  <martin@gnome.org>
7059
7060         * Array.cs (Copy): Use FastCopy when appropriate and do correct
7061         exception handling.
7062
7063 2002-03-06  Duco Fijma  <duco@lorentz.xs4all.nl>
7064         * CharEnumerator.cs: fixes to CharEnumertor.MoveNext, fixing 
7065         some of the failures found be new tests (see ChangeLog in 
7066         Test/System). Comments added to this method, based on
7067         the representation invariant of this class, that (try to) explain
7068         why it now should be correct.
7069
7070 2002-03-06  Dietmar Maurer  <dietmar@ximian.com>
7071
7072         * Int64.cs (Parse): bug fix for max. negative value. 
7073
7074 2002-03-07  Nick Drochak  <ndrochak@gol.com>
7075
7076         * RuntimeTypeHandle.cs: Add Serializable attribute as the docs say.
7077         I need to understand what the difference between the attribute and
7078         the interface is.
7079
7080 2002-03-06  Martin Baulig  <martin@gnome.org>
7081
7082         * Array.cs (Copy): Always throw an ArrayTypeMismatchException, not
7083         an InvalidCastException if the widening conversion failed. See
7084         testcases #M94-#M96.
7085
7086         * Array.cs (CopyTo): Bug fix from Ajay Dwivedi, correctly handle
7087         arrays with non-zero lower bounds. Also adding testcases #F10-#F13
7088         for this.
7089
7090         * Array.cs (CopyTo): Reverted my last change, it was incorrect.
7091         (Copy): Actually allow copying multi-dimensional arrays.
7092
7093 2002-03-05  Duncan Mak  <duncan@ximian.com>
7094
7095         * Convert.cs:
7096         (DBNull) Added the missing field.
7097         (IsDBNull) Fixed typo.
7098         (ToByte (string, int)) Implemented.
7099         (ToString (byte, int)) Implemented.
7100         (ConvertToBase)
7101         (BuildConvertedString) internal functions used for converting values to
7102         a specific base.
7103
7104         * Int16.cs: 
7105         * Int32.cs:
7106         * Int64.cs:
7107         * Single.cs:
7108         * UInt16.cs: 
7109         * UInt32.cs: Implemented the IConvertible interface.    
7110
7111         * CharEnumerator.cs: Renamed to variables to be clearer and
7112         changed some of the tests to conform to the 1.0 spec.
7113
7114 2002-03-06  Martin Baulig  <martin@gnome.org>
7115
7116         * Array.cs (Copy): Calculate absolute array position here and use
7117         GetValueImpl() and SetValueImpl() with that position. We can now
7118         copy multi-dimensional arrays.
7119         (CopyTo): Small bug fix.
7120
7121 2002-03-05  Duco Fijma  <duco@lorentz.xs4all.nl>
7122
7123         * Version.cs: CompareTo changed according the LAMESPEC discovered by 
7124         Nick (See VersionTest.cs).
7125         * CharEnumerator.cs: fixed two bugs in MoveNext. It had an off-by-one
7126         error comparing the current position (idx) against the length of the
7127         string iterated and it set idx to an unrecognized special value (-2)
7128
7129 Tue Mar 5 17:34:14 CET 2002 Paolo Molaro <lupus@ximian.com>
7130
7131         * SByte.cs, UInt64.cs: implement IConvertible interface. Nobody wants
7132         to do this dirty work, but someone has to do it (and I need it to pass
7133         the "200 sample tests compiled on linux" mark).
7134
7135 2002-03-06  Nick Drochak  <ndrochak@gol.com>
7136
7137         * Attribute.cs
7138         * DecimalFormatter.cs
7139         * Delegate.cs
7140         * Double.cs
7141         * GC.cs
7142         * Int16.cs
7143         * Int32.cs
7144         * MonoType.cs
7145         * RuntimeMethodHandle.cs
7146         * RuntimeTypeHandle.cs
7147         * String.cs
7148         * Type.cs:
7149                 Add [MonoTODO]'s to places where we currently throw a
7150                 NotImplementedException.
7151
7152 2002-03-05  Dietmar Maurer  <dietmar@ximian.com>
7153
7154         * Int16.cs (Parse): do not overflow on max negative value
7155
7156         * Int32.cs (Parse): do not overflow on max negative value
7157
7158 Mon Mar 4 20:36:05 CET 2002 Paolo Molaro <lupus@ximian.com>
7159
7160         * Type.cs: fixed IsClass.
7161         * MonoType.cs: fixed MemberType, IsPrimitiveImpl, IsPointerImpl,
7162         IsByRefImpl. Added GetInterfaces().
7163         * IServiceProvider.cs: compilation fix.
7164
7165 Mon Mar 4 18:37:03 CET 2002 Paolo Molaro <lupus@ximian.com>
7166
7167         * Array.cs: allow copying an empty array to an empty array.
7168
7169 Mon Mar 4 17:59:16 CET 2002 Paolo Molaro <lupus@ximian.com>
7170
7171         * String.cs: fixed LastIndexOf (string) to do a bit of argument
7172         checking.
7173
7174 2002-03-04  Duco Fijma  <duco@lorentz.xs4all.nl>
7175         * Version.cs: many fixes to failures found by the newly created
7176         test cases for this class. Specifically, the CompareTo member
7177         returned wrong values due to the use of Int32.MaxValue as a special
7178         value indicating an "undefined" version component. Also implemented the
7179         missing operators (==, <, >, etc.), one missing constructor and
7180         and some exception throwing.
7181
7182 2002-03-04  Nick Drochak  <ndrochak@gol.com>
7183
7184         * IServiceProvider.cs: Add missing attribute: ComVisible(false)
7185         * Attribute.cs: Add missing attributes: Serializable and
7186         AttributeUsage(AttributeTargets.All)
7187
7188 Mon Mar 4 11:26:49 CET 2002 Paolo Molaro <lupus@ximian.com>
7189
7190         * MonoType.cs: implemented GetConstructors(), GetFields(),
7191         GetMethods(), GetProperties().
7192         * Object.cs: added debugging icall obj_address().
7193         * Type.cs: fixed the binding flags for some Get* methods.
7194         Implemented FindMembers() as calls to the specific GetMember
7195         methods.
7196
7197 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
7198         * BitConverter.cs: fixed one little bug: ToString(s, n, 0) 
7199         should give an exception for n>=s.Length.
7200
7201 2002-03-01  Martin Baulig  <martin@gnome.org>
7202
7203         * Array.cs: More argument checking and bug fixing.
7204
7205 2002-03-01  Miguel de Icaza  <miguel@ximian.com>
7206
7207         * BitConverter.cs: Indentation match
7208
7209         * AppDomain.cs: Added MonoTODOs to this too.
7210
7211         * Buffer.cs: Added MonoTODOs to this.
7212
7213 2002-03-01  Martin Baulig  <martin@gnome.org>
7214
7215         * Array.cs: Added argument checking to all methods where it was missing.
7216
7217 2002-03-01  Duco Fijma  <duco@lorentz.xs4all.nl>
7218
7219         * BitConverter.cs: Fixed bugs in ToString methods
7220
7221 Fri Mar 1 15:20:00 CET 2002 Paolo Molaro <lupus@ximian.com>
7222
7223         * MulticastDelegate.cs: implement operators so mcs3 can be used on linux.
7224
7225 2002-03-01  Nick Drochak  <ndrochak@gol.com>
7226
7227         * BitConverter.cs: Throw ArgumentException like mscorlib, instead of
7228         ArgumentOutOfRangeException like the docs say.
7229
7230 2002-03-01  Martin Baulig  <martin@gnome.org>
7231
7232         * Enum.cs (CompareTo): Correctly override this method from IComparable.
7233
7234         * Console.cs (setIn, setOut, setError): It's called SetIn, SetOut, SetError.
7235
7236 2002-02-28  Martin Baulig  <martin@gnome.org>
7237
7238         * String.cs: This file now passes the testsuite on Linux :-)
7239         
7240         * String.cs (Intern, IsInterned): The interncalls are now called _Intern and _IsInterned;
7241         make them private and provide C# wrappers which do proper argument checking.
7242
7243         * String.cs (Format): Correctly handle escaped brackets.
7244
7245         * String.cs (_CompareChar): New internal function which compares two chars.
7246         (_Compare): Provide an internal compare method which can do all sorts of
7247         comparision and call it from all the Compare() methods. Also fixed a lot of
7248         bugs here, this code now actually passes the testsuite.
7249
7250 2002-02-28  Duncan Mak  <duncan@ximian.com>
7251
7252         * Convert.cs: Added the missing methods. The new class status page
7253         kicks ass, it even found my typos! Woohoo!
7254         (ConvertFromBase): Moved the Exception throwing in here and
7255         removed the other occurances so it's all centralized now.
7256         (ISDBNull): Implemented.
7257         (GetTypeCode): Implemented.
7258
7259 2002-02-27  Duco Fijma  <duco@lorentz.xs4all.nl>
7260         * Guid.cs: Guid.ToString("") and Guid.ToString(null) is now understood as Guid.ToString("D") 
7261         just as in mscorlib. There is (probably) a documentation bug in the MS FrameWork SDK, which
7262         states that a lacking format should be interpreted as "N".  
7263         Also added [Serializable] attribute
7264         * TimeSpan.cs: some formatting and added the [Serializable] attribute
7265
7266 2002-02-26  Duncan Mak  <duncan@ximian.com>
7267
7268         * WeakReference.cs: Committed for Ajay Kumar Dwivedi.   
7269
7270 2002-02-26  Martin Baulig  <martin@gnome.org>
7271
7272         * TimeZone.cs: Use an internal enum rather than magic numbers to access the
7273         fields of the interncall GetTimeZoneData.
7274
7275         * DateTime.cs: Implemented Parse and fixed a few bugs.
7276
7277         * String.cs (TrimStart): Small fix.
7278
7279 2002-02-26  Martin Baulig  <martin@gnome.org>
7280
7281         * DateTime.cs: ParseExact is now fully functional.
7282
7283         * String.cs (TrimEnd): Small fix.
7284
7285 2002-02-26  Duco Fijma <duco@lorentz.xs4all.nl>
7286         * TimeSpan.cs: Added method TimeSpan.FromMilliseconds, mysteriously 
7287         missing for about six months.
7288
7289 Tue Feb 26 14:21:19 CET 2002 Paolo Molaro <lupus@ximian.com>
7290
7291         * UInt64.cs: fixed Parse method () to handle some of the NumberStyle flags.
7292
7293 2002-02-26  Martin Baulig  <martin@gnome.org>
7294
7295         * DateTime.cs: Miguel already committed this, but there was still a
7296         ChangeLog entry for this missing ....
7297         We're now reusing functionality from TimeSpan, printing dates is
7298         fully implemented, currently working on parsing.
7299
7300         * TimeZone.cs: Fully implemented this. There's a new InternCall in the
7301         runtime for this.
7302
7303 Fri Feb 22 18:47:08 CET 2002 Paolo Molaro <lupus@ximian.com>
7304
7305         * MonoType.cs: disable constructor.
7306         * Object.cs: make GetType() an internalcall.
7307         * Type.cs: added correct bindingflags to GetMethods ().
7308         All such calls should be reviewed to use the correct flags.
7309
7310 Thu Feb 21 19:23:46 CET 2002 Paolo Molaro <lupus@ximian.com>
7311
7312         * Type.cs, MonoType.cs: type_is_subtype_of () changed to include extra
7313         argument.
7314
7315 Thu Feb 21 16:56:51 CET 2002 Paolo Molaro <lupus@ximian.com>
7316
7317         * Type.cs: implemented IsAssignableFrom.
7318
7319 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
7320         * Guid.cs: fixed Guid.Guid(string) ctor. Changed format:
7321         "{0xdddddddd,0xdddd,0xdddd,{0xdd},{0xdd},{0xdd},{0xdd},{0xdd},{0xdd}}" 
7322         to "{0xdddddddd,0xdddd,0xdddd,{0xdd,0xdd,0xdd,0xdd,0xdd,0xdd}}" 
7323         The former is documented by Microsoft. The latter is how they
7324         actually implemented it in mscorlib:-)
7325
7326 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
7327
7328         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
7329         runtime.
7330         * MonoType.cs: Implemented custom attributes methods.
7331
7332
7333 2002-02-21  Duco Fijma <duco@lorentz.xs4all.nl>
7334         * Guid.cs: 
7335
7336 Tue Feb 19 20:34:35 CET 2002 Paolo Molaro <lupus@ximian.com>
7337
7338         * MonoCustomAttrs.cs: hooks to get the custom attributes from the
7339         runtime.
7340         * MonoType.cs: Implemented custom attributes methods.
7341
7342 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
7343
7344         * Array.cs (CopyTo): use GetLength() instead of GetUpperBound() 
7345
7346 2002-02-19  Duncan Mak  <duncan@ximian.com>
7347
7348         * Convert.cs: Finished up the missing methods in Convert. Added a
7349         new private method ConvertFromBase.
7350
7351 2002-02-19  Dietmar Maurer  <dietmar@ximian.com>
7352
7353         * String.cs: impl. IConvertible interface
7354
7355 2002-02-18  Duco Fijma <duco@lorentz.xs4all.nl>
7356         * Guid.cs: actual implementation for Guid.Guid(string) Ctor
7357
7358 2002-02-18  Duncan Mak  <duncan@ximian.com>
7359
7360         * Convert.cs: Changed from using Type.GetType (string) to just
7361         typeof (). Probably will speed things up a bit?         
7362
7363 2002-02-18  Ajay Kumar Dwivedi <AjayKumar.Dwivedi@dresdner-bank.com>
7364
7365         * Array.cs:         
7366         1. Fix for GetUpperBound to return correct values
7367         2. made some Properties virtual
7368         3. Adds IsFixedSize and IsReadOnly properties.
7369         4. changes CreateInstance(Type,int[],int[]) to throw Exception
7370         when third arg is null. InternalCall CreateInstance changed to  
7371         CreateInstanceImpl
7372         5. Fixed array.GetUpperBound at a couple of places
7373         6. IndexOf and LastIndexOf now use Object.Equals instead of "=="
7374         7. Added two FIXME's in BinarySearch functions.
7375
7376 2002-02-17  Duncan Mak  <duncan@ximian.com>
7377
7378         * TimeZone.cs:  Applied the rest of Ajay's patch for    
7379         IsDaylightSavingTime. Thanks a lot for the nice explanation of how
7380         it works!
7381
7382 2002-02-17  Duco Fijma  <duco@lorentz.xs4all.nl>
7383         * Guid.cs: added stub for Guid(string) ctor
7384
7385 2002-02-17  Duncan Mak  <duncan@ximian.com>
7386
7387         * Convert.cs: Near-complete implementation of Convert.cs
7388
7389         Added all the To* methods taking (object) and
7390         (object, IFormatProvider) as parameters.
7391
7392         Added [CLSCompliant (false)] attributes to methods dealing with
7393         unsigned types.
7394
7395         Added the missing section on converting to and from DateTime. Only
7396         6 missing methods, all marked with MonoTODOs. Will tackle them later.           
7397
7398 2002-02-16  Duncan Mak  <duncan@ximian.com>
7399
7400         * TimeZone.cs: patch from Ajay Kumar Dwivedi (adwiv@yahoo.com) to
7401         make IsDaylightSavingTime (DateTime) call 
7402         IsDaylightSavingTime (DateTime, DaylightTime).  
7403         
7404         Added internal class CurrentTimeZone from Ajay. It needs more work
7405         to fill in the appropriate internal calls.
7406         
7407 Sat Feb 16 12:41:41 CET 2002 Paolo Molaro <lupus@ximian.com>
7408
7409         * Type.cs: fix IsClass.
7410
7411 Sat Feb 16 12:02:02 CET 2002 Paolo Molaro <lupus@ximian.com>
7412
7413         * String.cs: fix Trim().
7414
7415 Fri Feb 15 21:02:46 CET 2002 Paolo Molaro <lupus@ximian.com>
7416
7417         * String.cs: fix more off by one errors.
7418
7419 Thu Feb 14 18:54:09 CET 2002 Paolo Molaro <lupus@ximian.com>
7420
7421         * MonoType.cs: fix IsValueTypeImpl.
7422         * Type.cs: fix IsEnum. Implement Equals methods.
7423
7424 Wed Feb 13 21:50:13 CET 2002 Paolo Molaro <lupus@ximian.com>
7425
7426         * Int32.cs: implement IConvertible interface.
7427         
7428 2002-02-12  Duncan Mak  <duncan@ximian.com>
7429
7430         * TimeZone.cs: Implemented and added to CVS.
7431
7432 2002-02-11  Duncan Mak  <duncan@ximian.com>
7433
7434         * Convert.cs: Implemented the ChangeType () methods.
7435
7436 Mon Feb 11 19:48:58 CET 2002 Paolo Molaro <lupus@ximian.com>
7437
7438         * Array.cs: make Clone() an internal call.
7439
7440 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
7441         * Changed Guid.NewGuid so that it can use both System.Random and 
7442           System.Security.Cryptography.RandomNumberGenerator
7443
7444 2002-02-09  Duco Fijma <duco@lorentz.xs4all.nl>
7445         * First version of Guid.NewGuid
7446
7447 2002-02-08  Duncan Mak  <duncan@ximian.com>
7448
7449         * RuntimeArgumentHandle.cs: Added to CVS.
7450
7451 Fri Feb 8 19:14:54 CET 2002 Paolo Molaro <lupus@ximian.com>
7452
7453         * CrossAppDomainDelegate.cs, AssemblyLoadEventHandler.cs,
7454         UnhandledExceptionEventHandler.cs: added delegates.
7455
7456 Fri Feb 8 18:06:20 CET 2002 Paolo Molaro <lupus@ximian.com>
7457
7458         * MarshalByRefObject.cs: add ToString () method
7459         (apparently needed by nunit).
7460         * _AppDomain.cs: uncomment ToString(): dietmar fixed the bug triggered
7461         by it in the runtime.
7462
7463 2002-02-08  Dan Lewis <dihlewis@yahoo.co.uk>
7464         
7465         * String.cs (Format): implemented
7466
7467 2002-02-07  Duncan Mak  <duncan@ximian.com>
7468         
7469         * DuplicateWaitObjectException:
7470         * InvalidCastException:
7471         * NotImplementedException:
7472         * NotSupportedException:
7473         * NullReferenceException:
7474         * OutOfMemoryException:
7475         * OverflowException:
7476         * RankException:
7477         * StackOverflowException.cs:
7478         * UnauthorizedAccessException: Added missing constructor used for serialization.
7479
7480 2002-02-07  Dietmar Maurer  <dietmar@ximian.com>
7481
7482         * String.cs (System.Compare): bug fix 
7483
7484 2002-02-06  Dietmar Maurer  <dietmar@ximian.com>
7485
7486         * Enum.cs (Parse,  GetHashCode): impl. 
7487
7488 2002-02-05  Duncan Mak  <duncan@ximian.com>
7489
7490         * DBNull.cs: This is my first crack at the DBNull class. I think I
7491         actually got most of the IConvertible methods right, but I haven't
7492         done the research to test whether or not this is the correct
7493         behavior. IConvertible.ToType () is the most iffy of all, IMHO.
7494
7495         * DllNotFoundException.cs: Inherits from TypeLoadException, not SystemException.
7496
7497 2002-02-05  Dietmar Maurer  <dietmar@ximian.com>
7498
7499         * Enum.cs: added more functionality (GetName, ToObject, Equals)
7500
7501 2002-01-31  Duncan Mak  <duncan@ximian.com>
7502
7503         * InvalidOperationException.cs:
7504         * NotFiniteNumberException.cs:
7505         * ObjectDisposedException.cs:
7506         * TypeInitializationException.cs: Added missing bits for serialization/
7507         
7508         * AppDomainUnloadedException.cs:
7509         * ApplicationException.cs:
7510         * ArgumentOutOfRangeException.cs:
7511         * ArithmeticException.cs:
7512         * ArrayTypeMismatchException:
7513         * BadImageFormatException.cs:
7514         * Exception.cs:
7515         * MissingMemberException.cs:
7516         * TypeLoadException.cs: Added missing bits for serialization.
7517
7518 2002-01-30  Duco Fijma <duco@lorentz.xs4all.nl>
7519         * Guid.cs: implemented everything but Guid.NewGuid
7520
7521 Tue Jan 29 22:32:36 CET 2002 Paolo Molaro <lupus@ximian.com>
7522
7523         * _AppDomain.cs: remove ToString() method: it doesn't seem right 
7524         to have it in this interface and it screws up the method vtable setup.
7525
7526 2002-01-28  Andrei Zmievski <andrei@php.net>
7527
7528         * Double.cs: implemented IConvertible interface.
7529
7530 2002-01-28  Miguel de Icaza  <miguel@ximian.com>
7531
7532         * ArgumentException.cs: Implement serialization constructor.
7533         (GetObjectData): Implement serializer.
7534         
7535         * ArgumentNullException.cs: Implement serialization constructor.
7536
7537         * Exception.cs: Implement serialization constructor.
7538         (GetObjectData): Implement serializer.
7539
7540 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
7541
7542         * DateTime.cs (UnixEpoch): The Begining of the Unix epoch.
7543
7544 2002-01-23  Duncan Mak  <duncan@ximian.com>
7545
7546         * EntryPointNotFoundException.cs:
7547         * FormatException: Added missing constructor and related bits.
7548
7549         * TypeLoadException: Added missing constructor, methods and properties.
7550
7551 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
7552
7553         * AppDomain.cs (GetAssemblies): Use foreach construct instead of
7554         manually getting the enumerator.
7555
7556         (AppDomain.AppDomain): Prime the loaded assemblies with the
7557         assemblies loaded by the runtime in our behalf.
7558
7559         * AppDomainSetup.cs: Remove private keyword, that is the default.
7560         Add a new property DisallowPublisherPolicy.
7561
7562         * AppDomain.cs (AppDomain.GetAssemblies): Implement.
7563
7564 Tue Jan 22 22:51:48 CET 2002 Paolo Molaro <lupus@ximian.com>
7565
7566         * MonoType.cs, Type.cs: many updates, corrected implementation,
7567         completed stubs.
7568
7569 2002-01-20  Andrei Zmievski <andrei@php.net>
7570
7571         * Byte.cs:
7572         * Char.cs: implemented IConvertible interface.
7573
7574         * Boolean.cs: use our own ToString() method directly.
7575
7576 2002-01-20  Duncan Mak  <duncan@ximian.com>
7577
7578         * Files I commited recently: Fixed indentation style.
7579
7580 2002-01-20 Nick Drochak  <ndrochak@gol.com>
7581
7582         * SerializableAttribute.cs: this attrib can be used on enums, structs, 
7583         and delegates too. Added the appropriate usage flags.
7584
7585 2002-01-18  Duncan Mak  <duncan@ximian.com>
7586
7587         * CharEnumerator.cs: Implemented.
7588         * String.cs (System): Fixed the GetEnumerator () method(s).
7589
7590         * ObsoleteAttribute.cs:
7591         * STAThreadAttribute.cs:
7592         * MTAThreadAttribute.cs:
7593         * ThreadStaticAttribute.cs:
7594         * LoaderOptimizationAttribute.cs:
7595         * PlatformNotSupportedException.cs:
7596         * LoaderOptimization.cs: Added to CVS.
7597
7598 2002-01-18  Duncan Mak  <duncan@ximian.com>
7599
7600         * AppDomainUnloadedException.cs:
7601         * MethodAccessException.cs:
7602         * ContextMarshalException.cs:
7603         * CannotUnloadAppDomainException.cs:
7604         * DllNotFoundException.cs:
7605         * EntryPointNotFoundException.cs:
7606         * FieldAccessException.cs:
7607         * TypeUnloadedException.cs:
7608         * MissingFieldException.cs: Added to CVS.
7609
7610         * ApplicationException.cs: 
7611         * MemberAccessException.cs:
7612         * MissingMemberException.cs
7613         * MissingMethodException.cs:
7614         * SystemException.cs: Added [Serializable] attribute.
7615
7616         * Exception.cs: Added [Serializable] attribute, made properties
7617         'Message', 'Source' and 'StackTrace' virtual methods, per 1.0
7618         spec.
7619
7620         * ContextStaticAttribute.cs: Added [Serializable] attribute and
7621         put in the missing constructor.
7622
7623         * Environment.cs: Commented out references to
7624         EnvironmentPermissionAttribute, because they're just stubbed out
7625         right now and has no implementation.
7626
7627 2002-01-16  Andrei Zmievski <andrei@php.net>
7628
7629         * Boolean.cs: implemented IConvertible interface
7630
7631 2002-01-15  Nick Drochak  <ndrochak@gol.com>
7632
7633         * ResolveEventArgs.cs: class should derive from EventArgs.
7634
7635 2002-01-14  Miguel de Icaza  <miguel@ximian.com>
7636
7637         * String.cs (System): Use DefaultMemberName for the String class.
7638
7639 Mon Jan 14 17:06:40 CET 2002 Paolo Molaro <lupus@ximian.com>
7640
7641         * String.cs: use IndexerName in index char accessor.
7642
7643 Thu Jan 10 21:05:23 CET 2002 Paolo Molaro <lupus@ximian.com>
7644
7645         * MonoType.cs: add rank to MonoTypeInfo and implement GetArrayRank.
7646         * String.c: eliminate 64k+ method calls in search.
7647         * Type.cs: handle byref and array types in ToString ().
7648
7649 2002-01-09  Duco Fijma <duco@lorentz.xs4all.nl>
7650
7651         * Guid.cs: created first version
7652
7653 2002-01-10  Dietmar Maurer  <dietmar@ximian.com>
7654
7655         * MonoType.cs: added missing TypeAttributes to MonoTypeInfo 
7656
7657 Wed Jan 9 19:35:07 CET 2002 Paolo Molaro <lupus@ximian.com>
7658
7659         * MulticastDelegate.cs: add == and != operator stubs.
7660         * String.cs: check for null in == operator.
7661         * Type.cs: use a virtual method to get TypeAttributes.
7662
7663 Tue Jan  8 23:30:19 EST 2002 Matt Kimball <matt@kimball.net>
7664         * String.cs: Fixed several off-by-one errors in LastIndexOf* methods
7665
7666 2002-01-09  Nick Drochak  <ndrochak@gol.com>
7667         
7668         * Environment.cs: Comment out Security attribute and put a MonoTODO
7669         there as a reminder.  We need mcs magic to handle security attributes in
7670         corlib.
7671
7672 2002-01-07  Duco Fijma <duco@lorentz.xs4all.nl>
7673         * Created IAppDomainSetup.cs
7674
7675 2002-01-06  Duco Fijma <duco@lorentz.xs4all.nl>
7676         * Created System._AppDomain interface in _AppDomain.cs
7677
7678 2002-01-06  Nick Drochak  <ndrochak@gol.com>
7679
7680         * ResolveEventArgs.cs: New File, completely implemented! ;)
7681
7682 Sat Jan 5 15:53:50 CET 2002 Paolo Molaro <lupus@ximian.com>
7683
7684         * Enum.cs: dummy ToString impl.
7685         * String.cs: dummy format implementations to get compiler errors
7686         somewhat working.
7687         * Type.cs: implemented filter delegates. FindMembers runs the filter, now.
7688
7689 2002-01-05  Ravi Pratap  <ravi@ximian.com>
7690
7691         * TODOAttribute.cs : Augment some more; provide two constructors
7692         with support for a comment too.
7693
7694 2002-01-05  Nick Drochak  <ndrochak@gol.com>
7695
7696         * Uncommented those MonoTODO's now that Ravi's got
7697         the class in there
7698
7699 2001-01-04  Ravi Pratap  <ravi@ximian.com>
7700
7701         * TODOAttribute.cs : Actually add this time ;-)
7702
7703         Change name to MonoTODO.
7704
7705 2002-01-04  Jeffrey Stedfast  <fejj@ximian.com>
7706
7707         * String.cs (Trim): Fixed a few logic bugs in the code that
7708         calculated how much to trim off the end of the string.
7709
7710 2001-01-04  Nick Drochak  <ndrochak@gol.com>
7711         
7712         * Commented out the [TODO] attributes for now.  We don't have the
7713         class written.  Also changed it to [MonoTODO]
7714
7715 2002-01-04  Ravi Pratap  <ravi@ximian.com>
7716
7717         * TODOAttribute.cs : Add. We use this attribute to tag all bits in
7718         our class libraries that are incomplete.
7719
7720         * Array.cs : Apply attribute wherever we find a FIXME which says
7721         we need something to be implemented there.
7722
7723         * Int32.cs : Ditto.
7724
7725         * MulticastDelegate.cs : Ditto.
7726
7727         * RuntimeFieldHandler.cs, RuntimeMethodHandle.cs,
7728         RuntimeTypeHandle.cs : Ditto.
7729
7730         * String.cs : Ditto.
7731
7732         * Type.cs : Ditto.
7733
7734         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs, Delegate.cs : Ditto.
7735
7736         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs, Single.cs, 
7737         UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
7738
7739         * Byte.cs, Char.cs, ContextBoundObject.cs, DateTime.cs,
7740         Delegate.cs : Ditto.
7741
7742         * Enum.cs, Environment.cs, Exception.cs, Int64.cs, SByte.cs,
7743         Single.cs, UInt16.cs, UInt32.cs, ValueType.cs: Ditto.
7744         
7745 Thu Jan 3 23:24:04 CET 2002 Paolo Molaro <lupus@ximian.com>
7746
7747         * Delegate.cs: add Remove() stub.
7748         * Enum.cs: add ToObject().
7749         * Type.cs: add IsEnum property.
7750
7751 2002-01-03  Kristian Rietveld  <kris@gtk.org>
7752
7753         * Convert.cs: add non-CLS-compliant ToBoolean methods for char,
7754         DateTime and object.
7755
7756 2001-12-30  Nick Drochak  <ndrochak@gol.com>
7757
7758         * Byte.cs (Parse): Add comments to aid in testing.
7759
7760 2001-12-21  Miguel de Icaza  <miguel@ximian.com>
7761
7762         * Char.cs (Parse): Implement.
7763
7764         * Byte.cs (Parse): Implement a fast parser.
7765         
7766         * SByte.cs (Parse): Implement a fast parser.
7767
7768         * UInt16.cs (Parse): Implement a fast parser.
7769         
7770         * Int16.cs (Parse): Implement a fast parser.
7771
7772         * UInt32.cs (Parse): Implement a fast parser.
7773
7774         * Int32.cs (Parse): Implement a fast parser.
7775
7776 Fri Dec 21 15:14:52 CET 2001 Paolo Molaro <lupus@ximian.com>
7777
7778         * Array.cs: fix null ref in sort code.
7779         * UInt64.cs: add bare-bones parse.
7780
7781 Thu Dec 20 15:29:52 CET 2001 Paolo Molaro <lupus@ximian.com>
7782         
7783         * Byte.cs: removed use of Regexes.
7784
7785 Tue Dec 18 18:39:54 CET 2001 Paolo Molaro <lupus@ximian.com>
7786
7787         * Enum.cs: implemented GetValues(), GetNames(), GetName(),
7788         IsDefined(), GetUnderlyingType().
7789         * String.cs: fix one instance of Compare().
7790         * Type.cs: implemented GetProperties(), GetProperty().
7791
7792 Thu Dec 13 20:10:57 CET 2001 Paolo Molaro <lupus@ximian.com>
7793
7794         * Array.cs: implement CopyTo ().
7795         * Char.cs: implement ToString ().
7796         * Exception.cs: bugfix.
7797         * Int32.cs: bare-bones Parse ().
7798         * MonoType.cs: query the needed info with an internalcall.
7799         * String.cs: speedups, bugfixes, reduced copies.
7800         * Type.cs: added missing fields. Implemented many of the Is*
7801         properties. Implemented GetMethod(), GetConstructor(), GetMethods(),
7802         GetFields(), FindMembers(), ToString().
7803         
7804 2001-12-11  Dick Porter  <dick@ximian.com>
7805
7806         * DateTime.cs: Implemented FromFileTime() and ToFileTime()
7807
7808         * Console.cs: Use handles rather than casting file descriptors
7809
7810 2001-12-08  Nick Drochak  <ndrochak@gol.com>
7811
7812         * Byte.cs (Parse): Start implementation. Parse(string) works, but
7813         now we need to handle other formats
7814
7815 2001-12-06  Dietmar Maurer  <dietmar@ximian.com>
7816
7817         * DateTime.cs: added an icall to GetNow()
7818
7819 2001-12-04  Dietmar Maurer  <dietmar@ximian.com>
7820
7821         * Double.cs: added the parse method from Bob Smith
7822
7823 2001-11-28  Miguel de Icaza  <miguel@ximian.com>
7824
7825         * UInt64.cs: ditto.
7826
7827         * UInt32.cs: ditto.
7828
7829         * Int32.cs (Int32.CompareTo): Fix because we can not just
7830         substract the values.
7831
7832         Return possitive value if the object is null.
7833
7834         * Boolean.cs: (Boolean.CompareTo): ditto.
7835
7836         * Int16.cs (Int16.CompareTo): ditto.
7837
7838         * Byte.cs (Byte.CompareTo): ditto.
7839
7840         * SByte.cs (SByte.CompareTo): ditto.
7841
7842         * Char.cs (Char.CompareTo): ditto.
7843         
7844         * Decimal.cs (Decimal.CompareTo): ditto.
7845
7846         * Int64.cs (Int64.CompareTo): ditto.
7847
7848         * Single.cs: Ditto.
7849
7850         * UInt16.cs: Ditto.
7851
7852 2001-11-28  Nick Drochak <ndrochak@gol.com>
7853
7854         * Byte.cs: Throw NotImplementedException for Parse.
7855
7856 2001-11-27  Derek Holden  <dholden@draper.com>
7857
7858         * IntegerFormatter.cs: Formatting of type "Number" was not
7859         using NumberFormatInfo.NumberNegativePattern.
7860
7861 2001-11-26  Dick Porter  <dick@ximian.com>
7862
7863         * LocalDataStoreSlot.cs: No need to delete a system TLS slot in
7864         the finalise routine any more
7865
7866 2001-11-21  Miguel de Icaza  <miguel@ximian.com>
7867
7868         * ApplicationException.cs: internationalize by adding calls to
7869         Locale.GetText ().  And throw NotImplementedExceptions on calls
7870         that we have to implement.
7871
7872         * Version.cs: Ditto.
7873
7874         * ValueType.cs: ditto.
7875
7876         * UnauthorizedAccessException.cs: ditto.
7877
7878         * UInt32.cs: ditto.
7879
7880         * UInt64.cs: ditto.
7881
7882         * UInt16.cs: ditto.
7883
7884         * TypeLoadException.cs: ditto
7885
7886         * TypeInitializationException.cs: ditto.
7887
7888         * Type.cs: ditto.
7889
7890         * TimeSpan.cs: ditto.
7891
7892         * SystemException.cs: ditto.
7893
7894         * String.cs: ditto.
7895
7896         * StackOverflowException.cs: ditto.x
7897
7898         * Single.cs: ditto.
7899
7900         * SByte.cs: ditto.
7901
7902         * RuntimeTypeHandle.cs: ditto.
7903
7904         * RuntimeMethodHandle.cs: ditto.
7905
7906         * RuntimeFieldHandle.cs: ditto.
7907
7908         * Random.cs: ditto.
7909
7910         * OutOfMemoryException.cs: ditto.
7911
7912         * OperatingSystem.cs: ditto.
7913
7914         * ObjectDisposedException.cs: ditto.
7915
7916         * NullReferenceException.cs: ditto.
7917
7918         * NotImplementedException.cs: ditto.
7919
7920         * NotFiniteNumberException.cs: ditto.o
7921
7922         * MulticastNotSupportedException.cs: ditto.
7923
7924         * MissingMethodException.cs: ditto.
7925
7926         * MemberAccessException.cs: ditto.
7927
7928         * Math.cs: ditto.
7929
7930         * InvalidCastException.cs: ditto.
7931
7932         * IntegerFormatter.cs: ditto.
7933
7934         * Int32.cs: ditto.
7935
7936         * Int16.cs: ditto.
7937
7938         * IndexOutOfRangeException.cs: ditto.
7939
7940         * Environment.cs: ditto
7941
7942         * Enum.cs: ditto.
7943
7944         * DuplicateWaitObjectException.cs: ditto.
7945
7946         * DivideByZeroException.cs: ditto.
7947
7948         * Delegate.cs: ditto
7949
7950         * DecimalFormatter.cs: ditto.
7951
7952         * Decimal.cs: ditto.
7953
7954         * DateTime.cs: ditto.
7955
7956         * Convert.cs: ditto.
7957
7958         * Char.cs: ditto.
7959
7960         * Byte.cs: ditto.
7961
7962         * Boolean.cs: ditto.
7963
7964         * ArrayTypeMismatchException.cs: ditto.
7965
7966         * ArithmeticException.cs: ditto.
7967
7968         * ArgumentOutOfRangeException.cs: ditto.
7969
7970         * ArgumentNullException.cs: ditto.
7971
7972         * Enum.cs: Make it derive from ValueType, add CompareTo method.
7973
7974         * Attribute.cs: Reformat.
7975
7976 2001-11-14  Miguel de Icaza  <miguel@ximian.com>
7977
7978         * Decimal.cs, Double.cs, Byte.cs, Char.cs, Int16, UInt16, Int32,
7979         UInt32, Int64, UInt64, SByte, Single (CompareTo): Throw the
7980         exception if the value is null too.
7981
7982         * Char.cs (CompareTo): ditto.
7983
7984         * ApplicationException.cs: Added constructor that does serialization.
7985
7986         * ParamArrayAttribute.cs: Define attribute correctly.
7987
7988 Wed Nov 14 16:31:19 CET 2001 Paolo Molaro <lupus@ximian.com>
7989
7990         * AppDomain.cs: rename dummy interface _AppDomain to AppDomain_Intf.
7991         * Array.cs: fix Array.Copy.
7992         * AssemblyLoadEventArgs.cs: rename field.
7993         * CLSCompliantAttribute.cs: use correct name for the class.
7994         * Char.cs: fix IsLetter.
7995         * Console.cs, DateTime.cs, Decimal.cs, IConvertible.cs, Math.cs,
7996         SByte.cs, UInt16.cs, UInt32.cs, UInt64.cs, UIntPtr.cs: CLSCompliant updates.
7997         * Convert.cs: CLSCompliant updates, add ChangeType() methods.
7998         * Delegate.cs: renamed target field to m_target.
7999         * Enum.cs: added missing methods.
8000         * MonoType.cs: add a constructor and some needed properties.
8001         * Object.cs: implement GetType().
8002         * String.cs: CLSCompliant updates. Fixes everywhere to remove the
8003         ending 0 char.
8004         * Type.cs: add missing methods/properties.
8005
8006 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
8007
8008         * AttributeUseage.cs: Should define AttributeUsageAttribute.
8009
8010         * CLSCompliant.cs: Marked with AttributeUsage attribute.
8011
8012         * Decimal.cs: Fixed CLSCompliant attributes.
8013
8014         * Type.cs: changed _impl to internal (needs to be accessable by
8015         subclasses).
8016
8017         (TypeHandle): Marked as abstract, implementation removed.
8018
8019         (IsNotPublic, IsPublic, GetMethods, GetPropery, GetConstructor,
8020         GetMethod): Added stub implementations so NUnit would link against
8021         corlib
8022
8023 Tue Nov 6 09:11:43 CET 2001 Paolo Molaro <lupus@ximian.com>
8024
8025         * AppDomain.cs: use an internal constructor for AssemblyBuilder.
8026
8027 2001-11-05  Miguel de Icaza  <miguel@ximian.com>
8028
8029         * NonSerializedAttribute.cs: Add AttributeUsage rules for this
8030         attribute. 
8031
8032 Fri Nov 2 18:23:15 CET 2001 Paolo Molaro <lupus@ximian.com>
8033
8034         * String.cs: fix a couple of bugs.
8035         * AppDomain.cs: use new AppBuilder constructor.
8036         * Buffer.cs, GC.cs, NonSerializedAttribute.cs,
8037         NotImplementedException.cs, ObjectDisposedException.cs,
8038         UnauthorizedAccessException.cs: add implementation.
8039         * OverflowException.cs: fix class name.
8040
8041 2001-10-28  Jeffrey Stedfast  <fejj@ximian.com>
8042
8043         * String.cs: Don't use a terminating nil char for our internal
8044         array.
8045
8046 2001-10-27  Miguel de Icaza  <miguel@ximian.com>
8047
8048         * Delegate.cs (Delegate.CombineImpl): Implement.
8049         (Delegate.Combine): Implement.
8050
8051         * MulticastDelegate.cs (MulticastDelegate.Equals): Implement.
8052
8053         (MulticastDelegate.CombineImpl): This was not as trivial as I
8054         thought. 
8055
8056         * ContextStaticAttribute.cs: Added AttributeUsage to
8057         ContextStaticAttribute. 
8058
8059         * FlagsAttribute.cs: Add AttributeUsage to FlagsAttribute
8060
8061 2001-10-15  Martin Weindel <martin.weindel@t-online.de>
8062
8063         * added Decimal.cs * added DecimalFormatter.cs (internal class
8064         used from System.Decimal)
8065
8066 2001-10-11  Thomas Neidhart <tome@sbox.tugraz.at>
8067
8068         * Convert.cs: Added methods for Base64 transforming just used the
8069           existing System.Security.Cryptography.ToBase64Transform, should
8070           be changed to use a stand-alone class, e.g. Base64Encoder
8071           
8072 2001-10-10  Derek Holden  <dholden@draper.com>
8073
8074         * IntegerFormatter.cs: Added. Implements ToString for all the
8075         integer data types for all the format types.
8076
8077         * Byte.cs: Using IntegerFormatter for ToString's.
8078
8079         * SByte.cs: Using IntegerFormatter for ToString's.
8080
8081         * Int16.cs: Using IntegerFormatter for ToString's.
8082
8083         * Int32.cs: Using IntegerFormatter for ToString's.
8084
8085         * Int64.cs: Using IntegerFormatter for ToString's.
8086
8087         * UInt16.cs: Using IntegerFormatter for ToString's.
8088
8089         * UInt32.cs: Using IntegerFormatter for ToString's.
8090
8091         * UInt64.cs: Using IntegerFormatter for ToString's.
8092
8093 2001-10-07  Miguel de Icaza  <miguel@ximian.com>
8094
8095         * Exception.cs: Implement bits of serialization.
8096
8097         * RuntimeFieldHandle.cs: Implement Serialization features.
8098
8099         * Type.cs: Implement TypeHandle property.
8100
8101 2001-09-28  Dick Porter  <dick@ximian.com>
8102
8103         * LocalDataStoreSlot.cs: Implemented
8104
8105 Tue Sep 25 19:58:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
8106
8107         * String.cs: fix off-by-one error in Trim().
8108
8109 Tue Sep 25 18:52:14 CEST 2001 Paolo Molaro <lupus@ximian.com>
8110
8111         * Type.cs: added GetType () method.
8112
8113 Tue Sep 25 17:29:02 CEST 2001 Paolo Molaro <lupus@ximian.com>
8114
8115         * MissingMethodException.cs, MissingMemberException.cs,
8116         MemberAccessException.cs: added.
8117
8118 Tue Sep 25 16:46:43 CEST 2001 Paolo Molaro <lupus@ximian.com>
8119
8120         * String.cs: don't access the string array out of bounds in
8121         LastIndexOf.  * Type.cs: fix return type of the Assembly property.
8122
8123 Mon Sep 24 20:35:24 CEST 2001 Paolo Molaro <lupus@ximian.com>
8124
8125         * String.cs: make Intern and IsIntern internalcalls.
8126
8127 2001-09-13  Dick Porter  <dick@ximian.com>
8128
8129         * Type.cs: Added a stub for the IsValueType property.
8130
8131         * SystemException.cs (System): Added the other constructor, so
8132         that System.Threading exceptions can inherit it.
8133
8134 2001-09-08  Jeffrey Stedfast  <fejj@ximian.com>
8135
8136         * String.cs (TrimStart): Don't keep looping through the trimchars
8137         once we've found a match.
8138         (TrimEnd): Same here.
8139         (Trim): And finally here.
8140
8141 2001-09-07  Ravi Pratap  <ravi@ximian.com>
8142
8143         * Char.cs (IsLetterOrDigit): Implement.
8144         (IsLower): Implement, but we need to be Unicode aware.
8145         (IsNumber): Implement.
8146         (IsPunctuation): Implement.
8147         (IsWhiteSpace): Implement.
8148         (ToUpper): Fix to subtract 32 from the ASCII value, not 33 :)
8149         (ToLower): Same here.
8150
8151 2001-09-04  Miguel de Icaza  <miguel@ximian.com>
8152
8153         * Object.cs: Shortcut, if (a == b) then return true.
8154
8155 Fri Sep 7 18:34:48 CEST 2001 Paolo Molaro <lupus@ximian.com>
8156
8157         * Delegate.cs: we need a pointer to the method thunk in
8158         the delegate object.
8159
8160 Fri Sep 7 12:28:01 CEST 2001 Paolo Molaro <lupus@ximian.com>
8161
8162         * AsyncCallback.cs, common.src: add AsyncCallback delegate.
8163
8164 2001-09-06  Jeffrey Stedfast  <fejj@ximian.com>
8165
8166         * String.cs (System): Don't mix uint and int.
8167
8168 2001-09-04  Jeffrey Stedfast  <fejj@ximian.com>
8169
8170         * String.cs (BoyerMoore): Modified to not use pointers and to instead
8171         use indexes.
8172         (IndexOf): Use BoyerMoore.
8173
8174 2001-09-02  Miguel de Icaza  <miguel@ximian.com>
8175
8176         * All over: Use the autogenerated enumerations from the ECMA
8177         documentation that Sergey wrote.
8178         
8179         * PlatformID.cs: Add Unix definition.
8180
8181         * OperatingSystem.cs: Use Unix instead of Linux here.
8182
8183         * MarshalByRefObject.cs: Mark class as [Serializable].
8184
8185 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
8186
8187         * Console.cs: impl. (write only)
8188         implemented the stdin stuff
8189
8190         * Int32.cs: impl. real op_Equal
8191
8192 2001-08-24  Miguel de Icaza  <miguel@ximian.com>
8193
8194         * (common.src): Removed IAsyncResult as it is not on CVS yet.
8195
8196         * UIntPtr.cs: Removed CLSCompliant attribute before the namespace,
8197         as it breaks the build.
8198
8199 2001-08-23  Michael Lambert <michaellambert@email.com>
8200
8201         * IntPtr.cs: Optimized unsafe declaration, implemented GetObjectData, 
8202         added CLSCompliant attribute
8203
8204         * IAsyncResult.cs: Added
8205
8206         * common.src: Added IAsyncResult.cs
8207
8208 2001-08-23  Michael Lambert <michaellambert@email.com>
8209
8210         * UIntPtr.cs: Added
8211
8212         * common.src: Added UIntPtr.cs
8213
8214 2001-08-20  Dietmar Maurer  <dietmar@ximian.com>
8215
8216         * Attribute.cs: uncomment some code to make it compile again
8217
8218         * mono.src: removed duplicated Attribute.cs
8219
8220 2001-08-16  Nick Drochak <ndrochak@gol.com>
8221
8222         * Attribute.cs: implemented all methods except GetHashCode()
8223
8224         * common.src: added Attribute.cs so it would compile in
8225
8226 2001-08-10  Dietmar Maurer  <dietmar@ximian.com>
8227
8228         * Object.cs: changed MemberWiseClone to MemberwiseClone, and
8229         marked it as InternalCall
8230         
8231         * common.src: removed UriFormatException.cs because the file is
8232         not there.
8233
8234         * RuntimeTypeHandle.cs: replaced IntrPtr with IntPtr
8235         * Char.cs: replaced byte with char
8236
8237         * Array.cs: make it work with the mono interpreter
8238
8239 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
8240
8241         * Version.cs: Make the class sealed
8242
8243 2001-08-08  Bob Smith  <bob@thestuff.net>
8244
8245         * Random.cs: Many compile fixes.
8246         * Random.cs: I read a bad spec. Class updated to match real spec.
8247
8248 2001-08-06  Miguel de Icaza  <miguel@ximian.com>
8249
8250         * IntPtr.cs: Added and Completed implementation.
8251
8252         * Uri.cs: Add a note.
8253
8254 2001-08-06  Bob Smith  <bob@thestuff.net>
8255
8256         * Random.cs: Compile fix. Needs more testing.
8257
8258 2001-08-06 Garrett Rooney <rooneg@electricjellyfish.net>
8259
8260         * Uri.cs: Initial Implementation.  Parsing needs to be fixed to take 
8261         into account IPv6 addresses, url encoding needs to be implemented, and 
8262         various minor methods need to be written, but this is a decent start.
8263
8264 2001-08-06  Dietmar Maurer  <dietmar@ximian.com>
8265
8266         * common.src: added Object.cs
8267
8268         * mono.src: added ValueType.cs
8269
8270 2001-08-02  Dietmar Maurer  <dietmar@ximian.com>
8271
8272         * Math.cs: replaced libc with libm
8273
8274 2001-08-02  Bob Smith  <bob@thestuff.net>
8275
8276         * Random.cs: Implemented. Needs testing.
8277
8278 2001-08-02  Miguel de Icaza  <miguel@ximian.com>
8279
8280         * IServiceProvider.cs, EventHandler.cs: New files.
8281
8282 2001-08-02  Marcel Narings  <marcel@narings.nl>
8283         
8284         * DateTime.cs: Cleaned up a bit. Added the Add* family members.
8285         Added exceptions. Added IConvertible. Still needs some platform 
8286         dependend stuff, the Parse and ToString members
8287
8288 2001-08-01  Dietmar Maurer  <dietmar@ximian.com>
8289
8290         * Type.cs (GetTypeFromHandle): added placeholder 
8291
8292 2001-07-24  Derek Holden  <dholden@draper.com>
8293
8294         * Boolean.cs: Formatted to code style standard. Added GetTypeCode
8295         which is really an IConvertible defined method.
8296
8297         * Byte.cs: Added a missing Parse method. Put in Parse and ToString
8298         behavior, still need to do the main Parse and ToString.
8299
8300         * Char.cs: Added a bunch of missing ECMA methods. Commented a
8301         specification discrepency. Still didn't any unicode stuff, though
8302         every IsFoo(char c) method has an IsFoo(string, index)
8303         counterpart, added wrappers for those.
8304         
8305         * Convert.cs: Fixed NaN/Inf checking and double/float
8306         rounding. Added ToType for IConvertible classes
8307
8308         * Double.cs: Fixed ECMA min and max values. Added IsInfinity /
8309         IsNaN methods. Changed Inf/NaN internals.
8310
8311         * IConvertible.cs: Added comments for using
8312         Convert.ToType. Changed return values to draft base values.
8313
8314         * Int16.cs: Added a missing Parse statement. Put in behavior for
8315         overloaded ToString and Parse methods.
8316
8317         * Int32.cs: Added a missing Parse statement. Put in behavior for
8318         overloaded ToString and Parse methods.
8319
8320         * Int64.cs: Added a missing Parse statement. Put in behavior for
8321         overloaded ToString and Parse methods.
8322         
8323         * Single.cs: Put in ECMA epsilon value. Added IsInfinity / IsNaN
8324         methods. Changed Inf/NaN internals.
8325
8326         * SByte.cs: Added a missing Parse method. Put in Parse and
8327         ToString behavior, still need to do the main Parse and ToString.
8328
8329         * UInt16.cs: Added a missing Parse statement. Put in behavior for
8330         overloaded ToString and Parse methods.
8331
8332         * UInt32.cs: Added a missing Parse statement. Put in behavior for
8333         overloaded ToString and Parse methods.
8334
8335         * UInt64.cs: Added a missing Parse statement. Put in behavior for
8336         overloaded ToString and Parse methods.
8337         
8338 2001-07-20  Miguel de Icaza  <miguel@ximian.com>
8339
8340         * MulticastDelegate.cs: New File.
8341
8342         * Delegate.cs: New file.
8343
8344         * Enum.cs: New file.
8345
8346         * Attribute.cs: New file.
8347
8348         * Type.cs: New file.
8349
8350         * ParamArrayAttribute.cs: New file.
8351
8352         * RuntimeTypeHandle.cs: New file.
8353
8354         * MulticastDelegate.cs: Added.
8355
8356         * DateTime.cs: Added
8357
8358         * Delegate.cs: Added
8359
8360 2001-07-18  Michael Lambert <michaellambert@email.com>
8361
8362         * AttributeTargets.cs: Add.
8363
8364 2001-07-19  Jeffrey Stedfast  <fejj@ximian.com>
8365
8366         * Char.cs: Made ToUpper and ToLower public methods.
8367
8368         * String.cs: Lots and lots of compile fixes - just need to write
8369         DateTime.cs and this should build completely now.
8370
8371 2001-07-19  Bob Smith (bob@thestuff.net)
8372
8373         * Math.cs: Implemented. 
8374
8375 2001-07-19  Miguel de Icaza  <miguel@ximian.com>
8376
8377         * String.cs: Removed tolower and toupper.
8378
8379         * Char.cs: Moved ToLower and ToUpper from string to here. 
8380
8381         * Convert.cs ToByte (float value), ToByte (double value) Use IsNan
8382         instead of comparing the value to Nan.
8383
8384 2001-07-19  Duco Fijma (duco@lorentz.xs4all.nl)
8385
8386         * TimeSpan.cs: New implementation.
8387
8388 2001-07-18  Scott Sanders <scott@stonecobra.com>
8389
8390          * UriFormatExcpetion.cs: Add - 85% complete
8391
8392 2001-07-17  Jeffrey Stedfast  <fejj@ximian.com>
8393
8394         * String.cs (IndexOf): Slight optimization that allows skipping
8395         over a few chars here and there. This isn't as good as using my
8396         Boyer-Moore implementation, however, Boyer-Moore is only really
8397         good for long strings (I plan on making the code decide which
8398         string search algorithm it should use on-the-fly at some point).
8399         (LastIndexOf): Fix to work correctly.
8400         (BoyerMoore): Took out some unneeded code and fixed an edge-case.
8401
8402 2001-07-16  Michael Lambert <michaellambert@email.com>
8403
8404         * EventArgs.cs: Add.
8405         
8406 2001-07-16  Miguel de Icaza  <miguel@ximian.com>
8407
8408         * Version.cs: Remove my buggy comment.
8409
8410 2001-07-15  Sean MacIsaac  <macisaac@ximian.com>
8411
8412         * String.cs: Spelling error of IComparable, object's
8413         MemberwiseClone cannot be overridden.  Made indexer valid for now,
8414         but not sure what to do about this in the long run.  Seems to be a
8415         couple bugs in csc.exe having to do with multiple pointer defs in
8416         the same statement, and returning subclasses of a class in the
8417         return type of an interface function implementation.  Also moved
8418         operators inside of class definition.
8419
8420 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
8421
8422         * String.cs: A tom of compile fixes, although we still don't compile.
8423
8424         * IConvertible.cs: The To*Int64() methods return *Int64's, not
8425         *Int32's. Also, it's ToDateTime() not ToDateType().
8426
8427 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
8428
8429         * String.cs: Apparently I needed to at least write stubs for the
8430         IConvertible interfaces. *sigh*
8431
8432 2001-07-14  Jeffrey Stedfast  <fejj@ximian.com>
8433
8434         * String.cs: Many logic/other fixes and better usage of the
8435         features of c#
8436         (tolower): New convenience method to help condense code.
8437         (toupper): Another new helper method.
8438         (Compare): Use the new helper methods.
8439         (ToLower): use tolower().
8440         (ToUpper): use toupper().
8441         (LastIndexOfAny): Implemented.
8442         (BoyerMoore): New private helper method that implements a modified
8443         version of the Boyer-Moore search algorithm. Noothing uses it yet
8444         as I'm not 100% sure it even works properly with unicode strings
8445         not to mention it uses a huge lookup-table :-)
8446         (Split): Implemented.
8447
8448 2001-07-13  Jeffrey Stedfast  <fejj@ximian.com>
8449
8450         * TODO: Added things that need to be finished in System.String
8451
8452         * String.cs: New source file implementing the System.String class
8453
8454 2001-07-12  Sean MacIsaac  <macisaac@ximian.com>
8455
8456         * TypeCode.cs: UInt64 was UInt63.
8457
8458         * Object.cs: Fixed a numer of compiler errors.
8459
8460         * Array.cs: Fixed some compiler errors.
8461
8462         * IComparable.cs: Fixed some compiler errors.
8463
8464         * ICloneable.cs: Fixed some compiler errors.
8465
8466         * IConvertible.cs: Fixed some compiler errors.
8467
8468         * IFormattable.cs: Fixed a compiler error.
8469
8470         * IFormatProvider.cs: Fixed a compiler error.
8471
8472         * IDisposable.cs: Fixed a compiler error.
8473
8474         * IFormatProvider.cs: Added public accesability type to
8475         IFormatProvider.
8476
8477         * Exception.cs: Added a using statement to remove compile time
8478         error.
8479
8480         * ApplicationException.cs: Removed a ; that was causing a compiler
8481         error.
8482
8483         * Int16.cs: Fixed some compiler errors.
8484
8485         * Int32.cs: Fixed some compiler errors.
8486
8487         * Int64.cs: Fixed some compiler errors.
8488
8489         * SystemException.cs: Fixed a compiler error.
8490
8491         * UInt16.cs: Fixed some compiler errors.
8492
8493         * UInt32.cs: Fixed some compiler errors.
8494
8495         * UInt64.cs: Fixed some compiler errors.
8496
8497         * Void.cs: Fixed a compiler error.      
8498
8499 2001-07-12  Joe Shaw  <joe@ximian.com>
8500
8501         * Array.cs: Fix backwards parameters to Array.SetValue()
8502         throughout.
8503         (BinarySearch): Fix backward logic surrounding whether to call
8504         value.CompareTo or comparer.Compare.
8505         (LastIndexOf): Stop being stupid. I am so not used to strongly
8506         bounded arrays...
8507         (Sort): Implement a quicksort.
8508
8509 2001-07-11  Joe Shaw  <joe@ximian.com>
8510
8511         * Array.cs: Change all instances of trying to access an array with
8512         the index operator to calls to GetValue and SetValue, and add
8513         InternalGetValue and InternalSetValue which are internal calls
8514         into the runtime. Ew.
8515
8516 2001-07-10  Joe Shaw  <joe@ximian.com>
8517
8518         * Array.cs: Implemented everything but Sort().
8519
8520 2001-07-09  Jeffrey Stedfast  <fejj@ximian.com>
8521
8522         * Object.cs (Object::Equals): Object variable name is `o'.
8523
8524 2001-07-06  Joe Shaw  <joe@ximian.com>
8525
8526         * Int16.cs, Int32.cs, Int64.cs, UInt16.cs, UInt32.cs, UInt64.cs:
8527         Implement the IComparable and IFormattable interfaces. Fix a typo
8528         (publig -> public)
8529
8530         * ApplicationException.cs, ArgumentException.cs,
8531         ArgumentNullException.cs, ArgumentOutOfRangeException.cs,
8532         ArtithmeticException.cs, ArrayTypeMismatchException.cs,
8533         DivideByZeroException.cs, DuplicateWaitObjectException.cs,
8534         ExecutionEngineException.cs, FormatException.cs,
8535         IndexOutOfRangeException.cs, InvalidCastException.cs,
8536         InvalidOperationException.cs, InvalidProgramException.cs,
8537         MulticateNotSupportedException.cs, NotFiniteNumberException.cs,
8538         NotSupportedException.cs, NullReferenceException.cs,
8539         OutOfMemoryException.cs, OverflowException.cs, RankException.cs,
8540         StackOverflowException.cs, SystemException.cs,
8541         TypeInitializationException.cs: Added all of the exceptions
8542         specified by the language spec. Mmmm... bloat.
8543
8544 2001-07-06  Miguel de Icaza  <miguel@ximian.com>
8545
8546         * Int64.cs, Int32.cs: Put.  Parsing and ToString missing.  Should
8547         do a generic routine all of these guys use.
8548
8549         * Int16.cs: identified missing methods.
8550
8551         * UInt16.cs, UInt32.cs, UInt64.cs: Add.
8552
8553 2001-06-26  Miguel de Icaza  <miguel@ximian.com>
8554
8555         * TypeCode.cs: Implement
8556
8557         * Void.cs: Implement.
8558
8559         * TODO: Add file to keep track of pending tasks.
8560
8561         * Object.cs, ValueType.cs: Implement.