A framework version is one part of the system
Legacy Django work includes the Python interpreter, dependencies, custom middleware, authentication, database drivers and deployment settings. A package installer accepting a new version is not a successful application upgrade. Define the current dependency chain and the supported target before estimating the transition.
- Name login, admin, forms and the main business write path.
- Record the database and media storage boundaries.
- Keep sensitive settings and production keys outside source and enquiries.
Upgrade through understandable steps
Django recommends reviewing each crossed release and usually upgrading incrementally through feature releases using the latest patch for each step. Resolve project deprecation warnings before moving on and check third-party support. Unmaintained dependencies can require replacement work rather than a simple framework bump.
- Keep a passing baseline and test with warnings visible.
- Pin the intended step rather than accidentally installing the newest available release.
- Recheck migrations and custom SQL separately from page rendering.
A long import is a separate reliability outcome
An import that coincides with 502 errors needs its own reproduction and evidence: the input size, request duration, proxy or application logs and effect on other requests. Modernising the framework does not automatically solve that workflow. Any move to background execution also needs progress, error and repeat-processing rules.
- Use a synthetic import fixture, not client records.
- Check that unrelated pages remain usable during the agreed test.
Deploy with the right settings
Django's check --deploy examines some production settings, but it is not a whole application acceptance test. DEBUG must remain false in production, secret handling needs a private route, and database and uploaded-media backups both matter. Ask for an upgrade or import repair with versions and redacted symptoms; no private code or dump is required initially.
Sources and limits
- Django: upgrading versions Checked 2026-10-10.
- Incremental feature-release upgrades are usually easier.
- Review release notes, third-party compatibility and deprecation warnings.
- Django: deployment checklist Checked 2026-10-10.
- DEBUG must not be enabled in production.
- Production settings, database and media backup strategies need review.