Contributing to Django or how I learned to stop worrying and just try to fix an ORM Bug
summary
Fixes a long‑standing SQLite quirk: a 2009 bug where SQLite named parameters break raw queries. Reproduces the failure, updates sqlite3 backend (convert_query / execute / execute_many), flips supports_param_style = False to True, and adds a naming‑dictionary formatting approach so named params work across backends. Runs targeted tests and the full test suite passes, lands a PR and updates Python docs. Public notes show iterative debugging across ~40 comments and the ticket labelled ticket 170 is closed.
AI-written summary · about
chapters (9)
- 0:00Introduction
- 6:06First ORM bug attempt
- 11:47Bug re-evaluation and guidance
- 16:10Bug replication and research
- 20:56Fixing SQLite named params
- 24:28Testing and documenting
- 29:46Collaborative improvements
- 32:21Lessons learned
- 34:32Contribute to Django
related talks
01h 06mEffective Django
30mMake the most of Open Source
29mPony, Cat, and Paw: Getting Started with the Open Source Menagerie
26mOh, I Found a Security Issue
28mHow mentorship programs sustain Django and Wagtail
31m"Notes on Over-Engineering: A Project Post-Mortem"
17mOff the Beaten Path: Exploring Unusual Roads to Django Performance
24mImproving App Performance with Snapshots
