From 6f54e70c6aa2f36ad7428f1efcfce9e949b4b366 Mon Sep 17 00:00:00 2001 From: "Jocelyn Badgley (Twipped)" Date: Wed, 11 Mar 2020 12:12:24 -0700 Subject: [PATCH] Fix rev-manifest missing, like, half the assets --- build/_post-template.js | 3 +++ build/cache.js | 13 +++++++------ build/evaluate.js | 2 +- build/index.js | 24 +++++++++++------------- 4 files changed, 22 insertions(+), 20 deletions(-) diff --git a/build/_post-template.js b/build/_post-template.js index cb0c3c8..e1987cc 100644 --- a/build/_post-template.js +++ b/build/_post-template.js @@ -2,8 +2,11 @@ module.exports = exports = ({ id, date }) => `--- id: "${id}" date: "${date.toISOString()}" +title: +description: tags: - Transgender +author: tweets: --- diff --git a/build/cache.js b/build/cache.js index a826718..9a569dd 100644 --- a/build/cache.js +++ b/build/cache.js @@ -85,11 +85,6 @@ module.exports = exports = class Manifest { mode: 'new', }; - if (task.nocache) { - result.mode = 'silent'; - return result; - } - const [ iTime, oTime, cTime, iRev ] = await Promise.all([ local && this.stat(input), this.stat(output), @@ -97,6 +92,12 @@ module.exports = exports = class Manifest { local && this.compareBy.inputRev && this.revFile(input), ]); + if (task.nocache) { + result.iRev = iRev; + result.mode = 'silent'; + return result; + } + if (local && !iTime) throw new Error('Input file does not exist: ' + input); if (!local && !cTime) { @@ -150,7 +151,7 @@ module.exports = exports = class Manifest { async touch (task, lastSeen = new Date()) { - if (task.nocache || task.action.name) return null; + if (task.nocache || !task.action.name) return null; const hash = this.hash(task); const { input, output } = task; diff --git a/build/evaluate.js b/build/evaluate.js index 6e2c919..0f9b6f5 100644 --- a/build/evaluate.js +++ b/build/evaluate.js @@ -55,7 +55,7 @@ module.exports = exports = async function process (tasks, cache) { if (taskLog && LOG[taskLog[0]]) log.info(...taskLog); if (cache.isProd) { - fs.writeFile(resolve('dist', status.revPath), result); + await fs.writeFile(resolve('dist', status.revPath), result); } }, { concurrency: 1 }); diff --git a/build/index.js b/build/index.js index 53c8dcc..d963199 100644 --- a/build/index.js +++ b/build/index.js @@ -28,10 +28,9 @@ exports.everything = function (prod = false) { async function fn () { // load a directory scan of the public and post folders - const [ PublicFiles, PostFiles, engines ] = await Promise.all([ + const [ PublicFiles, PostFiles ] = await Promise.all([ loadPublicFiles(), loadPostFiles(), - getEngines(prod), ]); // load data for all the files in that folder @@ -51,17 +50,15 @@ exports.everything = function (prod = false) { const assets = [ ...PostFiles.assets, ...PublicFiles.assets ]; - // compile all tasks to be completed - const tasks = await Promise.all([ - PublicFiles.tasks, - PostFiles.tasks, - scss(prod), - scripts(prod), - svg(prod), - favicon(prod), - ]); - - await Promise.all([ + const [ tasks ] = await Promise.all([ + await Promise.all([ + PublicFiles.tasks, + PostFiles.tasks, + scss(prod), + scripts(prod), + svg(prod), + favicon(prod), + ]), fs.ensureDir(resolve('dist')), writeIndex('pages.json', pages), writeIndex('posts.json', posts), @@ -73,6 +70,7 @@ exports.everything = function (prod = false) { await evaluate(tasks.flat(), cache); await cache.save(); + const engines = await getEngines(prod); const postIndex = await pageWriter(engines, pages, posts, prod); await fs.writeFile(resolve('dist/tweets/index.json'), prod ? JSON.stringify(postIndex) : JSON.stringify(postIndex, null, 2)); }