Sync from SUSE:SLFO:Main python-jupyter-core revision a64f53aed3e1a178ce2bed7a14b54f1a

This commit is contained in:
Adrian Schröter 2024-05-03 21:16:26 +02:00
commit 9b9d3a84fb
6 changed files with 611 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -0,0 +1,23 @@
## Default LFS
*.7z filter=lfs diff=lfs merge=lfs -text
*.bsp filter=lfs diff=lfs merge=lfs -text
*.bz2 filter=lfs diff=lfs merge=lfs -text
*.gem filter=lfs diff=lfs merge=lfs -text
*.gz filter=lfs diff=lfs merge=lfs -text
*.jar filter=lfs diff=lfs merge=lfs -text
*.lz filter=lfs diff=lfs merge=lfs -text
*.lzma filter=lfs diff=lfs merge=lfs -text
*.obscpio filter=lfs diff=lfs merge=lfs -text
*.oxt filter=lfs diff=lfs merge=lfs -text
*.pdf filter=lfs diff=lfs merge=lfs -text
*.png filter=lfs diff=lfs merge=lfs -text
*.rpm filter=lfs diff=lfs merge=lfs -text
*.tbz filter=lfs diff=lfs merge=lfs -text
*.tbz2 filter=lfs diff=lfs merge=lfs -text
*.tgz filter=lfs diff=lfs merge=lfs -text
*.ttf filter=lfs diff=lfs merge=lfs -text
*.txz filter=lfs diff=lfs merge=lfs -text
*.whl filter=lfs diff=lfs merge=lfs -text
*.xz filter=lfs diff=lfs merge=lfs -text
*.zip filter=lfs diff=lfs merge=lfs -text
*.zst filter=lfs diff=lfs merge=lfs -text

3
_multibuild Normal file
View File

@ -0,0 +1,3 @@
<multibuild>
<package>test</package>
</multibuild>

BIN
jupyter_core-5.3.0.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

405
python-jupyter-core.changes Normal file
View File

