prompt: We are currently solving the following issue within our repository. Here is the issue text:
  --- BEGIN ISSUE ---
  Python 3.6.2 doesn't work with dbt 0.17.0
  ### Describe the bug
  Running dbt on python <= 3.6.2 results in an error that `name 'TimestampSnapshotConfig' is not defined`. 3.6.3 is unaffected.
  
  ### Steps To Reproduce
  Install python 3.6.2
  Install dbt
  Try to use dbt
  
  ### Expected behavior
  dbt should run, not crash, etc
  
  
  ### System information
  **Which database are you using dbt with?**
  Any
  
  **The output of `dbt --version`:**
  ```
  0.17.0
  ```
  
  **The operating system you're using:**
  macos, linux
  
  **The output of `python --version`:**
  `Python 3.6.2`
  
  
  
  --- END ISSUE ---
  
  Below are some code segments, each from a relevant file. One or more of these files may contain bugs.
  --- BEGIN FILES ---
  Path: `core/setup.py`
  Content:
  ```
  1 #!/usr/bin/env python
  2 import os
  3 import sys
  4 
  5 from setuptools import setup
  6 try:
  7     from setuptools import find_namespace_packages
  8 except ImportError:
  9     # the user has a downlevel version of setuptools.
  10     print('Error: dbt requires setuptools v40.1.0 or higher.')
  11     print('Please upgrade setuptools with "pip install --upgrade setuptools" '
  12           'and try again')
  13     sys.exit(1)
  14 
  15 
  16 def read(fname):
  17     return open(os.path.join(os.path.dirname(__file__), fname)).read()
  18 
  19 
  20 package_name = "dbt-core"
  21 package_version = "0.17.1a1"
  22 description = """dbt (data build tool) is a command line tool that helps \
  23 analysts and engineers transform data in their warehouse more effectively"""
  24 
  25 
  26 setup(
  27     name=package_name,
  28     version=package_version,
  29     description=description,
  30     long_description=description,
  31     author="Fishtown Analytics",
  32     author_email="info@fishtownanalytics.com",
  33     url="https://github.com/fishtown-analytics/dbt",
  34     packages=find_namespace_packages(include=['dbt', 'dbt.*']),
  35     package_data={
  36         'dbt': [
  37             'include/index.html',
  38             'include/global_project/dbt_project.yml',
  39             'include/global_project/docs/*.md',
  40             'include/global_project/macros/*.sql',
  41             'include/global_project/macros/**/*.sql',
  42             'include/global_project/macros/**/**/*.sql',
  43             'py.typed',
  44         ]
  45     },
  46     test_suite='test',
  47     entry_points={
  48         'console_scripts': [
  49             'dbt = dbt.main:main',
  50         ],
  51     },
  52     scripts=[
  53         'scripts/dbt',
  54     ],
  55     install_requires=[
  56         'Jinja2==2.11.2',
  57         'PyYAML>=3.11',
  58         'sqlparse>=0.2.3,<0.4',
  59         'networkx>=2.3,<3',
  60         'minimal-snowplow-tracker==0.0.2',
  61         'colorama>=0.3.9,<0.5',
  62         'agate>=1.6,<2',
  63         'isodate>=0.6,<0.7',
  64         'json-rpc>=1.12,<2',
  65         'werkzeug>=0.15,<0.17',
  66         'dataclasses==0.6;python_version<"3.7"',
  67         'hologram==0.0.7',
  68         'logbook>=1.5,<1.6',
  69         'typing-extensions>=3.7.4,<3.8',
  70         # the following are all to match snowflake-connector-python
  71         'requests>=2.18.0,<2.23.0',
  72         'idna<2.9',
  73         'cffi>=1.9,<1.14',
  74     ],
  75     zip_safe=False,
  76     classifiers=[
  77         'Development Status :: 5 - Production/Stable',
  78 
  79         'License :: OSI Approved :: Apache Software License',
  80 
  81         'Operating System :: Microsoft :: Windows',
  82         'Operating System :: MacOS :: MacOS X',
  83         'Operating System :: POSIX :: Linux',
  84 
  85         'Programming Language :: Python :: 3.6',
  86         'Programming Language :: Python :: 3.7',
  87         'Programming Language :: Python :: 3.8',
  88     ],
  89     python_requires=">=3.6.2",
  90 )
  91
  ```
  --- 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/core/setup.py b/core/setup.py
  --- a/core/setup.py
  +++ b/core/setup.py
  @@ -86,5 +86,5 @@
           'Programming Language :: Python :: 3.7',
           'Programming Language :: Python :: 3.8',
       ],
  -    python_requires=">=3.6.2",
  +    python_requires=">=3.6.3",
   )
  
