* [gentoo-commits] repo/gentoo:master commit in: dev-python/pygit2/, dev-python/pygit2/files/
@ 2017-11-21 17:48 Michał Górny
0 siblings, 0 replies; 3+ messages in thread
From: Michał Górny @ 2017-11-21 17:48 UTC (permalink / raw
To: gentoo-commits
commit: 5f724dc180b9228b5903da3f00e91c6e1a6a1fda
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 21 07:23:12 2017 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov 21 17:47:52 2017 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5f724dc1
dev-python/pygit2: Bump to 0.26.1
dev-python/pygit2/Manifest | 1 +
.../files/pygit2-0.26.1-internet-tests.patch | 133 +++++++++++++++++++++
dev-python/pygit2/pygit2-0.26.1.ebuild | 30 +++++
3 files changed, 164 insertions(+)
diff --git a/dev-python/pygit2/Manifest b/dev-python/pygit2/Manifest
index 2c744d8c47a..e7cf7e20aaf 100644
--- a/dev-python/pygit2/Manifest
+++ b/dev-python/pygit2/Manifest
@@ -1,3 +1,4 @@
DIST pygit2-0.25.0.tar.gz 472116 SHA256 de0ed85fd840dfeb32bcaa94c643307551dc0d967c3714e49087e7edc0cdc571 SHA512 44f94869718111acbd4ad41bc4c37ac66557e979241dd5a7bb080cf091fec3fc3d5aa53a8a84eb37b2e6f89518b2ac69d058e1970b7cf98c35b8375807fd8f86 WHIRLPOOL 71d8eb87ef9cd2a1d77ecc1258d5d02f2d0075144fc81556e8a2c0b599202cf17b06c548767b956748feaa13d3ece0d3a664cfe95ab93004e345890805c58175
DIST pygit2-0.25.1.tar.gz 456580 SHA256 e8696033052fa0221114ee7f632d38777cc29e58230cd6a05de5725cd31b4a6a SHA512 19908c874d5c2469609a54893f37367480d27ff03583c38b474ebb125dc9db95dc60776a120bb05662938d6eb62d4bcef24f684688e97e3453ccc27e015736cd WHIRLPOOL 648aabcecde66fd5b1d3cf840c51693c237e75f9da7bb793e4e9c18537cb12e4b35d5dced17389bb24440a4c72f37175e1a0a5e44a9c69811c54cf60d11f7d3f
DIST pygit2-0.26.0.tar.gz 457263 SHA256 a7f06d61f25ab644c39e0e9bd4846a6cc4af81ae27f889473e6f0e9511226cb1 SHA512 e8626712a3b75aced14997dda0155f5c7be9a7e0e43aeb2c767c848fcbe711780137f663cc9ad5268cd85e2c61fd40be6853573f68b457cd5d46d6c32a644076 WHIRLPOOL 909d3d4f06c04107309b53653f5395f76de61195269ba753b7658725a27235ede94df48b74b547a2bafef7e20f8916c01f6d7d7f2e434965621364d51f4e32fa
+DIST pygit2-0.26.1.tar.gz 458526 BLAKE2B 703093a5a292e92c90987785065f3a1590addc09d72311f75b22caf6fe1a17be8fb16cf777189835204cb7dc4d2066e841d3d4327e2cc040c312e22a4c75a8ee SHA512 23585bc0f41458442889b5434347cbc11d6c729898864262426f84e5b9239164bb58c6e910d2381b25f1b8be271674c1a6960630a504c40accdd30e487d27a7d
diff --git a/dev-python/pygit2/files/pygit2-0.26.1-internet-tests.patch b/dev-python/pygit2/files/pygit2-0.26.1-internet-tests.patch
new file mode 100644
index 00000000000..6b96eb40f3b
--- /dev/null
+++ b/dev-python/pygit2/files/pygit2-0.26.1-internet-tests.patch
@@ -0,0 +1,133 @@
+From 24a929d003f1b6b4899f41cb227293e8c4b62eb7 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Micha=C5=82=20G=C3=B3rny?= <mgorny@gentoo.org>
+Date: Tue, 21 Nov 2017 17:53:48 +0100
+Subject: [PATCH] Disable tests requiring network access
+
+---
+ test/test_credentials.py | 3 +++
+ test/test_repository.py | 1 +
+ test/test_submodule.py | 4 ++++
+ 3 files changed, 8 insertions(+)
+
+diff --git a/test/test_credentials.py b/test/test_credentials.py
+index 7921a41..e60383a 100644
+--- a/test/test_credentials.py
++++ b/test/test_credentials.py
+@@ -70,39 +70,42 @@ class CredentialCreateTest(utils.NoRepoTestCase):
+ username = "git"
+
+ cred = KeypairFromAgent(username)
+ self.assertEqual((username, None, None, None), cred.credential_tuple)
+
+
+ class CredentialCallback(utils.RepoTestCase):
++ @unittest.skip('requires Internet access')
+ def test_callback(self):
+ class MyCallbacks(pygit2.RemoteCallbacks):
+ @staticmethod
+ def credentials(url, username, allowed):
+ self.assertTrue(allowed & GIT_CREDTYPE_USERPASS_PLAINTEXT)
+ raise Exception("I don't know the password")
+
+ url = "https://github.com/github/github"
+ remote = self.repo.create_remote("github", url)
+
+ self.assertRaises(Exception, lambda: remote.fetch(callbacks=MyCallbacks()))
+
++ @unittest.skip('requires Internet access')
+ def test_bad_cred_type(self):
+ class MyCallbacks(pygit2.RemoteCallbacks):
+ @staticmethod
+ def credentials(url, username, allowed):
+ self.assertTrue(allowed & GIT_CREDTYPE_USERPASS_PLAINTEXT)
+ return Keypair("git", "foo.pub", "foo", "sekkrit")
+
+ url = "https://github.com/github/github"
+ remote = self.repo.create_remote("github", url)
+ self.assertRaises(TypeError, lambda: remote.fetch(callbacks=MyCallbacks()))
+
+ class CallableCredentialTest(utils.RepoTestCase):
+
++ @unittest.skip('requires Internet access')
+ def test_user_pass(self):
+ credentials = UserPass("libgit2", "libgit2")
+ callbacks = pygit2.RemoteCallbacks(credentials=credentials)
+
+ url = "https://bitbucket.org/libgit2/testgitrepository.git"
+ remote = self.repo.create_remote("bb", url)
+ remote.fetch(callbacks=callbacks)
+diff --git a/test/test_repository.py b/test/test_repository.py
+index 941851b..33f0571 100644
+--- a/test/test_repository.py
++++ b/test/test_repository.py
+@@ -569,14 +569,15 @@ class CloneRepositoryTest(utils.NoRepoTestCase):
+ return repo.remotes.create("custom_remote", url)
+
+ repo = clone_repository(url, repo_path, repository=create_repository, remote=create_remote)
+ self.assertFalse(repo.is_empty)
+ self.assertTrue('refs/remotes/custom_remote/master' in repo.listall_references())
+ self.assertIsNotNone(repo.remotes["custom_remote"])
+
++ @unittest.skip('requires Internet access')
+ def test_clone_with_credentials(self):
+ repo = clone_repository(
+ "https://bitbucket.org/libgit2/testgitrepository.git",
+ self._temp_dir, callbacks=pygit2.RemoteCallbacks(credentials=pygit2.UserPass("libgit2", "libgit2")))
+
+ self.assertFalse(repo.is_empty)
+
+diff --git a/test/test_submodule.py b/test/test_submodule.py
+index f123b8b..df44e16 100644
+--- a/test/test_submodule.py
++++ b/test/test_submodule.py
+@@ -49,14 +49,15 @@ class SubmoduleTest(utils.SubmoduleRepoTestCase):
+ self.assertIsNotNone(s)
+
+ def test_listall_submodules(self):
+ submodules = self.repo.listall_submodules()
+ self.assertEqual(len(submodules), 1)
+ self.assertEqual(submodules[0], SUBM_PATH)
+
++ @unittest.skip('requires Internet access')
+ def test_submodule_open(self):
+ s = self.repo.lookup_submodule(SUBM_PATH)
+ self.repo.init_submodules()
+ self.repo.update_submodules()
+ r = s.open()
+ self.assertIsNotNone(r)
+ self.assertEqual(str(r.head.target), SUBM_HEAD_SHA)
+@@ -69,28 +70,31 @@ class SubmoduleTest(utils.SubmoduleRepoTestCase):
+ s = self.repo.lookup_submodule(SUBM_PATH)
+ self.assertEqual(SUBM_PATH, s.path)
+
+ def test_url(self):
+ s = self.repo.lookup_submodule(SUBM_PATH)
+ self.assertEqual(SUBM_URL, s.url)
+
++ @unittest.skip('requires Internet access')
+ def test_init_and_update(self):
+ subrepo_file_path = os.path.join(self.repo_path, 'submodule', 'setup.py')
+ self.assertFalse(os.path.exists(subrepo_file_path))
+ self.repo.init_submodules()
+ self.repo.update_submodules()
+ self.assertTrue(os.path.exists(subrepo_file_path))
+
++ @unittest.skip('requires Internet access')
+ def test_specified_update(self):
+ subrepo_file_path = os.path.join(self.repo_path, 'submodule', 'setup.py')
+ self.assertFalse(os.path.exists(subrepo_file_path))
+ self.repo.init_submodules(submodules=['submodule'])
+ self.repo.update_submodules(submodules=['submodule'])
+ self.assertTrue(os.path.exists(subrepo_file_path))
+
++ @unittest.skip('requires Internet access')
+ def test_oneshot_update(self):
+ subrepo_file_path = os.path.join(self.repo_path, 'submodule', 'setup.py')
+ self.assertFalse(os.path.exists(subrepo_file_path))
+ self.repo.update_submodules(init=True)
+ self.assertTrue(os.path.exists(subrepo_file_path))
+
+ if __name__ == '__main__':
+--
+2.15.0
+
diff --git a/dev-python/pygit2/pygit2-0.26.1.ebuild b/dev-python/pygit2/pygit2-0.26.1.ebuild
new file mode 100644
index 00000000000..d121e89b721
--- /dev/null
+++ b/dev-python/pygit2/pygit2-0.26.1.ebuild
@@ -0,0 +1,30 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+PYTHON_COMPAT=( python2_7 python3_{4,5,6} )
+
+inherit distutils-r1 eapi7-ver
+
+DESCRIPTION="Python bindings for libgit2"
+HOMEPAGE="https://github.com/libgit2/pygit2 https://pypi.python.org/pypi/pygit2"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ =dev-libs/libgit2-$(ver_cut 1-2)*
+ >=dev-python/cffi-1.0:=[${PYTHON_USEDEP}]
+ dev-python/six[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/pygit2-0.26.1-internet-tests.patch
+)
+
+python_test() {
+ esetup.py test --args='-v'
+}
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pygit2/, dev-python/pygit2/files/
@ 2021-09-28 6:20 Michał Górny
0 siblings, 0 replies; 3+ messages in thread
From: Michał Górny @ 2021-09-28 6:20 UTC (permalink / raw
To: gentoo-commits
commit: 3a6516ace7f757905a3a1e14fe68d61e29faac11
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Sep 28 05:52:57 2021 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Sep 28 06:20:44 2021 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=3a6516ac
dev-python/pygit2: Enable libgit2 1.2.0 support
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
.../pygit2/files/pygit2-1.6.1-libgit2-1.2.0.patch | 48 ++++++++++++++++++++++
dev-python/pygit2/pygit2-1.6.1-r2.ebuild | 45 ++++++++++++++++++++
2 files changed, 93 insertions(+)
diff --git a/dev-python/pygit2/files/pygit2-1.6.1-libgit2-1.2.0.patch b/dev-python/pygit2/files/pygit2-1.6.1-libgit2-1.2.0.patch
new file mode 100644
index 00000000000..d3e097ba62b
--- /dev/null
+++ b/dev-python/pygit2/files/pygit2-1.6.1-libgit2-1.2.0.patch
@@ -0,0 +1,48 @@
+From dcde9eff5950492ab0d2565a07fd18d765332a96 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?J=2E=20David=20Ib=C3=A1=C3=B1ez?= <jdavid.ibp@gmail.com>
+Date: Thu, 16 Sep 2021 11:19:04 +0200
+Subject: [PATCH] Upgrade to libgit2 1.2
+
+Closes #1089
+---
+ Makefile | 2 +-
+ build.sh | 14 +++++++-------
+ pygit2/decl/remote.h | 2 ++
+ src/types.h | 4 ++--
+ 10 files changed, 29 insertions(+), 25 deletions(-)
+
+diff --git a/pygit2/decl/remote.h b/pygit2/decl/remote.h
+index ff84371c3e1ce81a7e9914d4d4592638f41376bb..4e912c065cd6eaf19ef6d0304b0fd8f646edbff4 100644
+--- a/pygit2/decl/remote.h
++++ b/pygit2/decl/remote.h
+@@ -23,6 +23,7 @@ typedef struct {
+
+ typedef int (*git_push_negotiation)(const git_push_update **updates, size_t len, void *payload);
+ typedef int (*git_push_update_reference_cb)(const char *refname, const char *status, void *data);
++typedef int (*git_remote_ready_cb)(git_remote *remote, int direction, void *payload);
+ typedef int (*git_url_resolve_cb)(git_buf *url_resolved, const char *url, int direction, void *payload);
+
+ struct git_remote_callbacks {
+@@ -38,6 +39,7 @@ struct git_remote_callbacks {
+ git_push_update_reference_cb push_update_reference;
+ git_push_negotiation push_negotiation;
+ git_transport_cb transport;
++ git_remote_ready_cb remote_ready;
+ void *payload;
+ git_url_resolve_cb resolve_url;
+ };
+diff --git a/src/types.h b/src/types.h
+index ff967b81f76688f8f0958638d99a06f7bbacb99c..89ad3a00149a1326c3edfa20d2d69d629cb1d2a2 100644
+--- a/src/types.h
++++ b/src/types.h
+@@ -32,8 +32,8 @@
+ #include <Python.h>
+ #include <git2.h>
+
+-#if !(LIBGIT2_VER_MAJOR == 1 && LIBGIT2_VER_MINOR == 1)
+-#error You need a compatible libgit2 version (1.1.x)
++#if !(LIBGIT2_VER_MAJOR == 1 && LIBGIT2_VER_MINOR == 2)
++#error You need a compatible libgit2 version (1.2.x)
+ #endif
+
+ /*
diff --git a/dev-python/pygit2/pygit2-1.6.1-r2.ebuild b/dev-python/pygit2/pygit2-1.6.1-r2.ebuild
new file mode 100644
index 00000000000..fa7f6c1fbf6
--- /dev/null
+++ b/dev-python/pygit2/pygit2-1.6.1-r2.ebuild
@@ -0,0 +1,45 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+PYTHON_COMPAT=( python3_{8..10} )
+inherit distutils-r1
+
+DESCRIPTION="Python bindings for libgit2"
+HOMEPAGE="https://github.com/libgit2/pygit2 https://pypi.org/project/pygit2/"
+SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}.tar.gz"
+
+LICENSE="GPL-2-with-linking-exception"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+
+RDEPEND="
+ =dev-libs/libgit2-1.2*:=
+ dev-python/cached-property[${PYTHON_USEDEP}]
+ >=dev-python/cffi-1.0:=[${PYTHON_USEDEP}]
+"
+DEPEND="${RDEPEND}"
+
+distutils_enable_tests pytest
+
+src_prepare() {
+ local PATCHES=(
+ "${FILESDIR}"/${P}-libgit2-1.2.0.patch
+ )
+
+ distutils-r1_src_prepare
+
+ # unconditionally prevent it from using network
+ sed -i -e '/has_network/s:True:False:' test/utils.py || die
+
+ # we need to move them away to prevent pytest from forcing '..'
+ # for imports
+ mkdir hack || die
+ mv test hack/ || die
+ ln -s hack/test test || die
+}
+
+python_test() {
+ epytest hack/test
+}
^ permalink raw reply related [flat|nested] 3+ messages in thread
* [gentoo-commits] repo/gentoo:master commit in: dev-python/pygit2/, dev-python/pygit2/files/
@ 2024-11-19 14:02 Michał Górny
0 siblings, 0 replies; 3+ messages in thread
From: Michał Górny @ 2024-11-19 14:02 UTC (permalink / raw
To: gentoo-commits
commit: 1754434f5cb77275b97952e96dee0ed3364fb563
Author: Michał Górny <mgorny <AT> gentoo <DOT> org>
AuthorDate: Tue Nov 19 14:02:00 2024 +0000
Commit: Michał Górny <mgorny <AT> gentoo <DOT> org>
CommitDate: Tue Nov 19 14:02:28 2024 +0000
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=1754434f
dev-python/pygit2: Backport gcc-14 build fix
Closes: https://bugs.gentoo.org/942207
Signed-off-by: Michał Górny <mgorny <AT> gentoo.org>
dev-python/pygit2/files/pygit2-1.16.0-gcc-14.patch | 37 ++++++++++++++++++++++
dev-python/pygit2/pygit2-1.16.0.ebuild | 6 ++++
2 files changed, 43 insertions(+)
diff --git a/dev-python/pygit2/files/pygit2-1.16.0-gcc-14.patch b/dev-python/pygit2/files/pygit2-1.16.0-gcc-14.patch
new file mode 100644
index 000000000000..5bcd93320585
--- /dev/null
+++ b/dev-python/pygit2/files/pygit2-1.16.0-gcc-14.patch
@@ -0,0 +1,37 @@
+From eba710e45bb40e18641c6531394bb46631e7f295 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Mat=C4=9Bj=20Cepl?= <mcepl@cepl.eu>
+Date: Tue, 5 Nov 2024 12:26:44 +0100
+Subject: [PATCH] fix: use correct type of the ninth parameter of
+ git_commit_create()
+
+It should be `const git_commit **`, not `git_commit **`.
+
+Breaks the build with GCC-14.
+---
+ src/repository.c | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git a/src/repository.c b/src/repository.c
+index d1d42ecf..3b5d57a1 100644
+--- a/src/repository.c
++++ b/src/repository.c
+@@ -1065,7 +1065,8 @@ Repository_create_commit(Repository *self, PyObject *args)
+
+ err = git_commit_create(&oid, self->repo, update_ref,
+ py_author->signature, py_committer->signature,
+- encoding, message, tree, parent_count, parents);
++ encoding, message, tree, parent_count,
++ (const git_commit **)parents);
+ if (err < 0) {
+ Error_set(err);
+ goto out;
+@@ -1147,7 +1148,8 @@ Repository_create_commit_string(Repository *self, PyObject *args)
+
+ err = git_commit_create_buffer(&buf, self->repo,
+ py_author->signature, py_committer->signature,
+- encoding, message, tree, parent_count, parents);
++ encoding, message, tree, parent_count,
++ (const git_commit **)parents);
+ if (err < 0) {
+ Error_set(err);
+ goto out;
diff --git a/dev-python/pygit2/pygit2-1.16.0.ebuild b/dev-python/pygit2/pygit2-1.16.0.ebuild
index d6fdc0982742..87c95816f425 100644
--- a/dev-python/pygit2/pygit2-1.16.0.ebuild
+++ b/dev-python/pygit2/pygit2-1.16.0.ebuild
@@ -34,6 +34,12 @@ RDEPEND="
distutils_enable_tests pytest
src_prepare() {
+ local PATCHES=(
+ # https://bugs.gentoo.org/942207
+ # https://github.com/libgit2/pygit2/commit/eba710e45bb40e18641c6531394bb46631e7f295
+ "${FILESDIR}/${P}-gcc-14.patch"
+ )
+
distutils-r1_src_prepare
# unconditionally prevent it from using network
^ permalink raw reply related [flat|nested] 3+ messages in thread
end of thread, other threads:[~2024-11-19 14:02 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-19 14:02 [gentoo-commits] repo/gentoo:master commit in: dev-python/pygit2/, dev-python/pygit2/files/ Michał Górny
-- strict thread matches above, loose matches on Subject: below --
2021-09-28 6:20 Michał Górny
2017-11-21 17:48 Michał Górny
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox