Hosted Mender

reference

v4.1.0-saas.9 - 2025-06-18

Bug fixes

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

v4.1.0-saas.8 - 2025-06-18

Bug fixes

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

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

v4.1.0-saas.7 - 2025-06-18

Bug fixes

  • (generate-delta-worker) Stuck when generating to local path (MEN-8484) (a7e27ca)

    Only used in tests. The generate-delta command fails when the output is a local path.

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

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

  • (gui) Fixed wording and position of onboarding tooltip (MEN-8407) (69c1a6d)

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

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

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

    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

  • (auditlogs) Replace swagger 2.0 specs with Openapi 3.0.1 (d624916)

  • (auditlogs) Consolidate API specifications into a single OAS file (e47649f)

  • (auditlogs) Move OAS to new location and provide symlink (7e55fc3)

  • (auditlogs) Add content type to export endpoint (3f681c7)

  • (deviceauth) Rename operation id for removing device authentication (3f99b91)

    "Reject" is in the UI associated with updating the authentication status where as "dismiss" is used for removing authentication.

  • (tenantadm) Consolidate OAS into a single definition (bd79510)

  • (tenantadm) Fixup Tenant examples in OAS specs (cf8ac9b)

  • (tenantadm) Fix incorrect type for integer in OAS (2b4c082)

  • (tenantadm) Update OAS info section (1e60f1e)

  • (tenantadm) Fix invalid objects in allOf overrides for Address (eb48e23)

  • (tenantadm) Fix inconsistent schema definitions (fd48cc5)

Features

  • (gui) Made device tags functionality available in all device auth states (ME-528) (7b1f3c6)

  • (gui) Let tenant token not be visible by default (MEN-8397) (b70e0b4)

  • (useradm) Change user roles handling for plans different than Enterprise (MEN-8168) (1ee0b84)

  • Implemented content type checker middleware for gin framework (MEN-8327) (9016554)

Performance

  • Put routing path and parameters in separate accesslog fields (51832b6)

    By separating the two, it is much less complex to index paths in the log parser.

Refactor

  • (deviceauth) Move api urls and router maker to routing.go (MEN-8235) (7ecd14e)

  • (deviceauth) Migrate enterprise deviceauth service to gin (MEN-8235) (f0b43c4)

  • (gui) Isolated organization information in settings to align with design (MEN-8411) (2d0eb79)

    • made settings items customizable from outside
  • (gui) Moved billing data to separate settings section & aligned with design (MEN-8411) (bf7578b)

  • (gui) Centralized support contact component (0dd79cb)

  • (inventory) Migrate from ant0nie/go-json-rest to gin-gonic/gin (MEN-8236) (f6899d4)

  • (tenantadm) Move middleware.go to the http package (3f5f338)

  • (tenantadm) Move api handler and router to their corresponding file (24e22ae)

  • (tenantadm) Expect status 404 instead of 405 when sign-up is disabled (0a48ab1)

    Update the docs and the acceptence tests to expect 404 instead of 405

  • Put MakeTestRequest in dedicated testing package (7597129)

    Utilities for testing should be separate from application code.

  • Remove ant0ine/go-json-rest dependency from requestid.GetReqId() (863e415)

  • Migrate enterprise inventory service to gin (MEN-8236) (77b1268)

    Migrate the enterprise-only components from ant0nie/go-json-rest to gin-gonic/gin

