You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
then called Foo(bar=1).to_pydict or Foo().from_pydict({"bar": 1})
Expected Results
The method called success like to_dict and from_dict
Actual Results
There will raise AttributeError: 'group1' is set to 'xxxx', not 'baz' / 'group1' is set to None, not 'bar':
Traceback (most recent call last):
File "D:\Projects\adapter-kritor\exam.py", line 22, in <module>
res = foo1.to_pydict()
File "D:\Projects\adapter-kritor\.venv\lib\site-packages\betterproto\__init__.py", line 1717, in to_pydict
value = getattr(self, field_name)
File "D:\Projects\adapter-kritor\.venv\lib\site-packages\betterproto\__init__.py", line 836, in __getattribute__
raise AttributeError(
AttributeError: 'group1' is set to 'bar', not 'baz'
System Information
libprotoc 27.2
Python 3.9.13
2.0.0b7
Checklist
I have searched the issues for duplicates.
I have shown the entire traceback, if possible.
I have verified this issue occurs on the latest prelease of betterproto which can be installed using pip install -U --pre betterproto, if possible.
The text was updated successfully, but these errors were encountered:
Summary
Serializing a message with oneof fails by
to_pydict
orfrom_pydict
.Reproduction Steps
Define a message and compile:
then called
Foo(bar=1).to_pydict
orFoo().from_pydict({"bar": 1})
Expected Results
The method called success like
to_dict
andfrom_dict
Actual Results
There will raise AttributeError:
'group1' is set to 'xxxx', not 'baz'
/'group1' is set to None, not 'bar'
:System Information
libprotoc 27.2
Python 3.9.13
2.0.0b7
Checklist
pip install -U --pre betterproto
, if possible.The text was updated successfully, but these errors were encountered: