Skip to content

Releases: byllyfish/shellous

Release 0.37.0

25 Jul 04:52
ef09299
Compare
Choose a tag to compare
  • [API] Change the default for the close_fds option back to True. This aligns with the expected subprocess module behavior.
  • [LATERAL] Update development dependencies.
  • [LATERAL] Work-around testing issues on Python 3.13b2 and later due to the asyncio REPL change.

Release 0.36.0

18 Mar 18:50
d24c36f
Compare
Choose a tag to compare
  • [LATERAL] Update development dependencies and fix pylint issues.

Release 0.35.0

31 Jan 02:59
432b846
Compare
Choose a tag to compare
  • [BUGFIX] Fix potential race condition in DefaultChildWatcher. (#582)
  • [LATERAL] Update development dependencies and fix pyright warnings.
  • [LATERAL] Update to black 24.1.1 code formatter.

Release 0.34.0

31 Dec 22:00
5507d3c
Compare
Choose a tag to compare
  • [FEATURE] Add error_limit option to customize the number of bytes of stderr that is buffered.
  • [BUGFIX] Catch asyncio deprecation warnings intended for Python 3.14.
  • [LATERAL] Update CI action that publishes shellous package to PyPI to use trusted publishing.
  • [LATERAL] Improve reliability of tests under code coverage.
  • [LATERAL] Replace deprecated event_loop fixture in asyncio tests.

Release 0.33.0

10 Dec 21:35
9b8c35f
Compare
Choose a tag to compare
  • [FEATURE] Add the Pipeline.prompt() method so the Prompt API works in pipelines.
  • [FEATURE] Add the Prompt.read_pending() method to read and clear all data in the pending buffer.
  • [API] When Prompt.expect() doesn't match anything and we reach EOF, raise EOFError. The previous version returned a match of None.
  • [API] When Prompt.command() doesn't match, it will now raise EOFError. However, you can set the allow_eof argument to True to match EOF.
  • [API] The Prompt chunk_size argument is now private.
  • [API] Add SHELLOUS_TRACE environment variable for debug logging and tracing. This replaces the SHELLOUS_DEBUG and SHELLOUS_PROMPT environment variables.
  • [API] The Prompt.result property no longer returns an Optional. It raises a RuntimeError if the co-process is still running.
  • [API] The Prompt.expect() method no longer accepts an Ellipsis to match EOF. Use the Prompt.read_all() method to read until EOF.
  • [API] In the cooked, cbreak, raw utility methods, using the Ellipsis to inherit the terminal size is no longer supported.

Release 0.32.0

25 Nov 19:10
76ad753
Compare
Choose a tag to compare
  • [FEATURE] Add the Command.prompt() method to facilitate using the Prompt API.
  • [FEATURE] Refactor the Prompt helper class to support regular expression matching.
  • [FEATURE] The Prompt.expect() method can match on a regular expression in the output stream.
  • [API] The Prompt.send() method no longer returns a response. If you want to send a string to a process and wait for the response, use the Prompt.command() method instead.
  • [API] The receive() method has been removed. Use expect() instead.
  • [BUGFIX] Fix a potential deadlock issue in Prompt.send() by continuing to read pending input from the subprocess concurrently.

Release 0.31.1

18 Oct 01:49
3eae70b
Compare
Choose a tag to compare
  • [LATERAL] Fix issue with CI action that publishes the shellous package to PyPI.

Release 0.31.0

17 Oct 20:26
7875b66
Compare
Choose a tag to compare
  • [API] Several API changes to the experimental Prompt class.
  • [API] The Result class now has an exit_signal property that converts the exit_code value into a Signals enum.
  • [LATERAL] Update CI settings for Python 3.12 release. Add pip --require-hashes to Github actions.
  • [LATERAL] Apply security best practices to Github actions.

Release 0.30.0

27 Sep 01:39
bd5f0c1
Compare
Choose a tag to compare
  • [LATERAL] Improve documentation and add security policy to the GitHub repository.
  • [LATERAL] Fix two more log messages so they only appear when the SHELLOUS_DEBUG environment variable is set.
  • [LATERAL] Improve reliability of CI testing on Windows.

Release 0.29.0

01 Sep 18:15
5fd1747
Compare
Choose a tag to compare
  • [BUGFIX] Report standard error when a pipeline sub-command fails. (#459)
  • [LATERAL] Reduce debug logging so it only occurs when SHELLOUS_DEBUG environment variable is set.
  • [LATERAL] Fix Windows CI tests for Python 3.11.5.