-
Notifications
You must be signed in to change notification settings - Fork 653
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
TypeError when using optional on custom field options #2047
Comments
A quick change from ↴ syntax = "proto3";
... to ↴ syntax = "proto2";
... ... should do the trick. The reason that you're getting an error is because the |
That is incorrect. A new |
Interesting, just taking a look at Looking at the official docs:
|
I don't think you're interpreting that correctly either. The table you linked has two entries for "Singular numeric (integer or floating point)", one with The other quotation there is about the wire compatibility between message declarations that declare a field as |
Looking at the call stack, starting at https://github.com/protobufjs/protobuf.js/blob/f5b893c03e9694bbe7da7c4001cc74b06039eb9c/src/parse.js#L749 So it looks like namespace extensions aren't compatible with |
Correct me if I'm wrong but we're talking about a The only scenario I could see a where an optional Don't have a ton of experience with either codebase, so take all of that w/ a grain of salt. |
Yes, that is the field I am talking about. The purpose of That is a good catch with the linked PR. I see that the PR to publish it, protobufjs/protobuf.js#1603, is still pending. I think it is safe to say that fixing this bug is blocked on that release. |
👋 hello! Should this be resolved now? i'm hitting this issue (or at least the same stacktrace) in the Retool on-prem container, and unsure if i need to be asking them to upgrade to a more recent version, or if the bug still exists! |
There may be multiple causes of very similar stacktraces. Can you file a separate issue with the details of the problem you are experiencing? |
Hello, I am also having exactly the same issue as @arussellsaw regarding retool. We are also hitting this issue on retool |
the same |
When using It seems like it would be very easy to just catch the undefined and skip it even if the extended fields are left out of the loaded protos. An easy work around (at least for me) was to remove |
Can you share a stacktrace of the error you are getting? |
extend google.protobuf.FieldOptions {
optional bool some_value = 50000;
} This works though. extend google.protobuf.FieldOptions {
bool some_value = 50000;
} |
Problem description
When marking a custom field option as optional,
loadSync
throws a the following errorNote this error only occurs when using
optional
Reproduction steps
npm i
node test-with-optional.js
Environment
v16.13.0
nvm
@grpc/[email protected]
Additional context
Error with stack
Proto file that will fail to load
See https://github.com/ehyland/tmp-proto-loader-issue to reproduce
The text was updated successfully, but these errors were encountered: