From 42a3791e6b5664a0f28d3ee4d29d5257ef3765f6 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Fri, 27 Mar 2026 19:52:19 +0000 Subject: [PATCH 1/5] fix(deps): update dependency dockerode to ^4.0.10 (#5327) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/docker/package.json | 2 +- pnpm-lock.yaml | 20 ++++++++++---------- 2 files changed, 11 insertions(+), 11 deletions(-) diff --git a/packages/docker/package.json b/packages/docker/package.json index 4873adfcc..23e2b0165 100644 --- a/packages/docker/package.json +++ b/packages/docker/package.json @@ -26,7 +26,7 @@ "dependencies": { "@homarr/common": "workspace:^0.1.0", "@homarr/core": "workspace:^0.1.0", - "dockerode": "^4.0.9" + "dockerode": "^4.0.10" }, "devDependencies": { "@homarr/eslint-config": "workspace:^0.2.0", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0e52641d5..0ca59a1ab 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1251,8 +1251,8 @@ importers: specifier: workspace:^0.1.0 version: link:../core dockerode: - specifier: ^4.0.9 - version: 4.0.9 + specifier: ^4.0.10 + version: 4.0.10 devDependencies: '@homarr/eslint-config': specifier: workspace:^0.2.0 @@ -6413,12 +6413,12 @@ packages: resolution: {integrity: sha512-FO/Jemn08gf9o9E6qtqOPQpyauwf2rQAzfpoUlMyqNpdaVb0ImR/wXKoutLZKp1tks58F8Z8iR7va7H1ne09cw==} engines: {node: '>= 6.0.0'} - docker-modem@5.0.6: - resolution: {integrity: sha512-ens7BiayssQz/uAxGzH8zGXCtiV24rRWXdjNha5V4zSOcxmAZsfGVm/PPFbwQdqEkDnhG+SyR9E3zSHUbOKXBQ==} + docker-modem@5.0.7: + resolution: {integrity: sha512-XJgGhoR/CLpqshm4d3L7rzH6t8NgDFUIIpztYlLHIApeJjMZKYJMz2zxPsYxnejq5h3ELYSw/RBsi3t5h7gNTA==} engines: {node: '>= 8.0'} - dockerode@4.0.9: - resolution: {integrity: sha512-iND4mcOWhPaCNh54WmK/KoSb35AFqPAUWFMffTQcp52uQt36b5uNwEJTSXntJZBbeGad72Crbi/hvDIv6us/6Q==} + dockerode@4.0.10: + resolution: {integrity: sha512-8L/P9JynLBiG7/coiA4FlQXegHltRqS0a+KqI44P1zgQh8QLHTg7FKOwhkBgSJwZTeHsq30WRoVFLuwkfK0YFg==} engines: {node: '>= 8.0'} doctrine@2.1.0: @@ -15347,7 +15347,7 @@ snapshots: dependencies: yaml: 2.5.1 - docker-modem@5.0.6: + docker-modem@5.0.7: dependencies: debug: 4.4.3 readable-stream: 3.6.2 @@ -15356,12 +15356,12 @@ snapshots: transitivePeerDependencies: - supports-color - dockerode@4.0.9: + dockerode@4.0.10: dependencies: '@balena/dockerignore': 1.0.2 '@grpc/grpc-js': 1.12.5 '@grpc/proto-loader': 0.7.13 - docker-modem: 5.0.6 + docker-modem: 5.0.7 protobufjs: 7.4.0 tar-fs: 2.1.4 uuid: 10.0.0 @@ -19718,7 +19718,7 @@ snapshots: byline: 5.0.0 debug: 4.4.3 docker-compose: 1.3.2 - dockerode: 4.0.9 + dockerode: 4.0.10 get-port: 7.1.0 proper-lockfile: 4.1.2 properties-reader: 3.0.1 From 798293813cf82e38d7059069823f927b7cdfb3b8 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Fri, 27 Mar 2026 19:52:59 +0000 Subject: [PATCH 2/5] fix(deps): update dependency fast-xml-parser to ^5.5.8 (#5324) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/definitions/package.json | 2 +- pnpm-lock.yaml | 30 +++++++++++++++--------------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/packages/definitions/package.json b/packages/definitions/package.json index ec870f080..33080232c 100644 --- a/packages/definitions/package.json +++ b/packages/definitions/package.json @@ -24,7 +24,7 @@ "prettier": "@homarr/prettier-config", "dependencies": { "@homarr/common": "workspace:^0.1.0", - "fast-xml-parser": "^5.5.7", + "fast-xml-parser": "^5.5.8", "zod": "^4.2.1" }, "devDependencies": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 0ca59a1ab..9e8cc5f23 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1217,8 +1217,8 @@ importers: specifier: workspace:^0.1.0 version: link:../common fast-xml-parser: - specifier: ^5.5.7 - version: 5.5.7 + specifier: ^5.5.8 + version: 5.5.9 zod: specifier: ^4.2.1 version: 4.2.1 @@ -6971,8 +6971,8 @@ packages: fast-xml-builder@1.1.4: resolution: {integrity: sha512-f2jhpN4Eccy0/Uz9csxh3Nu6q4ErKxf0XIsasomfOihuSUa3/xw6w8dnOtCDgEItQFJG8KyXPzQXzcODDrrbOg==} - fast-xml-parser@5.5.7: - resolution: {integrity: sha512-LteOsISQ2GEiDHZch6L9hB0+MLoYVLToR7xotrzU0opCICBkxOPgHAy1HxAvtxfJNXDJpgAsQN30mkrfpO2Prg==} + fast-xml-parser@5.5.9: + resolution: {integrity: sha512-jldvxr1MC6rtiZKgrFnDSvT8xuH+eJqxqOBThUVjYrxssYTo1avZLGql5l0a0BAERR01CadYzZ83kVEkbyDg+g==} hasBin: true faster-babel-types@0.1.0: @@ -8849,8 +8849,8 @@ packages: resolution: {integrity: sha512-ak9Qy5Q7jYb2Wwcey5Fpvg2KoAc/ZIhLSLOSBmRmygPsGwkVVt0fZa0qrtMz+m6tJTAHfZQ8FnmB4MG4LWy7/w==} engines: {node: '>=8'} - path-expression-matcher@1.1.3: - resolution: {integrity: sha512-qdVgY8KXmVdJZRSS1JdEPOKPdTiEK/pi0RkcT2sw1RhXxohdujUlJFPuS1TSkevZ9vzd3ZlL7ULl1MHGTApKzQ==} + path-expression-matcher@1.2.0: + resolution: {integrity: sha512-DwmPWeFn+tq7TiyJ2CxezCAirXjFxvaiD03npak3cRjlP9+OjTmSy1EpIrEbh+l6JgUundniloMLDQ/6VTdhLQ==} engines: {node: '>=14.0.0'} path-key@3.1.1: @@ -9975,8 +9975,8 @@ packages: resolution: {integrity: sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==} engines: {node: '>=8'} - strnum@2.2.1: - resolution: {integrity: sha512-BwRvNd5/QoAtyW1na1y1LsJGQNvRlkde6Q/ipqqEaivoMdV+B1OMOTVdwR+N/cwVUcIt9PYyHmV8HyexCZSupg==} + strnum@2.2.2: + resolution: {integrity: sha512-DnR90I+jtXNSTXWdwrEy9FakW7UX+qUZg28gj5fk2vxxl7uS/3bpI4fjFYVmdK9etptYBPNkpahuQnEwhwECqA==} style-to-js@1.1.16: resolution: {integrity: sha512-/Q6ld50hKYPH3d/r6nr117TZkHR0w0kGGIVfpG9N6D8NymRPM9RqCUv4pRpJ62E5DqOYx2AFpbZMyCPnjQCnOw==} @@ -11774,7 +11774,7 @@ snapshots: dependencies: '@ndaidong/bellajs': 12.0.1 cross-fetch: 4.1.0 - fast-xml-parser: 5.5.7 + fast-xml-parser: 5.5.9 html-entities: 2.6.0 transitivePeerDependencies: - encoding @@ -16120,13 +16120,13 @@ snapshots: fast-xml-builder@1.1.4: dependencies: - path-expression-matcher: 1.1.3 + path-expression-matcher: 1.2.0 - fast-xml-parser@5.5.7: + fast-xml-parser@5.5.9: dependencies: fast-xml-builder: 1.1.4 - path-expression-matcher: 1.1.3 - strnum: 2.2.1 + path-expression-matcher: 1.2.0 + strnum: 2.2.2 faster-babel-types@0.1.0(@babel/types@7.26.0): dependencies: @@ -18114,7 +18114,7 @@ snapshots: path-exists@4.0.0: {} - path-expression-matcher@1.1.3: {} + path-expression-matcher@1.2.0: {} path-key@3.1.1: {} @@ -19507,7 +19507,7 @@ snapshots: strip-json-comments@3.1.1: {} - strnum@2.2.1: {} + strnum@2.2.2: {} style-to-js@1.1.16: dependencies: From 49d9394cd78b2a1146c8dc00dd982215a2f9a580 Mon Sep 17 00:00:00 2001 From: "homarr-renovate[bot]" <158783068+homarr-renovate[bot]@users.noreply.github.com> Date: Fri, 27 Mar 2026 19:53:16 +0000 Subject: [PATCH 3/5] fix(deps): update dependency @t3-oss/env-nextjs to ^0.13.11 (#5345) Co-authored-by: homarr-renovate[bot] <158783068+homarr-renovate[bot]@users.noreply.github.com> --- packages/core/package.json | 2 +- pnpm-lock.yaml | 18 +++++++++--------- 2 files changed, 10 insertions(+), 10 deletions(-) diff --git a/packages/core/package.json b/packages/core/package.json index 458a08fb8..af0d31a56 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -37,7 +37,7 @@ }, "prettier": "@homarr/prettier-config", "dependencies": { - "@t3-oss/env-nextjs": "^0.13.10", + "@t3-oss/env-nextjs": "^0.13.11", "better-sqlite3": "^12.6.2", "dns-caching": "^0.2.9", "drizzle-orm": "^0.45.1", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9e8cc5f23..43c8166b7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -890,8 +890,8 @@ importers: packages/core: dependencies: '@t3-oss/env-nextjs': - specifier: ^0.13.10 - version: 0.13.10(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1) + specifier: ^0.13.11 + version: 0.13.11(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1) better-sqlite3: specifier: ^12.6.2 version: 12.6.2 @@ -4601,8 +4601,8 @@ packages: '@swc/types@0.1.25': resolution: {integrity: sha512-iAoY/qRhNH8a/hBvm3zKj9qQ4oc2+3w1unPJa2XvTK3XjeLXtzcCingVPw/9e5mn1+0yPqxcBGp9Jf0pkfMb1g==} - '@t3-oss/env-core@0.13.10': - resolution: {integrity: sha512-NNFfdlJ+HmPHkLi2HKy7nwuat9SIYOxei9K10lO2YlcSObDILY7mHZNSHsieIM3A0/5OOzw/P/b+yLvPdaG52g==} + '@t3-oss/env-core@0.13.11': + resolution: {integrity: sha512-sM7GYY+KL7H/Hl0BE0inWfk3nRHZOLhmVn7sHGxaZt9FAR6KqREXAE+6TqKfiavfXmpRxO/OZ2QgKRd+oiBYRQ==} peerDependencies: arktype: ^2.1.0 typescript: '>=5.0.0' @@ -4618,8 +4618,8 @@ packages: zod: optional: true - '@t3-oss/env-nextjs@0.13.10': - resolution: {integrity: sha512-JfSA2WXOnvcc/uMdp31paMsfbYhhdvLLRxlwvrnlPE9bwM/n0Z+Qb9xRv48nPpvfMhOrkrTYw1I5Yc06WIKBJQ==} + '@t3-oss/env-nextjs@0.13.11': + resolution: {integrity: sha512-NC+3j7YWgpzdFu1t5y/8wqibTK0lm5RS4bjXA1n8uwik3wIR4iZM4Fa+U2BaMa5k3Qk8RZiYhoAIX0WogmGkzg==} peerDependencies: arktype: ^2.1.0 typescript: '>=5.0.0' @@ -13412,15 +13412,15 @@ snapshots: dependencies: '@swc/counter': 0.1.3 - '@t3-oss/env-core@0.13.10(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1)': + '@t3-oss/env-core@0.13.11(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1)': optionalDependencies: arktype: 2.1.20 typescript: 5.9.3 zod: 4.2.1 - '@t3-oss/env-nextjs@0.13.10(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1)': + '@t3-oss/env-nextjs@0.13.11(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1)': dependencies: - '@t3-oss/env-core': 0.13.10(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1) + '@t3-oss/env-core': 0.13.11(arktype@2.1.20)(typescript@5.9.3)(zod@4.2.1) optionalDependencies: arktype: 2.1.20 typescript: 5.9.3 From e9c908b317d695b3d60e51079f7c54967d92f0f2 Mon Sep 17 00:00:00 2001 From: "homarr-releases[bot]" <175486441+homarr-releases[bot]@users.noreply.github.com> Date: Fri, 27 Mar 2026 21:45:48 +0100 Subject: [PATCH 4/5] chore: update bug report template (#5346) Co-authored-by: Releases Homarr <175486441+homarr-releases[bot]@users.noreply.github.com> --- .github/ISSUE_TEMPLATE/bug_report.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/ISSUE_TEMPLATE/bug_report.yml b/.github/ISSUE_TEMPLATE/bug_report.yml index f71287307..bd3444e2d 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.yml +++ b/.github/ISSUE_TEMPLATE/bug_report.yml @@ -33,6 +33,7 @@ body: options: # The below comment is used to insert a new version with on-release.yml #NEXT_VERSION# + - 1.57.0 - 1.56.1 - 1.56.0 - 1.55.0 From 192a43a031eb9431da2c11395eda69a6c7236b9b Mon Sep 17 00:00:00 2001 From: Manuel <30572287+manuel-rw@users.noreply.github.com> Date: Fri, 27 Mar 2026 22:32:13 +0100 Subject: [PATCH 5/5] fix: dashdot gpu (#5347) --- .../src/dashdot/dashdot-integration.ts | 36 ++++++++++--------- 1 file changed, 19 insertions(+), 17 deletions(-) diff --git a/packages/integrations/src/dashdot/dashdot-integration.ts b/packages/integrations/src/dashdot/dashdot-integration.ts index 0de41a55a..3c835a302 100644 --- a/packages/integrations/src/dashdot/dashdot-integration.ts +++ b/packages/integrations/src/dashdot/dashdot-integration.ts @@ -85,7 +85,7 @@ export class DashDotIntegration extends Integration implements ISystemHealthMoni cpuModel: serverInfo.cpu.model, operatingSystemVersion: `${serverInfo.os.distro} ${serverInfo.os.release} (${serverInfo.os.kernel})`, uptime: serverInfo.os.uptime, - gpuNames: serverInfo.gpu.map((gpu) => gpu.brand), + gpuNames: serverInfo.gpu.layout.map((gpu) => gpu.brand), }; } @@ -161,14 +161,14 @@ export class DashDotIntegration extends Integration implements ISystemHealthMoni } private async getCurrentGpuLoadAsync() { - const response = await fetchWithTrustedCertificatesAsync(this.url("/load/gpu")); - const result = await response.text(); - - // response is either valid json or empty if gpu widget is disabled. - if (result.length === 0) return []; - - const data = await gpuLoadApi.parseAsync(JSON.parse(result)); - return data.layout; + try { + const response = await fetchWithTrustedCertificatesAsync(this.url("/load/gpu")); + const result = await response.json(); + const data = await gpuLoadApi.parseAsync(result); + return data.layout; + } catch { + return []; + } } private getChannel() { @@ -219,14 +219,16 @@ const internalServerInfoApi = z.object({ ), }), ), - gpu: z - .array( - z.object({ - brand: z.string(), - model: z.string().optional(), - }), - ) - .default([]), + gpu: z.object({ + layout: z + .array( + z.object({ + brand: z.string(), + model: z.string().optional(), + }), + ) + .default([]), + }), }); const cpuLoadPerCoreApiList = z.array(cpuLoadPerCoreApi);