[Python] Clean up ExtensionType.__reduce__
Open
Component: Python
Status: needs champion
Type: enhancement
- Dominant language
- C++
- Stars
- 17.1k
- Forks
- 4.3k
- Avg merge
- 3d 13h
- Merged PRs (30d)
- 88
Description
### Describe the enhancement requested
Currently `__reduce__` method is defined on the `ExtensionType` class so that each subclass can be pickled and doesn't need a separate `__reduce__` method (see https://github.com/apache/arrow/pull/36170).
But this can be cleaned up. Instead of defining `__reduce__` for `ExtensionType` we can define `__reduce__` on `BaseExtensionType` and make use of the C++-level (de)serialization. See https://github.com/apache/arrow/pull/35933#issuecomment-1841014923.
### Component(s)
Python
Contributor guide
Assessment
This issue has not been assessed yet.