All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
- Allow generating admin JWT using
gen-edgehog-jwt.
- Change logo and brand images with the latest brand revision.
- Configure cookie attribute based on protocol.
- Normalize triggers when comparing them for reconciliation to avoid useless reconciliations.
- Fix query limits on Astarte datastream interfaces, leading to parsing failures on some interfaces.
- Add support for an instance of Edgehog Device Forwarder. When configured, forwarding functionalities are enabled for devices that support forwarding connections to their internal services, allowing features such as remote terminal sessions (#447).
- Add Admin API to create and to delete tenants.
- Add a reconciler that takes care of installing Astarte resources (interfaces and triggers) for a tenant (#403).
- BREAKING: Add mandatory
URL_HOSTenv variable. It must point to the host where the Edgehog backend is exposed.
- Fix seeds not working when used outside docker.
- Fix seeds's default values not working correctly.
- Don't crash the OTA campaign if a misconfigured device doesn't send its base image version.
- Correctly return stats even for OTA campaigns with no targets.
- Handle empty string when translating legacy OTAResponse messages.
- Deduplicate tags in list of existing device tags.
- Expose OTA Campaigns stats.
- Fix DevicesTable component for devices without SystemModel.
- Enhance the OTA Campaigns frontend, using the exposed stats.
- Add support for device tags (#191, #212).
- Add support for device custom attributes (#205).
- Add
MAX_UPLOAD_SIZE_BYTESenv variable to define the maximum dimension for uploads (particularly relevant for OTA updates). Defaults to 4 GB. - Allow creating and managing groups based on selectors.
- Add support for device's
network_interfaces(#231, #232). - Add support for base image collections (#229, #230).
- Add support for base images (#240, #244).
- Add support for update channels (#243, #245).
- Add support for
io.edgehog.devicemanager.OTAEvent. - Add support for
io.edgehog.devicemanager.OTARequestv1.0. - Add OTA Campaigns execution support.
- Handle Device part numbers for nonexistent system models.
- BREAKING: The
Descriptionfield in theSystemModelobject is now aStringinstead of aLocalizedText.
- Support for
io.edgehog.devicemanager.OTAResponseis deprecated and will be removed in future releases. Switch toio.edgehog.devicemanager.OTAEventinstead. - Support for
io.edgehog.devicemanager.OTARequestwith major version0is deprecated and will be removed in future releases. Switch toio.edgehog.devicemanager.OTARequestmajor version1instead.
- Expose Prometheus metrics and a /health API endpoint.
- Start using logfmt as logging format.
- Use the tenant's default locale when managing translated descriptions if the user's locale is not available.
- Add
connectedfield to wifi scan result and highlight the latest connected network (#193).
- Change Geo IP provider from FreeGeoIP to IPBase
(#190). This is a breaking change,
make sure to update the
FREEGEOIP_API_KEYenv toIPBASE_API_KEY.
- Add a workaround to correctly parse Astarte datastreams even if AppEngine API shows them with a inconsistent format (#194).
- Initial Edgehog release.