Skip to content

Drop support for Python 3.9 #10405

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

Merged
merged 15 commits into from
Jun 8, 2025
Merged

Drop support for Python 3.9 #10405

merged 15 commits into from
Jun 8, 2025

Conversation

jacobtylerwalls
Copy link
Member

@jacobtylerwalls jacobtylerwalls commented May 26, 2025

Remove support for launching pylint with Python 3.9.
Code that supports Python 3.9 can still be linted with the --py-version=3.9 setting.

@jacobtylerwalls jacobtylerwalls added this to the 4.0.0 milestone May 26, 2025
@jacobtylerwalls jacobtylerwalls requested a review from cdce8p as a code owner May 26, 2025 13:32
@jacobtylerwalls

This comment was marked as resolved.

@jacobtylerwalls jacobtylerwalls added the Maintenance Discussion or action around maintaining pylint or the dev workflow label May 26, 2025
@jacobtylerwalls
Copy link
Member Author

Thankfully UP038 is already deprecated, so I'll just ignore it.

@@ -46,7 +46,7 @@
from pylint.lint.pylinter import PyLinter


_AccessNodes = Union[nodes.Attribute, nodes.AssignAttr]
_AccessNodes = type[nodes.Attribute | nodes.AssignAttr]
Copy link
Collaborator

Choose a reason for hiding this comment

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

I have never seen this, is this correct? What if we stringify this annotation? Do you still need the type?

Copy link
Member Author

Choose a reason for hiding this comment

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

I had the same question

Copy link
Collaborator

Choose a reason for hiding this comment

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

Maybe @cdce8p knows?

Copy link
Member Author

Choose a reason for hiding this comment

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

It's a mypy issue. Rereading the doc I posted in the other comment suggests the workaround in the issue is correct, and these should be changed to TypeAliases. I'll fixup the commit for "Fix UP007" to do that.

@jacobtylerwalls jacobtylerwalls requested review from DanielNoord and removed request for DudeNr33 June 7, 2025 13:25
Copy link

codecov bot commented Jun 7, 2025

Codecov Report

All modified and coverable lines are covered by tests ✅

Project coverage is 95.87%. Comparing base (30200e7) to head (38c82af).
Report is 15 commits behind head on main.

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main   #10405      +/-   ##
==========================================
- Coverage   95.91%   95.87%   -0.04%     
==========================================
  Files         176      176              
  Lines       19147    19137      -10     
==========================================
- Hits        18364    18347      -17     
- Misses        783      790       +7     
Files with missing lines Coverage Δ
pylint/checkers/base/basic_checker.py 98.08% <100.00%> (ø)
pylint/checkers/classes/class_checker.py 93.73% <100.00%> (ø)
pylint/checkers/imports.py 94.86% <100.00%> (ø)
pylint/checkers/refactoring/refactoring_checker.py 98.16% <100.00%> (ø)
pylint/checkers/symilar.py 96.31% <100.00%> (ø)
pylint/checkers/typecheck.py 96.11% <100.00%> (-0.53%) ⬇️
pylint/config/_pylint_config/utils.py 100.00% <100.00%> (ø)
pylint/config/argument.py 100.00% <100.00%> (ø)
pylint/constants.py 100.00% <ø> (ø)
pylint/extensions/code_style.py 100.00% <100.00%> (ø)
... and 7 more

... and 1 file with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@jacobtylerwalls jacobtylerwalls merged commit 8d184b5 into main Jun 8, 2025
32 of 40 checks passed
@jacobtylerwalls jacobtylerwalls deleted the jtw/drop-39 branch June 8, 2025 12:28
@jacobtylerwalls jacobtylerwalls removed the request for review from cdce8p June 8, 2025 12:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Maintenance Discussion or action around maintaining pylint or the dev workflow
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants