Fixed #36168: Handled backward migration squash bug. by houston0222 · Pull Request #19612 · django/django · GitHub | Latest TMZ Celebrity News & Gossip | Watch TMZ Live
Skip to content

Fixed #36168: Handled backward migration squash bug. #19612

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

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

houston0222
Copy link

Trac ticket number

ticket-#36168

Branch description

This branch fixes a bug affecting backward migrations to replaced migrations in projects with squashed migrations spanning multiple apps.

The core issue was that migration_plan() mutates the global migration loader’s graph to disable replacement pruning, which impacts subsequent calls like _create_project_state(). This causes the migration graph to incorrectly include both squashed and replaced migrations as leaf nodes, leading to duplicate state mutations and errors such as FieldDoesNotExist.

The _migrate_all_backwards() method is updated to avoid relying on the mutated global loader by using a temporary loader instance with replace_migrations=False to safely generate migration plans without side effects.

This prevents global state mutation, ensures consistent project state reconstruction during backward migrations, and resolves related migration errors.

Checklist

  • This PR targets the main branch.
  • The commit message is written in past tense, mentions the ticket number, and ends with a period.
  • I have checked the "Has patch" ticket flag in the Trac system.
  • I have added or updated relevant tests.
  • I have added or updated relevant docs, including release notes if applicable.
  • I have attached screenshots in both light and dark modes for any UI changes.

@houston0222 houston0222 marked this pull request as draft July 1, 2025 15:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant

TMZ Celebrity News – Breaking Stories, Videos & Gossip

Looking for the latest TMZ celebrity news? You've come to the right place. From shocking Hollywood scandals to exclusive videos, TMZ delivers it all in real time.

Whether it’s a red carpet slip-up, a viral paparazzi moment, or a legal drama involving your favorite stars, TMZ news is always first to break the story. Stay in the loop with daily updates, insider tips, and jaw-dropping photos.

🎥 Watch TMZ Live

TMZ Live brings you daily celebrity news and interviews straight from the TMZ newsroom. Don’t miss a beat—watch now and see what’s trending in Hollywood.