Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

drop support for Python 3.7.0 and 3.7.1 #4585

Merged
merged 1 commit into from
Jan 19, 2022
Merged

Conversation

nathaniel-may
Copy link
Contributor

@nathaniel-may nathaniel-may commented Jan 18, 2022

resolves #4584

Running dbt v1.0.0 and v0.21 (and possibly other dbt versions) with these Python versions causes a Python exception to be thrown. This disallows installing dbt with when running pip with these Python versions.

Checklist

  • I have signed the CLA
  • I have run this code in development and it appears to resolve the stated issue
  • This PR includes tests, or tests are not required/relevant for this PR
  • I have updated the CHANGELOG.md and added information about my change

@jtcohen6
Copy link
Contributor

Should this go in for 1.0.2? Generally, we shouldn't raise dependency lower bounds in patch releases, though it would be better to raise a more helpful error than the one currently encountered. My sense, though, is that bumping python_requires will only prevent installation if users are running 3.7.0/3.7.1; it won't actually raise a more helpful error at runtime if already installed.

@nathaniel-may
Copy link
Contributor Author

nathaniel-may commented Jan 19, 2022

@jtcohen6 that's correct. I can see good reasons for including in either version:

  • 1.0.2 - for everyone updating from a version prior to 1.0 to 1.0.latest on the affected Python versions, this will be a useful check for them.
  • 1.1.0 - for everyone currently on 1.0 updating to the latest patch release on the affected Python versions this would be a smoother transition.

Which version would you like this to go in?

EDIT: I just realized that the second option might be moot. People on the affected versions can't even use dbt since dbt run just fails. We probably shouldn't optimize for them. I vote 1.0.2.

@jtcohen6
Copy link
Contributor

I buy it!

@nathaniel-may nathaniel-may merged commit a588607 into main Jan 19, 2022
@nathaniel-may nathaniel-may deleted the nate/drop-support branch January 19, 2022 17:24
@nathaniel-may
Copy link
Contributor Author

@leahwicz we could also backport this to 0.21 since we know that version is affected as well, but I don't think patches were in the plan for versions prior to 1.0.

@leahwicz
Copy link
Contributor

@nathaniel-may we only want to patch 0.21 for security bugs at this point so let's not backport this to that release.

For 1.0.2 I would be hesitant to backport it there as well and just wait for 1.1.0. For patches, we really should only be doing bug fixes and I don't consider this a bug fix. If you feel differently, lets chat and we can figure out a plan ahead

@nathaniel-may
Copy link
Contributor Author

That's fair. Normally I'd argue that this fixes a bug because it would prevent users from issuing dbt run and seeing an exception. However, because we're not backporting it to 0.21 it will just install 0.21 instead and that will blow up in the same way anyway.

Happy to wait till 1.1.0 for this one since the only affected users are people using Python v3.7.0 and v3.7.1 which should be fairly rare at this point.

@jtcohen6
Copy link
Contributor

@nathaniel-may I realized we actually want this change to core/setup.py, not setup.py (which is for the now-deprecated dbt package)!

I'm fine with the reasoning above, so I switched #4584 to the 1.1.0 milestone.

Could we make sure this gets a changelog entry for 1.1.0? We shouldn't expect this to affect many people, but any time we up a lower bound (especially Python version), we should record it IMO

@jtcohen6 jtcohen6 mentioned this pull request Jan 28, 2022
2 tasks
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

[CT-56] Remove support for Python 3.7.0, 3.7.1
3 participants