prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Required pyparsing version
  I've been experimenting with writing tests using the oldest allowed versions of our Python dependencies. `setup.py` for `letsencrypt-nginx` says it requires `pyparsing>=1.5.5` but when I pin version 1.5.5, I encounter problems. You can see Travis logs of the issue [here](https://travis-ci.org/letsencrypt/letsencrypt/jobs/100739657) and [here](https://travis-ci.org/letsencrypt/letsencrypt/jobs/100739658).
  
  We should determine what version we require and update `setup.py` accordingly.
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `certbot-nginx/setup.py`
  Content:
  ```
  1 import sys
  2 
  3 from setuptools import find_packages
  4 from setuptools import setup
  5 from setuptools.command.test import test as TestCommand
  6 
  7 version = '1.3.0.dev0'
  8 
  9 # Remember to update local-oldest-requirements.txt when changing the minimum
  10 # acme/certbot version.
  11 install_requires = [
  12     'acme>=1.0.0',
  13     'certbot>=1.1.0',
  14     'mock',
  15     'PyOpenSSL',
  16     'pyparsing>=1.5.5',  # Python3 support; perhaps unnecessary?
  17     'setuptools',
  18     'zope.interface',
  19 ]
  20 
  21 
  22 class PyTest(TestCommand):
  23     user_options = []
  24 
  25     def initialize_options(self):
  26         TestCommand.initialize_options(self)
  27         self.pytest_args = ''
  28 
  29     def run_tests(self):
  30         import shlex
  31         # import here, cause outside the eggs aren't loaded
  32         import pytest
  33         errno = pytest.main(shlex.split(self.pytest_args))
  34         sys.exit(errno)
  35 
  36 
  37 setup(
  38     name='certbot-nginx',
  39     version=version,
  40     description="Nginx plugin for Certbot",
  41     url='https://github.com/letsencrypt/letsencrypt',
  42     author="Certbot Project",
  43     author_email='client-dev@letsencrypt.org',
  44     license='Apache License 2.0',
  45     python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',
  46     classifiers=[
  47         'Development Status :: 5 - Production/Stable',
  48         'Environment :: Plugins',
  49         'Intended Audience :: System Administrators',
  50         'License :: OSI Approved :: Apache Software License',
  51         'Operating System :: POSIX :: Linux',
  52         'Programming Language :: Python',
  53         'Programming Language :: Python :: 2',
  54         'Programming Language :: Python :: 2.7',
  55         'Programming Language :: Python :: 3',
  56         'Programming Language :: Python :: 3.5',
  57         'Programming Language :: Python :: 3.6',
  58         'Programming Language :: Python :: 3.7',
  59         'Programming Language :: Python :: 3.8',
  60         'Topic :: Internet :: WWW/HTTP',
  61         'Topic :: Security',
  62         'Topic :: System :: Installation/Setup',
  63         'Topic :: System :: Networking',
  64         'Topic :: System :: Systems Administration',
  65         'Topic :: Utilities',
  66     ],
  67 
  68     packages=find_packages(),
  69     include_package_data=True,
  70     install_requires=install_requires,
  71     entry_points={
  72         'certbot.plugins': [
  73             'nginx = certbot_nginx._internal.configurator:NginxConfigurator',
  74         ],
  75     },
  76     test_suite='certbot_nginx',
  77     tests_require=["pytest"],
  78     cmdclass={"test": PyTest},
  79 )
  80
  ```
  --- END FILES ---
  
  Please first localize the bug based on the issue statement, and then generate a patch according to the `git diff` format fenced by three backticks.
  
  Here is an example:
  
  ```diff
  diff --git a/examples/server_async.py b/examples/server_async.py
  --- a/examples/server_async.py
  +++ b/examples/server_async.py
  @@ -313,4 +313,4 @@
   
   
   if __name__ == "__main__":
  -    asyncio.run(run_async_server("."), debug=True)
  +    asyncio.run(run_async_server(), debug=True)
  diff --git a/examples/server_sync.py b/examples/server_sync.py
  --- a/examples/server_sync.py
  +++ b/examples/server_sync.py
  @@ -313,5 +313,5 @@
   
   
   if __name__ == "__main__":
  -    server = run_sync_server(".")
  +    server = run_sync_server()
       server.shutdown()
  
  ```
  
golden_diff: diff --git a/certbot-nginx/setup.py b/certbot-nginx/setup.py
  --- a/certbot-nginx/setup.py
  +++ b/certbot-nginx/setup.py
  @@ -13,7 +13,7 @@
       'certbot>=1.1.0',
       'mock',
       'PyOpenSSL',
  -    'pyparsing>=1.5.5',  # Python3 support; perhaps unnecessary?
  +    'pyparsing>=1.5.5',  # Python3 support
       'setuptools',
       'zope.interface',
   ]
  
