Accepting request 925995 from devel:languages:python:jupyter

- Update to 7.0.6
  * Fallback to the old ipykernel "json_clean" if we are not able
    to serialize a JSON message #708 (@martinRenou)
  * Add test for serializing bytes #707 (@martinRenou)
- Release 7.0.5
  * avoid use of deprecated zmq.utils.jsonapi #703 (@minrk)
  * Use logger.warning instead of deprecated warn method #700
    (@kevin-bates)
- Release 7.0.4
  * Fix json_default so that it's closer to what ipykernel had
    before #698 (@martinRenou)
  * Clean up the pending task #697 (@shingo78)
  * fix kernel can only restart once issue #695 (@mofanke)
  * Prevent failure if kernel is not found when shutting it down
    #694 (@martinRenou)
- Release 7.0.3
  * Address missing local-provisioner scenario #692 (@kevin-bates)
  * use load_connection_info(info) when constructing a blocking
    client #688 (@minrk)
- Release 7.0.2
  * Don't set event loop policy on Windows at import time #686
    (@minrk)
  * Improve migration guide #685 (@davidbrochart)
- Release 7.0.1
  * Use formal method names when called internally #683
    (@kevin-bates)
- Release 7.0.0
  * The 7.0 release brings a major feature in Kernel Provisioners,
    which enable the ability for third parties to manage the
    lifecycle of a kernel's runtime environment.
  * Being a major release, there are some backward incompatible
    changes. Please see the migration guide for further details.
  * Enhancements made:
  * Kernel Provisioning - initial implementation #612
    (@kevin-bates)
  * Fix up some async method aliases in KernelManager #670
    (@kevin-bates)
  * Support answer_yes when removing kernel specs #659
    (@davidbrochart)
  * Include process ID in message ID #655 (@takluyver)
  * Fix qtconsole issues #638 (@davidbrochart)
  * Added debugger key in kernel_info_reply #486 (@JohanMabille)
  * Prepare for use with Jupyter Releaser #676 (@afshin)
  * Force install jupyter_client master #675 (@davidbrochart)
  * Fix project name #674 (@vidartf)
  * Rename trait to allowed_kernelspecs #672 (@blink1073)
  * Remove block parameter from get_msg() #671 (@davidbrochart)
  * Only import nest_asyncio locally #665 (@SylvainCorlay)
  * Use a default serializer that is not only for date types #664
    (@martinRenou)
  * Updated debug_info_response #657 (@JohanMabille)
  * Do not block on exit #651 (@impact27)
  * Update test kernel with native coroutine, remove
    async_generator dependency #646 (@kevin-bates)
  * setup.py and CI improvements #645 (@dolfinus)
  * Test downstream projects #644 (@davidbrochart)
  * Remove deprecations in kernel manager #643 (@kevin-bates)
  * Add block=True back to get_msg() #641 (@davidbrochart)
  * Pin python>=3.6.1 #636 (@davidbrochart)
  * Use pre-commit #631 (@davidbrochart)
  * Attempt CI with ipykernel 6.0 prerelease #629 (@SylvainCorlay)
  * Make KernelManager subclass tests DRY #628 (@davidbrochart)
  * Add tests to ensure MultiKernelManager subclass methods are
    called #627 (@kevin-bates)
  * Add type annotations, refactor sync/async #623 (@davidbrochart)
  * Create migration guide #681 (@blink1073)
  * Update changelog for 7.0.0rc0 #673 (@blink1073)
  * Added documentation for richInspectVariables request #654
    (@JohanMabille)
  * Change to edit_magic payload #652 (@yitzchak)
  * Added missing documentation for the inspectVariables request
    and resp… #649 (@JohanMabille)
  * Add status field to other replies in documentation #648
    (@yitzchak)
- Drop jupyter_client-pr646-remove-async_generator.patch

OBS-URL: https://build.opensuse.org/request/show/925995
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/python-jupyter-client?expand=0&rev=7
This commit is contained in:
Dominique Leuenberger 2021-10-25 13:17:05 +00:00 committed by Git OBS Bridge
commit e7542d66fb
5 changed files with 85 additions and 109 deletions

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c4bca1d0846186ca8be97f4d2fa6d2bae889cce4892a167ffa1ba6bd1f73e782
size 301499

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:8b6e06000eb9399775e0a55c52df6c1be4766666209c22f90c2691ded0e338dc
size 320572

