protocolbuffers / protocolbuffers/protobuf-javascript
The generated commonjs `*_pb.js` files don't work in Node.js environment
Nessuno ha ancora preso questa issue.
- Lingua principale
- JavaScript
- Stelle
- 471
- Fork
- 91
- Merge medio
- 3h 57m
- PR unite (30g)
- 2
Descrizione
This bug is a rebirth of protocolbuffers/protobuf#9152, which has already been fixed in v3.19.1. It seems the fix hasn't been delivered to the latest version.
What version of protobuf and what language are you using?
Version: v3.20.1
Language: Javascript
What operating system (Linux, Windows, ...) and version?
macOs Monterey v12.3.1
What runtime / compiler are you using (e.g., python version or gcc version)
Node.js v16.13.0
What did you do?
- Run
protoc --js_out=import_style=commonjs,binary:path/to/out/dir --proto_path=. *.proto - Try to import and use the generated *_pb.js files.
What did you expect to see
Import and use without errors (just as in 3.19.1 - 3.19.4).
What did you see instead?
ReferenceError: window is not defined
14 | var jspb = require('google-protobuf');
15 | var goog = jspb;
> 16 | var global = (function() { return this || window || global || self || Function('return this')(); }).call(null);
Guida per i contributori
Nessuna guida per i contributori indicizzata per questo repository
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
Riproduci il problema con il comando protoc mostrato e Node.js v16.13.0, quindi esamina il codice *_pb.js generato intorno all’inizializzazione globale alla riga 16. Confronta il comportamento con le versioni 3.19.1–3.19.4 di protobuf; l’attività è completata quando i file CommonJS generati possono essere importati e utilizzati in Node.js senza un errore window.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- javascript, node.js
- Ambito
- backend
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 35/100