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.8 #295

Merged
merged 1 commit into from
Oct 11, 2024
Merged

Drop support for Python 3.8 #295

merged 1 commit into from
Oct 11, 2024

Conversation

mrtmm
Copy link
Contributor

@mrtmm mrtmm commented Oct 8, 2024

No description provided.

@mrtmm mrtmm requested a review from fghaas October 8, 2024 06:15
@mrtmm mrtmm marked this pull request as draft October 8, 2024 07:17
@mrtmm mrtmm force-pushed the drop-python3.8 branch 2 times, most recently from 9b7c8d7 to 2412ae2 Compare October 9, 2024 11:18
Copy link

codecov bot commented Oct 9, 2024

Codecov Report

Attention: Patch coverage is 88.88889% with 1 line in your changes missing coverage. Please review.

Project coverage is 95.50%. Comparing base (f56e6fc) to head (6c32e84).
Report is 1 commits behind head on master.

Files with missing lines Patch % Lines
hastexo/hastexo.py 88.88% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##           master     #295      +/-   ##
==========================================
+ Coverage   94.82%   95.50%   +0.67%     
==========================================
  Files          24       24              
  Lines        1991     1979      -12     
==========================================
+ Hits         1888     1890       +2     
+ Misses        103       89      -14     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

@fghaas
Copy link
Contributor

fghaas commented Oct 9, 2024

@mrtmm Just checking if you want my review here. (I'm marked as reviewer but the PR is still a Draft. :) )

@mrtmm mrtmm marked this pull request as ready for review October 9, 2024 11:55
@mrtmm
Copy link
Contributor Author

mrtmm commented Oct 9, 2024

@fghaas yes I initially added you to review before I saw the tests failing. Now is ready to be reviewed (although still I need to look into the coverage).

@fghaas
Copy link
Contributor

fghaas commented Oct 9, 2024

Honestly, I'm not sure exactly what codecov is complaining about, here. Having a low coverage rate on a diff that's mostly code removal doesn't really make sense to me.

Copy link
Contributor

@fghaas fghaas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good to me in general. I have a couple of tiny nits, and then we also need an update to the README please.

Changelog.md Outdated Show resolved Hide resolved
@mrtmm mrtmm force-pushed the drop-python3.8 branch 2 times, most recently from 8feb0eb to 9699dc7 Compare October 10, 2024 07:36
README.md Outdated
| Nutmeg | `>=14.0, <15` | `>=7.0, <8.0` | `stable-7.0` |
| Olive | `>=15.0, <16` | `>=7.5, <8.0` | `stable-7.0` |
| Palm | `>=16.0, <17` | `>=7.5, <8.0` | `stable-7.0` |
| Quince | `>=17.0, <18` | `>=7.9, <8.0` | `stable-7.0` |
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

stable-7.0 doesn't work for a branch where the latest minor release is 7.13. :) You probably want to call the branch stable-7 instead.

@fghaas
Copy link
Contributor

fghaas commented Oct 10, 2024

Okay. Final thought: do we want to add

python_requires='>=3.11',

... to setup.py? I know we've never enforced a Python version this way, but I think now might be a good opportunity to start.

(Reference: setuptools documentation)

@fghaas
Copy link
Contributor

fghaas commented Oct 10, 2024

Now that we're enforcing a minimum of Python 3.11, we'll also need:

basepython = python3.11

in tox.ini, for the flake8, pipdeptree, and pipdeptree-requirements testenvs (and only for those). Otherwise, tox will fail when run locally on Ubuntu Jammy, whose default Python is Python 3.10 (which means that the python3.11 package must be separately installed).

Also, can you please check that that doesn't break anything when running tox on a Mac?

@mrtmm
Copy link
Contributor Author

mrtmm commented Oct 10, 2024

I currently run python3.12 tests locally only and rely the rest to be run in here; adding basepython = python3.11 does break those tests for me because I don't have python 3.11 installed, should be fine once I install it.

@fghaas
Copy link
Contributor

fghaas commented Oct 11, 2024

@mrtmm If you're happy with what I suggested in mrtmm#10, then please squash the two commits in this PR into one. Then, I think this one is good to merge (unless you have any second thoughts).

* Drop support for Python 3.8 and Xblock <2.
* Remove Python 3.8 and pip 22.0.4 from the test matrix.
* Use generative section names in tox.ini
  By prefixing *all* our testenvs with the Python version factor
  ("py311", "py312", etc.), we can ensure that all of our testenvs can
  be invoked with either Python version being present on the system.

  tox will then skip those environments that don't match the Python
  present on the system, and — provided the remaining environments
  succeed — return with a zero exit code (indicating success).

  However, if *all* environments are skipped, because there is no
  matching Python version present on the system at all, it returns with
  a nonzero exit code (indicating failure).

  Reference:
  https://tox.wiki/en/latest/config.html#generative-section-names
Copy link
Contributor

@fghaas fghaas left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks good to me now; please merge at your convenience. Thanks!

@mrtmm mrtmm merged commit 6c32e84 into hastexo:master Oct 11, 2024
5 of 6 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants