Hello community,

here is the log from the commit of package python-certbot for 
openSUSE:Leap:15.2 checked in at 2020-02-27 06:41:47
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Leap:15.2/python-certbot (Old)
 and      /work/SRC/openSUSE:Leap:15.2/.python-certbot.new.26092 (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "python-certbot"

Thu Feb 27 06:41:47 2020 rev:6 rq:779444 version:1.2.0

Changes:
--------
--- /work/SRC/openSUSE:Leap:15.2/python-certbot/python-certbot.changes  
2020-02-19 18:48:28.323015918 +0100
+++ 
/work/SRC/openSUSE:Leap:15.2/.python-certbot.new.26092/python-certbot.changes   
    2020-02-27 06:41:49.773650374 +0100
@@ -1,0 +2,9 @@
+Fri Feb 21 15:31:05 UTC 2020 - Marketa Calabkova <[email protected]>
+
+- update to version 1.2.0
+  * Add directory field to error message when field is missing.
+  * If MD5 hasher is not available, try it in non-security mode (fix for FIPS 
systems)
+  * Support for Python 3.4 has been removed.
+  * Fix collections.abc imports for Python 3.9.
+
+-------------------------------------------------------------------

Old:
----
  certbot-1.1.0.tar.gz

New:
----
  certbot-1.2.0.tar.gz

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ python-certbot.spec ++++++
--- /var/tmp/diff_new_pack.uT9Mt8/_old  2020-02-27 06:41:50.029650908 +0100
+++ /var/tmp/diff_new_pack.uT9Mt8/_new  2020-02-27 06:41:50.029650908 +0100
@@ -18,7 +18,7 @@
 
 %{?!python_module:%define python_module() python-%{**} python3-%{**}}
 Name:           python-certbot
-Version:        1.1.0
+Version:        1.2.0
 Release:        0
 Summary:        ACME client
 License:        Apache-2.0

++++++ certbot-1.1.0.tar.gz -> certbot-1.2.0.tar.gz ++++++
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/CHANGELOG.md 
new/certbot-1.2.0/CHANGELOG.md
--- old/certbot-1.1.0/CHANGELOG.md      2020-01-14 19:41:32.000000000 +0100
+++ new/certbot-1.2.0/CHANGELOG.md      2020-02-04 22:46:57.000000000 +0100
@@ -2,6 +2,26 @@
 
 Certbot adheres to [Semantic Versioning](https://semver.org/).
 
+## 1.2.0 - 2020-02-04
+
+### Added
+
+* Added support for Cloudflare's limited-scope API Tokens
+
+### Changed
+
+* Add directory field to error message when field is missing.
+* If MD5 hasher is not available, try it in non-security mode (fix for FIPS 
systems) -- [#1948](https://github.com/certbot/certbot/issues/1948)
+* Disable old SSL versions and ciphersuites and remove `SSLCompression off` 
setting to follow Mozilla recommendations in Apache.
+* Remove ECDHE-RSA-AES128-SHA from NGINX ciphers list now that Windows 2008 R2 
and Windows 7 are EOLed
+* Support for Python 3.4 has been removed.
+
+### Fixed
+
+* Fix collections.abc imports for Python 3.9.
+
+More details about these changes can be found on our GitHub repo.
+
 ## 1.1.0 - 2020-01-14
 
 ### Added
@@ -232,7 +252,7 @@
 
 ### Added
 
-* dns_rfc2136 plugin now supports explicitly specifing an authorative
+* dns_rfc2136 plugin now supports explicitly specifying an authoritative
   base domain for cases when the automatic method does not work (e.g.
   Split horizon DNS)
 
@@ -616,7 +636,7 @@
 * Log warning about TLS-SNI deprecation in Certbot
 * Stop preferring TLS-SNI in the Apache, Nginx, and standalone plugins
 * OVH DNS plugin now relies on Lexicon>=2.7.14 to support HTTP proxies
-* Default time the Linode plugin waits for DNS changes to propogate is now 
1200 seconds.
+* Default time the Linode plugin waits for DNS changes to propagate is now 
1200 seconds.
 
 ### Fixed
 
@@ -735,7 +755,7 @@
   increased over time. The max-age value is not increased to a large value
   until you've successfully managed to renew your certificate. This enhancement
   can be requested with the --auto-hsts flag.
-* New official DNS plugins have been created for Gehirn Infrastracture Service,
+* New official DNS plugins have been created for Gehirn Infrastructure Service,
   Linode, OVH, and Sakura Cloud. These plugins can be found on our Docker Hub
   page at https://hub.docker.com/u/certbot and on PyPI.
 * The ability to reuse ACME accounts from Let's Encrypt's ACMEv1 endpoint on
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/PKG-INFO new/certbot-1.2.0/PKG-INFO
--- old/certbot-1.1.0/PKG-INFO  2020-01-14 19:41:34.000000000 +0100
+++ new/certbot-1.2.0/PKG-INFO  2020-02-04 22:46:58.000000000 +0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: certbot
-Version: 1.1.0
+Version: 1.2.0
 Summary: ACME client
 Home-page: https://github.com/letsencrypt/letsencrypt
 Author: Certbot Project
@@ -149,7 +149,6 @@
 Classifier: Programming Language :: Python :: 2
 Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
 Classifier: Programming Language :: Python :: 3.7
@@ -160,7 +159,7 @@
 Classifier: Topic :: System :: Networking
 Classifier: Topic :: System :: Systems Administration
 Classifier: Topic :: Utilities
-Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
+Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*
 Provides-Extra: dev3
 Provides-Extra: docs
 Provides-Extra: dev
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/__init__.py 
new/certbot-1.2.0/certbot/__init__.py
--- old/certbot-1.1.0/certbot/__init__.py       2020-01-14 19:41:33.000000000 
+0100
+++ new/certbot-1.2.0/certbot/__init__.py       2020-02-04 22:46:58.000000000 
+0100
@@ -1,4 +1,4 @@
 """Certbot client."""
 
 # version number like 1.2.3a0, must have at least 2 parts, like 1.2
-__version__ = '1.1.0'
+__version__ = '1.2.0'
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/_internal/account.py 
new/certbot-1.2.0/certbot/_internal/account.py
--- old/certbot-1.1.0/certbot/_internal/account.py      2020-01-14 
19:41:31.000000000 +0100
+++ new/certbot-1.2.0/certbot/_internal/account.py      2020-02-04 
22:46:57.000000000 +0100
@@ -56,11 +56,18 @@
                 tz=pytz.UTC).replace(microsecond=0),
             creation_host=socket.getfqdn()) if meta is None else meta
 
-        self.id = hashlib.md5(
-            self.key.key.public_key().public_bytes(
-                encoding=serialization.Encoding.PEM,
-                format=serialization.PublicFormat.SubjectPublicKeyInfo)
-        ).hexdigest()
+        # try MD5, else use MD5 in non-security mode (e.g. for FIPS systems / 
RHEL)
+        try:
+            hasher = hashlib.md5()
+        except ValueError:
+            hasher = hashlib.new('md5', usedforsecurity=False) # type: ignore
+
+        hasher.update(self.key.key.public_key().public_bytes(
+            encoding=serialization.Encoding.PEM,
+            format=serialization.PublicFormat.SubjectPublicKeyInfo)
+        )
+
+        self.id = hasher.hexdigest()
         # Implementation note: Email? Multiple accounts can have the
         # same email address. Registration URI? Assigned by the
         # server, not guaranteed to be stable over time, nor
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/_internal/cli.py 
new/certbot-1.2.0/certbot/_internal/cli.py
--- old/certbot-1.1.0/certbot/_internal/cli.py  2020-01-14 19:41:31.000000000 
+0100
+++ new/certbot-1.2.0/certbot/_internal/cli.py  2020-02-04 22:46:57.000000000 
+0100
@@ -1414,7 +1414,7 @@
     helpful.add(["plugins", "certonly"], "--dns-gehirn", action="store_true",
                 default=flag_default("dns_gehirn"),
                 help=("Obtain certificates using a DNS TXT record "
-                     "(if you are using Gehirn Infrastracture Service for 
DNS)."))
+                     "(if you are using Gehirn Infrastructure Service for 
DNS)."))
     helpful.add(["plugins", "certonly"], "--dns-google", action="store_true",
                 default=flag_default("dns_google"),
                 help=("Obtain certificates using a DNS TXT record (if you are "
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/_internal/main.py 
new/certbot-1.2.0/certbot/_internal/main.py
--- old/certbot-1.1.0/certbot/_internal/main.py 2020-01-14 19:41:31.000000000 
+0100
+++ new/certbot-1.2.0/certbot/_internal/main.py 2020-02-04 22:46:57.000000000 
+0100
@@ -1337,10 +1337,6 @@
         if config.func != plugins_cmd:  # pylint: 
disable=comparison-with-callable
             raise
 
-    if sys.version_info[:2] == (3, 4):
-        logger.warning("Python 3.4 support will be dropped in the next release 
"
-                       "of Certbot - please upgrade your Python version to 
3.5+.")
-
     set_displayer(config)
 
     # Reporter
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/_internal/ocsp.py 
new/certbot-1.2.0/certbot/_internal/ocsp.py
--- old/certbot-1.1.0/certbot/_internal/ocsp.py 2020-01-14 19:41:31.000000000 
+0100
+++ new/certbot-1.2.0/certbot/_internal/ocsp.py 2020-02-04 22:46:57.000000000 
+0100
@@ -192,7 +192,7 @@
 
 
 def _check_ocsp_response(response_ocsp, request_ocsp, issuer_cert, cert_path):
-    """Verify that the OCSP is valid for serveral criterias"""
+    """Verify that the OCSP is valid for serveral criteria"""
     # Assert OCSP response corresponds to the certificate we are talking about
     if response_ocsp.serial_number != request_ocsp.serial_number:
         raise AssertionError('the certificate in response does not correspond '
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/_internal/plugins/disco.py 
new/certbot-1.2.0/certbot/_internal/plugins/disco.py
--- old/certbot-1.1.0/certbot/_internal/plugins/disco.py        2020-01-14 
19:41:31.000000000 +0100
+++ new/certbot-1.2.0/certbot/_internal/plugins/disco.py        2020-02-04 
22:46:57.000000000 +0100
@@ -13,6 +13,12 @@
 from certbot import interfaces
 from certbot._internal import constants
 
+try:
+    # Python 3.3+
+    from collections.abc import Mapping
+except ImportError:  # pragma: no cover
+    from collections import Mapping
+
 logger = logging.getLogger(__name__)
 
 
@@ -178,7 +184,7 @@
         return "\n".join(lines)
 
 
-class PluginsRegistry(collections.Mapping):
+class PluginsRegistry(Mapping):
     """Plugins registry."""
 
     def __init__(self, plugins):
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/_internal/renewal.py 
new/certbot-1.2.0/certbot/_internal/renewal.py
--- old/certbot-1.1.0/certbot/_internal/renewal.py      2020-01-14 
19:41:31.000000000 +0100
+++ new/certbot-1.2.0/certbot/_internal/renewal.py      2020-02-04 
22:46:57.000000000 +0100
@@ -192,7 +192,7 @@
     :returns: converted option value to be stored in the runtime config
     :rtype: `list` of `str`
 
-    :raises errors.Error: if value can't be converted to an bool
+    :raises errors.Error: if value can't be converted to a bool
 
     """
     # If pref_challs has only one element, configobj saves the value
@@ -203,7 +203,7 @@
 
 
 def _restore_bool(name, value):
-    """Restores an boolean key-value pair from a renewal config file.
+    """Restores a boolean key-value pair from a renewal config file.
 
     :param str name: option name
     :param str value: option value
@@ -211,7 +211,7 @@
     :returns: converted option value to be stored in the runtime config
     :rtype: bool
 
-    :raises errors.Error: if value can't be converted to an bool
+    :raises errors.Error: if value can't be converted to a bool
 
     """
     lowercase_value = value.lower()
@@ -244,7 +244,7 @@
 
 
 def _restore_str(unused_name, value):
-    """Restores an string key-value pair from a renewal config file.
+    """Restores a string key-value pair from a renewal config file.
 
     :param str unused_name: option name
     :param str value: option value
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/compat/filesystem.py 
new/certbot-1.2.0/certbot/compat/filesystem.py
--- old/certbot-1.1.0/certbot/compat/filesystem.py      2020-01-14 
19:41:31.000000000 +0100
+++ new/certbot-1.2.0/certbot/compat/filesystem.py      2020-02-04 
22:46:57.000000000 +0100
@@ -263,7 +263,7 @@
     :param str dst: The new file path.
     """
     if hasattr(os, 'replace'):
-        # Use replace if possible. On Windows, only Python >= 3.4 is supported
+        # Use replace if possible. On Windows, only Python >= 3.5 is supported
         # so we can assume that os.replace() is always available for this 
platform.
         getattr(os, 'replace')(src, dst)
     else:
@@ -541,7 +541,7 @@
     # write access on Linux: for Windows, FILE_GENERIC_WRITE does not include 
delete, move or
     # rename. This is something that requires ntsecuritycon.FILE_ALL_ACCESS.
     # So to reproduce the write right as POSIX, we will apply 
ntsecuritycon.FILE_ALL_ACCESS
-    # substracted of the rights corresponding to POSIX read and POSIX execute.
+    # subtracted of the rights corresponding to POSIX read and POSIX execute.
     #
     # Finally, having read + write + execute gives a 
ntsecuritycon.FILE_ALL_ACCESS,
     # so a "Full Control" on the file.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot/display/ops.py 
new/certbot-1.2.0/certbot/display/ops.py
--- old/certbot-1.1.0/certbot/display/ops.py    2020-01-14 19:41:31.000000000 
+0100
+++ new/certbot-1.2.0/certbot/display/ops.py    2020-02-04 22:46:57.000000000 
+0100
@@ -340,7 +340,7 @@
     """Like `~certbot.interfaces.IDisplay.input`, but with validation.
 
     :param callable validator: A method which will be called on the
-        supplied input. If the method raises a `errors.Error`, its
+        supplied input. If the method raises an `errors.Error`, its
         text will be displayed and the user will be re-prompted.
     :param list `*args`: Arguments to be passed to 
`~certbot.interfaces.IDisplay.input`.
     :param dict `**kwargs`: Arguments to be passed to 
`~certbot.interfaces.IDisplay.input`.
@@ -355,7 +355,7 @@
     """Like `~certbot.interfaces.IDisplay.directory_select`, but with 
validation.
 
     :param callable validator: A method which will be called on the
-        supplied input. If the method raises a `errors.Error`, its
+        supplied input. If the method raises an `errors.Error`, its
         text will be displayed and the user will be re-prompted.
     :param list `*args`: Arguments to be passed to 
`~certbot.interfaces.IDisplay.directory_select`.
     :param dict `**kwargs`: Arguments to be passed to
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot.egg-info/PKG-INFO 
new/certbot-1.2.0/certbot.egg-info/PKG-INFO
--- old/certbot-1.1.0/certbot.egg-info/PKG-INFO 2020-01-14 19:41:34.000000000 
+0100
+++ new/certbot-1.2.0/certbot.egg-info/PKG-INFO 2020-02-04 22:46:58.000000000 
+0100
@@ -1,6 +1,6 @@
 Metadata-Version: 2.1
 Name: certbot
-Version: 1.1.0
+Version: 1.2.0
 Summary: ACME client
 Home-page: https://github.com/letsencrypt/letsencrypt
 Author: Certbot Project
@@ -149,7 +149,6 @@
 Classifier: Programming Language :: Python :: 2
 Classifier: Programming Language :: Python :: 2.7
 Classifier: Programming Language :: Python :: 3
-Classifier: Programming Language :: Python :: 3.4
 Classifier: Programming Language :: Python :: 3.5
 Classifier: Programming Language :: Python :: 3.6
 Classifier: Programming Language :: Python :: 3.7
@@ -160,7 +159,7 @@
 Classifier: Topic :: System :: Networking
 Classifier: Topic :: System :: Systems Administration
 Classifier: Topic :: Utilities
-Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*
+Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*
 Provides-Extra: dev3
 Provides-Extra: docs
 Provides-Extra: dev
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot.egg-info/SOURCES.txt 
new/certbot-1.2.0/certbot.egg-info/SOURCES.txt
--- old/certbot-1.1.0/certbot.egg-info/SOURCES.txt      2020-01-14 
19:41:34.000000000 +0100
+++ new/certbot-1.2.0/certbot.egg-info/SOURCES.txt      2020-02-04 
22:46:58.000000000 +0100
@@ -109,6 +109,7 @@
 docs/challenges.rst
 docs/ciphers.rst
 docs/cli-help.txt
+docs/compatibility.rst
 docs/conf.py
 docs/contributing.rst
 docs/index.rst
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/certbot.egg-info/requires.txt 
new/certbot-1.2.0/certbot.egg-info/requires.txt
--- old/certbot-1.1.0/certbot.egg-info/requires.txt     2020-01-14 
19:41:34.000000000 +0100
+++ new/certbot-1.2.0/certbot.egg-info/requires.txt     2020-02-04 
22:46:58.000000000 +0100
@@ -29,7 +29,6 @@
 astroid
 mypy
 pylint
-typing
 
 [docs]
 repoze.sphinx.autointerface
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/docs/cli-help.txt 
new/certbot-1.2.0/docs/cli-help.txt
--- old/certbot-1.1.0/docs/cli-help.txt 2020-01-14 19:41:31.000000000 +0100
+++ new/certbot-1.2.0/docs/cli-help.txt 2020-02-04 22:46:57.000000000 +0100
@@ -113,7 +113,7 @@
                         case, and to know when to deprecate support for past
                         Python versions and flags. If you wish to hide this
                         information from the Let's Encrypt server, set this to
-                        "". (default: CertbotACMEClient/1.0.0 (certbot(-auto);
+                        "". (default: CertbotACMEClient/1.1.0 (certbot(-auto);
                         OS_NAME OS_VERSION) Authenticator/XXX Installer/YYY
                         (SUBCOMMAND; flags: FLAGS) Py/major.minor.patchlevel).
                         The flags encoded in the user agent are: --duplicate,
@@ -451,7 +451,7 @@
   --dns-dnsmadeeasy     Obtain certificates using a DNS TXT record (if you are
                         using DNS Made Easy for DNS). (default: False)
   --dns-gehirn          Obtain certificates using a DNS TXT record (if you are
-                        using Gehirn Infrastracture Service for DNS).
+                        using Gehirn Infrastructure Service for DNS).
                         (default: False)
   --dns-google          Obtain certificates using a DNS TXT record (if you are
                         using Google Cloud DNS). (default: False)
@@ -560,14 +560,14 @@
 
 dns-gehirn:
   Obtain certificates using a DNS TXT record (if you are using Gehirn
-  Infrastracture Service for DNS).
+  Infrastructure Service for DNS).
 
   --dns-gehirn-propagation-seconds DNS_GEHIRN_PROPAGATION_SECONDS
                         The number of seconds to wait for DNS to propagate
                         before asking the ACME server to verify the DNS
                         record. (default: 30)
   --dns-gehirn-credentials DNS_GEHIRN_CREDENTIALS
-                        Gehirn Infrastracture Service credentials file.
+                        Gehirn Infrastructure Service credentials file.
                         (default: None)
 
 dns-google:
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/docs/compatibility.rst 
new/certbot-1.2.0/docs/compatibility.rst
--- old/certbot-1.1.0/docs/compatibility.rst    1970-01-01 01:00:00.000000000 
+0100
+++ new/certbot-1.2.0/docs/compatibility.rst    2020-02-04 22:46:57.000000000 
+0100
@@ -0,0 +1,39 @@
+=======================
+Backwards Compatibility
+=======================
+
+All Certbot components including `acme <https://acme-python.readthedocs.io/>`_,
+Certbot, and :ref:`non-third party plugins <plugins>` follow `Semantic
+Versioning <https://semver.org/>`_ both for its Python :doc:`API <api>` and 
for the
+application itself. This means that we will not change behavior in a backwards
+incompatible way except in a new major version of the project.
+
+.. note:: None of this applies to the behavior of Certbot distribution
+    mechanisms such as :ref:`certbot-auto <certbot-auto>` or OS packages whose
+    behavior may change at any time. Semantic versioning only applies to the
+    common Certbot components that are installed by various distribution
+    methods.
+
+For Certbot as an application, the command line interface and non-interactive
+behavior can be considered stable with two exceptions. The first is that no
+aspects of Certbot's console or log output should be considered stable and it
+may change at any time. The second is that Certbot's behavior should only be
+considered stable with certain files but not all. Files with which users should
+expect Certbot to maintain its current behavior with are:
+
+* ``/etc/letsencrypt/live/<domain>/{cert,chain,fullchain,privkey}.pem`` where
+  ``<domain>`` is the name given to ``--cert-name``. If ``--cert-name`` is not
+  set by the user, it is the first domain given to ``--domains``.
+* :ref:`CLI configuration files <config-file>`
+* Hook directories in ``/etc/letsencrypt/renewal-hooks``
+
+Certbot's behavior with other files may change at any point.
+
+Another area where Certbot should not be considered stable is its behavior when
+not run in non-interactive mode which also may change at any point.
+
+In general, if we're making a change that we expect will break some users, we
+will bump the major version and will have warned about it in a prior release
+when possible. For our Python API, we will issue warnings using Python's
+warning module. For application level changes, we will print and log warning
+messages.
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/docs/contributing.rst 
new/certbot-1.2.0/docs/contributing.rst
--- old/certbot-1.1.0/docs/contributing.rst     2020-01-14 19:41:31.000000000 
+0100
+++ new/certbot-1.2.0/docs/contributing.rst     2020-02-04 22:46:57.000000000 
+0100
@@ -524,19 +524,22 @@
 Updating the documentation
 ==========================
 
-In order to generate the Sphinx documentation, run the following
-commands:
+Many of the packages in the Certbot repository have documentation in a
+``docs/`` directory. This directory is located under the top level directory
+for the package. For instance, Certbot's documentation is under
+``certbot/docs``.
+
+To build the documentation of a package, make sure you have followed the
+instructions to set up a `local copy`_ of Certbot including activating the
+virtual environment. After that, ``cd`` to the docs directory you want to build
+and run the command:
 
 .. code-block:: shell
 
-   make -C docs clean html man
-
-This should generate documentation in the ``docs/_build/html``
-directory.
-
-.. note:: If you skipped the "Getting Started" instructions above,
-  run ``pip install -e "certbot[docs]"`` to install Certbot's docs extras 
modules.
+   make clean html
 
+This would generate the HTML documentation in ``_build/html`` in your current
+``docs/`` directory.
 
 .. _docker-dev:
 
@@ -583,7 +586,7 @@
 In general...
 
 * ``sudo`` is required as a suggested way of running privileged process
-* `Python`_ 2.7 or 3.4+ is required
+* `Python`_ 2.7 or 3.5+ is required
 * `Augeas`_ is required for the Python bindings
 * ``virtualenv`` is used for managing other Python library dependencies
 
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/docs/index.rst 
new/certbot-1.2.0/docs/index.rst
--- old/certbot-1.1.0/docs/index.rst    2020-01-14 19:41:31.000000000 +0100
+++ new/certbot-1.2.0/docs/index.rst    2020-02-04 22:46:57.000000000 +0100
@@ -10,6 +10,7 @@
    using
    contributing
    packaging
+   compatibility
    resources
 
 .. toctree::
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/docs/install.rst 
new/certbot-1.2.0/docs/install.rst
--- old/certbot-1.1.0/docs/install.rst  2020-01-14 19:41:31.000000000 +0100
+++ new/certbot-1.2.0/docs/install.rst  2020-02-04 22:46:57.000000000 +0100
@@ -28,7 +28,7 @@
 System Requirements
 ===================
 
-Certbot currently requires Python 2.7 or 3.4+ running on a UNIX-like operating
+Certbot currently requires Python 2.7 or 3.5+ running on a UNIX-like operating
 system. By default, it requires root access in order to write to
 ``/etc/letsencrypt``, ``/var/log/letsencrypt``, ``/var/lib/letsencrypt``; to
 bind to port 80 (if you use the ``standalone`` plugin) and to read and
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/setup.py new/certbot-1.2.0/setup.py
--- old/certbot-1.1.0/setup.py  2020-01-14 19:41:32.000000000 +0100
+++ new/certbot-1.2.0/setup.py  2020-02-04 22:46:57.000000000 +0100
@@ -88,7 +88,6 @@
     'astroid',
     'mypy',
     'pylint',
-    'typing',  # for python3.4
 ]
 
 docs_extras = [
@@ -124,7 +123,7 @@
     author="Certbot Project",
     author_email='[email protected]',
     license='Apache License 2.0',
-    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*',
+    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',
     classifiers=[
         'Development Status :: 5 - Production/Stable',
         'Environment :: Console',
@@ -136,7 +135,6 @@
         'Programming Language :: Python :: 2',
         'Programming Language :: Python :: 2.7',
         'Programming Language :: Python :: 3',
-        'Programming Language :: Python :: 3.4',
         'Programming Language :: Python :: 3.5',
         'Programming Language :: Python :: 3.6',
         'Programming Language :: Python :: 3.7',
diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' 
'--exclude=.svnignore' old/certbot-1.1.0/tests/util_test.py 
new/certbot-1.2.0/tests/util_test.py
--- old/certbot-1.1.0/tests/util_test.py        2020-01-14 19:41:31.000000000 
+0100
+++ new/certbot-1.2.0/tests/util_test.py        2020-02-04 22:46:57.000000000 
+0100
@@ -579,7 +579,7 @@
             with mock.patch('certbot.util.atexit') as mock_atexit:
                 self._call(self.func, *self.args, **self.kwargs)
 
-            # _INITAL_PID must be mocked when calling atexit_func
+            # _INITIAL_PID must be mocked when calling atexit_func
             self.assertTrue(mock_atexit.register.called)
             args, kwargs = mock_atexit.register.call_args
             atexit_func = args[0]


Reply via email to