View File

@ -1,94 +0,0 @@
From 3b854859f91f13d7625ecc9d515bdd3db5641f59 Mon Sep 17 00:00:00 2001
From: Kevin Bates <kbates4@gmail.com>
Date: Tue, 27 Apr 2021 13:32:19 -0700
Subject: [PATCH] Update test kernel to use native coroutine, remove
async_generator dependency
---
jupyter_client/tests/signalkernel.py | 6 ++----
jupyter_client/tests/test_kernelmanager.py | 12 +++++++-----
setup.py | 1 -
3 files changed, 9 insertions(+), 10 deletions(-)
Index: jupyter_client-6.1.12/jupyter_client/tests/signalkernel.py
===================================================================
--- jupyter_client-6.1.12.orig/jupyter_client/tests/signalkernel.py
+++ jupyter_client-6.1.12/jupyter_client/tests/signalkernel.py
@@ -13,8 +13,6 @@ from ipykernel.displayhook import ZMQDis
from ipykernel.kernelbase import Kernel
from ipykernel.kernelapp import IPKernelApp
-from tornado.web import gen
-
import signal
@@ -32,10 +30,9 @@ class SignalTestKernel(Kernel):
if os.environ.get("NO_SIGTERM_REPLY", None) == "1":
signal.signal(signal.SIGTERM, signal.SIG_IGN)
- @gen.coroutine
- def shutdown_request(self, stream, ident, parent):
+ async def shutdown_request(self, stream, ident, parent):
if os.environ.get("NO_SHUTDOWN_REPLY") != "1":
- yield gen.maybe_future(super().shutdown_request(stream, ident, parent))
+ await super().shutdown_request(stream, ident, parent)
def do_execute(self, code, silent, store_history=True, user_expressions=None,
allow_stdin=False):
Index: jupyter_client-6.1.12/jupyter_client/tests/test_kernelmanager.py
===================================================================
--- jupyter_client-6.1.12.orig/jupyter_client/tests/test_kernelmanager.py
+++ jupyter_client-6.1.12/jupyter_client/tests/test_kernelmanager.py
@@ -14,7 +14,6 @@ import threading
import multiprocessing as mp
import pytest
-from async_generator import async_generator, yield_
from traitlets.config.loader import Config
from jupyter_core import paths
from jupyter_client import KernelManager, AsyncKernelManager
@@ -131,10 +130,9 @@ def async_km_subclass(config):
@pytest.fixture
-@async_generator # This is only necessary while Python 3.5 is support afterwhich both it and yield_() can be removed
async def start_async_kernel():
km, kc = await start_new_async_kernel(kernel_name='signaltest')
- await yield_((km, kc))
+ yield km, kc
kc.stop_channels()
await km.shutdown_kernel()
assert km.context.closed
@@ -163,6 +161,9 @@ class TestKernelManagerShutDownGracefull
)
@pytest.mark.parametrize(*parameters)
def test_signal_kernel_subprocesses(self, name, install, expected):
+ # ipykernel doesn't support 3.6 and this test uses async shutdown_request; broken on obs
+ if expected == _ShutdownStatus.ShutdownRequest:
+ pytest.skip()
install()
km, kc = start_new_kernel(kernel_name=name)
assert km._shutdown_status == _ShutdownStatus.Unset
@@ -178,6 +179,9 @@ class TestKernelManagerShutDownGracefull
)
@pytest.mark.parametrize(*parameters)
async def test_async_signal_kernel_subprocesses(self, name, install, expected):
+ # ipykernel doesn't support 3.6 and this test uses async shutdown_request
+ if expected == _ShutdownStatus.ShutdownRequest and sys.version_info < (3, 7):
+ pytest.skip()
install()
km, kc = await start_new_async_kernel(kernel_name=name)
assert km._shutdown_status == _ShutdownStatus.Unset
Index: jupyter_client-6.1.12/setup.py
===================================================================
--- jupyter_client-6.1.12.orig/setup.py
+++ jupyter_client-6.1.12/setup.py
@@ -78,7 +78,6 @@ setup_args = dict(
python_requires = '>=3.5',
extras_require = {
'test': [
- 'async_generator',
'ipykernel',
'ipython',
'jedi<0.18; python_version<="3.6"',

View File

@ -1,3 +1,82 @@
-------------------------------------------------------------------
Sun Oct 17 18:33:06 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Update to 7.0.6
* Fallback to the old ipykernel "json_clean" if we are not able
to serialize a JSON message #708 (@martinRenou)
* Add test for serializing bytes #707 (@martinRenou)
- Release 7.0.5
* avoid use of deprecated zmq.utils.jsonapi #703 (@minrk)
* Use logger.warning instead of deprecated warn method #700
(@kevin-bates)
- Release 7.0.4
* Fix json_default so that it's closer to what ipykernel had
before #698 (@martinRenou)
* Clean up the pending task #697 (@shingo78)
* fix kernel can only restart once issue #695 (@mofanke)
* Prevent failure if kernel is not found when shutting it down
#694 (@martinRenou)
- Release 7.0.3
* Address missing local-provisioner scenario #692 (@kevin-bates)
* use load_connection_info(info) when constructing a blocking
client #688 (@minrk)
- Release 7.0.2
* Don't set event loop policy on Windows at import time #686
(@minrk)
* Improve migration guide #685 (@davidbrochart)
- Release 7.0.1
* Use formal method names when called internally #683
(@kevin-bates)
- Release 7.0.0
* The 7.0 release brings a major feature in Kernel Provisioners,
which enable the ability for third parties to manage the
lifecycle of a kernel's runtime environment.
* Being a major release, there are some backward incompatible
changes. Please see the migration guide for further details.
* Enhancements made:
* Kernel Provisioning - initial implementation #612
(@kevin-bates)
* Fix up some async method aliases in KernelManager #670
(@kevin-bates)
* Support answer_yes when removing kernel specs #659
(@davidbrochart)
* Include process ID in message ID #655 (@takluyver)
* Fix qtconsole issues #638 (@davidbrochart)
* Added debugger key in kernel_info_reply #486 (@JohanMabille)
* Prepare for use with Jupyter Releaser #676 (@afshin)
* Force install jupyter_client master #675 (@davidbrochart)
* Fix project name #674 (@vidartf)
* Rename trait to allowed_kernelspecs #672 (@blink1073)
* Remove block parameter from get_msg() #671 (@davidbrochart)
* Only import nest_asyncio locally #665 (@SylvainCorlay)
* Use a default serializer that is not only for date types #664
(@martinRenou)
* Updated debug_info_response #657 (@JohanMabille)
* Do not block on exit #651 (@impact27)
* Update test kernel with native coroutine, remove
async_generator dependency #646 (@kevin-bates)
* setup.py and CI improvements #645 (@dolfinus)
* Test downstream projects #644 (@davidbrochart)
* Remove deprecations in kernel manager #643 (@kevin-bates)
* Add block=True back to get_msg() #641 (@davidbrochart)
* Pin python>=3.6.1 #636 (@davidbrochart)
* Use pre-commit #631 (@davidbrochart)
* Attempt CI with ipykernel 6.0 prerelease #629 (@SylvainCorlay)
* Make KernelManager subclass tests DRY #628 (@davidbrochart)
* Add tests to ensure MultiKernelManager subclass methods are
called #627 (@kevin-bates)
* Add type annotations, refactor sync/async #623 (@davidbrochart)
* Create migration guide #681 (@blink1073)
* Update changelog for 7.0.0rc0 #673 (@blink1073)
* Added documentation for richInspectVariables request #654
(@JohanMabille)
* Change to edit_magic payload #652 (@yitzchak)
* Added missing documentation for the inspectVariables request
and resp… #649 (@JohanMabille)
* Add status field to other replies in documentation #648
(@yitzchak)
- Drop jupyter_client-pr646-remove-async_generator.patch
------------------------------------------------------------------- -------------------------------------------------------------------
Thu Aug 12 10:13:22 UTC 2021 - Ben Greiner <code@bnavigator.de> Thu Aug 12 10:13:22 UTC 2021 - Ben Greiner <code@bnavigator.de>

View File

@ -26,20 +26,20 @@
%endif %endif
%{?!python_module:%define python_module() python-%{**} python3-%{**}} %{?!python_module:%define python_module() python-%{**} python3-%{**}}
Name: python-jupyter-client%{psuffix} Name: python-jupyter-client%{psuffix}
Version: 6.1.12 Version: 7.0.6
Release: 0 Release: 0
Summary: Jupyter protocol implementation and client libraries Summary: Jupyter protocol implementation and client libraries
License: BSD-3-Clause License: BSD-3-Clause
Group: Development/Languages/Python Group: Development/Languages/Python
URL: https://github.com/jupyter/jupyter_client URL: https://github.com/jupyter/jupyter_client
Source: https://files.pythonhosted.org/packages/source/j/jupyter_client/jupyter_client-%{version}.tar.gz Source: https://files.pythonhosted.org/packages/source/j/jupyter_client/jupyter_client-%{version}.tar.gz
# PATCH-FIX-UPSTREAM jupyter_client-pr646-remove-async_generator.patch -- gh#jupyter/jupyter_client#646
Patch1: jupyter_client-pr646-remove-async_generator.patch
BuildRequires: %{python_module setuptools} BuildRequires: %{python_module setuptools}
BuildRequires: fdupes BuildRequires: fdupes
BuildRequires: python-rpm-macros BuildRequires: python-rpm-macros
Requires: jupyter-jupyter_client = %{version} Requires: jupyter-jupyter_client = %{version}
Requires: python-entrypoints
Requires: python-jupyter-core >= 4.6.0 Requires: python-jupyter-core >= 4.6.0
Requires: python-nest-asyncio >= 1.5
Requires: python-python-dateutil >= 2.1 Requires: python-python-dateutil >= 2.1
Requires: python-pyzmq >= 13 Requires: python-pyzmq >= 13
Requires: python-tornado >= 4.1 Requires: python-tornado >= 4.1
@ -48,19 +48,14 @@ Provides: python-jupyter_client = %{version}
Obsoletes: python-jupyter_client < %{version} Obsoletes: python-jupyter_client < %{version}
BuildArch: noarch BuildArch: noarch
%if %{with test} %if %{with test}
BuildRequires: %{python_module Sphinx}
BuildRequires: %{python_module ipykernel} BuildRequires: %{python_module ipykernel}
BuildRequires: %{python_module ipython} BuildRequires: %{python_module ipython}
BuildRequires: %{python_module jupyter-client = %{version}} BuildRequires: %{python_module jupyter-client = %{version}}
BuildRequires: %{python_module pytest-asyncio} BuildRequires: %{python_module pytest-asyncio}
BuildRequires: %{python_module pytest-timeout} BuildRequires: %{python_module pytest-timeout}
BuildRequires: %{python_module pytest} BuildRequires: %{python_module pytest}
BuildRequires: %{python_module traitlets}
# flaky is not an upstream dep, but for obs flakyness of parallel kernel test # flaky is not an upstream dep, but for obs flakyness of parallel kernel test
BuildRequires: %{python_module flaky} BuildRequires: %{python_module flaky}
# Workaround until python-ipykernel 6 lands in Factory and openSUSE:Tumbleweed/dod, removing python36-ipykernel
# (see https://lists.opensuse.org/archives/list/packaging@lists.opensuse.org/message/742CEMJ57YWNVESAPWJ6HHZBZZ4RMJFP )
#!BuildIgnore: python36-ipykernel:jupyter-ipykernel
%endif %endif
%python_subpackages %python_subpackages
@ -94,10 +89,6 @@ This package provides the jupyter components.
%prep %prep
%autosetup -p1 -n jupyter_client-%{version} %autosetup -p1 -n jupyter_client-%{version}
# obs is a bit slow (fixed upstream in >= 6.1.13)
sed -i -E 's/(^\s+)break/\1time.sleep(1)\n\1break/' \
jupyter_client/tests/test_kernelapp.py
%build %build
%python_build %python_build