Sh

Latest version: v2.1.0

Safety actively analyzes 682532 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 2 of 6

2.0.0

- Executed commands now return a unicode string by default
- Removed magical module-like execution contexts [636](https://github.com/amoffat/sh/issues/636)
- Added basic asyncio support via `_async`
- Dropped support for Python < 3.8
- Bumped default tty size to more standard (24, 80)
- First argument being a RunningCommand no longer automatically passes it as stdin
- `RunningCommand.__eq__` no longer has the side effect of executing the command [518](https://github.com/amoffat/sh/pull/531)
- `_tee` now supports both "err" and "out" [215](https://github.com/amoffat/sh/issues/215)
- Removed the builtin override `cd` [link](https://github.com/amoffat/sh/pull/584#discussion_r698055681)
- Altered process launching model to behave more expectedly [495](https://github.com/amoffat/sh/issues/495)
- Bugfix where `_no_out` isn't allowed with `_iter="err"` [638](https://github.com/amoffat/sh/issues/638)
- Allow keyword arguments to have a list of values [529](https://github.com/amoffat/sh/issues/529)

1.14.3

- Bugfix where `Command` was not aware of default call args when wrapping the module [559](https://github.com/amoffat/sh/pull/573)

1.14.1

- bugfix where setting `_ok_code` to not include 0, but 0 was the exit code [545](https://github.com/amoffat/sh/pull/545)

1.14.0

- `_env` now more lenient in accepting dictionary-like objects [527](https://github.com/amoffat/sh/issues/527)
- `None` and `False` arguments now do not pass through to underlying command [525](https://github.com/amoffat/sh/pull/525)
- Implemented `find_spec` on the fancy importer, which fixes some Python3.4+ issues [536](https://github.com/amoffat/sh/pull/536)

1.13.1

- regression fix if `_fg=False` [520](https://github.com/amoffat/sh/issues/520)

1.13.0

- minor Travis CI fixes [492](https://github.com/amoffat/sh/pull/492)
- bugfix for boolean long options not respecting `_long_prefix` [488](https://github.com/amoffat/sh/pull/488)
- fix deprecation warning on Python 3.6 regexes [482](https://github.com/amoffat/sh/pull/482)
- `_pass_fds` and `_close_fds` special kwargs for controlling file descriptor inheritance in child.
- more efficiently closing inherited fds [406](https://github.com/amoffat/sh/issues/406)
- bugfix where passing invalid dictionary to `_env` will cause a mysterious child 255 exit code. [497](https://github.com/amoffat/sh/pull/497)
- bugfix where `_in` using 0 or `sys.stdin` wasn't behaving like a TTY, if it was in fact a TTY. [514](https://github.com/amoffat/sh/issues/514)
- bugfix where `help(sh)` raised an exception [455](https://github.com/amoffat/sh/issues/455)
- bugfix fixing broken interactive ssh tutorial from docs
- change to automatic tty merging into a single pty if `_tty_in=True` and `_tty_out=True`
- introducing `_unify_ttys`, default False, which allows explicit tty merging into single pty
- contrib command for `ssh` connections requiring passwords
- performance fix for polling output too fast when using `_iter` [462](https://github.com/amoffat/sh/issues/462)
- execution contexts can now be used in python shell [466](https://github.com/amoffat/sh/pull/466)
- bugfix `ErrorReturnCode` instances can now be pickled
- bugfix passing empty string or `None` for `_in` hanged [427](https://github.com/amoffat/sh/pull/427)
- bugfix where passing a filename or file-like object to `_out` wasn't using os.dup2 [449](https://github.com/amoffat/sh/issues/449)
- regression make `_fg` work with `_cwd` again [330](https://github.com/amoffat/sh/issues/330)
- an invalid `_cwd` now raises a `ForkException` not an `OSError`.
- AIX support [477](https://github.com/amoffat/sh/issues/477)
- added a `timeout=None` param to `RunningCommand.wait()` [515](https://github.com/amoffat/sh/issues/515)

Page 2 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.