401 Commits

Author SHA1 Message Date
Erik Friese
950d2f6536 google wrapper types 2023-09-04 21:09:06 +02:00
Erik Friese
29f12ea88d map support 2023-09-04 12:52:12 +02:00
Erik Friese
219233b50e bugfix: parsing unknown fields properly 2023-08-31 17:57:28 +02:00
Erik Friese
2d30bdb7b2 Merge branch 'master' into rust_extras 2023-08-31 17:39:34 +02:00
Erik Friese
bdd3389b17 bugfix in proto descriptor creation
reference cycles in betterproto messages have led to infinite recursion
2023-08-31 17:17:28 +02:00
Erik Friese
441844b97a avoiding name clash 2023-08-31 13:18:07 +02:00
Erik Friese
a413d08fc1 enum support 2023-08-30 21:06:32 +02:00
Erik Friese
24d694afe2 storing unknown fields 2023-08-30 15:49:25 +02:00
Erik Friese
84af157122 minor refactoring 2023-08-30 15:39:34 +02:00
Erik Friese
df0c17bf0a optional support 2023-08-29 18:08:59 +02:00
Joshua Leivers
8659c51123
Add message streaming support (#518) 2023-08-29 14:26:25 +01:00
Erik Friese
d1825026db lock file reverted to master 2023-08-27 18:46:20 +02:00
Erik Friese
a12c9d24de oneof support 2023-08-27 14:37:23 +02:00
Erik Friese
d79a9eee14 deserializing lists 2023-08-27 13:22:51 +02:00
Erik Friese
d848d05710 minor optimization 2023-08-26 21:47:35 +02:00
Erik Friese
26da86d2cd proper error handling 2023-08-26 21:32:35 +02:00
Erik Friese
604dcb104f type info + doc string added 2023-08-26 21:04:30 +02:00
Erik Friese
421aa78014 Native deserialization based on Rust and PyO3
Proof of concept
Only capable of deserializing (nested) Messages with primitive fields
No handling of lists, maps, enums, .. implemented yet
See `example.py` for a working example
2023-08-26 13:04:26 +02:00
Andrew
4cdf1bb9e0
Fix Message equality comparison (#513) 2023-07-29 12:06:56 +01:00
Alexander Khabarov
6faac1d1ca
Raise AttributeError on attempts to access unset oneof fields (#510) 2023-07-21 13:26:30 +01:00
Ashwin Madavan
098989e9e9
Bump version to 2.0.0b6 (#500)
Co-authored-by: James Hilton-Balfe <gobot1234yt@gmail.com>
2023-06-26 00:12:49 +01:00
Ollie
182aedaec4
Handle empty value objects properly (#481)
Co-authored-by: James Hilton-Balfe <gobot1234yt@gmail.com>
2023-06-24 20:19:13 +01:00
konstantin
a7532bbadc
Add Python 3.11 to CI Runs (#445)
Co-authored-by: James Hilton-Balfe <gobot1234yt@gmail.com>
2023-06-24 19:49:34 +01:00
Alexander Khabarov
73d1fa3d5b
Upgrade grpcio-tools and protobuf (#498) 2023-06-24 19:39:11 +01:00
Sriansh Raj Pradhan
c00bc96db7
Create LICENSE.md (#502) 2023-06-16 19:19:51 +01:00
Nick DeRobertis
fcbd8a3759
Fix pydict serialization for optional fields (#495) 2023-05-28 17:47:52 +01:00
pi-slh
aad7d2ad76
Replace pkg_resources with importlib (#462) 2023-05-25 11:12:15 +01:00
Jinyu Liu
2b41383745
Fix dict encoding for timezone aware datetimes (#468)
Co-authored-by: James Hilton-Balfe <gobot1234yt@gmail.com>
2023-04-13 23:34:19 +01:00
Marek Pikuła
b0b6cd24ad
Fix pydantic_dataclasses reference in README (#474) 2023-04-13 21:56:38 +01:00
James Hilton-Balfe
e7f07fa2a1
Update __init__.py (#451) 2023-03-08 08:20:56 +00:00
Samuel Yvon
2fa0be2141
Fix for #459 (pydantic code gen only) (#460) 2023-02-21 19:41:32 +00:00
Samuel Yvon
13d656587c
Add support for pydantic dataclasses (#406) 2023-02-13 15:37:16 +00:00
James Hilton-Balfe
6df8cef3f0
Fix CI (#456) 2023-02-13 00:20:58 +00:00
James Hilton-Balfe
1b1bd47cb1
Drop support for python3.6 (#444) 2023-02-09 08:35:41 +00:00
Wouter Horré
0adcc9020c
Pythonize input_type name in py_input_message (#436)
Co-authored-by: konstantin <konstantin.klein@hochfrequenz.de>
Co-authored-by: James Hilton-Balfe <gobot1234yt@gmail.com>
Fixes https://github.com/danielgtaylor/python-betterproto/issues/427
Fixes https://github.com/danielgtaylor/python-betterproto/issues/438
2022-12-02 22:18:48 +00:00
sterliakov
bfc0fac754
Enforce serialize_empty for repeated fields (#417) 2022-08-31 18:59:12 +01:00
Antonín Říha
8fbf4476a8
Fix typechecker compatiblity checks in server streaming methods (#413) 2022-08-31 00:05:29 +01:00
Samuel Yvon
591ec5efb3
Pull down the include_default_values argument to to_json (#405) 2022-08-08 14:26:28 +01:00
Antonín Říha
f31d51cf3c
Added support for @generated marker (#382) 2022-08-03 11:05:13 +01:00
James Hilton-Balfe
496eba2750
Bump version to b5 (#404) 2022-08-02 09:23:44 +10:00
James Hilton-Balfe
d663a318b7
Release v.2.0.0b5 (#350)
* Implement Message.__bool__ for #130
* Add __bool__ to special members
* Tweak __bool__ docstring
* remove compiler: prefix

Co-authored-by: nat <n@natn.me>
2022-08-02 08:59:44 +10:00
Justin Torre
2fb37dd108
Update Jinja 2 version (#402) 2022-08-01 10:44:37 +01:00
Vasile Razdalovschi
42d2df6de6
Fix broken link in readme to tests (#400) 2022-07-14 13:14:05 +01:00
James Hilton-Balfe
3fd5a0d662
Fix parameters missing from services (#381) 2022-07-06 19:05:40 +01:00
MatejKastak
bc13e7070d
Fix link to google files (#392) 2022-06-16 16:08:39 +01:00
Flynn
6536181902
Add to/from_pydict methods (#203)
* add to/from_pydict methods

* Remove unnecessary method call

* Fix formatting

Co-authored-by: James Hilton-Balfe <gobot1234yt@gmail.com>
2022-05-09 17:34:12 +01:00
GrownNed
85e4be96d8
fix Message.to_dict mutating the underlying Message (#378)
* [fix] to_dict modifies the underlying message (#151)

* add test for mapmessage

* fix for to_dict

* formatting

* Apply suggestions from code review

Co-authored-by: Arun Babu Neelicattu <arun.neelicattu@gmail.com>

* change to_json to to_dict

Co-authored-by: Arun Babu Neelicattu <arun.neelicattu@gmail.com>
2022-05-09 17:29:42 +01:00
efokschaner
06c26ba60d
tests: Lazy evaluate Deadline parameter in pytest (#380)
The pytest parameters are evaluated when the tests are loading.
The Deadline.from_timeout is a fixed point in time. 
By deferring the evaluation it helps ensure that the deadline is not reached before the test is executed.
2022-04-30 23:11:21 +01:00
James Hilton-Balfe
6a70b8e8ea
compiler: do not overwrite top level __init__.py
Resolves: #168 #260
2022-04-24 01:44:16 +02:00
James Hilton-Balfe
3ca092a724
Fix is_set for optional proto3 fields 2022-04-24 01:37:15 +02:00