Full cleanup of pkg_resources (#9797)

Fixes #9606

This PRs removes some elements that were related to pkg_resources dependency and its deprecation.
This commit is contained in:
Adrien Ferrand
2023-11-13 15:50:32 -08:00
committed by GitHub
parent d8392bf394
commit 5f67bb99a8
7 changed files with 8 additions and 21 deletions
+1 -1
View File
@@ -524,7 +524,7 @@ ignored-classes=optparse.Values,thread._local,_thread._local,argparse.Namespace,
# List of module names for which member attributes should not be checked # List of module names for which member attributes should not be checked
# (useful for modules/projects where namespaces are manipulated during runtime # (useful for modules/projects where namespaces are manipulated during runtime
# and thus existing member attributes cannot be deduced by static analysis # and thus existing member attributes cannot be deduced by static analysis
ignored-modules=pkg_resources,confargparse,argparse ignored-modules=confargparse,argparse
# Show a hint with possible names when a member name was not found. The aspect # Show a hint with possible names when a member name was not found. The aspect
# of finding the hint is based on edit distance. # of finding the hint is based on edit distance.
@@ -1,7 +1,6 @@
"""Tests for certbot_dns_gehirn._internal.dns_gehirn.""" """Tests for certbot_dns_gehirn._internal.dns_gehirn."""
import sys import sys
import unittest
from unittest import mock from unittest import mock
import pytest import pytest
@@ -22,6 +22,7 @@ class AuthenticatorTest(test_util.TempDirTestCase,
DOMAIN_NOT_FOUND = Exception('Domain example.com not found') DOMAIN_NOT_FOUND = Exception('Domain example.com not found')
LOGIN_ERROR = HTTPError('403 Client Error: Forbidden for url: https://eu.api.ovh.com/1.0/...', response=Response()) LOGIN_ERROR = HTTPError('403 Client Error: Forbidden for url: https://eu.api.ovh.com/1.0/...', response=Response())
def setUp(self): def setUp(self):
super().setUp() super().setUp()
+4 -4
View File
@@ -328,8 +328,8 @@ Writing your own plugin
for one example of that. for one example of that.
Certbot client supports dynamic discovery of plugins through the Certbot client supports dynamic discovery of plugins through the
`setuptools entry points`_ using the `certbot.plugins` group. This `importlib.metadata entry points`_ using the `certbot.plugins` group.
way you can, for example, create a custom implementation of This way you can, for example, create a custom implementation of
`~certbot.interfaces.Authenticator` or the `~certbot.interfaces.Authenticator` or the
`~certbot.interfaces.Installer` without having to merge it `~certbot.interfaces.Installer` without having to merge it
with the core upstream source code. An example is provided in with the core upstream source code. An example is provided in
@@ -352,8 +352,8 @@ users install it system-wide with `pip install`. Note that this will
only work for users who have Certbot installed from OS packages or via only work for users who have Certbot installed from OS packages or via
pip. pip.
.. _`setuptools entry points`: .. _`importlib.metadata entry points`:
https://setuptools.readthedocs.io/en/latest/pkg_resources.html#entry-points https://importlib-metadata.readthedocs.io/en/latest/using.html#entry-points
Writing your own plugin snap Writing your own plugin snap
~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+1 -9
View File
@@ -21,13 +21,7 @@
# updated. # updated.
# 4) Ignore our own PendingDeprecationWarning about update_symlinks soon to be dropped. # 4) Ignore our own PendingDeprecationWarning about update_symlinks soon to be dropped.
# See https://github.com/certbot/certbot/issues/6284. # See https://github.com/certbot/certbot/issues/6284.
# 5) Ignore pkg_resources.declare_namespace used in a large number of Google's Python # 5) Ignore DeprecationWarning for datetime.utcfromtimestamp() triggered
# libs. e.g. https://github.com/googleapis/google-auth-library-python/issues/1229.
# It is also is used in sphinxcontrib-devhelp 1.0.2 which as of writing this
# is the latest version of that library. See
# https://github.com/sphinx-doc/sphinxcontrib-devhelp/blob/1.0.2/setup.py#L69.
# 6) Ignore DeprecationWarning from using pkg_resources API
# 7) Ignore DeprecationWarning for datetime.utcfromtimestamp() triggered
# when importing the pytz.tzinfo module # when importing the pytz.tzinfo module
# https://github.com/stub42/pytz/issues/105 # https://github.com/stub42/pytz/issues/105
filterwarnings = filterwarnings =
@@ -36,6 +30,4 @@ filterwarnings =
ignore:.*rsyncdir:DeprecationWarning ignore:.*rsyncdir:DeprecationWarning
ignore:'urllib3.contrib.pyopenssl:DeprecationWarning:requests_toolbelt ignore:'urllib3.contrib.pyopenssl:DeprecationWarning:requests_toolbelt
ignore:update_symlinks is deprecated:PendingDeprecationWarning ignore:update_symlinks is deprecated:PendingDeprecationWarning
ignore:.*declare_namespace\(':DeprecationWarning
ignore:pkg_resources is deprecated as an API:DeprecationWarning
ignore:.*datetime.utcfromtimestamp\(\) is deprecated:DeprecationWarning:pytz.tzinfo ignore:.*datetime.utcfromtimestamp\(\) is deprecated:DeprecationWarning:pytz.tzinfo
-5
View File
@@ -70,11 +70,6 @@ cryptography = "!= 37.0.3"
# https://github.com/python-poetry/poetry-plugin-export/issues/168 is resolved. # https://github.com/python-poetry/poetry-plugin-export/issues/168 is resolved.
poetry = "<1.3.0" poetry = "<1.3.0"
# setuptools 67.5.0 deprecated pkg_resources which we still use. Let's pin it
# back until this is fixed. Doing this work is being tracked by
# https://github.com/certbot/certbot/issues/9606.
setuptools = "<67.5.0"
# Branch 4.x of tox introduces backward incompatibility changes. The tox.ini # Branch 4.x of tox introduces backward incompatibility changes. The tox.ini
# file in the project must be adapted accordingly before moving out of the 3.x # file in the project must be adapted accordingly before moving out of the 3.x
# branch. Once done, the following constraint should become tox >= 4 to keep # branch. Once done, the following constraint should become tox >= 4 to keep
+1 -1
View File
@@ -147,7 +147,7 @@ s3transfer==0.7.0 ; python_version >= "3.8" and python_version < "4.0"
secretstorage==3.3.3 ; python_version >= "3.8" and python_version < "4.0" and sys_platform == "linux" secretstorage==3.3.3 ; python_version >= "3.8" and python_version < "4.0" and sys_platform == "linux"
semantic-version==2.10.0 ; python_version >= "3.8" and python_version < "4.0" semantic-version==2.10.0 ; python_version >= "3.8" and python_version < "4.0"
setuptools-rust==1.7.0 ; python_version >= "3.8" and python_version < "4.0" setuptools-rust==1.7.0 ; python_version >= "3.8" and python_version < "4.0"
setuptools==67.4.0 ; python_version >= "3.8" and python_version < "4.0" setuptools==68.2.2 ; python_version >= "3.8" and python_version < "4.0"
shellingham==1.5.3 ; python_version >= "3.8" and python_version < "4.0" shellingham==1.5.3 ; python_version >= "3.8" and python_version < "4.0"
six==1.16.0 ; python_version >= "3.8" and python_version < "4.0" six==1.16.0 ; python_version >= "3.8" and python_version < "4.0"
snowballstemmer==2.2.0 ; python_version >= "3.8" and python_version < "4.0" snowballstemmer==2.2.0 ; python_version >= "3.8" and python_version < "4.0"