forked from vercel/next.js
-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[pull] canary from vercel:canary #2040
Open
pull
wants to merge
6,715
commits into
NOUIY:canary
Choose a base branch
from
vercel:canary
base: canary
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
+1,420,646
−934,961
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This was referenced Apr 27, 2024
…4893) Previously, the segment path handling was returning before the `x-nextjs-cache` headers were sent, this moves it below that to ensure that the correct cache headers are added.
…kio-console support (#74675) I'm trying to use this to debug a hang in turbo-tasks. There's some overlap with https://turbo-trace-viewer.vercel.app/, but this is more realtime, which is useful for finding hanging futures. There's some similar functionality in turbopack-cli: https://github.com/vercel/next.js/blob/c51b53680de4b1c00cd66bb00b7ff6b878646583/turbopack/crates/turbopack-cli/src/dev/mod.rs#L349 Enable this by building with `--features next-swc-napi/tokio-console`.
### What? fix an earlier PR by completely removing children count
### What? improves the heuristic for task optimization. It minimizes the produce of `(uppers - 1) * follower` and chooses a bigger aggregation number based on that. This allows for many uppers when there are no followers. That is often the case when a task is shared between multiple pages. Or for tasks are are near the leafs of the graph.
…#[must_use]` annotation (#74906) This is creating a ton of logspam for me when running tests. I can get dozens of these panics in a row. It appears that there are functions that can return an `anyhow::Error` between collecting issues and emitting them. In those cases, it's not practical to ensure the issues are always emitted. Instead, just settle for a much weaker compile-time check with `#[must_use]` that at least ensures something happens with `IssueCollector`.
…74894) This: - Allows for synchronous lookup of a module’s availability information without async resolving Vcs - Creates a single structure that combines the entire availability information hierarchy into one. While not strictly necessary, without Vc caching, the hierarchy of structs only provided overhead without advantage
### What? fix bug when restoring from persistent caching
…74919) Follow-up fix for #74876. Not all app dir entries have an `absolutePagePath` in their module build info, e.g. the global not found page does not have one. But we still need to include the client reference manifest in the trace for those entries. [x-ref](https://vercel.com/vtest314-next-e2e-tests/vtest314-e2e-tests/EngjzrvvzQ4GQra6tnGCy98PR6yd/logs?startDate=1736936280&endDate=1736938140&selectedLogId=fl27k-1736937944551-421fa6816369)
### Updates 1. **Hide "Was it helpful" component for errors without codes** Errors without specific codes (e.g., from third-party libraries) will no longer display the "Was it helpful" component. 2. **Improved footer styling** Enhanced layout for long footer messages to improve readability and consistency. | **Before** | **After** | |----------------------------------------------------------------------------|----------------------------------------------------------------------------| | ![Before](https://github.com/user-attachments/assets/3f72ba33-8eee-4815-ac33-0f91c42b2747) | ![After](https://github.com/user-attachments/assets/e493c6b4-3d2e-46e0-815d-e694bbe6b333) |
Everything should be in place now to have the module petgraph be 100% accurate even if its split across multiple graphs (i.e. in dev or because of the actions). Nothing uses this yet, in the future we should measure if there's a perf impact of running next/dynamic, client references, server actions on the whole graph as opposed to only on the change layout segments (which is what currently happens). - [x] clean up/ensure that there are always all needed `entries` in the graph struct
…4933) The prerender indicator was controlled by https://nextjs.org/docs/app/api-reference/config/next-config-js/devIndicators#appisrstatus-static-indicator. With the new dev overlay, the route type should work regardless of `NextConfig#devIndicators#appIsrStatus`, so this PR ensures the status wiring is enabled even when `appIsrStatus` is disabled. Note: Will follow up with a test soon. ![CleanShot 2025-01-15 at [email protected]](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/rKSEEwxbNzdFs9t0yyxN/d01aff4d-e787-4e46-9c8c-fb4e5cab9767.png)
### What? tasks with negative collectible count need to be root tasks so they eliminate the count correctly. Otherwise the child we want to override the collectibles from could be attached multiple times in the graph duplicating the collectible.
Extend https://nextjs.org/telemetry to cover usages of dynamic IO Closes NDX-673
…ing from task functions (#74714) <!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # -->
#74844) If we have a `ResolvedVc`, we don't actually need to go through `Vc`'s much-less-efficient codepath (which reads cells, even if the `Vc` is resolved) in order to perform a sidecast. This has the benefit of removing the chance of sidecast returning an error while reading and makes the function synchronous. This does not update callsites, that can come later. We can do similar optimizations with `try_downcast` in a future PR. I don't think this is an actual hot-path in our code, but it unblocks some synchronous graph traversal stuff that @wbinnssmith is working on.
…hould be (#74931) ### What? make sure persistent caching is really disabled when it should be by deleting the temp directory add CI to env
Previously when there was an optional catch-all present where it wasn't provided it could not get read directly from the query parameters (as it was done in PPR resumes) and instead it was inferring the default parameters. <!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # -->
) ### Why? 1. When clicking the indicator, since closing the overlay was `mousedown`, it had a blink of the overlay to be closed and then open again. 2. When the overlay is opened, clicking the indicator elements closes the overlay. ### How? 1. Use `mouseup` and `touchend` event listeners to prevent hiding the overlay when clicking outside the overlay. 2. Added `excludes` array of attributes to exclude from click outside handler. ### Before https://github.com/user-attachments/assets/af989294-d14e-4b3b-8638-bde75a067507 ### After https://github.com/user-attachments/assets/2cd4b974-a4b6-4e9e-a9dd-4964b9747055 Closes https://linear.app/vercel/issue/NDX-701/dont-close-overlay-when-on-click-indicator
### What? use type alias to avoid repeating
Since Tailwind v4 was released, update the create-next-app templates. This PR made change of following process: 1. Remove tailwind config. 2. Update the `globals.css` file. 3. Add `--geist-` font CSS variable to the `globals.css` file. 4. Change `postcss` dependency to `@tailwindcss/postcss`. 5. Update postcss config. 6. Update tests. **Note:** Removed the types for postcss added at #63380 since it requires additional [postcss-load-config](https://www.npmjs.com/package/postcss-load-config) dependency.
## Why? Adding more labels so we can better triage and categorize issues.
You can optionally enable it, if desired, but this gives you one less config file by default.
When using `eslint-config-next` on eslint 9.x with a flat config (as per next.js [docs](https://nextjs.org/docs/app/api-reference/config/eslint#specifying-a-root-directory-within-a-monorepo)) and with the `--cache` flag - eslint would fail: ``` > ./node_modules/.bin/eslint --cache Oops! Something went wrong! :( ESLint: 9.17.0 TypeError: Cannot serialize key "parse" in parser: Function values are not supported. at languageOptionsToJSON (.../next-eslint-issue/node_modules/eslint/lib/config/config.js:113:23) at languageOptionsToJSON (.../next-eslint-issue/node_modules/eslint/lib/config/config.js:107:35) at Config.toJSON (.../next-eslint-issue/node_modules/eslint/lib/config/config.js:260:30) at stringify (.../next-eslint-issue/node_modules/json-stable-stringify-without-jsonify/index.js:25:25) at module.exports (.../next-eslint-issue/node_modules/json-stable-stringify-without-jsonify/index.js:68:7) at hashOfConfigFor (.../next-eslint-issue/node_modules/eslint/lib/cli-engine/lint-result-cache.js:50:75) at LintResultCache.getCachedLintResults (.../next-eslint-issue/node_modules/eslint/lib/cli-engine/lint-result-cache.js:116:30) at .../next-eslint-issue/node_modules/eslint/lib/eslint/eslint.js:783:41 at async Promise.all (index 0) at async ESLint.lintFiles (.../next-eslint-issue/node_modules/eslint/lib/eslint/eslint.js:759:25) ``` (see a minimal repro here: https://github.com/CvX/next-eslint-issue) This happens because eslint is unable to serialize the `parser` object in the config. Adding metadata fixes that. The issue was originally reported over at eslint repo in: eslint/eslint#19322 <!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # -->
…5360) ### Related issues 1. Fixes #69272 2. Fixes #69270 3. Fixes #67730 4. Relates to #55462 (comment) 5. Resolves #67729 6. Relates to #66752 ### What? Quite often we are getting `TypeError: null is not an object (evaluating 't.parallelRoutes.get')` error in our error tracker. There is no clear pattern; but it's daily count grows as DAU amount grows. Error call trace is: ``` router-reducer/fill-lazy-items-till-leaf-with-head.ts at line 153:59 router-reducer/create-initial-router-state.ts at line 66:34 ``` ### Why? In the code there is comment `location and initialParallelRoutes are not initialized in the SSR render they are set to an empty map and window.location, respectively during hydration`. However, it seems that it's not always set to an empty map on the client side. ### How? To ensure it's always set, I have replaced wrong (from ts pov) `null!` with `new Map()` and redundant logic of passing `initialParallelRoutes` into `cache.parallelRoutes`
## What? Mirrors the handling for webpack by using `NextBuildContext` for all needed information. This will allow for moving the turbopack build to a child process for memory cleanup once the compiler finishes. This PR is intended to only move the code, will create a PR stacked on this one to add the child process handling. <!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # -->
## What? Runs Turbopack in a separate child process so that e.g. memory usage can be cleaned up before continuing with the rest of the Next.js build. This will lower the peak memory consumption given that before this change the Turbopack cache was kept around until the end of the build. <!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # -->
## What? Matches other places where codegen happens. In benchmarks this is a roughly 100 microseconds win per file processed through minifying. <!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # -->
## What? Temporary CI workflows for #74554. <!-- Thanks for opening a PR! Your contribution is much appreciated. To make sure your PR is handled as smoothly as possible we request that you follow the checklist sections below. Choose the right checklist for the change(s) that you're making: ## For Contributors ### Improving Documentation - Run `pnpm prettier-fix` to fix formatting issues before opening the PR. - Read the Docs Contribution Guide to ensure your contribution follows the docs guidelines: https://nextjs.org/docs/community/contribution-guide ### Adding or Updating Examples - The "examples guidelines" are followed from our contributing doc https://github.com/vercel/next.js/blob/canary/contributing/examples/adding-examples.md - Make sure the linting passes by running `pnpm build && pnpm lint`. See https://github.com/vercel/next.js/blob/canary/contributing/repository/linting.md ### Fixing a bug - Related issues linked using `fixes #number` - Tests added. See: https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ### Adding a feature - Implements an existing feature request or RFC. Make sure the feature request has been accepted for implementation before opening a PR. (A discussion must be opened, see https://github.com/vercel/next.js/discussions/new?category=ideas) - Related issues/discussions are linked using `fixes #number` - e2e tests added (https://github.com/vercel/next.js/blob/canary/contributing/core/testing.md#writing-tests-for-nextjs) - Documentation added - Telemetry added. In case of a feature if it's used or not. - Errors have a helpful link attached, see https://github.com/vercel/next.js/blob/canary/contributing.md ## For Maintainers - Minimal description (aim for explaining to someone not on the team to understand the PR) - When linking to a Slack thread, you might want to share details of the conclusion - Link both the Linear (Fixes NEXT-xxx) and the GitHub issues - Add review comments if necessary to explain to the reviewer the logic behind a change ### What? ### Why? ### How? Closes NEXT- Fixes # -->
### What? The AggregationQueue has multiple queues that need to be checked for emptyness.
If you are overriding the server actions encryption key, you need to also ensure it uses AES-GCM encrpytion.
We noticed a routing regression, so reverting while we investigate. Reverts #75377
## Why? To better organize and triage issues. ## How? - Remove `Link (next/link)`, update `Navigation` to `Linking and Navigating` - Add `Redirects`
…75435) ### What? see code comment
For trait methods, we often have underscore-prefixed arguments that are unused in method implementations, but must exist on the method signature because the trait requires it. For example, look at `code_generation`: https://github.com/search?q=repo%3Avercel%2Fnext.js%20fn%20code_generation&type=code We can filter those arguments as soon as we resolve the real method, and avoid storing them as part of the task's cache key. This should mean less data stored per task, and better cache hit rates (so less tasks overall). This appears to give a roughly 5% memory win: ![Screenshot 2025-01-28 at 11.54.37 AM.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/HAZVitxRNnZz8QMiPn4a/3459c25e-c73b-4d56-92cc-f44479b2d016.png) (Spreadsheet: https://docs.google.com/spreadsheets/d/1fz9Q-tDE6LebS9p4Mci8vZG7jkBSajiMYF1WbZEPnts/edit?usp=sharing) Full data: <details> Tested with next-site in front. Command run: ``` rm -rf .next && TURBOPACK=1 TURBOPACK_BUILD=1 TURBO_ENGINE_READ_ONLY=1 /bin/time -v pnpm next build --experimental-build-mode=compile ``` # Before, run 1 Compiled in: 19.3s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 121.88 System time (seconds): 16.74 Percent of CPU this job got: 501% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:27.61 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5607868 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 58 Minor (reclaiming a frame) page faults: 1816374 Voluntary context switches: 1280636 Involuntary context switches: 361414 Swaps: 0 File system inputs: 102088 File system outputs: 738000 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # Before, run 2 Compiled in: 19.3s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 124.34 System time (seconds): 16.97 Percent of CPU this job got: 516% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:27.36 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5455968 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 8 Minor (reclaiming a frame) page faults: 2014509 Voluntary context switches: 1267794 Involuntary context switches: 358175 Swaps: 0 File system inputs: 6496 File system outputs: 737296 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # Before, run 3 Compiled in: 18.4s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 117.81 System time (seconds): 15.86 Percent of CPU this job got: 505% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.46 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5655912 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 5 Minor (reclaiming a frame) page faults: 1868540 Voluntary context switches: 1271444 Involuntary context switches: 337236 Swaps: 0 File system inputs: 7784 File system outputs: 737480 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: ``` # Before, run 4 Compiled in: 18.2s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 116.98 System time (seconds): 15.09 Percent of CPU this job got: 504% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.15 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5962764 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 0 Minor (reclaiming a frame) page faults: 1861147 Voluntary context switches: 1253759 Involuntary context switches: 333116 Swaps: 0 File system inputs: 0 File system outputs: 737304 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # Before, run 5 Compiled in: 17.9s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 119.02 System time (seconds): 14.84 Percent of CPU this job got: 516% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:25.92 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5745780 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 0 Minor (reclaiming a frame) page faults: 1542655 Voluntary context switches: 1238600 Involuntary context switches: 357049 Swaps: 0 File system inputs: 0 File system outputs: 737000 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # After, run 1 Compiled in: 19.0s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 121.85 System time (seconds): 16.69 Percent of CPU this job got: 508% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:27.22 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5402708 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 41 Minor (reclaiming a frame) page faults: 1822829 Voluntary context switches: 1221091 Involuntary context switches: 361604 Swaps: 0 File system inputs: 110200 File system outputs: 737048 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # After, run 2 Compiled in: 18.5s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 119.46 System time (seconds): 15.32 Percent of CPU this job got: 506% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.60 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5413980 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 1 Minor (reclaiming a frame) page faults: 1695775 Voluntary context switches: 1269774 Involuntary context switches: 328448 Swaps: 0 File system inputs: 800 File system outputs: 736952 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # After, run 3 Compiled in: 18.5s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 118.15 System time (seconds): 15.12 Percent of CPU this job got: 503% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.48 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5312528 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 0 Minor (reclaiming a frame) page faults: 1893778 Voluntary context switches: 1277325 Involuntary context switches: 324591 Swaps: 0 File system inputs: 128 File system outputs: 737304 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # After, run 4 Compiled in: 18.2s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 115.60 System time (seconds): 15.30 Percent of CPU this job got: 499% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:26.22 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5240892 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 1 Minor (reclaiming a frame) page faults: 1514837 Voluntary context switches: 1296049 Involuntary context switches: 312076 Swaps: 0 File system inputs: 32 File system outputs: 737664 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` # After, run 5 Compiled in: 19.4s ``` Command being timed: "pnpm next build --experimental-build-mode=compile" User time (seconds): 125.91 System time (seconds): 15.63 Percent of CPU this job got: 514% Elapsed (wall clock) time (h:mm:ss or m:ss): 0:27.50 Average shared text size (kbytes): 0 Average unshared data size (kbytes): 0 Average stack size (kbytes): 0 Average total size (kbytes): 0 Maximum resident set size (kbytes): 5346672 Average resident set size (kbytes): 0 Major (requiring I/O) page faults: 1 Minor (reclaiming a frame) page faults: 1839175 Voluntary context switches: 1280293 Involuntary context switches: 358863 Swaps: 0 File system inputs: 32 File system outputs: 737720 Socket messages sent: 0 Socket messages received: 0 Signals delivered: 0 Page size (bytes): 4096 Exit status: 0 ``` </details>
### What? Update `swc_core` to the next version. ChangeLog: swc-project/swc@[email protected][email protected] ### Why? To apply an enormous amount of performance patches.
## Why? Rename `Output (export/standalone)` to `Output`. This keeps it separate from labels such as `Image (next/image)` (`export/standalone` is not an import).
## Why? Not sure how I forgot `Route Handlers`.
Looking at the test file change should convince you that this fixes the formatting issue. https://linear.app/vercel/issue/NDX-671/error-from-client-only-package-is-malformed
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by pull[bot]
Can you help keep this open source service alive? 💖 Please sponsor : )