Skip to content

Commit

Permalink
feat(gatsby): Add webpack fs caching for development flag (#32264)
Browse files Browse the repository at this point in the history
Co-authored-by: gatsbybot <mathews.kyle+gatsbybot@gmail.com>
Co-authored-by: Lennart <lekoarts@gmail.com>
  • Loading branch information
3 people committed Jul 15, 2021
1 parent f970600 commit 4f9a724
Show file tree
Hide file tree
Showing 2 changed files with 20 additions and 4 deletions.
18 changes: 16 additions & 2 deletions packages/gatsby/src/utils/flags.ts
Expand Up @@ -78,8 +78,12 @@ const activeFlags: Array<IFlag> = [
command: `develop`,
telemetryId: `FastDev`,
experimental: false,
description: `Enable all experiments aimed at improving develop server start time`,
includedFlags: [`DEV_SSR`, `PRESERVE_FILE_DOWNLOAD_CACHE`],
description: `Enable all experiments aimed at improving develop server start time.`,
includedFlags: [
`DEV_SSR`,
`PRESERVE_FILE_DOWNLOAD_CACHE`,
`DEV_WEBPACK_CACHE`,
],
testFitness: (): fitnessEnum => true,
},
{
Expand Down Expand Up @@ -142,6 +146,16 @@ const activeFlags: Array<IFlag> = [
umbrellaIssue: `https://gatsby.dev/cache-clearing-feedback`,
testFitness: (): fitnessEnum => `LOCKED_IN`,
},
{
name: `DEV_WEBPACK_CACHE`,
env: `GATSBY_EXPERIMENTAL_DEV_WEBPACK_CACHE`,
command: `develop`,
telemetryId: `DevWebackCache`,
experimental: false,
description: `Enable webpack's persistent caching during development. Speeds up the start of the development server.`,
umbrellaIssue: `https://gatsby.dev/cache-clearing-feedback`,
testFitness: (): fitnessEnum => true,
},
{
name: `PRESERVE_FILE_DOWNLOAD_CACHE`,
env: `GATSBY_EXPERIMENTAL_PRESERVE_FILE_DOWNLOAD_CACHE`,
Expand Down
6 changes: 4 additions & 2 deletions packages/gatsby/src/utils/webpack.config.js
Expand Up @@ -783,8 +783,10 @@ module.exports = async (
}

if (
process.env.GATSBY_EXPERIMENTAL_PRESERVE_WEBPACK_CACHE &&
(stage === `build-javascript` || stage === `build-html`)
stage === `build-javascript` ||
stage === `build-html` ||
(process.env.GATSBY_EXPERIMENTAL_DEV_WEBPACK_CACHE &&
(stage === `develop` || stage === `develop-html`))
) {
const cacheLocation = path.join(
program.directory,
Expand Down

0 comments on commit 4f9a724

Please sign in to comment.