{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":214084028,"defaultBranch":"master","name":"python-betterproto","ownerLogin":"danielgtaylor","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2019-10-10T04:09:03.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/106826?v=4","public":true,"private":false,"isOrgOwned":false},"refInfo":{"name":"","listCacheKey":"v0:1698159900.0","currentOid":""},"activityList":{"items":[{"before":"c3c20556e0d29e07abee05c7e3d2d6c481d26389","after":"1f88b67eeb9871d33da154fd2c859b9d1aed62c1","ref":"refs/heads/master","pushedAt":"2024-04-13T14:16:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"`betterproto-rust-codec` updated (#571)","shortMessageHtmlLink":"betterproto-rust-codec updated (#571)"}},{"before":"df1ba911b75da04eec56b6b39bd93a3779d51b24","after":"c3c20556e0d29e07abee05c7e3d2d6c481d26389","ref":"refs/heads/master","pushedAt":"2024-04-08T22:54:36.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"fix: support pydantic-version google pb (#568)\n\n* feat: pydantic version of google pb\r\n\r\n* fix: patch pb Struct to support json, dict rountrip\r\n\r\n* fix: pydantic-version google pb, json, dict rntrip\r\n\r\n* chore: remove `@generated`, remove gen, code fmt\r\n\r\n* chore: test case for pydantic-version google pb","shortMessageHtmlLink":"fix: support pydantic-version google pb (#568)"}},{"before":"126b256b4c541832e1e5a5f898c1263dd4b06995","after":"df1ba911b75da04eec56b6b39bd93a3779d51b24","ref":"refs/heads/master","pushedAt":"2024-03-29T14:08:02.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Add betterproto.Enum __copy__ and __deepcopy__ implementations (#566)\n\n* Add betterproto.Enum __copy__ and __deepcopy__ implementations\r\n\r\nbetterproto.Enum is missing __copy__ and __deepcopy__ implementations, which were recently added to enum.Enum, see https://github.com/python/cpython/issues/106602\r\nThis fixes the bug where betterproto messages with Enums nested within cannot be copied via copy.deepcopy.\r\n\r\n* Type hint on Enum.__copy__\r\n\r\nCo-authored-by: James Hilton-Balfe \r\n\r\n* Type hint on Enum.__deepcopy__\r\n\r\nCo-authored-by: James Hilton-Balfe \r\n\r\n---------\r\n\r\nCo-authored-by: James Hilton-Balfe ","shortMessageHtmlLink":"Add betterproto.Enum __copy__ and __deepcopy__ implementations (#566)"}},{"before":"e98c47861d5607f4cadab0bcec5016ba2093b632","after":"126b256b4c541832e1e5a5f898c1263dd4b06995","ref":"refs/heads/master","pushedAt":"2024-03-24T00:56:48.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"ci: Use GITHUB_OUTPUT envvar instead of set-output command (#553)\n\n* ci: Use GITHUB_OUTPUT envvar instead of set-output command\r\n\r\n* Quote envvar to match documentation","shortMessageHtmlLink":"ci: Use GITHUB_OUTPUT envvar instead of set-output command (#553)"}},{"before":"dbd31929d31362befd0d16b56aacad71ae831145","after":"e98c47861d5607f4cadab0bcec5016ba2093b632","ref":"refs/heads/master","pushedAt":"2024-03-23T21:43:56.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"refactor: use `is` instead of `==` (#560)\n\nPLACEHOLDER is a specific instance of an object, the test here should be \"is not\" instead of \"!=\"\r\nI am experimenting with adding ndarray support, and the equality test here causes problems.","shortMessageHtmlLink":"refactor: use is instead of == (#560)"}},{"before":"5666393f9d10e13609d8eeac8d1ab3815dce5fd6","after":"dbd31929d31362befd0d16b56aacad71ae831145","ref":"refs/heads/master","pushedAt":"2024-03-19T21:54:32.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Add one-of `match` example to README (#558)\n\nRemoved the parts of the example that showed accessing an unset value, as it now raises an `AttributeError`, and added an example of the `match` way of accessing the attributes.\r\n\r\nRelated to #510 and #358.","shortMessageHtmlLink":"Add one-of match example to README (#558)"}},{"before":"ce5093eec0fe45e5087d8d6154b97c92acf11355","after":"5666393f9d10e13609d8eeac8d1ab3815dce5fd6","ref":"refs/heads/master","pushedAt":"2024-01-02T20:16:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"betterproto: support `Struct` and `Value` (#551)\n\n* betterproto: support `Struct` and `Value`\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n* betterproto: handle struct in to_dict as well\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n* tests: add Struct roundtrip tests\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n* specialize from_dict and to_dict on Struct\r\n\r\n...rather than special-casing in the Message ABC.\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n* betterproto: `poe format`\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n* Update src/betterproto/__init__.py\r\n\r\nCo-authored-by: James Hilton-Balfe \r\n\r\n* remove future annotations\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n* replace type[...] with typing.T\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n* quote instead\r\n\r\nSigned-off-by: William Woodruff \r\n\r\n---------\r\n\r\nSigned-off-by: William Woodruff \r\nCo-authored-by: James Hilton-Balfe ","shortMessageHtmlLink":"betterproto: support Struct and Value (#551)"}},{"before":"b8a091ae7055dd949d193695a06c9536ad51eea8","after":"ce5093eec0fe45e5087d8d6154b97c92acf11355","ref":"refs/heads/master","pushedAt":"2024-01-02T14:49:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Upgrade actions to 3.12 (#550)","shortMessageHtmlLink":"Upgrade actions to 3.12 (#550)"}},{"before":"d34b16993d73d49ae87849dd3fd881b22621fb70","after":"b8a091ae7055dd949d193695a06c9536ad51eea8","ref":"refs/heads/master","pushedAt":"2023-12-16T13:36:53.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Turn off doc-string line wrapping (#532)","shortMessageHtmlLink":"Turn off doc-string line wrapping (#532)"}},{"before":"bd7de203e16e949666b2844b3dec1eb7c4ed523c","after":"d34b16993d73d49ae87849dd3fd881b22621fb70","ref":"refs/heads/master","pushedAt":"2023-12-07T00:21:30.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Use external package `betterproto-rust-codec` for better (de-)serialization performance (#545)\n\n* optionally use betterproto-rust-codec\r\n* monkey patch `parse` and `__bytes__`","shortMessageHtmlLink":"Use external package betterproto-rust-codec for better (de-)seriali…"}},{"before":"b9ec59f2a3e95afe5163197096adb91ade7ec36b","after":"88e82c5a8a24a7e610bec0ef49a85468ca49fc4d","ref":"refs/heads/vsyrakis/nested-enum-collisions","pushedAt":"2023-11-01T00:36:02.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Save recent progres... WIP","shortMessageHtmlLink":"Save recent progres... WIP"}},{"before":"d9b7608980aa04672f5430e8fe90f08d947c0423","after":"bd7de203e16e949666b2844b3dec1eb7c4ed523c","ref":"refs/heads/master","pushedAt":"2023-10-25T21:35:16.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Remove Enum prefixes (#187)\n\nCo-authored-by: nat \r\nCo-authored-by: Tim Schmidt \r\nCo-authored-by: Arun Babu Neelicattu ","shortMessageHtmlLink":"Remove Enum prefixes (#187)"}},{"before":"02aa4e88b795268b6e962574d14070f4b60f1d13","after":"d9b7608980aa04672f5430e8fe90f08d947c0423","ref":"refs/heads/master","pushedAt":"2023-10-25T21:20:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Support `Message.from_dict()` as a class and an instance method (#476)\n\n* Make Message.from_dict() a class method\r\n\r\nSigned-off-by: Marek Pikuła \r\n\r\n* Sync 1/2 of review comments\r\n\r\n* Sync other half\r\n\r\n* Update .pre-commit-config.yaml\r\n\r\n* Update __init__.py\r\n\r\n* Update utils.py\r\n\r\n* Update src/betterproto/__init__.py\r\n\r\n* Update .pre-commit-config.yaml\r\n\r\n* Update __init__.py\r\n\r\n* Update utils.py\r\n\r\n* Fix CI again\r\n\r\n* Fix failing formatting\r\n\r\n---------\r\n\r\nSigned-off-by: Marek Pikuła \r\nCo-authored-by: James Hilton-Balfe ","shortMessageHtmlLink":"Support Message.from_dict() as a class and an instance method (#476)"}},{"before":null,"after":"90ce6e31f47b9ae9ba2e88784eeefc1258c4f245","ref":"refs/heads/classmethod_from_dict","pushedAt":"2023-10-24T15:05:00.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Fixes","shortMessageHtmlLink":"Fixes"}},{"before":"1dd001b6d36967fb747538b81f6209900137c2a9","after":"02aa4e88b795268b6e962574d14070f4b60f1d13","ref":"refs/heads/master","pushedAt":"2023-10-17T23:41:10.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Fix _Timestamp edge cases (#534)\n\n* Add failing test cases for timestamp conversion\r\n\r\n* Fix timestamp to datetime conversion\r\n\r\n* Fix formatting\r\n\r\n* Move timestamp tests outside of inputs folder\r\n\r\n---------\r\n\r\nCo-authored-by: Lukas Bindreiter \r\nCo-authored-by: James Hilton-Balfe ","shortMessageHtmlLink":"Fix _Timestamp edge cases (#534)"}},{"before":"8153fa441c00c8d4ab9bdd70f8df535f5cdffeae","after":null,"ref":"refs/heads/Gobot1234-add-codeql","pushedAt":"2023-10-17T22:55:29.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"}},{"before":"e3095131313a3c36fc00dea1a07023d1d165890d","after":"1dd001b6d36967fb747538b81f6209900137c2a9","ref":"refs/heads/master","pushedAt":"2023-10-17T22:55:28.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Add CodeQL scanning (#418)","shortMessageHtmlLink":"Add CodeQL scanning (#418)"}},{"before":"24db53290edb7d22120fa9a67e99ba636d8524ff","after":"e3095131313a3c36fc00dea1a07023d1d165890d","ref":"refs/heads/master","pushedAt":"2023-10-17T22:54:23.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Fix `_stream_unary` not working with empty iterables (#422)\n\n* Fixed `do_many_things` method in `ThingService`\r\n* Added test for empty iterables\r\n* Fixed `_stream_unary` not sending request first","shortMessageHtmlLink":"Fix _stream_unary not working with empty iterables (#422)"}},{"before":"2bcb05a905d8f790a2f8943956076eef479f3306","after":"24db53290edb7d22120fa9a67e99ba636d8524ff","ref":"refs/heads/master","pushedAt":"2023-10-17T13:56:58.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Fix Tox to use Poetry hermetically (#531)","shortMessageHtmlLink":"Fix Tox to use Poetry hermetically (#531)"}},{"before":"1bcaea1261b32a70fe53b1f6f8af38b2929fa4e6","after":null,"ref":"refs/heads/Gobot1234-patch-1","pushedAt":"2023-10-16T11:33:43.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"}},{"before":"ca6b9fe1a2ccf7e8a9b02085a56de905e89eea69","after":"2bcb05a905d8f790a2f8943956076eef479f3306","ref":"refs/heads/master","pushedAt":"2023-10-16T11:33:42.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Tests for #523 (#538)","shortMessageHtmlLink":"Tests for #523 (#538)"}},{"before":"5ac5a92ab46da5cb9375a31b20660f51317ae7a1","after":"1bcaea1261b32a70fe53b1f6f8af38b2929fa4e6","ref":"refs/heads/Gobot1234-patch-1","pushedAt":"2023-10-16T11:29:40.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"fmt","shortMessageHtmlLink":"fmt"}},{"before":"19a1c4cf889edb7989c366bd534d8becd95f11d2","after":"5ac5a92ab46da5cb9375a31b20660f51317ae7a1","ref":"refs/heads/Gobot1234-patch-1","pushedAt":"2023-10-16T11:25:16.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Engage brain lol","shortMessageHtmlLink":"Engage brain lol"}},{"before":null,"after":"19a1c4cf889edb7989c366bd534d8becd95f11d2","ref":"refs/heads/Gobot1234-patch-1","pushedAt":"2023-10-16T11:23:51.000Z","pushType":"branch_creation","commitsCount":0,"pusher":{"login":"Gobot1234","name":"James Hilton-Balfe","path":"/Gobot1234","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/50501825?s=80&v=4"},"commit":{"message":"Tests for #523","shortMessageHtmlLink":"Tests for #523"}},{"before":"fa25d17acb9c0f9defdfa666ce49eb29b7423934","after":null,"ref":"refs/heads/vsyrakis/add-pickle-methods","pushedAt":"2023-10-16T11:17:16.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"}},{"before":"4f18ed1325d008d140a435640c470e965abb473b","after":"ca6b9fe1a2ccf7e8a9b02085a56de905e89eea69","ref":"refs/heads/master","pushedAt":"2023-10-16T11:17:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Implementing pickle methods (#535)\n\nContinuing work from #484 by @kevinaud to fix #419\r\n\r\n* Implementing pickle methods\r\n* Implement __copy__, __reduce__, and fix __setstate__\r\n* Moved pickling tests into their own file\r\n* Add test for caching","shortMessageHtmlLink":"Implementing pickle methods (#535)"}},{"before":"06e94c9f038ce16d4aa647ebb3bcb01a18757191","after":"fa25d17acb9c0f9defdfa666ce49eb29b7423934","ref":"refs/heads/vsyrakis/add-pickle-methods","pushedAt":"2023-10-16T11:08:34.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Add test for caching","shortMessageHtmlLink":"Add test for caching"}},{"before":"abe3fdbd175ef71e6d2e94ac95e71e66742536e6","after":"06e94c9f038ce16d4aa647ebb3bcb01a18757191","ref":"refs/heads/vsyrakis/add-pickle-methods","pushedAt":"2023-10-16T11:06:39.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Add test for caching","shortMessageHtmlLink":"Add test for caching"}},{"before":"d256ec1626b087e5db288a438778d65537877b74","after":"abe3fdbd175ef71e6d2e94ac95e71e66742536e6","ref":"refs/heads/vsyrakis/add-pickle-methods","pushedAt":"2023-10-16T11:04:33.000Z","pushType":"force_push","commitsCount":0,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Add test for caching","shortMessageHtmlLink":"Add test for caching"}},{"before":"6b36b9ba9ffda8a7b3b488b774729c834db8ae0d","after":"4f18ed1325d008d140a435640c470e965abb473b","ref":"refs/heads/master","pushedAt":"2023-10-16T10:59:33.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"cetanu","name":"Vasilios","path":"/cetanu","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/2289018?s=80&v=4"},"commit":{"message":"Add support for streaming delimited messages (#529)\n\n* Add support for streaming delimited messages\r\n\r\nThis allows developers to easily dump and load multiple messages\r\nfrom a stream in a way that is compatible with official\r\nprotobuf implementations (such as Java's\r\n`MessageLite#writeDelimitedTo(...)`).\r\n\r\n* Add Java compatibility tests for streaming\r\n\r\nThese tests stream data such as messages to output files, have a\r\nJava binary read them and then write them back using the\r\n`protobuf-java` functions, and then read them back in on the Python\r\nside to check that the returned data is as expected. This checks\r\nthat the official Java implementation (and so any other matching\r\nimplementations) can properly parse outputs from Betterproto, and\r\nvice-versa, ensuring compatibility in these functions between the\r\ntwo.\r\n\r\n* Replace `xxxxableBuffer` with `SupportsXxxx`","shortMessageHtmlLink":"Add support for streaming delimited messages (#529)"}}],"hasNextPage":true,"hasPreviousPage":false,"activityType":"all","actor":null,"timePeriod":"all","sort":"DESC","perPage":30,"cursor":"djE6ks8AAAAEL9AKwgA","startCursor":null,"endCursor":null}},"title":"Activity · danielgtaylor/python-betterproto"}