From d17abf463acabf9e1e43b91200f18efd34e91f62 Mon Sep 17 00:00:00 2001 From: JJ Kasper Date: Wed, 21 Feb 2024 20:53:16 -0800 Subject: [PATCH] Update experimental bundle flag (#11187) Makes bailing from grouping logic more explicit --- .changeset/kind-pears-attend.md | 5 +++ packages/next/src/utils.ts | 65 +++++++++++++++++---------------- 2 files changed, 39 insertions(+), 31 deletions(-) create mode 100644 .changeset/kind-pears-attend.md diff --git a/.changeset/kind-pears-attend.md b/.changeset/kind-pears-attend.md new file mode 100644 index 000000000..f8ed93676 --- /dev/null +++ b/.changeset/kind-pears-attend.md @@ -0,0 +1,5 @@ +--- +"@vercel/next": patch +--- + +Update experimental bundle flag diff --git a/packages/next/src/utils.ts b/packages/next/src/utils.ts index 5eb9a34cf..f602c43da 100644 --- a/packages/next/src/utils.ts +++ b/packages/next/src/utils.ts @@ -1570,43 +1570,46 @@ export async function getPageLambdaGroups({ opts = { ...vercelConfigOpts, ...opts }; } - let matchingGroup = groups.find(group => { - const matches = - !experimentalAllowBundling && - group.maxDuration === opts.maxDuration && - group.memory === opts.memory && - group.isPrerenders === isPrerenderRoute && - group.isExperimentalPPR === isExperimentalPPR; + let matchingGroup = experimentalAllowBundling + ? undefined + : groups.find(group => { + const matches = + group.maxDuration === opts.maxDuration && + group.memory === opts.memory && + group.isPrerenders === isPrerenderRoute && + group.isExperimentalPPR === isExperimentalPPR; - if (matches) { - let newTracedFilesSize = group.pseudoLayerBytes; - let newTracedFilesUncompressedSize = group.pseudoLayerUncompressedBytes; + if (matches) { + let newTracedFilesSize = group.pseudoLayerBytes; + let newTracedFilesUncompressedSize = + group.pseudoLayerUncompressedBytes; - for (const newPage of newPages) { - Object.keys(pageTraces[newPage] || {}).map(file => { - if (!group.pseudoLayer[file]) { - const item = tracedPseudoLayer[file] as PseudoFile; + for (const newPage of newPages) { + Object.keys(pageTraces[newPage] || {}).map(file => { + if (!group.pseudoLayer[file]) { + const item = tracedPseudoLayer[file] as PseudoFile; - newTracedFilesSize += item.compBuffer?.byteLength || 0; - newTracedFilesUncompressedSize += item.uncompressedSize || 0; + newTracedFilesSize += item.compBuffer?.byteLength || 0; + newTracedFilesUncompressedSize += item.uncompressedSize || 0; + } + }); + newTracedFilesSize += + compressedPages[newPage].compBuffer.byteLength; + newTracedFilesUncompressedSize += + compressedPages[newPage].uncompressedSize; } - }); - newTracedFilesSize += compressedPages[newPage].compBuffer.byteLength; - newTracedFilesUncompressedSize += - compressedPages[newPage].uncompressedSize; - } - const underUncompressedLimit = - newTracedFilesUncompressedSize < - MAX_UNCOMPRESSED_LAMBDA_SIZE - LAMBDA_RESERVED_UNCOMPRESSED_SIZE; - const underCompressedLimit = - newTracedFilesSize < - lambdaCompressedByteLimit - LAMBDA_RESERVED_COMPRESSED_SIZE; + const underUncompressedLimit = + newTracedFilesUncompressedSize < + MAX_UNCOMPRESSED_LAMBDA_SIZE - LAMBDA_RESERVED_UNCOMPRESSED_SIZE; + const underCompressedLimit = + newTracedFilesSize < + lambdaCompressedByteLimit - LAMBDA_RESERVED_COMPRESSED_SIZE; - return underUncompressedLimit && underCompressedLimit; - } - return false; - }); + return underUncompressedLimit && underCompressedLimit; + } + return false; + }); if (matchingGroup) { matchingGroup.pages.push(page);