Skip to content

Releases: mendersoftware/mender-server

v4.1.0

14 Jan 20:35
72ed83c

Choose a tag to compare

4.1.0 - 2026-01-14

Bug fixes

  • (deployments) Preset number of pending devices in deployments statistics
    (MEN-8522) (e442a50) by @kjaskiewiczz

  • (deployments) Lower size limit for single file uploads
    (07f5c61) by @frodeha

  • (deployments) Limit name, type and device types compatible length
    (6f612d4) by @frodeha

    Limit the max length of name (aka Release name in the gui),
    type and device types compatible fields in MultipartGenerateImageMsg
    (used by single file uploads) to 256 characters.

    There has been introduced a limit of 256 characters to the corresponding
    fields in mender-artifact:
    mendersoftware/mender-artifact@ddd821f
    causing uploads that do not abide by this limit to fail silently in the
    background when being processed by the workflow worker.

    With this input validation we provide an explicit error to the user in
    this case.

  • (deployments) Throw error when per_page exceeds maximum allowed value
    (MEN-8841) (e7c966c) by @bahaa-ghazal

  • (deployments) Aligned update metadata understanding w/ mender-artifact
    (33fae57) by @mzedel

    • api responses represented the content as a list, whereas the proper representation is the object
  • (deployments) Backwards compatible artifact metadata
    (8110c52) by @frodeha

  • (deployments) Panic on database errors on DELETE /artifacts
    (f3c9bda) by @alfrunes

  • (deviceauth) Fix the pagination logic in devices search endpoint
    (MEN-8521) (5431bc1) by @bahaa-ghazal

  • (deviceauth) request_size_limit configuration not applied
    (MEN-8788) (93d82a5) by @alfrunes

  • (deviceauth) Always exit with non-zero exit code on error
    (c486a45) by @alfrunes

  • (deviceconnect) Increase the file upload size limit
    (6ff38c3) by @bahaa-ghazal

  • (deviceconnect) Make sure goroutines recover when panicing
    (MEN-7750) (0f5870a) by @bahaa-ghazal

  • (deviceconnect) SetReadDeadline when setting up ping handler
    (MEN-8843) (b10a3a8) by @kjaskiewiczz

  • (gui) Changed cancel button in device configuration edit to close the form
    (MEN-8344) (f1f542a) by @mineralsfree

  • (gui) Made RBAC roles visible again for non-enterprise users
    (43f829b) by @mzedel

  • (gui) Restored role removal prevention for built-in roles
    (89a1c43) by @mzedel

  • (gui) Aligned Roles & Users drawer closing behaviour
    (MEN-8063) (346fd97) by @mineralsfree

  • (gui) Fixed closing animation for deployment drawer
    (MEN-8063) (a9bca65) by @mineralsfree

  • (gui) Restored error handling on user edits
    (ME-522) (882a5c7) by @mzedel

    • regression from 5888d3e3ee47b764b256e89da9419f903936e4f3 in the prior repo
  • (gui) Fixed an issue that would prevent showing all webhook activity
    (70d9eda) by @mzedel

  • (gui) Fixed reset button location in device tags & similar editors
    (00335b2) by @mzedel

  • (gui) Allowed clearing device tags & device configuration entirely
    (ME-529) (896f2a9) by @mzedel

  • (gui) Fixed location of device name tag help to not disturb tag editor
    (e27417c) by @mzedel

    • this takes the kv related styles from less into the component making theming a bit more consistent and encapsulating the component further
  • (gui) Prevented device tag editor to be shown when no tags exist
    (ME-528) (3b6b0db) by @mzedel

    • this is to reduce confusion about tags defined async to the current session not being visible
  • (gui) Fixed wording and position of onboarding tooltip
    (MEN-8407) (69c1a6d) by @mineralsfree

  • (gui) Aligned supported OS versions in download section with tool support
    (ME-499) (c256688) by @mzedel

  • (gui) Fixed billing profile not being fetched
    (9042c6b) by @mineralsfree

  • (gui) Fixed a problem that could apply RBAC restrictions on non-RBAC plans
    (MEN-8498) (c870092) by @mzedel

  • (gui) Fixed an issue that could cause the organization token to overflow for older tenants
    (e04f0e9) by @mzedel

  • (gui) Fixed another situation that could cause the organization token to overflow
    (555cb1e) by @mzedel

  • (gui) Fixed an issue that would not show progress in the final phase of phased deployments
    (5f3be23) by @mzedel

  • (gui) Fixed an issue that prevented reactivating highlighted tooltips in the UI
    (4babe2e) by @mzedel

  • (gui) Improved likelyhood of getting all device report related data from backend
    (f429a5d) by @mzedel

  • (gui) Fixed an issue that could limit release selection during deployment creation
    (MEN-8421) (a7e5352) by @mzedel

  • (gui) Restricted to use id when adding users on trial plan
    (ME-532) (20f8936) by @mineralsfree

