Skip to content

Commit 7fbe62b

Browse files
committed
fix: return null for missing replacements to allow cache hits
1 parent 82ea626 commit 7fbe62b

2 files changed

Lines changed: 3 additions & 4 deletions

File tree

src/providers/diagnostics/rules/replacement.ts

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -19,8 +19,7 @@ function generateMessage(replacement: ModuleReplacement) {
1919

2020
export const checkReplacement: DiagnosticRule = async (dep) => {
2121
const replacement = await getReplacement(dep.name)
22-
// Fallback for cache compatibility (LRUCache rejects null/undefined)
23-
if (!replacement || !('type' in replacement))
22+
if (!replacement)
2423
return
2524

2625
return {

src/utils/api/replacement.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ export type {
99
ModuleReplacement,
1010
}
1111

12-
export const getReplacement = memoize<string, Promise<ModuleReplacement>>(async (name) => {
12+
export const getReplacement = memoize<string, Promise<ModuleReplacement | null>>(async (name) => {
1313
logger.info(`Fetching replacements for ${name}`)
1414
const encodedName = encodePackageName(name)
1515

16-
const result = await ofetch<ModuleReplacement>(`${NPMX_DEV_API}/replacements/${encodedName}`)
16+
const result = await ofetch<ModuleReplacement | undefined>(`${NPMX_DEV_API}/replacements/${encodedName}`) ?? null
1717
logger.info(`Fetched replacements for ${name}`)
1818

1919
return result

0 commit comments

Comments
 (0)