Commit 97c154a
committed
fix(isr): honor route expire ceilings
Track expireAt alongside revalidateAt in the memory and KV cache handlers so ISR entries past their expire ceiling become blocking misses instead of stale responses.
Plumb expireTime and request cacheLife expire values through App Router, Pages Router, prerender seeding, and cache writes while keeping generated entries as thin app-shape wiring over normal server modules.
Match Next.js cache-control semantics for finite stale-while-revalidate windows when an expire value is known.1 parent dd1dfae commit 97c154a
35 files changed
Lines changed: 874 additions & 242 deletions
File tree
- packages/vinext/src
- build
- cloudflare
- config
- entries
- server
- shims
- tests
- __snapshots__
- fixtures/app-basic/app/prerender-cache-life
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
45 | 45 | | |
46 | 46 | | |
47 | 47 | | |
| 48 | + | |
48 | 49 | | |
49 | 50 | | |
50 | 51 | | |
| |||
591 | 592 | | |
592 | 593 | | |
593 | 594 | | |
| 595 | + | |
594 | 596 | | |
595 | 597 | | |
596 | 598 | | |
| |||
998 | 1000 | | |
999 | 1001 | | |
1000 | 1002 | | |
| 1003 | + | |
1001 | 1004 | | |
1002 | 1005 | | |
1003 | 1006 | | |
| |||
1014 | 1017 | | |
1015 | 1018 | | |
1016 | 1019 | | |
1017 | | - | |
1018 | | - | |
| 1020 | + | |
1019 | 1021 | | |
1020 | 1022 | | |
1021 | 1023 | | |
| |||
1056 | 1058 | | |
1057 | 1059 | | |
1058 | 1060 | | |
| 1061 | + | |
| 1062 | + | |
| 1063 | + | |
1059 | 1064 | | |
1060 | 1065 | | |
1061 | 1066 | | |
| |||
1137 | 1142 | | |
1138 | 1143 | | |
1139 | 1144 | | |
| 1145 | + | |
| 1146 | + | |
| 1147 | + | |
| 1148 | + | |
| 1149 | + | |
| 1150 | + | |
| 1151 | + | |
| 1152 | + | |
| 1153 | + | |
| 1154 | + | |
| 1155 | + | |
| 1156 | + | |
| 1157 | + | |
| 1158 | + | |
| 1159 | + | |
| 1160 | + | |
| 1161 | + | |
| 1162 | + | |
| 1163 | + | |
| 1164 | + | |
| 1165 | + | |
| 1166 | + | |
| 1167 | + | |
| 1168 | + | |
| 1169 | + | |
| 1170 | + | |
1140 | 1171 | | |
1141 | 1172 | | |
1142 | 1173 | | |
| |||
1159 | 1190 | | |
1160 | 1191 | | |
1161 | 1192 | | |
| 1193 | + | |
1162 | 1194 | | |
1163 | 1195 | | |
1164 | 1196 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
33 | 33 | | |
34 | 34 | | |
35 | 35 | | |
| 36 | + | |
36 | 37 | | |
37 | 38 | | |
38 | 39 | | |
| |||
86 | 87 | | |
87 | 88 | | |
88 | 89 | | |
| 90 | + | |
| 91 | + | |
| 92 | + | |
| 93 | + | |
89 | 94 | | |
90 | 95 | | |
91 | 96 | | |
| |||
124 | 129 | | |
125 | 130 | | |
126 | 131 | | |
| 132 | + | |
| 133 | + | |
| 134 | + | |
| 135 | + | |
| 136 | + | |
| 137 | + | |
| 138 | + | |
| 139 | + | |
| 140 | + | |
| 141 | + | |
| 142 | + | |
| 143 | + | |
| 144 | + | |
| 145 | + | |
| 146 | + | |
| 147 | + | |
| 148 | + | |
| 149 | + | |
| 150 | + | |
| 151 | + | |
| 152 | + | |
127 | 153 | | |
128 | 154 | | |
129 | 155 | | |
| |||
220 | 246 | | |
221 | 247 | | |
222 | 248 | | |
223 | | - | |
| 249 | + | |
| 250 | + | |
| 251 | + | |
| 252 | + | |
| 253 | + | |
| 254 | + | |
224 | 255 | | |
225 | 256 | | |
226 | 257 | | |
227 | 258 | | |
228 | 259 | | |
| 260 | + | |
229 | 261 | | |
230 | 262 | | |
231 | 263 | | |
232 | 264 | | |
233 | 265 | | |
234 | 266 | | |
| 267 | + | |
235 | 268 | | |
236 | 269 | | |
237 | 270 | | |
| |||
311 | 344 | | |
312 | 345 | | |
313 | 346 | | |
314 | | - | |
315 | | - | |
316 | | - | |
317 | | - | |
318 | | - | |
319 | | - | |
320 | | - | |
| 347 | + | |
| 348 | + | |
| 349 | + | |
321 | 350 | | |
322 | 351 | | |
323 | 352 | | |
324 | 353 | | |
325 | 354 | | |
| 355 | + | |
326 | 356 | | |
327 | 357 | | |
328 | | - | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
329 | 363 | | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
330 | 370 | | |
331 | 371 | | |
332 | 372 | | |
333 | 373 | | |
334 | 374 | | |
335 | 375 | | |
336 | 376 | | |
337 | | - | |
| 377 | + | |
338 | 378 | | |
| 379 | + | |
| 380 | + | |
339 | 381 | | |
340 | 382 | | |
341 | 383 | | |
| |||
505 | 547 | | |
506 | 548 | | |
507 | 549 | | |
| 550 | + | |
| 551 | + | |
| 552 | + | |
| 553 | + | |
| 554 | + | |
| 555 | + | |
| 556 | + | |
| 557 | + | |
| 558 | + | |
| 559 | + | |
508 | 560 | | |
509 | 561 | | |
510 | 562 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
179 | 179 | | |
180 | 180 | | |
181 | 181 | | |
| 182 | + | |
| 183 | + | |
182 | 184 | | |
183 | 185 | | |
184 | 186 | | |
| |||
242 | 244 | | |
243 | 245 | | |
244 | 246 | | |
| 247 | + | |
| 248 | + | |
245 | 249 | | |
246 | 250 | | |
247 | 251 | | |
| |||
253 | 257 | | |
254 | 258 | | |
255 | 259 | | |
| 260 | + | |
256 | 261 | | |
257 | 262 | | |
258 | 263 | | |
| |||
462 | 467 | | |
463 | 468 | | |
464 | 469 | | |
| 470 | + | |
465 | 471 | | |
466 | 472 | | |
467 | 473 | | |
| |||
613 | 619 | | |
614 | 620 | | |
615 | 621 | | |
| 622 | + | |
616 | 623 | | |
617 | 624 | | |
618 | 625 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
85 | 85 | | |
86 | 86 | | |
87 | 87 | | |
| 88 | + | |
88 | 89 | | |
89 | 90 | | |
90 | 91 | | |
| |||
104 | 105 | | |
105 | 106 | | |
106 | 107 | | |
| 108 | + | |
| 109 | + | |
107 | 110 | | |
108 | 111 | | |
109 | 112 | | |
| |||
144 | 147 | | |
145 | 148 | | |
146 | 149 | | |
| 150 | + | |
147 | 151 | | |
148 | 152 | | |
149 | 153 | | |
| |||
466 | 470 | | |
467 | 471 | | |
468 | 472 | | |
469 | | - | |
| 473 | + | |
470 | 474 | | |
471 | 475 | | |
| 476 | + | |
472 | 477 | | |
473 | 478 | | |
474 | 479 | | |
| |||
512 | 517 | | |
513 | 518 | | |
514 | 519 | | |
515 | | - | |
516 | | - | |
517 | | - | |
518 | | - | |
519 | | - | |
520 | | - | |
521 | | - | |
522 | | - | |
523 | | - | |
524 | 520 | | |
525 | | - | |
526 | | - | |
527 | | - | |
528 | | - | |
| 521 | + | |
529 | 522 | | |
530 | | - | |
531 | | - | |
532 | | - | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
| 528 | + | |
| 529 | + | |
| 530 | + | |
533 | 531 | | |
534 | 532 | | |
535 | 533 | | |
| |||
1118 | 1116 | | |
1119 | 1117 | | |
1120 | 1118 | | |
| 1119 | + | |
1121 | 1120 | | |
1122 | 1121 | | |
1123 | 1122 | | |
| |||
2146 | 2145 | | |
2147 | 2146 | | |
2148 | 2147 | | |
| 2148 | + | |
2149 | 2149 | | |
2150 | 2150 | | |
2151 | 2151 | | |
| |||
2197 | 2197 | | |
2198 | 2198 | | |
2199 | 2199 | | |
| 2200 | + | |
2200 | 2201 | | |
2201 | 2202 | | |
2202 | 2203 | | |
| |||
2304 | 2305 | | |
2305 | 2306 | | |
2306 | 2307 | | |
| 2308 | + | |
2307 | 2309 | | |
2308 | 2310 | | |
2309 | 2311 | | |
| |||
2523 | 2525 | | |
2524 | 2526 | | |
2525 | 2527 | | |
| 2528 | + | |
2526 | 2529 | | |
2527 | 2530 | | |
2528 | 2531 | | |
| |||
2574 | 2577 | | |
2575 | 2578 | | |
2576 | 2579 | | |
| 2580 | + | |
2577 | 2581 | | |
2578 | 2582 | | |
2579 | 2583 | | |
| |||
0 commit comments