...

Note: Changelog truncated due to size limits. View full changelog in the repository files.

v4.0.1

23 May 12:56
52ef503

Choose a tag to compare

Bug Fixes

  • (gui) Fixed an issue that would prevent showing unassigned static group devices (ME-519) (b595a57)

  • Race when provisioning and connecting a device (MEN-8164) (5535078)

  • If a device gets provisioned and submits a connection request while the device is getting provisioned, the device might end up in an inconsistent state where the connection status gets overwritten to "unknown". The issue was discovered in a test where the system was under load and the device was running on the same network (artificially low RTT).

  • Ensure email is always encoded in lowercase when stored (MEN-8328) (0568d2e)

  • Added a bson codec for model.Email that will ensure that emails are always encoded in lowercase in the database to ensure case insensitive queries.

v4.1.0-saas.5

09 May 16:09
7a6b1eb

Choose a tag to compare

v4.1.0-saas.5 Pre-release
Pre-release

v4.1.0-saas.5 - 2025-05-09

Bug Fixes

  • (deployments) Invalid Location header when returning 201 Created
    (cfccf2a) by @alfrunes

    The location strips the /api path prefix and returns the remaining
    absolute path as relative. Instead, always return the absolute path.

  • (gui) Fixed an issue that would prevent showing unassigned static group devices
    (ME-519) (cf7f15d) by @mineralsfree

  • (gui) Fixed an issue that would add device filter automatically
    (MEN-8309) (8d0233c) by @mineralsfree

  • (gui) Fixed an issue with a filter input not reset after save
    (MEN-8309) (ed6b9f9) by @mineralsfree

  • (gui) Fixed an issue with 'true' value being set after selecting 'exists' operator
    (MEN-8309) (b8c8d8a) by @mineralsfree

  • (gui) Ensured selection filter is reset when attribute or value input are emptied
    (MEN-8309) (9cb2ff3) by @mineralsfree

  • (gui) Restored global settings layout after general input layout adjustments
    (f83c94e) by @mzedel

  • (gui) Fixed an issue that prevented showing deployment calendar entries
    (a7d386f) by @mzedel

  • Check if deployment was found when updating device deployment status
    (MEN-7749) (6b15227) by @bahaa-ghazal

  • Ensure email is always encoded in lowercase when stored
    (MEN-8328) (d80c818) by @alfrunes

    Added a bson codec for model.Email that will ensure that emails are
    always encoded in lowercase in the database to ensure case insensitive
    queries.

Documentation