verification_info: {"golden_diff": "diff --git a/certbot-nginx/setup.py b/certbot-nginx/setup.py\n--- a/certbot-nginx/setup.py\n+++ b/certbot-nginx/setup.py\n@@ -13,7 +13,7 @@\n     'certbot>=1.1.0',\n     'mock',\n     'PyOpenSSL',\n-    'pyparsing>=1.5.5',  # Python3 support; perhaps unnecessary?\n+    'pyparsing>=1.5.5',  # Python3 support\n     'setuptools',\n     'zope.interface',\n ]\n", "issue": "Required pyparsing version\nI've been experimenting with writing tests using the oldest allowed versions of our Python dependencies. `setup.py` for `letsencrypt-nginx` says it requires `pyparsing>=1.5.5` but when I pin version 1.5.5, I encounter problems. You can see Travis logs of the issue [here](https://travis-ci.org/letsencrypt/letsencrypt/jobs/100739657) and [here](https://travis-ci.org/letsencrypt/letsencrypt/jobs/100739658).\n\nWe should determine what version we require and update `setup.py` accordingly.\n\n", "before_files": [{"content": "import sys\n\nfrom setuptools import find_packages\nfrom setuptools import setup\nfrom setuptools.command.test import test as TestCommand\n\nversion = '1.3.0.dev0'\n\n# Remember to update local-oldest-requirements.txt when changing the minimum\n# acme/certbot version.\ninstall_requires = [\n    'acme>=1.0.0',\n    'certbot>=1.1.0',\n    'mock',\n    'PyOpenSSL',\n    'pyparsing>=1.5.5',  # Python3 support; perhaps unnecessary?\n    'setuptools',\n    'zope.interface',\n]\n\n\nclass PyTest(TestCommand):\n    user_options = []\n\n    def initialize_options(self):\n        TestCommand.initialize_options(self)\n        self.pytest_args = ''\n\n    def run_tests(self):\n        import shlex\n        # import here, cause outside the eggs aren't loaded\n        import pytest\n        errno = pytest.main(shlex.split(self.pytest_args))\n        sys.exit(errno)\n\n\nsetup(\n    name='certbot-nginx',\n    version=version,\n    description=\"Nginx plugin for Certbot\",\n    url='https://github.com/letsencrypt/letsencrypt',\n    author=\"Certbot Project\",\n    author_email='client-dev@letsencrypt.org',\n    license='Apache License 2.0',\n    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',\n    classifiers=[\n        'Development Status :: 5 - Production/Stable',\n        'Environment :: Plugins',\n        'Intended Audience :: System Administrators',\n        'License :: OSI Approved :: Apache Software License',\n        'Operating System :: POSIX :: Linux',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 2',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3',\n        'Programming Language :: Python :: 3.5',\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: 3.8',\n        'Topic :: Internet :: WWW/HTTP',\n        'Topic :: Security',\n        'Topic :: System :: Installation/Setup',\n        'Topic :: System :: Networking',\n        'Topic :: System :: Systems Administration',\n        'Topic :: Utilities',\n    ],\n\n    packages=find_packages(),\n    include_package_data=True,\n    install_requires=install_requires,\n    entry_points={\n        'certbot.plugins': [\n            'nginx = certbot_nginx._internal.configurator:NginxConfigurator',\n        ],\n    },\n    test_suite='certbot_nginx',\n    tests_require=[\"pytest\"],\n    cmdclass={\"test\": PyTest},\n)\n", "path": "certbot-nginx/setup.py"}], "after_files": [{"content": "import sys\n\nfrom setuptools import find_packages\nfrom setuptools import setup\nfrom setuptools.command.test import test as TestCommand\n\nversion = '1.3.0.dev0'\n\n# Remember to update local-oldest-requirements.txt when changing the minimum\n# acme/certbot version.\ninstall_requires = [\n    'acme>=1.0.0',\n    'certbot>=1.1.0',\n    'mock',\n    'PyOpenSSL',\n    'pyparsing>=1.5.5',  # Python3 support\n    'setuptools',\n    'zope.interface',\n]\n\n\nclass PyTest(TestCommand):\n    user_options = []\n\n    def initialize_options(self):\n        TestCommand.initialize_options(self)\n        self.pytest_args = ''\n\n    def run_tests(self):\n        import shlex\n        # import here, cause outside the eggs aren't loaded\n        import pytest\n        errno = pytest.main(shlex.split(self.pytest_args))\n        sys.exit(errno)\n\n\nsetup(\n    name='certbot-nginx',\n    version=version,\n    description=\"Nginx plugin for Certbot\",\n    url='https://github.com/letsencrypt/letsencrypt',\n    author=\"Certbot Project\",\n    author_email='client-dev@letsencrypt.org',\n    license='Apache License 2.0',\n    python_requires='>=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*',\n    classifiers=[\n        'Development Status :: 5 - Production/Stable',\n        'Environment :: Plugins',\n        'Intended Audience :: System Administrators',\n        'License :: OSI Approved :: Apache Software License',\n        'Operating System :: POSIX :: Linux',\n        'Programming Language :: Python',\n        'Programming Language :: Python :: 2',\n        'Programming Language :: Python :: 2.7',\n        'Programming Language :: Python :: 3',\n        'Programming Language :: Python :: 3.5',\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: 3.8',\n        'Topic :: Internet :: WWW/HTTP',\n        'Topic :: Security',\n        'Topic :: System :: Installation/Setup',\n        'Topic :: System :: Networking',\n        'Topic :: System :: Systems Administration',\n        'Topic :: Utilities',\n    ],\n\n    packages=find_packages(),\n    include_package_data=True,\n    install_requires=install_requires,\n    entry_points={\n        'certbot.plugins': [\n            'nginx = certbot_nginx._internal.configurator:NginxConfigurator',\n        ],\n    },\n    test_suite='certbot_nginx',\n    tests_require=[\"pytest\"],\n    cmdclass={\"test\": PyTest},\n)\n", "path": "certbot-nginx/setup.py"}]}