[corlib] Improve CancellationTokenSource test
[mono.git] / mcs / class / Mono.Posix / Mono.Unix / ChangeLog
index 5dddfe9f69aeb50a07e1c24a2f069f0b62ab2394..d1b975c6ce56844a9ea27df526710f7172907bc8 100644 (file)
@@ -1,3 +1,169 @@
+2010-04-15  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixSignal.cs: Change the native WaitAny() method to accept a
+         Mono_Posix_RuntimeIsShuttingDown delegate, so that we can prevent an
+         infinite loop while shutting the process down.  Fixes #592981.
+
+2009-03-23  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixDriveInfo.cs: UnixDriveInfo.AvailableFreeSpace needs to return 
+         stat.f_bavail * stat.f_frsize, NOT f_bavail*f_bsize, as on some
+         platforms (Solaris) bsize is the preferred block I/O size, while
+         f_frsize is the *actual* filesystem block size.  Thus, to get proper
+         disk under Solaris, we need to s/f_bsize/f_frsize/g.
+
+2009-02-20  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixSignal.cs: Add a pipecnt member to UnixSignal.SignalIinfo.
+         Patch thanks to tim.jenks@realtimeworlds.com.
+
+2009-02-09  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixGroupInfo.cs (GetMembers): Skip group members which aren't valid
+         users on the system (thus removing a possible exception).  Patch
+         thanks to Daniel Peñalba.
+
+2009-01-08  Rodrigo Kumpera  <rkumpera@novell.com>
+
+       * UnixSignal.cs: Check if realtime signal install failed with 
+       EADDRINUSE due to the signal been used by outside of Mono.Posix.
+
+2008-12-19  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixSignal.cs: Allow RealTimeSignums to be used in addition to
+         Signum, so that real time signals can be used.  Patch thanks to 
+         tim.jenks@realtimeworlds.com.
+
+2008-11-04  Andrés G. Aragoneses  <aaragoneses@novell.com>
+
+       * UnixStream.cs: Do not check offset against int.MaxValue 
+       (System.IO doesn't have it). Reviewed by Jonathan Pryor.
+       Bug reported by Siro Blanco <siro.blanco@gmail.com>.
+
+2008-11-03  Miguel de Icaza  <miguel@novell.com>
+
+       * UnixClient.cs (Client): Make this property public when using the
+       Mono 2.0 profile, based on a discussion with Vlad Hociota and Joe
+       Shaw. 
+
+2008-02-11  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixSignal.cs: Improve argument checking to match docs.
+
+2008-02-08  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixSignal.cs: UnixSignal.WaitAny() should have the same return type as
+         WaitHandle.WaitAny().  Oops.
+
+2008-02-08  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixSignal.cs: Modification of Info->count should be thread safe.
+
+2008-01-28  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixSignal.cs: Added; Polling and blocking based Unix signal mechanism.
+         http://lists.ximian.com/pipermail/mono-devel-list/2008-January/026501.html
+
+2008-01-22  Sebastien Pouliot  <sebastien@ximian.com>
+
+       * UnixPipes.cs: Fix Equals to avoid NRE (and return false if object 
+       is null). Found using Gendarme.
+
+2007-12-17  Jonathan Pryor  <jpryor@novell.com>
+
+       * UnixEnvironment.cs: Update MachineName property accesor to use uname(2)
+         instead of gethostname(2), as gethostname(2) truncates the machine name to
+         16 characters, while uname(2) doesn't.
+
+2007-12-17  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixDirectoryInfo.cs: Fix Parent property so that it properly handles
+         returning the parent of "/".  UnixPath.GetDirectoryName() returns "" on
+         "error", not null; act accordingly.
+       * UnixDriveInfo.cs: Fix IsReady property so that it returns `false' if no
+         media is mounted.  The presence of media is determined by comparing the
+         Statvfs.f_fsid value of the current and parent directories; if they
+         differ, it is assumed that media is present, and thus the directory is
+         ready.  If they're identical, then media isn't present, and the directory
+         isn't ready.
+       * UnixPath.cs: UnixPath.GetDirectoryName("/mnt") should return "/", not "".
+
+2007-09-13  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixStream.cs: Don't read/write if the buffer has no data.  Fixes #82836.
+
+2006-10-24  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * MapAttribute.cs: Moved to ../Mono.Unix.Native/MapAttribute.cs.
+
+2006-08-21  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixStream.cs: .Close() shouldn't close(2) the fd unless owner==true;
+         .Flush() should be a no-op (as System.IO.Stream.Flush doesn't gaurantee
+         that .Flush() actually flush to disk, and .Flush() slows things down a
+         lot); see: http://joeshaw.org/2006/08/21/415.
+
+2006-08-16  Alp Toker  <alp@atoker.com>
+
+       * UnixEndPoint.cs:
+       * AbstractUnixEndPoint.cs: Second half of the fix for #79084.
+               Add support for the abstract namespace, and update existing file-based
+               UnixEndPoint (de)serialization to reflect changes in the runtime.
+
+2006-07-02  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixSymbolicLinkInfo.cs: Oops.  CreateSymbolicLinkTo() should create
+         FullPath, not OriginalName.  This was fixed in one overload in January,
+         but I missed an overload. :-/
+
+2006-07-02  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixPath.cs: Follow .NET's System.IO.Path.Combine() behavior, and "reset"
+         the generated path if any argument beings with a path root --
+         UnixPath.Combine("/a", "/b") should return "/b", not "/a/b".  Fixes #78580.
+
+2006-04-21  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixFileSystemInfo.cs: rename Create() to GetFileSystemEntry(), and make
+         it public (so that other's don't need to worry about the
+         Syscall.lstat()-and-switch to create a UnixFileSystemInfo instance).
+       * UnixDirectoryInfo.cs, UnixSymbolicLinkInfo.cs:
+         s/Create/GetFileSystemEntry/g (to cope with above change).
+
+2006-03-09 Gonzalo Paniagua Javier <gonzalo@ximian.com>
+
+       * UnixEndPoint.cs: added GetHashCode/Equals.
+
+2006-03-06  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixDriveInfo.cs: Remove requirement that mountPoints be avaible via
+         getfsfile(3).  This isn't always the case -- in particular drives mounted
+         via HAL and other mechanisms won't be listed in /etc/fstab, and thus won't
+         be returned via getfsfile(3).  If getfsfile(3) fails, then we "guess" on
+         the drive format and volume label.
+       * UnixStream.cs: RefreshStat() should assert that the instance hasn't been
+         disposed.
+       * UnixEnvironment.cs (GetConfigurationValue, GetConfigurationString): Fix
+         error checking.
+
+2006-02-23  Jonathan Pryor  <jonpryor@vt.edu>
+
+       * UnixFileSystemInfo.cs: Create() should return a UnixFileInfo if the file
+         doesn't exist.  This allows callers to use UnixFileInfo.Exists to see if
+         the file exists, and behaves more rationally e.g. if the directory
+         contents changes while calling UnixDirectoryInfo.GetFileSystemEntries(),
+         we'll get a UnixFileInfo entry that doesn't exist instead of an exception
+         terminating the entire array creation.
+       * UnixSymbolicLinkInfo.cs: [Obsolete] the Contents property -- this property
+         *always* creates a new object if HasContents=true, and since a
+         UnixFileSystemInfo instance is (104+2*(sizeof(void*))+1) bytes (~113 bytes
+         on 32-bit platforms), we don't want to create these frequently.  Add a
+         GetContents() method as the replacement, to make it (slightly) more
+         explicit that information won't be cached (and thus should be cached by
+         the caller, if appropriate).  GetContents() throws an exception if
+         HasContents=false instead of returning null; this change brings the
+         implementation in line with the documentation.
+
 2006-02-18  Alp Toker  <alp@atoker.com>
 
        * UnixEndPoint.cs: Avoid truncation of last two bytes of SocketAddress