feat: Add support for Django 4.2-5.2 and Python 3.10-3.13#276
feat: Add support for Django 4.2-5.2 and Python 3.10-3.13#276abhiabhi94 wants to merge 3 commits intodevelopfrom
Conversation
setuptools is deprecated and removed from python 3.13
1e4e1e1 to
7114916
Compare
There was a problem hiding this comment.
Pull Request Overview
This PR modernizes the django-comments-dab package by updating supported Django versions from 2.2-3.2 to 4.2-5.2 and Python versions from 3.6-3.10 to 3.10-3.13, dropping support for end-of-life versions. The changes also migrate from deprecated setuptools packaging to modern pyproject.toml configuration.
Key changes:
- Update version support matrices in tox.ini and GitHub Actions workflows
- Replace setup.py/setup.cfg with pyproject.toml using hatchling backend
- Remove deprecated Django compatibility code and update deprecated test methods
Reviewed Changes
Copilot reviewed 16 out of 16 changed files in this pull request and generated no comments.
Show a summary per file
| File | Description |
|---|---|
| tox.ini | Updates test matrix to support Django 4.2-5.2 and Python 3.10-3.13 |
| setup.py | Removes deprecated setuptools configuration file |
| setup.cfg | Removes old package metadata, keeping only flake8 configuration |
| pyproject.toml | Adds modern packaging configuration with hatchling backend |
| comment/tests/test_models/test_comments.py | Updates deprecated assertQuerysetEqual method calls |
| comment/tests/test_forms.py | Fixes test assertion to handle dynamic widget attributes |
| comment/tests/base.py | Updates deprecated assertQuerysetEqual method definition |
| comment/conf/init.py | Updates deprecated settings list for newer Django versions |
| comment/api/serializers.py | Adds null checks to prevent errors with unsaved objects |
| comment/init.py | Removes Django 3.2 compatibility code |
| MANIFEST.in | Removes file as packaging now handled by pyproject.toml |
| .github/workflows/* | Updates GitHub Actions to use newer action versions and Python 3.13 |
Comments suppressed due to low confidence (3)
pyproject.toml:25
- Django 5.2 has not been released yet. As of January 2025, Django 5.1 is the latest stable version. Consider removing this classifier or using a pre-release identifier if testing against development versions.
"Framework :: Django :: 5.2",
tox.ini:6
- Django 5.2 (django52) has not been released yet. Testing against unreleased versions may cause CI failures.
py313-django{42, 50, 51, 52, main}
tox.ini:42
- Django 5.2 has not been released yet. This dependency specification will fail to install.
django52: Django>=5.2,<5.3
- read the docs now requires a separate file to build
- update supported Django versions from 2.2-3.2 to 4.2-5.2 - update supported Python versions from 3.6-3.10 to 3.10-3.13 - drop support for Django and Python versions that have reached end of life. - remove deprecated Django features and compatibility code
|
hey @Radi85, how are you? its been sometime since we worked together on this project. The configurations around codecov seems to have changed, which is causing the CI to fail. Some of the ways to fix that would be:
|
Hey @Radi85, if you don't have the time to work on this project now, I would like to thank you for starting it and all the contributions that you have made to this. Let me know, if any of these options make sense to you.
|
|
In order to keep the project alive, I have merged this and released using my own fork. Will try to keep the project alive as much as I can. Thanks Radico. |
end of life.
Additional commits
chore: Move to pyproject.toml for modern packaging
chore: Fix the build for docs on readthedocs