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