From 4b32020d63cc7a323bb85d9c7f2ab5f8e11bbe0b Mon Sep 17 00:00:00 2001 From: Sarah Etter Date: Wed, 18 May 2022 10:29:10 -0400 Subject: [PATCH 1/5] feat: remove mergeLinkHeaders functionality --- src/__tests__/gatsby-node.ts | 3 --- src/build-headers-program.ts | 23 +---------------------- src/gatsby-node.ts | 4 ++-- 3 files changed, 3 insertions(+), 27 deletions(-) diff --git a/src/__tests__/gatsby-node.ts b/src/__tests__/gatsby-node.ts index f90d65e8..4b885e61 100644 --- a/src/__tests__/gatsby-node.ts +++ b/src/__tests__/gatsby-node.ts @@ -32,7 +32,6 @@ describe(`gatsby-node.js`, () => { `"headers" must be of type object`, `"allPageHeaders" must be an array`, `"mergeSecurityHeaders" must be a boolean`, - `"mergeLinkHeaders" must be a boolean`, `"mergeCachingHeaders" must be a boolean`, `"transformHeaders" must have an arity lesser or equal to 2`, `"generateMatchPathRewrites" must be a boolean`, @@ -42,7 +41,6 @@ describe(`gatsby-node.js`, () => { headers: `this should be an object`, allPageHeaders: `this should be an array`, mergeSecurityHeaders: `this should be a boolean`, - mergeLinkHeaders: `this should be a boolean`, mergeCachingHeaders: `this should be a boolean`, transformHeaders: (too, many, args) => [too, many, args], generateMatchPathRewrites: `this should be a boolean`, @@ -59,7 +57,6 @@ describe(`gatsby-node.js`, () => { }, allPageHeaders: [`First header`, `Second header`], mergeSecurityHeaders: true, - mergeLinkHeaders: false, mergeCachingHeaders: true, transformHeaders: () => null, generateMatchPathRewrites: false, diff --git a/src/build-headers-program.ts b/src/build-headers-program.ts index 1f0f4840..0cb2603d 100644 --- a/src/build-headers-program.ts +++ b/src/build-headers-program.ts @@ -194,7 +194,7 @@ const validateUserOptions = (pluginOptions: any, reporter: any) => (headers: any ) } - [`mergeSecurityHeaders`, `mergeLinkHeaders`, `mergeCachingHeaders`].forEach((mergeOption) => { + [`mergeSecurityHeaders`, `mergeCachingHeaders`].forEach((mergeOption) => { if (!isBoolean(pluginOptions[mergeOption])) { throw new TypeError( `The "${mergeOption}" option to gatsby-plugin-netlify must be a boolean. Check your gatsby-config.js.`, @@ -248,26 +248,6 @@ const mapUserLinkAllPageHeaders = return defaultMerge(headers, duplicateHeadersByPage) } -const applyLinkHeaders = - (pluginData: any, { - mergeLinkHeaders - }: any) => - (headers: any) => { - if (!mergeLinkHeaders) { - return headers - } - - const { pages, manifest, pathPrefix, publicFolder } = pluginData - const perPageHeaders = preloadHeadersByPage({ - pages, - manifest, - pathPrefix, - publicFolder, - }) - - return defaultMerge(headers, perPageHeaders) - } - const applySecurityHeaders = ({ mergeSecurityHeaders @@ -340,7 +320,6 @@ const buildHeadersProgram = (pluginData: any, pluginOptions: any, reporter: any) applySecurityHeaders(pluginOptions), applyCachingHeaders(pluginData, pluginOptions), mapUserLinkAllPageHeaders(pluginData, pluginOptions), - applyLinkHeaders(pluginData, pluginOptions), applyTransformHeaders(pluginOptions), transformToString, writeHeadersFile(pluginData), diff --git a/src/gatsby-node.ts b/src/gatsby-node.ts index e022c578..37cebf35 100644 --- a/src/gatsby-node.ts +++ b/src/gatsby-node.ts @@ -62,9 +62,9 @@ export const onPostBuild = async ({ store, pathPrefix, reporter }: any, userPlug const pluginOptions = { ...DEFAULT_OPTIONS, ...userPluginOptions } const { redirects, pages, functions = [], program } = store.getState() - if (pages.size > PAGE_COUNT_WARN && (pluginOptions.mergeCachingHeaders || pluginOptions.mergeLinkHeaders)) { + if (pages.size > PAGE_COUNT_WARN && pluginOptions.mergeCachingHeaders ) { reporter.warn( - `[gatsby-plugin-netlify] Your site has ${pages.size} pages, which means that the generated headers file could become very large. Consider disabling "mergeCachingHeaders" and "mergeLinkHeaders" in your plugin config`, + `[gatsby-plugin-netlify] Your site has ${pages.size} pages, which means that the generated headers file could become very large. Consider disabling "mergeCachingHeaders" in your plugin config`, ) } reporter.info(`[gatsby-plugin-netlify] Creating SSR/DSG redirects...`) From e6f9f315b9bf1837a580380bf43c8c0460487aae Mon Sep 17 00:00:00 2001 From: Sarah Etter Date: Fri, 20 May 2022 10:30:24 -0400 Subject: [PATCH 2/5] feat: remove preload headers --- .../build-headers-program.ts.snap | 239 ------------------ src/__tests__/build-headers-program.ts | 21 -- src/build-headers-program.ts | 87 ------- src/gatsby-node.ts | 2 +- 4 files changed, 1 insertion(+), 348 deletions(-) diff --git a/src/__tests__/__snapshots__/build-headers-program.ts.snap b/src/__tests__/__snapshots__/build-headers-program.ts.snap index 109968fd..17c2d33d 100644 --- a/src/__tests__/__snapshots__/build-headers-program.ts.snap +++ b/src/__tests__/__snapshots__/build-headers-program.ts.snap @@ -1,93 +1,5 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`build-headers-program with caching headers 1`] = ` -"## Created with gatsby-plugin-netlify - -/* - X-Frame-Options: DENY - X-XSS-Protection: 1; mode=block - X-Content-Type-Options: nosniff - Referrer-Policy: same-origin -/component---node-modules-gatsby-plugin-offline-app-shell-js-78f9e4dea04737fa062d.js - Cache-Control: public, max-age=31536000, immutable -/0-0180cd94ef2497ac7db8.js - Cache-Control: public, max-age=31536000, immutable -/component---src-templates-blog-post-js-517987eae96e75cddbe7.js - Cache-Control: public, max-age=31536000, immutable -/component---src-pages-404-js-53e6c51a5a7e73090f50.js - Cache-Control: public, max-age=31536000, immutable -/component---src-pages-index-js-0bdd01c77ee09ef0224c.js - Cache-Control: public, max-age=31536000, immutable -/webpack-runtime-acaa8994f1f704475e21.js - Cache-Control: public, max-age=31536000, immutable -/styles.1025963f4f2ec7abbad4.css - Cache-Control: public, max-age=31536000, immutable -/styles-565f081c8374bbda155f.js - Cache-Control: public, max-age=31536000, immutable -/app-f33c13590352da20930f.js - Cache-Control: public, max-age=31536000, immutable -/static/* - Cache-Control: public, max-age=31536000, immutable -/sw.js - Cache-Control: no-cache -/offline-plugin-app-shell-fallback/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/hi-folks/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/my-second-post/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/hello-world/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/404/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/404.html - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -" -`; - exports[`build-headers-program with manifest['pages-manifest'] 1`] = ` "## Created with gatsby-plugin-netlify @@ -120,47 +32,6 @@ exports[`build-headers-program with manifest['pages-manifest'] 1`] = ` Cache-Control: public, max-age=31536000, immutable /sw.js Cache-Control: no-cache -/offline-plugin-app-shell-fallback/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script -/hi-folks/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script -/my-second-post/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script -/hello-world/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script -/404/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script -/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script -/404.html - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script " `; @@ -197,61 +68,6 @@ exports[`build-headers-program with security headers 1`] = ` Cache-Control: public, max-age=31536000, immutable /sw.js Cache-Control: no-cache -/offline-plugin-app-shell-fallback/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/hi-folks/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/my-second-post/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/hello-world/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/404/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/404.html - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin " `; @@ -263,60 +79,5 @@ exports[`build-headers-program without caching headers 1`] = ` X-XSS-Protection: 1; mode=block X-Content-Type-Options: nosniff Referrer-Policy: same-origin -/offline-plugin-app-shell-fallback/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/hi-folks/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/my-second-post/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/hello-world/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/404/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/ - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -/404.html - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin " `; diff --git a/src/__tests__/build-headers-program.ts b/src/__tests__/build-headers-program.ts index 5b680bcb..19901ad9 100644 --- a/src/__tests__/build-headers-program.ts +++ b/src/__tests__/build-headers-program.ts @@ -24,25 +24,6 @@ describe(`build-headers-program`, () => { existsSync.mockReturnValue(true) }) - it(`with caching headers`, async () => { - const pluginData = await createPluginData() - - const pluginOptions = { - ...DEFAULT_OPTIONS, - mergeCachingHeaders: true, - } - - await buildHeadersProgram(pluginData, pluginOptions, reporter) - - expect(reporter.panic).not.toHaveBeenCalled() - const output = await readFile(pluginData.publicFolder(`_headers`), `utf8`) - expect(output).toMatchSnapshot() - expect(output).toMatch(/app-data\.json/) - expect(output).toMatch(/page-data\.json/) - // we should only check page-data & app-data once which leads to 2 times - expect(existsSync).toBeCalledTimes(2) - }) - it(`with manifest['pages-manifest']`, async () => { const pluginData = await createPluginData() @@ -62,8 +43,6 @@ describe(`build-headers-program`, () => { const output = await readFile(pluginData.publicFolder(`_headers`), `utf8`) expect(output).toMatchSnapshot() expect(output).toMatch(/\/pages-manifest-ab11f09e0ca7ecd3b43e\.js/g) - expect(output).not.toMatch(/\/app-data\.json/g) - expect(output).not.toMatch(/\/page-data\.json/g) expect(output).not.toMatch(/\/undefined/g) }) diff --git a/src/build-headers-program.ts b/src/build-headers-program.ts index 0cb2603d..84f1ed6c 100644 --- a/src/build-headers-program.ts +++ b/src/build-headers-program.ts @@ -1,19 +1,14 @@ /* eslint-disable max-lines */ -import { parse, posix } from 'path' - import { writeFile, existsSync } from 'fs-extra' -import kebabHash from 'kebab-hash' import mergeWith from 'lodash.mergewith' import { HEADER_COMMENT, IMMUTABLE_CACHING_HEADER, - COMMON_BUNDLES, SECURITY_HEADERS, CACHING_HEADERS, LINK_REGEX, NETLIFY_HEADERS_FILENAME, - PAGE_DATA_DIR, } from './constants' import { isBoolean, flow } from './util' @@ -41,90 +36,8 @@ const validHeaders = (headers: any, reporter: any) => { ) } -const linkTemplate = (assetPath: any, type = `script`) => - `Link: <${assetPath}>; rel=preload; as=${type}${type === `fetch` ? `; crossorigin` : ``}` - -const pathChunkName = (path: any) => { - const name = path === `/` ? `index` : kebabHash(path) - return `path---${name}` -} - -const getPageDataPath = (path: any) => { - const fixedPagePath = path === `/` ? `index` : path - return posix.join(`page-data`, fixedPagePath, `page-data.json`) -} - -const getScriptPath = (file: any, manifest: any) => { - const chunk = manifest[file] - - if (!chunk) { - return [] - } - - // convert to array if it's not already - const chunks = Array.isArray(chunk) ? chunk : [chunk] - - return chunks.filter((script) => { - const parsed = parse(script) - // handle only .js, .css content is inlined already - // and doesn't need to be pushed - return parsed.ext === `.js` - }) -} - -const getLinkHeaders = (filesByType: any, pathPrefix: any) => - Object.entries(filesByType).flatMap(([type, files]: [string, Array]) => - files.map((file) => linkTemplate(`${pathPrefix}/${file}`, type)), - ) - const headersPath = (pathPrefix: any, path: any) => `${pathPrefix}${path}` -const preloadHeadersByPage = ({ - pages, - manifest, - pathPrefix, - publicFolder -}: any) => { - const linksByPage = {} - - const appDataPath = publicFolder(PAGE_DATA_DIR, `app-data.json`) - const hasAppData = existsSync(appDataPath) - - let hasPageData = false - if (pages.size !== 0) { - // test if 1 page-data file exists, if it does we know we're on a gatsby version that supports page-data - const pageDataPath = publicFolder(getPageDataPath(pages.get(pages.keys().next().value).path)) - hasPageData = existsSync(pageDataPath) - } - - pages.forEach((page: any) => { - const scripts = COMMON_BUNDLES.flatMap((file) => getScriptPath(file, manifest)) - scripts.push( - ...getScriptPath(pathChunkName(page.path), manifest), - ...getScriptPath(page.componentChunkName, manifest), - ) - - const json = [] - if (hasAppData) { - json.push(posix.join(PAGE_DATA_DIR, `app-data.json`)) - } - - if (hasPageData) { - json.push(getPageDataPath(page.path)) - } - - const filesByResourceType = { - script: scripts.filter(Boolean), - fetch: json, - } - - const pathKey = headersPath(pathPrefix, page.path) - linksByPage[pathKey] = getLinkHeaders(filesByResourceType, pathPrefix) - }) - - return linksByPage -} - const unionMerge = (objValue: any, srcValue: any) => { if (Array.isArray(objValue)) { return [...new Set([...objValue, ...srcValue])] diff --git a/src/gatsby-node.ts b/src/gatsby-node.ts index 37cebf35..7e8d7017 100644 --- a/src/gatsby-node.ts +++ b/src/gatsby-node.ts @@ -25,7 +25,7 @@ export const pluginOptionsSchema = ({ Joi }: any) => { headers: headersSchema, allPageHeaders: Joi.array().items(Joi.string()).description(`Add more headers to all the pages`), mergeSecurityHeaders: Joi.boolean().description(`When set to false, turns off the default security headers`), - mergeLinkHeaders: Joi.boolean().description(`When set to false, turns off the default gatsby js headers`), + mergeLinkHeaders: Joi.boolean().description(`Deprecated`), mergeCachingHeaders: Joi.boolean().description(`When set to false, turns off the default caching headers`), transformHeaders: Joi.function() .maxArity(2) From c23bab36b18ebf65265f8b3fc5b532d496da3afc Mon Sep 17 00:00:00 2001 From: Sarah Etter Date: Fri, 20 May 2022 10:46:26 -0400 Subject: [PATCH 3/5] feat: remove irrelevant readme info --- README.md | 23 ----------------------- 1 file changed, 23 deletions(-) diff --git a/README.md b/README.md index 559bf91d..15ae8f52 100644 --- a/README.md +++ b/README.md @@ -38,7 +38,6 @@ plugins: [ headers: {}, // option to add more headers. `Link` headers are transformed by the below criteria allPageHeaders: [], // option to add headers for all pages. `Link` headers are transformed by the below criteria mergeSecurityHeaders: true, // boolean to turn off the default security headers - mergeLinkHeaders: true, // boolean to turn off the default gatsby js headers mergeCachingHeaders: true, // boolean to turn off the default caching headers transformHeaders: (headers, path) => headers, // optional transform for manipulating headers under each path (e.g.sorting), etc. generateMatchPathRewrites: true, // boolean to turn off automatic creation of redirect rules for client only paths @@ -76,28 +75,6 @@ file hash), the plugin will transform any base file names to the hashed variants ensure the path is valid relative to the output `public` folder. You should be able to reference assets imported through javascript in the `static` folder. -When `mergeLinkHeaders` is true, as it is by default, this plugin will generate HTTP preload headers for the asset paths -for all of your application's pages. - -An example: - -``` -/my-page - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=script - Link: ; rel=preload; as=fetch; crossorigin - Link: ; rel=preload; as=fetch; crossorigin -``` - -Therefore, expect the size of the `_headers` file to grow linearly with the number of pages in your application. - -> **Note:** Gatsby also adds these preload tags in your pages' index.html files, whether or not you are using this -> plugin. - Do not specify the public path in the config, as the plugin will provide it for you. The Netlify `_headers` file does not inherit headers, and it will replace any matching headers it finds in more specific From f4c098f814286372de9bf9913416e3d924072f18 Mon Sep 17 00:00:00 2001 From: Sarah Etter Date: Fri, 20 May 2022 11:22:45 -0400 Subject: [PATCH 4/5] feat: deprecate option properly --- src/gatsby-node.ts | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gatsby-node.ts b/src/gatsby-node.ts index 7e8d7017..25faf494 100644 --- a/src/gatsby-node.ts +++ b/src/gatsby-node.ts @@ -25,7 +25,9 @@ export const pluginOptionsSchema = ({ Joi }: any) => { headers: headersSchema, allPageHeaders: Joi.array().items(Joi.string()).description(`Add more headers to all the pages`), mergeSecurityHeaders: Joi.boolean().description(`When set to false, turns off the default security headers`), - mergeLinkHeaders: Joi.boolean().description(`Deprecated`), + mergeLinkHeaders: Joi.boolean().description(`When set to false, turns off the default gatsby js headers`).forbidden().messages({ + "any.unknown": `"mergeLinkHeaders" is no longer supported. Gatsby no longer adds preload headers as they negatively affect load performance` + }), mergeCachingHeaders: Joi.boolean().description(`When set to false, turns off the default caching headers`), transformHeaders: Joi.function() .maxArity(2) From 37e4b64d5bbccbce5423af740995981ca52af3fd Mon Sep 17 00:00:00 2001 From: Sarah Etter Date: Fri, 20 May 2022 15:08:39 -0400 Subject: [PATCH 5/5] remove unused constants --- src/constants.ts | 4 ---- 1 file changed, 4 deletions(-) diff --git a/src/constants.ts b/src/constants.ts index db0f017b..e5c06daf 100644 --- a/src/constants.ts +++ b/src/constants.ts @@ -35,10 +35,6 @@ export const CACHING_HEADERS = { export const LINK_REGEX = /^(Link: <\/)(.+)(>;.+)/ export const ROOT_WILDCARD = `/*` -export const COMMON_BUNDLES = [`commons`, `app`] - export const HEADER_COMMENT = `## Created with gatsby-plugin-netlify` -export const PAGE_DATA_DIR = `page-data/` - export const PAGE_COUNT_WARN = 1000