Skip to content

Commit a677315

Browse files
authored
Merge branch 'main' into fix-issue-61221
2 parents cfb5e92 + 839747c commit a677315

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

62 files changed

+1112
-342
lines changed

.github/workflows/unit-tests.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
strategy:
2828
matrix:
2929
platform: [ubuntu-22.04, ubuntu-24.04-arm]
30-
env_file: [actions-310.yaml, actions-311.yaml, actions-312.yaml]
30+
env_file: [actions-310.yaml, actions-311.yaml, actions-312.yaml, actions-313.yaml]
3131
# Prevent the include jobs from overriding other jobs
3232
pattern: [""]
3333
pandas_future_infer_string: ["0"]
@@ -188,7 +188,7 @@ jobs:
188188
matrix:
189189
# Note: Don't use macOS latest since macos 14 appears to be arm64 only
190190
os: [macos-13, macos-14, windows-latest]
191-
env_file: [actions-310.yaml, actions-311.yaml, actions-312.yaml]
191+
env_file: [actions-310.yaml, actions-311.yaml, actions-312.yaml, actions-313.yaml]
192192
fail-fast: false
193193
runs-on: ${{ matrix.os }}
194194
name: ${{ format('{0} {1}', matrix.os, matrix.env_file) }}
@@ -316,7 +316,7 @@ jobs:
316316
# To freeze this file, uncomment out the ``if: false`` condition, and migrate the jobs
317317
# to the corresponding posix/windows-macos/sdist etc. workflows.
318318
# Feel free to modify this comment as necessary.
319-
# if: false # Uncomment this to freeze the workflow, comment it to unfreeze
319+
if: false
320320
defaults:
321321
run:
322322
shell: bash -eou pipefail {0}

.github/workflows/wheels.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -153,7 +153,7 @@ jobs:
153153
run: echo "sdist_name=$(cd ./dist && ls -d */)" >> "$GITHUB_ENV"
154154

155155
- name: Build wheels
156-
uses: pypa/[email protected].2
156+
uses: pypa/[email protected].3
157157
with:
158158
package-dir: ./dist/${{ startsWith(matrix.buildplat[1], 'macosx') && env.sdist_name || needs.build_sdist.outputs.sdist_file }}
159159
env:

.pre-commit-config.yaml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ ci:
1919
skip: [pyright, mypy]
2020
repos:
2121
- repo: https://github.com/astral-sh/ruff-pre-commit
22-
rev: v0.11.4
22+
rev: v0.11.8
2323
hooks:
2424
- id: ruff
2525
args: [--exit-non-zero-on-fix]
@@ -95,14 +95,14 @@ repos:
9595
- id: sphinx-lint
9696
args: ["--enable", "all", "--disable", "line-too-long"]
9797
- repo: https://github.com/pre-commit/mirrors-clang-format
98-
rev: v20.1.0
98+
rev: v20.1.3
9999
hooks:
100100
- id: clang-format
101101
files: ^pandas/_libs/src|^pandas/_libs/include
102102
args: [-i]
103103
types_or: [c, c++]
104104
- repo: https://github.com/trim21/pre-commit-mirror-meson
105-
rev: v1.7.2
105+
rev: v1.8.0
106106
hooks:
107107
- id: meson-fmt
108108
args: ['--inplace']

Dockerfile

Lines changed: 12 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,20 @@
11
FROM python:3.10.8
22
WORKDIR /home/pandas
33

