You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: doc/source/whatsnew/v3.0.0.rst
+35
Original file line number
Diff line number
Diff line change
@@ -50,6 +50,7 @@ Other enhancements
50
50
- :meth:`DataFrame.pivot_table` and :func:`pivot_table` now allow the passing of keyword arguments to ``aggfunc`` through ``**kwargs`` (:issue:`57884`)
51
51
- :meth:`Series.cummin` and :meth:`Series.cummax` now supports :class:`CategoricalDtype` (:issue:`52335`)
52
52
- :meth:`Series.plot` now correctly handle the ``ylabel`` parameter for pie charts, allowing for explicit control over the y-axis label (:issue:`58239`)
53
+
- :meth:`pandas.concat` will raise a ``ValueError`` when ``ignore_index=True`` and ``keys`` is not ``None`` (:issue:`59274`)
53
54
- Multiplying two :class:`DateOffset` objects will now raise a ``TypeError`` instead of a ``RecursionError`` (:issue:`59442`)
54
55
- Restore support for reading Stata 104-format and enable reading 103-format dta files (:issue:`58554`)
55
56
- Support reading Stata 102-format (Stata 1) dta files (:issue:`58978`)
@@ -221,6 +222,8 @@ Optional libraries below the lowest tested version may still work, but are not c
221
222
+------------------------+---------------------+
222
223
| Package | New Minimum Version |
223
224
+========================+=====================+
225
+
| pytz | 2023.4 |
226
+
+------------------------+---------------------+
224
227
| fastparquet | 2023.10.0 |
225
228
+------------------------+---------------------+
226
229
| adbc-driver-postgresql | 0.10.0 |
@@ -230,6 +233,37 @@ Optional libraries below the lowest tested version may still work, but are not c
230
233
231
234
See :ref:`install.dependencies` and :ref:`install.optional_dependencies` for more.
232
235
236
+
.. _whatsnew_300.api_breaking.pytz:
237
+
238
+
``pytz`` now an optional dependency
239
+
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
240
+
241
+
pandas now uses :py:mod:`zoneinfo` from the standard library as the default timezone implementation when passing a timezone
242
+
string to various methods. (:issue:`34916`)
243
+
244
+
*Old behavior:*
245
+
246
+
.. code-block:: ipython
247
+
248
+
In [1]: ts = pd.Timestamp(2024, 1, 1).tz_localize("US/Pacific")
``pytz`` timezone objects are still supported when passed directly, but they will no longer be returned by default
260
+
from string inputs. Moreover, ``pytz`` is no longer a required dependency of pandas, but can be installed
261
+
with the pip extra ``pip install pandas[timezone]``.
262
+
263
+
264
+
Additionally, pandas no longer throws ``pytz`` exceptions for timezone operations leading to ambiguous or nonexistent
265
+
times. These cases will now raise a ``ValueError``.
266
+
233
267
.. _whatsnew_300.api_breaking.other:
234
268
235
269
Other API changes
@@ -621,6 +655,7 @@ Reshaping
621
655
^^^^^^^^^
622
656
- Bug in :func:`qcut` where values at the quantile boundaries could be incorrectly assigned (:issue:`59355`)
623
657
- Bug in :meth:`DataFrame.join` inconsistently setting result index name (:issue:`55815`)
658
+
- Bug in :meth:`DataFrame.merge` where merging on a column containing only ``NaN`` values resulted in an out-of-bounds array access (:issue:`59421`)
624
659
- Bug in :meth:`DataFrame.unstack` producing incorrect results when ``sort=False`` (:issue:`54987`, :issue:`55516`)
625
660
- Bug in :meth:`DataFrame.unstack` producing incorrect results when manipulating empty :class:`DataFrame` with an :class:`ExtentionDtype` (:issue:`59123`)
0 commit comments