Features

  • (create-artifact-worker) Update mender-artifact to latest v4.1.0
    (MEN-8337) (153cb8e) by @lluiscampos

    Modifying also the integration to build the tool from source instead or
    repurposing the upstream Debian package. This has the main advantage
    that we can compile it statically (by disabling a feature that we don't
    use) and that we have control of the compatibility aspects of the
    binary.

  • (deviceauth) Rate limit authenticated devices API
    (MEN-7744) (8c80280) by @alfrunes

    Added adaptive ratelimiting for devices APIs based on the max_devices
    limit. Two new configuration options are exposed:

    • ratelimits.interval - duration until the quota resets
    • ratelimits.quotas - mapping plan names to quota weights. The final
      burst limit is computed as ratelimits.quotas[plan] * max_devices

    The rate limiting counter is independent for each API path (independent
    of method and version).

  • (deviceauth) Rate limit device requests
    (MEN-7744) (9c3041f) by @alfrunes

    Added adaptive ratelimiting for devices APIs based on the max_devices
    limit. Two new configuration options are exposed:

    • ratelimits.devices.enable - enable device level rate limit
    • ratelimits.devices.interval - duration until the quota resets
    • ratelimits.devices.quota_plan - mapping plan names to quota
      weights. The final burst limit is computed as
      ratelimits.quotas[plan] * max_devices
    • ratelimits.devices.quota_default - rate limit fallback for plans
      with undefined limits.

    The rate limiting counter is independent for each API path (independent
    of method and version).

  • Add caching for device limits
    (MEN-7760) (5466c62) by @alfrunes

  • Implemented content type checker middleware for gin framework
    (MEN-8327) (9016554) by @bahaa-ghazal

Revert

  • Gin utility for applying middleware to routes
    (9f5c79c) by @alfrunes

    The func does not implement what it is intended to do and instead
    applies the middleware to all routes in the group.


v4.1.0-saas.4

10 Apr 08:15
84723de

Choose a tag to compare

v4.1.0-saas.4 Pre-release
Pre-release

v4.1.0-saas.4 - 2025-04-10

Bug Fixes

  • (gui) Fixed an issue where admin existence sometimes wasn't taken into account on tenant creation
    (330ac67) by @mzedel

  • (gui) Fixed an issue that prevented properly paginating deployments
    (MEN-8212) (a20db14) by @mzedel

  • (gui) Fixed an issue on tenant creation that prevented some email addresses from becoming tenant admins
    (ME-470) (20b32f9) by @mzedel

  • (gui) Fixed an issue that would retain passwords on tenant creation across different admins
    (a5e2132) by @mzedel

  • (gui) Fixed layout issue on tenant list + aligned styling with remainder of codebase
    (cc41aee) by @mzedel

  • (gui) Fixed an issue propagating password validation errors
    (d1d8827) by @mzedel

  • (gui) Ensured errormessages get propagated in forms
    (b19f8b3) by @mzedel

    • as rhf depends on them to determine error existence in some modes
  • (gui) Fixed an issue that could hinder pagination in very frequently created deployments
    (34ca4ea) by @mzedel

Documentation

Features

  • (gui) Made subtenant creation a bit more comfortable in case of errors
    (ME-469) (e01171f) by @mzedel

  • (gui) Added more user visible context on tenant creation failures
    (c027064) by @mzedel

  • (gui) Made login form less reactive when entering login info
    (MEN-8221) (00b4d7b) by @mzedel

  • (gui) Added sentry integration
    (0fe2ad0) by @mzedel

  • (gui) Enhanced debugging info to help track down user issues
    (c559467) by @mzedel

  • (gui) Allowed enabling fine grained state debug information to be sent
    (298059d) by @mzedel

Refac

  • (gui) Split signup in separate forms to ease handling validation mode differences
    (620592b) by @mzedel

  • (gui) Rely on externally gzipping build files to use sourcemaps in sentry
    (24bdd2f) by @mzedel


v4.1.0-saas.3

20 Mar 08:56
bb11982

Choose a tag to compare

v4.1.0-saas.3 Pre-release
Pre-release

v4.1.0-saas.3 - 2025-03-20

