$ the-wire · showcase
Deferred fields survive peer fetches, cookie deletion fixed
By RepoJournal · Filed · About Django · Composed from the cited sources · methodology
Django landed two correctness fixes in querysets and responses: FETCH_PEERS no longer clobbers deferred fields refreshed out of band, and cookie deletion now matches the __Http- and __Host-Http- prefixes it was failing on.
Fixed #37436 -- Avoided overwriting when FETCH_PEERS fetches deferred fields. django/django
Accessing a peer to trigger fetch_many() used to overwrite a deferred field you had already plucked with refresh_from_db(fields=...) or set by attribute assignment; those local values now survive the fetch, and peer fetching also tolerates deleted instances. Anything relying on stale-in-memory-but-refreshed field state stops leaking the old value back in.
Fixed #37467 -- Fixed deletion of cookies with __Http- and __Host-Http- prefixes. django/django
Deleting a cookie whose name carried the __Http- or __Host-Http- prefix did not work; this commit corrects the prefix handling so the delete response actually clears it.
Fixed #37468 -- Clarified the effects of changing primary keys to existing values. django/django
The docs now spell out what happens when you change a primary key to a value another row already holds, on the same ticket as the pull request doing the same clarification.
Fixed #37436 -- Avoided overwriting when FETCH_PEERS fetches deferred fields. django/django
The pull request half of the FETCH_PEERS work: when peer values are locally modified or the database rows are deleted, the fetch no longer overwrites them. The contributor disclosed OpenAI ChatGPT assistance on the branch.
Fixed #37468 -- Clarified the effects of changing primary keys to existing values. django/django
An earlier pass at the same primary-key clarification, now superseded by the more recent revision of the ticket.
Bump tooling versions django/django-docker-box
The long tail: django-docker-box bumped its tooling pins, taking dockerfile to v1.28, hadolint to v2.15.1, ruff to v0.17.3, and zizmor to v1.31.1.