Security

  • Bump vite from 6.2.6 to 6.3.4 in /frontend (03506da)

    Bumps vite from 6.2.6 to 6.3.4.


    updated-dependencies:

    • dependency-name: vite dependency-version: 6.3.4 dependency-type: indirect ...
  • Bump the development-dependencies group across 1 directory with 12 updates (30cc04b)

    Bumps the development-dependencies group with 10 updates in the /frontend directory:

    Package From To
    @northern.tech/eslint-config 0.4.0 0.5.0
    @rspack/cli 1.3.8 1.3.13
    @rspack/core 1.3.8 1.3.13
    @sentry/webpack-plugin 3.3.1 3.5.0
    @types/node 22.15.3 22.15.29
    @vitejs/plugin-react 4.4.1 4.5.0
    @vitest/coverage-v8 3.1.2 3.1.4
    lint-staged 15.5.1 16.1.0
    msw 2.7.5 2.8.7
    undici 7.8.0 7.10.0

    Updates @northern.tech/eslint-config from 0.4.0 to 0.5.0

    Updates @rspack/cli from 1.3.8 to 1.3.13

    Updates @rspack/core from 1.3.8 to 1.3.13

    Updates @sentry/webpack-plugin from 3.3.1 to 3.5.0

    Updates @types/node from 22.15.3 to 22.15.29

    Updates @typescript-eslint/eslint-plugin from 8.32.1 to 8.33.0

    Updates @vitejs/plugin-react from 4.4.1 to 4.5.0

    Updates @vitest/coverage-v8 from 3.1.2 to 3.1.4

    Updates lint-staged from 15.5.1 to 16.1.0

    Updates msw from 2.7.5 to 2.8.7

    Updates undici from 7.8.0 to 7.10.0

    Updates vitest from 3.1.2 to 3.1.4


    updated-dependencies:

    • dependency-name: "@northern.tech/eslint-config" dependency-version: 0.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@rspack/cli" dependency-version: 1.3.13 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: "@rspack/core" dependency-version: 1.3.13 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: "@sentry/webpack-plugin" dependency-version: 3.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@types/node" dependency-version: 22.15.29 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.33.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@vitejs/plugin-react" dependency-version: 4.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@vitest/coverage-v8" dependency-version: 3.1.4 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: lint-staged dependency-version: 16.1.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: development-dependencies
    • dependency-name: msw dependency-version: 2.8.7 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: undici dependency-version: 7.10.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: vitest dependency-version: 3.1.4 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies ...
  • Bump the mui group across 1 directory with 3 updates (96d55d3)

    Bumps the mui group with 3 updates in the /frontend directory: @mui/icons-material, @mui/material and @mui/x-date-pickers.

    Updates @mui/icons-material from 7.1.0 to 7.1.1

    Updates @mui/material from 7.1.0 to 7.1.1

    Updates @mui/x-date-pickers from 8.2.0 to 8.5.0


    updated-dependencies:

    • dependency-name: "@mui/icons-material" dependency-version: 7.1.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: mui
    • dependency-name: "@mui/material" dependency-version: 7.1.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: mui
    • dependency-name: "@mui/x-date-pickers" dependency-version: 8.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: mui ...
  • Bump the backend-golang-dependencies group (a834409)

    Bumps the backend-golang-dependencies group in /backend with 9 updates:

    Package From To
    github.com/aws/aws-sdk-go-v2/service/s3 1.79.3 1.80.0
    github.com/gin-gonic/gin 1.10.0 1.10.1
    github.com/nats-io/nats-server/v2 2.11.3 2.11.4
    github.com/nats-io/nats.go 1.41.2 1.42.0
    github.com/redis/go-redis/v9 9.8.0 9.9.0
    golang.org/x/crypto 0.37.0 0.38.0
    golang.org/x/net 0.39.0 0.40.0
    golang.org/x/sys 0.32.0 0.33.0
    golang.org/x/term 0.31.0 0.32.0

    Updates github.com/aws/aws-sdk-go-v2/service/s3 from 1.79.3 to 1.80.0

    Updates github.com/gin-gonic/gin from 1.10.0 to 1.10.1

    Updates github.com/nats-io/nats-server/v2 from 2.11.3 to 2.11.4

    Updates github.com/nats-io/nats.go from 1.41.2 to 1.42.0

    Updates github.com/redis/go-redis/v9 from 9.8.0 to 9.9.0

    Updates golang.org/x/crypto from 0.37.0 to 0.38.0

    Updates golang.org/x/net from 0.39.0 to 0.40.0

    Updates golang.org/x/sys from 0.32.0 to 0.33.0

    Updates golang.org/x/term from 0.31.0 to 0.32.0


    updated-dependencies:

    • dependency-name: github.com/aws/aws-sdk-go-v2/service/s3 dependency-version: 1.80.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-golang-dependencies
    • dependency-name: github.com/gin-gonic/gin dependency-version: 1.10.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-golang-dependencies
    • dependency-name: github.com/nats-io/nats-server/v2 dependency-version: 2.11.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-golang-dependencies
    • dependency-name: github.com/nats-io/nats.go dependency-version: 1.42.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-golang-dependencies
    • dependency-name: github.com/redis/go-redis/v9 dependency-version: 9.9.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-golang-dependencies
    • dependency-name: golang.org/x/crypto dependency-version: 0.38.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-golang-dependencies
    • dependency-name: golang.org/x/net dependency-version: 0.40.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-golang-dependencies
    • dependency-name: golang.org/x/sys dependency-version: 0.33.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-golang-dependencies
    • dependency-name: golang.org/x/term dependency-version: 0.32.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-golang-dependencies ...
  • Bump the backend-tests-python-dependencies group across 1 directory with 5 updates (bfc4838)

    Bumps the backend-tests-python-dependencies group with 5 updates in the /backend/tests directory:

    Package From To
    boto3 1.38.6 1.38.27
    cryptography 44.0.2 45.0.3
    pluggy 1.5.0 1.6.0
    redis 5.2.1 6.2.0
    pytest-xdist 3.6.1 3.7.0

    Updates boto3 from 1.38.6 to 1.38.27

    Updates cryptography from 44.0.2 to 45.0.3

    Updates pluggy from 1.5.0 to 1.6.0

    Updates redis from 5.2.1 to 6.2.0

    Updates pytest-xdist from 3.6.1 to 3.7.0


    updated-dependencies:

    • dependency-name: boto3 dependency-version: 1.38.27 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-tests-python-dependencies
    • dependency-name: cryptography dependency-version: 45.0.3 dependency-type: direct:production update-type: version-update:semver-major dependency-group: backend-tests-python-dependencies
    • dependency-name: pluggy dependency-version: 1.6.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-tests-python-dependencies
    • dependency-name: redis dependency-version: 6.2.0 dependency-type: direct:production update-type: version-update:semver-major dependency-group: backend-tests-python-dependencies
    • dependency-name: pytest-xdist dependency-version: 3.7.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-tests-python-dependencies ...
  • Bump webpack-dev-server and @rspack/cli in /frontend (ff4bc85)

    Bumps webpack-dev-server to 5.2.2 and updates ancestor dependency @rspack/cli. These dependencies need to be updated together.

    Updates webpack-dev-server from 5.2.0 to 5.2.2

    Updates @rspack/cli from 1.3.13 to 1.3.15


    updated-dependencies:

    • dependency-name: webpack-dev-server dependency-version: 5.2.2 dependency-type: indirect
    • dependency-name: "@rspack/cli" dependency-version: 1.3.15 dependency-type: direct:development ...
  • Bump requests in /backend/services/iot-manager/tests (695983a)

    Bumps requests from 2.32.3 to 2.32.4.


    updated-dependencies:

    • dependency-name: requests dependency-version: 2.32.4 dependency-type: direct:production ...
  • Bump the backend-docker-dependencies group across 10 directories with 1 update (f39b7fb)

    Bumps the backend-docker-dependencies group with 1 update in the /backend/services/create-artifact-worker directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deployments directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deviceauth directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deviceconfig directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deviceconnect directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/inventory directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/iot-manager directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/reporting directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/useradm directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/workflows directory: golang.

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4

    Updates golang from 1.24.3 to 1.24.4


    updated-dependencies:

    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies ...
  • Bump @mui/x-date-pickers in /frontend in the mui group (0b07854)

    Bumps the mui group in /frontend with 1 update: @mui/x-date-pickers.

    Updates @mui/x-date-pickers from 8.5.0 to 8.5.1


    updated-dependencies:

    • dependency-name: "@mui/x-date-pickers" dependency-version: 8.5.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: mui ...
  • Bump the production-dependencies group (ef7e609)

    Bumps the production-dependencies group in /frontend with 3 updates: @sentry/react, react-hook-form and react-router-dom.

    Updates @sentry/react from 9.24.0 to 9.28.1

    Updates react-hook-form from 7.56.4 to 7.57.0

    Updates react-router-dom from 7.6.1 to 7.6.2


    updated-dependencies:

    • dependency-name: "@sentry/react" dependency-version: 9.28.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: react-hook-form dependency-version: 7.57.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: react-router-dom dependency-version: 7.6.2 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies ...
  • Bump @playwright/test (be22a5f)

    Bumps the playwright group in /frontend/tests/e2e_tests with 1 update: @playwright/test.

    Updates @playwright/test from 1.52.0 to 1.53.0


    updated-dependencies:

    • dependency-name: "@playwright/test" dependency-version: 1.53.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: playwright ...

