`esm_loader` should use a primordial to get `cwd`
Nessuno ha ancora preso questa issue.
- Lingua principale
- JavaScript
- Stelle
- 122k
- Fork
- 37.3k
- Merge medio
- 4g 2h
- PR unite (30g)
- 283
Descrizione
Version
v18.9.0
Platform
Linux vhost1 5.18.10-76051810-generic #202207071639~1657252310~22.04~7d5e891 SMP PREEMPT_DYNAMIC Fri J x86_64 x86_64 x86_64 GNU/Linux
Subsystem
esm_loader
What steps will reproduce the bug?
process.cwd = () => {
(async () => {
await import('.');
})();
};
await import('.');
How often does it reproduce? Is there a required condition?
Always.
What is the expected behavior?
No RangeErrors.
What do you see instead?
Exception in PromiseRejectCallback:
node:internal/modules/esm/resolve:1110
};
RangeError: Maximum call stack size exceeded
Exception in PromiseRejectCallback:
node:internal/modules/esm/loader:163
const output = await hook(arg0, meta.context, nextNextHook);
Additional information
No response
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Esegui la riproduzione fornita su Node.js v18.9.0, quindi ispeziona node:internal/modules/esm/resolve.js e node:internal/modules/esm/loader.js nei punti indicati dallo stack trace. Traccia il modo in cui esm_loader ottiene cwd e aggiornalo affinché usi il primordial richiesto; il lavoro è completato quando la riproduzione termina senza RangeErrors.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript
- Ambito
- backend
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 55/100