@ -0,0 +1,405 @@
-------------------------------------------------------------------
Sun Mar 19 17:35:27 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Update to 5.3.0
* Fix pywin32 version constraint #347 (@blink1073)
* Support platformdirs 3 #342 (@blink1073)
-------------------------------------------------------------------
Sun Feb 5 15:58:09 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Update to 5.2.0
* Set up shell command-line tab-completion for jupyter and
subcommands #337 (@azjps)
- Release 5.1.5
* Don't format logs in log call. #336 (@Carreau)
- Release 5.1.4
* Suppress any exception in _do_i_own shortcut #335 (@minrk)
-------------------------------------------------------------------
Sun Jan 22 12:58:35 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Update to 5.1.3
* Clear the test environment before each function run #333
(@jasongrout)
-------------------------------------------------------------------
Sun Jan 8 09:16:03 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Update to 5.1.2
* Add spell check and ensure docstrings #327 (@blink1073)
* Maint: Some more precise typing. #326 (@Carreau)
-------------------------------------------------------------------
Sun Dec 25 20:25:31 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 5.1.1
* Only prefer envs owned by the current user #323 (@minrk)
* Don't treat the conda root env as an env #324 (@minrk)
- Release 5.1.0
* Add run_sync and ensure_async functions #315 (@davidbrochart)
- Release 5.0.0
## Major Changes
* Prefer Environment Level Configuration. We now make the
assumption that if we are running in a virtual environment, we
* should prioritize the environment-level sys.prefix over the
user-level paths. Users can opt out of this behavior by setting
JUPYTER_PREFER_ENV_PATH, which takes precedence over our
autodetection.
* Migrate to Standard Platform Directories. In version 5, we
introduce a JUPYTER_PLATFORM_DIRS environment variable to opt
in * to using more appropriate platform-specific directories.
We raise a deprecation warning if the variable is not set. In
version 6, JUPYTER_PLATFORM_DIRS will be opt-out. In version 7,
we will remove the environment variable checks and old
directory logic.
* Drop Support for Python 3.7
* We are dropping support for Python 3.7 ahead of its official
end of life, to reduce * maintenance burden as we add support
for Python 3.11.
* Use platformdirs for path locations #292 (@blink1073)
* Try to detect if we are in a virtual environment and change
path precedence * accordingly #286 (@jasongrout)
* Add current working directory as first config path #291
(@blink1073)
* Fix inclusion of jupyter file and check in CI #276 (@blink1073)
* Bump github/codeql-action from 1 to 2 #308 (@dependabot)
* Bump actions/checkout from 2 to 3 #307 (@dependabot)
* Add dependabot #306 (@blink1073)
* Adopt jupyter releaser #305 (@blink1073)
* Add more typing #304 (@blink1073)
* Require Python 3.8+ #302 (@blink1073)
* Use hatch backend #265 (@blink1073)
* Switch to flit build backend #262 (@blink1073)
* is_hidden: Use normalized paths #271 (@martinRenou)
-------------------------------------------------------------------
Wed Oct 26 10:12:39 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 4.11.2
* no release notes
* from the git log: merge GHSA-m678-f26j-3hrp
-------------------------------------------------------------------
Mon Aug 1 17:56:47 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 4.11.1
* Fix inclusion of jupyter file and check in CI by @blink1073 in
#276
- Release 4.11.0
* Use hatch backend by @blink1073 in #265
* is_hidden: Use normalized paths by @martinRenou in #271
- Release 4.10.0
* Include all files from jupyter_core by @jonringer in #253
- Refresh use_rpms_paths.patch
-------------------------------------------------------------------
Sun Mar 13 06:59:34 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 4.9.2
* set proper sys.argv[0] for subcommand by @bnavigator in #248
* Add explicit encoding in open calls by @dlukes in #249
* jupyter_config_dir - reorder home_dir initialization by
@dharmaquark in #251
- Drop argv0_subcommand.patch merged upstream
-------------------------------------------------------------------
Fri Nov 12 21:09:24 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Update to 4.9.1
* Add Python site user base subdirectories to config and data
user-level paths if site.ENABLE_USER_SITE is True. One way to
disable these directory additions is to set the
PYTHONNOUSERSITE environment variable. These locations can be
customized by setting the PYTHONUSERBASE environment variable.
* Add a workaround for virtualenv for getting the user site
directory.
-------------------------------------------------------------------
Fri Nov 12 08:25:01 UTC 2021 - Stefan Schubert <schubi@suse.de>
- Patch for solving gh#openSUSE/libalternatives#11:
argv0_subcommand.patch
This patch can be removed while releasing version >4.9.1.
- Enabled using libalternatives again.
-------------------------------------------------------------------
Thu Oct 28 19:16:16 UTC 2021 - Ben Greiner <code@bnavigator.de>
- revert the usage of libalternatives due to
gh#openSUSE/libalternatives#11
-------------------------------------------------------------------
Sun Oct 17 17:28:20 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Update to version 4.8.1
* Print an error message instead of an exception when a command
is not found (PR #218)
* Return canonical path when using %APPDATA% on Windows (PR #222)
* Print full usage on missing or invalid commands (PR #225)
* Remove dependency on pywin32 package on PyPy (PR #230)
* Update packages listed in jupyter --version (PR #232)
* Inherit base aliases/flags from traitlets Application,
including --show-config from traitlets 5 (PR #233)
* Trigger warning when trying to check hidden file status on PyPy
(PR #238)
-------------------------------------------------------------------
Tue Oct 5 15:35:48 UTC 2021 - Stefan Schubert <schubi@suse.de>
- Use libalternatives instead of update-alternatives.
-------------------------------------------------------------------
Wed Feb 3 22:46:22 UTC 2021 - Benjamin Greiner <code@bnavigator.de>
- Require the jupyter-jupyter_core-filesystem so that depending
packages have the sysconf and share files. (And the macros,
but if they use it, they really should BuildRequire it
explicitly)
-------------------------------------------------------------------
Sun Jan 31 17:57:15 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Update to 4.7.1
* Allow creating user to delete secure file
- Changelog for 4.7.0
* Add a new JUPYTER_PREFER_ENV_PATH variable, which can be set
to switch the order of the environment-level path and the
user-level path in the Jupyter path hierarchy (e.g., jupyter
--paths). It is considered set if it is a value that is not
one of 'no', 'n', 'off', 'false', '0', or '0.0' (case
insensitive). If you are running Jupyter in multiple virtual
environments as the same user, you will likely want to set
this environment variable.
* Drop Python 2.x and 3.5 support, as they have reached end of
life.
* jupyter --paths --debug now explains the environment
variables that affect the current path list.
* Add conda environment information in jupyter troubleshoot.
* Update _version.version_info and _version.__version__ to
follow Python conventions.
- merge jupyter package as capability into the primary python
package
- fix replacement of paths:
* fix noop introduced by overeager specfile-cleaner for system
paths, adjust use_rpm_paths.patch
* don't replace ENV_CONFIG_PATH or ENV_JUPYTER_PATH because that
would break virtual environments. See also
gh#jupyter/jupyter_core#208
-------------------------------------------------------------------
Sat Mar 28 07:39:17 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
- Fix build without python2
-------------------------------------------------------------------
Tue Mar 17 07:20:32 UTC 2020 - Tomáš Chvátal <tchvatal@suse.com>
- Do not pull sybmol named package but real named package
-------------------------------------------------------------------
Mon Feb 24 15:37:51 UTC 2020 - Todd R <toddrme2178@gmail.com>
- Update to 4.6.3
* Changed windows secure_write path to skip all filesystem
permission checks when running in insecure mode. Too many
exception paths existed for mounted file systems to reliably
try to set them before opting out with the insecure write
pattern.
- Update to 4.6.2
* Add ability to allow insecure writes with
JUPYTER_ALLOW_INSECURE_WRITES environement variable.
* Docs typo and build fixes
* Added python 3.7 and 3.8 builds to testing
- Implement tests via multibuild
- Drop doc subpackage. This was only around to resolve dependency
cycles in testing, which the multibuild now does. Keeping up
with rapid changes in readthedocs was becoming difficult.
-------------------------------------------------------------------
Tue Nov 12 15:54:48 UTC 2019 - Todd R <toddrme2178@gmail.com>
- Update to 4.6.1
* Tolerate execute bit in owner permissions when validating secure writes
* Fix project name typo in copyright
- Update to 4.6.0
* Unicode characters existing in the user's home directory name are properly
handled
* ``mock`` is now only required for testing on Python 2
* Deprecation warnings relative to ``_runtime_dir_changed`` are no longer
produced
* The ``scripts`` directory relative to the current python environment is
now appended to the search directory for subcommands
* Some utility functions (``exists()``, ``is_hidden()``, ``secure_write()``)
have been moved from ``jupyter_client`` and ``jupyter_server`` to
``jupyter_core``
* Fix error on Windows when setting private permissions
- Rename to python-jupyter-core to match upstream name change
-------------------------------------------------------------------
Fri Aug 16 14:46:15 UTC 2019 - Todd R <toddrme2178@gmail.com>
- Fix self-obseletion
-------------------------------------------------------------------
Mon Jun 24 20:30:24 UTC 2019 - Todd R <toddrme2178@gmail.com>
- Update to version 4.5.0
* ``jupyter --version`` now tries to show the version number of various other
installed Jupyter packages, not just ``jupyter_core``.
This will hopefully make it clearer that there are various packages with
their own version numbers.
* Allow a :envvar:`JUPYTER_CONFIG_PATH` environment variable to specify a
search path of additional locations for config.
* ``jupyter subcommand`` no longer modifies the :envvar:`PATH` environment
variable when it runs ``jupyter-subcommand``.
* Jupyter's 'runtime' directory no longer uses ``XDG_RUNTIME_DIR``. While
it has some attractive properties, it has led to various problems.
* Fix ``JupyterApp`` to respect the ``raise_config_file_errors`` traitlet.
* Various improvements to the bash completion scripts in this repository.
* The ``setup.py`` script now always uses setuptools, like most other Jupyter
projects.
* The LICENSE file is included in wheels.
-------------------------------------------------------------------
Thu Apr 25 01:58:55 UTC 2019 - Todd R <toddrme2178@gmail.com>
- Split out jupyter components into subpackage.
- Add rpm macros.
- Rename doc package to match jupyter package.
-------------------------------------------------------------------
Tue Feb 13 19:47:23 UTC 2018 - toddrme2178@gmail.com
- Update url
-------------------------------------------------------------------
Wed Nov 22 22:48:47 UTC 2017 - arun@gmx.de
- require sphinxcontrib-github-alt
- update to version 4.4.0:
* jupyter troubleshoot gets the list of packages from the Python
environment it's in, by using sys.executable to call pip list
(:ghpull:`104`).
* Added utility function ensure_dir_exists, and switched to using it
over the one from ipython_genutils, which does permissions wrong
(:ghpull:`113`).
* Avoid creating the ~/.ipython directory when checking if it exists
for config migration (:ghpull:`118`).
* Fix mistaken description in zsh completions (:ghpull:`98`).
* Fix subcommand tests on Windows (:ghpull:`103`).
* The README now describes how to work on jupyter_core and build the
docs (:ghpull:`110`).
* Fix a broken link to a release in the docs (:ghpull:`109`).
-------------------------------------------------------------------
Wed Sep 20 17:53:24 UTC 2017 - toddrme2178@gmail.com
- Set configuration and data paths to be correct for any
Linux distribution. This is done by using sed to replace
hard-coded values with those provided by rpm.
* Add use_rpms_paths.patch to make the paths easier to replace.
-------------------------------------------------------------------
Wed Apr 26 16:32:25 UTC 2017 - toddrme2178@gmail.com
- Implement single-spec version.
- Remove version_specific_dirs.patch.
The Python3 jupyter implementation will be used for directories.
-------------------------------------------------------------------
Fri Mar 31 13:59:14 UTC 2017 - toddrme2178@gmail.com
- Add version_specific_dirs.patch
Uses python version-specific directories to avoid conflicts.
- Install the directories used for system-side settings and data so
they are properly owned by this package.
-------------------------------------------------------------------
Thu Mar 30 19:05:42 UTC 2017 - toddrme2178@gmail.com
- Update to 4.3.0
* Add `JUPYTER_NO_CONFIG` environment variable for disabling all
Jupyter configuration.
* More detailed error message when failing to launch subcommands.
- Update to 4.2.1
* Fix error message on Windows when subcommand not found.
* Correctly display PATH in ``jupyter troubleshoot`` on Windows.
- Update to 4.2.0
* Make :command:`jupyter` directory top priority in search path
for subcommands, so that :command:`jupyter-subcommand` next to
:command:`jupyter` will always be picked if present.
* Avoid using ``shell=True`` for subcommand dispatch on Windows.
- Update to 4.1.1
* Include symlink directory and real location on subcommand PATH
when :file:`jupyter` is a symlink.
- Update to 4.1.0
* Add ``jupyter.py`` module, so that :command:`python -m jupyter`
always works.
* Add prototype ``jupyter troubleshoot`` command for displaying
environment info.
* Ensure directory containing ``jupyter`` executable is included
when dispatching subcommands.
* Unicode fixes for Legacy Python.
-------------------------------------------------------------------
Wed Feb 17 14:22:56 UTC 2016 - toddrme2178@gmail.com
- Simplify the tests for whether to build pdf documentation
-------------------------------------------------------------------
Wed Feb 17 08:53:35 UTC 2016 - toddrme2178@gmail.com
- Split documentation to speed up building.
This is a dependency of a lot of other packages, and the
dependencies for the documentation are very heavy. So build
the documentation separately to avoid holding up the build
process.
-------------------------------------------------------------------
Thu Oct 1 11:33:33 UTC 2015 - toddrme2178@gmail.com
- Build documentation
-------------------------------------------------------------------
Wed Sep 23 11:20:47 UTC 2015 - toddrme2178@gmail.com
- update to version 4.0.6:
* fix typo preventing migration when custom.css is missing
- update to version 4.0.5:
* fix subcommands on Windows (yes, again)
* fix migration when custom.js/css are not present
-------------------------------------------------------------------
Mon Aug 24 10:29:04 UTC 2015 - toddrme2178@gmail.com
- Update to 4.0.4
* ensure version is printed to stdout …
* remove file-extension from subcommand list on Windows
- Update requirements
-------------------------------------------------------------------
Fri Aug 14 07:48:27 UTC 2015 - toddrme2178@gmail.com
- Update to 4.0.3
* use raw_input on Python 2
* Use setuptools entry points when setuptools in use
* Use instances of traits instead of trait classes
- Fix package naming consistency
-------------------------------------------------------------------
Fri Aug 14 07:03:18 UTC 2015 - toddrme2178@gmail.com
- Fix update-alternatives usage
-------------------------------------------------------------------
Thu Aug 13 14:06:32 UTC 2015 - toddrme2178@gmail.com
- Update dependency names
-------------------------------------------------------------------
Tue Jul 21 10:49:36 UTC 2015 - jennings@neuro.bzm
- Initial version

140
python-jupyter-core.spec Normal file
View File

@ -0,0 +1,140 @@
#
# spec file
#
# Copyright (c) 2023 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/
#
%if 0%{?suse_version} > 1500
%bcond_without libalternatives
%else
%bcond_with libalternatives
%endif
%global flavor @BUILD_FLAVOR@%{nil}
%if "%{flavor}" == "test"
%define psuffix -test
%bcond_without test
%else
%define psuffix %{nil}
%bcond_with test
%endif
Name: python-jupyter-core%{psuffix}
Version: 5.3.0
Release: 0
Summary: Base package on which Jupyter projects rely
License: BSD-3-Clause
URL: https://github.com/jupyter/jupyter_core
Source0: https://files.pythonhosted.org/packages/source/j/jupyter_core/jupyter_core-%{version}.tar.gz
# PATCH-FIX-OPENSUSE -- use_rpms_paths.patch -- change paths so they are easy to replace at build time
Patch0: use_rpms_paths.patch
BuildRequires: %{python_module base >= 3.8}
BuildRequires: %{python_module hatchling}
BuildRequires: %{python_module pip}
BuildRequires: fdupes
BuildRequires: python-rpm-macros >= 20210929
Requires: python-platformdirs >= 2.5
Requires: python-traitlets >= 5.3
%if %{with libalternatives}
BuildRequires: alts
Requires: alts
%else
Requires(post): update-alternatives
Requires(postun):update-alternatives
%endif
Recommends: python-ipython
Provides: python-jupyter_core = %{version}-%{release}
Obsoletes: python-jupyter_core < %{version}-%{release}
%if "%{python_flavor}" == "python3" || "%{python_provides}" == "python3"
Provides: jupyter-jupyter-core = %{version}-%{release}
Obsoletes: jupyter-jupyter-core < %{version}-%{release}
Provides: jupyter-jupyter_core = %{version}-%{release}
Obsoletes: jupyter-jupyter_core < %{version}-%{release}
%endif
BuildArch: noarch
%if %{with test}
BuildRequires: %{python_module ipykernel}
BuildRequires: %{python_module jupyter-core = %{version}}
BuildRequires: %{python_module pytest-timeout}
BuildRequires: %{python_module pytest}
%endif
%python_subpackages
%description
Core common functionality of Jupyter projects.
This package contains base application classes and configuration inherited by
other projects. It doesn't do much on its own.
There is no reason to install this package on its own. It will be pulled in
as a dependency by packages that require it.
%prep
%autosetup -p1 -n jupyter_core-%{version}
# Set the appropriate hardcoded paths dynamically
sed -i "s|@_datadir_jupyter_@|\"%{_datadir}/jupyter\"|" jupyter_core/paths.py
sed -i "s|@_distconfdir_jupyter_@|\"%{_distconfdir}/jupyter\"|" jupyter_core/paths.py
sed -i "/addopts/ s/--color=yes//" pyproject.toml
%if !%{with test}
%build
%pyproject_wheel
%endif
%if !%{with test}
%install
%pyproject_install
%python_clone -a %{buildroot}%{_bindir}/jupyter
%python_clone -a %{buildroot}%{_bindir}/jupyter-migrate
%python_clone -a %{buildroot}%{_bindir}/jupyter-troubleshoot
%{python_expand chmod a+x %{buildroot}%{$python_sitelib}/jupyter_core/troubleshoot.py
sed -i "s|^#!%{_bindir}/env python$|#!%{__$python}|" %{buildroot}%{$python_sitelib}/jupyter_core/troubleshoot.py
}
%python_compileall
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%endif
%if %{with test}
%check
# does not work outside venvs: gh#jupyter/jupyter_core#208
donttest="test_jupyter_path_prefer_env or test_jupyter_config_path_prefer_env"
# we changed the xdg path
donttest="$donttest or test_config_dir_linux"
%pytest -k "not ($donttest)"
%endif
%pre
# If libalternatives is used: Removing old update-alternatives entries.
%python_libalternatives_reset_alternative jupyter
%post
%python_install_alternative jupyter jupyter-migrate jupyter-troubleshoot
%postun
%python_uninstall_alternative jupyter
%if !%{with test}
%files %{python_files}
%license LICENSE
%python_alternative %{_bindir}/jupyter
%python_alternative %{_bindir}/jupyter-migrate
%python_alternative %{_bindir}/jupyter-troubleshoot
%{python_sitelib}/jupyter.py*
%pycache_only %{python_sitelib}/__pycache__/jupyter.*.py*
%{python_sitelib}/jupyter_core/
%{python_sitelib}/jupyter_core-%{version}*-info
%endif
%changelog

37
use_rpms_paths.patch Normal file
View File

@ -0,0 +1,37 @@
From: toddrme2178@gmail.com
Date: 2017-09-20
Subject: Use rpm paths
Use single-line paths. These must be replaced with the appropriate
system paths in the .spec file.
---
Index: jupyter_core-5.1.1/jupyter_core/paths.py
===================================================================
--- jupyter_core-5.1.1.orig/jupyter_core/paths.py
+++ jupyter_core-5.1.1/jupyter_core/paths.py
@@ -219,10 +219,7 @@ else:
else: # PROGRAMDATA is not defined by default on XP.
SYSTEM_JUPYTER_PATH = [os.path.join(sys.prefix, "share", "jupyter")]
else:
- SYSTEM_JUPYTER_PATH = [
- "/usr/local/share/jupyter",
- "/usr/share/jupyter",
- ]
+ SYSTEM_JUPYTER_PATH = [ @_datadir_jupyter_@ ]
ENV_JUPYTER_PATH: List[str] = [os.path.join(sys.prefix, "share", "jupyter")]
@@ -301,10 +298,7 @@ else:
else: # PROGRAMDATA is not defined by default on XP.
SYSTEM_CONFIG_PATH = []
else:
- SYSTEM_CONFIG_PATH = [
- "/usr/local/etc/jupyter",
- "/etc/jupyter",
- ]
+ SYSTEM_CONFIG_PATH = [ @_distconfdir_jupyter_@ ]
ENV_CONFIG_PATH: List[str] = [os.path.join(sys.prefix, "etc", "jupyter")]