diff --git a/nbdime-4.0.1-vendor-licenses.txt b/nbdime-4.0.2-vendor-licenses.txt similarity index 85% rename from nbdime-4.0.1-vendor-licenses.txt rename to nbdime-4.0.2-vendor-licenses.txt index 736739c..38c654a 100644 --- a/nbdime-4.0.1-vendor-licenses.txt +++ b/nbdime-4.0.2-vendor-licenses.txt @@ -1,12 +1,12 @@ yarn run v1.22.22 $ /tmp/node_modules/.bin/license-checker --summary -├─ MIT: 1146 -├─ ISC: 163 -├─ BSD-3-Clause: 80 +├─ MIT: 1149 +├─ ISC: 162 +├─ BSD-3-Clause: 81 ├─ Apache-2.0: 43 ├─ BSD-2-Clause: 34 ├─ (MIT OR CC0-1.0): 6 -├─ BlueOak-1.0.0: 2 +├─ BlueOak-1.0.0: 3 ├─ UNLICENSED: 2 ├─ 0BSD: 2 ├─ (CC-BY-4.0 AND OFL-1.1 AND MIT): 1 @@ -24,4 +24,4 @@ $ /tmp/node_modules/.bin/license-checker --summary ├─ Unlicense: 1 └─ MIT*: 1 -Done in 1.44s. +Done in 1.39s. diff --git a/python-nbdime-unbundle-fontawesome.patch b/python-nbdime-unbundle-fontawesome.patch index ec59c39..677b6f9 100644 --- a/python-nbdime-unbundle-fontawesome.patch +++ b/python-nbdime-unbundle-fontawesome.patch @@ -1,6 +1,6 @@ ---- nbdime-4.0.1/package-lock.json.orig 2023-11-21 02:21:22.000000000 -0700 -+++ nbdime-4.0.1/package-lock.json 2024-06-18 14:46:04.129447427 -0600 -@@ -1981,15 +1981,6 @@ +--- nbdime-4.0.2/package-lock.json.orig 2024-09-05 07:24:50.000000000 -0600 ++++ nbdime-4.0.2/package-lock.json 2024-09-05 09:51:36.100120970 -0600 +@@ -2024,15 +2024,6 @@ "node": ">=10.0.0" } }, @@ -16,7 +16,7 @@ "node_modules/@hutson/parse-repository-url": { "version": "3.0.2", "resolved": "https://registry.npmjs.org/@hutson/parse-repository-url/-/parse-repository-url-3.0.2.tgz", -@@ -2885,7 +2876,6 @@ +@@ -2922,7 +2913,6 @@ "resolved": "https://registry.npmjs.org/@jupyterlab/application/-/application-4.0.2.tgz", "integrity": "sha512-sFF2YJBRiJGu6Jx2PE/JRwmwuLTs9eHEoqaZGCD6H4loj8iDlCuwb26JVmbCz94QzgB00KFMYCBV6K7UWhid9g==", "dependencies": { @@ -24,16 +24,16 @@ "@jupyterlab/apputils": "^4.1.2", "@jupyterlab/coreutils": "^6.0.2", "@jupyterlab/docregistry": "^4.0.2", -@@ -22420,7 +22410,6 @@ - "version": "4.0.1", +@@ -22508,7 +22498,6 @@ + "version": "4.0.2", "license": "BSD-3-Clause", "dependencies": { - "@fortawesome/fontawesome-free": "^5.12.0", "@jupyterlab/application": "^4.0.0", "@jupyterlab/apputils": "^4.0.0", "@jupyterlab/cells": "^4.0.0", ---- nbdime-4.0.1/packages/webapp/package.json.orig 2023-11-21 02:21:22.000000000 -0700 -+++ nbdime-4.0.1/packages/webapp/package.json 2024-06-18 14:46:19.040231643 -0600 +--- nbdime-4.0.2/packages/webapp/package.json.orig 2024-09-05 07:24:50.000000000 -0600 ++++ nbdime-4.0.2/packages/webapp/package.json 2024-09-05 09:51:47.978970452 -0600 @@ -12,7 +12,6 @@ "watch": "webpack --mode=development --watch" }, @@ -42,8 +42,8 @@ "@jupyterlab/application": "^4.0.0", "@jupyterlab/apputils": "^4.0.0", "@jupyterlab/cells": "^4.0.0", ---- nbdime-4.0.1/packages/webapp/src/index.ts.orig 2023-11-21 02:21:22.000000000 -0700 -+++ nbdime-4.0.1/packages/webapp/src/index.ts 2024-06-18 14:47:01.231621095 -0600 +--- nbdime-4.0.2/packages/webapp/src/index.ts.orig 2024-09-05 07:24:50.000000000 -0600 ++++ nbdime-4.0.2/packages/webapp/src/index.ts 2024-09-05 09:52:13.186651091 -0600 @@ -16,8 +16,8 @@ import { } from './app/common'; diff --git a/python-nbdime.spec b/python-nbdime.spec index b20fd90..6f4309a 100644 --- a/python-nbdime.spec +++ b/python-nbdime.spec @@ -1,15 +1,14 @@ %global giturl https://github.com/jupyter/nbdime Name: python-nbdime -Version: 4.0.1 +Version: 4.0.2 Release: %autorelease Summary: Diff and merge of Jupyter notebooks License: BSD-3-Clause -BuildArch: noarch URL: https://nbdime.readthedocs.io/ VCS: git:%{giturl}.git -Source0: %{giturl}/archive/%{version}/nbdime-%{version}.tar.gz +Source0: %{giturl}/archive/v%{version}/nbdime-%{version}.tar.gz # Source1 and Source2 created with ./prepare_vendor.sh # "nodejs-packaging-bundler nbdime" fails to include '@jupyterlab/buildutils' Source1: nbdime-%{version}-vendor.tar.xz @@ -22,7 +21,12 @@ Patch: %{name}-unbundle-fontawesome.patch # components for x86_64 and aarch64 only. Check later releases to see if # the nx version has rolled forward to a version that supports more # architectures -ExclusiveArch: x86_64 aarch64 +ExclusiveArch: %{x86_64} %{arm64} noarch + +BuildArch: noarch +BuildSystem: pyproject +BuildOption(generate_buildrequires): -x docs,test +BuildOption(install): -l nbdime BuildRequires: fdupes BuildRequires: fontawesome-fonts-web @@ -32,12 +36,10 @@ BuildRequires: help2man BuildRequires: make BuildRequires: nodejs-devel BuildRequires: nodejs-npm -BuildRequires: python3-devel BuildRequires: python3-docs BuildRequires: yarnpkg -%global _desc %{expand: -Nbdime provides tools for diffing and merging of Jupyter notebooks. +%global _desc %{expand:Nbdime provides tools for diffing and merging of Jupyter notebooks. - nbdiff: compare notebooks in a terminal-friendly way - nbmerge: three-way merge of notebooks with automatic conflict resolution @@ -45,23 +47,25 @@ Nbdime provides tools for diffing and merging of Jupyter notebooks. - nbmerge-web: gives you a web-based three-way merge tool for notebooks - nbshow: present a single notebook in a terminal-friendly way} -%description %_desc +%description +%_desc %package -n python3-nbdime # The nbdime project is released under the BSD-3-Clause license. # Bundled JavaScript has the following licenses. -# Apache-2.0: mathjax-full +# Apache-2.0: mathjax-full, mhchemparser # BSD-2-Clause: domelementtype, domhandler, domutils, entities # BSD-3-Clause: @jupyterlab/*, @lumino/* # ISC: picocolors # MIT: @codemirror/*, @fortawesome/*, @lezer/*, alertify.js, call-bind, crelt, # css-loader, deepmerge, define-data-property, dom-serializer, -# es-define-property, es-errors, file-saver, function-bind, get-intrinsic, -# gopd, has-property-descriptors, has-proto, has-symbols, hasown, htmlparser2, -# is-plain-object, isarray, json-stable-stringify, lib0, lodash.escape, -# minimist, nanoid, object-keys, parse-srcset, path-browserify, postcss, -# process, querystringify, requires-port, sanitize-html, set-function-length, -# style-loader, style-mod, url-parse, w3c-keyname, y-protocols, yjs +# es-define-property, es-errors, escape-string-regexp, file-saver, +# function-bind, get-intrinsic, gopd, has-property-descriptors, has-proto, +# has-symbols, hasown, htmlparser2, is-plain-object, isarray, +# json-stable-stringify, lib0, lodash.escape, minimist, nanoid, object-keys, +# parse-srcset, path-browserify, postcss, querystringify, requires-port, +# sanitize-html, set-function-length, style-loader, style-mod, url-parse, +# w3c-keyname, y-protocols, yjs # Public Domain: jsonify License: Apache-2.0 AND BSD-2-Clause AND BSD-3-Clause AND ISC AND MIT AND LicenseRef-Fedora-Public-Domain Summary: %{summary} @@ -70,9 +74,9 @@ Requires: python-jupyter-filesystem # Needed to replace the bundled fonts Requires: fontawesome-fonts-web -Provides: npm(nbdime) = 7.0.1 -Provides: bundled(npm(@codemirror/autocomplete)) = 6.16.2 -Provides: bundled(npm(@codemirror/commands)) = 6.6.0 +Provides: npm(nbdime) = 7.0.2 +Provides: bundled(npm(@codemirror/autocomplete)) = 6.18.0 +Provides: bundled(npm(@codemirror/commands)) = 6.6.1 Provides: bundled(npm(@codemirror/lang-cpp)) = 6.0.2 Provides: bundled(npm(@codemirror/lang-css)) = 6.2.1 Provides: bundled(npm(@codemirror/lang-html)) = 6.4.9 @@ -83,63 +87,64 @@ Provides: bundled(npm(@codemirror/lang-markdown)) = 6.2.5 Provides: bundled(npm(@codemirror/lang-php)) = 6.0.1 Provides: bundled(npm(@codemirror/lang-python)) = 6.1.6 Provides: bundled(npm(@codemirror/lang-rust)) = 6.0.1 -Provides: bundled(npm(@codemirror/lang-sql)) = 6.6.5 +Provides: bundled(npm(@codemirror/lang-sql)) = 6.7.1 Provides: bundled(npm(@codemirror/lang-wast)) = 6.0.2 Provides: bundled(npm(@codemirror/lang-xml)) = 6.1.0 Provides: bundled(npm(@codemirror/language)) = 6.10.2 -Provides: bundled(npm(@codemirror/legacy-modes)) = 6.4.0 +Provides: bundled(npm(@codemirror/legacy-modes)) = 6.4.1 Provides: bundled(npm(@codemirror/search)) = 6.5.6 Provides: bundled(npm(@codemirror/state)) = 6.4.1 -Provides: bundled(npm(@codemirror/view)) = 6.28.1 -Provides: bundled(npm(@jupyterlab/apputils)) = 4.3.2 -Provides: bundled(npm(@jupyterlab/cells)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/codeeditor)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/codemirror)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/coreutils)) = 6.2.2 -Provides: bundled(npm(@jupyterlab/docregistry)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/documentsearch)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/filebrowser)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/mathjax-extension)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/nbformat)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/notebook)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/observables)) = 5.2.2 -Provides: bundled(npm(@jupyterlab/outputarea)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/rendermime)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/services)) = 7.2.2 -Provides: bundled(npm(@jupyterlab/statedb)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/statusbar)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/theme-light-extension)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/toc)) = 6.2.2 -Provides: bundled(npm(@jupyterlab/translation)) = 4.2.2 -Provides: bundled(npm(@jupyterlab/ui-components)) = 4.2.2 +Provides: bundled(npm(@codemirror/view)) = 6.33.0 +Provides: bundled(npm(@jupyterlab/apputils)) = 4.3.5 +Provides: bundled(npm(@jupyterlab/cells)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/codeeditor)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/codemirror)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/coreutils)) = 6.2.5 +Provides: bundled(npm(@jupyterlab/docregistry)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/documentsearch)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/filebrowser)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/mathjax-extension)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/nbformat)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/notebook)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/observables)) = 5.2.5 +Provides: bundled(npm(@jupyterlab/outputarea)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/rendermime)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/services)) = 7.2.5 +Provides: bundled(npm(@jupyterlab/statedb)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/statusbar)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/theme-light-extension)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/toc)) = 6.2.5 +Provides: bundled(npm(@jupyterlab/translation)) = 4.2.5 +Provides: bundled(npm(@jupyterlab/ui-components)) = 4.2.5 Provides: bundled(npm(@lezer/common)) = 1.2.1 Provides: bundled(npm(@lezer/cpp)) = 1.1.2 Provides: bundled(npm(@lezer/css)) = 1.1.8 -Provides: bundled(npm(@lezer/generator)) = 1.7.0 -Provides: bundled(npm(@lezer/highlight)) = 1.2.0 +Provides: bundled(npm(@lezer/generator)) = 1.7.1 +Provides: bundled(npm(@lezer/highlight)) = 1.2.1 Provides: bundled(npm(@lezer/html)) = 1.3.10 Provides: bundled(npm(@lezer/java)) = 1.1.2 Provides: bundled(npm(@lezer/javascript)) = 1.4.17 Provides: bundled(npm(@lezer/json)) = 1.0.2 -Provides: bundled(npm(@lezer/lr)) = 1.4.1 -Provides: bundled(npm(@lezer/markdown)) = 1.3.0 +Provides: bundled(npm(@lezer/lr)) = 1.4.2 +Provides: bundled(npm(@lezer/markdown)) = 1.3.1 +Provides: bundled(npm(@lezer/php)) = 1.0.2 Provides: bundled(npm(@lezer/python)) = 1.1.14 Provides: bundled(npm(@lezer/rust)) = 1.0.2 Provides: bundled(npm(@lezer/xml)) = 1.0.5 -Provides: bundled(npm(@lumino/algorithm)) = 2.0.1 -Provides: bundled(npm(@lumino/collections)) = 2.0.1 -Provides: bundled(npm(@lumino/commands)) = 2.3.0 -Provides: bundled(npm(@lumino/coreutils)) = 2.1.2 -Provides: bundled(npm(@lumino/disposable)) = 2.1.2 -Provides: bundled(npm(@lumino/domutils)) = 2.0.1 -Provides: bundled(npm(@lumino/dragdrop)) = 2.1.4 -Provides: bundled(npm(@lumino/keyboard)) = 2.0.1 -Provides: bundled(npm(@lumino/messaging)) = 2.0.1 -Provides: bundled(npm(@lumino/polling)) = 2.1.2 -Provides: bundled(npm(@lumino/properties)) = 2.0.1 -Provides: bundled(npm(@lumino/signaling)) = 2.1.2 -Provides: bundled(npm(@lumino/virtualdom)) = 2.0.1 -Provides: bundled(npm(@lumino/widgets)) = 2.3.2 +Provides: bundled(npm(@lumino/algorithm)) = 2.0.2 +Provides: bundled(npm(@lumino/collections)) = 2.0.2 +Provides: bundled(npm(@lumino/commands)) = 2.3.1 +Provides: bundled(npm(@lumino/coreutils)) = 2.2.0 +Provides: bundled(npm(@lumino/disposable)) = 2.1.3 +Provides: bundled(npm(@lumino/domutils)) = 2.0.2 +Provides: bundled(npm(@lumino/dragdrop)) = 2.1.5 +Provides: bundled(npm(@lumino/keyboard)) = 2.0.2 +Provides: bundled(npm(@lumino/messaging)) = 2.0.2 +Provides: bundled(npm(@lumino/polling)) = 2.1.3 +Provides: bundled(npm(@lumino/properties)) = 2.0.2 +Provides: bundled(npm(@lumino/signaling)) = 2.1.3 +Provides: bundled(npm(@lumino/virtualdom)) = 2.0.2 +Provides: bundled(npm(@lumino/widgets)) = 2.5.0 Provides: bundled(npm(alertify.js)) = 1.0.12 Provides: bundled(npm(call-bind)) = 1.0.7 Provides: bundled(npm(crelt)) = 1.0.6 @@ -153,6 +158,7 @@ Provides: bundled(npm(domutils)) = 3.1.0 Provides: bundled(npm(entities)) = 4.5.0 Provides: bundled(npm(es-define-property)) = 1.0.0 Provides: bundled(npm(es-errors)) = 1.3.0 +Provides: bundled(npm(escape-string-regexp)) = 4.0.0 Provides: bundled(npm(file-saver)) = 2.0.5 Provides: bundled(npm(function-bind)) = 1.1.2 Provides: bundled(npm(get-intrinsic)) = 1.2.4 @@ -166,17 +172,17 @@ Provides: bundled(npm(is-plain-object)) = 5.0.0 Provides: bundled(npm(isarray)) = 2.0.5 Provides: bundled(npm(json-stable-stringify)) = 1.1.1 Provides: bundled(npm(jsonify)) = 0.0.1 -Provides: bundled(npm(lib0)) = 0.2.94 +Provides: bundled(npm(lib0)) = 0.2.97 Provides: bundled(npm(lodash.escape)) = 4.0.1 Provides: bundled(npm(mathjax-full)) = 3.2.2 +Provides: bundled(npm(mhchemparser)) = 4.2.1 Provides: bundled(npm(minimist)) = 1.2.8 Provides: bundled(npm(nanoid)) = 3.3.7 Provides: bundled(npm(object-keys)) = 1.1.1 Provides: bundled(npm(parse-srcset)) = 1.0.2 Provides: bundled(npm(path-browserify)) = 1.0.1 -Provides: bundled(npm(picocolors)) = 1.0.1 -Provides: bundled(npm(postcss)) = 8.4.38 -Provides: bundled(npm(process)) = 0.11.10 +Provides: bundled(npm(picocolors)) = 1.1.0 +Provides: bundled(npm(postcss)) = 8.4.45 Provides: bundled(npm(querystringify)) = 2.2.0 Provides: bundled(npm(requires-port)) = 1.0.0 Provides: bundled(npm(sanitize-html)) = 2.12.1 @@ -188,7 +194,8 @@ Provides: bundled(npm(w3c-keyname)) = 2.2.8 Provides: bundled(npm(y-protocols)) = 1.0.6 Provides: bundled(npm(yjs)) = 13.6.18 -%description -n python3-nbdime %_desc +%description -n python3-nbdime +%_desc %package doc # The content is BSD-3-Clause. Other licenses are due to Sphinx files. @@ -219,6 +226,7 @@ Documentation for %{name}. %autosetup -n nbdime-%{version} -a1 -p1 cp -p %{SOURCE2} . +%conf # Remove useless shebangs sed -i '\,#!/usr/bin/env,d' \ nbdime/diffing/directorydiff.py \ @@ -233,31 +241,26 @@ sed -i '\,#!/usr/bin/env,d' \ sed -e "s|\('https://docs\.python\.org/3\.5', \)None|\1'%{_docdir}/python3-docs/html/objects.inv'|" \ -i docs/source/conf.py +%generate_buildrequires -p # Do not depend on jupyter_server_mathjax; it doesn't work in jupyterlab 4.10+ # https://github.com/jupyter-server/jupyter_server_mathjax/issues/20 sed -i '/jupyter_server_mathjax/d' pyproject.toml +# Do not run code coverage tools +sed -i '/pytest-cov/d' pyproject.toml -%generate_buildrequires -%pyproject_buildrequires -x docs,test - -%build -export LC_ALL=C.UTF-8 +%build -p export YARN_CACHE_FOLDER="$PWD/.package-cache" export npm_config_nodedir=%{_includedir}/node export CFLAGS='%{build_cflags} -I%{_includedir}/node' export CXXFLAGS='%{build_cxxflags} -I%{_includedir}/node' yarn install --offline -%pyproject_wheel - +%build -a # Build the documentation PYTHONPATH=$PWD make -C docs html rm docs/build/html/.buildinfo -%install -%pyproject_install -%pyproject_save_files -l nbdime - +%install -a # Move the configuration files to the standard Jupyter directories mv %{buildroot}%{_prefix}%{_sysconfdir} %{buildroot}%{_sysconfdir} @@ -314,7 +317,7 @@ git config --global user.email "build@fedoraproject.org" git config --global user.name "Fedora Builder" # Skip tests that require a network -%pytest --ignore=nbdime/tests/test_cli_apps.py --ignore=nbdime/tests/test_web.py +%pytest -v --ignore=nbdime/tests/test_cli_apps.py --ignore=nbdime/tests/test_web.py %files -n python3-nbdime -f %{pyproject_files} %doc CHANGELOG.md README.md diff --git a/sources b/sources index ccc1cdb..1fc0e60 100644 --- a/sources +++ b/sources @@ -1,2 +1,2 @@ -SHA512 (nbdime-4.0.1-vendor.tar.xz) = c7754f82924bda9fa87ccd957d74af114c807649a820813a9e73edae664ad7a11e79a0ca26bfb68deaef121c3abc82a114a4cd95f42dc8009e6becd65a5cefbe -SHA512 (nbdime-4.0.1.tar.gz) = ba220c9dcebba5144e60cfadba9d88bc1c4f3c2932ad8f8765c41e9910e5d917a1ef1ec8adabcdd9b81d77c9e9e8e12003bdb75f1f65057c4deee47451caba4d +SHA512 (nbdime-4.0.2-vendor.tar.xz) = e92a30a5cd927d3a56ebf18e94e9bc91514b3660b6d9b24d61384ba70a3c9789e04486f688d5380406964d1b463d6857789e5ed929d6211c1b821feda16d29b7 +SHA512 (nbdime-4.0.2.tar.gz) = 1e1bc2bb89382266d7685736c376099ca95171f66016897f16e2577c6c04d5dfde25c5209615006083640de68e461796a671c985137dc2553108878755251629