diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/apache_util.py python-certbot-apache-1.21.0/certbot_apache/_internal/apache_util.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/apache_util.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/apache_util.py 2021-11-02 21:27:18.000000000 +0000 @@ -153,13 +153,10 @@ return {} for match in matches: - if match.count("=") > 1: - logger.error("Unexpected number of equal signs in " - "runtime config dump.") - raise errors.PluginError( - "Error parsing Apache runtime variables") - parts = match.partition("=") - variables[parts[0]] = parts[2] + # Value could also contain = so split only once + parts = match.split('=', 1) + value = parts[1] if len(parts) == 2 else '' + variables[parts[0]] = value return variables diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/configurator.py python-certbot-apache-1.21.0/certbot_apache/_internal/configurator.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/configurator.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/configurator.py 2021-11-02 21:27:18.000000000 +0000 @@ -121,7 +121,7 @@ """Apache configurator. :ivar config: Configuration. - :type config: :class:`~certbot.interfaces.IConfig` + :type config: certbot.configuration.NamespaceConfig :ivar parser: Handles low level parsing :type parser: :class:`~certbot_apache._internal.parser` diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/constants.py python-certbot-apache-1.21.0/certbot_apache/_internal/constants.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/constants.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/constants.py 2021-11-02 21:27:18.000000000 +0000 @@ -4,11 +4,13 @@ from certbot.compat import os MOD_SSL_CONF_DEST = "options-ssl-apache.conf" -"""Name of the mod_ssl config file as saved in `IConfig.config_dir`.""" +"""Name of the mod_ssl config file as saved +in `certbot.configuration.NamespaceConfig.config_dir`.""" UPDATED_MOD_SSL_CONF_DIGEST = ".updated-options-ssl-apache-conf-digest.txt" -"""Name of the hash of the updated or informed mod_ssl_conf as saved in `IConfig.config_dir`.""" +"""Name of the hash of the updated or informed mod_ssl_conf as saved +in `certbot.configuration.NamespaceConfig.config_dir`.""" # NEVER REMOVE A SINGLE HASH FROM THIS LIST UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING! ALL_SSL_OPTIONS_HASHES = [ diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/http_01.py python-certbot-apache-1.21.0/certbot_apache/_internal/http_01.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/http_01.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/http_01.py 2021-11-02 21:27:18.000000000 +0000 @@ -107,7 +107,7 @@ if any(a.is_wildcard() or a.get_port() == http_port for a in vhost.addrs): found = True - # If there's at least one elgible VirtualHost, also add all unnamed VirtualHosts + # If there's at least one eligible VirtualHost, also add all unnamed VirtualHosts # because they might match at runtime (#8890) if found: selected_vhosts += self._unnamed_vhosts() diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/interfaces.py python-certbot-apache-1.21.0/certbot_apache/_internal/interfaces.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/interfaces.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/interfaces.py 2021-11-02 21:27:18.000000000 +0000 @@ -312,7 +312,7 @@ """ Sets the sequence of parameters for this ParserNode object without whitespaces. While the whitespaces for parameters are discarded when using - this method, the whitespacing preceeding the ParserNode itself should be + this method, the whitespacing preceding the ParserNode itself should be kept intact. :param list parameters: sequence of parameters @@ -364,7 +364,7 @@ def add_child_block(self, name, parameters=None, position=None): """ Adds a new BlockNode child node with provided values and marks the callee - BlockNode dirty. This is used to add new children to the AST. The preceeding + BlockNode dirty. This is used to add new children to the AST. The preceding whitespaces should not be added based on the ancestor or siblings for the newly created object. This is to match the current behavior of the legacy parser implementation. @@ -385,7 +385,7 @@ """ Adds a new DirectiveNode child node with provided values and marks the callee BlockNode dirty. This is used to add new children to the AST. The - preceeding whitespaces should not be added based on the ancestor or siblings + preceding whitespaces should not be added based on the ancestor or siblings for the newly created object. This is to match the current behavior of the legacy parser implementation. @@ -406,7 +406,7 @@ """ Adds a new CommentNode child node with provided value and marks the callee BlockNode dirty. This is used to add new children to the AST. The - preceeding whitespaces should not be added based on the ancestor or siblings + preceding whitespaces should not be added based on the ancestor or siblings for the newly created object. This is to match the current behavior of the legacy parser implementation. diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/override_centos.py python-certbot-apache-1.21.0/certbot_apache/_internal/override_centos.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/override_centos.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/override_centos.py 2021-11-02 21:27:18.000000000 +0000 @@ -51,7 +51,7 @@ def _try_restart_fedora(self): """ - Tries to restart httpd using systemctl to generate the self signed keypair. + Tries to restart httpd using systemctl to generate the self signed key pair. """ try: diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/override_fedora.py python-certbot-apache-1.21.0/certbot_apache/_internal/override_fedora.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/override_fedora.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/override_fedora.py 2021-11-02 21:27:18.000000000 +0000 @@ -43,7 +43,7 @@ def _try_restart_fedora(self): """ - Tries to restart httpd using systemctl to generate the self signed keypair. + Tries to restart httpd using systemctl to generate the self signed key pair. """ try: util.run_script(['systemctl', 'restart', 'httpd']) diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/override_void.py python-certbot-apache-1.21.0/certbot_apache/_internal/override_void.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/override_void.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/override_void.py 2021-11-02 21:27:18.000000000 +0000 @@ -1,12 +1,8 @@ """ Distribution specific override class for Void Linux """ -import zope.interface - -from certbot import interfaces from certbot_apache._internal import configurator from certbot_apache._internal.configurator import OsOptions -@zope.interface.provider(interfaces.IPluginFactory) class VoidConfigurator(configurator.ApacheConfigurator): """Void Linux specific ApacheConfigurator override class""" diff -Nru python-certbot-apache-1.18.0/certbot_apache/_internal/parser.py python-certbot-apache-1.21.0/certbot_apache/_internal/parser.py --- python-certbot-apache-1.18.0/certbot_apache/_internal/parser.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache/_internal/parser.py 2021-11-02 21:27:18.000000000 +0000 @@ -15,7 +15,7 @@ try: from augeas import Augeas except ImportError: # pragma: no cover - Augeas = None # type: ignore + Augeas = None logger = logging.getLogger(__name__) diff -Nru python-certbot-apache-1.18.0/certbot_apache.egg-info/PKG-INFO python-certbot-apache-1.21.0/certbot_apache.egg-info/PKG-INFO --- python-certbot-apache-1.18.0/certbot_apache.egg-info/PKG-INFO 2021-08-03 20:14:03.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache.egg-info/PKG-INFO 2021-11-02 21:27:43.000000000 +0000 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: certbot-apache -Version: 1.18.0 +Version: 1.21.0 Summary: Apache plugin for Certbot Home-page: https://github.com/letsencrypt/letsencrypt Author: Certbot Project diff -Nru python-certbot-apache-1.18.0/certbot_apache.egg-info/requires.txt python-certbot-apache-1.21.0/certbot_apache.egg-info/requires.txt --- python-certbot-apache-1.18.0/certbot_apache.egg-info/requires.txt 2021-08-03 20:14:03.000000000 +0000 +++ python-certbot-apache-1.21.0/certbot_apache.egg-info/requires.txt 2021-11-02 21:27:43.000000000 +0000 @@ -1,9 +1,7 @@ -acme>=1.18.0 -certbot>=1.18.0 +acme>=1.21.0 +certbot>=1.21.0 python-augeas setuptools>=39.0.1 -zope.component -zope.interface [dev] apacheconfig>=0.3.2 diff -Nru python-certbot-apache-1.18.0/debian/changelog python-certbot-apache-1.21.0/debian/changelog --- python-certbot-apache-1.18.0/debian/changelog 2021-08-18 04:07:00.000000000 +0000 +++ python-certbot-apache-1.21.0/debian/changelog 2021-11-21 05:57:13.000000000 +0000 @@ -1,3 +1,14 @@ +python-certbot-apache (1.21.0-1) unstable; urgency=medium + + * Add new signing keys, see bug #999503 + * New upstream version 1.21.0 + * Match changes to deps from upstream. + * Bump S-V; no changes needed + * Switch to calling pytest via dh_auto_test + * Bump copyright year in d/copyright for d/* + + -- Harlan Lieberman-Berg Sun, 21 Nov 2021 00:57:13 -0500 + python-certbot-apache (1.18.0-1) unstable; urgency=medium * New upstream version 1.18.0 diff -Nru python-certbot-apache-1.18.0/debian/control python-certbot-apache-1.21.0/debian/control --- python-certbot-apache-1.18.0/debian/control 2021-08-18 04:04:37.000000000 +0000 +++ python-certbot-apache-1.21.0/debian/control 2021-11-21 05:56:15.000000000 +0000 @@ -6,9 +6,9 @@ Build-Depends: debhelper-compat (= 13), dh-python, python3, - python3-acme-abi-1 (>= 1.18), + python3-acme-abi-1 (>= 1.21), python3-augeas, - python3-certbot-abi-1 (>= 1.18), + python3-certbot-abi-1 (>= 1.21), python3-configargparse, python3-openssl, python3-parsedatetime, @@ -18,9 +18,7 @@ python3-setuptools, python3-six, python3-tz, - python3-zope.component, - python3-zope.interface -Standards-Version: 4.5.1 +Standards-Version: 4.6.0.1 Vcs-Browser: https://salsa.debian.org/letsencrypt-team/certbot/certbot-apache Vcs-Git: https://salsa.debian.org/letsencrypt-team/certbot/certbot-apache.git Homepage: https://letsencrypt.org/ @@ -30,7 +28,7 @@ Architecture: all Depends: apache2, certbot, - python3-certbot-abi-1 (>= 1.18), + python3-certbot-abi-1 (>= 1.21), ${misc:Depends}, ${python3:Depends} Suggests: python-certbot-apache-doc diff -Nru python-certbot-apache-1.18.0/debian/copyright python-certbot-apache-1.21.0/debian/copyright --- python-certbot-apache-1.18.0/debian/copyright 2018-05-26 17:55:07.000000000 +0000 +++ python-certbot-apache-1.21.0/debian/copyright 2021-11-21 05:57:13.000000000 +0000 @@ -7,7 +7,7 @@ License: Apache-2.0 Files: debian/* -Copyright: 2015, Harlan Lieberman-Berg +Copyright: 2015-2021, Harlan Lieberman-Berg 2015, Francois Marier License: Apache-2.0 diff -Nru python-certbot-apache-1.18.0/debian/rules python-certbot-apache-1.21.0/debian/rules --- python-certbot-apache-1.18.0/debian/rules 2020-01-25 01:01:22.000000000 +0000 +++ python-certbot-apache-1.21.0/debian/rules 2021-11-21 05:52:46.000000000 +0000 @@ -8,8 +8,3 @@ override_dh_auto_install: dh_auto_install rm -rf $(CURDIR)/debian/python3-certbot-apache/usr/lib/python*/dist-packages/certbot_apache/tests/testdata - -override_dh_auto_test: -ifeq (,$(filter nocheck,$(DEB_BUILD_OPTIONS))) - python3 setup.py test -endif diff -Nru python-certbot-apache-1.18.0/debian/upstream/signing-key.asc python-certbot-apache-1.21.0/debian/upstream/signing-key.asc --- python-certbot-apache-1.18.0/debian/upstream/signing-key.asc 2018-05-26 17:55:07.000000000 +0000 +++ python-certbot-apache-1.21.0/debian/upstream/signing-key.asc 2021-11-21 05:39:17.000000000 +0000 @@ -1,42 +1,167 @@ -----BEGIN PGP PUBLIC KEY BLOCK----- -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 -n7BVBdxwDVJQ -=qw93 +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 +=eWX8 -----END PGP PUBLIC KEY BLOCK----- diff -Nru python-certbot-apache-1.18.0/PKG-INFO python-certbot-apache-1.21.0/PKG-INFO --- python-certbot-apache-1.18.0/PKG-INFO 2021-08-03 20:14:03.149039500 +0000 +++ python-certbot-apache-1.21.0/PKG-INFO 2021-11-02 21:27:43.818931000 +0000 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: certbot-apache -Version: 1.18.0 +Version: 1.21.0 Summary: Apache plugin for Certbot Home-page: https://github.com/letsencrypt/letsencrypt Author: Certbot Project diff -Nru python-certbot-apache-1.18.0/setup.py python-certbot-apache-1.21.0/setup.py --- python-certbot-apache-1.18.0/setup.py 2021-08-03 20:12:59.000000000 +0000 +++ python-certbot-apache-1.21.0/setup.py 2021-11-02 21:27:19.000000000 +0000 @@ -1,7 +1,7 @@ from setuptools import find_packages from setuptools import setup -version = '1.18.0' +version = '1.21.0' install_requires = [ # We specify the minimum acme and certbot version as the current plugin @@ -11,8 +11,6 @@ f'certbot>={version}', 'python-augeas', 'setuptools>=39.0.1', - 'zope.component', - 'zope.interface', ] dev_extras = [ diff -Nru python-certbot-apache-1.18.0/tests/entrypoint_test.py python-certbot-apache-1.21.0/tests/entrypoint_test.py --- python-certbot-apache-1.18.0/tests/entrypoint_test.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/tests/entrypoint_test.py 2021-11-02 21:27:18.000000000 +0000 @@ -41,7 +41,7 @@ with mock.patch("certbot.util.get_os_info") as mock_info: mock_info.return_value = ("nonexistent", "irrelevant") with mock.patch("certbot.util.get_systemd_os_like") as mock_like: - mock_like.return_value = ["unknonwn"] + mock_like.return_value = ["unknown"] self.assertEqual(entrypoint.get_configurator(), configurator.ApacheConfigurator) diff -Nru python-certbot-apache-1.18.0/tests/parser_test.py python-certbot-apache-1.21.0/tests/parser_test.py --- python-certbot-apache-1.18.0/tests/parser_test.py 2021-08-03 20:12:58.000000000 +0000 +++ python-certbot-apache-1.21.0/tests/parser_test.py 2021-11-02 21:27:18.000000000 +0000 @@ -188,6 +188,8 @@ 'Define: DUMP_RUN_CFG\n' 'Define: U_MICH\n' 'Define: TLS=443\n' + 'Define: WITH_ASSIGNMENT=URL=http://example.com\n' + 'Define: EMPTY=\n' 'Define: example_path=Documents/path\n' 'User: name="www-data" id=33 not_used\n' 'Group: name="www-data" id=33 not_used\n' @@ -266,7 +268,10 @@ mock_cfg.side_effect = mock_get_vars expected_vars = {"TEST": "", "U_MICH": "", "TLS": "443", - "example_path": "Documents/path"} + "example_path": "Documents/path", + "WITH_ASSIGNMENT": "URL=http://example.com", + "EMPTY": "", + } self.parser.modules = {} with mock.patch( @@ -301,15 +306,6 @@ # path derived from root configuration Include statements self.assertEqual(mock_parse.call_count, 1) - @mock.patch("certbot_apache._internal.apache_util._get_runtime_cfg") - def test_update_runtime_vars_bad_output(self, mock_cfg): - mock_cfg.return_value = "Define: TLS=443=24" - self.parser.update_runtime_variables() - - mock_cfg.return_value = "Define: DUMP_RUN_CFG\nDefine: TLS=443=24" - self.assertRaises( - errors.PluginError, self.parser.update_runtime_variables) - @mock.patch("certbot_apache._internal.apache_util.subprocess.run") def test_update_runtime_vars_bad_ctl(self, mock_run): mock_run.side_effect = OSError