Build

  • Change default make target to test for backend/pkg (5ba3fd7)
  • Add make target for pkg unit tests to test-unit root target (5c2e23a)

Revert

  • (tenantadm) Restore swagger specifications for generating types (c06ad4e)

    ... and remove symlink to new specifications.

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

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

  • "ci: Debug mongodb in backend unit tests" (441c1ea)

    Enabling logging just overflows the log buffer.

    This reverts commit 6d164c4c70d1fff7d28e88a50390f8afb676c814.

v4.1.0-saas.6 - 2025-06-05

Bug fixes

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

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

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

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

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

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

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

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

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

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

    • 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)

    • this is to reduce confusion about tags defined async to the current session not being visible
  • (useradm) RBAC - fix permissions related to inventory filters (ME-513) (fdb7cd4)

    Users without access to all devices should not be able to get inventory filers by Id.

Documentation

  • Fixed parameter in reset password and verify email endpoints (MEN-8267) (649fde5)
  • Add API specification for changing subscription (MEN-8145) (ab82128)

Features

  • (gui) Made device tags functionality available in all device auth states (ME-528) (7b1f3c6)

  • (gui) Let tenant token not be visible by default (MEN-8397) (b70e0b4)

  • (gui) Made device tag setting requirement for fully defined keys & values more visible (a3ec69f)

  • New billing API for managing subscription (MEN-8145) (e9e489d)

    The new endpoint POST /api/management/v2/tenantadm/billing/subscription allows the customer to upgrade plan, enable add-ons and change the device limit.

