protocolbuffers / protocolbuffers/protobuf-javascript
Js TypeError when generated with commonjs_strict
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- JavaScript
- Sterne
- 471
- Forks
- 91
- Ø Merge
- 3 Std. 57 Min.
- Gemergte PRs (30 T.)
- 2
Beschreibung
Version: v3.10.0
Language: Javascript
OS: OSX 10.14.6
Node v12.10.0
When js files generated with commonjs_strict the referrences to types defined in other files are not using the package name to access it from the exported object, so TypeError is thrown due to reading property of undefined.
How to reproduce
a.proto
syntax = "proto3";
package foo.v1;
import "b.proto";
message A {
repeated foo.v1.B foo = 1;
}
b.proto
syntax = "proto3";
package foo.v1;
import "b.proto";
message A {
repeated foo.v1.B foo = 1;
}
protoc \
--js_out=import_style=commonjs_strict:./generated \
a.proto b.proto
In the generated js files the protos_b_pb.B should be protos_b_foo.v1.pb.B
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
Beginne damit, das Problem mit den bereitgestellten Dateien a.proto und b.proto sowie dem protoc-Befehl unter Verwendung von commonjs_strict zu reproduzieren. Untersuche anschließend die generierten JavaScript-Referenzen zwischen den Dateien. Verfolge, wie paketqualifizierte Exporte gebildet werden, und überprüfe, dass die generierte Referenz den exportierten Paketpfad verwendet und keinen TypeError mehr auslöst.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- javascript, node.js
- Bereich
- build-system, tooling
- Issue-Typ
- Bug
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Aktivitätsstatus
- Veraltet
- Klarheit
- Größtenteils klar
- Anfängerfreundlichkeit
- 35/100