2003-05-08 Ben Maurer <bmaurer@users.sourceforge.net>
[mono.git] / mcs / class / corlib / System.IO / ChangeLog
1 2003-05-08  Ben Maurer <bmaurer@users.sourceforge.net>
2         * Path.cs 
3         (CanonicalizePath) Fixed bug #42631, which duplicated the
4         root part of the path under Windows.
5
6 2003-05-08  Ville Palo <vi64pa@kolumbus.fi>
7
8         * FileSystemInfo.cs: Added 1.1 properties LastAccessTimeUtc, 
9         LastWriteTimeUtc and CreationTimeUtc
10         
11 2003-05-07  Ben Maurer <bmaurer@users.sourceforge.net>
12         * Path.cs 
13         (GetPathRoot) Added support for UNC paths.
14         (CanonicalizePath) Added optimizations per Miguel's requests.
15
16 2003-05-06  Ville Palo <vi64pa@kolumbus.fi>
17
18         * BufferedStream.cs: 
19           - Removed unusefull code.
20           - Added ObjectDisposedException to Position
21           - Dont flush if stream is allready closed.
22           - Flush throws also ObjectDisposedException.
23         * Directory.cs:
24           - GetFileSystemEtries: ArgumentNullException if pattern is null
25         * DirectoryInfo.cs: Fixed little MoveTo () bug.
26         * FileInfo.cs:
27           - Exists: If file does not exists when instance is created the
28           value of the Exists property does not change even if file is created
29           afterwards.
30           - Delete: If path is a directory UnauthorizedException is thrown.
31           - CopyTo: Now we can overwrite file if wanted.
32         * Path.cs: 
33           - GetFullPath: Now throws exception when path is "   ".
34         
35 2003-05-04  Ben Maurer <bmaurer@users.sourceforge.net>
36         * Directory.cs (GetLogicalDrives) Marked as MonoTODO
37         because we need to implement the method on Windows.
38         * Path.cs 
39         (CanonicalizePath) Added new function to get
40         rid of . and .. in path names. Need to figure out what
41         other functions should call this.
42         (GetFullPath) Added call to the above function.
43         
44 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
45
46         * StreamReader.cs:
47         (.ctor): fixed parameters passed to FileNotFoundException.
48
49 2003-04-25  Dietmar Maurer  <dietmar@ximian.com>
50
51         * BinaryReader.cs (Read): make sure the buffer is big enough (fix
52         bug # 40702)
53
54 2003-04-24  Pedro Martínez Juliá  <yoros@wanadoo.es>
55
56         * BufferedStream.cs: Test if it's possible to seek in a Stream
57         before access to Position. This prevents the exception thrown when
58         the stream is System.Net.Sockets.NetworkStream.
59
60 2003-04-22  Ville Palo <vi64pa@kolumbus.fi>
61
62         * Directory.cs: clean up --> performance improvment. Some exceptions
63         are now checked in File.cs.
64         * File.cs: Implemented Get/SetXXXTimeUtc () methods. Some bugfixes.
65         
66 2003-04-21  Ville Palo <vi64pa@kolumbus.fi>
67
68         * Directory.cs: lots of fixes. 
69           - Added GetXXXtimeUtc () (v1.1) methods.
70           - Added SetXXXtimeUtc () (v1.1) methods.      
71         
72 2003-04-20  Igor Nosyryev <nosyryev@attbi.com>
73
74         * StringReader.cs (Read): Increment nextChar by charsToRead
75         instead of count, that will guarantee that the next time the
76         method is called, it will return 0 on an empty string rather than
77         throwing an exception
78
79 2003-04-19  Ville Palo <vi64pa@kolumbus.fi>
80
81         * BufferedStream.cs: Some fixes, mostly throwing exceptions.
82         * MemoryStream.cs: Changed the order of exception checking
83         * StringReader.cs: little clean up
84         
85 2003-04-14  Ville Palo <vi64pa@kolumbus.fi>
86
87         * BinaryWriter.cs: Fixed decimal writing and lots of 
88         ObjectDisposedExceptions added.
89         
90 2003-04-13  Ville Palo <vi64pa@kolumbus.fi>
91
92         * BinaryReader.cs: Fix to ReadDecimal() method.
93         
94 2003-04-13  Ville Palo <vi64pa@kolumbus.fi>
95
96         * StringReader.cs: Added some ObjectDisposedExceptions.
97         * StringWriter.cs: Added some ObjectDisposedExceptions.
98         * BinaryReader.cs: Added some ObjectDisposedExceptions.
99         
100 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
101
102         * FileStream.cs: fixed the windows build. This is an mcs bug. I'll
103         fill a bug report.
104
105 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
106
107         * FileStream.cs: fixed bug #40182 and made more unit test pass.
108
109 2003-04-11  Ville Palo <vi64pa@kolumbus.fi>
110
111         * FileStream.cs: Added new methods Lock () and Unlock ()
112         
113 2003-04-11  Ville Palo <vi64pa@kolumbus.fi>
114
115         * StringReader.cs: Throws exceptions if constructor parameter is null.
116         
117 2003-04-11  Ville Palo <vi64pa@kolumbus.fi>
118
119         * StringWriter.cs: Now throws an exception if StringBuilder parameter
120         is null
121         
122 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
123
124         * TextWriter.cs: Implemented Synchronized method.
125
126         * TextReader.cs: Implemented Synchronized method.
127
128 2003-04-04  Miguel de Icaza  <miguel@ximian.com>
129
130         * FileStream.cs (Read, ReadByte, Seek): throw
131         ObjectDisposedException if the handle has been released.
132         
133         (Read): Throw exceptions specified in the spec.
134
135         (Read, Write, ReadSegment, WriteSegment): There is no requirement for any
136         instance methods of FileStream to be thread safe, so remove all
137         the calls to lock on the object
138
139 2003-03-31  Nick Drochak <ndrochak@gol.com>
140
141         * Path.cs (GetDirectoryName): Throw proper execption when path is empty.
142
143 2003-03-20  Lluis Sanchez Gual <lluis@ideary.com>
144
145         * FileNotFoundException.cs: fixed serialization bug.
146
147 2003-03-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
148
149         * StringWriter.cs : don't release internalString on Dispose().
150
151 2003-03-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
152
153         * StreamReader.cs: fixed bug #39280.
154
155 2003-03-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
156
157         * Directory.cs: readded mkdir -p behavior. Thanks to kiwnix for
158         pointing it out.
159
160 2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
161
162         * MemoryStream.cs: general fixes and reformatted. Passes all tests in
163         the new MemoryStreamTest.
164
165 2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
166
167         * MemoryStream.cs: undo my bogus fix in ToArray. Allow GetBuffer and
168         ToArray even after closing the stream.
169
170 2003-03-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
171
172         * Directory.cs:
173         (Move): don't use File.Move.
174         * DirectoryInfo.cs: fixed Name property.
175         
176         Fixes bug #37755.
177
178 2003-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
179
180         * DirectoryInfo.cs: changed ToString to match MS behavior.
181         * Path.cs: further fixes to GetDirectoryName to return null in the
182         same cases that MS does.
183
184         Fixes bug #38387.
185
186 2003-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
187
188         * Path.cs: fixed a couple of bugs reported in #35906.
189
190 2003-03-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
191
192         * Directory.cs: fixed bugs #38939 and #38940. No need for separate
193         unix/windows/unc shares code paths.
194
195 2003-02-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
196
197         * File.cs: fix by Elan Feingold <efeingold@mn.rr.com> for
198         SetCreationTime, SetLastAccessTime and SetLastWriteTime.
199
200 2003-02-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
201
202         * MemoryStream.cs:
203         (ToArray): return only the portion of the buffer that contains
204         data, not the whole buffer. (note: this makes XmlDocument.Load work
205         again with documents that have a <?xml without the 'encoding'
206         attribute, which makes gtk-sharp generator work again).
207
208 2003-02-25  Nick Drochak <ndrochak@gol.com>
209
210         * File.cs (GetCreationTime): Throw proper execption when path is not
211         found.
212
213 Tue Feb 25 11:55:35 CET 2003 Paolo Molaro <lupus@ximian.com>
214
215         * MemoryStream.cs: make it behave sanely when the stream is
216         incrementally expanded.
217
218 2003-02-21  Dick Porter  <dick@ximian.com>
219
220         * FileStream.cs: Use locks around buffer manipulations.  Fixes bug
221         32344
222
223 2003-02-18  Dick Porter  <dick@ximian.com>
224
225         * FileStream.cs: Make FileMode.Append work, and check for Seeking
226         back over old data (undocumented ms behaviour, throws an exception
227         if you try).  Fixes bug 35975.
228
229 2003-02-17  Dick Porter  <dick@ximian.com>
230
231         * FileStream.cs: Don't close the handle if the stream doesn't own
232         it.  Patch from Raymond Penners (raymond@dotsphinx.com), bug
233         35623.
234
235 2003-02-14  Zoltan Varga  <vargaz@freemail.hu>
236
237         * FileStream.cs (Write): flush after writing the last segment as well.
238
239 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
240
241         * StringReader.cs:
242         (ReadLine): fixed the case when the string ends with a '\n'.
243
244 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
245
246         * MemoryStream.cs: create the buffer of the specified capacity.
247
248 2003-01-31  Patrik Torstensson
249
250         * MemoryStream.cs: use BlockCopyInternal instead of Array.Copy, this is
251         the same way as MS does it (performance improvement)
252
253 2003-01-29  Zoltan Varga  <vargaz@freemail.hu>
254
255         * Directory.cs (GetFileSystemEntries): moved error handling to the
256         correct instance of GetFileSystemEntries so all callers can enjoy it.
257
258 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
259
260         * File.cs: add error handling to Get...Time methods.
261
262 2003-01-26  Zoltan Varga  <vargaz@freemail.hu>
263
264         * Directory.cs: fix GetParent so it actually works.
265
266 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
267
268         * Path.cs: fixlet to ChangeExtension for the case when the path is
269         empty.
270
271 2003-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
272
273         * BufferedStream.cs: don't try to write a 0 sized array on when
274         flushing the stream.
275         
276         Fixes bug #37045.
277
278 2003-01-18  Jonathan Pryor <jonpryor@vt.edu>
279
280         * FileStream.cs: Add IsAsync property.  (Documented in "C# In A Nutshell".)
281
282 2003-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
283
284         * MemoryStream.cs: fixed bug #36319.
285
286 2002-12-16  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
287         
288         * Directory.cs: Some fixes to SMB shares handling, and not compiling 
289         with csc, mcs compiles it correctly (mcs bug 35652)
290
291 2002-12-14  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
292
293         * Directory.cs: Some fixes related to correct some exceptions thrown
294
295 2002-12-11  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
296
297         * Directory.cs: Some Exceptions added, fixed GetParent(),
298         CreateDirectory() should work with unix, native windows and
299         windows samba shares. Converted end-lines from dos-mode to unix-mode
300
301 2002-12-08  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
302
303         * Directory.cs: CreateDirectory  works now with Absolute paths
304         too, not only with relative ones.
305
306 2002-12-07  Peter Williams  <peterw@ximian.com>
307
308         * Directory.cs: Don't use the uninitialized pathsumm here.
309         Don't try and create "" if we're using an absolute path.
310
311 2002-12-07  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
312
313         * Directory.cs: Now the creation of a new directory works recursively
314         it will make parents as needed.
315
316 2002-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
317
318         * BufferedStream.cs: applied patch from <carlosga@telefonica.net> that
319         fixes Flush ().
320
321 Tue Nov 19 13:01:22 CET 2002 Paolo Molaro <lupus@ximian.com>
322
323         * StreamWriter.cs: output the encoding preamble at the start of a
324         stream if needed.
325
326 2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
327
328         * StreamReader.cs: Changed all Encoding.UTF8 to Encoding.UTF8Unmarked.
329
330 2002-11-06  Miguel de Icaza  <miguel@ximian.com>
331
332         * StreamWriter.cs: Changed all Encoding.UTF8 to Encoding.UTF8Unmarked.
333
334 2002-10-31  Dick Porter  <dick@ximian.com>
335
336         * FileStream.cs: Fix buffering properly this time.  Also kludge
337         around broken pipe errors, treating them as EOF instead of
338         throwing an IO exception.
339
340         * MonoIO.cs: Return the error status in a parameter, as the
341         GetLastError() value has long since been blown away if we try and
342         look it up in a subsequent internal call invocation.
343
344         * FileSystemInfo.cs: 
345         * FileInfo.cs: 
346         * File.cs: 
347         * Directory.cs: MonoIO methods now have an error parameter
348
349 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
350
351         * TextReader.cs: implemented ReadBlock ().
352
353 2002-10-30  Miguel de Icaza  <miguel@ximian.com>
354
355         * StreamWriter.cs: Ditto for Null stream.
356
357         * BinaryReader.cs: Use Unmarked here too.
358
359         * BinaryWriter.cs: Use the UTF8Unmarker encoding by default, this
360         is what .NET does.
361
362 2002-10-23  Dick Porter  <dick@ximian.com>
363
364         * FileStream.cs: Implemented CanSeek, and used it around all the
365         calls to MonoIO.Seek.  Fixed buffering in Read() so that it
366         doesn't block forever on short reads.
367
368         * MonoFileType.cs: New enum for GetFileType
369         
370         * MonoIO.cs: Added GetFileType
371
372 2002-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
373
374         * StreamReader.cs: ReadLine now treats a \r not followed by a \n as a
375         \n (this is what MS does).
376
377 2002-10-18  Dick Porter  <dick@ximian.com>
378
379         * FileStream.cs: SeekOrigin.End still calculates the offset from
380         the end of the file with positive values extending the length.
381         Fixes bug 32471.
382
383 2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
384
385         * Path.cs: some cleanup. Thanks to Martin Aliger.
386
387 2002-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
388
389         * FileStream.cs: throw an exception if trying to open a directory.
390         Thanks to Martin Aliger.
391
392 2002-10-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
393
394         * Path.cs: fixes bug #28046.
395
396 2002-09-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
397
398         * StreamReader.cs: give more information when wrong parameters passed.
399
400 2002-09-21  Miguel de Icaza  <miguel@ximian.com>
401
402         * FileStream.cs: Do not call FSync on the file.
403
404 2002-09-16  Miguel de Icaza  <miguel@ximian.com>
405
406         * TextWriter.cs (Null): The Null field should be an instance of a
407         TextWriter class that does nothing, so it is an instance of the
408         NullTextWriter class.
409
410 2002-09-16  Nick Drochak  <ndrochak@gol.com>
411
412         * MemoryStream.cs (Close): Don't throw an exception if the stream
413         is already closed.
414
415 2002-09-15  Miguel de Icaza  <miguel@ximian.com>
416
417         * FileStream.cs (Dispose): Call FlushBuffer(), and not Flush, as
418         Flush calls fsync().  
419
420         The API docs show no explicit mention that Flush() should even do
421         an fsync, I am thinking that we should drop that from the
422         runtime. 
423
424 2002-09-09  Miguel de Icaza  <miguel@ximian.com>
425
426         * StreamWriter.cs: When no encoding is provided, create an
427         encoding without markers, this is what MS does.
428
429 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
430
431         * StreamReader.cs: Implement detection of byte marks and skipping
432         of byte marks at the beginning of the stream.
433
434         (ReadToEnd): Use buffered read instead of char-by-char
435         processing. 
436
437         Correct the default arguments for creating the StreamReader.
438
439 2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
440
441         * CheckArgument.cs: fixed check for empty string.
442         * Path.cs: various fixes. It passes all the tests in new PathTest.
443
444 2002-08-29  Duncan Mak  <duncan@ximian.com>
445
446         * StreamWriter.cs: Set DisposedAlready after calling flush. Fixes
447         the build for gtk#.
448
449 2002-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
450
451         * BinaryReader.cs:
452         * BinaryWriter.cs:
453         * MemoryStream.cs:
454         * StreamReader.cs:
455         * StreamWriter.cs:
456         * StringReader.cs:
457         * StringWriter.cs:
458         * TextWriter.cs: IDisposable fixes.
459
460 2002-08-24  Miguel de Icaza  <miguel@ximian.com>
461
462         * StreamReader.cs: Removed TODOs, as the code seems to be
463         complete. 
464
465         * Path.cs (GetTempFileName): Make this routine atomic by not
466         testing and then creating, but using the create call to ensure
467         that we own the filename.
468
469 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
470
471         * FileLoadException.cs: implemented ToString.
472
473         * StreamWriter.cs: added Null field and implemented Write (char) and
474         Write (char []).
475
476 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
477
478         * StreamReader.cs: implemented NullStreamReader.
479
480 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
481
482         * Path.cs (GetDirectoryName): Fix for filenames with size = 1
483
484         * File.cs: Removed all references that threw exceptions when the
485         paths contains a colon, as this is a valid part of an identifier
486         on Unix.
487
488         Everywhere: The String.Empty return from GetDirectoryName means
489         that there is no directory information about the path.
490
491 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
492
493         * FileNotFoundException.cs: use Message and InnerException from base
494         class. Changed Message and ToString ().
495
496 2002-08-19  Dick Porter  <dick@ximian.com>
497
498         * BinaryWriter.cs: The length of a string is counted in bytes, not
499         chars
500
501 2002-08-18  Dick Porter  <dick@ximian.com>
502
503         * BinaryReader.cs: Fixed buffering
504
505 2002-08-09  Nick Drochak  <ndrochak@gol.com>
506
507         * BinaryReader.cs: added virtual to Dispose(bool).
508
509 2002-08-03  Jason Diamond  <jason@injektilo.org>
510
511         * StringWriter.cs: Return UnicodeEncoding for Encoding property.
512
513 2002-08-03  Jason Diamond  <jason@injektilo.org>
514
515         * StreamWriter.cs: Use GetByteCount() to get exact length instead
516         of GetMaxByteCount when converting chars to bytes.
517
518 2002-07-31  Duncan Mak  <duncan@ximian.com>
519
520         * StreamReader.cs: 
521         (Dispose): Added and implmented.
522
523         * StreamWriter.cs: 
524         (Dispose): Fixed visibility.
525         (Initialize): Fixed visibility, made internal.
526
527         * BinaryReader.cs:
528         (Dispose): Fixed visibility.
529
530 2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
531
532         * File.cs:
533         (Create): allow file names without path.
534
535 Fri Jul 26 15:45:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
536
537         * FileStream.cs: patch from erik@bagfors.nu to add
538         Name property support.
539
540 2002-07-20  Dick Porter  <dick@ximian.com>
541
542         * MonoIO.cs: Added icall to CreatePipe
543
544 2002-07-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
545
546         * FileInfo.cs: fixes buglet #27940
547
548 2002-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
549
550         * Path.cs: removed unneeded line from GetExtension.
551
552 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
553
554         * FileStream.cs:
555         (.ctor): call MonoIO.GetException with the file name.
556
557 2002-07-02  Mike Kestner  <mkestner@speakeasy.net>
558
559         * StreamReader.cs: Guard against ^\n lines as pointed out by Gonzalo.
560
561 2002-07-02  Mike Kestner  <mkestner@speakeasy.net>
562
563         * StreamReader.cs: Revert the last Peek change and fix the ReadLine
564         end of line detection code instead.
565
566 2002-07-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
567
568         * StreamReader.cs:
569         (Peek): no need to have seek capabilitites. 
570
571 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
572
573         * Path.cs (ChangeExtension): handle some special cases (fixes bug #25319)
574
575         * File.cs (Delete): only call Directory.Exists() if DirName != ""
576
577 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
578
579         * Directory.cs: fixed bug #26133 and also test if the directory exist
580         before performing the search.
581
582 2002-06-12  Nick Drochak  <ndrochak@gol.com>
583
584         * StringReader.cs (ReadLine): Return null when we get to end of the
585         string.
586
587 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
588
589         * StreamWriter.cs: added ability to write null value
590         
591 2002-05-19  Lawrence Pit  <loz@cable.a2000.nl>
592
593         * Stream.cs: NullStream.ReadByte now returns -1 instead of 0 to
594         prevent endless loops.
595
596 2002-05-17  Dan Lewis  <dihlewis@yahoo.co.uk>
597
598         * FileStream.cs: Enforce lower bound on buffer size.
599
600 2002-05-16  Piers Haken <piersh@friskit.com>
601
602         * Stream.cs: Implement synchronous {Begin|End}{Read|Write}() methods.
603
604 2002-05-17  Nick Drochak  <ndrochak@gol.com>
605
606         * StreamWriter.cs: Implement buffering.  Also implemented dispose
607         pattern as recommended by the MS docs.  Must call Close() now
608         to ensure the buffer is flushed.
609
610 2002-05-15  Nick Drochak  <ndrochak@gol.com>
611
612         * Path.cs (GetDirectoryName): Return String.Empty if there is no
613         directory
614
615         * StreamReader.cs: Add some parameter checking on file names.
616
617         * StreamWriter.cs: Add some parameter checking on file names.
618
619 2002-05-14 Nick Drochak  <ndrochak@gol.com>
620
621         * File.cs: Add parameter checks to most methods. Not completely done,
622         but all current unit tests pass.
623
624         * Path.cs: Implement GetTempFileName().
625
626 2002-05-10  Nick Drochak  <ndrochak@gol.com>
627
628         * StreamWriter.cs (Flush): Throw proper exception if internal stream
629         has already been closed when we try to flush.
630
631 2002/05/10  Nick Drochak <ndrochak@gol.com>
632
633         * FileNotFoundException.cs (ToString): Don't try to use the inner
634         exception, because it might be null.  Use the message instead.
635
636 2002-05-09  Nick Drochak  <ndrochak@gol.com>
637
638         * File.cs (Delete): Do not throw an exception if the file does not
639         exist.
640
641 2002-05-08  Mike Gray     <mikeg@mikegray.org>
642
643         * File.cs: According to ECMA spec and MS docs Copy(src, dest)
644         should not overwrite dest by default.
645
646 2002-05-08  Nick Drochak  <ndrochak@gol.com>
647
648         * StreamWriter.cs: Add paramter check to constructors and throw
649         exceptions where appropriate.
650
651 Tue May 7 11:47:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
652
653         * StreamReader.cs: return the number of chars read even if we diddn't
654         fill the whole buffer (makes Sergey's ilasm work with mono).
655
656 2002-05-07  Mike Gray     <mikeg_us@hotmail.com> 
657
658         * FileInfo.cs (Create): Implement missing method.
659
660 2002-05-07  Mike Gray     <mikeg_us@hotmail.com>
661
662         * File.cs: Implemented CreateText method, and fixed dst compares
663         to compare against "" instead of null twice.
664
665 2002-05-05  Nick Drochak  <ndrochak@gol.com>
666
667         * StreamReader.cs: Throw exceptions where needed. Changed Null field to
668         use new internal class since null cannot be passed to constructor 
669         anymore. Also, fix a coule of small bugs.
670
671 2002-05-03  Nick Drochak  <ndrochak@gol.com>
672
673         * MemoryStream.cs: Refrain from allocating array until the space is
674         really needed. This fixes a bug in the Length property when the
675         constructor without the byte array is used.
676
677 2002-05-01  Duncan Mak  <duncan@ximian.com>
678
679         * DirectoryNotFoundException.cs (constructor): Added missing
680         serialization constructor.
681
682 2002-04-30  Duncan Mak  <duncan@ximian.com>
683
684         * FileLoadException.cs (constructors): Added missing (string,
685         string) ctor, as well as (string, string, Exception) ctor.
686
687         (Message): Added more info to the error message
688
689         (ToString): Added. We'll need to add the StackTrace stuff when
690         that works.
691
692         * FileShare.cs: Add a missing field, Inheritable.
693         
694         * TextReader.cs: Renamed Synchronised method to Synchronized.
695
696         * TextWriter.cs: Renamed Synchronised method to Synchronized.
697         Renamed protected member coreNewLine to CoreNewLine.
698
699 2002-04-30  Sergey Chaban  <serge@wildwestsoftware.com>
700
701         * BinaryReader.cs: Allocate buffer before its first use.
702         Handle end of stream properly. Methods to read native types
703         (ReadInt* etc.) are little-endian (see Compact Framework docs).
704
705         * BinaryWriter.cs: Store data in little-endian format.
706         Use internal buffer for conversions.
707
708 2002-03-31  Dick Porter  <dick@ximian.com>
709
710         * Directory.cs: Strip out "." and ".." from returned list
711
712         * FileAttributes.cs: Get the right enum values
713
714 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
715
716         * TextWriter.cs (write): added check for null
717
718 2002-03-28  Dan Lewis  <dihlewis@yahoo.co.uk>
719
720         * Directory.cs: Throws DirectoryNotFoundException.
721         * MonoIO.cs: Fixed to work around enum problem.
722
723 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
724
725         * StreamReader.cs: Implemented ReadLine() and ReadEnd().
726
727 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
728
729         * Directory.cs, File.cs, FileSystemInfo.cs, FileInfo.cs,
730         DirectoryInfo.cs, Path.cs: Modified to use MonoIO class instead of
731         wrapper and PAL classes.
732
733         * MonoIO.cs, MonoIOStat.cs, MonoIOError.cs: Added.
734
735 2002-03-25  Mike Kestner <mkestner@speakeasy.net>
736
737         * MemoryStream.cs (Read): Fixed bug in exception throw.
738
739 2002-03-24  Mike Kestner <mkestner@speakeasy.net>
740
741         * StreamReader.cs (ReadBuffer): Fix buffer merging bugs.
742
743 2002-03-23  Martin Baulig  <martin@gnome.org>
744
745         * StreamReader.cs: Always do buffered reading, use 4k blocks.
746         (Read (char[], int, int)): Implemented.
747         (DiscardBufferedData): Implemented.
748
749 2002-03-21  Mike Kestner <mkestner@speakeasy.net>
750
751         * StreamReader.cs : Fill out, add buffering, and use encoding.
752
753 2002-03-19  Martin Baulig  <martin@gnome.org>
754
755         * StreamWriter.cs (StreamWriter (string)): The default is to override
756         the file, not to append to it.
757         (StreamWriter (string path, bool append)): When appending, seek to the
758         end of the file, otherwise truncate the file to zero length.
759         (Dispose (bool)): Close the internalStream.
760         (Flush): Flush the interalStream.
761         (Write (char[], int, int)): Flush the internalStream in auto-flush-mode.
762
763 2002-03-19  Dan Lewis <dihlewis@yahoo.co.uk>
764
765         * FileStream.cs: Flush buffer before FileSetLength.
766
767 2002-02-28  Miguel de Icaza  <miguel@ximian.com>
768
769         * Stream.cs (NullStream): Do not track position, this beast does
770         nothing in practice.
771
772 2002-03-15  Dan Lewis <dihlewis@yahoo.co.uk>
773
774         * SearchPattern.cs: New class. Glob matching code for Directory.
775         * Directory.cs: Changed to use SearchPattern instead of mono_glob_*()
776
777 2002/03/15 Nick Drochak <ndrochak@gol.com>
778
779         * DirectoryInfo.cs: Fixed the overloaded GetDirectories and GetFiles.
780         This code seemed to be copied from somewhere, and it was close,
781         but didn't match the docs.  This was the last bit needed to get
782         NAnt to compile with our class libs.
783
784 2002-03-12  Duncan Mak  <duncan@ximian.com>
785
786         * EndOfStreamException.cs:
787         * FileLoadException.cs:
788         * FileNotFoundException.cs:
789         * PathTooLongException.cs: Changed the base classes to IOException
790         instead of SystemException.
791
792         * IOException.cs: Added missing constructors.
793         
794 2002-03-07  Nick Drochak  <ndrochak@gol.com>
795
796         * FileMode.cs: Docs don't say this should be explicitly derived from
797         int, so just make it a normal Enum.
798
799 2002-03-02  Jason Diamond  <jason@injektilo.org>
800
801         * StringReader.cs: Fixed off-by-one error in Peek() and Read().
802
803 2002-02-12  Nick Drochak  <ndrochak@gol.com>
804
805         * PathTooLongException.cs: put it in the correct namespace
806         * EndOfStreamException.cs: put it in the correct namespace
807
808 Thu Jan 31 17:32:32 CET 2002 Paolo Molaro <lupus@ximian.com>
809
810         * Directory.cs: handle opendir() return NULL and absolute filenames.
811
812 2002-01-31  Duncan Mak  <duncan@ximian.com>
813
814         * FileLoadException.cs:
815         * FileNotFoundException: Added missing bits for serialization.
816
817 Thu Jan 24 17:42:54 CET 2002 Paolo Molaro <lupus@ximian.com>
818
819         * Directory.cs: allow directories in GetFiles() mask.
820
821 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
822
823         * FileInfo.c (CopyTo, MoveTo): Implement.
824
825         * FileStream.cs: Add argument checking to the constructor.
826
827         * File.cs: Rewrote most of the file.  Implement Copy, Open, Create,
828         OpenText, OpenWrite, Move.  Made pending methods flagged as MonoTODO. 
829         
830         * Directory.cs (Delete): reimplement without using DirectoryInfo.
831         (Delete): Implement the recursive version.
832         (GetCreationTime, GetLastWriteTime, GetLastAccessTime): Implement.
833         (Move): Reimplement.
834         (getNames): dead code removal.
835
836         * Path.cs: define an internal DirectorySeparatorStr that we use in
837         a few spots.
838
839         * Wrapper.cs: Updated to new version.
840         
841         * DirectoryInfo (Delete): Implement using the Directory API.
842
843         * DirectoryInfo.cs (GetFiles, GetDirectories, GetFileSystemInfos,
844         Delete, Create, Parent, Exists, MoveTo): Implement. 
845
846         * Directory.cs (GetListing): implement new utility function.
847         (GetDirectories): Implement.
848         (GetFileSystemEntries): Implement.
849         (GetFiles): Implement.
850
851         * CheckArgument.cs (Path): Do not allow null by default.
852
853 Tue Jan 22 22:53:23 CET 2002 Paolo Molaro <lupus@ximian.com>
854
855         * DirectoryInfo.cs, FileInfo.cs: do not use Debug from the system
856         assembly in corlib.
857
858 2002-01-20 Nick Drochak  <ndrochak@gol.com>
859
860         * SeekOrigin.cs: Added Serializable attribute.
861
862 2002-01-19  Duncan Mak  <duncan@ximian.com>
863
864         * PathTooLongException.cs: 
865         * EndOfStreamException.cs: Added to CVS.
866
867 Thu Jan 10 12:06:46 MST 2002 Matt Kimball <matt@kimball.net>
868
869         * BufferedStream.cs: Initial implemenation.  The synchronous
870         methods for both reading and writing are implemented.  I'll do the
871         asynchronous methods in a bit.
872         
873 Wed Jan  9 16:04:39 MST 2002 Matt Kimball <matt@kimball.net>
874
875         * BinaryWriter.cs: Initial implementation.  And it's all there.
876
877         * BinaryReader.cs: The constructor now uses the passed in encoding,
878         not UTF8 always.
879
880 Wed Jan  9 13:54:28 MST 2002 Matt Kimball <matt@kimbal.net>
881
882         * BinaryReader.cs: Initial implementation.  I think it's complete.
883
884 2002-01-04  Ravi Pratap  <ravi@ximian.com>
885
886         * CheckArgument.cs, CheckPermission.cs, Directory.cs: MonoTODO
887         attribute decorations.
888
889         * DirectoryInfo.cs, File.cs, FileInfo.cs, FileSystemInfo.cs,
890         Path.cs, TextReader.cs, TextWriter.cs : Ditto.
891
892         * FileLoadException.cs, FileNotFoundException.cs, StreamReader.cs: 
893         Ditto.
894
895 2001-12-11  Dick Porter  <dick@ximian.com>
896
897         * FileStream.cs: Use handles rather than casting file descriptors.
898         Added Handle property.
899
900 Wed Nov 14 16:47:47 CET 2001 Paolo Molaro <lupus@ximian.com>
901
902         * CheckPermission.cs: disable ModeAccess() code: it's wrong.
903         * FileStream.cs: only trow an exception if the read failed in ReadByte().
904         * StreamReader.cs: implement Peek and Read.
905         * TextWriter.cs: CLSCompliant updates.
906
907 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
908
909         * FileNotFoundException.cs: Added some constructors
910
911         * Path.cs (GetFullPath): Fixed implementation
912
913 Fri Nov 2 18:27:58 CET 2001 Paolo Molaro <lupus@ximian.com>
914
915         * DirectoryNotFoundException.cs: implemented.
916
917 Tue Sep 25 18:54:06 CEST 2001 Paolo Molaro <lupus@ximian.com>
918
919         * File.cs: fix signatures of the Open() and OpenRead() functions
920         (they are static).
921
922 Thu Sep 13 18:04:23 CEST 2001 Paolo Molaro <lupus@ximian.com>
923
924         * FileLoadException.cs, FileNotFoundException.cs: added.
925
926 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
927
928         * TextReader.cs: implemented the Read method
929
930         * StreamReader.cs: impl. stubs
931
932         * StreamWriter.cs: impl.
933
934         * TextWriter.cs: implemented Write and WriteLine methods
935
936 Sun Aug 26 23:01:41 CEST 2001 Paolo Molaro <lupus@ximian.com>
937
938         * FileAccess.cs, FileMode.cs: change values to be compatible with
939         the ms ones.
940         
941 Sun Aug 26 11:47:56 CEST 2001 Paolo Molaro <lupus@ximian.com>
942
943         * IOException.cs: Implemented System.IO.Exception.
944
945 2001-07-18  Michael Lambert <michaellambert@email.com>
946
947         *SeekOrigin.cs.cs, FileShare.cs, FileMode.cs, FileAccess.cs: Add.
948
949 2001-07-19  Marcin Szczepanski <marcins@zipworld.com.au>
950
951         * System.IO.MemoryStream.cs: Added.  Had quite a few cases of
952         "LAMESPEC", but the tests work against the MS implementation so
953         the major functions are right (ie. Read/Write/Seek).  Some more
954         tests required for the various constructors and exceptions.
955
956 2001-07-16  Marcin Szczepanski <marcins@zipworld.com.au>
957
958         * StringReader.cs, StringWriter.cs, TextReader.cs, TextWriter.cs:
959         New class implemenations.
960
961         * StringReaderTest.cs, StringWriterTest.cs: Test suite for the above.
962