1.1.0 [2024-11-22]
Features
- Added support for ZeroTier.
- Added support for adding configuration templates and configuration variables to device groups.
- Implemented support for SNMP credentials.
- Added support for device deactivation and reactivation.
- Introduced an admin action to quickly move devices between groups.
- Added autocomplete support for filters in the admin interface.
- Added support to display configuration errors reported by the OpenWISP config agent.
- Enabled filtering of subnets by Subnet Division Rule type.
- Allowed limiting the number of devices per organization.
- Added support for defining organization-level variables.
- Enabled bulk import and export of devices.
- Added functionality to configure available commands for each organization.
- Added a dashboard chart showing the distribution of devices across different groups.
- Added filters to the REST API.
Changes
- Removing a VPN template from a device will not deleted the certificates associated with the
VPNClient. Instead, the certificates will be marked as revoked. - Allowed reusing
VNIacross all the tunnels created using an instance VXLAN over WireGuard VPN. - Added a data migration for updating
hwmodeconfiguration option of radio to "band". Thehwmodeoption is deprecated on OpenWrt > 21. - The configuration push update will not flag the configuration status as "applied". The status will be update once the OpenWISP Config agent on the device reports the status.
- Updated
DeviceConnection.connectto attempt all available credentials. - Changed the
on_cascadeproperty ofBaseDeviceLocation.locationandBaseDeviceLocation.floorplanfromPROTECTEDtoCASCADE. - Controller views will return
HTTP 404response for devices belonging to disabled organizations. - Show a loading indicator for commands in progress.
- Added VPN subnet CIDR to device's system-defined variables.
- Allowed defining subnet and IP address for VPNs with OpenVPN backend.
- Changed the target link for configuration error notifications to the "Configuration" tab of the device.
- JSONSchema Editor widget allows to define extra CSS classes. It will ignore fields with
manualclass. - Increased the soft time limit for celery task that operates of bulk objects.
- Added notifications for background subnet division rule errors.
- Added [name]{.title-ref} and [mac_address]{.title-ref} to device list filters in the API.
- Use autocomplete fields for related fields.
Dependencies:
- Bumped
django-sortedm2m~=4.0.0. - Bumped
django-reversion~=5.1.0. - Bumped
django-taggit~=4.0.0. - Bumped
netjsonconfig~=1.1.0. - Bumped
django-x509~=1.2.0. - Bumped
django-loci~=1.1.0. - Bumped
django-flat-json-widget~=0.3.0. - Bumped
openwisp-users~=1.1.0. - Bumped
openwisp-utils[celery]~=1.1.1. - Bumped
openwisp-notifications~=1.1.0. - Bumped
openwisp-ipam~=1.1.0. - Bumped
djangorestframework-gis~=1.1. - Bumped
paramiko[ed25519]~=3.5.0. - Bumped
scp~=0.15.0. - Bumped
django-cache-memoize~=0.2.0. - Bumped
shortuuid~=1.0.13. - Bumped
netaddr~=1.3.0. - Bumped
django-import-export~=3.3.0. - Added support for Django
4.1.xand4.2.x. - Added support for Python
3.10. - Dropped support for Python
3.7. - Dropped support for Django
3.0.xand3.1.x.
Bugfixes
- Fixed bug for displaying relevant templates where the backend of the device's configuration template does not match.
- Fixed displaying the command widget when the user has write permissions.
- Fixed DeviceConnection.get_working_connection to handle scenario where the device has no credentials.
- User need to have required model permissions to perform admin actions.
- Fixed import device preview table when browser is set to dark mode.
- Fixed subnet division rule does not allow assigning only 1 ip in /32.
- Fixed Device._has_group() wrongly returning True.
- Fixed JS of history pages on config app.
- Fixed REST API can creates device configs inadvertently.
- Fixed broken shared template preview.
- Fixed command APIs permissions.
- Fixed deleting VpnClient result in deleting all provisioned subnets of the device.
- Fixed group templates re-creating VPN clients.
- Fixed DeviceListSerializer returning HTTP 500 instead of HTTP 400 reponse on invalid data.
- Fixed re-ordering applied templates in device config.
- Fixed re-ordering templates on device add page.
- Fixed several issues with clone template feature.
- Fixed updating template organization puts devices in perennial "modified" state.
- Fixed user defined commands that do not require input.
- Fixed validation for SubnetDivisionRule.
- Fixed subnet division rule validation when master subnet is empty.
- Fixed validation in change device group admin action.
- Increased "timeoutInterval" for ReconnectingWebSocket.
- Added JS workaround for using mac address variable.
- Fixed same credential can be added to a device twice.
- Show reversion button to operators too.
- Fixed unsaved changes alert triggering on previewing configuration.
- Fixed dependency on the creation date in get_max_subnet method.
- Fixed Vpn.webhook_endpoint accepting invalid URL.
- Fixed object and config menu not opening in Device config editor.