3.1.0 (TBR)
Warning
Old database migrations have been removed in this release. You can upgrade to this release only from version 2.3.0 or later.
Settings
CA_NOTIFICATION_DAYS can now be set using using an ISO 8601 timedelta string.
ACMEv2
No changes yet.
OCSP and CRLs
No changes yet.
REST API
No changes yet.
Command-line
notify_expiring_certs:
The command now always sends all pending notifications. The
--daysparameter no longer has any effect and will be removed indjango-ca==3.3.0.The command now uses the Celery task internally to send notifications, so it will return instantly if Celery is configured. The improvements described below thus also apply to this command.
Admin interface
No changes yet.
Celery tasks
Add the
notify_watchers()task to send notifications for expiring certificates in Celery:The task remembers which notifications were already sent. It can thus be called multiple times a day to protect against outages.
In setups that use Celery, the task is configured to run every six hours.
Python API
django_ca.models.CertificateAuthority.cache_crlswas removed. Usegenerate_crls()instead.
Views
Support for passing an
intas the expires parameter forOCSPViewwas removed (deprecated since 3.0.0).
Models and database support
Removed initial set of migrations, squashed migrations where added in
django-ca==2.3.0.Reduced the maximum length for the name of certificate authorities to 255, from 256. The field is indexed and MariaDB does not allow an index with a length greater then 255 characters.
Names for watchers can now be up to 255 characters long (from 64).
Dependencies
BACKWARDS INCOMPATIBLE: Dropped support for
acme~=5.2.0andacme~=5.3.0.Added support for
pydantic~=2.13.0.Added support for
cryptography~=47.0.
Deprecation notices
This is the last release to support
acme~=5.4.0.This is the last release to support
pydantic~=2.12.0.This is the last release to support
cryptography~=46.0.
Setup and packaging
Switch to hatch to build Python Wheels.