prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  Invalid `dev` version identifiers in `setup.py`
  There is a bunch of ~invalid~ version matchers (edit: valid, but not parsed correctly by distlib) in `setup.py`.  [PEP 440](https://peps.python.org/pep-0440/) states:
  
  > The canonical public version identifiers MUST comply with the following scheme:
  > `[N!]N(.N)*[{a|b|rc}N][.postN][.devN]`
  
  So you are missing a dot and a number in every version identifier that contains the string `dev`.
  
  It is also considered bad practice to have an upper bound on package versions and installers like pip do not typically consider development versions in any case (unless explicitly told to).
  
  See: https://github.com/googleapis/google-api-python-client/issues/2151
  
  </issue>
  <code>
  [start of setup.py]
  1 # Copyright 2014 Google Inc.
  2 #
  3 # Licensed under the Apache License, Version 2.0 (the "License");
  4 # you may not use this file except in compliance with the License.
  5 # You may obtain a copy of the License at
  6 #
  7 #      http://www.apache.org/licenses/LICENSE-2.0
  8 #
  9 # Unless required by applicable law or agreed to in writing, software
  10 # distributed under the License is distributed on an "AS IS" BASIS,
  11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12 # See the License for the specific language governing permissions and
  13 # limitations under the License.
  14 
  15 import io
  16 import os
  17 
  18 from setuptools import find_packages
  19 from setuptools import setup
  20 
  21 
  22 DEPENDENCIES = (
  23     "cachetools>=2.0.0,<6.0",
  24     "pyasn1-modules>=0.2.1",
  25     # rsa==4.5 is the last version to support 2.7
  26     # https://github.com/sybrenstuvel/python-rsa/issues/152#issuecomment-643470233
  27     "rsa>=3.1.4,<5",
  28     # install enum34 to support 2.7. enum34 only works up to python version 3.3.
  29     "six>=1.9.0",
  30     "urllib3<2.0",
  31 )
  32 
  33 extras = {
  34     "aiohttp": ["aiohttp >= 3.6.2, < 4.0.0dev", "requests >= 2.20.0, < 3.0.0dev"],
  35     "pyopenssl": ["pyopenssl>=20.0.0", "cryptography>=38.0.3"],
  36     "requests": "requests >= 2.20.0, < 3.0.0dev",
  37     "reauth": "pyu2f>=0.1.5",
  38     # Enterprise cert only works for OpenSSL 1.1.1. Newer versions of these
  39     # dependencies are built with OpenSSL 3.0 so we need to fix the version.
  40     "enterprise_cert": ["cryptography==36.0.2", "pyopenssl==22.0.0"],
  41 }
  42 
  43 with io.open("README.rst", "r") as fh:
  44     long_description = fh.read()
  45 
  46 package_root = os.path.abspath(os.path.dirname(__file__))
  47 
  48 version = {}
  49 with open(os.path.join(package_root, "google/auth/version.py")) as fp:
  50     exec(fp.read(), version)
  51 version = version["__version__"]
  52 
  53 setup(
  54     name="google-auth",
  55     version=version,
  56     author="Google Cloud Platform",
  57     author_email="googleapis-packages@google.com",
  58     description="Google Authentication Library",
  59     long_description=long_description,
  60     url="https://github.com/googleapis/google-auth-library-python",
  61     packages=find_packages(exclude=("tests*", "system_tests*")),
  62     namespace_packages=("google",),
  63     install_requires=DEPENDENCIES,
  64     extras_require=extras,
  65     python_requires=">=3.6",
  66     license="Apache 2.0",
  67     keywords="google auth oauth client",
  68     classifiers=[
  69         "Programming Language :: Python :: 3",
  70         "Programming Language :: Python :: 3.6",
  71         "Programming Language :: Python :: 3.7",
  72         "Programming Language :: Python :: 3.8",
  73         "Programming Language :: Python :: 3.9",
  74         "Programming Language :: Python :: 3.10",
  75         "Programming Language :: Python :: 3.11",
  76         "Development Status :: 5 - Production/Stable",
  77         "Intended Audience :: Developers",
  78         "License :: OSI Approved :: Apache Software License",
  79         "Operating System :: POSIX",
  80         "Operating System :: Microsoft :: Windows",
  81         "Operating System :: MacOS :: MacOS X",
  82         "Operating System :: OS Independent",
  83         "Topic :: Internet :: WWW/HTTP",
  84     ],
  85 )
  86
  [end of setup.py]
  </code>
  
  I need you to solve this issue by generating a single patch file that I can apply directly to this repository using git apply. Please respond with a single patch file in the following format.
  <patch>
  diff --git a/file.py b/file.py
  --- a/file.py
  +++ b/file.py
  @@ -1,27 +1,35 @@
   def euclidean(a, b):
  -    while b:
  -        a, b = b, a % b
  -    return a
  +    if b == 0:
  +        return a
  +    return euclidean(b, a % b)
   
   
   def bresenham(x0, y0, x1, y1):
       points = []
       dx = abs(x1 - x0)
       dy = abs(y1 - y0)
  -    sx = 1 if x0 < x1 else -1
  -    sy = 1 if y0 < y1 else -1
  -    err = dx - dy
  +    x, y = x0, y0
  +    sx = -1 if x0 > x1 else 1
  +    sy = -1 if y0 > y1 else 1
   
  -    while True:
  -        points.append((x0, y0))
  -        if x0 == x1 and y0 == y1:
  -            break
  -        e2 = 2 * err
  -        if e2 > -dy:
  -            err -= dy
  -            x0 += sx
  -        if e2 < dx:
  -            err += dx
  -            y0 += sy
  +    if dx > dy:
  +        err = dx / 2.0
  +        while x != x1:
  +            points.append((x, y))
  +            err -= dy
  +            if err < 0:
  +                y += sy
  +                err += dx
  +            x += sx
  +    else:
  +        err = dy / 2.0
  +        while y != y1:
  +            points.append((x, y))
  +            err -= dx
  +            if err < 0:
  +                x += sx
  +                err += dy
  +            y += sy
  +
  +    points.append((x, y))
       return points
  
  </patch>
golden_diff: diff --git a/setup.py b/setup.py
  --- a/setup.py
  +++ b/setup.py
  @@ -31,9 +31,9 @@
   )
   
   extras = {
  -    "aiohttp": ["aiohttp >= 3.6.2, < 4.0.0dev", "requests >= 2.20.0, < 3.0.0dev"],
  +    "aiohttp": ["aiohttp >= 3.6.2, < 4.0.0.dev0", "requests >= 2.20.0, < 3.0.0.dev0"],
       "pyopenssl": ["pyopenssl>=20.0.0", "cryptography>=38.0.3"],
  -    "requests": "requests >= 2.20.0, < 3.0.0dev",
  +    "requests": "requests >= 2.20.0, < 3.0.0.dev0",
       "reauth": "pyu2f>=0.1.5",
       # Enterprise cert only works for OpenSSL 1.1.1. Newer versions of these
       # dependencies are built with OpenSSL 3.0 so we need to fix the version.
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -31,9 +31,9 @@\n )\n \n extras = {\n-    \"aiohttp\": [\"aiohttp >= 3.6.2, < 4.0.0dev\", \"requests >= 2.20.0, < 3.0.0dev\"],\n+    \"aiohttp\": [\"aiohttp >= 3.6.2, < 4.0.0.dev0\", \"requests >= 2.20.0, < 3.0.0.dev0\"],\n     \"pyopenssl\": [\"pyopenssl>=20.0.0\", \"cryptography>=38.0.3\"],\n-    \"requests\": \"requests >= 2.20.0, < 3.0.0dev\",\n+    \"requests\": \"requests >= 2.20.0, < 3.0.0.dev0\",\n     \"reauth\": \"pyu2f>=0.1.5\",\n     # Enterprise cert only works for OpenSSL 1.1.1. Newer versions of these\n     # dependencies are built with OpenSSL 3.0 so we need to fix the version.\n", "issue": "Invalid `dev` version identifiers in `setup.py`\nThere is a bunch of ~invalid~ version matchers (edit: valid, but not parsed correctly by distlib) in `setup.py`.  [PEP 440](https://peps.python.org/pep-0440/) states:\r\n\r\n> The canonical public version identifiers MUST comply with the following scheme:\r\n> `[N!]N(.N)*[{a|b|rc}N][.postN][.devN]`\r\n\r\nSo you are missing a dot and a number in every version identifier that contains the string `dev`.\r\n\r\nIt is also considered bad practice to have an upper bound on package versions and installers like pip do not typically consider development versions in any case (unless explicitly told to).\r\n\r\nSee: https://github.com/googleapis/google-api-python-client/issues/2151\n", "before_files": [{"content": "# Copyright 2014 Google Inc.\n#\n# Licensed under the Apache License, Version 2.0 (the \"License\");\n# you may not use this file except in compliance with the License.\n# You may obtain a copy of the License at\n#\n#      http://www.apache.org/licenses/LICENSE-2.0\n#\n# Unless required by applicable law or agreed to in writing, software\n# distributed under the License is distributed on an \"AS IS\" BASIS,\n# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n# See the License for the specific language governing permissions and\n# limitations under the License.\n\nimport io\nimport os\n\nfrom setuptools import find_packages\nfrom setuptools import setup\n\n\nDEPENDENCIES = (\n    \"cachetools>=2.0.0,<6.0\",\n    \"pyasn1-modules>=0.2.1\",\n    # rsa==4.5 is the last version to support 2.7\n    # https://github.com/sybrenstuvel/python-rsa/issues/152#issuecomment-643470233\n    \"rsa>=3.1.4,<5\",\n    # install enum34 to support 2.7. enum34 only works up to python version 3.3.\n    \"six>=1.9.0\",\n    \"urllib3<2.0\",\n)\n\nextras = {\n    \"aiohttp\": [\"aiohttp >= 3.6.2, < 4.0.0dev\", \"requests >= 2.20.0, < 3.0.0dev\"],\n    \"pyopenssl\": [\"pyopenssl>=20.0.0\", \"cryptography>=38.0.3\"],\n    \"requests\": \"requests >= 2.20.0, < 3.0.0dev\",\n    \"reauth\": \"pyu2f>=0.1.5\",\n    # Enterprise cert only works for OpenSSL 1.1.1. Newer versions of these\n    # dependencies are built with OpenSSL 3.0 so we need to fix the version.\n    \"enterprise_cert\": [\"cryptography==36.0.2\", \"pyopenssl==22.0.0\"],\n}\n\nwith io.open(\"README.rst\", \"r\") as fh:\n    long_description = fh.read()\n\npackage_root = os.path.abspath(os.path.dirname(__file__))\n\nversion = {}\nwith open(os.path.join(package_root, \"google/auth/version.py\")) as fp:\n    exec(fp.read(), version)\nversion = version[\"__version__\"]\n\nsetup(\n    name=\"google-auth\",\n    version=version,\n    author=\"Google Cloud Platform\",\n    author_email=\"googleapis-packages@google.com\",\n    description=\"Google Authentication Library\",\n    long_description=long_description,\n    url=\"https://github.com/googleapis/google-auth-library-python\",\n    packages=find_packages(exclude=(\"tests*\", \"system_tests*\")),\n    namespace_packages=(\"google\",),\n    install_requires=DEPENDENCIES,\n    extras_require=extras,\n    python_requires=\">=3.6\",\n    license=\"Apache 2.0\",\n    keywords=\"google auth oauth client\",\n    classifiers=[\n        \"Programming Language :: Python :: 3\",\n        \"Programming Language :: Python :: 3.6\",\n        \"Programming Language :: Python :: 3.7\",\n        \"Programming Language :: Python :: 3.8\",\n        \"Programming Language :: Python :: 3.9\",\n        \"Programming Language :: Python :: 3.10\",\n        \"Programming Language :: Python :: 3.11\",\n        \"Development Status :: 5 - Production/Stable\",\n        \"Intended Audience :: Developers\",\n        \"License :: OSI Approved :: Apache Software License\",\n        \"Operating System :: POSIX\",\n        \"Operating System :: Microsoft :: Windows\",\n        \"Operating System :: MacOS :: MacOS X\",\n        \"Operating System :: OS Independent\",\n        \"Topic :: Internet :: WWW/HTTP\",\n    ],\n)\n", "path": "setup.py"}]}