-
Notifications
You must be signed in to change notification settings - Fork 6
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
[IA-3699] Update Django, Python & backend dependencies #1823
Draft
tdethier
wants to merge
46
commits into
main
Choose a base branch
from
IA-3699_upgrade-backend-dependencies
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains 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
tdethier
force-pushed
the
IA-3699_upgrade-backend-dependencies
branch
from
November 26, 2024 15:01
047a860
to
079cfdd
Compare
tdethier
force-pushed
the
IA-3699_upgrade-backend-dependencies
branch
from
December 3, 2024 15:13
ce3b501
to
c6a925e
Compare
7 tasks
tdethier
force-pushed
the
IA-3699_upgrade-backend-dependencies
branch
from
December 6, 2024 12:00
a0791e0
to
0c0a24f
Compare
tdethier
force-pushed
the
IA-3699_upgrade-backend-dependencies
branch
from
December 12, 2024 10:55
24e79a4
to
e036e62
Compare
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.
Update Django, Python & backend dependencies.
Related JIRA tickets : IA-3699
Self proofreading checklist
TODO
Update files with new versions:
requirements.txt
requirements-dev.txt
Fix code:
Passing 'crs' is not supported with the 'pyogrio' engine.
ingeopandas
pyxform
(see ⬇️)Instances
freq
inInstances
Instance
deletionpyxform
&get_definition_data()
Testing:
GroupSet
InstanceLock
basename
refresh_lqas_data.py
(see requirements.txt)request.headers.get("user-agent", "")
Other:
5.1.4
Doc
django.contrib.gis.admin.GeoModelAdmin
was removed in Django 5.0.0GET
requests in thedjango.contrib.auth.views.LogoutView
was removed in Django 5.0.0QuerySet.iterator()
on a queryset that prefetches related objects without providing thechunk_size
argument is now forbidden since Django 5.0.0django.utils.timezone.utc
was removed in Django 5.0.0QuerySets
as arguments of conditions inside aFilteredRelation()
has been forbidden since Django 5.0.2settings.DEFAULT_FILE_STORAGE
was removed in Django 5.1.0model.TextChoices
) member values became a tuple of arguments in Django 5.1.0 (not in change logs)allauth.account.middleware.AccountMiddleware
middleware has been required to be present insettings.MIDDLEWARE
since allauth 0.56.0M
has been deprecated since Pandas 2.2.0geopandas
' I/O engine now defaults to Pyogrio which is now installed with GeoPandas instead of Fiona, which prevents from passing acrs
, since geopandas 1.0.0pyxform
's API for non-path input was changed in pyxform 2.1.0Changes
How to test
Run tests, check the web application, check the mobile application.
Print screen / video
/
Notes
Thanks to Marc, I used django-upgrade to update the code to match Django 5.1, then I manually edited to files to fix the remaining issues.
I used pip-review to update all backend dependencies.
This PR will need to be thoroughly tested before deployment, as there are a lot of updates and breaking changes due to these updates. This is even more true for the features that were edited.
Some of the test issues showed up because there are many tests that fetch lists, but do not include an
order
parameter. If there is noorder_by
on the queryset, then of course the result can't be 100% determined.Below is the result of flaky tests, after a local initial (successful) run:
Follow the Conventional Commits specification
The merge message of a pull request must follow the Conventional Commits specification.
This convention helps to automatically generate release notes.
Use lowercase for consistency.
Example:
Note that the Jira reference is preceded by a line break.
Both the line break and the Jira reference are entered in the Add an optional extended description… field.