portage-stable dev-python/certifi: Drop unused package

It used to be a dependency of dev-python/setuptools, but it was
dropped.
This commit is contained in:
Krzesimir Nowak 2024-01-03 16:09:15 +01:00
parent 893b56226b
commit ff5b7f1133
4 changed files with 0 additions and 232 deletions

View File

@ -1 +0,0 @@
DIST certifi-system-store-3021.3.16.gh.tar.gz 13784 BLAKE2B c0c2322fe298d363c4ef4dada2c0db8837bf7a32d86a7b54a1b45bb3dd3c99d732b2612f25495f4a59d9692f896e2b962e7057fa5fec9998724476db48f90c2a SHA512 44953ed8a3deb5fa4aff3f74afa557219e042acea395e9cdebfd26fd43ce0bdeca07c6b6dfe91977f88852e7674b94337b93c4d78fd2da6f47a6187fa46d6668

View File

@ -1,54 +0,0 @@
# Copyright 1999-2023 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
# please keep this ebuild at EAPI 7 -- sys-apps/portage dep
EAPI=7
DISTUTILS_USE_PEP517=setuptools
PYTHON_COMPAT=( python3_{10..12} pypy3 )
inherit distutils-r1
MY_P=certifi-system-store-${PV}
DESCRIPTION="A certifi hack to use system trust store on Linux/FreeBSD"
HOMEPAGE="
https://github.com/tiran/certifi-system-store/
https://pypi.org/project/certifi-system-store/
"
SRC_URI="
https://github.com/tiran/certifi-system-store/archive/v${PV}.tar.gz
-> ${MY_P}.gh.tar.gz
"
S=${WORKDIR}/${MY_P}
LICENSE="MPL-2.0"
SLOT="0"
KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86 ~amd64-linux ~x86-linux ~arm64-macos ~ppc-macos ~x64-macos ~x64-solaris"
RDEPEND="
app-misc/ca-certificates
"
PATCHES=(
"${FILESDIR}"/${P}-use-importlib.patch
)
EPYTEST_IGNORE=(
# requires Internet
tests/test_requests.py
)
distutils_enable_tests pytest
src_prepare() {
sed -i -e "s^/etc^${EPREFIX}/etc^" src/certifi/core.py || die
distutils-r1_src_prepare
}
python_compile() {
distutils-r1_python_compile
cd "${BUILD_DIR}/install$(python_get_sitedir)" || die
local distinfo=( certifi_system_store*.dist-info )
[[ -d ${distinfo} ]] || die
ln -v -s "${distinfo}" "${distinfo/_system_store}" || die
}

View File

