This package follows a couple of MUST-have design principles.
The package and it is features needs to be maintainable. It is more important upgrade to the latest Django or Python release than it is to add more features.
The features, as well as the code, should be accessible to users and first time contributors. Documentation is key!
A good package solves only one problem and solves it well. We don't want people to add code to their runtime environment that they don't need.
All features need to be tested. A CI suite should be in place. Running and writing tests should be reasonably accessible for first time contributors.
We follow semantic versioning. To release a new version simply create a new GitHub release, specify the version and add the changelog into the release description.