Next.js 16.3 Preview — Feedback #95130
Replies: 7 comments 4 replies
-
|
Hi @samselikoff! Testing 16.3 Preview with Turbopack + This cannot be silenced when a filesystem call receives a This has been originally reported here: #95125 Additional details📁 Minimal Reproduction// lib/loader.js
import fs from 'fs'
import path from 'path'
const folder = path.join(process.cwd(), 'data')
// ✅ WORKS — bare variable, comment silences warning
const files = fs.readdirSync(/* turbopackIgnore: true */ folder)
// ❌ STILL WARNS — no comment placement can silence this
const contents = files.map(f =>
fs.readFileSync(path.join(folder, f), 'utf8')
)
// ❌ STILL WARNS — this is the EXACT form the warning recommends!
const contents2 = files.map(f =>
fs.readFileSync(path.join(/* turbopackIgnore: true */ folder, f), 'utf8')
)
// ❌ STILL WARNS
const contents3 = files.map(f =>
fs.readFileSync(/* turbopackIgnore: true */ path.join(folder, f), 'utf8')
)Steps to reproduce:
📊 Annotation Behavior Matrix
🔍 Root Cause (Traced in Source)After digging into the Turbopack source, the exact bug is in:
// All call arguments are always linked with EMPTY ImportAttributes
// The `ignore` flag is NEVER passed down to argument expressions
let linked_args = || async {
linked_args_cache.get_or_try_init(|| async {
unlinked_args
.iter()
.map(|arg| arg.clone_in(state.arena.get_or_default()))
.map(|arg| state.link_value(arg, ImportAttributes::empty_ref())) // ← BUG
.try_join()
.await
}).await
};What this means:
The 💥 Why It Matters (Not Just Cosmetic)This is a real deployment risk in these common cases: 1. Runtime-resolved data folders: // You CANNOT silence this no matter what
const data = fs.readFileSync(path.join(process.cwd(), 'data', filename), 'utf8')2. Libraries in // Inside node_modules — you cannot add comments here at all
const files = fs.readdirSync(migrationsFolder)
files.map(f => fs.readFileSync(path.join(migrationsFolder, f)))Result: The entire project — including the
🌍 Environment
🔗 Related Issues
✅ Expected BehaviorThe 💡 Proposed Fix DirectionIn
Happy to submit a PR if that would help! 🙏 |
Beta Was this translation helpful? Give feedback.
-
|
I love the new defaults with One thing I'm confused about: with Based on this from the docs I would not expect runtime data to be prefetched without configuring 'allow-runtime':
|
Beta Was this translation helpful? Give feedback.
-
|
Hey @samselikoff - there are very good reports on dev build performance for Turbopack here. Everyone in that thread (and my team) is eagerly awaiting release! |
Beta Was this translation helpful? Give feedback.
-
|
I seem to have found a bug with Instant Insights. In my setup, I have a top-level loading.tsx file ( |
Beta Was this translation helpful? Give feedback.
-
|
I might be missing something obviously, but think I've ran into a bug with meta titles (or maybe metadata in general) for built apps. On a fresh load of a page with Example metadata I'm using on most of my pages atm: I've found that disabling |
Beta Was this translation helpful? Give feedback.
-
|
I got this runtime error using react-email in preview.5 prettier is only used as subdependency of react-email BTW it does not error in canary.32 |
Beta Was this translation helpful? Give feedback.
-
|
Is |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
-
Use this discussion to report any feedback or bugs you find in the 16.3 Preview release!
Beta Was this translation helpful? Give feedback.
All reactions