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

3 4
## Unreleased changes

Ben Gamari's avatar
Ben Gamari committed
5 6 7 8
* Fix a potential privilege escalation issue (or, more precisely, privileges
  not being dropped when this was the user's intent) where the groups of the
  spawning process's user would be incorrectly retained due to a missing call to
  `initgroups` [#149].
9 10 11
* Bug fix: Prevent stripping undecodable bytes from environment variables
  when in a non-unicode locale.
  [#152](https://github.com/haskell/process/issues/152)
Ben Gamari's avatar
Ben Gamari committed
12

13 14 15 16
## 1.6.5.1 *June 2019*

* Version bound bumps
* Slightly nicer error messages for internal errors
Michael Snoyman's avatar
Michael Snoyman committed
17

Michael Snoyman's avatar
Michael Snoyman committed
18
## 1.6.5.0 *December 2018*
19

20 21
* Bug fix: On Windows ignore ERROR_ACCESS_DENIED for TerminateProcess() if the process did terminate
  [#110](https://github.com/haskell/process/issues/110)
Michael Snoyman's avatar
Michael Snoyman committed
22
* Improve documentation of the `NoStream` data constructor
23

Michael Snoyman's avatar
Michael Snoyman committed
24
## 1.6.4.0 *July 2018*
25

Yuras's avatar
Yuras committed
26 27
* Bug fix: Don't leak pipes on failure
  [#122](https://github.com/haskell/process/issues/122)
28 29
* Expose `cleanupProcess` from `System.Process` 
  [#130](https://github.com/haskell/process/pull/130)
Michael Snoyman's avatar
Michael Snoyman committed
30
* Drop support for GHC before 7.10.3
Yuras's avatar
Yuras committed
31

Michael Snoyman's avatar
Michael Snoyman committed
32
## 1.6.3.0 *January 2018*
Tilman Blumhagen's avatar
Tilman Blumhagen committed
33 34 35 36

* Added `getPid` and export of platform specific `Pid` type
  [#109](https://github.com/haskell/process/pull/109)

Michael Snoyman's avatar
Michael Snoyman committed
37
## 1.6.2.0 *October 2017*
38

MitchellSalad's avatar
MitchellSalad committed
39 40
* Allow async exceptions to be delivered to masked thread calling `waitForProcess`
  [#101](https://github.com/haskell/process/pull/101)
Tamar Christina's avatar
Tamar Christina committed
41
* Update Win32 package version to 2.6.x
MitchellSalad's avatar
MitchellSalad committed
42

43
## 1.6.1.0 *July 2017*
44

45 46 47 48
* Expose `CGid`, `GroupID`, and `UserID` from `System.Process.Internals`
  [#90](https://github.com/haskell/process/issues/90)
  [#91](https://github.com/haskell/process/pull/91)

49
## 1.6.0.0 *February 2017*
50

Michael Snoyman's avatar
Michael Snoyman committed
51 52 53 54
* Fix: waitForProcess race condition
  [#46](https://github.com/haskell/process/issues/46)
  [#58](https://github.com/haskell/process/pull/58)

Michael Snoyman's avatar
Michael Snoyman committed
55
## 1.5.0.0 *February 2017*
Michael Snoyman's avatar
Michael Snoyman committed
56 57 58

* Bug fix: Don't close already closed pipes
  [#81](https://github.com/haskell/process/pull/81)
Tamar Christina's avatar
Tamar Christina committed
59
* Relax version bounds of Win32 to allow 2.5.
Tamar Christina's avatar
Tamar Christina committed
60 61
* Add support for monitoring process tree for termination with the parameter `use_process_jobs`
  in `CreateProcess` on Windows. Also added a function `terminateJob` to kill entire process tree.
Michael Snoyman's avatar
Michael Snoyman committed
62

Michael Snoyman's avatar
Michael Snoyman committed
63
## 1.4.3.0 *December 2016*
Jon Coens's avatar
Jon Coens committed
64

Michael Snoyman's avatar
Michael Snoyman committed
65 66
* New exposed `withCreateProcess`
* Derive `Show` and `Eq` for `CreateProcess`, `CmdSpec`, and `StdStream`
Jon Coens's avatar
Jon Coens committed
67

68 69 70 71 72 73
## 1.4.2.0 *January 2016*

* Added `createPipeFD` [#52](https://github.com/haskell/process/pull/52)
    * New function `createPipeFD` added which returns a POSIX File Descriptor (CInt)
      instead of a GHC Handle to a pipe

Michael Snoyman's avatar
Michael Snoyman committed
74 75 76 77 78 79
## 1.4.1.0 *November 2015*

* Use less CPP [#47](https://github.com/haskell/process/pull/47)
    * Refactor to have separate Windows and POSIX modules internally
    * Remove the broken non-GHC code paths

Michael Snoyman's avatar
Michael Snoyman committed
80
## 1.4.0.0 *November 2015*
Michael Snoyman's avatar
Michael Snoyman committed
81 82 83

* Added `child_user` and `child_group` to `CreateProcess` for unix. [#45](https://github.com/haskell/process/pull/45)

84
## 1.3.0.0 *August 2015*
Michael Snoyman's avatar
Michael Snoyman committed
85

86
* Add `StdStream(NoStream)` to have standard handles closed. [#13](https://github.com/haskell/process/pull/13)
Michael Snoyman's avatar
Michael Snoyman committed
87
* Support for Windows `DETACHED_PROCESS` and `setsid` [#32](https://github.com/haskell/process/issues/32)
88
* Support for Windows `CREATE_NEW_CONSOLE` [#38](https://github.com/haskell/process/issues/38)
Michael Snoyman's avatar
Michael Snoyman committed
89

90
## 1.2.3.0 *March 2015*
91 92 93 94

  * [Meaningful error message when exe not found on close\_fds is
  True](https://ghc.haskell.org/trac/ghc/ticket/3649#comment:10)

95
  * New functions `readCreateProcess` and `readCreateProcessWithExitCode`
96

97 98 99 100 101 102 103 104 105
## 1.2.2.0  *Jan 2015*

  * Fix delegated CTRL-C handling in `createProcess` in case of failed
    process creation. See [issue #15](https://github.com/haskell/process/issues/15)
    for more details.

  * `waitpid` on child PID after pre-exec failure in child to prevent zombies.
    See also [issue #14](https://github.com/haskell/process/issues/14).

106
## 1.2.1.0  *Dec 2014*
107 108 109

  * Add support for `base-4.8.0.0`

110 111
  * Remove Hugs98 specific code

112 113
  * New `IsString CmdSpec` instance

114 115
  * Expose documentation for `System.Process.Internals`

116 117 118
  * With GHC 7.10, `System.Cmd` and `System.Process` are now `Safe`
    (when compiled with older GHC versions they are just `Trustworthy`)

119 120 121
  * Expose `createProcess_` function, and document behavior of `UseHandle` for
    `createProcess`. See [issue #2](https://github.com/haskell/process/issues/2).

122 123
  * New `System.Process.createPipe` operation.
    See also [GHC #8943](https://ghc.haskell.org/trac/ghc/ticket/8943)
124

125 126 127 128 129 130 131 132 133 134 135 136 137 138 139
## 1.2.0.0  *Dec 2013*

  * Update to Cabal 1.10 format
  * Remove NHC specific code
  * Add support for `base-4.7.0.0`
  * Improve `showCommandForUser` to reduce redundant quoting
  * New functions `callProcess`, `callCommand`, `spawnProcess` and `spawnCommand`
  * Implement WCE handling according to http://www.cons.org/cracauer/sigint.html
  * New `delegate_ctlc` field in `CreateProcess` for WCE handling
  * Use `ExitFailure (-signum)` on Unix when a proc is terminated due to
    a signal.
  * Deprecate `module System.Cmd`
  * On non-Windows, the child thread now comunicates any errors back
    to the parent thread via pipes.
  * Fix deadlocks in `readProcess` and `readProcessWithExitCode`