- Support for reflex-0.9.3
- Add
Linesfor keeping track of accumulated output, including both terminated and unterminated lines
- Allow reflex-vty 0.5
- Derive Eq, Ord, and Show instances for SendPipe
- Loosen version bounds to support reflex-0.9 and reflex-vty 0.4
- Update readme example to support reflex-vty 0.3
- Update readme example to use reflex-vty 0.2
- Support reflex 0.8
- Fix a handle leak (#23) and a thread leak (#24)
- (#15, #13) (Breaking change) Introduce
SendPipetype for encoding when an input stream should send EOF. ChangecreateProcessto take aProcessConfig t (SendPipe ByteString)so that sending EOF is possible.- IMPORTANT: For
createProcessmessages tostdinmust now be wrapped inSendPipe_Messageand have a"\n"manually appended to regain the old behavior. PreviouslycreateProcessimplicitly added a"\n"to all messages sent to the process. This has been removed and you must now manually add any necessary new lines to your messages. This change allowscreateProcessto work with processes in a encoding-agnostic way onstdin.
- IMPORTANT: For
- (#17) Deprecate
createRedirectedProcessin favor of a new, scarier name:unsafeCreateProcessWithHandles. This was done to communicate that it does not enforce necessary guarantees for the process to be handled correctly. - (#11) Add
createProcessBufferingInputfor buffering input to processes and changecreateProcessto use an unbounded buffer instead of blocking the FRP network when the process blocks on its input handle. - (#11, #14)
ProcessConfignow includes a_processConfig_createProcessfield for customizing how the process is created. - (#13) Fix race condition between process completion
Events and processstdout/stderrEvents. Process completion is now always the very lastEventto fire for a givenProcess. - (#17) Add
defProcessConfigto avoid forcing users to depend ondata-default.
createProcess: Ensure that handle is open before attempting to check whether it is readable
- Breaking change: Generalise input and output parameters of createRedirectedProcess. Existing programs should replace
Process twithProcess t ByteString ByteStringandProcessConfig twithProcessConfig t ByteString.
- Loosen reflex-vty version bounds
- Initial release. The core of the interface is
Reflex.Process.createProcess, which runs aSystem.Process.CreateProcesscommand, takingEvents of input and producingEvents of output.