* BufferedStream.cs: On Position change, do not reset the buffer if the
[mono.git] / mcs / class / corlib / System.IO / ChangeLog
1 2004-04-01  Lluis Sanchez Gual  <lluis@ximian.com>
2
3         * BufferedStream.cs: On Position change, do not reset the buffer if the
4         new position is in the limits of the buffer. This fixes #49403.
5
6 2003-04-03  Atsushi Enomoto <atsushi@ximian.com>
7
8         * Path.cs : ChangeExtension() does not remove dot(.) when extension is
9           an empty string.
10
11 2004-04-01  Lluis Sanchez Gual  <lluis@ximian.com>
12
13         * FileSystemInfo.cs: Added InternalRefresh, a virtual method that derived
14           classes can override to perform class specific refreshing.
15         * FileInfo.cs: Refresh existence flag when Refresh is called.
16         * TextWriter.cs: Applied patch by Benjamin Jemlich for bug #52512.
17           The method Write(char) should do nothing by default.
18
19 2004-03-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
20
21         * BinaryReader.cs: don't modify the underlying stream in Peek(). Fixes
22         bug #51741. Patch by Nick Vaughan.
23
24 2004-03-25  Lluis Sanchez Gual  <lluis@ximian.com>
25
26         * FileStream.cs: ReadByte(): when buffering is disabled, read the byte
27         with a direct call to ReadData. In InitBuffer(), if buffering is
28         disabled, create a buffer of one byte, to be used in ReadByte.  This
29         fixes bug #52361.
30
31 2004-03-25  Lluis Sanchez Gual  <lluis@ximian.com>
32
33         * Path.cs: In GetDirectoryName, fixed check for volumeSeparator. This
34           fixes bug #53892.
35
36 2004-03-24  Lluis Sanchez Gual  <lluis@ximian.com>
37
38         * File.cs: In Move, throw IOException instead of ArgumentException if 
39           destination is a directory.
40         * MonoIO.cs: In ExistsDirectory, return ERROR_PATH_NOT_FOUND instead of
41         ERROR_FILE_NOT_FOUND, since we are looking for a directory, not a file.
42         
43 2004-03-15  Andreas Nahr <ClassDevelopment@A-SoftTech.com>
44
45         * StreamWriter.cs: Removed unneeded function
46
47 2004-03-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
48
49         * FileStream.cs: added support for asynchronous I/O without using the
50         OS native libraries if available.
51
52         * FileStreamAsyncResult.cs: IAsyncResult for asynch. I/O.
53
54         * MonoIO.cs: added BeginRead/Write, GetSupportsAsync. Open has now a
55         new parameter to tell ifthe file will be used for asynch operations.
56
57         * Stream.cs: BeginRead/Write do not use delegates. They just are
58         actually synchronous.
59
60         * StreamAsyncResult.cs: IAsyncResult for Stream.
61
62 2004-03-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
63
64         * Directory.cs: check if the error returned in Exists is different
65         from 'path not found' and throw the appropiate exception in that case.
66         See #55160.
67
68 2004-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
69
70         * MonoIO.cs: added case for ERROR_FILENAME_EXCED_RANGE.
71
72 2004-02-25  Jackson Harper <jackson@ximian.com>
73
74         * File.cs: Report the filename when deleting a file fails. Patch
75         by Gert Driesen. Fixes bug #54855.
76         
77 2004-02-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
78
79         * FileStream.cs: remove dangling ^Ms.
80
81 2004-02-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
82
83         * FileStream.cs: (.ctor) Path.DirectoryName can be empty and make
84         Path.GetFullPath crash. Fixed it.
85
86         * MonoIO.cs: fixed typo.
87
88 2004-02-13  Jackson Harper  <jackson@ximian.com>
89
90         * FileStream.cs: Throw some more exceptions for invalid
91         params. Fixes some unit test failures.
92         * BufferedStream.cs: If the stream is closed (can't read from it
93         or write to it) throw an ObjectDisposedException.
94         
95 Tue Jan 20 23:10:22 CET 2004 Paolo Molaro <lupus@ximian.com>
96
97         * StreamWriter.cs, TextWriter.cs: comply with the documented
98         behaviour and use a decode buffer to improve performance.
99
100 2004-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
101
102         * Path.cs: now Path.GetFullPath ("/") returns "/" instead of "".
103
104 2004-01-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
105
106         * Path.cs: add the trailing directory separator only for volumes.
107         Fixes bug #53035.
108
109 2004-01-19  Zoltan Varga  <vargaz@freemail.hu>
110
111         * IntPtrStream.cs: Fix build bustage.
112         
113         * IntPtrStream.cs: Add a 'Closed' event. Also throw exceptions after
114         the stream is closed.
115
116 2004-01-18 Ben Maurer  <bmaurer@users.sourceforge.net>
117
118         * FileStream.cs: Locking from bug #32344 removed. This is not
119         necessary because the correct fix was actually in the console.
120         This fixes bug #53026. Miguel de Icaza reviewed/approved this
121         patch.
122
123 2004-01-14  Zoltan Varga  <vargaz@freemail.hu>
124
125         * FileStream.cs (.ctor): Avoid allocating a large buffer when reading
126         from small files.
127
128 2004-01-10  Atsushi Enomoto <atsushi@ximian.com>
129
130         * Path.cs : GetDirectoryName ("c:\readme.txt") should return "c:\"
131           instead of "c:" . This fixed bug #52735.
132
133 2004-01-04  Nick Drochak <ndrochak@gol.com>
134
135         * Path.cs: Remove defined but unused variable, and also got rid of
136         some unreachable code.  Eliminates some build warnings.
137
138 2003-12-28 Ben Maurer  <bmaurer@users.sourceforge.net>
139
140         * BinaryWriter.cs: use one encoding buffer for writing
141         strings rather than allocting one/string. HUGE perf
142         boost when writing many strings.
143
144 2003-12-25  Atsushi Enomoto <atsushi@ximian.com>
145
146         * Path.cs : Fixed GetFullPath() (and CanonicalizePath()), 
147           HasExtension(), GetPathRoot() and IsPathRooted() to fit with tests.
148
149 2003-12-22  Bernie Solomon  <bernard@ugsolutions.com>
150
151         * FileStream.cs: (.ctor) do not set handle
152         in object until after it is validated via
153         GetFileType so finalizer doesn't see bad handles and
154         initialize this.handle to InvalidHandle
155
156 2003-12-19  Bernie Solomon  <bernard@ugsolutions.com>
157
158         * MonoIO.cs: SetFileTime() Failed Open returns InvalidHandle
159         not Zero
160
161 2003-12-17  Atsushi Enomoto <atsushi@ximian.com>
162
163         * Directory.cs : SetCurrentDirectory() should raise errors for
164           some kind of arguments.
165
166 2003-12-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
167
168         * Path.cs: GetTempPath () ends with DirectorySeparatorChar. Fixes bug
169         #52056.
170
171 2003-12-06  Ravindra  <rkumar@novell.com>
172         *MonoIO.cs: Added a new exception case. It is thrown 
173         when a directory creation is attempted with a name that
174         is already used by an existing file.
175
176 2003-11-28  Dick Porter  <dick@ximian.com>
177
178         * Path.cs: Use the char form of LastIndexOf, so that the
179         comparison is done with the Invariant culture.
180
181 2003-11-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
182
183         * Directory.cs: provide the path when getting the IOException.
184
185 2003-11-18  John Luke  <jluke@cfl.rr.com>
186
187         * CheckArgument.cs:
188         (PathLength): fix recursion found by JonK
189         
190 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
191
192         * Directory.cs:
193         (GetCurrentDirectory):
194         (SetCurrentDirectory): moved here from Environment. Handle error cases.
195
196         * MonoIO.cs: add path to the default error message.
197
198 2003-11-15  Gonzalo Paniagua Javier <gonzalo@ximian.com>
199
200         * StringReader.cs: fixed ReadLine for some cases where there are mixed
201         '\r' and '\n'. Closes bug #51020.
202
203 2003-11-14 Ben Maurer  <bmaurer@users.sourceforge.net>
204
205         * MemoryStream.cs (.ctor): We need to check if buffer is null
206         before we get the Length of it.
207
208 2003-11-14  Miguel de Icaza  <miguel@ximian.com>
209
210         * StreamReader.cs, TextReader, StreamReader (Read): Add [Out]
211
212 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
213
214         * Directory.cs: allow directory names without wildcards in the pattern.
215         Fixes bug #3 50969.
216
217         * SearchPattern.cs: made InvalidChars and WildcardChars internal.
218
219 2003-11-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
220
221         * FileStream.cs: use the argument name when throwing exception.
222
223         * StreamReader.cs:
224         * StringReader.cs:
225         * TextReader.cs: added [In] attribute for the array in Read.
226
227 2003-11-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
228
229         * DirectoryInfo.cs: fixed ToString. Closes bug #50842.
230
231 2003-11-12  Miguel de Icaza  <miguel@ximian.com>
232
233         * Directory.cs: Adjust for missing PlatformID.Unix.
234
235 2003-10-28  Miguel de Icaza  <miguel@ximian.com>
236
237         * StreamReader.cs: Add checks for disposed stream from bug report
238         #48696 (Patrik Reali)
239
240         * TextReader.cs (Read): Return the total number of bytes read, 
241         patch from Patrik Realli.
242
243 2003-10-20  Miguel de Icaza  <miguel@ximian.com>
244
245         * FileStream.cs public FileStream (string name, FileMode mode)
246         constructor: If we pass FileMode.Append, we can not pass
247         FileAccess.ReadWrite.  This fixes bug 44959
248
249 2003-09-26  Miguel de Icaza  <miguel@ximian.com>
250
251         * BufferedStream.cs (Write): Use CanWrite in Write.  Patch from
252         Francisco Figueiredo Jr.
253
254 2003-09-19  Gonzalo Paniagua Javier <gonzalo@ximian.com>
255
256         * BinaryReader.cs: return the correct number of bytes read when there
257         are some bytes from peeking.
258
259 2003-09-11  Lluis Sanchez Gual  <lluis@ximian.com>
260
261         * BufferedStream.cs, FileStream.cs, MemoryStream.cs, Stream.cs:
262           Added [In,Out] attributes to Read method.
263
264 2003-08-05  Martin Baulig  <martin@ximian.com>
265
266         * StreamReader.cs (DiscardBufferedData): Do the same like on the
267         ms runtime: just discard the buffered data, but don't modify the
268         BaseStream.Position.
269
270 2003-08-04  Martin Baulig  <martin@ximian.com>
271
272         * StreamReader.cs (DiscardBufferedData): Implemented.
273
274 2003-07-29  Miguel de Icaza  <miguel@ximian.com>
275
276         * IntPtrStream.cs (Read): Use correct offset here;  Change the
277         code to use a byte* instead of an IntPtr to reduce the number of
278         casts used. 
279
280         (Read): Use Marshal.Copy instead of the now
281         deprecated MemCopy.
282
283         (IntPtrStream): New stream implementation, it maps to a region in
284         memory.
285
286 2003-07-23  Duncan Mak  <duncan@ximian.com>
287
288         * StreamReader.cs (Initialize): This method is not exposed in the
289         API, mark as internal.
290
291 Fri Jul 18 14:42:42 CEST 2003 Paolo Molaro <lupus@ximian.com>
292
293         * MonoIO.cs: 64bit fix from Bernie Solomon <bernard@ugsolutions.com>.
294
295 2003-07-16  Dick Porter  <dick@ximian.com>
296
297         * FileInfo.cs: Update path info when a file is moved.  Patch by
298         John Luke <jluke@cfl.rr.com>, fixes bug 44253.
299
300 2003-07-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
301
302         * MemoryStream.cs: fixed bug #46060. Thanks to Carlos Barcenilla.
303
304 2003-06-30  Zoltan Varga  <vargaz@freemail.hu>
305
306         * FileStream.cs (Dispose): Flush the buffer even if we don't own the
307         handle.
308         * FileStream.cs: Add a new constructor parameter to turn off buffering.
309         This is used by the Console.OpenStandard...() methods. Also fix
310         argument checking in InitBuffer(), so a zero buffer size is also 
311         rejected.
312
313 2003-06-27  Dietmar Maurer  <dietmar@ximian.com>
314
315         * Stream.cs: use async.delegate invoke 
316
317 2003-06-18  Nick Drochak <ndrochak@gol.com>
318
319         * FileSystemInfo.cs: Refresh cache when changeing file times.
320
321 2003-06-11  Zoltan Varga  <vargaz@freemail.hu>
322
323         * FileStream.cs: Fix errors in previous checkins:
324         (Write): Only take the shortcut route if the data is longer than the
325         buffer length.
326         (Write): Flush the buffer before writing out the new data
327         (Write): Flush the buffer after writing out a segment since otherwise
328         we will go into an infinite loop.
329         (FlushBuffer): Remove my last change since it was clearly wrong.
330         (Seek): Run FlushBuffer () after the in-buffer seek optimization.
331         (Seek): Only use the in-buffer optimization if the buffer is not
332         empty.
333         (Length): Call FlushBuffer () since buffer data might change the size
334         of the stream.
335
336 2003-06-09  Ville Palo <vi64pa@kolumbus.fi>
337
338         * FileStream.cs:
339         - removed unusefull bugfix (DirectoryNotFoundException)
340         - Flush before seek.
341         
342 2003-06-09  Ville Palo <vi64pa@kolumbus.fi>
343
344         * FileStream.cs: Check buffer size before append/read -exceptios
345         
346 2003-06-09  Ville Palo <vi64pa@kolumbus.fi>
347
348         * FileStream.cs: Check DirectoryNotFound before FileNotFound.
349         
350 2003-06-09  Ville Palo <vi64pa@kolumbus.fi>
351
352         * FileStream.cs: Does not anymore flush while writing
353         
354 2003-06-02  Nick Drochak <ndrochak@gol.com>
355
356         * FileInfo.cs (MoveTo): Throw exceptions when dest exists, and check
357         for null too.
358
359 2003-05-27  Lluis Sanchez Gual <lluis@ximian.com>
360
361         * BinaryReader.cs: Stream don't need to be seekable to use PeekChar.
362
363 2003-05-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
364
365         * Path.cs: fixed bug #42631.
366
367 2003-05-22  Zoltan Varga  <vargaz@freemail.hu>
368
369         * File.cs (Move): Allow moving of directories.
370         Fix 'destination is a directory' test.
371
372 2003-05-21  Ben Maurer  <bmaurer@users.sourceforge.net>
373
374         * StringWriter.cs: Fixed bug #43431: "StringWriter
375         .ctor(CultureInfo) does not create a new StringBuilder ()"
376
377 2003-05-11  Zoltan Varga  <vargaz@freemail.hu>
378
379         * FileStream.cs (FlushBuffer): After a flush, the buffer is
380         advanced by buf_offset bytes, not buf_length bytes.
381
382 2003-05-16  Dick Porter  <dick@ximian.com>
383
384         * MonoIO.cs: Implement GetTempPath
385
386 2003-05-14  Gonzalo Paniagua Javier <gonzalo@ximian.com>
387
388         * DirectoryInfo.cs: fixed bug #42991.
389         * Path.cs:
390         (CanonicalizePath): store the value of the trimmed input string. Make it
391         work with paths such as "/home/xxx/.".
392
393 2003-05-08  Ben Maurer <bmaurer@users.sourceforge.net>
394         * Path.cs 
395         (CanonicalizePath) Fixed bug #42631, which duplicated the
396         root part of the path under Windows.
397
398 2003-05-08  Ville Palo <vi64pa@kolumbus.fi>
399
400         * FileSystemInfo.cs: Added 1.1 properties LastAccessTimeUtc, 
401         LastWriteTimeUtc and CreationTimeUtc
402         
403 2003-05-07  Ben Maurer <bmaurer@users.sourceforge.net>
404         * Path.cs 
405         (GetPathRoot) Added support for UNC paths.
406         (CanonicalizePath) Added optimizations per Miguel's requests.
407
408 2003-05-06  Ville Palo <vi64pa@kolumbus.fi>
409
410         * BufferedStream.cs: 
411           - Removed unusefull code.
412           - Added ObjectDisposedException to Position
413           - Dont flush if stream is allready closed.
414           - Flush throws also ObjectDisposedException.
415         * Directory.cs:
416           - GetFileSystemEtries: ArgumentNullException if pattern is null
417         * DirectoryInfo.cs: Fixed little MoveTo () bug.
418         * FileInfo.cs:
419           - Exists: If file does not exists when instance is created the
420           value of the Exists property does not change even if file is created
421           afterwards.
422           - Delete: If path is a directory UnauthorizedException is thrown.
423           - CopyTo: Now we can overwrite file if wanted.
424         * Path.cs: 
425           - GetFullPath: Now throws exception when path is "   ".
426         
427 2003-05-04  Ben Maurer <bmaurer@users.sourceforge.net>
428         * Directory.cs (GetLogicalDrives) Marked as MonoTODO
429         because we need to implement the method on Windows.
430         * Path.cs 
431         (CanonicalizePath) Added new function to get
432         rid of . and .. in path names. Need to figure out what
433         other functions should call this.
434         (GetFullPath) Added call to the above function.
435         
436 2003-05-04  Gonzalo Paniagua Javier <gonzalo@ximian.com>
437
438         * StreamReader.cs:
439         (.ctor): fixed parameters passed to FileNotFoundException.
440
441 2003-04-25  Dietmar Maurer  <dietmar@ximian.com>
442
443         * BinaryReader.cs (Read): make sure the buffer is big enough (fix
444         bug # 40702)
445
446 2003-04-24  Pedro Martinez Julia  <yoros@wanadoo.es>
447
448         * BufferedStream.cs: Test if it's possible to seek in a Stream
449         before access to Position. This prevents the exception thrown when
450         the stream is System.Net.Sockets.NetworkStream.
451
452 2003-04-22  Ville Palo <vi64pa@kolumbus.fi>
453
454         * Directory.cs: clean up --> performance improvment. Some exceptions
455         are now checked in File.cs.
456         * File.cs: Implemented Get/SetXXXTimeUtc () methods. Some bugfixes.
457         
458 2003-04-21  Ville Palo <vi64pa@kolumbus.fi>
459
460         * Directory.cs: lots of fixes. 
461           - Added GetXXXtimeUtc () (v1.1) methods.
462           - Added SetXXXtimeUtc () (v1.1) methods.      
463         
464 2003-04-20  Igor Nosyryev <nosyryev@attbi.com>
465
466         * StringReader.cs (Read): Increment nextChar by charsToRead
467         instead of count, that will guarantee that the next time the
468         method is called, it will return 0 on an empty string rather than
469         throwing an exception
470
471 2003-04-19  Ville Palo <vi64pa@kolumbus.fi>
472
473         * BufferedStream.cs: Some fixes, mostly throwing exceptions.
474         * MemoryStream.cs: Changed the order of exception checking
475         * StringReader.cs: little clean up
476         
477 2003-04-14  Ville Palo <vi64pa@kolumbus.fi>
478
479         * BinaryWriter.cs: Fixed decimal writing and lots of 
480         ObjectDisposedExceptions added.
481         
482 2003-04-13  Ville Palo <vi64pa@kolumbus.fi>
483
484         * BinaryReader.cs: Fix to ReadDecimal() method.
485         
486 2003-04-13  Ville Palo <vi64pa@kolumbus.fi>
487
488         * StringReader.cs: Added some ObjectDisposedExceptions.
489         * StringWriter.cs: Added some ObjectDisposedExceptions.
490         * BinaryReader.cs: Added some ObjectDisposedExceptions.
491         
492 2003-04-13  Gonzalo Paniagua Javier <gonzalo@ximian.com>
493
494         * FileStream.cs: fixed the windows build. This is an mcs bug. I'll
495         fill a bug report.
496
497 2003-04-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
498
499         * FileStream.cs: fixed bug #40182 and made more unit test pass.
500
501 2003-04-11  Ville Palo <vi64pa@kolumbus.fi>
502
503         * FileStream.cs: Added new methods Lock () and Unlock ()
504         
505 2003-04-11  Ville Palo <vi64pa@kolumbus.fi>
506
507         * StringReader.cs: Throws exceptions if constructor parameter is null.
508         
509 2003-04-11  Ville Palo <vi64pa@kolumbus.fi>
510
511         * StringWriter.cs: Now throws an exception if StringBuilder parameter
512         is null
513         
514 2003-04-05  Miguel de Icaza  <miguel@ximian.com>
515
516         * TextWriter.cs: Implemented Synchronized method.
517
518         * TextReader.cs: Implemented Synchronized method.
519
520 2003-04-04  Miguel de Icaza  <miguel@ximian.com>
521
522         * FileStream.cs (Read, ReadByte, Seek): throw
523         ObjectDisposedException if the handle has been released.
524         
525         (Read): Throw exceptions specified in the spec.
526
527         (Read, Write, ReadSegment, WriteSegment): There is no requirement for any
528         instance methods of FileStream to be thread safe, so remove all
529         the calls to lock on the object
530
531 2003-03-31  Nick Drochak <ndrochak@gol.com>
532
533         * Path.cs (GetDirectoryName): Throw proper execption when path is empty.
534
535 2003-03-20  Lluis Sanchez Gual <lluis@ideary.com>
536
537         * FileNotFoundException.cs: fixed serialization bug.
538
539 2003-03-18  Atsushi Enomoto <ginga@kit.hi-ho.ne.jp>
540
541         * StringWriter.cs : don't release internalString on Dispose().
542
543 2003-03-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
544
545         * StreamReader.cs: fixed bug #39280.
546
547 2003-03-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
548
549         * Directory.cs: readded mkdir -p behavior. Thanks to kiwnix for
550         pointing it out.
551
552 2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
553
554         * MemoryStream.cs: general fixes and reformatted. Passes all tests in
555         the new MemoryStreamTest.
556
557 2003-03-05  Gonzalo Paniagua Javier <gonzalo@ximian.com>
558
559         * MemoryStream.cs: undo my bogus fix in ToArray. Allow GetBuffer and
560         ToArray even after closing the stream.
561
562 2003-03-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
563
564         * Directory.cs:
565         (Move): don't use File.Move.
566         * DirectoryInfo.cs: fixed Name property.
567         
568         Fixes bug #37755.
569
570 2003-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
571
572         * DirectoryInfo.cs: changed ToString to match MS behavior.
573         * Path.cs: further fixes to GetDirectoryName to return null in the
574         same cases that MS does.
575
576         Fixes bug #38387.
577
578 2003-03-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
579
580         * Path.cs: fixed a couple of bugs reported in #35906.
581
582 2003-03-01  Gonzalo Paniagua Javier <gonzalo@ximian.com>
583
584         * Directory.cs: fixed bugs #38939 and #38940. No need for separate
585         unix/windows/unc shares code paths.
586
587 2003-02-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
588
589         * File.cs: fix by Elan Feingold <efeingold@mn.rr.com> for
590         SetCreationTime, SetLastAccessTime and SetLastWriteTime.
591
592 2003-02-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
593
594         * MemoryStream.cs:
595         (ToArray): return only the portion of the buffer that contains
596         data, not the whole buffer. (note: this makes XmlDocument.Load work
597         again with documents that have a <?xml without the 'encoding'
598         attribute, which makes gtk-sharp generator work again).
599
600 2003-02-25  Nick Drochak <ndrochak@gol.com>
601
602         * File.cs (GetCreationTime): Throw proper execption when path is not
603         found.
604
605 Tue Feb 25 11:55:35 CET 2003 Paolo Molaro <lupus@ximian.com>
606
607         * MemoryStream.cs: make it behave sanely when the stream is
608         incrementally expanded.
609
610 2003-02-21  Dick Porter  <dick@ximian.com>
611
612         * FileStream.cs: Use locks around buffer manipulations.  Fixes bug
613         32344
614
615 2003-02-18  Dick Porter  <dick@ximian.com>
616
617         * FileStream.cs: Make FileMode.Append work, and check for Seeking
618         back over old data (undocumented ms behaviour, throws an exception
619         if you try).  Fixes bug 35975.
620
621 2003-02-17  Dick Porter  <dick@ximian.com>
622
623         * FileStream.cs: Don't close the handle if the stream doesn't own
624         it.  Patch from Raymond Penners (raymond@dotsphinx.com), bug
625         35623.
626
627 2003-02-14  Zoltan Varga  <vargaz@freemail.hu>
628
629         * FileStream.cs (Write): flush after writing the last segment as well.
630
631 2003-02-11  Gonzalo Paniagua Javier <gonzalo@ximian.com>
632
633         * StringReader.cs:
634         (ReadLine): fixed the case when the string ends with a '\n'.
635
636 2003-02-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
637
638         * MemoryStream.cs: create the buffer of the specified capacity.
639
640 2003-01-31  Patrik Torstensson
641
642         * MemoryStream.cs: use BlockCopyInternal instead of Array.Copy, this is
643         the same way as MS does it (performance improvement)
644
645 2003-01-29  Zoltan Varga  <vargaz@freemail.hu>
646
647         * Directory.cs (GetFileSystemEntries): moved error handling to the
648         correct instance of GetFileSystemEntries so all callers can enjoy it.
649
650 2003-01-28  Zoltan Varga  <vargaz@freemail.hu>
651
652         * File.cs: add error handling to Get...Time methods.
653
654 2003-01-26  Zoltan Varga  <vargaz@freemail.hu>
655
656         * Directory.cs: fix GetParent so it actually works.
657
658 2003-01-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
659
660         * Path.cs: fixlet to ChangeExtension for the case when the path is
661         empty.
662
663 2003-01-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
664
665         * BufferedStream.cs: don't try to write a 0 sized array on when
666         flushing the stream.
667         
668         Fixes bug #37045.
669
670 2003-01-18  Jonathan Pryor <jonpryor@vt.edu>
671
672         * FileStream.cs: Add IsAsync property.  (Documented in "C# In A Nutshell".)
673
674 2003-01-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
675
676         * MemoryStream.cs: fixed bug #36319.
677
678 2002-12-16  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
679         
680         * Directory.cs: Some fixes to SMB shares handling, and not compiling 
681         with csc, mcs compiles it correctly (mcs bug 35652)
682
683 2002-12-14  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
684
685         * Directory.cs: Some fixes related to correct some exceptions thrown
686
687 2002-12-11  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
688
689         * Directory.cs: Some Exceptions added, fixed GetParent(),
690         CreateDirectory() should work with unix, native windows and
691         windows samba shares. Converted end-lines from dos-mode to unix-mode
692
693 2002-12-08  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
694
695         * Directory.cs: CreateDirectory  works now with Absolute paths
696         too, not only with relative ones.
697
698 2002-12-07  Peter Williams  <peterw@ximian.com>
699
700         * Directory.cs: Don't use the uninitialized pathsumm here.
701         Don't try and create "" if we're using an absolute path.
702
703 2002-12-07  Eduardo Garcia Cebollero <kiwnix@yahoo.es>
704
705         * Directory.cs: Now the creation of a new directory works recursively
706         it will make parents as needed.
707
708 2002-11-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
709
710         * BufferedStream.cs: applied patch from <carlosga@telefonica.net> that
711         fixes Flush ().
712
713 Tue Nov 19 13:01:22 CET 2002 Paolo Molaro <lupus@ximian.com>
714
715         * StreamWriter.cs: output the encoding preamble at the start of a
716         stream if needed.
717
718 2002-11-07  Gonzalo Paniagua Javier <gonzalo@ximian.com>
719
720         * StreamReader.cs: Changed all Encoding.UTF8 to Encoding.UTF8Unmarked.
721
722 2002-11-06  Miguel de Icaza  <miguel@ximian.com>
723
724         * StreamWriter.cs: Changed all Encoding.UTF8 to Encoding.UTF8Unmarked.
725
726 2002-10-31  Dick Porter  <dick@ximian.com>
727
728         * FileStream.cs: Fix buffering properly this time.  Also kludge
729         around broken pipe errors, treating them as EOF instead of
730         throwing an IO exception.
731
732         * MonoIO.cs: Return the error status in a parameter, as the
733         GetLastError() value has long since been blown away if we try and
734         look it up in a subsequent internal call invocation.
735
736         * FileSystemInfo.cs: 
737         * FileInfo.cs: 
738         * File.cs: 
739         * Directory.cs: MonoIO methods now have an error parameter
740
741 2002-10-31  Gonzalo Paniagua Javier <gonzalo@ximian.com>
742
743         * TextReader.cs: implemented ReadBlock ().
744
745 2002-10-30  Miguel de Icaza  <miguel@ximian.com>
746
747         * StreamWriter.cs: Ditto for Null stream.
748
749         * BinaryReader.cs: Use Unmarked here too.
750
751         * BinaryWriter.cs: Use the UTF8Unmarker encoding by default, this
752         is what .NET does.
753
754 2002-10-23  Dick Porter  <dick@ximian.com>
755
756         * FileStream.cs: Implemented CanSeek, and used it around all the
757         calls to MonoIO.Seek.  Fixed buffering in Read() so that it
758         doesn't block forever on short reads.
759
760         * MonoFileType.cs: New enum for GetFileType
761         
762         * MonoIO.cs: Added GetFileType
763
764 2002-10-21  Gonzalo Paniagua Javier <gonzalo@ximian.com>
765
766         * StreamReader.cs: ReadLine now treats a \r not followed by a \n as a
767         \n (this is what MS does).
768
769 2002-10-18  Dick Porter  <dick@ximian.com>
770
771         * FileStream.cs: SeekOrigin.End still calculates the offset from
772         the end of the file with positive values extending the length.
773         Fixes bug 32471.
774
775 2002-10-06  Gonzalo Paniagua Javier <gonzalo@ximian.com>
776
777         * Path.cs: some cleanup. Thanks to Martin Aliger.
778
779 2002-10-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
780
781         * FileStream.cs: throw an exception if trying to open a directory.
782         Thanks to Martin Aliger.
783
784 2002-10-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
785
786         * Path.cs: fixes bug #28046.
787
788 2002-09-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
789
790         * StreamReader.cs: give more information when wrong parameters passed.
791
792 2002-09-21  Miguel de Icaza  <miguel@ximian.com>
793
794         * FileStream.cs: Do not call FSync on the file.
795
796 2002-09-16  Miguel de Icaza  <miguel@ximian.com>
797
798         * TextWriter.cs (Null): The Null field should be an instance of a
799         TextWriter class that does nothing, so it is an instance of the
800         NullTextWriter class.
801
802 2002-09-16  Nick Drochak  <ndrochak@gol.com>
803
804         * MemoryStream.cs (Close): Don't throw an exception if the stream
805         is already closed.
806
807 2002-09-15  Miguel de Icaza  <miguel@ximian.com>
808
809         * FileStream.cs (Dispose): Call FlushBuffer(), and not Flush, as
810         Flush calls fsync().  
811
812         The API docs show no explicit mention that Flush() should even do
813         an fsync, I am thinking that we should drop that from the
814         runtime. 
815
816 2002-09-09  Miguel de Icaza  <miguel@ximian.com>
817
818         * StreamWriter.cs: When no encoding is provided, create an
819         encoding without markers, this is what MS does.
820
821 2002-09-06  Miguel de Icaza  <miguel@ximian.com>
822
823         * StreamReader.cs: Implement detection of byte marks and skipping
824         of byte marks at the beginning of the stream.
825
826         (ReadToEnd): Use buffered read instead of char-by-char
827         processing. 
828
829         Correct the default arguments for creating the StreamReader.
830
831 2002-08-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
832
833         * CheckArgument.cs: fixed check for empty string.
834         * Path.cs: various fixes. It passes all the tests in new PathTest.
835
836 2002-08-29  Duncan Mak  <duncan@ximian.com>
837
838         * StreamWriter.cs: Set DisposedAlready after calling flush. Fixes
839         the build for gtk#.
840
841 2002-08-27  Gonzalo Paniagua Javier <gonzalo@ximian.com>
842
843         * BinaryReader.cs:
844         * BinaryWriter.cs:
845         * MemoryStream.cs:
846         * StreamReader.cs:
847         * StreamWriter.cs:
848         * StringReader.cs:
849         * StringWriter.cs:
850         * TextWriter.cs: IDisposable fixes.
851
852 2002-08-24  Miguel de Icaza  <miguel@ximian.com>
853
854         * StreamReader.cs: Removed TODOs, as the code seems to be
855         complete. 
856
857         * Path.cs (GetTempFileName): Make this routine atomic by not
858         testing and then creating, but using the create call to ensure
859         that we own the filename.
860
861 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
862
863         * FileLoadException.cs: implemented ToString.
864
865         * StreamWriter.cs: added Null field and implemented Write (char) and
866         Write (char []).
867
868 2002-08-23  Gonzalo Paniagua Javier <gonzalo@ximian.com>
869
870         * StreamReader.cs: implemented NullStreamReader.
871
872 2002-08-21  Miguel de Icaza  <miguel@ximian.com>
873
874         * Path.cs (GetDirectoryName): Fix for filenames with size = 1
875
876         * File.cs: Removed all references that threw exceptions when the
877         paths contains a colon, as this is a valid part of an identifier
878         on Unix.
879
880         Everywhere: The String.Empty return from GetDirectoryName means
881         that there is no directory information about the path.
882
883 2002-08-20  Gonzalo Paniagua Javier <gonzalo@ximian.com>
884
885         * FileNotFoundException.cs: use Message and InnerException from base
886         class. Changed Message and ToString ().
887
888 2002-08-19  Dick Porter  <dick@ximian.com>
889
890         * BinaryWriter.cs: The length of a string is counted in bytes, not
891         chars
892
893 2002-08-18  Dick Porter  <dick@ximian.com>
894
895         * BinaryReader.cs: Fixed buffering
896
897 2002-08-09  Nick Drochak  <ndrochak@gol.com>
898
899         * BinaryReader.cs: added virtual to Dispose(bool).
900
901 2002-08-03  Jason Diamond  <jason@injektilo.org>
902
903         * StringWriter.cs: Return UnicodeEncoding for Encoding property.
904
905 2002-08-03  Jason Diamond  <jason@injektilo.org>
906
907         * StreamWriter.cs: Use GetByteCount() to get exact length instead
908         of GetMaxByteCount when converting chars to bytes.
909
910 2002-07-31  Duncan Mak  <duncan@ximian.com>
911
912         * StreamReader.cs: 
913         (Dispose): Added and implmented.
914
915         * StreamWriter.cs: 
916         (Dispose): Fixed visibility.
917         (Initialize): Fixed visibility, made internal.
918
919         * BinaryReader.cs:
920         (Dispose): Fixed visibility.
921
922 2002-07-28  Gonzalo Paniagua Javier <gonzalo@ximian.com>
923
924         * File.cs:
925         (Create): allow file names without path.
926
927 Fri Jul 26 15:45:04 CEST 2002 Paolo Molaro <lupus@ximian.com>
928
929         * FileStream.cs: patch from erik@bagfors.nu to add
930         Name property support.
931
932 2002-07-20  Dick Porter  <dick@ximian.com>
933
934         * MonoIO.cs: Added icall to CreatePipe
935
936 2002-07-18  Gonzalo Paniagua Javier <gonzalo@ximian.com>
937
938         * FileInfo.cs: fixes buglet #27940
939
940 2002-07-17  Gonzalo Paniagua Javier <gonzalo@ximian.com>
941
942         * Path.cs: removed unneeded line from GetExtension.
943
944 2002-07-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
945
946         * FileStream.cs:
947         (.ctor): call MonoIO.GetException with the file name.
948
949 2002-07-02  Mike Kestner  <mkestner@speakeasy.net>
950
951         * StreamReader.cs: Guard against ^\n lines as pointed out by Gonzalo.
952
953 2002-07-02  Mike Kestner  <mkestner@speakeasy.net>
954
955         * StreamReader.cs: Revert the last Peek change and fix the ReadLine
956         end of line detection code instead.
957
958 2002-07-02  Gonzalo Paniagua Javier <gonzalo@ximian.com>
959
960         * StreamReader.cs:
961         (Peek): no need to have seek capabilitites. 
962
963 2002-06-17  Dietmar Maurer  <dietmar@ximian.com>
964
965         * Path.cs (ChangeExtension): handle some special cases (fixes bug #25319)
966
967         * File.cs (Delete): only call Directory.Exists() if DirName != ""
968
969 2002-06-12  Gonzalo Paniagua Javier <gonzalo@ximian.com>
970
971         * Directory.cs: fixed bug #26133 and also test if the directory exist
972         before performing the search.
973
974 2002-06-12  Nick Drochak  <ndrochak@gol.com>
975
976         * StringReader.cs (ReadLine): Return null when we get to end of the
977         string.
978
979 2002-05-22  Lawrence Pit  <loz@cable.a2000.nl>
980
981         * StreamWriter.cs: added ability to write null value
982         
983 2002-05-19  Lawrence Pit  <loz@cable.a2000.nl>
984
985         * Stream.cs: NullStream.ReadByte now returns -1 instead of 0 to
986         prevent endless loops.
987
988 2002-05-17  Dan Lewis  <dihlewis@yahoo.co.uk>
989
990         * FileStream.cs: Enforce lower bound on buffer size.
991
992 2002-05-16  Piers Haken <piersh@friskit.com>
993
994         * Stream.cs: Implement synchronous {Begin|End}{Read|Write}() methods.
995
996 2002-05-17  Nick Drochak  <ndrochak@gol.com>
997
998         * StreamWriter.cs: Implement buffering.  Also implemented dispose
999         pattern as recommended by the MS docs.  Must call Close() now
1000         to ensure the buffer is flushed.
1001
1002 2002-05-15  Nick Drochak  <ndrochak@gol.com>
1003
1004         * Path.cs (GetDirectoryName): Return String.Empty if there is no
1005         directory
1006
1007         * StreamReader.cs: Add some parameter checking on file names.
1008
1009         * StreamWriter.cs: Add some parameter checking on file names.
1010
1011 2002-05-14 Nick Drochak  <ndrochak@gol.com>
1012
1013         * File.cs: Add parameter checks to most methods. Not completely done,
1014         but all current unit tests pass.
1015
1016         * Path.cs: Implement GetTempFileName().
1017
1018 2002-05-10  Nick Drochak  <ndrochak@gol.com>
1019
1020         * StreamWriter.cs (Flush): Throw proper exception if internal stream
1021         has already been closed when we try to flush.
1022
1023 2002/05/10  Nick Drochak <ndrochak@gol.com>
1024
1025         * FileNotFoundException.cs (ToString): Don't try to use the inner
1026         exception, because it might be null.  Use the message instead.
1027
1028 2002-05-09  Nick Drochak  <ndrochak@gol.com>
1029
1030         * File.cs (Delete): Do not throw an exception if the file does not
1031         exist.
1032
1033 2002-05-08  Mike Gray     <mikeg@mikegray.org>
1034
1035         * File.cs: According to ECMA spec and MS docs Copy(src, dest)
1036         should not overwrite dest by default.
1037
1038 2002-05-08  Nick Drochak  <ndrochak@gol.com>
1039
1040         * StreamWriter.cs: Add paramter check to constructors and throw
1041         exceptions where appropriate.
1042
1043 Tue May 7 11:47:46 CEST 2002 Paolo Molaro <lupus@ximian.com>
1044
1045         * StreamReader.cs: return the number of chars read even if we diddn't
1046         fill the whole buffer (makes Sergey's ilasm work with mono).
1047
1048 2002-05-07  Mike Gray     <mikeg_us@hotmail.com> 
1049
1050         * FileInfo.cs (Create): Implement missing method.
1051
1052 2002-05-07  Mike Gray     <mikeg_us@hotmail.com>
1053
1054         * File.cs: Implemented CreateText method, and fixed dst compares
1055         to compare against "" instead of null twice.
1056
1057 2002-05-05  Nick Drochak  <ndrochak@gol.com>
1058
1059         * StreamReader.cs: Throw exceptions where needed. Changed Null field to
1060         use new internal class since null cannot be passed to constructor 
1061         anymore. Also, fix a coule of small bugs.
1062
1063 2002-05-03  Nick Drochak  <ndrochak@gol.com>
1064
1065         * MemoryStream.cs: Refrain from allocating array until the space is
1066         really needed. This fixes a bug in the Length property when the
1067         constructor without the byte array is used.
1068
1069 2002-05-01  Duncan Mak  <duncan@ximian.com>
1070
1071         * DirectoryNotFoundException.cs (constructor): Added missing
1072         serialization constructor.
1073
1074 2002-04-30  Duncan Mak  <duncan@ximian.com>
1075
1076         * FileLoadException.cs (constructors): Added missing (string,
1077         string) ctor, as well as (string, string, Exception) ctor.
1078
1079         (Message): Added more info to the error message
1080
1081         (ToString): Added. We'll need to add the StackTrace stuff when
1082         that works.
1083
1084         * FileShare.cs: Add a missing field, Inheritable.
1085         
1086         * TextReader.cs: Renamed Synchronised method to Synchronized.
1087
1088         * TextWriter.cs: Renamed Synchronised method to Synchronized.
1089         Renamed protected member coreNewLine to CoreNewLine.
1090
1091 2002-04-30  Sergey Chaban  <serge@wildwestsoftware.com>
1092
1093         * BinaryReader.cs: Allocate buffer before its first use.
1094         Handle end of stream properly. Methods to read native types
1095         (ReadInt* etc.) are little-endian (see Compact Framework docs).
1096
1097         * BinaryWriter.cs: Store data in little-endian format.
1098         Use internal buffer for conversions.
1099
1100 2002-03-31  Dick Porter  <dick@ximian.com>
1101
1102         * Directory.cs: Strip out "." and ".." from returned list
1103
1104         * FileAttributes.cs: Get the right enum values
1105
1106 2002-03-28  Dietmar Maurer  <dietmar@ximian.com>
1107
1108         * TextWriter.cs (write): added check for null
1109
1110 2002-03-28  Dan Lewis  <dihlewis@yahoo.co.uk>
1111
1112         * Directory.cs: Throws DirectoryNotFoundException.
1113         * MonoIO.cs: Fixed to work around enum problem.
1114
1115 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
1116
1117         * StreamReader.cs: Implemented ReadLine() and ReadEnd().
1118
1119 2002-03-27  Dan Lewis  <dihlewis@yahoo.co.uk>
1120
1121         * Directory.cs, File.cs, FileSystemInfo.cs, FileInfo.cs,
1122         DirectoryInfo.cs, Path.cs: Modified to use MonoIO class instead of
1123         wrapper and PAL classes.
1124
1125         * MonoIO.cs, MonoIOStat.cs, MonoIOError.cs: Added.
1126
1127 2002-03-25  Mike Kestner <mkestner@speakeasy.net>
1128
1129         * MemoryStream.cs (Read): Fixed bug in exception throw.
1130
1131 2002-03-24  Mike Kestner <mkestner@speakeasy.net>
1132
1133         * StreamReader.cs (ReadBuffer): Fix buffer merging bugs.
1134
1135 2002-03-23  Martin Baulig  <martin@gnome.org>
1136
1137         * StreamReader.cs: Always do buffered reading, use 4k blocks.
1138         (Read (char[], int, int)): Implemented.
1139         (DiscardBufferedData): Implemented.
1140
1141 2002-03-21  Mike Kestner <mkestner@speakeasy.net>
1142
1143         * StreamReader.cs : Fill out, add buffering, and use encoding.
1144
1145 2002-03-19  Martin Baulig  <martin@gnome.org>
1146
1147         * StreamWriter.cs (StreamWriter (string)): The default is to override
1148         the file, not to append to it.
1149         (StreamWriter (string path, bool append)): When appending, seek to the
1150         end of the file, otherwise truncate the file to zero length.
1151         (Dispose (bool)): Close the internalStream.
1152         (Flush): Flush the interalStream.
1153         (Write (char[], int, int)): Flush the internalStream in auto-flush-mode.
1154
1155 2002-03-19  Dan Lewis <dihlewis@yahoo.co.uk>
1156
1157         * FileStream.cs: Flush buffer before FileSetLength.
1158
1159 2002-02-28  Miguel de Icaza  <miguel@ximian.com>
1160
1161         * Stream.cs (NullStream): Do not track position, this beast does
1162         nothing in practice.
1163
1164 2002-03-15  Dan Lewis <dihlewis@yahoo.co.uk>
1165
1166         * SearchPattern.cs: New class. Glob matching code for Directory.
1167         * Directory.cs: Changed to use SearchPattern instead of mono_glob_*()
1168
1169 2002/03/15 Nick Drochak <ndrochak@gol.com>
1170
1171         * DirectoryInfo.cs: Fixed the overloaded GetDirectories and GetFiles.
1172         This code seemed to be copied from somewhere, and it was close,
1173         but didn't match the docs.  This was the last bit needed to get
1174         NAnt to compile with our class libs.
1175
1176 2002-03-12  Duncan Mak  <duncan@ximian.com>
1177
1178         * EndOfStreamException.cs:
1179         * FileLoadException.cs:
1180         * FileNotFoundException.cs:
1181         * PathTooLongException.cs: Changed the base classes to IOException
1182         instead of SystemException.
1183
1184         * IOException.cs: Added missing constructors.
1185         
1186 2002-03-07  Nick Drochak  <ndrochak@gol.com>
1187
1188         * FileMode.cs: Docs don't say this should be explicitly derived from
1189         int, so just make it a normal Enum.
1190
1191 2002-03-02  Jason Diamond  <jason@injektilo.org>
1192
1193         * StringReader.cs: Fixed off-by-one error in Peek() and Read().
1194
1195 2002-02-12  Nick Drochak  <ndrochak@gol.com>
1196
1197         * PathTooLongException.cs: put it in the correct namespace
1198         * EndOfStreamException.cs: put it in the correct namespace
1199
1200 Thu Jan 31 17:32:32 CET 2002 Paolo Molaro <lupus@ximian.com>
1201
1202         * Directory.cs: handle opendir() return NULL and absolute filenames.
1203
1204 2002-01-31  Duncan Mak  <duncan@ximian.com>
1205
1206         * FileLoadException.cs:
1207         * FileNotFoundException: Added missing bits for serialization.
1208
1209 Thu Jan 24 17:42:54 CET 2002 Paolo Molaro <lupus@ximian.com>
1210
1211         * Directory.cs: allow directories in GetFiles() mask.
1212
1213 2002-01-23  Miguel de Icaza  <miguel@ximian.com>
1214
1215         * FileInfo.c (CopyTo, MoveTo): Implement.
1216
1217         * FileStream.cs: Add argument checking to the constructor.
1218
1219         * File.cs: Rewrote most of the file.  Implement Copy, Open, Create,
1220         OpenText, OpenWrite, Move.  Made pending methods flagged as MonoTODO. 
1221         
1222         * Directory.cs (Delete): reimplement without using DirectoryInfo.
1223         (Delete): Implement the recursive version.
1224         (GetCreationTime, GetLastWriteTime, GetLastAccessTime): Implement.
1225         (Move): Reimplement.
1226         (getNames): dead code removal.
1227
1228         * Path.cs: define an internal DirectorySeparatorStr that we use in
1229         a few spots.
1230
1231         * Wrapper.cs: Updated to new version.
1232         
1233         * DirectoryInfo (Delete): Implement using the Directory API.
1234
1235         * DirectoryInfo.cs (GetFiles, GetDirectories, GetFileSystemInfos,
1236         Delete, Create, Parent, Exists, MoveTo): Implement. 
1237
1238         * Directory.cs (GetListing): implement new utility function.
1239         (GetDirectories): Implement.
1240         (GetFileSystemEntries): Implement.
1241         (GetFiles): Implement.
1242
1243         * CheckArgument.cs (Path): Do not allow null by default.
1244
1245 Tue Jan 22 22:53:23 CET 2002 Paolo Molaro <lupus@ximian.com>
1246
1247         * DirectoryInfo.cs, FileInfo.cs: do not use Debug from the system
1248         assembly in corlib.
1249
1250 2002-01-20 Nick Drochak  <ndrochak@gol.com>
1251
1252         * SeekOrigin.cs: Added Serializable attribute.
1253
1254 2002-01-19  Duncan Mak  <duncan@ximian.com>
1255
1256         * PathTooLongException.cs: 
1257         * EndOfStreamException.cs: Added to CVS.
1258
1259 Thu Jan 10 12:06:46 MST 2002 Matt Kimball <matt@kimball.net>
1260
1261         * BufferedStream.cs: Initial implemenation.  The synchronous
1262         methods for both reading and writing are implemented.  I'll do the
1263         asynchronous methods in a bit.
1264         
1265 Wed Jan  9 16:04:39 MST 2002 Matt Kimball <matt@kimball.net>
1266
1267         * BinaryWriter.cs: Initial implementation.  And it's all there.
1268
1269         * BinaryReader.cs: The constructor now uses the passed in encoding,
1270         not UTF8 always.
1271
1272 Wed Jan  9 13:54:28 MST 2002 Matt Kimball <matt@kimbal.net>
1273
1274         * BinaryReader.cs: Initial implementation.  I think it's complete.
1275
1276 2002-01-04  Ravi Pratap  <ravi@ximian.com>
1277
1278         * CheckArgument.cs, CheckPermission.cs, Directory.cs: MonoTODO
1279         attribute decorations.
1280
1281         * DirectoryInfo.cs, File.cs, FileInfo.cs, FileSystemInfo.cs,
1282         Path.cs, TextReader.cs, TextWriter.cs : Ditto.
1283
1284         * FileLoadException.cs, FileNotFoundException.cs, StreamReader.cs: 
1285         Ditto.
1286
1287 2001-12-11  Dick Porter  <dick@ximian.com>
1288
1289         * FileStream.cs: Use handles rather than casting file descriptors.
1290         Added Handle property.
1291
1292 Wed Nov 14 16:47:47 CET 2001 Paolo Molaro <lupus@ximian.com>
1293
1294         * CheckPermission.cs: disable ModeAccess() code: it's wrong.
1295         * FileStream.cs: only trow an exception if the read failed in ReadByte().
1296         * StreamReader.cs: implement Peek and Read.
1297         * TextWriter.cs: CLSCompliant updates.
1298
1299 2001-11-10  Sean MacIsaac  <macisaac@ximian.com>
1300
1301         * FileNotFoundException.cs: Added some constructors
1302
1303         * Path.cs (GetFullPath): Fixed implementation
1304
1305 Fri Nov 2 18:27:58 CET 2001 Paolo Molaro <lupus@ximian.com>
1306
1307         * DirectoryNotFoundException.cs: implemented.
1308
1309 Tue Sep 25 18:54:06 CEST 2001 Paolo Molaro <lupus@ximian.com>
1310
1311         * File.cs: fix signatures of the Open() and OpenRead() functions
1312         (they are static).
1313
1314 Thu Sep 13 18:04:23 CEST 2001 Paolo Molaro <lupus@ximian.com>
1315
1316         * FileLoadException.cs, FileNotFoundException.cs: added.
1317
1318 2001-08-28  Dietmar Maurer  <dietmar@ximian.com>
1319
1320         * TextReader.cs: implemented the Read method
1321
1322         * StreamReader.cs: impl. stubs
1323
1324         * StreamWriter.cs: impl.
1325
1326         * TextWriter.cs: implemented Write and WriteLine methods
1327
1328 Sun Aug 26 23:01:41 CEST 2001 Paolo Molaro <lupus@ximian.com>
1329
1330         * FileAccess.cs, FileMode.cs: change values to be compatible with
1331         the ms ones.
1332         
1333 Sun Aug 26 11:47:56 CEST 2001 Paolo Molaro <lupus@ximian.com>
1334
1335         * IOException.cs: Implemented System.IO.Exception.
1336
1337 2001-07-18  Michael Lambert <michaellambert@email.com>
1338
1339         *SeekOrigin.cs.cs, FileShare.cs, FileMode.cs, FileAccess.cs: Add.
1340
1341 2001-07-19  Marcin Szczepanski <marcins@zipworld.com.au>
1342
1343         * System.IO.MemoryStream.cs: Added.  Had quite a few cases of
1344         "LAMESPEC", but the tests work against the MS implementation so
1345         the major functions are right (ie. Read/Write/Seek).  Some more
1346         tests required for the various constructors and exceptions.
1347
1348 2001-07-16  Marcin Szczepanski <marcins@zipworld.com.au>
1349
1350         * StringReader.cs, StringWriter.cs, TextReader.cs, TextWriter.cs:
1351         New class implemenations.
1352
1353         * StringReaderTest.cs, StringWriterTest.cs: Test suite for the above.