python-jupyter-client/python-jupyter-client.spec

125 lines
4.5 KiB
RPMSpec
Raw Normal View History

#
# spec file for package python-jupyter-client
#
# Copyright (c) 2024 SUSE LLC
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
# upon. The license for this file, and modifications and additions to the
# file, is the same license as for the pristine package itself (unless the
# license for the pristine package is not an Open Source License, in which
# case the license is the MIT License). An "Open Source License" is a
# license that conforms to the Open Source Definition (Version 1.9)
# published by the Open Source Initiative.
# Please submit bugfixes or comments via https://bugs.opensuse.org/
#
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define psuffix -test
%define skip_python39 1
%bcond_without test
%else
%define psuffix %{nil}
%bcond_with test
%endif
Name: python-jupyter-client%{psuffix}
Version: 8.6.1
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
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
# PATCH-FIX-OPENSUSE jupyter-client-suse-remove-ifconfig-test.patch code@bnavigator.de -- we don't have `ifconfig` and don't need it because we have `ip`
Patch10: jupyter-client-suse-remove-ifconfig-test.patch
BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module hatchling >= 1.5}
BuildRequires: %{python_module pip}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Accepting request 979254 from home:andythe_great:branches:devel:languages:python:jupyter - Diable pytest for signalkernel.py and problemkernel.py because issue with newer ipykernel. https://github.com/jupyter/jupyter_client/issues/787 - Update to version 7.3.1. * Bugs fixed * Check that channels exist before asking if they are alive #785 (@ccordoba12) * Unicode error correction using Error Handler #779 (@hxawax) * Maintenance and upkeep improvements * Allow bot PRs to be automatically labeled #784 (@blink1073) - Update for version 7.3.0 * Bugs fixed * Fix shutdown and cleanup behavior #772 (@blink1073) * Maintenance and upkeep improvements * Improve mypy config #769 (@blink1073) - Update for version 7.2.2 * Maintenance and upkeep improvements * Include py.typed file #766 (@blink1073) * More Cleanup #764 (@blink1073) - Update for version 7.2.1 * Maintenance and upkeep improvements * Handle Warnings #760 (@blink1073) - Update for version 7.2.0 * Enhancements made * Update consoleapp.py #733 (@you-n-g) * Bugs fixed * Json packer: handle TypeError and fallback to old json_clean #752 (@martinRenou) * Prefer sending signals to kernel process group #743 (@kevin-bates) * Maintenance and upkeep improvements * Mock is not needed #758 (@hroncok) * Add pytest opts and clean up workflows #757 (@blink1073) * Clean up dependency handling #750 (@blink1073) * Use built in run cancellation #742 (@blink1073) OBS-URL: https://build.opensuse.org/request/show/979254 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=17
2022-05-26 01:12:26 +02:00
Requires: python-python-dateutil >= 2.8.2
Requires: python-pyzmq >= 23.0
Requires: python-tornado >= 6.2
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
Requires: python-traitlets >= 5.3
Requires: (python-importlib-metadata >= 4.8.3 if python-base < 3.10)
Requires: (python-jupyter-core >= 5.1 or (python-jupyter-core >= 4.12 with python-jupyter-core < 5.0))
Requires(post): update-alternatives
Requires(postun): update-alternatives
Provides: python-jupyter_client = %{version}-%{release}
Obsoletes: python-jupyter_client < %{version}-%{release}
Provides: jupyter-jupyter-client = %{version}-%{release}
Obsoletes: jupyter-jupyter-client < %{version}-%{release}
Provides: jupyter-jupyter_client = %{version}-%{release}
Obsoletes: jupyter-jupyter_client < %{version}-%{release}
Provides: jupyter-jupyter-client-doc = %{version}-%{release}
Obsoletes: jupyter-jupyter-client-doc < %{version}-%{release}
BuildArch: noarch
%if %{with test}
# gh#jupyter/jupyter_client#787
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
BuildRequires: %{python_module ipykernel >= 6.14}
BuildRequires: %{python_module ipython}
BuildRequires: %{python_module jupyter-client = %{version}}
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
BuildRequires: %{python_module pytest-jupyter-client >= 0.4.1}
BuildRequires: %{python_module pytest-timeout}
BuildRequires: %{python_module pytest}
# flaky is not an upstream dep, but for obs flakyness of parallel kernel test
BuildRequires: %{python_module flaky}
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
BuildRequires: iproute2
BuildRequires: openssh-clients
%endif
%python_subpackages
%description
This package contains the reference implementation of the Jupyter protocol.
It also provides client and kernel management APIs for working with kernels.
It also provides the jupyter kernelspec entrypoint for installing kernelspecs
for use with Jupyter frontends.
%prep
%autosetup -p1 -n jupyter_client-%{version}
sed -i 's/"--color=yes",//' pyproject.toml
%build
%pyproject_wheel
%install
%if !%{with test}
%pyproject_install
%python_clone -a %{buildroot}%{_bindir}/jupyter-kernel
%python_clone -a %{buildroot}%{_bindir}/jupyter-kernelspec
%python_clone -a %{buildroot}%{_bindir}/jupyter-run
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
%if %{with test}
%check
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
# flaky timeout
donttest="(TestAsyncKernelClient and test_input_request)"
# timeout
donttest+=" or (TestKernelManager and test_stream_on_recv)"
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
%pytest --force-flaky --max-runs=3 --no-success-flaky-report -k "not ($donttest)"
%endif
%post
%python_install_alternative jupyter-kernel jupyter-kernelspec jupyter-run
%postun
%python_uninstall_alternative jupyter-kernel
%if !%{with test}
%files %{python_files}
Accepting request 1073645 from home:bnavigator:branches:devel:languages:python:jupyter - Update to 8.0.3 * Fix kernelspec print output #933 (@minrk) * Don't emit a trailng newline in base64-encoded data like 'image/png' #931 (@xl0) * Improving jsonutil tests #929 (@andrehora) - Update to 8.0.2 * Add papermill downstream check and fix kernel client replies #925 (@blink1073) - Release 8.0.1 * Fix json_output in kernelspec app #921 (@blink1073) - Release 8.0.0 * This release is primarily focused on improving asyncio support, while aiming to have minimal API changes. ## Enhancements made * Remove nest-asyncio dependency #835 (@blink1073) ## Bugs fixed * Allow interrupt during restart of pending kernels #898 (@blink1073) * Fix connection reconciliation to handle restarts #882 (@kevin-bates) * Reconcile connection information #879 (@kevin-bates) * Workaround for launch bug #861 (@blink1073) * Defer creation of ready future #858 (@blink1073) * Fix handling of initial ready promise #854 (@blink1073) * Revert "Fix pending kernels again" #853 (@blink1073) * Fix pending kernels again #845 (@blink1073) * Use pytest_asyncio fixture #826 (@davidbrochart) ## Maintenance and upkeep improvements * Fix jupyter_core pinning #896 (@ophie200) * Use pytest-jupyter #891 (@blink1073) * Import ensure_async and run_sync from jupyter_core #889 (@davidbrochart) * Support Python 3.8-3.11 #866 (@blink1073) * Move tests to top level #834 (@blink1073) * Fix nbconvert downstream test #827 (@blink1073) - Add jupyter-client-suse-remove-ifconfig-test.patch OBS-URL: https://build.opensuse.org/request/show/1073645 OBS-URL: https://build.opensuse.org/package/show/devel:languages:python:jupyter/python-jupyter-client?expand=0&rev=41
2023-03-21 22:31:33 +01:00
%license LICENSE
%{python_sitelib}/jupyter_client-%{version}*-info
%{python_sitelib}/jupyter_client/
%python_alternative %{_bindir}/jupyter-kernel
%python_alternative %{_bindir}/jupyter-kernelspec
%python_alternative %{_bindir}/jupyter-run
%endif
%changelog