commit python-jupyter_client for openSUSE:Factory
![](https://seccdn.libravatar.org/avatar/e2145bc5cf53dda95c308a3c75e8fef3.jpg?s=120&d=mm&r=g)
Hello community, here is the log from the commit of package python-jupyter_client for openSUSE:Factory checked in at 2018-05-29 10:38:45 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-jupyter_client (Old) and /work/SRC/openSUSE:Factory/.python-jupyter_client.new (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Package is "python-jupyter_client" Tue May 29 10:38:45 2018 rev:7 rq:611088 version:5.2.3 Changes: -------- --- /work/SRC/openSUSE:Factory/python-jupyter_client/python-jupyter_client-doc.changes 2018-02-15 13:27:05.396524557 +0100 +++ /work/SRC/openSUSE:Factory/.python-jupyter_client.new/python-jupyter_client-doc.changes 2018-05-29 10:38:49.849977499 +0200 @@ -1,0 +2,14 @@ +Thu Apr 12 20:47:13 UTC 2018 - arun@gmx.de + +- specfile: + * add requirement for python-backcall + * fix 'provides' syntax + +- update to version 5.2.3: + * Fix hang on close in :class:`.ThreadedKernelClient` (used in + QtConsole) when using tornado with asyncio (default behavior of + tornado 5, see :ghpull:`352`). + * Fix errors when using deprecated :attr:`.KernelManager.kernel_cmd` + (:ghpull:`343`, :ghpull:`344`). + +------------------------------------------------------------------- --- /work/SRC/openSUSE:Factory/python-jupyter_client/python-jupyter_client.changes 2018-02-15 13:27:05.656515114 +0100 +++ /work/SRC/openSUSE:Factory/.python-jupyter_client.new/python-jupyter_client.changes 2018-05-29 10:38:51.285924487 +0200 @@ -1,0 +2,13 @@ +Thu Apr 12 20:47:13 UTC 2018 - arun@gmx.de + +- specfile: + - remove fix_COPY_THRESHOLD.patch, included upstream + +- update to version 5.2.3: + * Fix hang on close in :class:`.ThreadedKernelClient` (used in + QtConsole) when using tornado with asyncio (default behavior of + tornado 5, see :ghpull:`352`). + * Fix errors when using deprecated :attr:`.KernelManager.kernel_cmd` + (:ghpull:`343`, :ghpull:`344`). + +------------------------------------------------------------------- Old: ---- fix_COPY_THRESHOLD.patch jupyter_client-5.2.2.tar.gz New: ---- jupyter_client-5.2.3.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-jupyter_client-doc.spec ++++++ --- /var/tmp/diff_new_pack.EFmmOV/_old 2018-05-29 10:38:52.901864831 +0200 +++ /var/tmp/diff_new_pack.EFmmOV/_new 2018-05-29 10:38:52.901864831 +0200 @@ -16,29 +16,31 @@ # +%{?!python_module:%define python_module() python-%{**} python3-%{**}} # PDF documentation currently broken %bcond_with pdf - %bcond_without html - %bcond_without tests - -%{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-jupyter_client-doc -Version: 5.2.2 +Version: 5.2.3 Release: 0 Summary: Documentation for python-jupyter_client License: BSD-3-Clause Group: Development/Languages/Python Url: https://github.com/jupyter/jupyter_client Source: https://files.pythonhosted.org/packages/source/j/jupyter_client/jupyter_client-%{version}.tar.gz -# PATCH-FIX-UPSTREAM fix_COPY_THRESHOLD.patch -- fix testing patch for pyzmq < 17 -- https://github.com/jupyter/jupyter_client/pull/349 -Patch0: fix_COPY_THRESHOLD.patch BuildRequires: %{python_module jupyter_client} BuildRequires: fdupes BuildRequires: python-rpm-macros +Provides: %{name}-html = %{version} +Provides: %{name}-pdf = %{version} +Obsoletes: %{name}-html < %{version} +Obsoletes: %{name}-pdf < %{version} +Provides: python-jupyter_client-doc = %{version} +BuildArch: noarch %if %{with tests} # Test Requirements +BuildRequires: %{python_module backcall} BuildRequires: %{python_module jupyter_ipykernel} BuildRequires: %{python_module nose} BuildRequires: %{python_module pytest} @@ -53,29 +55,22 @@ %if %{with pdf} BuildRequires: python3-Sphinx-latex %endif -BuildArch: noarch -Provides: %{name}-html = %{version} -Provides: %{name}-pdf = %{version} -Obsoletes: %{name}-html < %{version} -Obsoletes: %{name}-pdf < %{version} -Provides: %{python_module jupyter_client-doc = %{version}} %description Documentation and help files for python-jupyter_client. %prep %setup -q -n jupyter_client-%{version} -%patch0 -p1 %build # Build the documentation pushd docs %if %{with html} -make html +make %{?_smp_mflags} html rm -rf build/html/.buildinfo %endif %if %{with pdf} -make latexpdf +make %{?_smp_mflags} latexpdf %endif popd @@ -100,8 +95,7 @@ %endif %files -%defattr(-,root,root,-) -%doc COPYING.md +%license COPYING.md %{_docdir}/python-jupyter_client/ %changelog ++++++ python-jupyter_client.spec ++++++ --- /var/tmp/diff_new_pack.EFmmOV/_old 2018-05-29 10:38:52.925863945 +0200 +++ /var/tmp/diff_new_pack.EFmmOV/_new 2018-05-29 10:38:52.925863945 +0200 @@ -18,15 +18,13 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} Name: python-jupyter_client -Version: 5.2.2 +Version: 5.2.3 Release: 0 Summary: Jupyter protocol implementation and client libraries License: BSD-3-Clause Group: Development/Languages/Python Url: https://github.com/jupyter/jupyter_client Source: https://files.pythonhosted.org/packages/source/j/jupyter_client/jupyter_client-%{version}.tar.gz -# PATCH-FIX-UPSTREAM fix_COPY_THRESHOLD.patch -- fix testing patch for pyzmq < 17 -- https://github.com/jupyter/jupyter_client/pull/349 -Patch0: fix_COPY_THRESHOLD.patch BuildRequires: %{python_module devel} BuildRequires: %{python_module setuptools} BuildRequires: fdupes @@ -49,7 +47,6 @@ %prep %setup -q -n jupyter_client-%{version} -%patch0 -p1 %build %python_build @@ -59,8 +56,8 @@ %python_expand %fdupes %{buildroot}%{$python_sitelib} %files %{python_files} -%defattr(-,root,root,-) -%doc CONTRIBUTING.md COPYING.md README.md +%license COPYING.md +%doc CONTRIBUTING.md README.md %python3_only %{_bindir}/jupyter-kernel %python3_only %{_bindir}/jupyter-kernelspec %python3_only %{_bindir}/jupyter-run ++++++ jupyter_client-5.2.2.tar.gz -> jupyter_client-5.2.3.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/PKG-INFO new/jupyter_client-5.2.3/PKG-INFO --- old/jupyter_client-5.2.2/PKG-INFO 2018-01-24 18:35:14.000000000 +0100 +++ new/jupyter_client-5.2.3/PKG-INFO 2018-03-12 17:11:51.000000000 +0100 @@ -1,22 +1,28 @@ -Metadata-Version: 1.1 +Metadata-Version: 1.2 Name: jupyter_client -Version: 5.2.2 +Version: 5.2.3 Summary: Jupyter protocol implementation and client libraries Home-page: https://jupyter.org Author: Jupyter Development Team Author-email: jupyter@googlegroups.com License: BSD +Project-URL: Documentation, https://jupyter-client.readthedocs.io +Project-URL: Source, https://github.com/jupyter/jupyter_client/ +Project-URL: Tracker, https://github.com/jupyter/jupyter_client/issues Description-Content-Type: UNKNOWN Description: UNKNOWN Keywords: Interactive,Interpreter,Shell,Web Platform: Linux Platform: Mac OS X Platform: Windows +Classifier: Framework :: Jupyter Classifier: Intended Audience :: Developers +Classifier: Intended Audience :: Education Classifier: Intended Audience :: System Administrators Classifier: Intended Audience :: Science/Research Classifier: License :: OSI Approved :: BSD License +Classifier: Operating System :: OS Independent Classifier: Programming Language :: Python -Classifier: Programming Language :: Python :: 2.7 +Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/docs/changelog.rst new/jupyter_client-5.2.3/docs/changelog.rst --- old/jupyter_client-5.2.2/docs/changelog.rst 2018-01-24 18:34:35.000000000 +0100 +++ new/jupyter_client-5.2.3/docs/changelog.rst 2018-03-12 15:12:43.000000000 +0100 @@ -4,6 +4,17 @@ Changes in Jupyter Client ========================= +5.2.3 +===== + +`5.2.3 on GitHub https://github.com/jupyter/jupyter_client/milestones/5.2.3`__ + +- Fix hang on close in :class:`.ThreadedKernelClient` (used in QtConsole) + when using tornado with asyncio + (default behavior of tornado 5, see :ghpull:`352`). +- Fix errors when using deprecated :attr:`.KernelManager.kernel_cmd` + (:ghpull:`343`, :ghpull:`344`). + 5.2.2 ===== diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/jupyter_client/_version.py new/jupyter_client-5.2.3/jupyter_client/_version.py --- old/jupyter_client-5.2.2/jupyter_client/_version.py 2018-01-24 18:34:48.000000000 +0100 +++ new/jupyter_client-5.2.3/jupyter_client/_version.py 2018-03-12 17:11:28.000000000 +0100 @@ -1,4 +1,4 @@ -version_info = (5, 2, 2) +version_info = (5, 2, 3) __version__ = '.'.join(map(str, version_info)) protocol_version_info = (5, 3) diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/jupyter_client/manager.py new/jupyter_client-5.2.3/jupyter_client/manager.py --- old/jupyter_client-5.2.2/jupyter_client/manager.py 2018-01-24 10:30:48.000000000 +0100 +++ new/jupyter_client-5.2.3/jupyter_client/manager.py 2018-03-12 17:11:16.000000000 +0100 @@ -11,6 +11,7 @@ import signal import sys import time +import warnings import zmq @@ -77,7 +78,7 @@ @property def kernel_spec(self): - if self._kernel_spec is None: + if self._kernel_spec is None and self.kernel_name is not '': self._kernel_spec = self.kernel_spec_manager.get_kernel_spec(self.kernel_name) return self._kernel_spec diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/jupyter_client/tests/test_session.py new/jupyter_client-5.2.3/jupyter_client/tests/test_session.py --- old/jupyter_client-5.2.2/jupyter_client/tests/test_session.py 2017-11-22 12:54:35.000000000 +0100 +++ new/jupyter_client-5.2.3/jupyter_client/tests/test_session.py 2018-03-11 15:14:54.000000000 +0100 @@ -41,7 +41,7 @@ @pytest.fixture def no_copy_threshold(): """Disable zero-copy optimizations in pyzmq >= 17""" - with mock.patch.object(zmq, 'COPY_THRESHOLD', 1): + with mock.patch.object(zmq, 'COPY_THRESHOLD', 1, create=True): yield diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/jupyter_client/threaded.py new/jupyter_client-5.2.3/jupyter_client/threaded.py --- old/jupyter_client-5.2.2/jupyter_client/threaded.py 2018-01-24 10:08:58.000000000 +0100 +++ new/jupyter_client-5.2.3/jupyter_client/threaded.py 2018-03-11 15:14:56.000000000 +0100 @@ -3,7 +3,8 @@ from __future__ import absolute_import import atexit import errno -from threading import Thread +import sys +from threading import Thread, Event import time # import ZMQError in top-level namespace, to avoid ugly attribute-error messages @@ -41,9 +42,15 @@ self.socket = socket self.session = session self.ioloop = loop + evt = Event() - self.stream = zmqstream.ZMQStream(self.socket, self.ioloop) - self.stream.on_recv(self._handle_recv) + def setup_stream(): + self.stream = zmqstream.ZMQStream(self.socket, self.ioloop) + self.stream.on_recv(self._handle_recv) + evt.set() + + self.ioloop.add_callback(setup_stream) + evt.wait() _is_alive = False def is_alive(self): @@ -142,11 +149,11 @@ """Run a pyzmq ioloop in a thread to send and receive messages """ _exiting = False + ioloop = None - def __init__(self, loop): + def __init__(self): super(IOLoopThread, self).__init__() self.daemon = True - self.ioloop = loop or ioloop.IOLoop() @staticmethod @atexit.register @@ -156,8 +163,26 @@ if IOLoopThread is not None: IOLoopThread._exiting = True + def start(self): + """Start the IOLoop thread + + Don't return until self.ioloop is defined, + which is created in the thread + """ + self._start_event = Event() + Thread.start(self) + self._start_event.wait() + def run(self): """Run my loop, ignoring EINTR events in the poller""" + if 'asyncio' in sys.modules: + # tornado may be using asyncio, + # ensure an eventloop exists for this thread + import asyncio + asyncio.set_event_loop(asyncio.new_event_loop()) + self.ioloop = ioloop.IOLoop() + # signal that self.ioloop is defined + self._start_event.set() while True: try: self.ioloop.start() @@ -182,9 +207,10 @@ :meth:`~threading.Thread.start` is called again. """ if self.ioloop is not None: - self.ioloop.stop() + self.ioloop.add_callback(self.ioloop.stop) self.join() self.close() + self.ioloop = None def close(self): if self.ioloop is not None: @@ -198,22 +224,19 @@ """ A KernelClient that provides thread-safe sockets with async callbacks on message replies. """ - _ioloop = None @property def ioloop(self): - if self._ioloop is None: - self._ioloop = ioloop.IOLoop() - return self._ioloop + return self.ioloop_thread.ioloop ioloop_thread = Instance(IOLoopThread, allow_none=True) def start_channels(self, shell=True, iopub=True, stdin=True, hb=True): + self.ioloop_thread = IOLoopThread() + self.ioloop_thread.start() + if shell: self.shell_channel._inspect = self._check_kernel_info_reply - self.ioloop_thread = IOLoopThread(self.ioloop) - self.ioloop_thread.start() - super(ThreadedKernelClient, self).start_channels(shell, iopub, stdin, hb) def _check_kernel_info_reply(self, msg): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/jupyter_client.egg-info/PKG-INFO new/jupyter_client-5.2.3/jupyter_client.egg-info/PKG-INFO --- old/jupyter_client-5.2.2/jupyter_client.egg-info/PKG-INFO 2018-01-24 18:35:14.000000000 +0100 +++ new/jupyter_client-5.2.3/jupyter_client.egg-info/PKG-INFO 2018-03-12 17:11:51.000000000 +0100 @@ -1,22 +1,28 @@ -Metadata-Version: 1.1 +Metadata-Version: 1.2 Name: jupyter-client -Version: 5.2.2 +Version: 5.2.3 Summary: Jupyter protocol implementation and client libraries Home-page: https://jupyter.org Author: Jupyter Development Team Author-email: jupyter@googlegroups.com License: BSD +Project-URL: Documentation, https://jupyter-client.readthedocs.io +Project-URL: Source, https://github.com/jupyter/jupyter_client/ +Project-URL: Tracker, https://github.com/jupyter/jupyter_client/issues Description-Content-Type: UNKNOWN Description: UNKNOWN Keywords: Interactive,Interpreter,Shell,Web Platform: Linux Platform: Mac OS X Platform: Windows +Classifier: Framework :: Jupyter Classifier: Intended Audience :: Developers +Classifier: Intended Audience :: Education Classifier: Intended Audience :: System Administrators Classifier: Intended Audience :: Science/Research Classifier: License :: OSI Approved :: BSD License +Classifier: Operating System :: OS Independent Classifier: Programming Language :: Python -Classifier: Programming Language :: Python :: 2.7 +Classifier: Programming Language :: Python :: 2 Classifier: Programming Language :: Python :: 3 -Classifier: Programming Language :: Python :: 3.3 +Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.* diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/jupyter_client-5.2.2/setup.py new/jupyter_client-5.2.3/setup.py --- old/jupyter_client-5.2.2/setup.py 2018-01-24 10:30:54.000000000 +0100 +++ new/jupyter_client-5.2.3/setup.py 2018-03-12 17:11:16.000000000 +0100 @@ -60,22 +60,29 @@ name = name, version = version_ns['__version__'], packages = packages, - description = "Jupyter protocol implementation and client libraries", + description = 'Jupyter protocol implementation and client libraries', author = 'Jupyter Development Team', author_email = 'jupyter@googlegroups.com', url = 'https://jupyter.org', license = 'BSD', platforms = "Linux, Mac OS X, Windows", keywords = ['Interactive', 'Interpreter', 'Shell', 'Web'], + project_urls = { + 'Documentation': 'https://jupyter-client.readthedocs.io', + 'Source': 'https://github.com/jupyter/jupyter_client/', + 'Tracker': 'https://github.com/jupyter/jupyter_client/issues', + }, classifiers = [ + 'Framework :: Jupyter', 'Intended Audience :: Developers', + 'Intended Audience :: Education', 'Intended Audience :: System Administrators', 'Intended Audience :: Science/Research', 'License :: OSI Approved :: BSD License', + 'Operating System :: OS Independent', 'Programming Language :: Python', - 'Programming Language :: Python :: 2.7', + 'Programming Language :: Python :: 2', 'Programming Language :: Python :: 3', - 'Programming Language :: Python :: 3.3', ], install_requires = [ 'traitlets', @@ -84,6 +91,7 @@ 'python-dateutil>=2.1', 'tornado>=4.1', ], + python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*', extras_require = { 'test': ['ipykernel', 'ipython', 'mock'], 'test:python_version == "3.3"': ['pytest<3.3.0'],
participants (1)
-
root@hilbert.suse.de