prompt: You will be provided with a partial code base and an issue statement explaining a problem to resolve.
  <issue>
  Update Bokeh to latest version
  I remember there was some reason that we were holding off on upgrading Bokeh from 1.3.4. However, Bokeh is now up to version 2.2.1 I believe. We should look into upgrading the version used for JWQL in order to take advantage of new features and so that we minimize the number of plots created under 1.3.4 which may need to be tweaked to work under the new version.
  
  For example, one difference I ran into today was that the keyword "legend", which is used in 1.3.4 to denote the string printed in the legend for a particular element, has been changed to "legend_label" in version 2.2.1.
  
  </issue>
  <code>
  [start of setup.py]
  1 import numpy as np
  2 from setuptools import setup
  3 from setuptools import find_packages
  4 
  5 VERSION = '0.24.0'
  6 
  7 AUTHORS = 'Matthew Bourque, Lauren Chambers, Misty Cracraft, Mike Engesser, Mees Fix, Joe Filippazzo, Bryan Hilbert, '
  8 AUTHORS += 'Graham Kanarek, Teagan King, Catherine Martlin, Maria Pena-Guerrero, Johannes Sahlmann, Ben Sunnquist'
  9 
  10 DESCRIPTION = 'The James Webb Space Telescope Quicklook Project'
  11 
  12 DEPENDENCY_LINKS = ['git+https://github.com/spacetelescope/jwst_reffiles#egg=jwst_reffiles']
  13 
  14 REQUIRES = [
  15     'asdf>=2.3.3',
  16     'astropy>=3.2.1',
  17     'astroquery>=0.3.9',
  18     'authlib',
  19     'bokeh>=1.0,<1.4',
  20     'codecov',
  21     'crds',
  22     'cryptography',
  23     'django',
  24     'flake8',
  25     'inflection',
  26     'ipython',
  27     'jinja2',
  28     'jsonschema',
  29     'jwedb>=0.0.3',
  30     'jwst',
  31     'matplotlib',
  32     'nodejs',
  33     'numpy',
  34     'numpydoc',
  35     'pandas',
  36     'psycopg2',
  37     'pysiaf',
  38     'pytest',
  39     'pytest-cov',
  40     'scipy',
  41     'sphinx',
  42     'sqlalchemy',
  43     'stsci_rtd_theme',
  44     'twine',
  45     'wtforms'
  46 ]
  47 
  48 setup(
  49     name='jwql',
  50     version=VERSION,
  51     description=DESCRIPTION,
  52     url='https://github.com/spacetelescope/jwql.git',
  53     author=AUTHORS,
  54     author_email='jwql@stsci.edu',
  55     license='BSD',
  56     keywords=['astronomy', 'python'],
  57     classifiers=['Programming Language :: Python'],
  58     packages=find_packages(),
  59     install_requires=REQUIRES,
  60     dependency_links=DEPENDENCY_LINKS,
  61     include_package_data=True,
  62     include_dirs=[np.get_include()],
  63 )
  64
  [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
  @@ -16,7 +16,7 @@
       'astropy>=3.2.1',
       'astroquery>=0.3.9',
       'authlib',
  -    'bokeh>=1.0,<1.4',
  +    'bokeh',
       'codecov',
       'crds',
       'cryptography',
  
verification_info: {"golden_diff": "diff --git a/setup.py b/setup.py\n--- a/setup.py\n+++ b/setup.py\n@@ -16,7 +16,7 @@\n     'astropy>=3.2.1',\n     'astroquery>=0.3.9',\n     'authlib',\n-    'bokeh>=1.0,<1.4',\n+    'bokeh',\n     'codecov',\n     'crds',\n     'cryptography',\n", "issue": "Update Bokeh to latest version\nI remember there was some reason that we were holding off on upgrading Bokeh from 1.3.4. However, Bokeh is now up to version 2.2.1 I believe. We should look into upgrading the version used for JWQL in order to take advantage of new features and so that we minimize the number of plots created under 1.3.4 which may need to be tweaked to work under the new version.\r\n\r\nFor example, one difference I ran into today was that the keyword \"legend\", which is used in 1.3.4 to denote the string printed in the legend for a particular element, has been changed to \"legend_label\" in version 2.2.1.\n", "before_files": [{"content": "import numpy as np\nfrom setuptools import setup\nfrom setuptools import find_packages\n\nVERSION = '0.24.0'\n\nAUTHORS = 'Matthew Bourque, Lauren Chambers, Misty Cracraft, Mike Engesser, Mees Fix, Joe Filippazzo, Bryan Hilbert, '\nAUTHORS += 'Graham Kanarek, Teagan King, Catherine Martlin, Maria Pena-Guerrero, Johannes Sahlmann, Ben Sunnquist'\n\nDESCRIPTION = 'The James Webb Space Telescope Quicklook Project'\n\nDEPENDENCY_LINKS = ['git+https://github.com/spacetelescope/jwst_reffiles#egg=jwst_reffiles']\n\nREQUIRES = [\n    'asdf>=2.3.3',\n    'astropy>=3.2.1',\n    'astroquery>=0.3.9',\n    'authlib',\n    'bokeh>=1.0,<1.4',\n    'codecov',\n    'crds',\n    'cryptography',\n    'django',\n    'flake8',\n    'inflection',\n    'ipython',\n    'jinja2',\n    'jsonschema',\n    'jwedb>=0.0.3',\n    'jwst',\n    'matplotlib',\n    'nodejs',\n    'numpy',\n    'numpydoc',\n    'pandas',\n    'psycopg2',\n    'pysiaf',\n    'pytest',\n    'pytest-cov',\n    'scipy',\n    'sphinx',\n    'sqlalchemy',\n    'stsci_rtd_theme',\n    'twine',\n    'wtforms'\n]\n\nsetup(\n    name='jwql',\n    version=VERSION,\n    description=DESCRIPTION,\n    url='https://github.com/spacetelescope/jwql.git',\n    author=AUTHORS,\n    author_email='jwql@stsci.edu',\n    license='BSD',\n    keywords=['astronomy', 'python'],\n    classifiers=['Programming Language :: Python'],\n    packages=find_packages(),\n    install_requires=REQUIRES,\n    dependency_links=DEPENDENCY_LINKS,\n    include_package_data=True,\n    include_dirs=[np.get_include()],\n)\n", "path": "setup.py"}]}