Hello community,
here is the log from the commit of package python-parallax for
openSUSE:Leap:15.2 checked in at 2020-04-03 15:52:49
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Leap:15.2/python-parallax (Old)
and /work/SRC/openSUSE:Leap:15.2/.python-parallax.new.3248 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-parallax"
Fri Apr 3 15:52:49 2020 rev:13 rq:790991 version:1.0.6
Changes:
--------
--- /work/SRC/openSUSE:Leap:15.2/python-parallax/python-parallax.changes
2020-03-13 10:59:12.868513364 +0100
+++
/work/SRC/openSUSE:Leap:15.2/.python-parallax.new.3248/python-parallax.changes
2020-04-03 15:52:57.825843615 +0200
@@ -1,0 +2,7 @@
+Wed Apr 1 08:54:34 UTC 2020 - Kristoffer Gronlund <[email protected]>
+
+- Release 1.0.6
+- Replace preexec_fn as start_new_session
+- No need to mask signals for subprocess call
+
+-------------------------------------------------------------------
Old:
----
parallax-1.0.5.tar.gz
New:
----
parallax-1.0.6.tar.gz
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Other differences:
------------------
++++++ python-parallax.spec ++++++
--- /var/tmp/diff_new_pack.odFXFp/_old 2020-04-03 15:52:58.209844056 +0200
+++ /var/tmp/diff_new_pack.odFXFp/_new 2020-04-03 15:52:58.213844061 +0200
@@ -1,7 +1,7 @@
#
# spec file for package python-parallax
#
-# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany.
+# Copyright (c) 2020 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -18,7 +18,7 @@
%{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-parallax
-Version: 1.0.5
+Version: 1.0.6
Release: 0
Summary: Python module for multi-node SSH command execution and file
copy
License: BSD-3-Clause
++++++ parallax-1.0.5.tar.gz -> parallax-1.0.6.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/parallax-1.0.5/PKG-INFO new/parallax-1.0.6/PKG-INFO
--- old/parallax-1.0.5/PKG-INFO 2019-08-22 09:45:34.000000000 +0200
+++ new/parallax-1.0.6/PKG-INFO 2020-04-01 10:50:03.678191400 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: parallax
-Version: 1.0.5
+Version: 1.0.6
Summary: Execute commands and copy files over SSH to multiple machines at once
Home-page: https://github.com/krig/parallax/
Author: Kristoffer Gronlund
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/parallax-1.0.5/README new/parallax-1.0.6/README
--- old/parallax-1.0.5/README 2014-12-25 18:53:06.000000000 +0100
+++ new/parallax-1.0.6/README 1970-01-01 01:00:00.000000000 +0100
@@ -1,76 +0,0 @@
-# Parallax SSH
-
-Parallax SSH is a fork of [Parallel SSH][pssh] which focuses less on
-command-line tools and more on providing a flexible and programmable
-API that can be used by Python application developers to perform SSH
-operations across multiple machines.
-
-## Installation
-
-Parallax intends to be compatible with Python 2.6 and above (including
-Python 3.1 and greater), but is primarily tested with Python 2.7.
-
-Installation requires setuptools or ez_setup.py. The latter can be
-downloaded [here][ez].
-
-Once those requirements are fulfilled, installation is as simple as:
-
- # sudo python setup.py install
-
-Packaged versions of Parallax SSH for various distributions can be
-downloaded from the openSUSE [OBS][obs].
-
-To install via PyPI, use `pip`:
-
- # pip install parallax
-
-Share and enjoy!
-
-## Usage
-
-* `parallax.call(hosts, cmdline, opts)`
-
- Executes the given command on a set of hosts, collecting the output.
-
- Returns a dict mapping the hostname of
- each host either to a tuple containing a return code,
- stdout and stderr, or an `parallax.Error` instance
- describing the error.
-
-* `parallax.copy(hosts, src, dst, opts)`
-
- Copies files from `src` on the local machine to `dst` on the
- remote hosts.
-
- Returns a dict mapping the hostname of
- each host either to a path, or an `parallax.Error` instance
- describing the error.
-
-* `parallax.slurp(hosts, src, dst, opts)`
-
- Copies files from `src` on the remote hosts to a local folder for
- each of the remote hosts.
-
- Returns a dict mapping the hostname of
- each host either to a path, or an `parallax.Error` instance
- describing the error.
-
-## How it works
-
-By default, Parallax SSH uses at most 32 SSH process in parallel to
-SSH to the nodes. By default, it uses a timeout of one minute to SSH
-to a node and obtain a result.
-
-## Environment variables
-
-* `PARALLAX_HOSTS`
-* `PARALLAX_USER`
-* `PARALLAX_PAR`
-* `PARALLAX_OUTDIR`
-* `PARALLAX_VERBOSE`
-* `PARALLAX_OPTIONS`
-
-
- [pssh]: https://code.google.com/p/parallel-ssh/ "parallel-ssh"
- [ez]: http://peak.telecommunity.com/dist/ez_setup.py "ez_setup.py"
- [obs]:
https://build.opensuse.org/package/show/devel:languages:python/python-parallax
"OBS:python-parallax"
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/parallax-1.0.5/parallax/manager.py
new/parallax-1.0.6/parallax/manager.py
--- old/parallax-1.0.5/parallax/manager.py 2019-08-22 09:40:05.000000000
+0200
+++ new/parallax-1.0.6/parallax/manager.py 2020-04-01 10:32:35.000000000
+0200
@@ -163,24 +163,13 @@
def update_tasks(self, writer):
"""Reaps tasks and starts as many new ones as allowed."""
- # Mask signals to work around a Python bug:
- # http://bugs.python.org/issue1068268
- # Since sigprocmask isn't in the stdlib, clear the SIGCHLD handler.
- # Since signals are masked, reap_tasks needs to be called once for
- # each loop.
keep_running = True
while keep_running:
- self.clear_sigchld_handler()
self._start_tasks_once(writer)
- self.set_sigchld_handler()
keep_running = self.reap_tasks()
def _start_tasks_once(self, writer):
- """Starts tasks once.
-
- Due to http://bugs.python.org/issue1068268, signals must be masked
- when this method is called.
- """
+ """Starts tasks once."""
while self.tasks and len(self.running) < self.limit:
task = self.tasks.pop(0)
self.running.append(task)
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/parallax-1.0.5/parallax/task.py
new/parallax-1.0.6/parallax/task.py
--- old/parallax-1.0.5/parallax/task.py 2017-11-03 08:52:25.000000000 +0100
+++ new/parallax-1.0.6/parallax/task.py 2020-04-01 10:32:35.000000000 +0200
@@ -19,6 +19,9 @@
bytes = str
+PY2 = sys.version[0] == '2'
+
+
class Task(object):
"""Starts a process and manages its input and output.
@@ -118,8 +121,13 @@
# Create the subprocess. Since we carefully call set_cloexec() on
# all open files, we specify close_fds=False.
- self.proc = Popen(self.cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE,
- close_fds=False, preexec_fn=os.setsid, env=environ)
+ if PY2:
+ self.proc = Popen(self.cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE,
+ close_fds=False, preexec_fn=os.setsid, env=environ)
+ else:
+ self.proc = Popen(self.cmd, stdin=PIPE, stdout=PIPE, stderr=PIPE,
+ close_fds=False, start_new_session=True, env=environ)
+
self.timestamp = time.time()
if self.inputbuffer:
self.stdin = self.proc.stdin
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/parallax-1.0.5/parallax/version.py
new/parallax-1.0.6/parallax/version.py
--- old/parallax-1.0.5/parallax/version.py 2019-08-22 09:40:57.000000000
+0200
+++ new/parallax-1.0.6/parallax/version.py 2020-04-01 10:33:22.000000000
+0200
@@ -1 +1 @@
-VERSION = '1.0.5'
+VERSION = '1.0.6'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/parallax-1.0.5/parallax.egg-info/PKG-INFO
new/parallax-1.0.6/parallax.egg-info/PKG-INFO
--- old/parallax-1.0.5/parallax.egg-info/PKG-INFO 2019-08-22
09:45:34.000000000 +0200
+++ new/parallax-1.0.6/parallax.egg-info/PKG-INFO 2020-04-01
10:50:03.000000000 +0200
@@ -1,6 +1,6 @@
Metadata-Version: 1.1
Name: parallax
-Version: 1.0.5
+Version: 1.0.6
Summary: Execute commands and copy files over SSH to multiple machines at once
Home-page: https://github.com/krig/parallax/
Author: Kristoffer Gronlund
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn'
'--exclude=.svnignore' old/parallax-1.0.5/parallax.egg-info/SOURCES.txt
new/parallax-1.0.6/parallax.egg-info/SOURCES.txt
--- old/parallax-1.0.5/parallax.egg-info/SOURCES.txt 2019-08-22
09:45:34.000000000 +0200
+++ new/parallax-1.0.6/parallax.egg-info/SOURCES.txt 2020-04-01
10:50:03.000000000 +0200
@@ -1,7 +1,6 @@
AUTHORS
COPYING
MANIFEST.in
-README
README.md
setup.py
bin/parallax-askpass