Date sitemap lastmod from the build pipeline; warn on skipped pages
- bunext build records when each page's client bundle hash last changed
in .bunext/page-lastmod.json (sitemap.lastmod_file to relocate). The
hash covers the page's whole import graph, so component edits re-date
every page that uses them. The sitemap uses these dates as lastmod
- Add sitemap.default_lastmod
- BREAKING: use_file_lastmod now defaults to false (file mtimes are reset
by checkouts); it is a fallback after the build record
- Warn when a page or __root.tsx is skipped because its default export
is not at the start of a line (e.g. export { Page as default })
- Replace leaking module mocks in tests (log, grab-root-file-path) with
spies and fixtures
Co-Authored-By: Claude Opus 5.5 <[email protected]>
This commit is contained in:
Vendored
+19
@@ -0,0 +1,19 @@
|
||||
import type { BundlerCTXMap, BunextPageLastmodRecord } from "../types";
|
||||
/**
|
||||
* # Path of the page last-modified record
|
||||
*/
|
||||
export declare function grabPageLastmodFile(lastmod_file?: string): string;
|
||||
export declare function readPageLastmodRecord(lastmod_file?: string): BunextPageLastmodRecord | undefined;
|
||||
/**
|
||||
* # Record when each page's client bundle last changed
|
||||
* A page's bundle hash covers its whole client import graph (including
|
||||
* the root layout), so a component edit re-dates every page that uses it.
|
||||
* Unchanged pages keep their previous date; removed pages are dropped.
|
||||
*/
|
||||
export declare function updatePageLastmodRecord({ ctx_map, build_date, lastmod_file, }: {
|
||||
ctx_map: {
|
||||
[local_path: string]: BundlerCTXMap;
|
||||
};
|
||||
build_date?: Date;
|
||||
lastmod_file?: string;
|
||||
}): BunextPageLastmodRecord;
|
||||
Reference in New Issue
Block a user