Implementing a Formal Experimental API for Django

My concern is less about maintenance and more about internal design and smooth integration, what the API can and can’t do cleanly. I’ve used waffle in production in the past and the friction around dynamic state (flags evaluated inside or outside a request context, in tasks or management commands) was real and not incidental.

That said, whether a feature flags framework belongs in core is a separate and genuinely open question, though I do think there is a real case to be made. A feature flags implementation that works naturally across Django’s own verticals (auth, ORM, middleware, tasks, templates) likely needs something from core that third-party packages can’t easily reach.

I’d love to see this GSoC project do that research: what would a solid implementation actually need from Django internals, and is that need strong enough to justify a home in core? Django (as a client) is a demanding/complex enough that designing for it well would cover most real-world needs, I think.

1 Like