public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
* [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