[Tooling & Documentation]: Upgrade to python 3.13.5#74
Merged
BethanyG merged 22 commits intoexercism:mainfrom Feb 19, 2026
Merged
[Tooling & Documentation]: Upgrade to python 3.13.5#74BethanyG merged 22 commits intoexercism:mainfrom
BethanyG merged 22 commits intoexercism:mainfrom
Conversation
…PyLint analyzers.
…ils from PyLint docs.
…abled all extensions.
…d Analyzer feedback.
…dded extended PyLint messaging for PyLint comments. Added a generic analyzer for when no custom analyzer is found.
…ames from file instead of using empty directories,
8 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This will need to be merged all at once with changes to the runner, the analyzer, and the content repo.
Please also note that the number of files here is due to having to add golden test results, exercise config directories, and code/comments from PyLint. Those files need not be reviewed.
python:3.13.5-alpine3.22as Python container version inDockerfile.requirements.txtanddev-requirements.txtlib/common/comment.py,lib/common/exercise.py, &lib/common/pylint_comments.py) to usepylint.run_pylintaspylint.epylinthas been deprecated.lib/common/pylint_comments.pyto look up and include extended PyLint rule details including good/bad code examples, related link info, and other details.lib/common/exercise.pyto add a path to/lib/common/generic_analyzer/analyzer.pywhen no specific or custom analyzer is found for an exercise. This ensures that PyLint is run (and gives feedback on) all exercises, including practice exercises.lib/common/generic_analyzer/analyzer.py. This runs PyLint for a given exercise, and is used when there aren't specific customizations or a specificanalyzer.pyfor an exercise.test_analyzer.pytest file for golden tests. This is in addition to the more specifictwo_fer_test.pythat tests thetwo-feranalysis.run-tests-in-docker.shto more easily run tests for the Analyzer in the built docker container.run-in-docker.sh,run.sh, andrun.py.analysis.jsonfiles.exercise-names.txtfile to/lib/common/. This is read in by the analyzer and added to the ANALYZERS "allowed" dictionary, pointing to the generic analyzer when no custom analyzer is found.lib/common/pylint_data/directory. This addition, along with "details" and "related" files have exploded this PR. However, these filed DO NOT need to be reviewed, as they are copies from PyLints docs./comments/general/to add ageneral_recommendations.mdfile with 10 tips that is returned when the analyzer has no feedback for a solution. Also modified the files under/comments/pylint/to include the new details from PyLint. These were needed for testing, but have also been PRd towebsite-copyin anticipation of this PR being merged.run.shwithout modifying code.