changelog.md 3.51 KB
Newer Older
1
2
# Changelog for [`unix` package](http://hackage.haskell.org/package/unix)

3
4
5
## 2.7.2.0  *Apr 2016*

  * Bundled with GHC 8.0.1
6
7
8

  * Don't assume non-POSIX `WCOREDUMP(x)` macro exists

9
10
11
  * Don't assume existence of `termios(3)` constants beyond `B38400`

  * Don't assume existence of `ctermid(3)`/`tcdrain(3)`
12

13
14
  * Change `drainOutput`'s `tcdrain(3)` into a `safe` FFI call

15
  * Turn build error into compile warnings for exotic `struct stat`
16
    configurations (GHC #8859)
17

18
19
  * Improve detection of `fdatasync(2)` (GHC #11137)

Herbert Valerio Riedel's avatar
Herbert Valerio Riedel committed
20
21
22
23
  * Drop support for Hugs

  * Drop support for Cygwin (and Windows in general)

24
## 2.7.1.0  *Dec 2014*
25

26
27
  * Bundled with GHC 7.10.1

28
  * Add support for `base-4.8.0.0`
29

30
  * Tighten `SafeHaskell` bounds for GHC 7.10+
31

32
  * Add haddock comments on `RTLD_NEXT` and `RTLD_DEFAULT`
33

34
  * Deprecate function `haveRtldLocal`
35

36
37
  * Fix `getGroupEntryForID/getGroupEntryForName` on Solaris. Solaris uses
    CPP macros for required `getgrgid_r` and `getgrnam_r` functions definition
38
39
    so the fix is to change from C ABI calling convention to C API calling
    convention
40

41
  * Fix potential type-mismatch in `telldir`/`seekdir` FFI imports
42

43
  * Use CAPI FFI import for `truncate` to make sure the LFS-version is used.
44

45
46
  * `executeFile`: Fix `ENOTDIR` error for entries with non-directory
    components in `PATH` (and instead skip over non-directory `PATH`-elements)
47

48
49
50
  * New functions in `System.Posix.Unistd`:
     - `fileSynchronise` (aka `fsync(2)`), and
     - `fileSynchroniseDataOnly` (aka `fdatasync(2)`)
51

52
53
54
  * New module `System.Posix.Fcntl` providing
     - `fileAdvise` (aka `posix_fadvise(2)`), and
     - `fileAllocate` (aka `posix_fallocate(2)`)
55

56
57
  * Fix SIGINFO and SIGWINCH definitions

58
## 2.7.0.1  *Mar 2014*
59

60
61
62
63
64
65
66
  * Bundled with GHC 7.8.1

  * Handle `EROFS` and `ETXTBSY` as (non-exceptional) permission denied in
    `fileAccess`

  * Fix `getFileStatus` to retry `stat(2)` when it returns `EAGAIN`
    (this can happen on Solaris)
67

68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
## 2.7.0.0  *Nov 2013*

  * New `forkProcessWithUnmask` function in the style of `forkIOWithUnmask`

  * Change `forkProcess` to inherit the exception masking state of its caller

  * Add new `Bool` flag to `ProcessStatus(Terminated)` constructor
    indicating whether a core dump occured

  * New functions in `System.Posix.Files{,.ByteString}` for operating
    on high resolution file timestamps:

        setFdTimesHiRes :: Fd -> POSIXTime -> POSIXTime -> IO ()
        setFileTimesHiRes :: FilePath -> POSIXTime -> POSIXTime -> IO ()
        setSymbolicLinkTimesHiRes :: FilePath -> POSIXTime -> POSIXTime -> IO ()
        touchFd :: Fd -> IO ()
        touchSymbolicLink :: FilePath -> IO ()

  * Export `SignalInfo(..)` and `SignalSpecificInfo(..)` as well as
    the two `Handler` constructors `CatchInfo` and `CatchInfoOnce`
    from `System.Posix.Signals`

  * Don't export `seekDirStream` and `tellDirStream` if the underlying
    `seekdir(3)`/`telldir(3)` system calls are not available (as on Android)

  * Fix library detection of `shm*` on openSUSE (#8350)

  * Minor documentation fixes/updates

  * Update package to `cabal-version >= 1.10` format

## 2.6.0.1  *Jan 2013*

  * Bundled with GHC 7.6.2
  * Fix memory corruption issue in `putEnv`
  * Use `pthread_kill(3)` instead of `raise(2)` on OS X too

## 2.6.0.0  *Sep 2012*

  * Bundled with GHC 7.6.1
  * New functions `mkdtemp` and `mkstemps` in `System.Posix.Temp`
  * New functions `setEnvironment` and `cleanEnv`
  * New functions `accessTimeHiRes`, `modificationTimeHiRes`, and
    `statusChangeTimeHiRes` for accessing high resolution timestamps