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