Synthetic Industry

Job django-python27-to-supported · revised 9 October 2026

Move a Django 1.11 site off Python 2.7 on a test copy

A bounded existing app builds and its agreed pages, login and form flow pass on a test copy using Python 3.12 and Django 5.2; no production switch is implied.

You might be seeing

  • A host says Python 2.7 is unavailable for new deploys
  • The Django 1.11 site is still live but dependencies will not install on a current Python

No passwords, keys, card details or admin invites needed to start.

What usually happened

An inherited Django 1.11/Python 2.7 app depends on libraries and syntax not accepted by a supported Python/Django combination. A direct version bump can break migrations, logins and scheduled jobs.

Who it’s for: Owner of a small Django site left on Django 1.11 and Python 2.7 after its developer moved on.

Usually starts when: Old Python cannot be installed on the new host, or the owner needs security-supported Django and Python.

The result: A bounded existing app builds and its agreed pages, login and form flow pass on a test copy using Python 3.12 and Django 5.2; no production switch is implied.

Check whether this job fits

Answer these without sending logins or customer data. Nothing is submitted unless you choose to contact us.

Does the current application run Django 1.11 with Python 2.7?
Can you make a safe copy without live customer records?
Are the critical routes and dependency licences available?

Answer the questions to see whether this job fits.

Nothing is sent anywhere until you choose to email us.

Email us your answers

Checks you can run yourself

  1. Read version pins

    Open requirements.txt and the host Python setting, without sending keys.

    Look for: Note Django and Python versions and any abandoned third-party libraries.

What you get

  • Version-locked updated source and dependency report
  • Before/after test matrix and owner-run cutover/rollback notes

Included

  • One Django app with up to ten agreed routes and one database on a test copy
  • Update Python syntax, Django APIs and supported dependencies needed for those routes

Not included

  • Full rewrite of a large Django estate
  • New features, UI redesign or database engine migration
  • Production data migration or live hosting switch
  • Fixing private packages with no supported release

How we know it’s done

Agreed with you before work starts. Each check produces evidence you keep.

  1. The agreed ten routes render on Python 3.12 and Django 5.2 with no new 500 responses

    Evidence: Version outputs, route status list and browser screenshots

  2. Owner-approved login and form submission work against synthetic data and migrations complete on disposable database only

    Evidence: Redacted test account login, saved test row and migration log

Sign-off. You inspect the named test result and sign off before payment. Your authorised account holder performs and verifies any live change.

If it fails. If the agreed test fails, you do not pay for this fixed scope. We hand over the findings and agree whether to stop or re-quote; no surprise work.

When it fits, and when we stop

It fits when

  • Owner can supply the full source, dependency list and sanitised database fixture
  • Ten business-critical routes, forms and login can be agreed before a fixed-scope assessment

We stop and tell you if

  • No source or dependency licences are available
  • Unbounded app count, unknown third-party package, regulated data or destructive migrations demand a separate quote

What could go wrong

Keep the previous code or configuration on a named test copy. The handover lists every change and its reverse; live database changes or external effects require a separate owner-approved plan.

Scroll the table sideways to read it all.

RiskHow we handle it
Old migrations modify records irreversiblyApply only to a disposable database and hand over backup and dry-run notes.
Unsupported library has no usable replacementStop at dependency review and re-quote; do not silently remove a feature.

An independent reviewer checks the specific data, payment and permission risks, the redacted test result and whether the owner can safely reverse the change.

How we deliver

We arrange the work and independent review, then show you the result against the agreed checks. You keep authority over your systems.

  • Run old app against synthetic data to record the ten agreed flows
  • Upgrade Python/Django and packages in compatible steps; review migrations before applying to test copy
  • Run routes, auth and forms on target versions; independent database and auth review
  • Hand over the reviewed change, evidence and reversal steps; the owner controls the live switch.

This is a one-off job, not emergency cover or a subscription. We confirm eligibility, the total price, a start window and a delivery date before you accept. Work starts only after agreed inputs, secure access, any licences and necessary permissions are in place. Hosting, platform and supplier charges are excluded unless the written quote includes them. No charge or booking is created by an enquiry.

Need to keep it working?

After the upgrade, discuss keeping dependencies supported and the named business routes tested as the app changes.

Ongoing work is separately scoped and quoted: no monitoring, response-time guarantee or automatic subscription is included in this job.

Explore an ongoing engineering lane, or mention the responsibility you need in your enquiry.

What you can check

This is a new service. We have not delivered this job for a client yet.

Other ways to get this done

  • Ask the original platform or app vendor whether its support can fix this under your existing plan.
  • If someone already maintains this system for you, ask them to test this exact failure on a copy first.

Questions

Can this be a one-click update?

No. Python 2 syntax, Django APIs and third-party packages each need compatibility checks.

Will you switch my live site?

No. The owner approves and performs the cutover after testing and backups.

Start with an email

Send us

  • Django/Python versions and redacted requirements file
  • List of ten critical routes and whether current login works

Later, once you agree

  • Authorised code handoff and synthetic test data
  • Local/staging environment details under owner control
  • A company-controlled secure handoff agreed before access: no live passwords, keys, private code or customer records by ordinary email.

You keep the live service, account, production keys and customer records. Agents work only on an authorised copy with synthetic data and a company-controlled handoff; a person owns Synthetic Industry and remains accountable. Your authorised account holder approves and carries out the live change.

Enquire — from £1,495

Or write to hello@syntheticindustry.ai with “django-python27-to-supported” as the subject.