The Wire · Showcase
DJANGO PATCHES GITHUB ACTION RACE CONDITION BREAKING CONCURRENT PRs
By RepoJournal · Filed · About Django
Django fixed a critical concurrency bug in its labels workflow where edits on any pull request could kill another PR's entire label processing pipeline.
The labels.yml GitHub Action was using pull_request_target with github.ref hardcoded to main, meaning concurrent PR edits would trigger the same workflow run and cancel each other [1]. This was a follow-up fix to an earlier commit that didn't fully solve the problem. The Django team also caught and documented two missing release notes: one for Postgres 18+ virtual column support that slipped through when Oracle stored column support was added [2] [3]. Over on djangoproject.com, the team is moving to include patch links in CVE JSON records, matching Python's approach and addressing scoring penalties from the CNA [4]. These are all internal infrastructure improvements, not user-facing changes, so your deployments stay clean.
One email a day. Unsubscribe in one click.
Keep up with Django in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Review your own GitHub Actions workflows for pull_request_target concurrency issues django/django [plan]
- → Watch djangoproject.com CVE JSON updates for improved security advisory structure django/djangoproject.com [monitor]
References
- [1] Fixed concurrency in labels.yml GitHub Action. django/django
- [2] Refs #36277 -- Added release note for Postgres 18+ virtual column. django/django
- [3] Refs #36277 -- Added missing release note for Postgres 18+ virtual column. ↗ django/django
- [4] [checklists] Include links to patches in CVE JSON django/djangoproject.com