aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYuri Victorovich <yuri@FreeBSD.org>2023-12-12 20:50:32 +0000
committerYuri Victorovich <yuri@FreeBSD.org>2023-12-12 21:14:13 +0000
commit5e276b8b14bdcb637637955eab78baf76e435297 (patch)
tree636c116700adc5629efb5c41171a1dff1a45c3ca
parent4937de20102462bc1f4611e6ecf6dc0dc9ba0e0c (diff)
downloadports-5e276b8b14bdcb637637955eab78baf76e435297.tar.gz
ports-5e276b8b14bdcb637637955eab78baf76e435297.zip
science/py-nibabel: Fix the failing test
-rw-r--r--science/py-nibabel/Makefile1
-rw-r--r--science/py-nibabel/files/patch-fix-tests37
2 files changed, 38 insertions, 0 deletions
diff --git a/science/py-nibabel/Makefile b/science/py-nibabel/Makefile
index 3fbc19195c17..90dbc234add4 100644
--- a/science/py-nibabel/Makefile
+++ b/science/py-nibabel/Makefile
@@ -1,5 +1,6 @@
PORTNAME= nibabel
DISTVERSION= 5.2.0
+PORTREVISION= 1
CATEGORIES= science python
MASTER_SITES= PYPI
PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
diff --git a/science/py-nibabel/files/patch-fix-tests b/science/py-nibabel/files/patch-fix-tests
new file mode 100644
index 000000000000..1a3db66036b6
--- /dev/null
+++ b/science/py-nibabel/files/patch-fix-tests
@@ -0,0 +1,37 @@
+- fix for the failing test from https://github.com/nipy/nibabel/issues/1285#issuecomment-1852612513
+
+diff --git nibabel/pkg_info.py nibabel/pkg_info.py
+index 7e816939..7232806a 100644
+--- nibabel/pkg_info.py
++++ nibabel/pkg_info.py
+@@ -1,6 +1,7 @@
+ from __future__ import annotations
+
+ import sys
++from contextlib import suppress
+ from subprocess import run
+
+ from packaging.version import Version
+@@ -102,14 +103,16 @@ def pkg_commit_hash(pkg_path: str | None = None) -> tuple[str, str]:
+ ver = Version(__version__)
+ if ver.local is not None and ver.local.startswith('g'):
+ return 'installation', ver.local[1:8]
+- # maybe we are in a repository
+- proc = run(
+- ('git', 'rev-parse', '--short', 'HEAD'),
+- capture_output=True,
+- cwd=pkg_path,
+- )
+- if proc.stdout:
+- return 'repository', proc.stdout.decode().strip()
++ # maybe we are in a repository, but consider that we may not have git
++ with suppress(FileNotFoundError):
++ proc = run(
++ ('git', 'rev-parse', '--short', 'HEAD'),
++ capture_output=True,
++ cwd=pkg_path,
++ )
++ if proc.stdout:
++ return 'repository', proc.stdout.decode().strip()
++
+ return '(none found)', '<not found>'