-
-
Notifications
You must be signed in to change notification settings - Fork 312
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
Add Python 3.12 Support #752
Conversation
Hello, I am planning to use your package in my new project. But i saw that you fixed the pydantic version in requirement-dev.txt. I need to use pydantic V2. Does this fix block my usage? If yes, will you support pydantic v2 and when? |
@abdullah-retorio Hi, pydantic version doesn't matter, it's only for tests. I successfully use pydanticV2 and this DI in my project. |
Hi 👋 |
@rmk135 Hi, please, could you review? |
You might also want to update the CI config to also run tests on Python 3.12: https://github.com/ets-labs/python-dependency-injector/blob/master/.github/workflows/tests-and-linters.yml |
The reason why I deleted tests for an older python versions is - СPython version 3.7 and lower is no longer supported. |
@anton-petrov thanks a lot for the PR. For some reason, some of the tests are not passing. Also, I probably would keep Python 3.7 support for a little bit because it's still around 5% of users who haven't upgraded just yet. I'm going to merge the PR as is into a feature branch and continue working on it there. |
hello @rmk135 when this pr will get merge to main branch . |
Is there a new tag containing this ? |
@rmk135 Sorry for the ping, but it would be awesome if you could create a new release with this change. Also happy to help if some preparation work is needed. Just let me know 🙇 |
@fgreinacher see #765 |
* Ignore .vscode * Python 3.12 Support * Change base python to 3.12 and pin pydantic to V1 * all tests passed * ci: change default python to 3.12 * remove legacy python versions * annotate pydantic models for tests
* Add Python 3.12 Support (#752) * Ignore .vscode * Python 3.12 Support * Change base python to 3.12 and pin pydantic to V1 * all tests passed * ci: change default python to 3.12 * remove legacy python versions * annotate pydantic models for tests * Update publishing pipeline to use Python 3.12 * Test environment updates * Update Cython to the latest prior 3.0 version and remove tracing from CI/CD * Give up using editable tox installation in the coverage job * Add mypy test fixes * Remove tracing from the coverage job * Fix typing test * Remove PyPy 2.7 * Fix typing test * Fix the typing issue with pydantic * Remove pypy 3.9 * Fix the typing issue with mypy * Update pydantic version to the latest from 1.x * Update scipy deprecation warning filter * Fix the tox job running coveralls * Update changelog --------- Co-authored-by: Anton Petrov <[email protected]>
The release with Python 3.12 support is on PyPI: https://pypi.org/project/dependency-injector/4.42.0b1/
Please report any issues you notice by opening an issue here: https://github.com/ets-labs/python-dependency-injector/issues I'll publish the plan for future steps a bit later. There is a lot of work to do. PS: anton-petrov thank you for this PR again. |
Description
Added support for Python 3.12
All tests passed ✌️
Ready for merge.
Pinned dependencies:
Fixed Github Actions for CI and tox configuration.
Removed tests for legacy python versions, supported only CPython >= 3.8 and PyPy >= 3.9