Performance

  • Put routing path and parameters in separate accesslog fields (51832b6)

    By separating the two, it is much less complex to index paths in the log parser.

Refactor

  • (inventory) Migrate from ant0nie/go-json-rest to gin-gonic/gin (MEN-8236) (f6899d4)

  • Put MakeTestRequest in dedicated testing package (7597129)

    Utilities for testing should be separate from application code.

  • Migrate enterprise inventory service to gin (MEN-8236) (77b1268)

    Migrate the enterprise-only components from ant0nie/go-json-rest to gin-gonic/gin

Security

  • Bump the backend-docker-dependencies group across 10 directories with 2 updates (7daaeda)

    Bumps the backend-docker-dependencies group with 2 updates in the /backend/services/create-artifact-worker directory: golang and alpine. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deployments directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deviceauth directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deviceconfig directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/deviceconnect directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/inventory directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/iot-manager directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/reporting directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/useradm directory: golang. Bumps the backend-docker-dependencies group with 1 update in the /backend/services/workflows directory: golang.

    Updates golang from 1.24.2 to 1.24.3

    Updates alpine from 3.21.3 to 3.22.0

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3

    Updates golang from 1.24.2 to 1.24.3


    updated-dependencies:

    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: alpine dependency-version: 3.22.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies
    • dependency-name: golang dependency-version: 1.24.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: backend-docker-dependencies ...
  • Bump node in /frontend (906c5f3)

    Bumps node from 23.11.0-alpine3.20 to 24.1.0-alpine3.20.


    updated-dependencies:

    • dependency-name: node dependency-version: 24.1.0-alpine3.20 dependency-type: direct:production update-type: version-update:semver-major ...
  • Bump yaml (64b5ae9)

    Bumps the e2e-test-dependencies group in /frontend/tests/e2e_tests with 1 update: yaml.

    Updates yaml from 2.7.1 to 2.8.0


    updated-dependencies:

    • dependency-name: yaml dependency-version: 2.8.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: e2e-test-dependencies ...
  • Bump the production-dependencies group (b273830)

    Bumps the production-dependencies group in /frontend with 9 updates:

    Package From To
    @reduxjs/toolkit 2.7.0 2.8.2
    @sentry/react 9.15.0 9.24.0
    @stripe/react-stripe-js 3.6.0 3.7.0
    @stripe/stripe-js 7.2.0 7.3.1
    react-big-calendar 1.18.0 1.19.2
    react-hook-form 7.56.1 7.56.4
    react-router-dom 7.5.3 7.6.1
    tss-react 4.9.16 4.9.18
    validator 13.15.0 13.15.15

    Updates @reduxjs/toolkit from 2.7.0 to 2.8.2

    Updates @sentry/react from 9.15.0 to 9.24.0

    Updates @stripe/react-stripe-js from 3.6.0 to 3.7.0

    Updates @stripe/stripe-js from 7.2.0 to 7.3.1

    Updates react-big-calendar from 1.18.0 to 1.19.2

    Updates react-hook-form from 7.56.1 to 7.56.4

    Updates react-router-dom from 7.5.3 to 7.6.1

    Updates tss-react from 4.9.16 to 4.9.18

    Updates validator from 13.15.0 to 13.15.15


    updated-dependencies:

    • dependency-name: "@reduxjs/toolkit" dependency-version: 2.8.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: "@sentry/react" dependency-version: 9.24.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: "@stripe/react-stripe-js" dependency-version: 3.7.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: "@stripe/stripe-js" dependency-version: 7.3.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: react-big-calendar dependency-version: 1.19.2 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: react-hook-form dependency-version: 7.56.4 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies
    • dependency-name: react-router-dom dependency-version: 7.6.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies
    • dependency-name: tss-react dependency-version: 4.9.18 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies
    • dependency-name: validator dependency-version: 13.15.15 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies ...
  • Bump the development-dependencies group across 1 directory with 12 updates (30cc04b)

    Bumps the development-dependencies group with 10 updates in the /frontend directory:

    Package From To
    @northern.tech/eslint-config 0.4.0 0.5.0
    @rspack/cli 1.3.8 1.3.13
    @rspack/core 1.3.8 1.3.13
    @sentry/webpack-plugin 3.3.1 3.5.0
    @types/node 22.15.3 22.15.29
    @vitejs/plugin-react 4.4.1 4.5.0
    @vitest/coverage-v8 3.1.2 3.1.4
    lint-staged 15.5.1 16.1.0
    msw 2.7.5 2.8.7
    undici 7.8.0 7.10.0

    Updates @northern.tech/eslint-config from 0.4.0 to 0.5.0

    Updates @rspack/cli from 1.3.8 to 1.3.13

    Updates @rspack/core from 1.3.8 to 1.3.13

    Updates @sentry/webpack-plugin from 3.3.1 to 3.5.0

    Updates @types/node from 22.15.3 to 22.15.29

    Updates @typescript-eslint/eslint-plugin from 8.32.1 to 8.33.0

    Updates @vitejs/plugin-react from 4.4.1 to 4.5.0

    Updates @vitest/coverage-v8 from 3.1.2 to 3.1.4

    Updates lint-staged from 15.5.1 to 16.1.0

    Updates msw from 2.7.5 to 2.8.7

    Updates undici from 7.8.0 to 7.10.0

    Updates vitest from 3.1.2 to 3.1.4


    updated-dependencies:

    • dependency-name: "@northern.tech/eslint-config" dependency-version: 0.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@rspack/cli" dependency-version: 1.3.13 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: "@rspack/core" dependency-version: 1.3.13 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: "@sentry/webpack-plugin" dependency-version: 3.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@types/node" dependency-version: 22.15.29 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.33.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@vitejs/plugin-react" dependency-version: 4.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: "@vitest/coverage-v8" dependency-version: 3.1.4 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies
    • dependency-name: lint-staged dependency-version: 16.1.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: development-dependencies
    • dependency-name: msw dependency-version: 2.8.7 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: undici dependency-version: 7.10.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: development-dependencies
    • dependency-name: vitest dependency-version: 3.1.4 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: development-dependencies ...
  • Bump the mui group across 1 directory with 3 updates (96d55d3)

    Bumps the mui group with 3 updates in the /frontend directory: @mui/icons-material, @mui/material and @mui/x-date-pickers.

    Updates @mui/icons-material from 7.1.0 to 7.1.1

    Updates @mui/material from 7.1.0 to 7.1.1

    Updates @mui/x-date-pickers from 8.2.0 to 8.5.0


    updated-dependencies:

    • dependency-name: "@mui/icons-material" dependency-version: 7.1.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: mui
    • dependency-name: "@mui/material" dependency-version: 7.1.1 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: mui
    • dependency-name: "@mui/x-date-pickers" dependency-version: 8.5.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: mui ...

