Skip to content

Tags: Mu-L/fbthrift

Tags

v2025.04.07.00

Toggle v2025.04.07.00's commit message
Remove unused hack compiler options

Summary: Remove `shapes_use_pipe_structure` and `lazy_constants` hack compiler options as they are no longer used.

Reviewed By: rmakheja

Differential Revision: D72522977

fbshipit-source-id: eb246fa5cae7f75535090cf9299a99651f79890e

v2025.03.24.00

Toggle v2025.03.24.00's commit message

v2025.03.10.00

Toggle v2025.03.10.00's commit message
Ser/des benchmarks

Summary: So that we have a baseline/measurements.

Reviewed By: podtserkovskiy

Differential Revision: D70825013

fbshipit-source-id: fe6925401ba8feca182ea9a17ae84f6fe38c73a5

v2025.03.03.00

Toggle v2025.03.03.00's commit message
refactor IG method in TCPS

Summary: Logic in updateIGUserFromVC can be shorted with updateIGUser

Reviewed By: shuyang790

Differential Revision: D70435201

fbshipit-source-id: 97c0260c6c8c0a048fefa42ad1cbaaf0605a4629

v2025.02.24.00

Toggle v2025.02.24.00's commit message
Map repr works with BadEnum

Summary:
For compatibility reasons, the thrift-py3 map sorts keys when printing, to mimic the same ordering as thrift-py3 when the backing type was `std::map`. However, this doesn't work when a customer is deserializing maps with `BadEnum`, which doesn't define `__lt__`. This may occur, e.g., due to deploying packages with out-of-sync enums.

While I generally prefer being strict with type checking, it's reasonable to expect `__repr__` to succeed even with invalid data.

I also considered implementing `__lt__` on `BadEnum`, but prefer the fix in this diff because it avoids adding surface area to thrift-python that silences buggy user behavior.

Reviewed By: fried, yoney

Differential Revision: D70069362

fbshipit-source-id: 3d03d5626e7122df662191e944a955f2d961ee09

v2025.02.17.00

Toggle v2025.02.17.00's commit message
Add a capi conversion no-op method to thrift python structs/unions

Summary: There's a generated python capi method on thrift-py3 structs to initialize from thrift python types. It's a very simple fix to add a no-op method to the base thrift python StructOrUnion class to get these unit tests to start passing now. Since the method is meant to initialize a thrift python struct with a thrift python struct, all that we need to do is return the passed in object (after a basic instance check to make sure no python shenanigans are going on).

Reviewed By: ahilger

Differential Revision: D68867840

fbshipit-source-id: 817381af3586cf7586532c6f94af676cfc16b241