Open
Description
This is an umbrella issue to resolve issues in serialization and deserialization.
We have some customer issues about serialization:
- delete_entity with TableEntity requires RowKey to be string #26360
- Better int64 support #24499
- _to_entity_int32 is not appropriate for Python integers #35554
Besides that, we should:
- [Tables] Support existing edm types in an entity #23997
- And align serialization sequence difference between sync and async clients in
update_entity
andupsert_entity
( from comment: [Tables] Generate code with the latest autorest #31862 (comment))
We also have a customer issue about deserialization:
After these sub issues are resolved, we should:
- Clean up serialize.py and deserialize.py.
Here are some thoughts about current Entity implementations:
- Comparing with other languages, Python doesn't have a concrete definition of Entity. This will cause a potential problem that the same entity can be used in Python but not in other languages. We should make Entity compatible with other languages after.
- The current way that we define
EntityProperty
is not easy to understand.
For example, there's a customer issue complaining about better support for int64 in serialization layer.
Some resources:
- https://gist.github.com/annatisch/600f9040aee9b0f60c030d1b9e6b73f0
- Probably can get some ideas from
azure-core