Page rendering imported the SSR bundle and .server.ts modules with a unique ?t= query on every request, in production too. Each one became a new, never-evicted module record (and re-ran module top-level code), so RSS grew with request count. Cache-bust only in dev via importFresh. Co-Authored-By: Claude Opus 5.5 <[email protected]>
11 lines
459 B
JavaScript
11 lines
459 B
JavaScript
import isDevelopment from "./is-development";
|
|
/**
|
|
* Dev: bypass Bun's module registry so rebuilt files are picked up.
|
|
* Prod: import by stable path so each module is loaded (and kept) once.
|
|
* A unique `?t=` per call creates a new, never-evicted module record, so
|
|
* using it in production leaks memory on every request.
|
|
*/
|
|
export default function importFresh(file_path) {
|
|
return import(isDevelopment() ? `${file_path}?t=${Date.now()}` : file_path);
|
|
}
|