summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Ammerlaan <andrewammerlaan@gentoo.org>2022-05-24 14:41:32 +0200
committerAndrew Ammerlaan <andrewammerlaan@gentoo.org>2022-05-24 15:02:36 +0200
commitf731e0878b4794bc2a2f8463ad9c00e73321889e (patch)
treed954755d409c7c6d24280f3a99e6e9b2493c61c4
parentdev-python/mkdocs-i18n: enable py3.11 (diff)
downloadgentoo-f731e0878b4794bc2a2f8463ad9c00e73321889e.tar.gz
gentoo-f731e0878b4794bc2a2f8463ad9c00e73321889e.tar.bz2
gentoo-f731e0878b4794bc2a2f8463ad9c00e73321889e.zip
dev-python/gitdb: enable py3.11, nose --> pytest
Signed-off-by: Andrew Ammerlaan <andrewammerlaan@gentoo.org>
-rw-r--r--dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch75
-rw-r--r--dev-python/gitdb/gitdb-4.0.9-r1.ebuild63
2 files changed, 138 insertions, 0 deletions
diff --git a/dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch b/dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch
new file mode 100644
index 000000000000..fe38e8c613ee
--- /dev/null
+++ b/dev-python/gitdb/files/gitdb-4.0.9-nose-to-pytest.patch
@@ -0,0 +1,75 @@
+From a61910fde100fa1112ec57dd3e456719724997ef Mon Sep 17 00:00:00 2001
+From: Carl George <carl@george.computer>
+Date: Wed, 9 Feb 2022 17:15:39 -0600
+Subject: [PATCH] Switch from nose to pytest
+
+This is not a full rewrite to pytest style tests, it just changes the
+minimum to allow pytest to run the existing tests.
+
+Resolves #72
+---
+ .github/workflows/pythonpackage.yml | 6 +++---
+ Makefile | 3 +--
+ README.rst | 4 ++--
+ gitdb.pro.user | 3 +--
+ gitdb/test/db/test_pack.py | 4 ++--
+ gitdb/test/lib.py | 4 ++--
+ gitdb/test/test_pack.py | 4 ++--
+ 7 files changed, 13 insertions(+), 15 deletions(-)
+
+diff --git a/gitdb/test/db/test_pack.py b/gitdb/test/db/test_pack.py
+index ff96a58..4539f42 100644
+--- a/gitdb/test/db/test_pack.py
++++ b/gitdb/test/db/test_pack.py
+@@ -16,7 +16,7 @@
+ import random
+ import sys
+
+-from nose.plugins.skip import SkipTest
++import pytest
+
+ class TestPackDB(TestDBBase):
+
+@@ -24,7 +24,7 @@ class TestPackDB(TestDBBase):
+ @with_packs_rw
+ def test_writing(self, path):
+ if sys.platform == "win32":
+- raise SkipTest("FIXME: Currently fail on windows")
++ pytest.skip("FIXME: Currently fail on windows")
+
+ pdb = PackedDB(path)
+
+diff --git a/gitdb/test/lib.py b/gitdb/test/lib.py
+index a04084f..abd4ad5 100644
+--- a/gitdb/test/lib.py
++++ b/gitdb/test/lib.py
+@@ -65,8 +65,8 @@ def skip_on_travis_ci(func):
+ @wraps(func)
+ def wrapper(self, *args, **kwargs):
+ if 'TRAVIS' in os.environ:
+- import nose
+- raise nose.SkipTest("Cannot run on travis-ci")
++ import pytest
++ pytest.skip("Cannot run on travis-ci")
+ # end check for travis ci
+ return func(self, *args, **kwargs)
+ # end wrapper
+diff --git a/gitdb/test/test_pack.py b/gitdb/test/test_pack.py
+index 4b01741..f946197 100644
+--- a/gitdb/test/test_pack.py
++++ b/gitdb/test/test_pack.py
+@@ -26,7 +26,7 @@
+ from gitdb.exc import UnsupportedOperation
+ from gitdb.util import to_bin_sha
+
+-from nose import SkipTest
++import pytest
+
+ import os
+ import tempfile
+@@ -246,4 +246,4 @@ def rewind_streams():
+ def test_pack_64(self):
+ # TODO: hex-edit a pack helping us to verify that we can handle 64 byte offsets
+ # of course without really needing such a huge pack
+- raise SkipTest()
++ pytest.skip('not implemented')
diff --git a/dev-python/gitdb/gitdb-4.0.9-r1.ebuild b/dev-python/gitdb/gitdb-4.0.9-r1.ebuild
new file mode 100644
index 000000000000..0180a26da09d
--- /dev/null
+++ b/dev-python/gitdb/gitdb-4.0.9-r1.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2022 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=setuptools
+PYTHON_COMPAT=( python3_{8..11} )
+
+inherit distutils-r1
+
+DESCRIPTION="GitDB is a pure-Python git object database"
+HOMEPAGE="
+ https://github.com/gitpython-developers/gitdb/
+ https://pypi.org/project/gitdb/
+"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~m68k ~ppc ~ppc64 ~riscv ~s390 ~sparc ~x86"
+
+RDEPEND="
+ >=dev-python/smmap-3.0.1[${PYTHON_USEDEP}]
+"
+BDEPEND="
+ test? (
+ dev-vcs/git
+ )
+"
+
+PATCHES=(
+ "${FILESDIR}/${P}-nose-to-pytest.patch"
+)
+
+distutils_enable_tests pytest
+
+src_test() {
+ local i
+
+ mkdir "${T}"/repo || die
+ cd "${T}"/repo || die
+
+ for (( i = 0; i < 2500; ++i )); do
+ echo "${i}" > file"${i}" || die
+ done
+
+ git init || die
+ git config user.email "you@example.com" || die
+ git config user.name "Your Name" || die
+ git add -A || die
+ git commit -q -m ".." || die
+ git clone --bare "${T}"/repo "${T}"/repo.git || die
+ cd "${S}" || die
+
+ distutils-r1_src_test
+}
+
+python_test() {
+ #TRAVIS=1 disables performance tests which rely on the gitdb repo
+ local -x TRAVIS=1
+ local -x GITDB_TEST_GIT_REPO_BASE="${T}"/repo.git
+ epytest
+}