Skip to main content
`Ctrl`+`K`

# What’s new in 1.2.2 (February 09, 2021)

These are the changes in pandas 1.2.2. See Release notes for a full changelog including other versions of pandas.

## Fixed regressions

- Fixed regression in `read_excel()` that caused it to raise `AttributeError` when checking version of older xlrd versions (GH 38955)

- Fixed regression in `DataFrame` constructor reordering element when construction from datetime ndarray with dtype not `"datetime64[ns]"` (GH 39422)

- Fixed regression in `DataFrame.astype()` and `Series.astype()` not casting to bytes dtype (GH 39474)

- Fixed regression in `to_pickle()` failing to create bz2/xz compressed pickle files with `protocol=5` (GH 39002)

- Fixed regression in `pandas.testing.assert_series_equal()` and `pandas.testing.assert_frame_equal()` always raising `AssertionError` when comparing extension dtypes (GH 39410)

- Fixed regression in `to_csv()` opening `codecs.StreamWriter` in binary mode instead of in text mode and ignoring user-provided `mode` (GH 39247)

- Fixed regression in `Categorical.astype()` casting to incorrect dtype when `np.int32` is passed to dtype argument (GH 39402)

- Fixed regression in `to_excel()` creating corrupt files when appending (`mode="a"`) to an existing file (GH 39576)

- Fixed regression in `DataFrame.transform()` failing in case of an empty DataFrame or Series (GH 39636)

- Fixed regression in `groupby()` or `resample()` when aggregating an all-NaN or numeric object dtype column (GH 39329)

- Fixed regression in `Rolling.count()` where the `min_periods` argument would be set to `0` after the operation (GH 39554)

- Fixed regression in `read_excel()` that incorrectly raised when the argument `io` was a non-path and non-buffer and the `engine` argument was specified (GH 39528)

## Bug fixes

- `pandas.read_excel()` error message when a specified `sheetname` does not exist is now uniform across engines (GH 39250)

- Fixed bug in `pandas.read_excel()` producing incorrect results when the engine `openpyxl` is used and the excel file is missing or has incorrect dimension information; the fix requires `openpyxl` >= 3.0.0, prior versions may still fail (GH 38956, GH 39001)

- Fixed bug in `pandas.read_excel()` sometimes producing a `DataFrame` with trailing rows of `np.nan` when the engine `openpyxl` is used (GH 39181)

## Contributors

For contributors, please see /usr/share/doc/contributors_list.txt or https://github.com/pandas-dev/pandas/graphs/contributors