Build

  • Change default make target to test for backend/pkg (5ba3fd7)
  • Add make target for pkg unit tests to test-unit root target (5c2e23a)

Revert

  • "ci: Debug mongodb in backend unit tests" (441c1ea)

    Enabling logging just overflows the log buffer.

    This reverts commit 6d164c4c70d1fff7d28e88a50390f8afb676c814.

4.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.

  • (deployments) Validate configuration on updates (MEN-8287) (ccad883) by @kjaskiewiczz

    With this commit, when doing configuration update using internal endpoint, we validate the configuration.

  • (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

  • (useradm) RBAC - fix permissions related to inventory filters (ME-510) (c38ab7f) by @kjaskiewiczz

    Users without access to all devices should not be able to delete inventory filers.

  • (useradm) Fix permissions for assigning users to tenants (ME-507) (0efc65e) by @kjaskiewiczz

    User with multiple roles, where one of the roles is Admin role, should be able to assign users to tenants.

  • 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

  • (deployments) Fix API specification (QA-990) (4f8d069) by @kjaskiewiczz

    Remove type properties from fields where value is not strictly defined.

  • (inventory) Migrate API specs to OpenAPI v3.0.1 (QA-886) (e7ce7e5) by @kjaskiewiczz

  • Fix API specifications to be compliant with OpenAPI 3 format (QA-990) (26e9fd2) by @kjaskiewiczz

  • Covert enterprise API docs to OpenAPI v3 (QA-886) (f44166c) by @alfrunes

Features

  • (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).

  • (generate-delta-worker) Update mender-artifact to latest v4.1.0 (MEN-8337) (294c6dd) 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.

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

  • Delta generation job details view API support (MEN-8289) (00fb186) by @merlin-northern

  • 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.

4.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

  • (gui) Fixed an issue that could hinder pagination in very frequently created deployments (34ca4ea) by @mzedel

  • (useradm) Added missing permission scope option to allow generating correct types (e956965) by @mzedel

  • (useradm) Added missing permission information in API specs (1f534d1) by @mzedel

  • (deployments) Use the read preference in FindOldestActiveDeviceDeployment (10f8b55) by @merlin-northern

Documentation

  • (deployments) GET delta/jobs endpoint API docs (MEN-8199) (8bec3b5) by @merlin-northern

  • (deviceauth) Enhance description of the /devices/count endpoint (MEN-8255) (c9e3633) by @kjaskiewiczz

Features

  • (deployments) Get the list of delta generation jobs (MEN-8199) (a0ed3b0) by @merlin-northern

  • (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

    • also centralized mui alert styling to account for increased usage
  • (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

4.1.0-saas.3 - 2025-03-20

Bug fixes

  • (deployment) Ignore false errors when deleting data that does not exist (MEN-8213) (532d95a) by @bahaa-ghazal

  • (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

  • (tenantadm) Emit structured logs on request panic (6c67dc3) by @alfrunes

    The former request middleware handling Go panics would emit the panic stack trace in an unstructured format. This commit lets the accesslog handle it and emit it in the trace log context key.

  • (tenantadm) Waiting for workflow does not abort immediately when it is not yet scheduled (MEN-8165) (6dc0790) by @bahaa-ghazal

  • 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).

  • Prevent demoting a service provider with children (MEN-7841) (b342ada) by @bahaa-ghazal

  • Clear auditlogs when promoting a tenant to SP (MEN-7787) (5ab72dc) by @bahaa-ghazal

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

  • Generate delta worker aborting before artifact upload completes (MEN-8177) (4901878) by @alfrunes

    The artifact generator aborts uploading an artifact prematurely once either of the input files are processed and returns exit code 0. This results in a very confusing error where the API reports a successfully generated artifact, but the artifact is never fully uploaded and available through the APIs.

  • Generate delta worker for custom S3 bucket (MEN-8202) (0ac2923) by @alfrunes

  • 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

  • Migrate deployments specs to OpenAPI 3.0 (4631b2f) by @alfrunes
  • Correct spelling errors and incorrect descriptions (001407c) by @alfrunes
  • Migrate deployments specs to OpenAPI 3 and align with open-source (297b808) by @alfrunes

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
  • Accept null to unset suspend and trial expiration date (MEN-7727) (13046eb) by @bahaa-ghazal

Refac

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

4.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

  • (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

  • (deployments) Fix spelling (f2a8379) by @vbpieter

  • Add missing breaking changes to enterprise changelog (794bd4d) by @alfrunes

  • Add missing breaking changes to changelog (799f42d) by @alfrunes

Features

  • (gui) Split release deployment onboarding step in 2 steps (MEN-7882) (3fc2e9a) by @mineralsfree

  • (gui) Made ui improvements to the deployment onboarding flow (MEN-7882) (35d0f11) by @mineralsfree

  • (gui) Made onboard action tooltip rely on position of action item (MEN-7882) (dfeb0d6) by @mineralsfree

  • (gui) Made device issue selection on devices page available for more plans (MEN-8076) (d7d2f97) by @mzedel

  • (gui) Made device tag confirmation message align with change (3374b93) by @mzedel

  • (gui) Unified dialog backdrop and esc closing behaviour (MEN-7998) (8b78680) by @mineralsfree

  • Implementing internal Tenantadm api to remove parent reference from tenant (MEN-8097) (63ac8bd) by @bahaa-ghazal

4.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

Features

  • Count devices deviceauth command line and workflow (MEN-8058) (7128716) by @merlin-northern

4.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

  • (deployments) Clarifications for the GET /deployments version 2 endpoint. (MEN-8053) (0231b1b) by @merlin-northern

  • (inventory) Describe inventory webhook events. (MEN-8041) (66df3f5) by @merlin-northern

Features

  • (gui) Clarified user creation capabilities for non-enterprise users (MEN-7883) (d2fd192) by @mzedel

  • (gui) Added automatic refresh to get webhook events (MEN-8045) (502e06a) by @mzedel

4.0.0-rc.9 - 2025-01-30

Bug fixes

  • (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

  • (useradm) Resolve user ID to email on AssignUserToTenants. (MEN-8004) (b7229df) by @merlin-northern

  • Grant Read role premission to download audit log (MEN-7869) (0aee905) by @bahaa-ghazal

Features

  • (gui) Added explanation about integration number limitation (MEN-7899) (dbdfa67) by @mzedel

Build

  • (make) Add enterprise version build id (d115b84) by @alfrunes

    Updates the linked version symbol to contain a suffix +enterprise.

4.0.0-rc.8 - 2025-01-27

Bug fixes

  • (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

  • (iot-manager) Filter integrations by event scope (MEN-7956) (08f062d) by @kjaskiewiczz

    Decommission and provision device events and device status change event should be sent to integrations containing deviceauth scope.

  • (tenantadm) It should not be possible to make tenant without device limit a Service Provider tenant (MEN-7954) (f144db6) by @kjaskiewiczz

  • Deviceauth healthcheck panics malformed inventory address (70d493a) by @alfrunes

  • Use internal URLs for storage backend when generating artifacts (MEN-7939) (3d72d5e) by @alfrunes

    • BREAKING: Generate artifacts API ignores storage.proxy_uri and aws.external_url configuration values and instead access the API using the same URL as deployments service.

    When generating artifacts, the backend will use the direct access URL instead of rewriting the URL using the configured storage.proxy_uri or aws.external_url.

  • Use internal URLs for storage backend when generating delta artifacts (MEN-7939) (29eed8a) by @alfrunes

    • BREAKING: Generating delta artifacts ignores storage.proxy_uri and aws.external_url configuration values and instead access the API using the same URL as deployments service.

    When generating delta artifacts, the backend will use the direct access URLs instead of rewriting the URL using the configured storage.proxy_uri or aws.external_url.

  • Deployment device count should not exceed max devices (MEN-7847) (15e5fee) by @alfrunes

    Added a condition to skip deployments when the device count reaches max devices.

  • Segmentation fault for create-org CLI timeouts (6054f85) by @alfrunes

    If the service times out waiting for a workflows to complete, the app can incorrectly return no error and a nil tenant object. This commit simplifies the polling loop and ensures that en error is always returned after timeouts.

  • Align the tenantadm API with the documentation (MEN-7986) (57a538c) by @alfrunes

    The v1 APIs are retrieving undocumented attributes from other backend services (deployments and deviceauth). As a side effect, the internal user authentication middleware is fetching this data on every request to the management APIs only to discard the information.

Documentation

  • Fix typo in snippet for creating tenant (a346d33) by @alfrunes
  • Docmentation on backend integration tests running separately (QA-683) (a8f8d54) by @merlin-northern
  • Add missing API parameters to the documentation (7f68520) by @alfrunes

Features

  • (gui) Added feedback on file size limits to artifact upload dialog (MEN-7858) (d612334) by @mzedel

  • (gui) Aligned text input appearance with MUI updated guidelines (MEN-7838) (e5d5672) by @mzedel

Performance

  • Only count tenants when required (55e953b) by @alfrunes

    In most instances the tenant count is discarded.

Refac

  • Move compat tests to dedicated test suite (059f437) by @alfrunes
  • Share path for upserting next deployment for a device (5b863c9) by @alfrunes

    Makes conflict resolution with open source easier to manage.

We welcome contributions to improve this documentation. To submit a change, use the Edit link at the top of the page or email us at .