Bug Fixes

  • (gui) Removed border on active tab in left nav bar
    (MEN-8113) (a5d5df4) by @mineralsfree

  • (gui) Fixed time filter in past deployments
    (MEN-7989) (25cdee0) by @mineralsfree

  • (gui) Fixed location not being changed on device status filter change
    (MEN-8118) (36eb469) by @mineralsfree

  • (gui) Restored rspack to license generator compatible version
    (1280dc7) by @mzedel

  • (gui) Fixed default roles being shown before loading ones from backend
    (MEN-8095) (d934020) by @mineralsfree

  • (gui) Fixed an issue that would prevent new signups from using the onboarding
    (fbaa329) by @mzedel

  • (gui) Default to eu in eu.hosted domain during signup
    (MEN-7925) (0512d24) by @mineralsfree

  • (gui) Fixed webhook configuration checks by subscription
    (6b5989d) by @mzedel

  • (gui) Ensured form validation is applied during validation phase only
    (b6b870c) by @mzedel

  • (gui) Fixed permission extension issue in roles form
    (MEN-8108) (0a41d0d) by @mineralsfree

  • (gui) Fixed an issue that prevented phased deployments when reusing phase definitions
    (MEN-8192) (f9b735f) by @mzedel

  • (gui) Fixed an issue that could clear search queries
    (c308b2b) by @mzedel

    • when search was run multiple times in non-search searchfields
  • (gui) Provide more context on failed 2fa enabled login
    (dfcb767) by @mzedel

  • (gui) Fixed an issue that would prevent some info messages from showing
    (e1277bd) by @mzedel

  • (gui) Restored group creation notification
    (3bdb3f3) by @mzedel

  • (iot-manager) Do not store events if there are no integrations
    (MEN-7868) (0c0ee9d) by @merlin-northern

  • (iot-manager) Creating new integration creates a new ID
    (MEN-7801) (c52491e) by @merlin-northern

  • Race when provisioning and connecting a device
    (MEN-8164) (eae5bf2) by @alfrunes

    If a device gets provisioned and submits a connection request while the
    device is getting provisioned, the device might end up in an
    inconsistent state where the connection status gets overwritten to
    "unknown".
    The issue was discovered in a test where the system was under load
    and the device was running on the same network (artificially low RTT).

  • Stop deviceconnect's /connect endpoints from sending ping
    (MEN-8061) (79a32a6) by @bahaa-ghazal

  • Skip IoT Core/IoT Hub integration if device is not yet provisioned
    (MEN-8230) (eeffe42) by @alfrunes

    If a device has not previously been provisioned, it is not part of the
    integration and should be excluded from the sync.

Documentation

Features

  • (gui) Added year to timeframe picker
    (MEN-8136) (48a5e98) by @mineralsfree

  • (gui) Changed login form to a more stepwise approach in order to reduce confusion
    (MEN-7761) (543bf7a) by @mzedel

    • this relies on an as of yet unreleased bugfix release of RHF
      Ticket: MEN-7761
  • (gui) Made password forgotten flow more informative to reduce confusion
    (MEN-7761) (ed81bc6) by @mzedel

  • (iot-manager) Allowed disabling address verification during webhook configuration
    (e05997c) by @mzedel

  • (iot-manager) Added integration_id query parameter to API for getting events
    (MEN-7801) (bc0dae3) by @merlin-northern

    Allows to:

    • get device events from iot-manager by integration ID
    • maintains backward compatibility for GET /event
    • with UI calling the new endpoint this fixes the showing
      of events from old webhooks in the integraiton details

Refac

  • (gui) Extraced login related form elements to isolate form handling
    (0088e78) by @mzedel

v4.1.0-saas.2

25 Feb 14:53
e6e1949

Choose a tag to compare

v4.1.0-saas.2 Pre-release
Pre-release

v4.1.0-saas.2 - 2025-02-25

