fix: respect markdown.cache = false on build too

main
Divyansh Singh 22 hours ago
parent f386c1a3d4
commit 6d7422f8fa

@ -83,7 +83,6 @@ function getResolutionCache(siteConfig: SiteConfig) {
export async function createMarkdownToVueRenderFn( export async function createMarkdownToVueRenderFn(
srcDir: string, srcDir: string,
options: MarkdownOptions = {}, options: MarkdownOptions = {},
isBuild = false,
base = '/', base = '/',
includeLastUpdatedData = false, includeLastUpdatedData = false,
cleanUrls = false, cleanUrls = false,
@ -115,7 +114,7 @@ export async function createMarkdownToVueRenderFn(
const relativePath = slash(path.relative(srcDir, file)) const relativePath = slash(path.relative(srcDir, file))
const cacheKey = JSON.stringify({ src, ts, relativePath }) const cacheKey = JSON.stringify({ src, ts, relativePath })
if (isBuild || options.cache !== false) { if (options.cache !== false) {
const cached = cache.get(cacheKey) const cached = cache.get(cacheKey)
if (cached) { if (cached) {
debug(`[cache hit] ${relativePath}`) debug(`[cache hit] ${relativePath}`)
@ -177,15 +176,9 @@ export async function createMarkdownToVueRenderFn(
} }
return siteConfig.ignoreDeadLinks.some((ignore) => { return siteConfig.ignoreDeadLinks.some((ignore) => {
if (typeof ignore === 'string') { if (typeof ignore === 'string') return url === ignore
return url === ignore if (ignore instanceof RegExp) return ignore.test(url)
} if (typeof ignore === 'function') return ignore(url, fileOrig)
if (ignore instanceof RegExp) {
return ignore.test(url)
}
if (typeof ignore === 'function') {
return ignore(url, fileOrig)
}
return false return false
}) })
} }
@ -198,6 +191,7 @@ export async function createMarkdownToVueRenderFn(
url = url.replace(/[?#].*$/, '').replace(/\.(html|md)$/, '') url = url.replace(/[?#].*$/, '').replace(/\.(html|md)$/, '')
if (url.endsWith('/')) url += `index` if (url.endsWith('/')) url += `index`
let resolved = decodeURIComponent( let resolved = decodeURIComponent(
slash( slash(
url.startsWith('/') url.startsWith('/')
@ -207,6 +201,7 @@ export async function createMarkdownToVueRenderFn(
) )
resolved = resolved =
siteConfig?.rewrites.inv[resolved + '.md']?.slice(0, -3) || resolved siteConfig?.rewrites.inv[resolved + '.md']?.slice(0, -3) || resolved
if ( if (
!pages.includes(resolved) && !pages.includes(resolved) &&
!fs.existsSync(path.resolve(dir, publicDir, `${resolved}.html`)) && !fs.existsSync(path.resolve(dir, publicDir, `${resolved}.html`)) &&
@ -239,12 +234,7 @@ export async function createMarkdownToVueRenderFn(
for (const fn of transformPageData) { for (const fn of transformPageData) {
if (fn) { if (fn) {
const dataToMerge = await fn(pageData, { siteConfig }) const dataToMerge = await fn(pageData, { siteConfig })
if (dataToMerge) { if (dataToMerge) pageData = { ...pageData, ...dataToMerge }
pageData = {
...pageData,
...dataToMerge
}
}
} }
} }
@ -260,15 +250,8 @@ export async function createMarkdownToVueRenderFn(
debug(`[render] ${file} in ${Date.now() - start}ms.`) debug(`[render] ${file} in ${Date.now() - start}ms.`)
const result = { const result = { vueSrc, pageData, deadLinks, includes }
vueSrc, if (options.cache !== false) cache.set(cacheKey, result)
pageData,
deadLinks,
includes
}
if (isBuild || options.cache !== false) {
cache.set(cacheKey, result)
}
return result return result
} }
} }

@ -116,7 +116,6 @@ export async function createVitePressPlugin(
markdownToVue = await createMarkdownToVueRenderFn( markdownToVue = await createMarkdownToVueRenderFn(
srcDir, srcDir,
markdown, markdown,
config.command === 'build',
config.base, config.base,
lastUpdated, lastUpdated,
cleanUrls, cleanUrls,

Loading…
Cancel
Save