4-
RUN apt-get update && apt-get -y upgrade
5-
RUN apt-get install -y build-essential bash-completion
4+
RUN apt-get update && \
5+
apt-get --no-install-recommends -y upgrade && \
6+
apt-get --no-install-recommends -y install \
7+
build-essential \
8+
bash-completion \
9+
# hdf5 needed for pytables installation
10+
libhdf5-dev \
11+
# libgles2-mesa needed for pytest-qt
12+
libgles2-mesa-dev && \
13+
rm -rf /var/lib/apt/lists/*
614

7-
# hdf5 needed for pytables installation
8-
# libgles2-mesa needed for pytest-qt
9-
RUN apt-get install -y libhdf5-dev libgles2-mesa-dev
10-
11-
RUN python -m pip install --upgrade pip
1215
COPY requirements-dev.txt /tmp
13-
RUN python -m pip install -r /tmp/requirements-dev.txt
16+
RUN python -m pip install --no-cache-dir --upgrade pip && \
17+
python -m pip install --no-cache-dir -r /tmp/requirements-dev.txt
1418
RUN git config --global --add safe.directory /home/pandas
1519

1620
ENV SHELL="/bin/bash"

ci/deps/actions-310-minimum_versions.yaml

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ dependencies:
2626

2727
# optional dependencies
2828
- beautifulsoup4=4.12.3
29-
- blosc=1.21.3
3029
- bottleneck=1.3.6
3130
- fastparquet=2024.2.0
3231
- fsspec=2024.2.0

ci/deps/actions-310.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ dependencies:
2424

2525
# optional dependencies
2626
- beautifulsoup4>=4.12.3
27-
- blosc>=1.21.3
2827
- bottleneck>=1.3.6
2928
- fastparquet>=2024.2.0
3029
- fsspec>=2024.2.0
@@ -52,7 +51,7 @@ dependencies:
5251
- scipy>=1.12.0
5352
- sqlalchemy>=2.0.0
5453
- tabulate>=0.9.0
55-
- xarray>=2024.1.1, <=2024.9.0
54+
- xarray>=2024.1.1
5655
- xlrd>=2.0.1
5756
- xlsxwriter>=3.2.0
5857
- zstandard>=0.22.0

ci/deps/actions-311-downstream_compat.yaml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,6 @@ dependencies:
2525

2626
# optional dependencies
2727
- beautifulsoup4>=4.12.3
28-
- blosc>=1.21.3
2928
- bottleneck>=1.3.6
3029
- fastparquet>=2024.2.0
3130
- fsspec>=2024.2.0
@@ -53,7 +52,7 @@ dependencies:
5352
- scipy>=1.12.0
5453
- sqlalchemy>=2.0.0
5554
- tabulate>=0.9.0
56-
- xarray>=2024.1.1, <=2024.9.0
55+
- xarray>=2024.1.1
5756
- xlrd>=2.0.1
5857
- xlsxwriter>=3.2.0
5958
- zstandard>=0.22.0
@@ -63,14 +62,12 @@ dependencies:
6362
- cftime
6463
- dask
6564
- ipython
66-
- geopandas-base
6765
- seaborn
6866
- scikit-learn
6967
- statsmodels
7068
- coverage
7169
- pandas-datareader
7270
- pyyaml
73-
- py
7471
- pip:
7572
- adbc-driver-postgresql>=0.10.0
7673
- adbc-driver-sqlite>=0.8.0

ci/deps/actions-311.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ dependencies:
2424

2525
# optional dependencies
2626
- beautifulsoup4>=4.12.3
27-
- blosc>=1.21.3
2827
- bottleneck>=1.3.6
2928
- fastparquet>=2024.2.0
3029
- fsspec>=2024.2.0
@@ -52,7 +51,7 @@ dependencies:
5251
- scipy>=1.12.0
5352
- sqlalchemy>=2.0.0
5453
- tabulate>=0.9.0
55-
- xarray>=2024.1.1, <=2024.9.0
54+
- xarray>=2024.1.1
5655
- xlrd>=2.0.1
5756
- xlsxwriter>=3.2.0
5857
- zstandard>=0.22.0

ci/deps/actions-312.yaml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ dependencies:
2424

2525
# optional dependencies
2626
- beautifulsoup4>=4.12.3
27-
- blosc>=1.21.3
2827
- bottleneck>=1.3.6
2928
- fastparquet>=2024.2.0
3029
- fsspec>=2024.2.0
@@ -52,7 +51,7 @@ dependencies:
5251
- scipy>=1.12.0
5352
- sqlalchemy>=2.0.0
5453
- tabulate>=0.9.0
55-
- xarray>=2024.1.1, <=2024.9.0
54+
- xarray>=2024.1.1
5655
- xlrd>=2.0.1
5756
- xlsxwriter>=3.2.0
5857
- zstandard>=0.22.0

ci/deps/actions-313.yaml

Lines changed: 63 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,63 @@
1+
name: pandas-dev-313
2+
channels:
3+
- conda-forge
4+
dependencies:
5+
- python=3.13
6+
7+
# build dependencies
8+
- versioneer
9+
- cython>=0.29.33
10+
- meson=1.2.1
11+
- meson-python=0.13.1
12+
13+
# test dependencies
14+
- pytest>=7.3.2
15+
- pytest-cov
16+
- pytest-xdist>=3.4.0
17+
- pytest-localserver>=0.8.1
18+
- pytest-qt>=4.4.0
19+
- boto3
20+
21+
# required dependencies
22+
- python-dateutil
23+
- numpy
24+
25+
# optional dependencies
26+
- beautifulsoup4>=4.12.3
27+
- blosc>=1.21.3
28+
- bottleneck>=1.3.6
29+
- fastparquet>=2024.2.0
30+
- fsspec>=2024.2.0
31+
- html5lib>=1.1
32+
- hypothesis>=6.84.0
33+
- gcsfs>=2024.2.0
34+
- jinja2>=3.1.3
35+
- lxml>=4.9.2
36+
- matplotlib>=3.8.3
37+
- numba>=0.59.0
38+
- numexpr>=2.9.0
39+
- odfpy>=1.4.1
40+
- qtpy>=2.3.0
41+
- pyqt>=5.15.9
42+
- openpyxl>=3.1.2
43+
- psycopg2>=2.9.6
44+
- pyarrow>=10.0.1
45+
- pymysql>=1.1.0
46+
- pyreadstat>=1.2.6
47+
- pytables>=3.8.0
48+
- python-calamine>=0.1.7
49+
- pytz>=2023.4
50+
- pyxlsb>=1.0.10
51+
- s3fs>=2024.2.0
52+
- scipy>=1.12.0
53+
- sqlalchemy>=2.0.0
54+
- tabulate>=0.9.0
55+
- xarray>=2024.1.1
56+
- xlrd>=2.0.1
57+
- xlsxwriter>=3.2.0
58+
- zstandard>=0.22.0
59+
60+
- pip:
61+
- adbc-driver-postgresql>=0.10.0
62+
- adbc-driver-sqlite>=0.8.0
63+
- tzdata>=2022.7

doc/cheatsheet/Pandas_Cheat_Sheet.pdf

63.4 KB
Binary file not shown.
187 KB
Binary file not shown.

doc/cheatsheet/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ This cheat sheet, originally written by Irv Lustig, [Princeton Consultants](http
1212
| Pandas_Cheat_Sheet_JA | Japanese | <a href="https://github.com/pandas-dev/pandas/blob/main/doc/cheatsheet/Pandas_Cheat_Sheet_JA.pdf" target="_parent"><img src="https://img.shields.io/badge/Open in PDF-%23FF0000.svg?style=flat-square&logo=adobe&logoColor=white"/></a> | <a href="https://github.com/pandas-dev/pandas/blob/main/doc/cheatsheet/Pandas_Cheat_Sheet_JA.pptx" target="_parent"><img src="https://img.shields.io/badge/Open in PPT-B7472A?style=flat-square&logo=microsoft-powerpoint&logoColor=white"/></a> |
1313
| Pandas_Cheat_Sheet_FA | Persian | <a href="https://github.com/pandas-dev/pandas/blob/main/doc/cheatsheet/Pandas_Cheat_Sheet_FA.pdf" target="_parent"><img src="https://img.shields.io/badge/Open in PDF-%23FF0000.svg?style=flat-square&logo=adobe&logoColor=white"/></a> | <a href="https://github.com/pandas-dev/pandas/blob/main/doc/cheatsheet/Pandas_Cheat_Sheet_FA.pptx" target="_parent"><img src="https://img.shields.io/badge/Open in PPT-B7472A?style=flat-square&logo=microsoft-powerpoint&logoColor=white"/></a> |
1414

15-
15+
The English version has additional material that is not in the versions in other languages.
1616

1717
**Alternative**
1818

doc/source/_static/css/getting_started.css

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -249,13 +249,15 @@ ul.task-bullet > li > p:first-child {
249249

250250
.tutorial-card .card-header {
251251
--bs-card-cap-color: var(--pst-color-text-base);
252+
color: var(--pst-color-text-base);
252253
cursor: pointer;
253254
background-color: var(--pst-color-surface);
254255
border: 1px solid var(--pst-color-border)
255256
}
256257

257258
.tutorial-card .card-body {
258259
background-color: var(--pst-color-on-background);
260+
color: var(--pst-color-text-base);
259261
}
260262

261263
.tutorial-card .badge {

doc/source/getting_started/install.rst

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -305,7 +305,6 @@ Installable with ``pip install "pandas[hdf5, parquet, feather, spss, excel]"``
305305
Dependency Minimum Version pip extra Notes
306306
====================================================== ================== ================ ==========================================================
307307
`PyTables <https://github.com/PyTables/PyTables>`__ 3.8.0 hdf5 HDF5-based reading / writing
308-
`blosc <https://github.com/Blosc/c-blosc>`__ 1.21.3 hdf5 Compression for HDF5; only available on ``conda``
309308
`zlib <https://github.com/madler/zlib>`__ hdf5 Compression for HDF5
310309
`fastparquet <https://github.com/dask/fastparquet>`__ 2024.2.0 - Parquet reading / writing (pyarrow is default)
311310
`pyarrow <https://github.com/apache/arrow>`__ 10.0.1 parquet, feather Parquet, ORC, and feather reading / writing

doc/source/getting_started/intro_tutorials/includes/titanic.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ This tutorial uses the Titanic data set, stored as CSV. The data
1111
consists of the following data columns:
1212

1313
- PassengerId: Id of every passenger.
14-
- Survived: Indication whether passenger survived. ``0`` for yes and ``1`` for no.
14+
- Survived: Indication whether passenger survived. ``0`` for no and ``1`` for yes.
1515
- Pclass: One out of the 3 ticket classes: Class ``1``, Class ``2`` and Class ``3``.
1616
- Name: Name of passenger.
1717
- Sex: Gender of passenger.

doc/source/reference/arrays.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -664,6 +664,7 @@ Data type introspection
664664
api.types.is_datetime64_dtype
665665
api.types.is_datetime64_ns_dtype
666666
api.types.is_datetime64tz_dtype
667+
api.types.is_dtype_equal
667668
api.types.is_extension_array_dtype
668669
api.types.is_float_dtype
669670
api.types.is_int64_dtype

doc/source/user_guide/io.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@ The pandas I/O API is a set of top level ``reader`` functions accessed like
2626
text, Local clipboard, :ref:`read_clipboard<io.clipboard>`, :ref:`to_clipboard<io.clipboard>`
2727
binary,`MS Excel <https://en.wikipedia.org/wiki/Microsoft_Excel>`__ , :ref:`read_excel<io.excel_reader>`, :ref:`to_excel<io.excel_writer>`
2828
binary,`OpenDocument <http://opendocumentformat.org>`__, :ref:`read_excel<io.ods>`, NA
29-
binary,`HDF5 Format <https://support.hdfgroup.org/HDF5/whatishdf5.html>`__, :ref:`read_hdf<io.hdf5>`, :ref:`to_hdf<io.hdf5>`
29+
binary,`HDF5 Format <https://support.hdfgroup.org/documentation/hdf5/latest/_intro_h_d_f5.html>`__, :ref:`read_hdf<io.hdf5>`, :ref:`to_hdf<io.hdf5>`
3030
binary,`Feather Format <https://github.com/wesm/feather>`__, :ref:`read_feather<io.feather>`, :ref:`to_feather<io.feather>`
3131
binary,`Parquet Format <https://parquet.apache.org/>`__, :ref:`read_parquet<io.parquet>`, :ref:`to_parquet<io.parquet>`
3232
binary,`ORC Format <https://orc.apache.org/>`__, :ref:`read_orc<io.orc>`, :ref:`to_orc<io.orc>`

doc/source/whatsnew/v3.0.0.rst

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -693,6 +693,7 @@ Datetimelike
693693
- Bug in :meth:`to_datetime` on float array with missing values throwing ``FloatingPointError`` (:issue:`58419`)
694694
- Bug in :meth:`to_datetime` on float32 df with year, month, day etc. columns leads to precision issues and incorrect result. (:issue:`60506`)
695695
- Bug in :meth:`to_datetime` reports incorrect index in case of any failure scenario. (:issue:`58298`)
696+
- Bug in :meth:`to_datetime` with ``format="ISO8601"`` and ``utc=True`` where naive timestamps incorrectly inherited timezone offset from previous timestamps in a series. (:issue:`61389`)
696697
- Bug in :meth:`to_datetime` wrongly converts when ``arg`` is a ``np.datetime64`` object with unit of ``ps``. (:issue:`60341`)
697698
- Bug in setting scalar values with mismatched resolution into arrays with non-nanosecond ``datetime64``, ``timedelta64`` or :class:`DatetimeTZDtype` incorrectly truncating those scalars (:issue:`56410`)
698699

@@ -710,6 +711,7 @@ Numeric
710711
^^^^^^^
711712
- Bug in :meth:`DataFrame.corr` where numerical precision errors resulted in correlations above ``1.0`` (:issue:`61120`)
712713
- Bug in :meth:`DataFrame.quantile` where the column type was not preserved when ``numeric_only=True`` with a list-like ``q`` produced an empty result (:issue:`59035`)
714+
- Bug in :meth:`Series.dot` returning ``object`` dtype for :class:`ArrowDtype` and nullable-dtype data (:issue:`61375`)
713715
- Bug in ``np.matmul`` with :class:`Index` inputs raising a ``TypeError`` (:issue:`57079`)
714716

715717
Conversion
@@ -767,6 +769,7 @@ I/O
767769
- Bug in :meth:`DataFrame.to_dict` raises unnecessary ``UserWarning`` when columns are not unique and ``orient='tight'``. (:issue:`58281`)
768770
- Bug in :meth:`DataFrame.to_excel` when writing empty :class:`DataFrame` with :class:`MultiIndex` on both axes (:issue:`57696`)
769771
- Bug in :meth:`DataFrame.to_excel` where the :class:`MultiIndex` index with a period level was not a date (:issue:`60099`)
772+
- Bug in :meth:`DataFrame.to_stata` when exporting a column containing both long strings (Stata strL) and :class:`pd.NA` values (:issue:`23633`)
770773
- Bug in :meth:`DataFrame.to_stata` when writing :class:`DataFrame` and ``byteorder=`big```. (:issue:`58969`)
771774
- Bug in :meth:`DataFrame.to_stata` when writing more than 32,000 value labels. (:issue:`60107`)
772775
- Bug in :meth:`DataFrame.to_string` that raised ``StopIteration`` with nested DataFrames. (:issue:`16098`)
@@ -794,9 +797,11 @@ Period
794797
Plotting
795798
^^^^^^^^
796799
- Bug in :meth:`.DataFrameGroupBy.boxplot` failed when there were multiple groupings (:issue:`14701`)
800+
- Bug in :meth:`DataFrame.plot.bar` when ``subplots`` and ``stacked=True`` are used in conjunction which causes incorrect stacking. (:issue:`61018`)
797801
- Bug in :meth:`DataFrame.plot.bar` with ``stacked=True`` where labels on stacked bars with zero-height segments were incorrectly positioned at the base instead of the label position of the previous segment (:issue:`59429`)
798802
- Bug in :meth:`DataFrame.plot.line` raising ``ValueError`` when set both color and a ``dict`` style (:issue:`59461`)
799803
- Bug in :meth:`DataFrame.plot` that causes a shift to the right when the frequency multiplier is greater than one. (:issue:`57587`)
804+
- Bug in :meth:`DataFrame.plot` where ``title`` would require extra titles when plotting more than one column per subplot. (:issue:`61019`)
800805
- Bug in :meth:`Series.plot` preventing a line and bar from being aligned on the same plot (:issue:`61161`)
801806
- Bug in :meth:`Series.plot` preventing a line and scatter plot from being aligned (:issue:`61005`)
802807
- Bug in :meth:`Series.plot` with ``kind="pie"`` with :class:`ArrowDtype` (:issue:`59192`)
@@ -805,10 +810,12 @@ Groupby/resample/rolling
805810
^^^^^^^^^^^^^^^^^^^^^^^^
806811
- Bug in :meth:`.DataFrameGroupBy.__len__` and :meth:`.SeriesGroupBy.__len__` would raise when the grouping contained NA values and ``dropna=False`` (:issue:`58644`)
807812
- Bug in :meth:`.DataFrameGroupBy.any` that returned True for groups where all Timedelta values are NaT. (:issue:`59712`)
813+
- Bug in :meth:`.DataFrameGroupBy.groups` and :meth:`.SeriesGroupBy.groups` would fail when the groups were :class:`Categorical` with an NA value (:issue:`61356`)
808814
- Bug in :meth:`.DataFrameGroupBy.groups` and :meth:`.SeriesGroupby.groups` that would not respect groupby argument ``dropna`` (:issue:`55919`)
809815
- Bug in :meth:`.DataFrameGroupBy.median` where nat values gave an incorrect result. (:issue:`57926`)
810816
- Bug in :meth:`.DataFrameGroupBy.quantile` when ``interpolation="nearest"`` is inconsistent with :meth:`DataFrame.quantile` (:issue:`47942`)
811817
- Bug in :meth:`.Resampler.interpolate` on a :class:`DataFrame` with non-uniform sampling and/or indices not aligning with the resulting resampled index would result in wrong interpolation (:issue:`21351`)
818+
- Bug in :meth:`.Series.rolling` when used with a :class:`.BaseIndexer` subclass and computing min/max (:issue:`46726`)
812819
- Bug in :meth:`DataFrame.ewm` and :meth:`Series.ewm` when passed ``times`` and aggregation functions other than mean (:issue:`51695`)
813820
- Bug in :meth:`DataFrame.resample` and :meth:`Series.resample` were not keeping the index name when the index had :class:`ArrowDtype` timestamp dtype (:issue:`61222`)
814821
- Bug in :meth:`DataFrame.resample` changing index type to :class:`MultiIndex` when the dataframe is empty and using an upsample method (:issue:`55572`)
@@ -834,6 +841,7 @@ Reshaping
834841
- Bug in :meth:`DataFrame.unstack` producing incorrect results when ``sort=False`` (:issue:`54987`, :issue:`55516`)
835842
- Bug in :meth:`DataFrame.merge` when merging two :class:`DataFrame` on ``intc`` or ``uintc`` types on Windows (:issue:`60091`, :issue:`58713`)
836843
- Bug in :meth:`DataFrame.pivot_table` incorrectly subaggregating results when called without an ``index`` argument (:issue:`58722`)
844+
- Bug in :meth:`DataFrame.pivot_table` incorrectly ignoring the ``values`` argument when also supplied to the ``index`` or ``columns`` parameters (:issue:`57876`, :issue:`61292`)
837845
- Bug in :meth:`DataFrame.stack` with the new implementation where ``ValueError`` is raised when ``level=[]`` (:issue:`60740`)
838846
- Bug in :meth:`DataFrame.unstack` producing incorrect results when manipulating empty :class:`DataFrame` with an :class:`ExtentionDtype` (:issue:`59123`)
839847
- Bug in :meth:`DataFrame.unstack` where when sort is False, in frames with NA columns, unstacking causing errors or improper orders (:issue:`61221`)

environment.yml

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ dependencies:
2727

2828
# optional dependencies
2929
- beautifulsoup4>=4.12.3
30-
- blosc
3130
- bottleneck>=1.3.6
3231
- fastparquet>=2024.2.0
3332
- fsspec>=2024.2.0
@@ -55,7 +54,7 @@ dependencies:
5554
- scipy>=1.12.0
5655
- sqlalchemy>=2.0.0
5756
- tabulate>=0.9.0
58-
- xarray>=2024.1.1, <=2024.9.0
57+
- xarray>=2024.1.1
5958
- xlrd>=2.0.1
6059
- xlsxwriter>=3.2.0
6160
- zstandard>=0.22.0
@@ -83,8 +82,6 @@ dependencies:
8382

8483
# documentation
8584
- gitpython # obtain contributors from git for whatsnew
86-
- gitdb
87-
- google-auth
8885
- natsort # DataFrame.sort_values doctest
8986
- numpydoc
9087
- pydata-sphinx-theme=0.16

pandas/__init__.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
__docformat__ = "restructuredtext"
44

55
# Let users know if they're missing any of our hard dependencies
6-
_hard_dependencies = ("numpy", "dateutil")
6+
_hard_dependencies = ("numpy", "dateutil", "tzdata")
77

88
for _dependency in _hard_dependencies:
99
try:

0 commit comments

Comments
 (0)