Bug Fixes

  • (gui) Let read-only user no longer think they could act on selected releases
    (MEN-8110) (dd710a7) by @mzedel

    also aligned component label + usage with reality
    Ticket: MEN-8110

  • (gui) Fixed pagination for pending deployments
    (MEN-8140) (c3f406b) by @mzedel

  • (gui) Prevented a situation where one release upload could prevent another
    (MEN-8125) (84b24ec) by @mzedel

  • (gui) Made rbac limitations visible in release tagging too
    (c706020) by @mzedel

  • (gui) Ensured release tag creation is waited for before changing UI
    (MEN-8078) (9b0c722) by @mzedel

  • (gui) Fixed an issue with editing credit card when no billing address was provided
    (MEN-8154) (0fd9658) by @mineralsfree

Documentation

Features


v4.1.0-saas.1

20 Feb 09:06
7bb2a98

Choose a tag to compare

v4.1.0-saas.1 Pre-release
Pre-release

v4.1.0-saas.1 - 2025-02-20

Bug Fixes

  • (gui) Fixed date parsing & formatting issues after dayjs migation
    (95dd540) by @mzedel

  • (gui) Fixed an issue that would prevent showing phased deployments
    (1e73ba7) by @mzedel

  • Fix(gui): ensured deployment phase information stays inside its boundaries
    (MEN-7995) (87fe82d) by @mzedel

  • Fix(gui): fixed an issue that prevented upload progress from being shown
    aligning upload progress tracking with updated payload structure after rtk migration
    (MEN-8074) (1b715c8) by @mzedel


v4.1.0-saas

13 Feb 11:58
424a898

Choose a tag to compare

v4.1.0-saas Pre-release
Pre-release

v4.1.0-saas - 2025-02-13

Bug Fixes

  • (gui) Made user list tracking rely only on backend data instead of local store to prevent duplicate users listed
    (MEN-8049) (7d1b060) by @mzedel

  • (gui) Fixed an issue that would cause the ui to crash when creating phased deployments
    (9827ba9) by @mzedel

  • (gui) Fixed remaining device percentage not being displayed correctly on phased deployment creation
    (5600913) by @mzedel

  • Update outdated api endpoints in the inventory service
    (MEN-7017) (73c7149) by @bahaa-ghazal

  • Limiting the size of metadata when uploading and generating artifacts
    (MEN-7166) (9e80728) by @bahaa-ghazal

Documentation

Features


v4.0.0

11 Feb 12:11
10740c8

Choose a tag to compare

4.0.0 - 2025-02-10

