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