verification_info: {"golden_diff": "diff --git a/core/setup.py b/core/setup.py\n--- a/core/setup.py\n+++ b/core/setup.py\n@@ -86,5 +86,5 @@\n         'Programming Language :: Python :: 3.7',\n         'Programming Language :: Python :: 3.8',\n     ],\n-    python_requires=\">=3.6.2\",\n+    python_requires=\">=3.6.3\",\n )\n", "issue": "Python 3.6.2 doesn't work with dbt 0.17.0\n### Describe the bug\r\nRunning dbt on python <= 3.6.2 results in an error that `name 'TimestampSnapshotConfig' is not defined`. 3.6.3 is unaffected.\r\n\r\n### Steps To Reproduce\r\nInstall python 3.6.2\r\nInstall dbt\r\nTry to use dbt\r\n\r\n### Expected behavior\r\ndbt should run, not crash, etc\r\n\r\n\r\n### System information\r\n**Which database are you using dbt with?**\r\nAny\r\n\r\n**The output of `dbt --version`:**\r\n```\r\n0.17.0\r\n```\r\n\r\n**The operating system you're using:**\r\nmacos, linux\r\n\r\n**The output of `python --version`:**\r\n`Python 3.6.2`\r\n\r\n\n", "before_files": [{"content": "#!/usr/bin/env python\nimport os\nimport sys\n\nfrom setuptools import setup\ntry:\n    from setuptools import find_namespace_packages\nexcept ImportError:\n    # the user has a downlevel version of setuptools.\n    print('Error: dbt requires setuptools v40.1.0 or higher.')\n    print('Please upgrade setuptools with \"pip install --upgrade setuptools\" '\n          'and try again')\n    sys.exit(1)\n\n\ndef read(fname):\n    return open(os.path.join(os.path.dirname(__file__), fname)).read()\n\n\npackage_name = \"dbt-core\"\npackage_version = \"0.17.1a1\"\ndescription = \"\"\"dbt (data build tool) is a command line tool that helps \\\nanalysts and engineers transform data in their warehouse more effectively\"\"\"\n\n\nsetup(\n    name=package_name,\n    version=package_version,\n    description=description,\n    long_description=description,\n    author=\"Fishtown Analytics\",\n    author_email=\"info@fishtownanalytics.com\",\n    url=\"https://github.com/fishtown-analytics/dbt\",\n    packages=find_namespace_packages(include=['dbt', 'dbt.*']),\n    package_data={\n        'dbt': [\n            'include/index.html',\n            'include/global_project/dbt_project.yml',\n            'include/global_project/docs/*.md',\n            'include/global_project/macros/*.sql',\n            'include/global_project/macros/**/*.sql',\n            'include/global_project/macros/**/**/*.sql',\n            'py.typed',\n        ]\n    },\n    test_suite='test',\n    entry_points={\n        'console_scripts': [\n            'dbt = dbt.main:main',\n        ],\n    },\n    scripts=[\n        'scripts/dbt',\n    ],\n    install_requires=[\n        'Jinja2==2.11.2',\n        'PyYAML>=3.11',\n        'sqlparse>=0.2.3,<0.4',\n        'networkx>=2.3,<3',\n        'minimal-snowplow-tracker==0.0.2',\n        'colorama>=0.3.9,<0.5',\n        'agate>=1.6,<2',\n        'isodate>=0.6,<0.7',\n        'json-rpc>=1.12,<2',\n        'werkzeug>=0.15,<0.17',\n        'dataclasses==0.6;python_version<\"3.7\"',\n        'hologram==0.0.7',\n        'logbook>=1.5,<1.6',\n        'typing-extensions>=3.7.4,<3.8',\n        # the following are all to match snowflake-connector-python\n        'requests>=2.18.0,<2.23.0',\n        'idna<2.9',\n        'cffi>=1.9,<1.14',\n    ],\n    zip_safe=False,\n    classifiers=[\n        'Development Status :: 5 - Production/Stable',\n\n        'License :: OSI Approved :: Apache Software License',\n\n        'Operating System :: Microsoft :: Windows',\n        'Operating System :: MacOS :: MacOS X',\n        'Operating System :: POSIX :: Linux',\n\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: 3.8',\n    ],\n    python_requires=\">=3.6.2\",\n)\n", "path": "core/setup.py"}], "after_files": [{"content": "#!/usr/bin/env python\nimport os\nimport sys\n\nfrom setuptools import setup\ntry:\n    from setuptools import find_namespace_packages\nexcept ImportError:\n    # the user has a downlevel version of setuptools.\n    print('Error: dbt requires setuptools v40.1.0 or higher.')\n    print('Please upgrade setuptools with \"pip install --upgrade setuptools\" '\n          'and try again')\n    sys.exit(1)\n\n\ndef read(fname):\n    return open(os.path.join(os.path.dirname(__file__), fname)).read()\n\n\npackage_name = \"dbt-core\"\npackage_version = \"0.17.1a1\"\ndescription = \"\"\"dbt (data build tool) is a command line tool that helps \\\nanalysts and engineers transform data in their warehouse more effectively\"\"\"\n\n\nsetup(\n    name=package_name,\n    version=package_version,\n    description=description,\n    long_description=description,\n    author=\"Fishtown Analytics\",\n    author_email=\"info@fishtownanalytics.com\",\n    url=\"https://github.com/fishtown-analytics/dbt\",\n    packages=find_namespace_packages(include=['dbt', 'dbt.*']),\n    package_data={\n        'dbt': [\n            'include/index.html',\n            'include/global_project/dbt_project.yml',\n            'include/global_project/docs/*.md',\n            'include/global_project/macros/*.sql',\n            'include/global_project/macros/**/*.sql',\n            'include/global_project/macros/**/**/*.sql',\n            'py.typed',\n        ]\n    },\n    test_suite='test',\n    entry_points={\n        'console_scripts': [\n            'dbt = dbt.main:main',\n        ],\n    },\n    scripts=[\n        'scripts/dbt',\n    ],\n    install_requires=[\n        'Jinja2==2.11.2',\n        'PyYAML>=3.11',\n        'sqlparse>=0.2.3,<0.4',\n        'networkx>=2.3,<3',\n        'minimal-snowplow-tracker==0.0.2',\n        'colorama>=0.3.9,<0.5',\n        'agate>=1.6,<2',\n        'isodate>=0.6,<0.7',\n        'json-rpc>=1.12,<2',\n        'werkzeug>=0.15,<0.17',\n        'dataclasses==0.6;python_version<\"3.7\"',\n        'hologram==0.0.7',\n        'logbook>=1.5,<1.6',\n        'typing-extensions>=3.7.4,<3.8',\n        # the following are all to match snowflake-connector-python\n        'requests>=2.18.0,<2.23.0',\n        'idna<2.9',\n        'cffi>=1.9,<1.14',\n    ],\n    zip_safe=False,\n    classifiers=[\n        'Development Status :: 5 - Production/Stable',\n\n        'License :: OSI Approved :: Apache Software License',\n\n        'Operating System :: Microsoft :: Windows',\n        'Operating System :: MacOS :: MacOS X',\n        'Operating System :: POSIX :: Linux',\n\n        'Programming Language :: Python :: 3.6',\n        'Programming Language :: Python :: 3.7',\n        'Programming Language :: Python :: 3.8',\n    ],\n    python_requires=\">=3.6.3\",\n)\n", "path": "core/setup.py"}]}