Bug Fixes

  • (deployments) Deprecate v1 endpoint for listing deployments
    (MEN-7543) (879b589) by @kjaskiewiczz

    We deprecated GET v1 /deployments/deployments endpoint because of an
    issue with "search" query parameter behavior. As a replacement we
    introduce v2 version of the endpoint, where we replaced "search"
    parameter with "id" and "name" parameters.

  • (deviceconfig) Enable multiplatform build
    (QA-673) (fbbe646) by @oldgiova

    The required TARGETOS and TARGETARCH variables were missing from the
    Dockerfile.

  • (gui) Fixed an issue that could prevent browsers from following programmatically triggered downloads
    (f2b6189) by @mzedel

    • relative download addresses seem not to be followed, switched to absolute instead
  • (gui) Fixed an issue that would sometimes prevent users from switching between tenants
    (MEN-7774) (ce777fd) by @mzedel

    can't rely on the user list data as it doesn't contain all the user details

  • (gui) Fixed an issue that prevented deployment sizes from being shown
    (d2bbb8d) by @mzedel

  • (gui) Fixed an issue that caused number comparisons in device filters to not work
    (MEN-7717) (84e2398) by @mzedel

  • (gui) Added readable name for ltne device filter
    (MEN-7717) (a741011) by @mzedel

  • (gui) Fixed an issue that could lead to unexpected locations in the UI when accessing unauthorized sections while authorized
    (MEN-7842) (7938291) by @mzedel

  • (gui) Enable device configuration for non enterprise users
    (67170c5) by @thall

    Currently it's not possible to see device configuration if you host
    Mender self and have environment variable HAVE_DEVICECONFIG=true.

    Changes the predicate to be the same as for hasDeviceConnect.

  • (gui) Added missing link to rbac docs in the cooresponding section
    (MEN-7826) (1d8c4ff) by @mzedel

  • (gui) Prevented disabled form inputs from showing validation errors
    (2e7215a) by @mzedel

  • (gui) Aligned quick actions in release details with actually possibile actions
    (365f564) by @mzedel

  • (gui) Fixed an issue that would prevent showing deployment reports for phased deployments
    (132d6b2) by @mzedel

  • (gui) Fixed an issue that would prevent upgrading a running session to a different plan
    (MEN-7898) (7668b29) by @mzedel

  • (gui) Fixed an issue that would crash the site when showing release details with multiple artifacts
    (fd06f66) by @mzedel

  • (gui) Made addon availability rely more on addons where possible to prevent erroneous device config retrieval
    (MEN-7895) (62d6516) by @mzedel

  • (gui) Aligned webhook details behaviour w/ rest of UI
    (MEN-7955) (7860b5b) by @mzedel

  • (gui) Prevented sso config retrieval on plans that don't support this
    (fe6da5d) by @mzedel

  • (gui) Fixed an issue that would prevent deleting & tagging releases in the release overview
    (MEN-7960) (16b2628) by @mzedel

  • (gui) Let on-prem installations refer to the docs to prevent server-url misconfiguration following monorepo transition
    (MEN-7948) (e0dae51) by @mzedel

  • (gui) Fixed end date filters out today's entries in the Audit log, Deployments and Devices
    (3ee84f2) by @aleksandrychev

  • (gui) Ensured target directory is nonempty on artifact generation
    (MEN-8010) (5616722) by @mzedel

  • (gui) Fixed an issue that could prevent listing devices with their custom identity in a deployment report
    (f1fcf26) by @mzedel

  • (gui) Fixed an issue that would prevent navigating to devices from a software distribution chart
    (MEN-8038) (6516986) by @mzedel

  • (gui) Made user list tracking rely only on backend data instead of local store to prevent duplicate users listed
    (MEN-8049) (7d1b060) by @mzedel

  • (gui) Fixed an issue that would cause the ui to crash when creating phased deployments
    (9827ba9) by @mzedel

  • (gui) Fixed remaining device percentage not being displayed correctly on phased deployment creation
    (5600913) by @mzedel

  • (iot-core) Incosistent serialization format for device private key
    (MEN-7478) (6deadef) by @alfrunes

    The generated key is serialized using SEC 1 (RFC5915) ASN.1 encoding,
    but encoded to PEM using PKCS8 (RFC5208) block header/trailer.

  • Aligned identity attribute usage with scoped inventory data to prevent overriding custom naming attributes with name tags
    (MEN-7218) (9d82ea1) by @mzedel

  • Document the 409 return for creating deployment to a group
    (MEN-7414) (5327dac) by @kjaskiewiczz

  • Prevented commercial client components are only selected when plan/ addon accessible
    (MEN-7458) (81e0b73) by @mzedel

  • Fixed an issue that prevented retrieving group devices & related reports
    (MEN-7461) (95ea85f) by @mzedel

  • Fixed an issue that prevented showing PATs on page refresh
    (bde80fe) by @mzedel

  • Fixed an issue that prevented onboarding tips from showing
    (c2ecfcf) by @mzedel

  • Fixed an issue that prevented the UI from showing deeply nested software installations
    (MEN-7640) (13496f3) by @mzedel

  • Stop user from having similar email and password
    (MEN-6462) (3fa4a43) by @bahaa-ghazal

  • Implement signal handler for server commands
    (QA-782) ([6e17ada](6e17adaaffa6...

Read more

v4.0.0-rc.10

07 Feb 14:26
8d39d88

Choose a tag to compare

Merge pull request #419 from mendersoftware/release-please--branches-…