• Bug#1106579: marked as done (unblock: python-certbot/4.0.0-2) (3/7)

    From Debian Bug Tracking System@21:1/5 to All on Mon May 26 20:00:01 2025
    [continued from previous message]

    "server. Do you agree?".format(terms_of_service))
    result = display_util.yesno(msg, cli_flag="--agree-tos", force_interactive=True)
    if not result:
    @@ -934,7 +933,7 @@
    if not accounts:
    return f"Could not find an existing account for server {config.server}."
    if config.email is None and not config.register_unsafely_without_email:
    - config.email = display_ops.get_email(optional=False)
    + config.email = display_ops.get_email()

    acc, acme = _determine_account(config)
    cb_client = client.Client(config, acc, None, None, acme=acme)
    @@ -1266,27 +1265,6 @@
    client.rollback(config.installer, config.checkpoints, config, plugins)


    -def update_symlinks(config: configuration.NamespaceConfig,
    - unused_plugins: plugins_disco.PluginsRegistry) -> None:
    - """Update the certificate file family symlinks
    -
    - Use the information in the config file to make symlinks point to
    - the correct archive directory.
    -
    - :param config: Configuration object
    - :type config: configuration.NamespaceConfig
    -
    - :param unused_plugins: List of plugins (deprecated)
    - :type unused_plugins: plugins_disco.PluginsRegistry
    -
    - :returns: `None`
    - :rtype: None
    -
    - """
    - warnings.warn("update_symlinks is deprecated and will be removed", PendingDeprecationWarning)
    - cert_manager.update_live_symlinks(config)
    -
    -
    def rename(config: configuration.NamespaceConfig,
    unused_plugins: plugins_disco.PluginsRegistry) -> None:
    """Rename a certificate
    @@ -1387,10 +1365,10 @@
    acme = client.acme_from_config_key(config, acc.key, acc.regr)

    with open(config.cert_path, 'rb') as f:
    - cert = crypto_util.pyopenssl_load_certificate(f.read())[0]
    + cert = x509.load_pem_x509_certificate(f.read())
    logger.debug("Reason code for revocation: %s", config.reason)
    try:
    - acme.revoke(jose.ComparableX509(cert), config.reason)
    + acme.revoke(cert, config.reason)
    _delete_if_appropriate(config)
    except acme_errors.ClientError as e:
    return str(e)
    diff -Nru python-certbot-2.11.0/certbot/_internal/plugins/disco.py python-certbot-4.0.0/certbot/_internal/plugins/disco.py
    --- python-certbot-2.11.0/certbot/_internal/plugins/disco.py 2024-06-05 17:34:02.000000000 -0400
    +++ python-certbot-4.0.0/certbot/_internal/plugins/disco.py 2025-04-07 18:03:33.000000000 -0400
    @@ -176,7 +176,12 @@

    @classmethod
    def find_all(cls) -> 'PluginsRegistry':
    - """Find plugins using setuptools entry points."""
    + """Find plugins using Python package entry points.
    +
    + See https://packaging.python.org/en/latest/specifications/entry-points/ for more info on
    + entry points.
    +
    + """
    plugins: Dict[str, PluginEntryPoint] = {}
    plugin_paths_string = os.getenv('CERTBOT_PLUGIN_PATH')
    plugin_paths = plugin_paths_string.split(':') if plugin_paths_string else []
    diff -Nru python-certbot-2.11.0/certbot/_internal/plugins/manual.py python-certbot-4.0.0/certbot/_internal/plugins/manual.py
    --- python-certbot-2.11.0/certbot/_internal/plugins/manual.py 2024-06-05 17:34:02.000000000 -0400
    +++ python-certbot-4.0.0/certbot/_internal/plug