From f96801972f654f398b08aa2351660e63b95cc906 Mon Sep 17 00:00:00 2001 From: colin-rogers-dbt <111200756+colin-rogers-dbt@users.noreply.github.com> Date: Tue, 20 Jun 2023 14:45:03 -0700 Subject: [PATCH] backport 637 to 1.5.latest (#669) * Dropped support for Python 3.7 (#637) * update RELEASE_BRANCH env * drop support for python 3.7 * add changelog entry (cherry picked from commit f0af9162a01f8894023b5c34be492f420925919f) * remove dup classifiers entry --------- Co-authored-by: Matthew McKnight <91097623+McKnight-42@users.noreply.github.com> --- .changes/unreleased/Under the Hood-20230530-161341.yaml | 6 ++++++ .github/scripts/integration-test-matrix.js | 2 +- .github/workflows/main.yml | 4 ++-- CONTRIBUTING.MD | 2 +- setup.py | 9 ++++----- tox.ini | 6 +++--- 6 files changed, 17 insertions(+), 12 deletions(-) create mode 100644 .changes/unreleased/Under the Hood-20230530-161341.yaml diff --git a/.changes/unreleased/Under the Hood-20230530-161341.yaml b/.changes/unreleased/Under the Hood-20230530-161341.yaml new file mode 100644 index 000000000..31acaf121 --- /dev/null +++ b/.changes/unreleased/Under the Hood-20230530-161341.yaml @@ -0,0 +1,6 @@ +kind: Under the Hood +body: remove support for python 3.7 +time: 2023-05-30T16:13:41.217839-05:00 +custom: + Author: McKnight-42 + Issue: "638" diff --git a/.github/scripts/integration-test-matrix.js b/.github/scripts/integration-test-matrix.js index 22d637190..eb32d469d 100644 --- a/.github/scripts/integration-test-matrix.js +++ b/.github/scripts/integration-test-matrix.js @@ -1,6 +1,6 @@ module.exports = ({ context }) => { const defaultPythonVersion = "3.8"; - const supportedPythonVersions = ["3.7", "3.8", "3.9", "3.10"]; + const supportedPythonVersions = ["3.8", "3.9", "3.10"]; const supportedAdapters = ["snowflake"]; // if PR, generate matrix based on files changed and PR labels diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 72f68128f..7374e3fac 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -72,7 +72,7 @@ jobs: strategy: fail-fast: false matrix: - python-version: ['3.7', '3.8', '3.9', '3.10'] + python-version: ['3.8', '3.9', '3.10'] env: TOXENV: "unit" @@ -174,7 +174,7 @@ jobs: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] - python-version: ['3.7', '3.8', '3.9', '3.10'] + python-version: ['3.8', '3.9', '3.10'] steps: - name: Set up Python ${{ matrix.python-version }} diff --git a/CONTRIBUTING.MD b/CONTRIBUTING.MD index cda96ef0c..ee02d0cfc 100644 --- a/CONTRIBUTING.MD +++ b/CONTRIBUTING.MD @@ -79,7 +79,7 @@ WARNING: The parameters in your `test.env` file must link to a valid Snowflake a There are a few methods for running tests locally. #### `tox` -`tox` automatically runs unit tests against several Python versions using its own virtualenvs. Run `tox -p` to run unit tests for Python 3.7, Python 3.8, Python 3.9, Python 3.10, and `flake8` in parallel. Run `tox -e py37` to invoke tests on Python version 3.7 only (use py37, py38, py39, or py310). Tox recipes are found in `tox.ini`. +`tox` automatically runs unit tests against several Python versions using its own virtualenvs. Run `tox -p` to run unit tests for Python 3.8, Python 3.9, Python 3.10, and `flake8` in parallel. Run `tox -e py38` to invoke tests on Python version 3.8 only (use py38, py39, or py310). Tox recipes are found in `tox.ini`. #### `pytest` You may run a specific test or group of tests using `pytest` directly. Activate a Python virtualenv active with dev dependencies installed. Then, run tests like so: diff --git a/setup.py b/setup.py index 61446bbb0..95bf54dda 100644 --- a/setup.py +++ b/setup.py @@ -3,10 +3,10 @@ import sys import re -# require python 3.7 or newer -if sys.version_info < (3, 7): +# require python 3.8 or newer +if sys.version_info < (3, 8): print("Error: dbt does not support this version of Python.") - print("Please upgrade to Python 3.7 or higher.") + print("Please upgrade to Python 3.8 or higher.") sys.exit(1) @@ -76,10 +76,9 @@ def _get_dbt_core_version(): "Operating System :: Microsoft :: Windows", "Operating System :: MacOS :: MacOS X", "Operating System :: POSIX :: Linux", - "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", ], - python_requires=">=3.7", + python_requires=">=3.8", ) diff --git a/tox.ini b/tox.ini index 1338de1ae..df95ee1f1 100644 --- a/tox.ini +++ b/tox.ini @@ -1,8 +1,8 @@ [tox] skipsdist = True -envlist = py37,py38,py39,py310 +envlist = py38,py39,py310 -[testenv:{unit,py37,py38,py39,py310,py}] +[testenv:{unit,py38,py39,py310,py}] description = unit testing skip_install = true passenv = @@ -13,7 +13,7 @@ deps = -rdev-requirements.txt -e. -[testenv:{integration,py37,py38,py39,py310,py}-{snowflake}] +[testenv:{integration,py38,py39,py310,py}-{snowflake}] description = adapter plugin integration testing skip_install = true passenv =