-
Notifications
You must be signed in to change notification settings - Fork 9
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
Personal/rheldst 19003 #57
Personal/rheldst 19003 #57
Conversation
Warning: The mypy type checker has found some errors. See the mypy job for details |
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## master #57 +/- ##
=========================================
Coverage 100.00% 100.00%
=========================================
Files 13 12 -1
Lines 786 785 -1
=========================================
- Hits 786 785 -1 ☔ View full report in Codecov by Sentry. |
I am not super experienced with poetry but can you explain how dependency pinning for multiple versions works? And also how does poetry decide for which python version it should pin deps (I assume that current poetry.lock is for py3.9). |
Warning: The mypy type checker has found some errors. See the mypy job for details |
1 similar comment
Warning: The mypy type checker has found some errors. See the mypy job for details |
I haven't found any official documentation on how Poetry handles multiple versions of Python, but from the lock file structure and some github issues I inferred that: |
Warning: The mypy type checker has found some errors. See the mypy job for details |
1 similar comment
Warning: The mypy type checker has found some errors. See the mypy job for details |
Since poetry is the only tool that reliably solves dependency management for multiple python versions, we move to installing dependencies via poetry. This has the downside that we have to remove rpm-py-installer from dependencies managed with poetry and install it separately, as poetry only installs PEP517-compliant packages and rpm-py-installer is not PEP517 compliant. This should not however cause issues with updating dependencies as the rpm-py-installer package is virtually unmaintained at the moment and the last update to the package was in Aug 2022.
Warning: The mypy type checker has found some errors. See the mypy job for details |
We have set up dependency pinning via poetry lock file. I have chosen poetry since it is the only tool that reliably manages dependency pinning for multiple versions of python.
Unfortunately, since poetry forces installation of all dependencies with PEP517 enforced, rpm-py-installer has to be taken out of dependencies and installed separately. This should not pose a great problem, since rpm-py-installer is not being maintained and the last update was in August 2022. Also there is a PR for replacing rpm-py-installer with rpmdyn here.
We have set up renovate to update dependencies. It will update the dependencies for the following parts of the project:
Renovate was set up to run every weekend and to automerge all but major updates on Tuesday 12:00.