* Mono.Unix/FileAccessPermissions.cs: Remove UserMask, GroupMask, OtherMask values.
[mono.git] / mcs / class / Mono.Posix / Mono.Unix / ChangeLog
index 65feb656b4dba7994045020f957c85842b8a24e4..9cb569e597065a485941607b7a23ef36c97d8921 100644 (file)
@@ -1,3 +1,74 @@
+2006-01-02  Jonathan Pryor <jonpryor@vt.edu>
+
+       * FileAccessPermissions.cs: Remove UserMask, GroupMask, OtherMask values.
+       * FileSpecialAttributes.cs: Remove AllAttributes member; it shouldn't be
+         public.  Use UnixFileSystemInfo.AllSpecialAttributes instead.
+       * StdioFileStream.cs: Open files in binary mode, not text;
+         Fix exception message for StdioFileStream(path, mode) mode param check.
+       * UnixDirectoryInfo.cs: Add Create(FileAccessPermissions) overload; change
+         GetFileSystemEntries() to include the directory name that the files came
+         from (otherwise they're in the current working direcetory, which they
+         probably aren't).
+       * UnixFileInfo.cs: Add Create(FileAccessPermissions) overload; Add better
+         argument checking to several Open() overloads.
+       * UnixFileSystemInfo.cs: Add AllSpecialAttributes, AllFileTypes members;
+         FullPath member should invalidate instance if path changes; Change return
+         type of GetFileStatus for maintenance/better documentation; ToStat()
+         should ensure that the instance is valid first.
+       * UnixMarshal.cs: Add additional Errno values to CreateExceptionForError();
+         reformat CreateExceptionForError for maintenance.
+       * UnixPath.cs: Obsolete InvalidPathChars -- FxCop never liked it, and now I
+         know why it didn't like it (thank you Framework Design Guidelines!).
+       * UnixStream.cs: Use UnixFileSystemInfo.AllSpecialAttributes, not 
+         FileSpecialAttributes.AllAttributes (which was removed).
+       * UnixSymbolicLinkInfo.cs: Change return type of GetFileStatus().
+
+2005-12-28  Jonathan Pryor <jonpryor@vt.edu>
+
+       * FileHandleOperations.cs: Check for null references.
+
+2005-12-28  Jonathan Pryor <jonpryor@vt.edu>
+
+       * UnixMarshal.cs: Errno.EBADF should also trigger a ArgumentException.
+
+2005-12-27  Jonathan Pryor <jonpryor@vt.edu>
+
+       * FileHandleOperations.cs, FileTypes.cs, Stdlib.cs, Syscall.cs, 
+         UnixConvert.cs, UnixDirectory.cs, UnixDirectoryInfo.cs, UnixDriveInfo.cs, 
+         UnixEnvironment.cs, UnixFile.cs, UnixFileInfo.cs, UnixFileSystemInfo.cs,
+         UnixGroup.cs, UnixGroupInfo.cs, UnixIOException.cs, UnixMarshal.cs, 
+         UnixPath.cs, UnixPipes.cs, UnixProcess.cs, UnixStream.cs, 
+         UnixSymbolicLinkInfo.cs, UnixUser.cs, UnixUserInfo.cs: Mark to-be-removed
+         API with [Obsolete(IsError=true)] (permits compiler assistance for finding
+         obsolete code); Migrate to the Mono.Unix.Native API.
+       * StdioFileStream.cs: Add non-Obsolete overloads for SaveFilePosition &
+         RestoreFilePosition (oops).  Migrate to Mono.Unix.Native API.
+
+2005-12-07  Jonathan Pryor <jonpryor@vt.edu>
+
+       * UnixMarshal.cs: Add PtrToStringUnix() -- specialized PtrToString method
+         which is significantly faster than PtrToString(p, UnixEncoding.Instance). 
+         Use System.String..ctor(sbyte*, int, int, Encoding) to avoid the byte[]
+         intermediate copy -- much faster.  Fix PtrToString() so that it will
+         accept an IntPtr containing 0 characters, and don't duplicate strings
+         unless necessary.
+
+2005-11-18  Jonathan Pryor <jonpryor@vt.edu>
+
+       * Catalog.cs, UnixDirectory.cs, UnixDirectoryInfo.cs, UnixDriveInfo.cs,
+         UnixEnvironment.cs, UnixFile.cs, UnixFileInfo.cs, UnixFileSystemInfo.cs,
+         UnixGroup.cs, UnixGroupInfo.cs, UnixProcess.cs, UnixSymbolicLinkInfo.cs,
+         UnixUser.cs, UnixUserInfo.cs: Change types of [Obsolete] members for
+         consistency and CLS compliance; Mono.Unix.Native type migration.
+       * FileTypes.cs: s/Special/Device/g (CharacterSpecial ==> CharacterDevice).
+         The *Special was a BSD convention, while UnixFileSystemInfo uses *Device
+         in property names, and these should be consistent.  Changing the enum is
+         simpler than changing the UnixFileSystemInfo properties.
+       * UnixIOException.cs: s/error/errno/g (FxCop suggestion); change type of
+         ErrorCode property.
+       * UnixMarshal.cs: s/error/errno/g (FxCop suggestion); Mono.Unix.Native
+         type migration.
+
 2005-11-08  Jonathan Pryor <jonpryor@vt.edu>
 
        * Catalog.cs: Exception safety improvements (don't let memory leak!); check