From 5ea902d2606a1ddc82f336dcb47342e2bd2db3e9 Mon Sep 17 00:00:00 2001 From: Thomas Camlong Date: Thu, 2 Jul 2026 18:28:28 +0200 Subject: [PATCH] fix: resolve type errors from dev merge - Fix URL/RequestInfo/RequestInit type conflicts with Node 24.18 - Fix optional repository.id type mismatch in releases router --- packages/api/src/router/widgets/releases.ts | 5 +++-- packages/request-handler/src/release-providers.ts | 6 +++--- packages/request-handler/src/timetable.ts | 2 +- 3 files changed, 7 insertions(+), 6 deletions(-) diff --git a/packages/api/src/router/widgets/releases.ts b/packages/api/src/router/widgets/releases.ts index 2c3ca91d6..c7f492337 100644 --- a/packages/api/src/router/widgets/releases.ts +++ b/packages/api/src/router/widgets/releases.ts @@ -78,10 +78,11 @@ export const releasesRouter = createTRPCRouter({ return await Promise.all( input.repositories.map(async (repository) => { try { - const useToken = allowedRepoIds === null || allowedRepoIds.has(repository.id); + const repoId = repository.id ?? repository.identifier; + const useToken = allowedRepoIds === null || allowedRepoIds.has(repoId); const response = await releasesRequestHandler .handler({ - id: repository.id, + id: repoId, provider: repository.provider, identifier: repository.identifier, versionRegex: formatVersionFilterRegex(repository.versionFilter), diff --git a/packages/request-handler/src/release-providers.ts b/packages/request-handler/src/release-providers.ts index 8d918b761..ad1a6026d 100644 --- a/packages/request-handler/src/release-providers.ts +++ b/packages/request-handler/src/release-providers.ts @@ -9,8 +9,8 @@ import { createLogger } from "@homarr/core/infrastructure/logs"; const logger = createLogger({ module: "releaseProviders" }); const PROVIDER_TIMEOUT_MS = 10_000; -const fetchProvider = (url: URL | RequestInfo, options?: RequestInit & { timeout?: number }) => - fetchWithTrustedCertificatesAsync(url, { timeout: PROVIDER_TIMEOUT_MS, ...options }); +const fetchProvider = (url: string, options?: RequestInit & { timeout?: number }) => + fetchWithTrustedCertificatesAsync(url, { timeout: PROVIDER_TIMEOUT_MS, ...options } as Parameters[1]); export interface ReleasesRepositoryRequest extends Record { id: string; @@ -127,7 +127,7 @@ const parseOwnerPackageName = (identifier: string) => { const removeTrailingSlash = (url: string) => url.replace(/\/$/, ""); -const buildUrl = (baseUrl: string, path: `/${string}`) => new URL(`${baseUrl}${path}`); +const buildUrl = (baseUrl: string, path: `/${string}`) => new URL(`${baseUrl}${path}`).toString(); const getGithubApi = (baseUrl: string, userAgent: string, token?: string) => new Octokit({ diff --git a/packages/request-handler/src/timetable.ts b/packages/request-handler/src/timetable.ts index 7669d6c9a..768cf69c8 100644 --- a/packages/request-handler/src/timetable.ts +++ b/packages/request-handler/src/timetable.ts @@ -51,7 +51,7 @@ const buildUrl = (baseUrl: string, path: `/${string}`, queryParams: Record => {