Releases: edgehog-device-manager/edgehog
v0.9.1
v0.9.0
This release focuses on enhancing stability and developer experience. Several key highlights include:
- Stability enhancements: bug fixes were implemented across the platform, including improvements to automatic login handling, file uploads, and OTA update management to ensure smooth and reliable performance.
- Polishing & user experience: updates to branding and logo provide a fresh look, while better error handling improves overall interaction with the system. The existing APIs were further polished, for example by making the Admin API JSON-API compliant.
- Developer experience: notable updates in this release address underlying code improvements and structural changes, such as migrating the code to the Ash framework. These changes improve the velocity and quality of the development process, resulting in well-tested and quality code that follows standardized patterns.
This release also introduces some breaking changes in the Admin and Tenant APIs, so please review the updated API documentation and GraphQL schema for any adjustments needed in your implementations.
Here is a list of changes since v0.8:
Added
- Check wether
URL_HOST
is a valid host and not a url (#595). - Support redirection to a specific page after successful authentication
- Allow generating admin JWT using
gen-edgehog-jwt
.
Changed
- Change logo and brand images with the latest brand revision.
- BREAKING: The Admin API is now JSON-API compliant, which implies a slightly different format, check out the newly added OpenAPI document.
- BREAKING: This release includes some breaking changes in the GraphQL API, make sure to check out the GraphQL schema if you were using the APIs directly. Note that we could add more breaking changes before the final release.
Fixed
- Correctly support automatic login attempts on the frontend regardless of existing auth sessions (#596).
- Fix file upload for creating base images that was failing due to a regression that left out the
version
parameter, needed for uploading the file (#600). - Correctly scope Base Image uploads to their Base Image Collection bucket.
- Show a better error when trying to delete a Base Image or Update Channel connected to an existing Update Campaign.
- Wrong input params used in GraphQL mutation when creating a base image, leading to a rejected operation (#574).
- Fix docker-compose local build.
- Fix OTA operation events not being handled, leading to a successful OTA operation while the device was still pending.
v0.9.0-rc.2
These are all the changes from v0.8:
Added
- Support redirection to a specific page after successful authentication
- Allow generating admin JWT using
gen-edgehog-jwt
.
Changed
- Change logo and brand images with the latest brand revision.
- BREAKING: The Admin API is now JSON-API compliant, which implies a slightly different format,
check out the newly added OpenAPI document. - BREAKING: This release includes some breaking changes in the GraphQL API, make sure to check out
the GraphQL schema if you were using the APIs directly. Note that we could add more breaking
changes before the final release.
Fixed
- Correctly scope Base Image uploads to their Base Image Collection bucket.
- Show a better error when trying to delete a Base Image or Update Channel connected to an existing
Update Campaign. - Wrong input params used in GraphQL mutation when creating a base image, leading to a rejected operation (#574).
- Fix docker-compose local build.
- Fix OTA operation events not being handled, leading to a successful OTA operation while the device was still pending.
v0.9.0-rc.1
These are all the changes from v0.8:
Added
- Allow generating admin JWT using
gen-edgehog-jwt
.
Changed
- Change logo and brand images with the latest brand revision.
- BREAKING: The Admin API is now JSON-API compliant, which implies a slightly different format,
check out the newly added OpenAPI document. - BREAKING: This release includes some breaking changes in the GraphQL API, make sure to check out
the GraphQL schema if you were using the APIs directly. Note that we could add more breaking
changes before the final release.
Fixed
- Wrong input params used in GraphQL mutation when creating a base image, leading to a rejected operation (#574).
- Fix docker-compose local build.
- Fix OTA operation events not being handled, leading to a successful OTA operation while the device was still pending.
v0.9.0-rc.0
These are all the changes from v0.8:
Added
- Allow generating admin JWT using
gen-edgehog-jwt
.
Changed
- Change logo and brand images with the latest brand revision.
- BREAKING: The Admin API is now JSON-API compliant, which implies a slightly different format,
check out the newly added OpenAPI document. - BREAKING: This release includes some breaking changes in the GraphQL API, make sure to check out
the GraphQL schema if you were using the APIs directly. Note that we could add more breaking
changes before the final release.
v0.8.0
This is the first stable release supporting the integration with the Edgehog Device Forwarder. This allows accessing a remote terminal running on the device (if the device supports it) directly from the device page in the Edgehog frontend.
These are all the changes from v0.7:
Added
- 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).
Changed
- Configure cookie attribute based on protocol.
- Normalize triggers when comparing them for reconciliation to avoid useless reconciliations.
Fixed
- Fix query limits on Astarte datastream interfaces, leading to parsing failures on some interfaces.
v0.8.0-rc.1
Second release candidate for v0.8.0
Fixed
- Fix query limits on Astarte datastream interfaces, leading to parsing failures on some interfaces.
v0.8.0-rc.0
This is the first release supporting the integration with the Edgehog Device Forwarder. This allows accessing a remote terminal running on the device (if the device supports it) directly from the device page in the Edgehog frontend.
Added
- 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).
v0.7.0
The notable addition in this release is the support for OTA Campaigns. These allow rolling out OTA Updates to multiple devices automatically, while controlling the rollout with parameters like, e.g., the maximum number of failures, the number of concurrent device updates etc.
To support OTA Campaign, many new concepts are introduced: device tags, selectors, groups, update channels, base image collections. All these are detailed in the documentation.
The v0.5 release cycle has now been deprecated, and users are suggested to upgrade to the v0.7.0 version.
Here's the full list of changes from v0.5.2, the latest release in the v0.5 release cycle:
Breaking changes
- The
Description
field in theSystemModel
object is now aString
instead of aLocalizedText
.
Deprecated
- Support for
io.edgehog.devicemanager.OTAResponse
is deprecated and will be removed in future releases. Switch toio.edgehog.devicemanager.OTAEvent
instead. - Support for
io.edgehog.devicemanager.OTARequest
with major version0
is deprecated and will be removed in future releases. Switch toio.edgehog.devicemanager.OTARequest
major version1
instead.
Added
- Add support for device tags (#191, #212).
- Add support for device custom attributes (#205).
- Add
MAX_UPLOAD_SIZE_BYTES
env 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] #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.OTARequest
v1.0. - Add OTA Campaigns execution support.
- Expose OTA Campaigns stats.
Changed
- Handle Device part numbers for nonexistent system models.
- Enhance the OTA Campaigns frontend, using the exposed stats.
Fixed
- Fix DevicesTable component for devices without SystemModel
- 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.
v0.7.0-alpha.0
Edgehog v0.7.0-alpha.0 release.
Changes Since v0.5
Added
- Add support for device tags (#191, #212).
- Add support for device custom attributes
(#205). - Add
MAX_UPLOAD_SIZE_BYTES
env 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.OTARequest
v1.0.
Changed
- Handle Device part numbers for nonexistent system models.
- BREAKING: The
Description
field in theSystemModel
object is now aString
instead of a
LocalizedText
.
Deprecated
- Support for
io.edgehog.devicemanager.OTAResponse
is deprecated and will be removed in future
releases. Switch toio.edgehog.devicemanager.OTAEvent
instead. - Support for
io.edgehog.devicemanager.OTARequest
with major version0
is deprecated and will be
removed in future releases. Switch toio.edgehog.devicemanager.OTARequest
major version1
instead.