From 3d3dcb71e5bce80c75d478cea48e7b822fd15d04 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Mon, 22 Jan 2024 03:55:30 +0000 Subject: [PATCH 01/17] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From fee9c6ba7be48ec9668e6ad2dd172d9d896105d8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jan 2024 07:18:31 +0000 Subject: [PATCH 02/17] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 0e1270d679dd57eb6389d322ccee03b89671b462 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Sat, 8 Jun 2024 20:58:42 +0200 Subject: [PATCH 03/17] Rebuilt for Python 3.13 From a0b5ab00ddbc6b35690350b184986a85eba3486e Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 13:29:06 +0000 Subject: [PATCH 04/17] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 09ba63a0f222a4fb64b78977e9043b2b4ff373a1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miroslav=20Such=C3=BD?= Date: Wed, 4 Sep 2024 20:20:14 +0200 Subject: [PATCH 05/17] convert license to SPDX This is part of https://fedoraproject.org/wiki/Changes/SPDX_Licenses_Phase_4 --- python-nixio.spec | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/python-nixio.spec b/python-nixio.spec index 2c69623..3430656 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -8,7 +8,8 @@ Summary: Python bindings for NIX %global tag %version %forgemeta -License: BSD +# Automatically converted from old format: BSD - review is highly recommended. +License: LicenseRef-Callaway-BSD URL: %forgeurl Source0: %forgesource # The tagged snapshot on GitHub still says "dev" but the manually uploaded From de4e9df2dc94d0c5f6a6f6401ef46e88642dbe18 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 6 Dec 2024 10:14:37 -0500 Subject: [PATCH 06/17] Drop default -r argument from %pyproject_buildrequires [skip changelog] --- python-nixio.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-nixio.spec b/python-nixio.spec index 3430656..4badb94 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -56,7 +56,7 @@ sed -i "s/nixpy/nixpy-%{version}/" nixio/test/test_doc_examples.py cp %{SOURCE1} nixio/info.json -v -p %generate_buildrequires -%pyproject_buildrequires -r +%pyproject_buildrequires %build %pyproject_wheel From d1a96adae468bc4a22fb3b720ba00a248fcf7dc0 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 6 Dec 2024 10:11:30 -0500 Subject: [PATCH 07/17] Omit lenna.png from the source archive - https://pagure.io/neuro-sig/NeuroFedora/issue/576 - https://github.com/G-Node/nixpy/issues/545 --- .gitignore | 1 + get_source | 50 +++++++++++++++++++++++++++++++++++++++++++++++ python-nixio.spec | 24 +++++++++++++++++++---- sources | 2 +- 4 files changed, 72 insertions(+), 5 deletions(-) create mode 100755 get_source diff --git a/.gitignore b/.gitignore index 8bd9645..3e6aab7 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /nixpy-1.5.1.tar.gz /nixpy-1.5.2.tar.gz /nixpy-1.5.3.tar.gz +/nixpy-1.5.3-filtered.tar.gz diff --git a/get_source b/get_source new file mode 100755 index 0000000..1ac2cc4 --- /dev/null +++ b/get_source @@ -0,0 +1,50 @@ +#!/bin/sh +set -o errexit +set -o nounset + +if [ "$#" != '1' ] +then + cat 1>&2 < Downloading: ${URL}" 1>&2 +curl -L -O "${URL}" + +ARCHIVE="$(find . -mindepth 1 -maxdepth 1 -type f -name '*.tar.gz' -print -quit)" +echo "--> Extracting: $(basename "${ARCHIVE}")" 1>&2 +tar -xzf "${ARCHIVE}" +echo '--> Removing Lenna/Lena image due to licensing and other issues' 1>&2 +TARDIR="$(basename "${ARCHIVE}" '.tar.gz')" +MTIME="$(stat -c '%Y' "${TARDIR}")" +# https://github.com/G-Node/nixpy/issues/545 +find "${TARDIR}" -type f -name lenna.png -print -delete +# Make sure the original mtime is preserved even if we modified the base +# directory by removing something at the top level. (So far, we didn’t.) +touch -d @"${MTIME}" "${TARDIR}" +FILTERED="$(basename "${ARCHIVE}" .tar.gz)-filtered.tar.gz" +echo "--> Re-archiving: ${FILTERED}" 1>&2 +# https://www.gnu.org/software/tar/manual/html_section/Reproducibility.html +TZ=UTC LC_ALL=C tar \ + --create \ + --sort=name \ + --format=posix \ + --numeric-owner --owner=0 --group=0 \ + --mode=go+u,go-w \ + --pax-option='delete=atime,delete=ctime' \ + "${TARDIR}/" | + gzip -9 > "${FILTERED}" +mv -v "${FILTERED}" "${OUTDIR}" +echo 'Done.' 1>&2 diff --git a/python-nixio.spec b/python-nixio.spec index 4badb94..9e0f86f 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -11,12 +11,22 @@ Summary: Python bindings for NIX # Automatically converted from old format: BSD - review is highly recommended. License: LicenseRef-Callaway-BSD URL: %forgeurl -Source0: %forgesource +# We need to upload a filtered version of the source archive because +# docs/source/examples/lenna.png has several issues, including the lack of a +# license. We have asked upstream to deal with this in +# Please consider replacing lenna.png +# https://github.com/G-Node/nixpy/issues/545 +# but for now, we must obtain the filtered archive by running the script in +# Source2: +# ./get_source ${VERSION} +%dnl Source0: %forgesource +Source0: nixpy-%{version}-filtered.tar.gz # The tagged snapshot on GitHub still says "dev" but the manually uploaded # release does not, so use the info.json from there # https://github.com/G-Node/nixpy/issues/528 Source1: info.json - +# * Script used to obtain Source0: ./get_source %%{version} +Source2: get_source BuildArch: noarch # No need for nix, they're uncoupling it from the C++ @@ -48,7 +58,7 @@ BuildRequires: %{py3_dist matplotlib} %{description} %prep -%forgesetup +%autosetup -n nixpy-%{version} # it sets examples_path based on the name of the cwd sed -i "s/nixpy/nixpy-%{version}/" nixio/test/test_doc_examples.py @@ -66,7 +76,13 @@ cp %{SOURCE1} nixio/info.json -v -p %pyproject_save_files nixio %check -%{pytest} +# These require the removed lenna.png sample file: +k="${k-}${k+ and }not (TestDocumentationExamples and test_image_data)" +k="${k-}${k+ and }not (TestDocumentationExamples and test_image_with_metadata)" +k="${k-}${k+ and }not (TestDocumentationExamples and test_multiple_rois)" +k="${k-}${k+ and }not (TestDocumentationExamples and test_single_roi)" + +%pytest -k "${k-}" %files -n python3-nixio -f %{pyproject_files} %{_bindir}/nixio diff --git a/sources b/sources index ef0608e..c783ccb 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (nixpy-1.5.3.tar.gz) = 1b3fd6bb638797a90a2e899d9ae3663a6a0ee3dfc5fe8c6c0806ed5ac2a34ef54771cdb1a715bf400020c6f5df7f3f348ee7129ed1e055381fa11aa5a8b6b218 +SHA512 (nixpy-1.5.3-filtered.tar.gz) = 00472f0666b4313124b90b8f14219d1f2a5e56e7174b4eaa2174a7d88a3251513f5fc279d49c1b19dbca3c1c5470ae90049347370e94077aeda24c4db1e5e786 From afba59758ea4af679a42ca143c9cbd40f4b99132 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 6 Dec 2024 10:15:23 -0500 Subject: [PATCH 08/17] Correctly update License to SPDX --- python-nixio.spec | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/python-nixio.spec b/python-nixio.spec index 9e0f86f..a7aa4f8 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -8,8 +8,7 @@ Summary: Python bindings for NIX %global tag %version %forgemeta -# Automatically converted from old format: BSD - review is highly recommended. -License: LicenseRef-Callaway-BSD +License: BSD-3-Clause URL: %forgeurl # We need to upload a filtered version of the source archive because # docs/source/examples/lenna.png has several issues, including the lack of a From 7477ef8e86a5310e8afba2cc4e779d7d538a3542 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 6 Dec 2024 10:18:24 -0500 Subject: [PATCH 09/17] Remove bogus BuildRequires: gcc --- python-nixio.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/python-nixio.spec b/python-nixio.spec index a7aa4f8..dae904b 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -45,7 +45,6 @@ a storage backend. %package -n python3-nixio Summary: %{summary} BuildRequires: python3-devel -BuildRequires: gcc # use tests_require which is deprecated BuildRequires: %{py3_dist pytest} BuildRequires: %{py3_dist pytest-runner} From 6c4f00285ccd7b419ed13b98c4b378e1b52fdc74 Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Fri, 6 Dec 2024 10:19:13 -0500 Subject: [PATCH 10/17] Update to 1.5.4 (close RHBZ#2324542) --- .gitignore | 1 + python-nixio.spec | 2 +- sources | 2 +- 3 files changed, 3 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 3e6aab7..9ced77a 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,4 @@ /nixpy-1.5.2.tar.gz /nixpy-1.5.3.tar.gz /nixpy-1.5.3-filtered.tar.gz +/nixpy-1.5.4-filtered.tar.gz diff --git a/python-nixio.spec b/python-nixio.spec index dae904b..44a2e76 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -1,7 +1,7 @@ %global forgeurl https://github.com/G-node/nixpy Name: python-nixio -Version: 1.5.3 +Version: 1.5.4 Release: %autorelease Summary: Python bindings for NIX diff --git a/sources b/sources index c783ccb..96c2c29 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (nixpy-1.5.3-filtered.tar.gz) = 00472f0666b4313124b90b8f14219d1f2a5e56e7174b4eaa2174a7d88a3251513f5fc279d49c1b19dbca3c1c5470ae90049347370e94077aeda24c4db1e5e786 +SHA512 (nixpy-1.5.4-filtered.tar.gz) = 7842e1643df0b234b8de7f8c1c30875ad70ed2681561ecf570ffff2849f60ea9510e7dba3b6544e8f507eed2583925d52d29c348cc49b2d5da0a22c686e3173d From 7a19d76dc2c67d3a26e09855b93db730e24bf8a7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 16:35:22 +0000 Subject: [PATCH 11/17] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 0de39b50f4c0462a789b96e221c609016d2ccc4c Mon Sep 17 00:00:00 2001 From: "Benjamin A. Beasley" Date: Thu, 20 Feb 2025 10:49:51 -0500 Subject: [PATCH 12/17] Remove deprecated pytest-runner dependency - Since the patch offered upstream introduces a "test" extra, use it - Assert that .dist-info contains a license file --- ...-deprecated-pytest-runner-dependency.patch | 34 +++++++++++++++++++ python-nixio.spec | 21 ++++++------ 2 files changed, 45 insertions(+), 10 deletions(-) create mode 100644 0001-Remove-deprecated-pytest-runner-dependency.patch diff --git a/0001-Remove-deprecated-pytest-runner-dependency.patch b/0001-Remove-deprecated-pytest-runner-dependency.patch new file mode 100644 index 0000000..850805a --- /dev/null +++ b/0001-Remove-deprecated-pytest-runner-dependency.patch @@ -0,0 +1,34 @@ +From b550f88e64c01194029a50b92d94955c39bf169f Mon Sep 17 00:00:00 2001 +From: Sandro +Date: Tue, 24 Dec 2024 09:08:28 +0100 +Subject: [PATCH] Remove deprecated pytest-runner dependency + +The `pytest-runner` project has been deprecated since 2019 and has been +archived on git hub in December 2024. + +This removes the dependency on the deprecated package and also removes +deprecated keywords from `setup.py` related to it. +--- + setup.py | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/setup.py b/setup.py +index 16379a5..be594d5 100644 +--- a/setup.py ++++ b/setup.py +@@ -75,9 +75,9 @@ setup( + packages=packages, + scripts=[], + python_requires=">=3.6", +- tests_require=['pytest', 'scipy', 'pillow', 'matplotlib'], +- test_suite='pytest', +- setup_requires=['pytest-runner'], ++ extras_require={ ++ "test": ['pytest', 'scipy', 'pillow', 'matplotlib'], ++ }, + install_requires=['numpy', 'h5py', 'six', 'enum34;python_version<"3.4"'], + package_data={'nixio': [license_text, description_text]}, + include_package_data=True, +-- +2.48.1 + diff --git a/python-nixio.spec b/python-nixio.spec index 44a2e76..9a0cc6d 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -27,10 +27,18 @@ Source1: info.json # * Script used to obtain Source0: ./get_source %%{version} Source2: get_source +# Remove deprecated pytest-runner dependency +# https://github.com/G-Node/nixpy/pull/547 +# Rebased on 1.5.4, without changes to GitHub CI configuration +# https://fedoraproject.org/wiki/Changes/DeprecatePythonPytestRunner +Patch: 0001-Remove-deprecated-pytest-runner-dependency.patch + BuildArch: noarch # No need for nix, they're uncoupling it from the C++ # https://github.com/G-Node/nixpy/pull/276 +BuildRequires: python3-devel + %description The NIX project started as an initiative within the Electrophysiology Task Force a part of the INCF Data sharing Program. The NIX data model allows to @@ -44,19 +52,12 @@ a storage backend. %package -n python3-nixio Summary: %{summary} -BuildRequires: python3-devel -# use tests_require which is deprecated -BuildRequires: %{py3_dist pytest} -BuildRequires: %{py3_dist pytest-runner} -BuildRequires: %{py3_dist scipy} -BuildRequires: %{py3_dist pillow} -BuildRequires: %{py3_dist matplotlib} %description -n python3-nixio %{description} %prep -%autosetup -n nixpy-%{version} +%autosetup -n nixpy-%{version} -p1 # it sets examples_path based on the name of the cwd sed -i "s/nixpy/nixpy-%{version}/" nixio/test/test_doc_examples.py @@ -64,14 +65,14 @@ sed -i "s/nixpy/nixpy-%{version}/" nixio/test/test_doc_examples.py cp %{SOURCE1} nixio/info.json -v -p %generate_buildrequires -%pyproject_buildrequires +%pyproject_buildrequires -x test %build %pyproject_wheel %install %pyproject_install -%pyproject_save_files nixio +%pyproject_save_files -l nixio %check # These require the removed lenna.png sample file: From 8710162d43cb5f80d9e2584ec945d1b54c2765a1 Mon Sep 17 00:00:00 2001 From: Tim Landscheidt Date: Wed, 26 Mar 2025 10:09:03 +0000 Subject: [PATCH 13/17] Fix package description for python3-nixio --- python-nixio.spec | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/python-nixio.spec b/python-nixio.spec index 9a0cc6d..812eabb 100644 --- a/python-nixio.spec +++ b/python-nixio.spec @@ -1,5 +1,16 @@ %global forgeurl https://github.com/G-node/nixpy +%global desc \ +The NIX project started as an initiative within the Electrophysiology Task \ +Force a part of the INCF Data sharing Program. The NIX data model allows to \ +store fully annotated scientific data-set, i.e. the data together with its \ +metadata within the same container. Our aim is to achieve standardization by \ +providing a common/generic data structure for a multitude of data types. See \ +the wiki for more information \ + \ +The current implementations store the actual data using the HDF5 file format as \ +a storage backend. + Name: python-nixio Version: 1.5.4 Release: %autorelease @@ -39,22 +50,12 @@ BuildArch: noarch BuildRequires: python3-devel -%description -The NIX project started as an initiative within the Electrophysiology Task -Force a part of the INCF Data sharing Program. The NIX data model allows to -store fully annotated scientific data-set, i.e. the data together with its -metadata within the same container. Our aim is to achieve standardization by -providing a common/generic data structure for a multitude of data types. See -the wiki for more information - -The current implementations store the actual data using the HDF5 file format as -a storage backend. +%description %{desc} %package -n python3-nixio Summary: %{summary} -%description -n python3-nixio -%{description} +%description -n python3-nixio %{desc} %prep %autosetup -n nixpy-%{version} -p1 From 285c473c5738f86921cb927d6e84657d966746c8 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 3 Jun 2025 21:15:55 +0200 Subject: [PATCH 14/17] Rebuilt for Python 3.14 From 2af42a40dfa5aa388f67b6bb20972f69c9d16d7a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 09:04:04 +0000 Subject: [PATCH 15/17] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From 81ba8fa429ceb7bf67cb7e7280cedfd1f365bb28 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 15 Aug 2025 14:14:13 +0200 Subject: [PATCH 16/17] Rebuilt for Python 3.14.0rc2 bytecode From ec936fdcf96887e3b8b56a3b95f9e1fb1bee53a1 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 19 Sep 2025 13:50:14 +0200 Subject: [PATCH 17/17] Rebuilt for Python 3.14.0rc3 bytecode