Work in progress.
- Admin actions require model permissions to perform operation.
- Bumped
openwisp-utils~=1.1.0
. - Bumped
cryptography~=43.0.0
. - Bumped
pyOpenSSL~=24.2.1
. - Added support for Django
4.2
. - Dropped support for Django <
3.2
. - Added support for Python
3.10
. - Dropped support for Python
3.7
.
- Added
validity_end
to admin list ofCa
andCert
- Removed test dependency on coveralls (it's defined in openwisp-utils)
- Reformatted code with the latest version of the black formatter
- Fixed bug in admin for creating CA
with blank
key_length
anddigest
fields
- Dropped support for Python
3.6
- Added support for Python
3.8
and3.9
- Added support for Django
3.2.x
and4.0.x
- Bumped
cryptography~=36.0.0
- Bumped
pyopenssl~=21.0.0
- [fix] Fixed rendering of CA and cert edit pages when in popup mode (issue #113)
- [fix] Fixed dependency version definition (minor fix)
- [deps] Set min cryptography version to 3.4, allow any higher 3.x
- [deps] Added support for Python
3.8
and3.9
- [deps] Updated pyopenssl range to allow 20.0.x
- [deps] Removed django-model-utils in favour of openwisp-utils which
centralizes several dependencies used by all the OpenWISP modules
(including
django-model-utils
)
- [deps] Pinned django-model-utils>=4.0.0,<4.1.0
- [deps] Pin cryptography to ~=3.2 because version 3.3 contains backward incompatible changes
- [deps] Updated cryptography minimum version to 3.2 for security reasons The version range has also been relaxed to avoid having to update it too often, future versions up to but excluding 4.0 will be accepted
- [fix] Removed
static()
call from admin media - [tests] Updated openwisp-utils[qa] to 0.7
- Models: updated
max_length
ofcommon_name
(Ca
andCert
) to from63
to64
, following conventions about maximum length of common names and hostnames
- Added swappable models, improved extensibility
- Improved documentation on how to extend django-x509
Breaking change: systems using django-x509 as a library must set
DJANGO_X509_CA_MODEL
&DJANGO_X509_CERT_MODEL
values in their settings.py when upgrading or an exception like the following one will be raised:django.core.exceptions.ImproperlyConfigured: Could not find django_x509.Ca!
Added support for django 3.1
Added support for cryptography 3.0.0
N/A
- Added possibility to renew CAs and certificates
- Updated dependency to support cryptography 2.9
- Switched back to jsonfield
- Ensured RFC5280 datetime standard
- Increased maximum length of x509 serial number to 48
- jsonfield2 version set to >=3.1.0,<4.0.0
- Dropped support for python 2
- Added support for django 3.0
- [fix] Use
self.pk
instead ofself.id
to allow more flexible override of primary key - Fixed jQuery init issue on django 2.2
- #36: [requirements] Added support for django 2.1
- #44: [models] Improved error message format #44
- #61: Bumped supported Django version to 2.2 and Python version to 3.7
- #63: [bug] Load model after registration in apps
- Bumped cryptography version to 2.8.0, pyopenssl to 19.0.0
- [admin] Fixed UI bug that prevented changing Cert and CA
- [requirements] cryptography>=2.3.0,<2.4.0
- [requirements] pyopenssl>=17.5.0,<18.1.0
- #41: [requirements] Added support for django 2.1
- [admin] Fixed involuntary permanent modification of field list
- #24: [qa] Added django 2.0 & dropped django 1.10
- #25: [admin]
Automatically select
certificate
andprivate_key
on click - #33: [models]
Added
organizational_unit_name
inCert
andCa
- [admin] Removed
serial_number
from certificate list
- [models] Reimplemented serial numbers as UUID integers
- [UX] Import vs New javascript switcher
- [requirements] upgraded pyopenssl to 17.5.0 and cryptography to 2.2.0
- [models] Fixed uncaught exception when imported PEM
certificate
orprivate_key
is invalid
- temporarily downgraded cryptography and pyopenssl versions to avoid segmentation faults
- [models] Avoided possible double insertion in
Base.save
- [requirements] pyopenssl>=17.1.0,<17.4.0
- [admin] Fixed preformatted look of certificate and private-key fields
- [models] Allow importing certs with invalid country codes
- [models] Allow importing certificate with empty common name
- [tests] Updated data for import test to fix pyOpenSSL issue
- [models] Renamed
organization
field toorganization_name
- [models] added
digest
argument toCRL.export
- [requirements] pyopenssl>=17.1.0,<17.2.0
- [migrations] Updated
validity_start
onCert
model
- [models] Set
validity_start
to 1 day before the current date (at 00:00)
- [django] added support for django 1.11
- [models] improved reusability by providing abstract models
- [admin] improved reusability by providing abstract admin classes
- [views] provided a base view that can be reused by third party apps
- [docs] documented how to extend models and admin
- [docs] documented hard dependencies
- [model] avoid import error if any imported field is
NULL
- [admin] added
serial_number
tolist_display
inCert
admin - [model] avoid exception if x509 subject attributes are empty
- improved general
verbose_name
of the app - added official compatibility with django 1.10
- [admin] show link to CA in cert admin
- [admin] added
key_length
anddigest
to available filters
- fixed x509 certificate version
- renamed
public_key
field to more appropiatecertificate
- show x509 text dump in admin when editing objects
- CA and end entity certificate generation
- import existing certificates
- x509 extensions
- revocation
- CRL