@ -1,164 +0,0 @@
1. https://github.com/tiran/certifi-system-store/commit/6945f34b7be433dbf22946825cdb225d5d2136d5
2. https://github.com/tiran/certifi-system-store/pull/21
Avoid repeated instances of https://bugs.gentoo.org/878045 when a package
has too-strict requirements and then affects other, unrelated Python
packages on the system.
From 6945f34b7be433dbf22946825cdb225d5d2136d5 Mon Sep 17 00:00:00 2001
From: Christian Heimes <christian@python.org>
Date: Tue, 16 Mar 2021 16:00:08 +0100
Subject: [PATCH] Relax patch checks (#13)
- only check that version matches, not files are identical
- compare base directories with samefile. This fixes a problem with
lib64 symlink in virtual envs.
Signed-off-by: Christian Heimes <christian@python.org>
--- a/src/certifi/_patch.py
+++ b/src/certifi/_patch.py
@@ -28,7 +28,7 @@ def _patch_dist_info():
except pkg_resources.DistributionNotFound:
pass
else:
- if os.path.samefile(css_dist.egg_info, certifi_dist.egg_info):
+ if certifi_dist.version == css_dist.version:
return False, css_dist.egg_info, certifi_dist.egg_info
else:
# blow away certifi's dist-info
@@ -55,7 +55,9 @@ def _patch_dist_info():
certifi_dir = os.path.dirname(os.path.abspath(__file__))
dist_dir = os.path.abspath(certifi_dist.egg_info)
- if os.path.dirname(certifi_dir) != os.path.dirname(dist_dir):
+ # compare with samefile instead of string comparison to avoid false
+ # negatives caused by venv lib64 / lib symlinks
+ if not os.path.samefile(os.path.dirname(certifi_dir), os.path.dirname(dist_dir)):
raise RuntimeError(
f"'{certifi_dir} and {dist_dir} have different parent directories."
)
From cdec6d20b5d716d9853e72a1519a304070395498 Mon Sep 17 00:00:00 2001
From: Christian Heimes <christian@python.org>
Date: Wed, 22 Jun 2022 10:08:18 +0200
Subject: [PATCH] Use importlib on Python 3.8+
--- a/setup.cfg
+++ b/setup.cfg
@@ -38,8 +40,9 @@ packages = certifi
include_package_data = True
zip_safe = True
setup_requires = setuptools
-# hack to prevent installation on unsupported platforms Windows and macOS
install_requires =
+ setuptools; python_version < "3.8"
+ # hack to prevent installation on unsupported platforms Windows and macOS
certifi-system-store > 4000; sys_platform == "win32" or sys_platform == "darwin"
python_requires = >=3.6
--- a/src/certifi/_patch.py
+++ b/src/certifi/_patch.py
@@ -1,7 +1,31 @@
import os
import shutil
import sys
-import pkg_resources
+
+if sys.version_info >= (3, 8):
+ from importlib import metadata
+
+ PackageNotFoundError = metadata.PackageNotFoundError
+
+ def _get_distinfo(name):
+ dist = metadata.distribution(name)
+ egg_info = dist._path
+ return dist.version, egg_info
+
+ def _invalidate_caches():
+ pass
+
+else:
+ import pkg_resources
+
+ PackageNotFoundError = pkg_resources.DistributionNotFound
+
+ def _get_distinfo(name):
+ dist = pkg_resources.get_distribution(name)
+ return dist.version, dist.egg_info
+
+ def _invalidate_caches():
+ pkg_resources.working_set.__init__()
def _relsymlink(target, linkname):
@@ -22,22 +46,22 @@ def _relsymlink(target, linkname):
def _patch_dist_info():
# distribution object for the canonical project name
- css_dist = pkg_resources.get_distribution("certifi_system_store")
+ css_version, css_egg_info = _get_distinfo("certifi_system_store")
try:
- certifi_dist = pkg_resources.get_distribution("certifi")
- except pkg_resources.DistributionNotFound:
+ certifi_version, certifi_egg_info = _get_distinfo("certifi")
+ except PackageNotFoundError:
pass
else:
- if certifi_dist.version == css_dist.version:
- return False, css_dist.egg_info, certifi_dist.egg_info
+ if certifi_version == css_version:
+ return False, css_egg_info, certifi_egg_info
else:
# blow away certifi's dist-info
- shutil.rmtree(certifi_dist.egg_info)
+ shutil.rmtree(certifi_egg_info)
# reset current working set, so pkg_resources can pick up our hack
- pkg_resources.working_set.__init__()
+ _invalidate_caches()
# certifi-system-store's dist-info
- abs_css_distinfodir = os.path.abspath(css_dist.egg_info)
+ abs_css_distinfodir = os.path.abspath(css_egg_info)
css_basedir, css_distinfodir = os.path.split(abs_css_distinfodir)
# certifi's dist-info in same base directory
@@ -48,12 +72,12 @@ def _patch_dist_info():
_relsymlink(target=abs_css_distinfodir, linkname=abs_certifi_distinfodir)
# get dist info from refreshed working set
- css_dist = pkg_resources.get_distribution("certifi_system_store")
- certifi_dist = pkg_resources.get_distribution("certifi")
+ css_version, css_egg_info = _get_distinfo("certifi_system_store")
+ certifi_version, certifi_egg_info = _get_distinfo("certifi")
# check that certifi dist-info is in same site-packages as certifi package
certifi_dir = os.path.dirname(os.path.abspath(__file__))
- dist_dir = os.path.abspath(certifi_dist.egg_info)
+ dist_dir = os.path.abspath(certifi_egg_info)
# compare with samefile instead of string comparison to avoid false
# negatives caused by venv lib64 / lib symlinks
@@ -65,17 +89,17 @@ def _patch_dist_info():
# double check versions
_verify_dist_info()
- return True, css_dist.egg_info, certifi_dist.egg_info
+ return True, css_egg_info, certifi_egg_info
def _verify_dist_info():
- css_dist = pkg_resources.get_distribution("certifi_system_store")
+ css_version, css_egg_info = _get_distinfo("certifi_system_store")
try:
- certifi_dist = pkg_resources.get_distribution("certifi")
- except pkg_resources.DistributionNotFound as e:
+ certifi_version, certifi_egg_info = _get_distinfo("certifi")
+ except PackageNotFoundError as e:
raise RuntimeError(e)
else:
- if certifi_dist.version != css_dist.version:
+ if certifi_version != css_version:
raise RuntimeError(
f"'certifi.dist-info' is not an alias to "
f"'certifi_system_store.dist-info'. "

View File

@ -1,13 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "https://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
<maintainer type="project">
<email>python@gentoo.org</email>
<name>Python</name>
</maintainer>
<stabilize-allarches/>
<upstream>
<remote-id type="github">tiran/certifi-system-store</remote-id>
<remote-id type="pypi">certifi-system-store</remote-id>
</upstream>
</pkgmetadata>