Skip to content
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 #564

Merged
merged 610 commits into from
May 10, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
610 commits
Select commit Hold shift + click to select a range
ce2e226
Add missing `repository` prop to package.json in swc-wasm (#48805)
styfle Apr 25, 2023
79c7388
v13.3.2-canary.5
vercel-release-bot Apr 25, 2023
a18f50a
fix: Update `@swc/helpers` to `v0.5.1` (#48808)
kdy1 Apr 25, 2023
ee86ace
Fix hash apply after server-patch action (#48813)
timneutkens Apr 25, 2023
9863935
v13.3.2-canary.6
vercel-release-bot Apr 25, 2023
0f6b357
Improve typing of resolve metadata (#48670)
huozhi Apr 25, 2023
f08cab3
Only track client entry modules in the client reference manifest (#48…
shuding Apr 25, 2023
287e379
Vendor `react@experimental` (#48697)
shuding Apr 25, 2023
8602bf3
fix query for app dir in turbopack (#48828)
sokra Apr 25, 2023
ac8de9f
Polyfill FormData with edge-runtime primitives (#48826)
shuding Apr 25, 2023
641d419
Add async context to server request handler (#48626)
shuding Apr 25, 2023
f12aa35
Fix accessing `strict` of undefined in `writeConfigurationDefaults` (…
shuding Apr 25, 2023
5a46b01
update turbopack (#48846)
sokra Apr 26, 2023
1c0c61a
v13.3.2-canary.7
vercel-release-bot Apr 26, 2023
6902e5b
Fix issues where saving next.config.js too quickly could result in mu…
jankaifer Apr 26, 2023
da2804f
Fix scrolling on navigation in app (#48863)
timneutkens Apr 26, 2023
b21fd96
Implement MutableRequestCookies in server entries (#48847)
shuding Apr 26, 2023
f3d5c2f
refactor(next-swc): turbopack_ecmascript_plugins (#48671)
kwonoj Apr 26, 2023
c390c16
Add missing word to getStaticProps documentation (#48854)
martin-wahlberg Apr 26, 2023
1274713
edge: expose Websocket constructor (#48870)
Kikobeats Apr 26, 2023
6e896d3
add missing aliases for next/dynamic and next/head (#48871)
sokra Apr 26, 2023
f7baa56
update example Deploy button URLs (#48842)
JTaylor0196 Apr 26, 2023
b6e0c35
Update the mutableCookies class to accept extra options (#48877)
shuding Apr 26, 2023
a4d6309
Support generate dynamic sitemaps for dynamic routes (#48867)
huozhi Apr 26, 2023
ea472e8
refactor(next-core): emit unsupported package warning (#48837)
kwonoj Apr 26, 2023
7c1ee05
test: disable client cache flaky test (#48890)
huozhi Apr 26, 2023
219d1d4
update turbopack (#48893)
sokra Apr 26, 2023
98e0c4a
External vercel og for nodejs runtime (#48844)
huozhi Apr 26, 2023
f4a01b4
Make prefetch not async (#48897)
sebmarkbage Apr 27, 2023
073a175
Ensure require-hook env is set properly on deploy (#48902)
ijjk Apr 27, 2023
0cfa3fc
v13.3.2-canary.8
vercel-release-bot Apr 27, 2023
b50ecb7
add support for static implicit metadata in turbopack (#48823)
sokra Apr 27, 2023
0b59b17
Update min Node.js version to v16 (#48903)
ijjk Apr 27, 2023
d985094
Fix scrolling when invisible element is targeted (#48874)
timneutkens Apr 27, 2023
ffefb31
v13.3.2-canary.9
vercel-release-bot Apr 27, 2023
7a5ef27
Preload css (#48840)
gnoff Apr 27, 2023
80a9454
v13.3.2-canary.10
vercel-release-bot Apr 27, 2023
3ed412a
Selectively load runtime CSS modules to avoid rule duplication (#48866)
alexkirsz Apr 27, 2023
b002102
Ensure __PAGE__ is checked in all cases (#48862)
timneutkens Apr 27, 2023
fafecb8
add missing exports for static generation bailout (#48910)
sokra Apr 27, 2023
8e723ed
Change Server Reference creation on client (#48824)
shuding Apr 27, 2023
3efbb1a
v13.3.2-canary.11
vercel-release-bot Apr 27, 2023
678c697
Upgrade Edge Runtime (#46818)
Kikobeats Apr 27, 2023
7b66e8a
fix: explicit undefined typecheck (#48920)
Kikobeats Apr 27, 2023
e260adb
fix: Enable CJS annotations for next.js files (#48811)
kdy1 Apr 27, 2023
a2a3f5e
turbopack: parse and propagate `output: 'export'` (#48046)
jridgewell Apr 28, 2023
0918ebd
fixes #48794 : When using pageExtensions like "page.jsx", global css …
sagarpreet-xflowpay Apr 28, 2023
88a033f
chore: expose `globalThis.crypto` when not available (#48941)
balazsorban44 Apr 28, 2023
c94122d
v13.3.2-canary.12
vercel-release-bot Apr 28, 2023
44dc4ef
Fix dynamic routes for generateImageMetadata (#48928)
huozhi Apr 28, 2023
20d8e93
Correct some jest types (#48923)
cprussin Apr 28, 2023
cc2bcec
Start recommending gRPC with otel (#48915)
jankaifer Apr 28, 2023
a141366
Error for missing dynamic generated id and refactor metadata image ur…
huozhi Apr 28, 2023
e7c9d3c
fix: bump minimum Node.js version to 16.8.0 (#48957)
styfle Apr 28, 2023
59e9b43
allow using the `nodejs` runtime for route handlers when using turbop…
ForsakenHarmony Apr 28, 2023
b3071ad
fix(turbopack): ignore underscore_started path (#48792)
kwonoj Apr 28, 2023
7b348fa
Use ProxiedAsset instead of css_chunk_root_path to expose RSC CSS chu…
alexkirsz Apr 28, 2023
d922e3d
Remove un-necessary undici warnings (#48970)
ijjk Apr 28, 2023
7bfd582
Ensure WebSocket is polyfilled for node runtime as well (#48924)
ijjk Apr 28, 2023
799a05c
Support preferredRegion and Support runtime/preferredRegion on layout…
timneutkens Apr 28, 2023
4f5f476
preload fonts using ReactDOM.preload (#48931)
gnoff Apr 28, 2023
e66c625
v13.3.2-canary.13
vercel-release-bot Apr 28, 2023
b33179c
Cleanup "started server on" message (#48972)
jridgewell Apr 29, 2023
f2b920b
add image metadata for svg (#48947)
sokra Apr 29, 2023
861bc0d
fix: error when image `width={Infinity}` (#48855)
li-jia-nan Apr 29, 2023
514d57a
add test case for esm commonjs interop (#48940)
sokra Apr 29, 2023
03189bb
Update resolve rule for `@swc/helpers` (#48980)
kdy1 Apr 29, 2023
986039d
Update google fonts (#48984)
huozhi Apr 29, 2023
905b62e
Fix scroll when loading.js/ts is used (#48986)
timneutkens Apr 29, 2023
6668e97
v13.3.2-canary.14
vercel-release-bot Apr 29, 2023
57878be
v13.3.2
vercel-release-bot Apr 29, 2023
285e775
Fix duplicated Edge Runtime warnings (#48987)
shuding Apr 29, 2023
1d410c8
Update type of preferredRegion (#49003)
timneutkens Apr 30, 2023
ae00e12
v13.3.3-canary.0
vercel-release-bot Apr 30, 2023
acb9f7a
Remove unused context providers (#48267)
timneutkens Apr 30, 2023
acd8735
Update TS plugin type for `preferredRegion` (#49011)
shuding Apr 30, 2023
8e4888f
v13.3.3-canary.1
vercel-release-bot Apr 30, 2023
97be2e6
Fix CSS ordering issue with HMR (#49010)
shuding Apr 30, 2023
b2c6f01
v13.3.3-canary.2
vercel-release-bot May 1, 2023
0b07616
v13.3.3
vercel-release-bot May 1, 2023
ec8e0f9
Ensure app/layout.tsx can export preferredRegion (#49031)
timneutkens May 1, 2023
bc8f5d8
v13.3.4-canary.0
vercel-release-bot May 1, 2023
48323c9
v13.3.4
vercel-release-bot May 1, 2023
7e0a6f8
chore: Update `swc_core` to `v0.75.41` (#48982)
kdy1 May 1, 2023
3362851
More fluent GraphTraversal API (#49028)
alexkirsz May 1, 2023
dbccc79
fix GlobalError interop and add test case (#49033)
sokra May 1, 2023
c1f15b0
v13.3.5-canary.0
vercel-release-bot May 1, 2023
d3c59a1
Fix failing test on `canary` branch (#49038)
shuding May 1, 2023
5bc1e65
Add flag to switch to the experimental channel (#48896)
shuding May 1, 2023
1a71bea
Fix extra block element in body (#49034)
shuding May 1, 2023
95d41fb
v13.3.5-canary.1
vercel-release-bot May 1, 2023
37821b5
docs: Fix path of '.env.template' (#49012)
dciug May 1, 2023
2343610
fix: wrong link in docs (#49001)
albertothedev May 1, 2023
2d800df
Fixed `next-types-plugin` causing Typescript errors when `"type": "mo…
DuCanhGH May 1, 2023
1628260
Fixed middleware's edge-chunks not being copied in copyTracedFiles (#…
DuCanhGH May 1, 2023
905cb5a
Rename `experimentalReact` (#49046)
shuding May 1, 2023
25ba8a7
app router: don't unmount/remount on search param changes (#49047)
feedthejim May 1, 2023
d23b160
style: remove useless React.Fragment tag on `next/image` (#48997)
li-jia-nan May 1, 2023
58e5c78
feat: add draft mode to `next/headers` (#48789)
styfle May 1, 2023
45030d6
Fix `next dev` failing for app when `__NEXT_DISABLE_MEMORY_WATCHER` i…
shuding May 1, 2023
96d68fe
fix(next-core): interop non string record values in env (#49057)
kwonoj May 1, 2023
7b2c79d
feat(next-core): support capsize for google font fallback (#48967)
kwonoj May 1, 2023
eea3f34
chore: use includes replace indexOf (#48901)
li-jia-nan May 2, 2023
191e497
v13.3.5-canary.2
vercel-release-bot May 2, 2023
a40fa12
Remove unused font from tailwind `app/page.tsx` (#49035)
patrick91 May 2, 2023
e6acd40
feat: make `enableUndici: true` default and remove `node-fetch` (#49061)
styfle May 2, 2023
e58c63b
fix(next_core): do not apply user config to internal assets (#48210)
kwonoj May 2, 2023
90153ff
update turbopack (#49071)
sokra May 2, 2023
1a2bed2
allow to use different blur placeholder modes (#49070)
sokra May 2, 2023
d539c76
v13.3.5-canary.3
vercel-release-bot May 2, 2023
e76c881
Use route metadata to trace in node-file-trace (#49080)
timneutkens May 2, 2023
ee48c66
Add test case for file uploads (#49048)
shuding May 2, 2023
b7d657f
chore(cli): remove Route Handlers from App Router templates (#49076)
balazsorban44 May 2, 2023
45d6bb6
fix quoted env vars from next config (#49090)
sokra May 2, 2023
02c5b5f
find and handle not-found page in app dir (#49095)
sokra May 2, 2023
abc74fb
Update revalidate handling for app (#49062)
ijjk May 2, 2023
26f69d5
Simplify CNA prompts a bit (#49063)
ijjk May 2, 2023
692d28b
Update turbopack warning (#49051)
padmaia May 2, 2023
f3068a5
Add validation to server methods (#49104)
shuding May 2, 2023
d1f7793
use ws instead of undici.WebSocket (#49100)
Kikobeats May 2, 2023
20f90c3
chore: rename draft mode enabled to isEnabled (#49096)
styfle May 2, 2023
fe38369
add test cases for error handling (#49093)
sokra May 2, 2023
9dc0c1e
improve test case stability (#49036)
sokra May 2, 2023
9102771
Optimize non-dynamic metadata routes to static in production build (#…
huozhi May 2, 2023
2994668
Allow setting `runtime` in layouts in type declarations (#49117)
shuding May 2, 2023
3cb15a0
Update create-next-app App Router question (#49111)
timneutkens May 3, 2023
5cae80d
Tweak app cache handling for paths (#49108)
ijjk May 3, 2023
3caf6de
v13.3.5-canary.4
vercel-release-bot May 3, 2023
194da0b
add test case for non-enumerable exports (#49106)
sokra May 3, 2023
0bc1b7e
Skip handler for POST requests when no action ID is found (#49119)
shuding May 3, 2023
56de0b2
v13.3.5-canary.5
vercel-release-bot May 3, 2023
e54e38a
Fix edge runtime detection from layouts (#49126)
ijjk May 3, 2023
931c101
Fix cross-worker revalidate API (#49101)
shuding May 3, 2023
05cd515
app router: Fix infinite redirect loop in MPA navigation (#49058)
sophiebits May 3, 2023
ffa23d2
Only read digest from error instance (#49132)
timneutkens May 3, 2023
c09b0a0
Static generate dynamic sitemaps (#49114)
huozhi May 3, 2023
cfd27e9
Remove writing vscode config (#49133)
timneutkens May 3, 2023
1e9e8b2
Revert "Fix cross-worker revalidate API" (#49138)
sokra May 3, 2023
70c6f94
Revert "Revert "Fix cross-worker revalidate API" (#49138)" (#49141)
shuding May 3, 2023
79ef1d6
fix(ts): make `ReadonlyHeaders` more compatible with `Headers` (#49075)
balazsorban44 May 3, 2023
8d9658c
chore: simplify repo templates (#49073)
balazsorban44 May 3, 2023
c546847
app-router: update prefetch heuristic to traverse until until we hit …
feedthejim May 3, 2023
a623653
Forward response to edge runtime for response modification (#49145)
huozhi May 3, 2023
467539c
v13.3.5-canary.6
vercel-release-bot May 3, 2023
2ebc724
Polyfill `Blob` for Node.js < 18 (#49156)
shuding May 3, 2023
d62755a
Update compilation target of @next/react-dev-overlay (#49153)
shuding May 3, 2023
1e75bea
Fix CSS module imports not included in root not-found file (#49155)
shuding May 3, 2023
1905d14
app-router: fix stale cache handling (#49160)
feedthejim May 3, 2023
7092266
Add support for app global and segment 404 pages (#49085)
alexkirsz May 3, 2023
9555ad9
Tests for Sass warnings (#49151)
alexkirsz May 3, 2023
5b4506c
Ensure latest react-dom types for experimental release channel are us…
eps1lon May 3, 2023
b7c213f
v13.3.5-canary.7
vercel-release-bot May 3, 2023
e4beb85
Update cache methods for app dir (#49165)
ijjk May 3, 2023
92405d2
Search for lockfiles to find Turbopack root (#49110)
padmaia May 3, 2023
bc5164f
Allow webpack config, but warn if no turbo config (#49170)
padmaia May 3, 2023
2ba4dec
Add a generic type for unstable_cache (#49166)
reconbot May 3, 2023
e659653
Upgrade React to 18.3.0-canary-b7972822b-20230503 (#49158)
acdlite May 3, 2023
d957327
Fix server component transforms (#49135)
shuding May 3, 2023
39654fd
chore(docs): update next-image-unconfigured-host.md (#49175)
styfle May 3, 2023
248f2de
Fix React channel env missing in custom server (#49168)
shuding May 3, 2023
2dc0ba4
app router: support side effects on server requests (#48939)
feedthejim May 3, 2023
e7a2332
Fix flaky test (#49178)
shuding May 3, 2023
0aac86e
Fix multipart/form-data handling in the Edge runtime (#49177)
shuding May 3, 2023
d543fd1
Upgrade React to 18.3.0-canary-aef7ce554-20230503 (#49181)
acdlite May 4, 2023
0a9afce
remove startup message by default (#49157)
sokra May 4, 2023
f2e6d42
add test case for bindings in member props (#49134)
sokra May 4, 2023
a919e4a
Add test case for App Route cookies (#49124)
jridgewell May 4, 2023
c5406fc
v13.3.5-canary.8
vercel-release-bot May 4, 2023
83b774e
Fix standalone mode with appDir running in a single process (#49116)
shuding May 4, 2023
b877de1
Enable progressive enhanced form actions through decodeAction (#49187)
sebmarkbage May 4, 2023
11f2fd4
Use special annotation for `$$bound` if no closure argument is attach…
shuding May 4, 2023
7fd97b8
Add warning for missing metadataBase in social images (#49180)
huozhi May 4, 2023
bf09c65
Allow override icon rel (#49194)
huozhi May 4, 2023
dc99c18
v13.3.5-canary.9
vercel-release-bot May 4, 2023
aec49ec
actions: fix redirect on the edge (#49197)
feedthejim May 4, 2023
d908bd8
update turbopack (#49196)
sokra May 4, 2023
83e46fd
Fix incorrect React env in particular case (#49202)
shuding May 4, 2023
83e7d6b
v13.3.5-canary.10
vercel-release-bot May 4, 2023
17597c2
Add SWC test cases (#49189)
shuding May 4, 2023
310407d
action: add Readable.toWeb "polyfill" for node 16 (#49201)
feedthejim May 4, 2023
b7e2a28
add missing alias for next/dynamic in app dir (#49199)
sokra May 4, 2023
aabc1d9
disable optimistic_updates (#49211)
sokra May 4, 2023
e96fce4
render app pages with original url (#49198)
sokra May 4, 2023
10af8c8
v13.3.5-canary.11
vercel-release-bot May 4, 2023
51e51d2
action: support not found (#49209)
feedthejim May 4, 2023
1db5a91
types: upgrade react/react-dom types (#49213)
huozhi May 4, 2023
77ea7c0
Fix metadata routes prerender cache for standalone mode (#49208)
huozhi May 4, 2023
fdd6e97
Turbopack alpha -> beta (#49103)
padmaia May 4, 2023
ab55764
test: temporary disable flaky checking (#49217)
huozhi May 4, 2023
fe15a42
Enable App Router for all applications (#49088)
timneutkens May 4, 2023
4c407c1
v13.3.5-canary.12
ijjk May 4, 2023
fb12a6d
v13.4.0
vercel-release-bot May 4, 2023
12a6827
actions: update location header (#49223)
feedthejim May 4, 2023
d24f506
Fix serving images referenced from app directory (#49236)
jridgewell May 4, 2023
30f84e3
Update dev logs to include request timings (#49191)
ijjk May 4, 2023
acd2280
v13.4.1-canary.0
vercel-release-bot May 4, 2023
7f6e8db
Support incrementalCacheHandlerPath for standalone output (#48694)
ikryvorotenko May 4, 2023
7fa4946
Apply basePath for metadata image (#49226)
huozhi May 4, 2023
bf49f62
Fix Server Actions defined in both layers in one entry (#49248)
shuding May 4, 2023
0bf6c27
Update tags handling during server action redirect (#49227)
ijjk May 4, 2023
d37043f
Upgrade react types (#49222)
huozhi May 4, 2023
fd319d3
v13.4.1-canary.1
vercel-release-bot May 4, 2023
c881224
Add experimental verbose logging flag (#49250)
ijjk May 5, 2023
25a9547
Remove experimental config from create-next-app (#49241)
timneutkens May 5, 2023
618dc2e
Fix require-hook with just pages on deploy (#49274)
ijjk May 5, 2023
2c37ec0
v13.4.1-canary.2
vercel-release-bot May 5, 2023
92ff2dd
v13.4.1
vercel-release-bot May 5, 2023
9bd00a8
Add test case for client sourcemaps (#49308)
shuding May 5, 2023
75eccf7
make sure server component externals only apply to files resolvable b…
ForsakenHarmony May 5, 2023
ef8fef1
Fix link not being GC'd sometimes (#49318)
shuding May 5, 2023
061443f
Fix issue where nextP is not replaced in searchParams (#49315)
timneutkens May 5, 2023
9028a16
Add typescript version to next-info (#49346)
huozhi May 6, 2023
173381a
Fix error message about `preconnect` 📝 (#40360)
sanjaiyan-dev May 7, 2023
7e02f11
Upgrade React to 18.3.0-canary-16d053d59-20230506 (#49402)
acdlite May 7, 2023
e15741d
Remove empty config warning (#49435)
timneutkens May 8, 2023
c93747e
v13.4.2-canary.0
vercel-release-bot May 8, 2023
44e9f0b
app-router: add startTransition call to revalidate dispatcher (#49453)
feedthejim May 8, 2023
96c7acf
Inline static data buffer instead of using fs read (#49323)
huozhi May 8, 2023
660d531
v13.4.2-canary.1
vercel-release-bot May 8, 2023
1c005eb
Revert "Temporarily disable app dir export integration test" (#49311)
styfle May 8, 2023
e6cfc15
Add link to Server Actions docs. (#49384)
leerob May 8, 2023
5b5c4c3
Replace metadata clone with custom handler in dev (#49343)
huozhi May 8, 2023
7730ee1
Add request-async-storage to the shared layer (#49470)
shuding May 8, 2023
3a5501e
v13.4.2-canary.2
vercel-release-bot May 8, 2023
00ed2ba
Fix revalidate: false detection in app (#49473)
ijjk May 8, 2023
b20d5f2
Fix metadata image route encoding (#49482)
huozhi May 8, 2023
5ca02a8
Fix actions redirect handling (#49483)
ijjk May 8, 2023
20e1349
Restrict `useOptimistic` and `useFormStatus` APIs on the server layer…
shuding May 8, 2023
71d3543
Fix external rewrite with body (#49487)
ijjk May 8, 2023
dbb4124
fix: better error message with an invalid assetPrefix (#49403)
koba04 May 8, 2023
7a1bc23
Update start release workflow inputs (#49492)
ijjk May 9, 2023
8d22878
v13.4.2-canary.3
vercel-release-bot May 9, 2023
0479921
Fix failing actions e2e deploy test (#49497)
ijjk May 9, 2023
e570ad4
Fix Node Crypto polyfill (#49288)
g12i May 9, 2023
d6c83a4
Replace var with const (#49379)
cesarkohl May 9, 2023
4171cf3
test: pages react version with react hook in deployment (#48907)
huozhi May 9, 2023
761c293
Add test case for #49235 (#49488)
shuding May 9, 2023
81f5ed7
Fix: Router.query contains _next when using middleware with dynamic r…
darshkpatel May 9, 2023
5451564
[docs] Add iOS hydration mismatch details to error page (#43584)
josh- May 9, 2023
201ab71
type: update React.CSSProperties type to Record (#49186)
li-jia-nan May 9, 2023
881d202
Fix server CSS imports and HMR not working properly in specific condi…
shuding May 9, 2023
d9b82a9
Fix HMR support for server layer imported SASS and SCSS (#49534)
shuding May 9, 2023
000d022
Support `.bind` syntax with Action functions (#49422)
shuding May 9, 2023
0dce75f
ci(test): enable turbopack test (#49466)
kwonoj May 9, 2023
71d8064
feat(next-core): relay transform plugin (#48899)
kwonoj May 9, 2023
064e0c2
chore: fix flaky middleware matcher test (#49555)
styfle May 9, 2023
ef2b8f8
Fix canonical url for dynamic routes (#49512)
huozhi May 9, 2023
e3e76a4
Add experimental compile/generate handling (#49491)
ijjk May 10, 2023
f02cc9f
v13.4.2-canary.4
vercel-release-bot May 10, 2023
11a7117
chore: cross-platform `rm -rf` script (#49529)
styfle May 10, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
1 change: 1 addition & 0 deletions .alexrc
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@
"host-hostess",
"invalid",
"remains",
"special",
"white"
]
}
File renamed without changes.
File renamed without changes.
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
node_modules
**/.next/**
**/_next/**
**/.vscode/**
**/dist/**
e2e-tests/**
examples/with-eslint/**
Expand Down
2 changes: 1 addition & 1 deletion .eslintrc.json
Original file line number Diff line number Diff line change
Expand Up @@ -63,7 +63,7 @@
"@typescript-eslint/consistent-type-assertions": "warn",
"no-array-constructor": "off",
"@typescript-eslint/no-array-constructor": "warn",
"@typescript-eslint/no-namespace": "error",
"@typescript-eslint/no-namespace": "off",
"no-use-before-define": "off",
"@typescript-eslint/no-use-before-define": [
"warn",
Expand Down
4 changes: 2 additions & 2 deletions .github/.kodiak.toml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ automerge_label = "ready to land"
require_automerge_label = false
method = "squash"
delete_branch_on_merge = true
optimistic_updates = true
optimistic_updates = false
prioritize_ready_to_merge = true
notify_on_conflict = false

Expand All @@ -16,4 +16,4 @@ body = "pull_request_body"
include_coauthors= true
include_pr_number = true
body_type = "markdown"
strip_html_comments = true
strip_html_comments = true
23 changes: 14 additions & 9 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,23 @@
/.prettier* @vercel/next-js @leerob
/*.md @vercel/next-js @leerob
/packages/create-next-app/ @vercel/next-js
/pnpm-lock.yaml @vercel/next-js @vercel/web-tooling

# Image Component (@styfle)

/**/*image* @timneutkens @ijjk @shuding @styfle @huozhi
/**/*image*/** @timneutkens @ijjk @shuding @styfle @huozhi
/packages/next/client/use-intersection.tsx @timneutkens @ijjk @shuding @styfle
/packages/next/server/lib/squoosh/ @timneutkens @ijjk @shuding @styfle
/packages/next/server/serve-static.ts @timneutkens @ijjk @shuding @styfle @huozhi
/packages/next/server/config.ts @timneutkens @ijjk @shuding @styfle @huozhi

# Tooling & Telemetry

/packages/next/src/build/ @timneutkens @ijjk @shuding @vercel/web-tooling @huozhi
/packages/next/src/telemetry/ @timneutkens @ijjk @shuding @padmaia
/packages/next-swc/ @timneutkens @ijjk @shuding @vercel/web-tooling

# Image Component (@styfle)

/**/*image* @timneutkens @ijjk @shuding @styfle
/**/*image*/** @timneutkens @ijjk @shuding @styfle
/packages/next/client/use-intersection.tsx @timneutkens @ijjk @shuding @styfle
/packages/next/server/lib/squoosh/ @timneutkens @ijjk @shuding @styfle
/packages/next/server/serve-static.ts @timneutkens @ijjk @shuding @styfle
/packages/next/server/config.ts @timneutkens @ijjk @shuding @styfle
Cargo.toml @timneutkens @ijjk @shuding @vercel/web-tooling
Cargo.lock @timneutkens @ijjk @shuding @vercel/web-tooling
/.cargo/config.toml @timneutkens @ijjk @shuding @vercel/web-tooling
/.config/nextest.toml @timneutkens @ijjk @shuding @vercel/web-tooling
13 changes: 7 additions & 6 deletions .github/ISSUE_TEMPLATE/1.bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,28 +32,29 @@ body:
- 'Data fetching (gS(S)P, getInitialProps)'
- 'Dynamic imports (next/dynamic)'
- 'ESLint (eslint-config-next)'
- 'Font optimization (@next/font)'
- 'Font optimization (next/font)'
- 'Image optimization (next/image, next/legacy/image)'
- 'Internationalization (i18n)'
- 'Jest (next/jest)'
- 'MDX (@next/mdx)'
- 'Metadata (metadata, generateMetadata, next/head, head.js)'
- 'Middleware / Edge (API routes, runtime)'
- 'Operating System (Windows, MacOS, Linux)'
- 'Package manager (npm, pnpm, Yarn)'
- 'Routing (next/router, next/navigation, next/link)'
- 'Script optimization (next/script)'
- 'Standalone mode (output: "standalone")'
- 'Static HTML Export (next export)'
- 'Static HTML Export (output: "export")'
- 'SWC minifier (swcMinify: true)'
- 'SWC transpilation'
- 'Turbopack (--turbo)'
- 'TypeScript'
- 'TypeScript (plugin, built-in types)'
- type: input
attributes:
label: Link to the code that reproduces this issue
description: |
A link to a GitHub repository, a [CodeSandbox](https://codesandbox.io/p/sandbox/github/vercel/next.js/tree/canary/examples/reproduction-template) or a [StackBlitz](https://stackblitz.com/fork/github/vercel/next.js/tree/canary/examples/reproduction-template) minimal reproduction. Minimal reproductions should be created from our [bug report template with `npx create-next-app -e reproduction-template`](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template) and should include only changes that contribute to the issue.
To report an App Router related issue, you can use these templates: [CodeSandbox](https://codesandbox.io/p/sandbox/github/vercel/next.js/tree/canary/examples/reproduction-template-app-dir), [StackBlitz](https://stackblitz.com/fork/github/vercel/next.js/tree/canary/examples/reproduction-template-app-dir) or [`npx create-next-app -e reproduction-template-app-dir`](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template-app-dir)
A link to a [GitHub repository](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template) or a [CodeSandbox](https://codesandbox.io/p/sandbox/github/vercel/next.js/tree/canary/examples/reproduction-template) minimal reproduction. Minimal reproductions should be created from our [bug report template with `npx create-next-app -e reproduction-template`](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template) and should include only changes that contribute to the issue.
To report an App Router related issue, you can use these templates: [CodeSandbox](https://codesandbox.io/p/sandbox/github/vercel/next.js/tree/canary/examples/reproduction-template-app-dir) or [`npx create-next-app -e reproduction-template-app-dir`](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template-app-dir)
validations:
required: true
- type: textarea
Expand Down Expand Up @@ -90,4 +91,4 @@ body:
- type: input
attributes:
label: How are you deploying your application? (if relevant)
description: 'For example: next start, next export, Vercel, Other platform'
description: 'For example: next start, Vercel, Other platform'
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/2.example_bug_report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ body:
- type: input
attributes:
label: How are you deploying your application? (if relevant)
description: 'For example: next start, next export, Vercel, Other platform'
description: 'For example: next start, Vercel, Other platform'
- type: textarea
attributes:
label: Describe the Bug
Expand Down
2 changes: 1 addition & 1 deletion .github/actions/issue-validator/canary.md
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ If the issue does not reproduce with the `canary` version, then it has already b

### **How can I quickly verify if my issue has been fixed in `canary`?**

The safest way is to install `next@canary` in your project and test it, but you can also search through [closed Next.js issues](https://github.com/vercel/next.js/issues?q=is%3Aissue+is%3Aclosed) for duplicates or check the [Next.js releases](https://github.com/vercel/next.js/releases). You can also use the GitHub [template](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template) (preferred), or the [CodeSandbox](https://codesandbox.io/s/github/vercel/next.js/tree/canary/examples/reproduction-template) or [StackBlitz](https://stackblitz.com/fork/github/vercel/next.js/tree/canary/examples/reproduction-template) templates to create a reproduction with `canary` from scratch.
The safest way is to install `next@canary` in your project and test it, but you can also search through [closed Next.js issues](https://github.com/vercel/next.js/issues?q=is%3Aissue+is%3Aclosed) for duplicates or check the [Next.js releases](https://github.com/vercel/next.js/releases). You can also use the GitHub templates (preferred) for [pages](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template) and [App Router](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template-app-dir), or the [CodeSandbox: `pages`](https://codesandbox.io/s/github/vercel/next.js/tree/canary/examples/reproduction-template) or [CodeSandbox: App Router](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template-app-dir) templates to create a reproduction with `canary` from scratch.

### **My issue has been open for a long time, why do I need to verify `canary` now?**

Expand Down
2 changes: 1 addition & 1 deletion .github/actions/issue-validator/repro.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ We cannot recreate the issue with the provided information. **Please add a repro

### **Why was this issue marked with the `please add a complete reproduction` label?**

To be able to investigate, we need access to a reproduction to identify what triggered the issue. We prefer a link to a public GitHub repository ([template](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template)), but you can also use a tool like [CodeSandbox](https://codesandbox.io/s/github/vercel/next.js/tree/canary/examples/reproduction-template) or [StackBlitz](https://stackblitz.com/fork/github/vercel/next.js/tree/canary/examples/reproduction-template).
To be able to investigate, we need access to a reproduction to identify what triggered the issue. We prefer a link to a public GitHub repository ([template for `pages`](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template), [template for App Router](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template-app-dir)), but you can also use these templates: [CodeSandbox: `pages`](https://codesandbox.io/s/github/vercel/next.js/tree/canary/examples/reproduction-template) or [CodeSandbox: App Router](https://github.com/vercel/next.js/tree/canary/examples/reproduction-template-app-dir).

To make sure the issue is resolved as quickly as possible, please make sure that the reproduction is as **minimal** as possible. This means that you should **remove unnecessary code, files, and dependencies** that do not contribute to the issue.

Expand Down
209 changes: 87 additions & 122 deletions .github/actions/next-stats-action/src/prepare/repo-setup.js
Original file line number Diff line number Diff line change
Expand Up @@ -55,146 +55,111 @@ module.exports = (actionInfo) => {
}
},
async linkPackages({ repoDir, nextSwcVersion }) {
let useTestPack = process.env.NEXT_TEST_PACK
const pkgPaths = new Map()
const pkgDatas = new Map()
let pkgs

if (useTestPack) {
execa.sync('pnpm', ['turbo', 'run', 'test-pack'], {
cwd: repoDir,
env: { NEXT_SWC_VERSION: nextSwcVersion },
})

const pkgPaths = new Map()
const pkgs = (await fs.readdir(path.join(repoDir, 'packages'))).filter(
(item) => !item.startsWith('.')
)

pkgs.forEach((pkgDirname) => {
const { name } = require(path.join(
repoDir,
'packages',
pkgDirname,
'package.json'
))
pkgPaths.set(
name,
path.join(
repoDir,
'packages',
pkgDirname,
`packed-${pkgDirname}.tgz`
)
)
})
return pkgPaths
} else {
// TODO: remove after next stable release (current v13.1.2)
const pkgPaths = new Map()
const pkgDatas = new Map()
let pkgs

try {
pkgs = await fs.readdir(path.join(repoDir, 'packages'))
} catch (err) {
if (err.code === 'ENOENT') {
require('console').log('no packages to link')
return pkgPaths
}
throw err
try {
pkgs = await fs.readdir(path.join(repoDir, 'packages'))
} catch (err) {
if (err.code === 'ENOENT') {
require('console').log('no packages to link')
return pkgPaths
}
throw err
}

for (const pkg of pkgs) {
const pkgPath = path.join(repoDir, 'packages', pkg)
const packedPkgPath = path.join(pkgPath, `${pkg}-packed.tgz`)
for (const pkg of pkgs) {
const pkgPath = path.join(repoDir, 'packages', pkg)
const packedPkgPath = path.join(pkgPath, `${pkg}-packed.tgz`)

const pkgDataPath = path.join(pkgPath, 'package.json')
if (!fs.existsSync(pkgDataPath)) {
require('console').log(`Skipping ${pkgDataPath}`)
continue
}
const pkgData = require(pkgDataPath)
const { name } = pkgData
pkgDatas.set(name, {
pkgDataPath,
pkg,
pkgPath,
pkgData,
packedPkgPath,
})
pkgPaths.set(name, packedPkgPath)
const pkgDataPath = path.join(pkgPath, 'package.json')
if (!fs.existsSync(pkgDataPath)) {
require('console').log(`Skipping ${pkgDataPath}`)
continue
}
const pkgData = require(pkgDataPath)
const { name } = pkgData
pkgDatas.set(name, {
pkgDataPath,
pkg,
pkgPath,
pkgData,
packedPkgPath,
})
pkgPaths.set(name, packedPkgPath)
}

for (const pkg of pkgDatas.keys()) {
const { pkgDataPath, pkgData } = pkgDatas.get(pkg)
for (const pkg of pkgDatas.keys()) {
const { pkgDataPath, pkgData } = pkgDatas.get(pkg)

for (const pkg of pkgDatas.keys()) {
const { packedPkgPath } = pkgDatas.get(pkg)
if (!pkgData.dependencies || !pkgData.dependencies[pkg]) continue
pkgData.dependencies[pkg] = packedPkgPath
}
for (const pkg of pkgDatas.keys()) {
const { packedPkgPath } = pkgDatas.get(pkg)
if (!pkgData.dependencies || !pkgData.dependencies[pkg]) continue
pkgData.dependencies[pkg] = packedPkgPath
}

// make sure native binaries are included in local linking
if (pkg === '@next/swc') {
if (!pkgData.files) {
pkgData.files = []
}
pkgData.files.push('native/*')
require('console').log(
'using swc binaries: ',
await exec(`ls ${path.join(path.dirname(pkgDataPath), 'native')}`)
)
// make sure native binaries are included in local linking
if (pkg === '@next/swc') {
if (!pkgData.files) {
pkgData.files = []
}
pkgData.files.push('native/*')
require('console').log(
'using swc binaries: ',
await exec(`ls ${path.join(path.dirname(pkgDataPath), 'native')}`)
)
}

if (pkg === 'next') {
if (nextSwcVersion) {
Object.assign(pkgData.dependencies, {
'@next/swc-linux-x64-gnu': nextSwcVersion,
})
if (pkg === 'next') {
if (nextSwcVersion) {
Object.assign(pkgData.dependencies, {
'@next/swc-linux-x64-gnu': nextSwcVersion,
})
} else {
if (pkgDatas.get('@next/swc')) {
pkgData.dependencies['@next/swc'] =
pkgDatas.get('@next/swc').packedPkgPath
} else {
if (pkgDatas.get('@next/swc')) {
pkgData.dependencies['@next/swc'] =
pkgDatas.get('@next/swc').packedPkgPath
} else {
pkgData.files.push('native/*')
}
pkgData.files.push('native/*')
}
}
}

if (pkgData?.scripts?.prepublishOnly) {
// There's a bug in `pnpm pack` where it will run
// the prepublishOnly script and that will fail.
// See https://github.com/pnpm/pnpm/issues/2941
delete pkgData.scripts.prepublishOnly
}

await fs.writeFile(
pkgDataPath,
JSON.stringify(pkgData, null, 2),
'utf8'
)
if (pkgData?.scripts?.prepublishOnly) {
// There's a bug in `pnpm pack` where it will run
// the prepublishOnly script and that will fail.
// See https://github.com/pnpm/pnpm/issues/2941
delete pkgData.scripts.prepublishOnly
}

// wait to pack packages until after dependency paths have been updated
// to the correct versions
await Promise.all(
Array.from(pkgDatas.keys()).map(async (pkgName) => {
const { pkg, pkgPath, pkgData, packedPkgPath } =
pkgDatas.get(pkgName)
// Copied from pnpm source: https://github.com/pnpm/pnpm/blob/5a5512f14c47f4778b8d2b6d957fb12c7ef40127/releasing/plugin-commands-publishing/src/pack.ts#L96
const tmpTarball = path.join(
pkgPath,
`${pkgData.name.replace('@', '').replace('/', '-')}-${
pkgData.version
}.tgz`
)
await execa('pnpm', ['pack'], {
cwd: pkgPath,
})
await fs.copyFile(tmpTarball, packedPkgPath)
})
await fs.writeFile(
pkgDataPath,
JSON.stringify(pkgData, null, 2),
'utf8'
)

return pkgPaths
}

// wait to pack packages until after dependency paths have been updated
// to the correct versions
await Promise.all(
Array.from(pkgDatas.keys()).map(async (pkgName) => {
const { pkg, pkgPath, pkgData, packedPkgPath } = pkgDatas.get(pkgName)
// Copied from pnpm source: https://github.com/pnpm/pnpm/blob/5a5512f14c47f4778b8d2b6d957fb12c7ef40127/releasing/plugin-commands-publishing/src/pack.ts#L96
const tmpTarball = path.join(
pkgPath,
`${pkgData.name.replace('@', '').replace('/', '-')}-${
pkgData.version
}.tgz`
)
await execa('pnpm', ['pack'], {
cwd: pkgPath,
})
await fs.copyFile(tmpTarball, packedPkgPath)
})
)

return pkgPaths
},
}
}
Loading