File python-sh.changes of Package python-sh

Tue Dec  8 21:25:24 UTC 2020 - Benjamin Greiner <>

- Update to 1.14.1:
  * bugfix where setting _ok_code to not include 0, but 0 was the
   exit code #545
- Changes for 1.14.0
  * _env now more lenient in accepting dictionary-like objects #527
  * None and False arguments now do not pass through to underlying
    command #525
  * Implemented find_spec on the fancy importer, which fixes some
    Python3.4+ issues #536 
- Drop all patches: they are no longer applicable
  * fix-sleep-path-in-test.patch
  * fix-test_general_signal.diff
  * fix-test_signal_group.diff
  * no-coverage.patch

Wed Jun 17 08:14:24 UTC 2020 - Steve Kowalik <>

- Update to 1.13.1:
  * regression fix if `_fg=False` [#520](
  * minor Travis CI fixes [#492](
  * bugfix for boolean long options not respecting `_long_prefix` [#488](
  * fix deprecation warning on Python 3.6 regexes [#482](
  * `_pass_fds` and `_close_fds` special kwargs for controlling file descriptor inheritance in child.
  * more efficiently closing inherited fds [#406](
  * bugfix where passing invalid dictionary to `_env` will cause a mysterious child 255 exit code. [#497](
  * bugfix where `_in` using 0 or `sys.stdin` wasn't behaving like a TTY, if it was in fact a TTY. [#514](
  * bugfix where `help(sh)` raised an exception [#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](
  * execution contexts can now be used in python shell [#466](
  * bugfix `ErrorReturnCode` instances can now be pickled
  * bugfix passing empty string or `None` for `_in` hanged [#427](
  * bugfix where passing a filename or file-like object to `_out` wasn't using os.dup2 [#449](
  * regression make `_fg` work with `_cwd` again [#330](
  * an invalid `_cwd` now raises a `ForkException` not an `OSError`.
  * AIX support [#477](
  * added a `timeout=None` param to `RunningCommand.wait()` [#515](
- Re-enable tests.
- Refresh no-coverage.patch, fix-test_general_signal.diff and
- Add fix-sleep-path-in-test.patch to fix a test failure.
- Drop no longer required patches,
  always-use-fully-versioned-python-command-in-tests.patch and

Mon Apr 20 17:27:27 UTC 2020 - Matej Cepl <>

- Switch off tests, upstream is dead

Mon May 27 11:59:53 UTC 2019 - Alberto Planas Dominguez <>

- Add patches to fix some tests:
  * fix-test_signal_group.diff
  * fix-test_general_signal.diff (bsc#1120329)

Fri Feb  1 13:16:33 UTC 2019 - Tomáš Chvátal <>

- Add patches from Fedora:
  * always-use-fully-versioned-python-command-in-tests.patch
  * no-coverage.patch
  * 0001-Fix-tests-for-the-drop-the-unversion-python.patch
  * pep-0538-test-fix.patch

Tue Dec  4 12:54:15 UTC 2018 - Matej Cepl <>

- Remove superfluous devel dependency for noarch package

Thu Jul 13 15:29:32 UTC 2017 -

- Implement single-spec version.

Mon Jun 12 15:34:12 UTC 2017 -

- Remove test-huge-piped-data-fix.patch
- Remove test-coding-fix.patch
- Remove test-multiple-pipes-fix.patch
- Update 1.12.14
  * bugfix for poor sleep performance
  * allow passing raw integer file descriptors for `_out` and `_err`
  * bugfix for when `_tee` and `_out` are used, and the `_out` is a
    tty or pipe [#384](
  * bugfix where python 3.3+ detected different arg counts for bound
    method output callbacks
- Update 1.12.12, 1.12.13
  * pypi readme doc bugfix
- Update 1.12.11
  * bugfix for relative paths to `sh.Command` not expanding to
    absolute paths [#372](
  * updated for python 3.6
  * bugfix for SIGPIPE not being handled correctly on pipelined
    processes [#373](
- Update 1.12.10
  * bugfix for file descriptors over 1024
  * bugfix when `_err_to_out` is True and `_out` is pipe or tty
- Update 1.12.9
  * added `_bg_exc` for silencing exceptions in background threads
- Update 1.12.8
  * bugfix for patched glob.glob on python3.5
- Update 1.12.7
  * added `_out` and `_out_bufsize` validator
  * bugfix for internal stdout thread running when it shouldn't
- Update 1.12.6
  * regression bugfix on timeout
  * regression bugfix on `_ok_code=None`
- Update 1.12.5
  * further improvements on cpu usage
- Update 1.12.4
  * regression in cpu usage
- Update 1.12.3
  * fd leak regression and fix for flawed fd leak detection test
- Update 1.12.2
  * support for `io.StringIO` in python2
- Update 1.12.1
  * added support for using raw file descriptors for `_in`, `_out`,
    and `_err`
  * removed `.close()`ing `_out` handler if FIFO detected
- Update 1.12.0
  * composed commands no longer propagate `_bg`
  * better support for using `sys.stdin` and `sys.stdout` for `_in`
    and `_out`
  * bugfix where `which()` would not stop searching at the first valid
    executable found in PATH
  * added `_long_prefix` for programs whose long arguments start with
    something other than `--`
  * added `_log_msg` for advanced configuration of log message
  * added `sh.contrib.sudo`
  * added `_arg_preprocess` for advanced command wrapping
  * alter callable `_in` arguments to signify completion with falsy
  * bugfix where pipes passed into `_out` or `_err` were not flushed
    on process end [#252](
  * deprecated `with sh.args(**kwargs)` in favor of `sh2 =
  * made `sh.pushd` thread safe
  * added `.kill_group()` and `.signal_group()` methods for better
    process control [#237](
  * added `new_session` special keyword argument for controlling
    spawned process session
  * bugfix better handling for EINTR on system calls
  * bugfix where with-contexts were not threadsafe
  * `_uid` new special keyword param for specifying the user id of the
    process [#133](
  * bugfix where exceptions were swallowed by processes that weren't
    waited on [#309](
  * bugfix where processes that dupd their stdout/stderr to a long
    running child process would cause sh to hang
  * improved logging output
  * bugfix for python3+ where binary data was passed into a process's
    stdin [#325](
  * Introduced execution contexts which allow baking of common special
    keyword arguments into all commands
  * `Command` and `which` now can take an optional `paths` parameter
    which specifies the search paths
  * `_preexec_fn` option for executing a function after the child
    process forks but before it execs
  * `_fg` reintroduced, with limited functionality.  hurrah!
  * bugfix where a command would block if passed a fd for stdin that
    wasn't yet ready to read
  * `_long_sep` can now take `None` which splits the long form
    arguments into individual arguments
  * making `_piped` perform "direct" piping by default (linking fds
    together).  this fixes memory problems
  * bugfix where calling `next()` on an iterable process that has
    raised `StopIteration`, hangs
  * `` called with no arguments no changes into the user's home
    directory, like native `cd`
  * `sh.glob` removed entirely.  the rationale is correctness over
    hand-holding. [#279](
  * added `_truncate_exc`, defaulting to `True`, which tells our
    exceptions to truncate output.
  * bugfix for exceptions whose messages contained unicode
  * `_done` callback no longer assumes you want your command put in
    the background.
  * `_done` callback is now called asynchronously in a separate
  * `_done` callback is called regardless of exception, which is
    necessary in order to release held resources, for example a
    process pool

Fri Apr 10 10:05:57 UTC 2015 -

- PATCH test-huge-piped-data-fix.patch
  Partially disable test case

Wed Jan 28 08:57:03 UTC 2015 -

- Fix %defattr, fixing SLE11SP3 building

Fri Jan  2 10:58:53 UTC 2015 -

- Fix source URL
- Fix setup directory name
- PATCH test-coding-fix.patch
  Use utf-8 enconding in the header
- PATCH test-multiple-pipes-fix.patch
  Partially disable test case
- Remove BuildRequires python-devel
- Update to 1.11
  * partially applied functions with functools.partial have been fixed for _out and _err callbacks #160
  * _out or _err being callables no longer puts the running command in the background. to achieve the previous behavior, pass _bg=True to your command.
  * deprecated _with contexts #195
  * _timeout_signal allows you to specify your own signal to kill a timed-out process with. use a constant from the signal stdlib module. #171
  * signal exceptions can now be caught by number or name. SignalException_9 == SignalException_SIGKILL
  * child processes that timeout via _timeout raise sh.TimeoutException instead of sh.SignalExeception_9 #172
  * fixed help(sh) from the python shell and pydoc sh from the command line. #173
  * program names can no longer be shadowed by names that defines internally. removed the requirement of trailing underscores for programs that could have their names shadowed, like id.
  * memory optimization when a child process's stdin is a newline-delimted string and our bufsize is newlines
  * feature, _done special keyword argument that accepts a callback to be called when the command completes successfully #185
  * bugfix for being unable to print a baked command in python3+ #176
  * bugfix for cwd not existing and causing the child process to continue running parent process code #202
  * child process is now guaranteed to exit on exception between fork and exec.
  * fix python2 deprecation warning when running with -3 PR #165
  * bugfix where was attempting to execute directories #196, PR #189
  * only backgrounded processes will ignore SIGHUP
  * allowed ok_code to take a range object. #PR 210
  * added sh.args with context which allows overriding of all command defaults for the duration of that context.
  * added sh.pushd with context which takes a directory name and changes to that directory for the duration of that with context. PR #206
  * tests now include python 3.4 if available. tests also stop on the first python that suite that fails.
  * SIGABRT, SIGBUS, SIGFPE, SIGILL, SIGPIPE, SIGSYS have been added to the list of signals that throw an exception PR #201
  * "callable" builtin has been faked for python3.1, which lacks it.
  * "direct" option added to _piped special keyword argument, which allows sh to hand off a process's stdout fd directly to another process, instead of buffering its stdout internally, then handing it off. #119

Fri May  2 12:37:53 UTC 2014 -

- update to 1.09
  * Fixed encoding errors related to a system encoding "ascii". GH #123.
  * Added exit_code attribute to SignalException and ErrorReturnCode exception
    classes. GH #127.
  * Making the default behavior of spawned processes to not be explicitly
    killed when the parent python process ends. Also making the spawned process
    ignore SIGHUP. GH #139.
  * Made OSX sleep hack to apply to PY2 as well as PY3.

Mon Jan 20 08:51:22 UTC 2014 -

- package python-sh 1.08 for openSUSE
openSUSE Build Service is sponsored by