I've noticed a couple of places in the code where we do runtime imports of Series just to do values = Series(values)._values. It would be nice to avoid that.

This probably also means moving parts of internals.construction to somewhere like arrays.array_. In particular I think this would require moving sanitize_array and _try_cast. Since sanitize_array is imported by other modules, this would be nice to have non-internals anyway.

Finally there are some functions in dtype.cast that might make more sense alongside sanitize_array, e.g. construct_1d_object_array_from_listlike

Comment From: jbrockmendel

pd.array now uses maybe_convert_objects. This is as close as we're going to get until at least PDEP16 is fully implemented. Closing.