Finding some things that don't behave in The Obvious Way: - [x] `dtypes.common.is_period` Never used outside of tests, checks for PeriodDtype-like arrays, _not_ `Period` scalar. - [ ] `dtypes.common.is_datetimelike` Checks for `datetime64_dtype`, `datetime64tz_dtype`, `PeriodIndex`, or `timedelta64_dtype`, the last of which is not obvious (and in fact caused some bugs that will be fixed by #22074) - [x] `dtypes.common.is_int_or_datetime_dtype` only used in two places, better to write out the conditions explicitly. - [x] `dtypes.common.is_floating_dtype` deprecated in 0.20.0, is it too early to remove? - [x] `dtypes.common.is_datetimetz` appears to be a duplicate of `is_datetime64tz_dtype` - [x] `lib.is_integer` Returns `True` for timedelta64 objects; inconsistent with `is_integer_dtype` which excludes timedelta64.