Skip to content

Commit bae3b4d

Browse files
sfanahataShannon AnahataBYK
authored
fix(mdx): Disable in-memory cache for development (#14340)
## DESCRIBE YOUR PR **Problem:** - Problem: MDX files in /docs directory required server restart to see changes - Root Cause: The getFileBySlugWithCache function was caching MDX files even in development - Solution: Added development mode check to bypass cache when NODE_ENV === 'development' - Impact: Hot reload now works for .mdx files while preserving production performance **Solution** - Bypass MDX cache in development mode to allow hot reload - Maintains caching behavior in production for performance - Resolves issue where MDX changes required server restart --------- Co-authored-by: Shannon Anahata <[email protected]> Co-authored-by: Burak Yigit Kaya <[email protected]>
1 parent 4efd8c8 commit bae3b4d

File tree

1 file changed

+11
-9
lines changed

1 file changed

+11
-9
lines changed

src/mdx.ts

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -701,12 +701,14 @@ const fileBySlugCache = new Map<string, Promise<SlugFile>>();
701701
*
702702
* This is useful for performance when rendering the same file multiple times.
703703
*/
704-
export function getFileBySlugWithCache(slug: string): Promise<SlugFile> {
705-
let cached = fileBySlugCache.get(slug);
706-
if (!cached) {
707-
cached = getFileBySlug(slug);
708-
fileBySlugCache.set(slug, cached);
709-
}
710-
711-
return cached;
712-
}
704+
export const getFileBySlugWithCache: (slug: string) => Promise<SlugFile> =
705+
process.env.NODE_ENV === 'development'
706+
? getFileBySlug
707+
: (slug: string) => {
708+
let cached = fileBySlugCache.get(slug);
709+
if (!cached) {
710+
cached = getFileBySlug(slug);
711+
fileBySlugCache.set(slug, cached);
712+
}
713+
return cached;
714+
};

0 commit comments

Comments
 (0)