-
Notifications
You must be signed in to change notification settings - Fork 438
update Python, Django, and DRF versions & packaging configuration #922
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
update Python, Django, and DRF versions & packaging configuration #922
Conversation
Thanks @terencehonles, it's crazy to me that python3.9 is already approaching it's end of life. I'm not familiar with the Do you know how the PyPI search works, or where the documentation is? If we have The python3.6 test run can't be removed from the CI test matrix because I don't have access to the repository settings to disable the branch protection rule that requires it. Only Cristi the original author has access to those settings. He's given me write access to the repository and PyPI permissions to publish which is exactly what we need to maintain the package and keep publishing new versions 🚀 #662. It makes sense for him to retain some of the settings access since he spent a long time developing the package from scratch and it's a big deal to give full access to someone else. I don't mind leaving the python3.6 run in the test matrix since it's immediately skipped. |
Yeah, it's crazy to me too 🤯, and yes, it just means the package doesn't support Python 2. It's not really required, but it's just to be clear to any scripts that it does not support Python 2 and not just that we've omitted a Python 2 classifier.
I would kinda hope that it would do some basic substitution like this, but I really don't know, and it makes sense to just include
I'm not sure how easy it is to contact Cristi (I'm slightly surprised you managed to do it, since I also reached out to him a bunch way back when), but does it make sense to see if he's willing to give you more permissions? The admin permission would work, but I think you're saying that might be higher than he want(ed/s) to grant, but looking at the docs, a custom role would also suffice. I'm not sure if that's something that is available for public repos or if that's a paid feature. |
Looks like custom roles, are only for organizations, so the admin role would need to be granted to manage branch protections or the newer rulesets. Instead of just faking this, can you ask Cristi about getting that permission? It would be good to enforce that the newer Python tests pass, since only |
Thanks @terencehonles, I think we can make the test environments list a little cleaner by iterating the django version since the drf are linked directed to them: py3{9,10,11,12 }-django40-drf{313,314,315},
py3{9,10,11,12,13}-django41-drf{313,314,315},
py3{9,10,11,12,13}-django42-drf{ 314,315},
py3{ 10,11,12,13}-django50-drf{ 314,315},
py3{ 10,11,12,13}-django51-drf{ 315},
py3{ 10,11,12,13}-django52-drf{ 315}, I looked at some of the big packages on pypi and a lot of them have the As far as admin permissions go I don't think we need to ask Cristi for a custom role since we have what we need to keep publishing new versions. I appreciate that it's not pretty to bail out some test runs on every PR but I've seen from experience that when someone takes a break it's important to be extra respectful of their space. |
77a2999
to
caf50ab
Compare
I grouped by Python version because I thought it was easier to see, and would easily allow removing Python 3.9 when it hit EoL, but the way you put it seems reasonable since you could still remove the 9s from the list, and newer Pythons won't appear earlier in the support matrix so I went with your suggestion (putting Django 5.1 & 5.2 together though)
Does it work to put these things partially in
I don't think we want to bail out on "some tests" because it's actually all tests. I came up with another solution which is a bit of a hack and lies that we are testing on older Python versions (if someone were to look at the tests on a PR), but it addresses your concern about not bugging Cristi so you can tell me what you think... |
Thanks @terencehonles, it's a tricky one to know how much to move to the In #929 I updated the runners to |
120d3ba
to
b198883
Compare
@JoelLefkowitz I would like to get this merged instead of having the goal posts continue to move. Changes like these can come in subsequent PRs, and you know what you're looking for so you can propose a PR which meets your expectations. Having that said, I've moved the properties from |
b198883
to
381e3b2
Compare
Thanks @terencehonles, you are right 😃. I'm resolving the conflicts with the master branch now then we can merge. Thank you for all the hard work! |
Thanks again @terencehonles! |
This change is a proposal, it drops the EoL Python versions, and limits the Django support to the last two major versions (~4 years since release) and the DRF versions that support those versions.