Development doesn't work on Windows anymore
Steps to Reproduce
yarnyarn dev- open the given url
Expected Result
Working docs version
Actual Result
yarn run v1.22.21
$ concurrently "yarn sidecar" "next dev"
$ yarn spotlight-sidecar
$ C:\dev\sentry-docs\node_modules\.bin\spotlight-sidecar
[0] 🔎 [Spotlight] Sidecar listening on 8969
[0] 🔎 [Spotlight] You can open: http://localhost:8969 to see the Spotlight overlay directly
[1] ▲ Next.js 14.0.2
[1] - Local: http://localhost:3000
[1] - Environments: .env.development
[1]
[1] automatically enabled Fast Refresh for 1 custom loader
[1] ✓ Ready in 2.5s
[1] ○ Compiling /[[...path]] ...
[1] ⚠ ./src/styles/screen.scss.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[12].oneOf[13].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[12].oneOf[13].use[5]!./src/styles/screen.scss
[1] Warning
[1]
[1] (3326:3) autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.
[1]
[1] Import trace for requested module:
[1] ./src/styles/screen.scss.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[12].oneOf[13].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[12].oneOf[13].use[5]!./src/styles/screen.scss
[1] ./src/styles/screen.scss
[1] Failed to set fetch cache https://raw.githubusercontent.com/getsentry/sentry-api-schema/2c1056120fcde70097de32f2c5f0b474f609b770/openapi-derefed.json Error: fetch for over 2MB of data can not be cached
[1] at IncrementalCache.set (C:\dev\sentry-docs\node_modules\next\dist\server\lib\incremental-cache\index.js:381:23)
[1] at eval (webpack-internal:///(rsc)/./node_modules/next/dist/server/lib/patch-fetch.js:390:74)
[1] at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
[1] <w> [webpack.cache.PackFileCacheStrategy] Skipped not serializable cache item 'Compilation/modules|C:\dev\sentry-docs\node_modules\next\dist\build\webpack\loaders\css-loader\src\index.js??ruleSet[1].rules[12].oneOf[13].use[2]!C:\dev\sentry-docs\node_modules\next\dist\build\webpack\loaders\postcss-loader\src\index.js??ruleSet[1].rules[12].oneOf[13].use[3]!C:\dev\sentry-docs\node_modules\next\dist\build\webpack\loaders\resolve-url-loader\index.js??ruleSet[1].rules[12].oneOf[13].use[4]!C:\dev\sentry-docs\node_modules\next\dist\compiled\sass-loader\cjs.js??ruleSet[1].rules[12].oneOf[13].use[5]!C:\dev\sentry-docs\src\styles\screen.scss': No serializer registered for Warning
[1] <w> while serializing webpack/lib/cache/PackFileCacheStrategy.PackContentItems -> webpack/lib/NormalModule -> Array { 1 items } -> webpack/lib/ModuleWarning -> Warning
[1] Failed to set fetch cache https://raw.githubusercontent.com/getsentry/sentry-api-schema/2c1056120fcde70097de32f2c5f0b474f609b770/openapi-derefed.json Error: fetch for over 2MB of data can not be cached
[1] at IncrementalCache.set (C:\dev\sentry-docs\node_modules\next\dist\server\lib\incremental-cache\index.js:381:23)
[1] at eval (webpack-internal:///(rsc)/./node_modules/next/dist/server/lib/patch-fetch.js:390:74)
[1] at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] digest: "4026171732"
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] digest: "4026171732"
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⚠ ./src/styles/screen.scss.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[12].oneOf[13].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[12].oneOf[13].use[5]!./src/styles/screen.scss
[1] Warning
[1]
[1] (3326:3) autoprefixer: Replace color-adjust to print-color-adjust. The color-adjust shorthand is currently deprecated.
[1]
[1] Import trace for requested module:
[1] ./src/styles/screen.scss.webpack[javascript/auto]!=!./node_modules/next/dist/build/webpack/loaders/css-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[2]!./node_modules/next/dist/build/webpack/loaders/postcss-loader/src/index.js??ruleSet[1].rules[12].oneOf[13].use[3]!./node_modules/next/dist/build/webpack/loaders/resolve-url-loader/index.js??ruleSet[1].rules[12].oneOf[13].use[4]!./node_modules/next/dist/compiled/sass-loader/cjs.js??ruleSet[1].rules[12].oneOf[13].use[5]!./src/styles/screen.scss
[1] ./src/styles/screen.scss
[1] Failed to set fetch cache https://raw.githubusercontent.com/getsentry/sentry-api-schema/2c1056120fcde70097de32f2c5f0b474f609b770/openapi-derefed.json Error: fetch for over 2MB of data can not be cached
[1] at IncrementalCache.set (C:\dev\sentry-docs\node_modules\next\dist\server\lib\incremental-cache\index.js:381:23)
[1] at eval (webpack-internal:///(rsc)/./node_modules/next/dist/server/lib/patch-fetch.js:390:74)
[1] at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
[1] ⚠ Fast Refresh had to perform a full reload due to a runtime error.
[1] ⚠ Fast Refresh had to perform a full reload due to a runtime error.
[1] ✓ Compiled /_error in 2000ms (4596 modules)
[1] ⚠ You have added a custom /_error page without a custom /404 page. This prevents the 404 page from being auto statically optimized.
[1] See here for info: https://nextjs.org/docs/messages/custom-error-no-custom-404
[1] Failed to set fetch cache https://raw.githubusercontent.com/getsentry/sentry-api-schema/2c1056120fcde70097de32f2c5f0b474f609b770/openapi-derefed.json Error: fetch for over 2MB of data can not be cached
[1] at IncrementalCache.set (C:\dev\sentry-docs\node_modules\next\dist\server\lib\incremental-cache\index.js:381:23)
[1] at eval (webpack-internal:///(rsc)/./node_modules/next/dist/server/lib/patch-fetch.js:390:74)
[1] at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] digest: "4026171732"
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] ⨯ src\docTree.ts (84:16) @ eval
[1] ⨯ Error: missing parent and grandparent: api
[1] at eval (./src/docTree.ts:81:27)
[1] at Array.forEach (<anonymous>)
[1] at frontmatterToTree (./src/docTree.ts:57:16)
[1] at eval (./src/docTree.ts:29:12)
[1] digest: "4026171732"
[1] 82 | const grandparent = slugMap[grandparentSlug];
[1] 83 | if (!grandparent) {
[1] > 84 | throw new Error('missing parent and grandparent: ' + parentSlug);
[1] | ^
[1] 85 | }
[1] 86 | parent = {
[1] 87 | path: parentSlug,
[1] Failed to set fetch cache https://raw.githubusercontent.com/getsentry/sentry-api-schema/2c1056120fcde70097de32f2c5f0b474f609b770/openapi-derefed.json Error: fetch for over 2MB of data can not be cached
[1] at IncrementalCache.set (C:\dev\sentry-docs\node_modules\next\dist\server\lib\incremental-cache\index.js:381:23)
[1] at eval (webpack-internal:///(rsc)/./node_modules/next/dist/server/lib/patch-fetch.js:390:74)
[1] at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
[1] Failed to set fetch cache https://raw.githubusercontent.com/getsentry/sentry-api-schema/2c1056120fcde70097de32f2c5f0b474f609b770/openapi-derefed.json Error: fetch for over 2MB of data can not be cached
[1] at IncrementalCache.set (C:\dev\sentry-docs\node_modules\next\dist\server\lib\incremental-cache\index.js:381:23)
[1] at eval (webpack-internal:///(rsc)/./node_modules/next/dist/server/lib/patch-fetch.js:390:74)
[1] at process.processTicksAndRejections (node:internal/process/task_queues:95:5)
Additional Info
This used to work before the nextjs move. Also, I've cleaned the repo to no avail (git clean -ffxd).
Assigning to @getsentry/support for routing ⏲️
Thanks for reporting this @vaind! I'll take a look when I can.
@a-hariti do you know if this is still relevant?
The issue is still reproducible with the exact steps from the description. IIRC it was caused by a path separator... wasn't too hard to find with the stack trace there, I just wasn't familiar enough with the code to make changes to fix it
Running the project via WSL works for me under Windows. (Using Powershell or the terminal results in the same error described above.)
- I run Ubuntu 22.04 with WSL 2
- I use the same commands as listed in the issue description