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

Only supporting Python 3.7+ (including dropping Python 2) #255

Merged
merged 3 commits into from
Feb 27, 2023
Merged

Conversation

mahmoud
Copy link
Owner

@mahmoud mahmoud commented Feb 20, 2023

Per the changelog last month, Python 2 is not long for glom.

Actually supporting the intrinsic idiosyncrasies between the two major versions wasn't so bad. But all the headaches of tools (virtualenv, tox, etc.) and keeping CI running for Py2 slows down releases and definitely makes feature development less fun.

As far as usage, Python 2 represents <1% of pip installs almost every day in the available history, according to PyPI stats.

Maybe also worth noting that we'd planned to do this for a while, but wanted to wait for a moment when it felt like most of the important features were available. So matching, error traces, scopes, extensions, etc., can still be found in versions <23.2.

Anyways, feel free to chime in. @kurtbrose and I think 2/23 sounds like a great time for glom to go from 2->3. (Get it? two to three, 2 2 3, 2/23 😁 )

@codecov
Copy link

codecov bot commented Feb 20, 2023

Codecov Report

Merging #255 (3ca6fc0) into master (a8de39d) will decrease coverage by 0.25%.
The diff coverage is 100.00%.

@@            Coverage Diff             @@
##           master     #255      +/-   ##
==========================================
- Coverage   98.26%   98.01%   -0.25%     
==========================================
  Files          27       27              
  Lines        4380     4336      -44     
  Branches      760      748      -12     
==========================================
- Hits         4304     4250      -54     
- Misses         48       56       +8     
- Partials       28       30       +2     
Impacted Files Coverage Δ
glom/matching.py 99.36% <ø> (-0.64%) ⬇️
glom/_version.py 100.00% <100.00%> (ø)
glom/cli.py 85.82% <100.00%> (-0.33%) ⬇️
glom/core.py 98.04% <100.00%> (-0.19%) ⬇️
glom/test/test_error.py 97.42% <100.00%> (-2.12%) ⬇️
glom/test/test_path_and_t.py 99.06% <100.00%> (-0.02%) ⬇️
glom/__main__.py 0.00% <0.00%> (-33.34%) ⬇️

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

Copy link
Collaborator

@kurtbrose kurtbrose left a comment

Choose a reason for hiding this comment

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

LGTM! it's made that code coverage went down 0.01% or something but I don't think actual coverage went down, just more covered than not-covered lines were deleted

(maybe because those backport python files counted as 100% covered with the coverage-ignore pragmas?)

@mahmoud
Copy link
Owner Author

mahmoud commented Feb 27, 2023

Alright, I feel like if anyone was going to comment on the PR, a week's time is a pretty solid window. Unsurprisingly uncontroversial so far. Merging for release later this week.

@mahmoud mahmoud merged commit ec19f8b into master Feb 27, 2023
@mahmoud mahmoud mentioned this pull request Dec 18, 2023
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