prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  Remove duplicate docs generation
  In `synth.py` we have a `nox` session to generate the docs [here](https://github.com/googleapis/google-api-python-client/blob/master/synth.py#L36). The same python script is running as part of the Github action in #1187, so we should remove the `docs` session from `synth.py` and `noxfile.py`.
  
  </issue>
  <code>
  [start of noxfile.py]
  1 
  2 # Copyright 2020 Google LLC
  3 #
  4 # Licensed under the Apache License, Version 2.0 (the "License");
  5 # you may not use this file except in compliance with the License.
  6 # You may obtain a copy of the License at
  7 #
  8 #      http://www.apache.org/licenses/LICENSE-2.0
  9 #
  10 # Unless required by applicable law or agreed to in writing, software
  11 # distributed under the License is distributed on an "AS IS" BASIS,
  12 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13 # See the License for the specific language governing permissions and
  14 # limitations under the License.
  15 
  16 import sys
  17 
  18 import nox
  19 
  20 test_dependencies = [
  21     "django>=2.0.0",
  22     "google-auth",
  23     "google-auth-httplib2",
  24     "mox",
  25     "parameterized",
  26     "pyopenssl",
  27     "pytest",
  28     "pytest-cov",
  29     "webtest",
  30     "coverage",
  31     "unittest2",
  32     "mock",
  33 ]
  34 
  35 
  36 @nox.session(python=["3.7"])
  37 def lint(session):
  38     session.install("flake8")
  39     session.run(
  40         "flake8",
  41         "googleapiclient",
  42         "tests",
  43         "--count",
  44         "--select=E9,F63,F7,F82",
  45         "--show-source",
  46         "--statistics",
  47     )
  48 
  49 
  50 @nox.session(python=["3.6", "3.7", "3.8", "3.9"])
  51 @nox.parametrize(
  52     "oauth2client",
  53     [
  54         "oauth2client<2dev",
  55         "oauth2client>=2,<=3dev",
  56         "oauth2client>=3,<=4dev",
  57         "oauth2client>=4,<=5dev",
  58     ],
  59 )
  60 def unit(session, oauth2client):
  61     session.install(*test_dependencies)
  62     session.install(oauth2client)
  63     session.install('.')
  64 
  65     # Run py.test against the unit tests.
  66     session.run(
  67         "py.test",
  68         "--quiet",
  69         "--cov=googleapiclient",
  70         "--cov=tests",
  71         "--cov-append",
  72         "--cov-config=.coveragerc",
  73         "--cov-report=",
  74         "--cov-fail-under=85",
  75         "tests",
  76         *session.posargs,
  77     )
  78 
  79 
  80 @nox.session(python="3.6")
  81 def docs(session):
  82     session.install('.')
  83     session.run("python", "describe.py")
  [end of noxfile.py]
  [start of synth.py]
  1 # Copyright 2020 Google LLC
  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 synthtool as s
  16 from synthtool import gcp
  17 
  18 
  19 common = gcp.CommonTemplates()
  20 
  21 # ----------------------------------------------------------------------------
  22 # Add templated files
  23 # ----------------------------------------------------------------------------
  24 templated_files = common.py_library()
  25 
  26 # Copy kokoro configs.
  27 # Docs are excluded as repo docs cannot currently be generated using sphinx.
  28 s.move(templated_files / '.kokoro', excludes=['**/docs/*', 'publish-docs.sh'])
  29 
  30 # Also move issue templates
  31 s.move(templated_files / '.github')
  32 
  33 # ----------------------------------------------------------------------------
  34 # Generate docs
  35 # ----------------------------------------------------------------------------
  36 s.shell.run(["nox", "-s", "docs"], hide_output=False)
  37
  [end of synth.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/noxfile.py b/noxfile.py
  --- a/noxfile.py
  +++ b/noxfile.py
  @@ -75,9 +75,3 @@
           "tests",
           *session.posargs,
       )
  -
  -
  -@nox.session(python="3.6")
  -def docs(session):
  -    session.install('.')
  -    session.run("python", "describe.py")
  \ No newline at end of file
  diff --git a/synth.py b/synth.py
  --- a/synth.py
  +++ b/synth.py
  @@ -29,8 +29,3 @@
   
   # Also move issue templates
   s.move(templated_files / '.github')
  -
  -# ----------------------------------------------------------------------------
  -# Generate docs
  -# ----------------------------------------------------------------------------
  -s.shell.run(["nox", "-s", "docs"], hide_output=False)
  
verification_info: {"golden_diff": "diff --git a/noxfile.py b/noxfile.py\n--- a/noxfile.py\n+++ b/noxfile.py\n@@ -75,9 +75,3 @@\n         \"tests\",\n         *session.posargs,\n     )\n-\n-\n-@nox.session(python=\"3.6\")\n-def docs(session):\n-    session.install('.')\n-    session.run(\"python\", \"describe.py\")\n\\ No newline at end of file\ndiff --git a/synth.py b/synth.py\n--- a/synth.py\n+++ b/synth.py\n@@ -29,8 +29,3 @@\n \n # Also move issue templates\n s.move(templated_files / '.github')\n-\n-# ----------------------------------------------------------------------------\n-# Generate docs\n-# ----------------------------------------------------------------------------\n-s.shell.run([\"nox\", \"-s\", \"docs\"], hide_output=False)\n", "issue": "Remove duplicate docs generation\nIn `synth.py` we have a `nox` session to generate the docs [here](https://github.com/googleapis/google-api-python-client/blob/master/synth.py#L36). The same python script is running as part of the Github action in #1187, so we should remove the `docs` session from `synth.py` and `noxfile.py`.\n", "before_files": [{"content": "\n# Copyright 2020 Google LLC\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 sys\n\nimport nox\n\ntest_dependencies = [\n    \"django>=2.0.0\",\n    \"google-auth\",\n    \"google-auth-httplib2\",\n    \"mox\",\n    \"parameterized\",\n    \"pyopenssl\",\n    \"pytest\",\n    \"pytest-cov\",\n    \"webtest\",\n    \"coverage\",\n    \"unittest2\",\n    \"mock\",\n]\n\n\n@nox.session(python=[\"3.7\"])\ndef lint(session):\n    session.install(\"flake8\")\n    session.run(\n        \"flake8\",\n        \"googleapiclient\",\n        \"tests\",\n        \"--count\",\n        \"--select=E9,F63,F7,F82\",\n        \"--show-source\",\n        \"--statistics\",\n    )\n\n\n@nox.session(python=[\"3.6\", \"3.7\", \"3.8\", \"3.9\"])\n@nox.parametrize(\n    \"oauth2client\",\n    [\n        \"oauth2client<2dev\",\n        \"oauth2client>=2,<=3dev\",\n        \"oauth2client>=3,<=4dev\",\n        \"oauth2client>=4,<=5dev\",\n    ],\n)\ndef unit(session, oauth2client):\n    session.install(*test_dependencies)\n    session.install(oauth2client)\n    session.install('.')\n\n    # Run py.test against the unit tests.\n    session.run(\n        \"py.test\",\n        \"--quiet\",\n        \"--cov=googleapiclient\",\n        \"--cov=tests\",\n        \"--cov-append\",\n        \"--cov-config=.coveragerc\",\n        \"--cov-report=\",\n        \"--cov-fail-under=85\",\n        \"tests\",\n        *session.posargs,\n    )\n\n\n@nox.session(python=\"3.6\")\ndef docs(session):\n    session.install('.')\n    session.run(\"python\", \"describe.py\")", "path": "noxfile.py"}, {"content": "# Copyright 2020 Google LLC\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 synthtool as s\nfrom synthtool import gcp\n\n\ncommon = gcp.CommonTemplates()\n\n# ----------------------------------------------------------------------------\n# Add templated files\n# ----------------------------------------------------------------------------\ntemplated_files = common.py_library()\n\n# Copy kokoro configs.\n# Docs are excluded as repo docs cannot currently be generated using sphinx.\ns.move(templated_files / '.kokoro', excludes=['**/docs/*', 'publish-docs.sh'])\n\n# Also move issue templates\ns.move(templated_files / '.github')\n\n# ----------------------------------------------------------------------------\n# Generate docs\n# ----------------------------------------------------------------------------\ns.shell.run([\"nox\", \"-s\", \"docs\"], hide_output=False)\n", "path": "synth.py"}]}