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 #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 #35933 (comment).
Component(s)
Python