-
Notifications
You must be signed in to change notification settings - Fork 2
Description
Code of Conduct
- I agree to follow Django's Code of Conduct
Feature Description
Enable the third-party ecosystem to plug into core Django features in a more flexible and powerful way by adding pluggy as a dependency.
Problem
While the third-party ecosystem is one of Django's strengths, it is not always possible to plug into Django functionality without jumping through hoops (usually adding to settings.py). Adding pluggy would add more flexible entry points for plugins.
Request or proposal
proposal
Additional Details
When reviewing django/deps#98 (comment), the Steering Council had the idea of using pluggy to enable third-party packages to easily plug into the proposed django new command. We quickly realised that it would also enable adding plugin entry points when building other Django features.
There is some prior art for using pluggy with Django, for example:
- https://2024.djangocon.us/talks/how-to-design-and-implement-extensible-software-with-plugins/
- https://simonwillison.net/2024/Sep/25/djp-a-plugin-system-for-django/
pluggy is also a mature and stable package, that has been used by pytest for years.
Implementation Suggestions
No response
Metadata
Metadata
Assignees
Labels
Type
Projects
Status