Upgrade Python Django 4.0 to 5.2 LTS - #2
Conversation
There was a problem hiding this comment.
Pull request overview
Updates the project stack for a Django 5.2 LTS / Python 3.13 baseline and streamlines the repository by removing large sets of vendored static/admin/frontend assets, while updating container/runtime tooling.
Changes:
- Upgrade dependencies and runtime targets (Django 5.2, Python 3.13; new production requirements file).
- Simplify routing and remove bundled frontend/DRF-related assets and vendor static files.
- Add operational tooling: request logging + admin rate-limit middleware, DB preflight on
runserver, and container/workflow adjustments.
Reviewed changes
Copilot reviewed 116 out of 257 changed files in this pull request and generated 6 comments.
Show a summary per file
| File | Description |
|---|---|
| static/rest_framework/js/default.js | Remove vendored DRF JS asset |
| static/rest_framework/js/csrf.js | Remove vendored DRF CSRF helper |
| static/rest_framework/js/ajax-form.js | Remove vendored DRF AJAX form helper |
| static/rest_framework/docs/js/jquery.json-view.min.js | Remove vendored docs JS plugin |
| static/rest_framework/docs/css/jquery.json-view.min.css | Remove vendored docs CSS |
| static/rest_framework/docs/css/highlight.css | Remove vendored docs highlight theme |
| static/rest_framework/docs/css/base.css | Remove vendored docs base styles |
| static/rest_framework/css/prettify.css | Remove vendored prettify styles |
| static/rest_framework/css/default.css | Remove vendored DRF default styles |
| static/rest_framework/css/bootstrap-tweaks.css | Remove vendored bootstrap tweak styles |
| static/js/main.cf10efc5.js.LICENSE.txt | Remove built asset license bundle |
| static/js/787.59b41c7e.chunk.js | Remove built JS chunk |
| static/django_extensions/js/jquery.bgiframe.js | Remove vendored django-extensions JS plugin |
| static/django_extensions/js/jquery.ajaxQueue.js | Remove vendored django-extensions JS plugin |
| static/django_extensions/css/jquery.autocomplete.css | Remove vendored django-extensions CSS |
| static/admin/js/vendor/xregexp/LICENSE.txt | Remove vendored license file |
| static/admin/js/vendor/select2/LICENSE.md | Remove vendored license file |
| static/admin/js/vendor/select2/i18n/zh-TW.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/zh-CN.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/vi.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/uk.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/tr.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/tk.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/th.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/sv.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/sr.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/sr-Cyrl.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/sq.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/sl.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/sk.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ru.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ro.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/pt.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/pt-BR.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ps.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/pl.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/nl.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ne.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/nb.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ms.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/mk.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/lv.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/lt.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ko.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/km.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ka.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ja.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/it.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/is.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/id.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/hy.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/hu.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/hsb.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/hr.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/hi.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/he.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/gl.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/fr.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/fi.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/fa.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/eu.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/et.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/es.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/en.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/el.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/dsb.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/de.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/da.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/cs.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ca.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/bs.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/bn.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/bg.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/az.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/ar.js | Remove vendored Select2 locale |
| static/admin/js/vendor/select2/i18n/af.js | Remove vendored Select2 locale |
| static/admin/js/vendor/jquery/LICENSE.txt | Remove vendored jQuery license |
| static/admin/js/SelectBox.js | Remove vendored Django admin JS |
| static/admin/js/prepopulate.js | Remove vendored Django admin JS |
| static/admin/js/prepopulate_init.js | Remove vendored Django admin JS |
| static/admin/js/popup_response.js | Remove vendored Django admin JS |
| static/admin/js/nav_sidebar.js | Remove vendored Django admin JS |
| static/admin/js/jquery.init.js | Remove vendored Django admin JS |
| static/admin/js/core.js | Remove vendored Django admin JS |
| static/admin/js/collapse.js | Remove vendored Django admin JS |
| static/admin/js/change_form.js | Remove vendored Django admin JS |
| static/admin/js/cancel.js | Remove vendored Django admin JS |
| static/admin/js/calendar.js | Remove vendored Django admin JS |
| static/admin/js/autocomplete.js | Remove vendored Django admin JS |
| static/admin/js/admin/RelatedObjectLookups.js | Remove vendored Django admin JS |
| static/admin/js/actions.js | Remove vendored Django admin JS |
| static/admin/img/tooltag-arrowright.svg | Remove vendored Django admin image |
| static/admin/img/tooltag-add.svg | Remove vendored Django admin image |
| static/admin/img/sorting-icons.svg | Remove vendored Django admin image |
| static/admin/img/selector-icons.svg | Remove vendored Django admin image |
| static/admin/img/search.svg | Remove vendored Django admin image |
| static/admin/img/README.txt | Remove vendored Django admin readme |
| static/admin/img/LICENSE | Remove vendored Django admin license |
| static/admin/img/inline-delete.svg | Remove vendored Django admin image |
| static/admin/img/icon-yes.svg | Remove vendored Django admin image |
| static/admin/img/icon-viewlink.svg | Remove vendored Django admin image |
| static/admin/img/icon-unknown.svg | Remove vendored Django admin image |
| static/admin/img/icon-unknown-alt.svg | Remove vendored Django admin image |
| static/admin/img/icon-no.svg | Remove vendored Django admin image |
| static/admin/img/icon-deletelink.svg | Remove vendored Django admin image |
| static/admin/img/icon-clock.svg | Remove vendored Django admin image |
| static/admin/img/icon-changelink.svg | Remove vendored Django admin image |
| static/admin/img/icon-calendar.svg | Remove vendored Django admin image |
| static/admin/img/icon-alert.svg | Remove vendored Django admin image |
| static/admin/img/icon-addlink.svg | Remove vendored Django admin image |
| static/admin/img/gis/move_vertex_on.svg | Remove vendored Django admin GIS image |
| static/admin/img/gis/move_vertex_off.svg | Remove vendored Django admin GIS image |
| static/admin/img/calendar-icons.svg | Remove vendored Django admin image |
| static/admin/fonts/README.txt | Remove vendored Django admin font readme |
| static/admin/fonts/LICENSE.txt | Remove vendored Django admin font license |
| static/admin/css/vendor/select2/LICENSE-SELECT2.md | Remove vendored Select2 CSS license |
| static/admin/css/rtl.css | Remove vendored Django admin CSS |
| static/admin/css/responsive_rtl.css | Remove vendored Django admin CSS |
| static/admin/css/nav_sidebar.css | Remove vendored Django admin CSS |
| static/admin/css/login.css | Remove vendored Django admin CSS |
| static/admin/css/fonts.css | Remove vendored Django admin CSS |
| static/admin/css/dashboard.css | Remove vendored Django admin CSS |
| setup.cfg | Remove flake8 configuration file |
| seleniumpy/management/commands/crawl.py | Improve crawl command logging/exception handling |
| screenshots/.gitignore | Keep screenshots dir but ignore generated images |
| requirements.txt | Replace pinned dependency list with smaller Django 5.2-compatible set |
| requirements-docker-production.txt | Add production-specific requirements for Docker builds |
| readme.md | Update Docker/admin/mail docs and reorganize sections |
| passenger_wsgi.py | Add Passenger WSGI entrypoint loader |
| logs/.keep | Preserve logs directory in repo |
| logs/.gitignore | Keep logs dir but ignore generated log files |
| local.yml | Update local compose service names, ports, and env wiring |
| frontend/src/utils/config.js | Remove frontend utility (frontend removal) |
| frontend/src/setupTests.js | Remove CRA test setup |
| frontend/src/services/productService.js | Remove frontend service module |
| frontend/src/services/HttpService.js | Remove frontend HTTP service |
| frontend/src/services/AuthServices.js | Remove frontend auth services |
| frontend/src/Routes.js | Remove frontend routing module |
| frontend/src/reportWebVitals.js | Remove web-vitals reporting |
| frontend/src/redux/types.js | Remove Redux types |
| frontend/src/redux/store.js | Remove Redux store |
| frontend/src/redux/reducers/productsReducer.js | Remove Redux reducer |
| frontend/src/redux/reducers/index.js | Remove Redux root reducer |
| frontend/src/redux/actions/productActions.js | Remove Redux actions |
| frontend/src/PrivateRoute.js | Remove private routing component |
| frontend/src/logo.svg | Remove CRA logo asset |
| frontend/src/index.scss | Frontend styling file (frontend removal) |
| frontend/src/index.js | Remove CRA entrypoint |
| frontend/src/Guard.js | Remove route guard component |
| frontend/src/components/pages/HomeComponent.js | Remove frontend page component |
| frontend/src/components/layouts/Header.js | Remove frontend header component |
| frontend/src/bootstrap.js | Remove frontend bootstrap entry |
| frontend/src/App.test.js | Remove frontend tests |
| frontend/src/App.scss | Frontend styling file (frontend removal) |
| frontend/src/App.js | Remove frontend App component |
| frontend/README.md | Remove CRA README |
| frontend/public/robots.txt | Remove CRA public asset |
| frontend/public/manifest.json | Remove CRA manifest |
| frontend/public/index.html | Remove CRA HTML template |
| frontend/package.json | Remove frontend npm manifest |
| frontend/build/static/js/main.cf10efc5.js.LICENSE.txt | Remove built frontend artifact |
| frontend/build/static/js/787.59b41c7e.chunk.js | Remove built frontend artifact |
| frontend/build/robots.txt | Remove built frontend artifact |
| frontend/build/manifest.json | Remove built frontend artifact |
| frontend/build/index.html | Remove built frontend artifact |
| frontend/build/asset-manifest.json | Remove built frontend artifact |
| frontend/.gitignore | Remove frontend-specific gitignore |
| compose/production/traefik/traefik.yml | Update Traefik config and remove custom middleware wiring |
| compose/production/traefik/Dockerfile | Update Traefik image version |
| compose/production/django/start | Add optional RUN_MIGRATIONS gate; update gunicorn target |
| compose/production/django/Dockerfile | Update Python base and install from new production requirements file |
| compose/production/aws/Dockerfile | Update AWS CLI base image |
| compose/local/docs/Dockerfile | Update Python base version and minor comments |
| compose/local/django/start | Update local start flow and switch dev server port to 8000 |
| compose/local/django/Dockerfile | Update Python base and simplify build dependencies |
| cgi.py | Remove Python 3.13 cgi shim (no longer needed with newer Django) |
| app/wsgi.py | Update docs link and normalize settings module string quoting |
| app/views.py | Remove catchall TemplateView |
| app/urls.py | Remove API/catchall routing; keep admin + debug media |
| app/middleware.py | Add request logging and admin rate limiting middleware |
| app/management/commands/runserver.py | Add DB connectivity preflight before starting dev server |
| app/asgi.py | Update docs link for Django 5.2 |
| app/init.py | Minor formatting adjustment; keep PyMySQL MySQLdb shim |
| .vscode/settings.json | Remove editor-specific settings |
| .gitignore | Simplify ignore ruleset |
| .github/workflows/build.yml | Update CI env creation and target Python 3.13 |
| .envs/.local/.mariadb | Remove local MariaDB env file |
| .env.testing | Remove testing env file |
| .env.example | Expand and reorganize example env configuration |
| .dockerignore | Ignore tmp directory during Docker build |
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
| urlpatterns = [ | ||
| path('admin/', admin.site.urls), | ||
| path('api/v1/auth/', include('djoser.urls')), | ||
| path('api/v1/auth/', include('djoser.urls.authtoken')), | ||
| re_path(r'^.*', views.catchall), | ||
| ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) | ||
| path("admin/", admin.site.urls), | ||
| ] |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Uh oh!
There was an error while loading. Please reload this page.
No description provided.