Script 'mail_helper' called by obssrc Hello community, here is the log from the commit of package python-execnet for openSUSE:Factory checked in at 2021-12-16 21:18:47 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-execnet (Old) and /work/SRC/openSUSE:Factory/.python-execnet.new.2520 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-execnet" Thu Dec 16 21:18:47 2021 rev:13 rq:940476 version:1.9.0 Changes: -------- --- /work/SRC/openSUSE:Factory/python-execnet/python-execnet.changes 2021-02-04 20:24:09.754834336 +0100 +++ /work/SRC/openSUSE:Factory/.python-execnet.new.2520/python-execnet.changes 2021-12-16 21:19:07.798517076 +0100 @@ -1,0 +2,10 @@ +Sun Dec 12 16:55:20 UTC 2021 - Ben Greiner <c...@bnavigator.de> + +- update to 1.9.0 + * Removed the apipkg dependency. +- Release 1.8.1 + * Update calls of threading.Event.isSet() to + threading.Event.is_set(), which avoids a deprecation warning + with Python 3.10. + +------------------------------------------------------------------- Old: ---- execnet-1.8.0.tar.gz New: ---- execnet-1.9.0.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-execnet.spec ++++++ --- /var/tmp/diff_new_pack.h49iWB/_old 2021-12-16 21:19:08.310517272 +0100 +++ /var/tmp/diff_new_pack.h49iWB/_new 2021-12-16 21:19:08.314517273 +0100 @@ -18,21 +18,19 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-execnet -Version: 1.8.0 +Version: 1.9.0 Release: 0 Summary: Rapid multi-Python deployment License: MIT Group: Development/Libraries/Python URL: https://github.com/pytest-dev/execnet Source0: https://files.pythonhosted.org/packages/source/e/execnet/execnet-%{version}.tar.gz -BuildRequires: %{python_module apipkg} BuildRequires: %{python_module pytest} BuildRequires: %{python_module setuptools_scm} BuildRequires: %{python_module setuptools} BuildRequires: fdupes BuildRequires: procps BuildRequires: python-rpm-macros -Requires: python-apipkg BuildArch: noarch %python_subpackages ++++++ execnet-1.8.0.tar.gz -> execnet-1.9.0.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/.github/workflows/main.yml new/execnet-1.9.0/.github/workflows/main.yml --- old/execnet-1.8.0/.github/workflows/main.yml 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/.github/workflows/main.yml 2021-06-13 15:47:12.000000000 +0200 @@ -94,10 +94,10 @@ uses: actions/setup-python@v2 with: python-version: ${{ matrix.python }} - - name: Install tox + - name: Install tox setuptools_scm run: | python -m pip install --upgrade pip - pip install tox + pip install tox setuptools_scm - name: Test run: | tox -e ${{ matrix.tox_env }} diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/.pre-commit-config.yaml new/execnet-1.9.0/.pre-commit-config.yaml --- old/execnet-1.8.0/.pre-commit-config.yaml 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/.pre-commit-config.yaml 2021-06-13 15:47:12.000000000 +0200 @@ -1,24 +1,24 @@ exclude: doc/en/example/py2py3/test_py2.py repos: -- repo: https://github.com/python/black - rev: 20.8b1 +- repo: https://github.com/psf/black + rev: 21.5b2 hooks: - id: black args: [--safe, --quiet] - repo: https://github.com/asottile/blacken-docs - rev: v1.9.2 + rev: v1.10.0 hooks: - id: blacken-docs additional_dependencies: [black==19.3b0] - repo: https://github.com/pre-commit/pre-commit-hooks - rev: v3.4.0 + rev: v4.0.1 hooks: - id: trailing-whitespace - id: end-of-file-fixer - id: fix-encoding-pragma - id: check-yaml - repo: https://github.com/asottile/reorder_python_imports - rev: v2.3.6 + rev: v2.5.0 hooks: - id: reorder-python-imports args: ['--application-directories=execnet'] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/CHANGELOG.rst new/execnet-1.9.0/CHANGELOG.rst --- old/execnet-1.8.0/CHANGELOG.rst 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/CHANGELOG.rst 2021-06-13 15:47:12.000000000 +0200 @@ -1,4 +1,14 @@ -1.8.0 (2020-01-27) +1.9.0 (2021-06-13) +------------------ + +* Removed the ``apipkg`` dependency. + +1.8.1 (2021-05-27) +------------------ + +* Update calls of `threading.Event.isSet()` to `threading.Event.is_set()`, which avoids a deprecation warning with Python 3.10. + +1.8.0 (2021-01-27) ------------------ * Dropped support for Python 3.4. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/PKG-INFO new/execnet-1.9.0/PKG-INFO --- old/execnet-1.8.0/PKG-INFO 2021-01-27 12:18:52.000000000 +0100 +++ new/execnet-1.9.0/PKG-INFO 2021-06-13 15:47:15.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: execnet -Version: 1.8.0 +Version: 1.9.0 Summary: execnet: rapid multi-Python deployment Home-page: https://execnet.readthedocs.io/en/latest/ Author: holger krekel and others diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/doc/_templates/indexsidebar.html new/execnet-1.9.0/doc/_templates/indexsidebar.html --- old/execnet-1.8.0/doc/_templates/indexsidebar.html 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/doc/_templates/indexsidebar.html 2021-06-13 15:47:12.000000000 +0200 @@ -18,4 +18,4 @@ <p>Join <a href="http://mail.python.org/mailman/listinfo/execnet-dev"> execnet-dev mailing list </a></p> -<p>come to <tt>#pylib</tt> on FreeNode</p> +<p>come to <tt>#pytest</tt> on Libera Chat</p> diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/doc/support.rst new/execnet-1.9.0/doc/support.rst --- old/execnet-1.8.0/doc/support.rst 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/doc/support.rst 2021-06-13 15:47:12.000000000 +0200 @@ -7,7 +7,10 @@ * join `execnet-dev`_ for general discussions * join `execnet-commit`_ to be notified of changes * clone the `github repository`_ and submit patches -* hang out on the irc.freenode.net #pylib channel +* hang out on the #pytest channel `on irc.libera.chat +<ircs://irc.libera.chat:6697/#pytest>`_ (using an IRC client, `via webchat +<https://web.libera.chat/#pytest>`_, or `via Matrix +<https://matrix.to/#/%23pytest:libera.chat>`_). * follow the `tetamap blog`_ or `Holger's twitter presence`_. * contact merlinux_ if you want to buy teaching or other support. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet/__init__.py new/execnet-1.9.0/execnet/__init__.py --- old/execnet-1.8.0/execnet/__init__.py 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/execnet/__init__.py 2021-06-13 15:47:12.000000000 +0200 @@ -7,29 +7,45 @@ (c) 2012, Holger Krekel and others """ -import apipkg +from ._version import version as __version__ +from .deprecated import PopenGateway +from .deprecated import SocketGateway +from .deprecated import SshGateway +from .gateway_base import DataFormatError +from .gateway_base import dump +from .gateway_base import dumps +from .gateway_base import load +from .gateway_base import loads +from .gateway_base import RemoteError +from .gateway_base import TimeoutError +from .gateway_bootstrap import HostNotFound +from .multi import default_group +from .multi import Group +from .multi import makegateway +from .multi import MultiChannel +from .multi import set_execmodel +from .rsync import RSync +from .xspec import XSpec -apipkg.initpkg( - __name__, - { - "__version__": "._version:version", - "PopenGateway": ".deprecated:PopenGateway", - "SocketGateway": ".deprecated:SocketGateway", - "SshGateway": ".deprecated:SshGateway", - "makegateway": ".multi:makegateway", - "set_execmodel": ".multi:set_execmodel", - "HostNotFound": ".gateway_bootstrap:HostNotFound", - "RemoteError": ".gateway_base:RemoteError", - "TimeoutError": ".gateway_base:TimeoutError", - "XSpec": ".xspec:XSpec", - "Group": ".multi:Group", - "MultiChannel": ".multi:MultiChannel", - "RSync": ".rsync:RSync", - "default_group": ".multi:default_group", - "dumps": ".gateway_base:dumps", - "loads": ".gateway_base:loads", - "load": ".gateway_base:load", - "dump": ".gateway_base:dump", - "DataFormatError": ".gateway_base:DataFormatError", - }, -) + +__all__ = [ + "__version__", + "PopenGateway", + "SocketGateway", + "SshGateway", + "makegateway", + "set_execmodel", + "HostNotFound", + "RemoteError", + "TimeoutError", + "XSpec", + "Group", + "MultiChannel", + "RSync", + "default_group", + "dumps", + "loads", + "load", + "dump", + "DataFormatError", +] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet/_version.py new/execnet-1.9.0/execnet/_version.py --- old/execnet-1.8.0/execnet/_version.py 2021-01-27 12:18:52.000000000 +0100 +++ new/execnet-1.9.0/execnet/_version.py 2021-06-13 15:47:15.000000000 +0200 @@ -1,5 +1,5 @@ # coding: utf-8 # file generated by setuptools_scm # don't change, don't track in version control -version = '1.8.0' -version_tuple = (1, 8, 0) +version = '1.9.0' +version_tuple = (1, 9, 0) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet/gateway.py new/execnet-1.9.0/execnet/gateway.py --- old/execnet-1.8.0/execnet/gateway.py 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/execnet/gateway.py 2021-06-13 15:47:12.000000000 +0200 @@ -11,14 +11,15 @@ import types import execnet -from execnet import gateway_base -from execnet.gateway_base import Message + +from . import gateway_base +from .gateway_base import Message importdir = os.path.dirname(os.path.dirname(execnet.__file__)) class Gateway(gateway_base.BaseGateway): - """ Gateway to a local or remote Python Intepreter. """ + """Gateway to a local or remote Python Intepreter.""" def __init__(self, io, spec): super(Gateway, self).__init__(io=io, id=spec.id, _startcount=1) @@ -30,7 +31,7 @@ return self._io.remoteaddress def __repr__(self): - """ return string representing gateway type and status. """ + """return string representing gateway type and status.""" try: r = self.hasreceiver() and "receive-live" or "not-receiving" i = len(self._channelfactory.channels()) @@ -72,7 +73,7 @@ self._send(Message.RECONFIGURE, data=data) def _rinfo(self, update=False): - """ return some sys/env information from remote. """ + """return some sys/env information from remote.""" if update or not hasattr(self, "_cache_rinfo"): ch = self.remote_exec(rinfo_source) try: @@ -82,11 +83,11 @@ return self._cache_rinfo def hasreceiver(self): - """ return True if gateway is able to receive data. """ + """return True if gateway is able to receive data.""" return self._receivepool.active_count() > 0 def remote_status(self): - """ return information object about remote execution status. """ + """return information object about remote execution status.""" channel = self.newchannel() self._send(Message.STATUS, channel.id) statusdict = channel.receive() @@ -136,7 +137,7 @@ return channel def remote_init_threads(self, num=None): - """ DEPRECATED. Is currently a NO-OPERATION already.""" + """DEPRECATED. Is currently a NO-OPERATION already.""" print("WARNING: remote_init_threads()" " is a no-operation in execnet-1.2") diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet/gateway_base.py new/execnet-1.9.0/execnet/gateway_base.py --- old/execnet-1.8.0/execnet/gateway_base.py 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/execnet/gateway_base.py 2021-06-13 15:47:12.000000000 +0200 @@ -239,7 +239,7 @@ """ def __init__(self, execmodel, hasprimary=False): - """ by default allow unlimited number of spawns. """ + """by default allow unlimited number of spawns.""" self.execmodel = execmodel self._running_lock = self.execmodel.Lock() self._running = set() @@ -295,7 +295,7 @@ # note that we should be called with _running_lock hold primary_thread_task_ready = self._primary_thread_task_ready if primary_thread_task_ready is not None: - if not primary_thread_task_ready.isSet(): + if not primary_thread_task_ready.is_set(): self._primary_thread_task = reply # wake up primary thread primary_thread_task_ready.set() @@ -316,12 +316,12 @@ return reply def terminate(self, timeout=None): - """ trigger shutdown and wait for completion of all executions. """ + """trigger shutdown and wait for completion of all executions.""" self.trigger_shutdown() return self.waitall(timeout=timeout) def waitall(self, timeout=None): - """ wait until all active spawns have finished executing. """ + """wait until all active spawns have finished executing.""" with self._running_lock: if not self._running: return True @@ -393,7 +393,7 @@ self.execmodel = execmodel def read(self, numbytes): - """Read exactly 'numbytes' bytes from the pipe. """ + """Read exactly 'numbytes' bytes from the pipe.""" # a file in non-blocking mode may return less bytes, so we loop buf = bytes() while numbytes > len(buf): @@ -404,7 +404,7 @@ return buf def write(self, data): - """write out all data bytes. """ + """write out all data bytes.""" assert isinstance(data, bytes) self._write(data) self.outfile.flush() @@ -417,7 +417,7 @@ class Message: - """ encapsulates Messages and their wire protocol. """ + """encapsulates Messages and their wire protocol.""" _types = [] @@ -453,7 +453,7 @@ class GatewayReceivedTerminate(Exception): - """ Receiverthread got termination message. """ + """Receiverthread got termination message.""" def _setupmessages(): @@ -525,7 +525,7 @@ class RemoteError(Exception): - """ Exception containing a stringified error from the other side. """ + """Exception containing a stringified error from the other side.""" def __init__(self, formatted): self.formatted = formatted @@ -544,7 +544,7 @@ class TimeoutError(IOError): - """ Exception indicating that a timeout was reached. """ + """Exception indicating that a timeout was reached.""" NO_ENDMARKER_WANTED = object() @@ -591,7 +591,7 @@ try: olditem = items.get(block=False) except self.gateway.execmodel.queue.Empty: - if not (self._closed or self._receiveclosed.isSet()): + if not (self._closed or self._receiveclosed.is_set()): _callbacks[self.id] = (callback, endmarker, self._strconfig) break else: @@ -616,7 +616,7 @@ # state transition "closed" --> "deleted" for error in self._remoteerrors: error.warn() - elif self._receiveclosed.isSet(): + elif self._receiveclosed.is_set(): # state transition "sendonly" --> "deleted" # the remote channel is already in "deleted" state, nothing to do pass @@ -682,7 +682,7 @@ # but it's never damaging to send too many CHANNEL_CLOSE messages # however, if the other side triggered a close already, we # do not send back a closed message. - if not self._receiveclosed.isSet(): + if not self._receiveclosed.is_set(): put = self.gateway._send if error is not None: put(Message.CHANNEL_CLOSE_ERROR, self.id, dumps_internal(error)) @@ -711,7 +711,7 @@ """ # wait for non-"opened" state self._receiveclosed.wait(timeout=timeout) - if not self._receiveclosed.isSet(): + if not self._receiveclosed.is_set(): raise self.TimeoutError("Timeout after %r seconds" % timeout) error = self._getremoteerror() if error: @@ -787,7 +787,7 @@ self._list = list # needed during interp-shutdown def new(self, id=None): - """ create a new Channel with 'id' (or create new id if None). """ + """create a new Channel with 'id' (or create new id if None).""" with self._writelock: if self.finished: raise IOError("connexion already closed: {}".format(self.gateway)) @@ -1011,11 +1011,11 @@ # _____________________________________________________________________ # def newchannel(self): - """ return a new independent channel. """ + """return a new independent channel.""" return self._channelfactory.new() def join(self, timeout=None): - """ Wait for receiverthread to terminate. """ + """Wait for receiverthread to terminate.""" self._trace("waiting for receiver thread to finish") self._receivepool.waitall() @@ -1296,7 +1296,7 @@ class opcode: - """ container for name -> num mappings. """ + """container for name -> num mappings.""" def _buildopcodes(): @@ -1329,7 +1329,7 @@ def dump(byteio, obj): - """ write a serialized bytestring of the given obj to the given stream. """ + """write a serialized bytestring of the given obj to the given stream.""" _Serializer(write=byteio.write).save(obj, versioned=True) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet/gateway_bootstrap.py new/execnet-1.9.0/execnet/gateway_bootstrap.py --- old/execnet-1.8.0/execnet/gateway_bootstrap.py 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/execnet/gateway_bootstrap.py 2021-06-13 15:47:12.000000000 +0200 @@ -6,8 +6,9 @@ import os import execnet -from execnet import gateway_base -from execnet.gateway import Gateway + +from . import gateway_base +from .gateway import Gateway importdir = os.path.dirname(os.path.dirname(execnet.__file__)) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet/multi.py new/execnet-1.9.0/execnet/multi.py --- old/execnet-1.8.0/execnet/multi.py 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/execnet/multi.py 2021-06-13 15:47:12.000000000 +0200 @@ -9,18 +9,18 @@ from functools import partial from threading import Lock -from execnet import gateway_bootstrap -from execnet import gateway_io -from execnet import XSpec -from execnet.gateway_base import get_execmodel -from execnet.gateway_base import reraise -from execnet.gateway_base import trace +from . import gateway_bootstrap +from . import gateway_io +from .gateway_base import get_execmodel +from .gateway_base import reraise +from .gateway_base import trace +from .xspec import XSpec NO_ENDMARKER_WANTED = object() class Group(object): - """ Gateway Groups. """ + """Gateway Groups.""" defaultspec = "popen" @@ -133,7 +133,7 @@ io = gateway_io.create_io(spec, execmodel=self.execmodel) gw = gateway_bootstrap.bootstrap(io, spec) elif spec.socket: - from execnet import gateway_socket + from . import gateway_socket io = gateway_socket.create_io(spec, self, execmodel=self.execmodel) gw = gateway_bootstrap.bootstrap(io, spec) @@ -163,7 +163,7 @@ return gw def allocate_id(self, spec): - """ (re-entrant) allocate id for the given xspec object. """ + """(re-entrant) allocate id for the given xspec object.""" if spec.id is None: with self._autoidlock: id = "gw" + str(self._autoidcounter) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet.egg-info/PKG-INFO new/execnet-1.9.0/execnet.egg-info/PKG-INFO --- old/execnet-1.8.0/execnet.egg-info/PKG-INFO 2021-01-27 12:18:52.000000000 +0100 +++ new/execnet-1.9.0/execnet.egg-info/PKG-INFO 2021-06-13 15:47:15.000000000 +0200 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: execnet -Version: 1.8.0 +Version: 1.9.0 Summary: execnet: rapid multi-Python deployment Home-page: https://execnet.readthedocs.io/en/latest/ Author: holger krekel and others diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/execnet.egg-info/requires.txt new/execnet-1.9.0/execnet.egg-info/requires.txt --- old/execnet-1.8.0/execnet.egg-info/requires.txt 2021-01-27 12:18:52.000000000 +0100 +++ new/execnet-1.9.0/execnet.egg-info/requires.txt 2021-06-13 15:47:15.000000000 +0200 @@ -1,4 +1,3 @@ -apipkg>=1.4 [testing] pre-commit diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/setup.py new/execnet-1.9.0/setup.py --- old/execnet-1.8.0/setup.py 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/setup.py 2021-06-13 15:47:12.000000000 +0200 @@ -36,7 +36,6 @@ ], packages=["execnet", "execnet.script"], python_requires=">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*", - install_requires=["apipkg>=1.4"], extras_require={"testing": ["pre-commit"]}, setup_requires=["setuptools_scm"], ) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/execnet-1.8.0/tox.ini new/execnet-1.9.0/tox.ini --- old/execnet-1.8.0/tox.ini 2021-01-27 12:18:46.000000000 +0100 +++ new/execnet-1.9.0/tox.ini 2021-06-13 15:47:12.000000000 +0200 @@ -3,6 +3,7 @@ [testenv] deps= + setuptools_scm pytest pytest-timeout passenv = GITHUB_ACTIONS