Skip to content

Commit 8608bf0

Browse files
Merge branch 'main' into fix-merge-attrs
2 parents ed40c8d + c5457f6 commit 8608bf0

36 files changed

+358
-200
lines changed

.github/workflows/wheels.yml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -95,6 +95,7 @@ jobs:
9595
- [ubuntu-24.04, manylinux_x86_64]
9696
- [ubuntu-24.04, musllinux_x86_64]
9797
- [ubuntu-24.04-arm, manylinux_aarch64]
98+
- [ubuntu-24.04-arm, musllinux_aarch64]
9899
- [macos-13, macosx_x86_64]
99100
# Note: M1 images on Github Actions start from macOS 14
100101
- [macos-14, macosx_arm64]

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
-----------------
77

8-
# pandas: powerful Python data analysis toolkit
8+
# pandas: A Powerful Python Data Analysis Toolkit
99

1010
| | |
1111
| --- | --- |

doc/source/getting_started/install.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -308,7 +308,7 @@ Dependency Minimum Version pip ex
308308
`zlib <https://github.com/madler/zlib>`__ hdf5 Compression for HDF5
309309
`fastparquet <https://github.com/dask/fastparquet>`__ 2024.2.0 - Parquet reading / writing (pyarrow is default)
310310
`pyarrow <https://github.com/apache/arrow>`__ 10.0.1 parquet, feather Parquet, ORC, and feather reading / writing
311-
`PyIceberg <https://py.iceberg.apache.org/>`__ 0.7.1 iceberg Apache Iceberg reading
311+
`PyIceberg <https://py.iceberg.apache.org/>`__ 0.7.1 iceberg Apache Iceberg reading / writing
312312
`pyreadstat <https://github.com/Roche/pyreadstat>`__ 1.2.6 spss SPSS files (.sav) reading
313313
`odfpy <https://github.com/eea/odfpy>`__ 1.4.1 excel Open document format (.odf, .ods, .odt) reading / writing
314314
====================================================== ================== ================ ==========================================================

doc/source/reference/io.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -162,6 +162,7 @@ Iceberg
162162
:toctree: api/
163163

164164
read_iceberg
165+
DataFrame.to_iceberg
165166

166167
.. warning:: ``read_iceberg`` is experimental and may change without warning.
167168

doc/source/user_guide/io.rst

Lines changed: 25 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ The pandas I/O API is a set of top level ``reader`` functions accessed like
2929
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>`
32-
binary,`Apache Iceberg <https://iceberg.apache.org/>`__, :ref:`read_iceberg<io.iceberg>` , NA
32+
binary,`Apache Iceberg <https://iceberg.apache.org/>`__, :ref:`read_iceberg<io.iceberg>` , :ref:`to_iceberg<io.iceberg>`
3333
binary,`ORC Format <https://orc.apache.org/>`__, :ref:`read_orc<io.orc>`, :ref:`to_orc<io.orc>`
3434
binary,`Stata <https://en.wikipedia.org/wiki/Stata>`__, :ref:`read_stata<io.stata_reader>`, :ref:`to_stata<io.stata_writer>`
3535
binary,`SAS <https://en.wikipedia.org/wiki/SAS_(software)>`__, :ref:`read_sas<io.sas_reader>` , NA
@@ -5417,7 +5417,7 @@ engines to safely work with the same tables at the same time.
54175417

54185418
Iceberg support predicate pushdown and column pruning, which are available to pandas
54195419
users via the ``row_filter`` and ``selected_fields`` parameters of the :func:`~pandas.read_iceberg`
5420-
function. This is convenient to extract from large tables a subset that fits in memory asa
5420+
function. This is convenient to extract from large tables a subset that fits in memory as a
54215421
pandas ``DataFrame``.
54225422

54235423
Internally, pandas uses PyIceberg_ to query Iceberg.
@@ -5497,6 +5497,29 @@ parameter:
54975497
Reading a particular snapshot is also possible providing the snapshot ID as an argument to
54985498
``snapshot_id``.
54995499

5500+
To save a ``DataFrame`` to Iceberg, it can be done with the :meth:`DataFrame.to_iceberg`
5501+
method:
5502+
5503+
.. code-block:: python
5504+
5505+
df.to_iceberg("my_table", catalog_name="my_catalog")
5506+
5507+
To specify the catalog, it works in the same way as for :func:`read_iceberg` with the
5508+
``catalog_name`` and ``catalog_properties`` parameters.
5509+
5510+
The location of the table can be specified with the ``location`` parameter:
5511+
5512+
.. code-block:: python
5513+
5514+
df.to_iceberg(
5515+
"my_table",
5516+
catalog_name="my_catalog",
5517+
location="s://my-data-lake/my-iceberg-tables",
5518+
)
5519+
5520+
It is possible to add properties to the table snapshot by passing a dictionary to the
5521+
``snapshot_properties`` parameter.
5522+
55005523
More information about the Iceberg format can be found in the `Apache Iceberg official
55015524
page <https://iceberg.apache.org/>`__.
55025525

doc/source/user_guide/reshaping.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -395,7 +395,7 @@ variables and the values representing the presence of those variables per row.
395395
pd.get_dummies(df["key"])
396396
df["key"].str.get_dummies()
397397
398-
``prefix`` adds a prefix to the the column names which is useful for merging the result
398+
``prefix`` adds a prefix to the column names which is useful for merging the result
399399
with the original :class:`DataFrame`:
400400

401401
.. ipython:: python

doc/source/user_guide/user_defined_functions.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -319,7 +319,7 @@ to the original data.
319319
320320
In the example, the ``warm_up_all_days`` function computes the ``max`` like an aggregation, but instead
321321
of returning just the maximum value, it returns a ``DataFrame`` with the same shape as the original one
322-
with the values of each day replaced by the the maximum temperature of the city.
322+
with the values of each day replaced by the maximum temperature of the city.
323323

324324
``transform`` is also available for :meth:`SeriesGroupBy.transform`, :meth:`DataFrameGroupBy.transform` and
325325
:meth:`Resampler.transform`, where it's more common. You can read more about ``transform`` in groupby

doc/source/whatsnew/v1.1.0.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1039,7 +1039,7 @@ Missing
10391039
^^^^^^^
10401040
- Calling :meth:`fillna` on an empty :class:`Series` now correctly returns a shallow copied object. The behaviour is now consistent with :class:`Index`, :class:`DataFrame` and a non-empty :class:`Series` (:issue:`32543`).
10411041
- Bug in :meth:`Series.replace` when argument ``to_replace`` is of type dict/list and is used on a :class:`Series` containing ``<NA>`` was raising a ``TypeError``. The method now handles this by ignoring ``<NA>`` values when doing the comparison for the replacement (:issue:`32621`)
1042-
- Bug in :meth:`~Series.any` and :meth:`~Series.all` incorrectly returning ``<NA>`` for all ``False`` or all ``True`` values using the nulllable Boolean dtype and with ``skipna=False`` (:issue:`33253`)
1042+
- Bug in :meth:`~Series.any` and :meth:`~Series.all` incorrectly returning ``<NA>`` for all ``False`` or all ``True`` values using the nullable Boolean dtype and with ``skipna=False`` (:issue:`33253`)
10431043
- Clarified documentation on interpolate with ``method=akima``. The ``der`` parameter must be scalar or ``None`` (:issue:`33426`)
10441044
- :meth:`DataFrame.interpolate` uses the correct axis convention now. Previously interpolating along columns lead to interpolation along indices and vice versa. Furthermore interpolating with methods ``pad``, ``ffill``, ``bfill`` and ``backfill`` are identical to using these methods with :meth:`DataFrame.fillna` (:issue:`12918`, :issue:`29146`)
10451045
- Bug in :meth:`DataFrame.interpolate` when called on a :class:`DataFrame` with column names of string type was throwing a ValueError. The method is now independent of the type of the column names (:issue:`33956`)

doc/source/whatsnew/v2.3.0.rst

Lines changed: 21 additions & 117 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
.. _whatsnew_230:
22

3-
What's new in 2.3.0 (Month XX, 2024)
3+
What's new in 2.3.0 (June 4, 2025)
44
------------------------------------
55

66
These are the changes in pandas 2.3.0. See :ref:`release` for a full changelog
@@ -10,23 +10,11 @@ including other versions of pandas.
1010

1111
.. ---------------------------------------------------------------------------
1212
13-
.. _whatsnew_230.upcoming_changes:
14-
15-
Upcoming changes in pandas 3.0
16-
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
17-
18-
1913
.. _whatsnew_230.enhancements:
2014

2115
Enhancements
2216
~~~~~~~~~~~~
2317

24-
.. _whatsnew_230.enhancements.enhancement1:
25-
26-
enhancement1
27-
^^^^^^^^^^^^
28-
29-
3018
.. _whatsnew_230.enhancements.other:
3119

3220
Other enhancements
@@ -36,12 +24,12 @@ Other enhancements
3624
- The semantics for the ``copy`` keyword in ``__array__`` methods (i.e. called
3725
when using ``np.array()`` or ``np.asarray()`` on pandas objects) has been
3826
updated to work correctly with NumPy >= 2 (:issue:`57739`)
39-
- :meth:`Series.str.decode` result now has ``StringDtype`` when ``future.infer_string`` is True (:issue:`60709`)
40-
- :meth:`~Series.to_hdf` and :meth:`~DataFrame.to_hdf` now round-trip with ``StringDtype`` (:issue:`60663`)
27+
- :meth:`Series.str.decode` result now has :class:`StringDtype` when ``future.infer_string`` is True (:issue:`60709`)
28+
- :meth:`~Series.to_hdf` and :meth:`~DataFrame.to_hdf` now round-trip with :class:`StringDtype` (:issue:`60663`)
4129
- Improved ``repr`` of :class:`.NumpyExtensionArray` to account for NEP51 (:issue:`61085`)
4230
- The :meth:`Series.str.decode` has gained the argument ``dtype`` to control the dtype of the result (:issue:`60940`)
43-
- The :meth:`~Series.cumsum`, :meth:`~Series.cummin`, and :meth:`~Series.cummax` reductions are now implemented for ``StringDtype`` columns (:issue:`60633`)
44-
- The :meth:`~Series.sum` reduction is now implemented for ``StringDtype`` columns (:issue:`59853`)
31+
- The :meth:`~Series.cumsum`, :meth:`~Series.cummin`, and :meth:`~Series.cummax` reductions are now implemented for :class:`StringDtype` columns (:issue:`60633`)
32+
- The :meth:`~Series.sum` reduction is now implemented for :class:`StringDtype` columns (:issue:`59853`)
4533

4634
.. ---------------------------------------------------------------------------
4735
.. _whatsnew_230.notable_bug_fixes:
@@ -56,7 +44,7 @@ These are bug fixes that might have notable behavior changes.
5644
Comparisons between different string dtypes
5745
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
5846

59-
In previous versions, comparing Series of different string dtypes (e.g. ``pd.StringDtype("pyarrow", na_value=pd.NA)`` against ``pd.StringDtype("python", na_value=np.nan)``) would result in inconsistent resulting dtype or incorrectly raise. pandas will now use the hierarchy
47+
In previous versions, comparing :class:`Series` of different string dtypes (e.g. ``pd.StringDtype("pyarrow", na_value=pd.NA)`` against ``pd.StringDtype("python", na_value=np.nan)``) would result in inconsistent resulting dtype or incorrectly raise. pandas will now use the hierarchy
6048

6149
object < (python, NaN) < (pyarrow, NaN) < (python, NA) < (pyarrow, NA)
6250

@@ -71,9 +59,9 @@ in determining the result dtype when there are different string dtypes compared.
7159
API changes
7260
~~~~~~~~~~~
7361

74-
- When enabling the ``future.infer_string`` option: Index set operations (like
75-
union or intersection) will now ignore the dtype of an empty ``RangeIndex`` or
76-
empty ``Index`` with object dtype when determining the dtype of the resulting
62+
- When enabling the ``future.infer_string`` option, :class:`Index` set operations (like
63+
union or intersection) will now ignore the dtype of an empty :class:`RangeIndex` or
64+
empty :class:`Index` with ``object`` dtype when determining the dtype of the resulting
7765
Index (:issue:`60797`)
7866

7967
.. ---------------------------------------------------------------------------
@@ -84,121 +72,35 @@ Deprecations
8472
- Deprecated allowing non-``bool`` values for ``na`` in :meth:`.str.contains`, :meth:`.str.startswith`, and :meth:`.str.endswith` for dtypes that do not already disallow these (:issue:`59615`)
8573
- Deprecated the ``"pyarrow_numpy"`` storage option for :class:`StringDtype` (:issue:`60152`)
8674

87-
.. ---------------------------------------------------------------------------
88-
.. _whatsnew_230.performance:
89-
90-
Performance improvements
91-
~~~~~~~~~~~~~~~~~~~~~~~~
92-
-
93-
-
94-
9575
.. ---------------------------------------------------------------------------
9676
.. _whatsnew_230.bug_fixes:
9777

9878
Bug fixes
9979
~~~~~~~~~
10080

101-
Categorical
102-
^^^^^^^^^^^
103-
-
104-
-
105-
106-
Datetimelike
107-
^^^^^^^^^^^^
108-
-
109-
-
110-
111-
Timedelta
112-
^^^^^^^^^
113-
-
114-
-
115-
116-
Timezones
117-
^^^^^^^^^
118-
-
119-
-
120-
12181
Numeric
12282
^^^^^^^
123-
- Enabled :class:`Series.mode` and :class:`DataFrame.mode` with ``dropna=False`` to sort the result for all dtypes in the presence of NA values; previously only certain dtypes would sort (:issue:`60702`)
124-
- Bug in :meth:`Series.round` on object columns no longer raises ``TypeError``
125-
-
126-
127-
Conversion
128-
^^^^^^^^^^
129-
-
130-
-
83+
- Bug in :meth:`Series.mode` and :meth:`DataFrame.mode` with ``dropna=False`` where not all dtypes would sort in the presence of ``NA`` values (:issue:`60702`)
84+
- Bug in :meth:`Series.round` where a ``TypeError`` would always raise with ``object`` dtype (:issue:`61206`)
13185

13286
Strings
13387
^^^^^^^
134-
- Bug in :meth:`.DataFrameGroupBy.min`, :meth:`.DataFrameGroupBy.max`, :meth:`.Resampler.min`, :meth:`.Resampler.max` on string input of all NA values would return float dtype; now returns string (:issue:`60810`)
135-
- Bug in :meth:`DataFrame.sum` with ``axis=1``, :meth:`.DataFrameGroupBy.sum` or :meth:`.SeriesGroupBy.sum` with ``skipna=True``, and :meth:`.Resampler.sum` on :class:`StringDtype` with all NA values resulted in ``0`` and is now the empty string ``""`` (:issue:`60229`)
136-
- Bug in :meth:`Series.__pos__` and :meth:`DataFrame.__pos__` did not raise for :class:`StringDtype` with ``storage="pyarrow"`` (:issue:`60710`)
137-
- Bug in :meth:`Series.rank` for :class:`StringDtype` with ``storage="pyarrow"`` incorrectly returning integer results in case of ``method="average"`` and raising an error if it would truncate results (:issue:`59768`)
88+
- Bug in :meth:`.DataFrameGroupBy.min`, :meth:`.DataFrameGroupBy.max`, :meth:`.Resampler.min`, :meth:`.Resampler.max` where all NA values of string dtype would return float instead of string dtype (:issue:`60810`)
89+
- Bug in :meth:`DataFrame.sum` with ``axis=1``, :meth:`.DataFrameGroupBy.sum` or :meth:`.SeriesGroupBy.sum` with ``skipna=True``, and :meth:`.Resampler.sum` with all NA values of :class:`StringDtype` resulted in ``0`` instead of the empty string ``""`` (:issue:`60229`)
90+
- Bug in :meth:`Series.__pos__` and :meth:`DataFrame.__pos__` where an ``Exception`` was not raised for :class:`StringDtype` with ``storage="pyarrow"`` (:issue:`60710`)
91+
- Bug in :meth:`Series.rank` for :class:`StringDtype` with ``storage="pyarrow"`` that incorrectly returned integer results with ``method="average"`` and raised an error if it would truncate results (:issue:`59768`)
13892
- Bug in :meth:`Series.replace` with :class:`StringDtype` when replacing with a non-string value was not upcasting to ``object`` dtype (:issue:`60282`)
93+
- Bug in :meth:`Series.str.center` with :class:`StringDtype` with ``storage="pyarrow"`` not matching the python behavior in corner cases with an odd number of fill characters (:issue:`54792`)
13994
- Bug in :meth:`Series.str.replace` when ``n < 0`` for :class:`StringDtype` with ``storage="pyarrow"`` (:issue:`59628`)
140-
- Bug in ``ser.str.slice`` with negative ``step`` with :class:`ArrowDtype` and :class:`StringDtype` with ``storage="pyarrow"`` giving incorrect results (:issue:`59710`)
141-
- Bug in the ``center`` method on :class:`Series` and :class:`Index` object ``str`` accessors with pyarrow-backed dtype not matching the python behavior in corner cases with an odd number of fill characters (:issue:`54792`)
142-
143-
Interval
144-
^^^^^^^^
145-
-
146-
-
95+
- Bug in :meth:`Series.str.slice` with negative ``step`` with :class:`ArrowDtype` and :class:`StringDtype` with ``storage="pyarrow"`` giving incorrect results (:issue:`59710`)
14796

14897
Indexing
14998
^^^^^^^^
150-
- Fixed bug in :meth:`Index.get_indexer` round-tripping through string dtype when ``infer_string`` is enabled (:issue:`55834`)
151-
-
152-
153-
Missing
154-
^^^^^^^
155-
-
156-
-
157-
158-
MultiIndex
159-
^^^^^^^^^^
160-
-
161-
-
99+
- Bug in :meth:`Index.get_indexer` round-tripping through string dtype when ``infer_string`` is enabled (:issue:`55834`)
162100

163101
I/O
164102
^^^
165-
- :meth:`DataFrame.to_excel` was storing decimals as strings instead of numbers (:issue:`49598`)
166-
-
167-
168-
Period
169-
^^^^^^
170-
-
171-
-
172-
173-
Plotting
174-
^^^^^^^^
175-
-
176-
-
177-
178-
Groupby/resample/rolling
179-
^^^^^^^^^^^^^^^^^^^^^^^^
180-
-
181-
-
182-
183-
Reshaping
184-
^^^^^^^^^
185-
-
186-
-
187-
188-
Sparse
189-
^^^^^^
190-
-
191-
-
192-
193-
ExtensionArray
194-
^^^^^^^^^^^^^^
195-
-
196-
-
197-
198-
Styler
199-
^^^^^^
200-
-
201-
-
103+
- Bug in :meth:`DataFrame.to_excel` which stored decimals as strings instead of numbers (:issue:`49598`)
202104

203105
Other
204106
^^^^^
@@ -210,3 +112,5 @@ Other
210112

211113
Contributors
212114
~~~~~~~~~~~~
115+
116+
.. contributors:: v2.2.3..v2.3.0|HEAD

doc/source/whatsnew/v3.0.0.rst

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -82,7 +82,7 @@ Other enhancements
8282
- :py:class:`frozenset` elements in pandas objects are now natively printed (:issue:`60690`)
8383
- Add ``"delete_rows"`` option to ``if_exists`` argument in :meth:`DataFrame.to_sql` deleting all records of the table before inserting data (:issue:`37210`).
8484
- Added half-year offset classes :class:`HalfYearBegin`, :class:`HalfYearEnd`, :class:`BHalfYearBegin` and :class:`BHalfYearEnd` (:issue:`60928`)
85-
- Added support to read from Apache Iceberg tables with the new :func:`read_iceberg` function (:issue:`61383`)
85+
- Added support to read and write from and to Apache Iceberg tables with the new :func:`read_iceberg` and :meth:`DataFrame.to_iceberg` functions (:issue:`61383`)
8686
- Errors occurring during SQL I/O will now throw a generic :class:`.DatabaseError` instead of the raw Exception type from the underlying driver manager library (:issue:`60748`)
8787
- Implemented :meth:`Series.str.isascii` and :meth:`Series.str.isascii` (:issue:`59091`)
8888
- Improved deprecation message for offset aliases (:issue:`60820`)
@@ -715,6 +715,7 @@ Timezones
715715
Numeric
716716
^^^^^^^
717717
- Bug in :meth:`DataFrame.corr` where numerical precision errors resulted in correlations above ``1.0`` (:issue:`61120`)
718+
- Bug in :meth:`DataFrame.cov` raises a ``TypeError`` instead of returning potentially incorrect results or other errors (:issue:`53115`)
718719
- 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`)
719720
- Bug in :meth:`Series.dot` returning ``object`` dtype for :class:`ArrowDtype` and nullable-dtype data (:issue:`61375`)
720721
- Bug in ``np.matmul`` with :class:`Index` inputs raising a ``TypeError`` (:issue:`57079`)
@@ -836,7 +837,7 @@ Groupby/resample/rolling
836837
- Bug in :meth:`DataFrameGroupby.transform` and :meth:`SeriesGroupby.transform` with a reducer and ``observed=False`` that coerces dtype to float when there are unobserved categories. (:issue:`55326`)
837838
- Bug in :meth:`Rolling.apply` for ``method="table"`` where column order was not being respected due to the columns getting sorted by default. (:issue:`59666`)
838839
- Bug in :meth:`Rolling.apply` where the applied function could be called on fewer than ``min_period`` periods if ``method="table"``. (:issue:`58868`)
839-
- Bug in :meth:`Series.resample` could raise when the the date range ended shortly before a non-existent time. (:issue:`58380`)
840+
- Bug in :meth:`Series.resample` could raise when the date range ended shortly before a non-existent time. (:issue:`58380`)
840841

841842
Reshaping
842843
^^^^^^^^^
@@ -854,6 +855,7 @@ Reshaping
854855
- Bug in :meth:`DataFrame.unstack` producing incorrect results when manipulating empty :class:`DataFrame` with an :class:`ExtentionDtype` (:issue:`59123`)
855856
- Bug in :meth:`concat` where concatenating DataFrame and Series with ``ignore_index = True`` drops the series name (:issue:`60723`, :issue:`56257`)
856857
- Bug in :func:`melt` where calling with duplicate column names in ``id_vars`` raised a misleading ``AttributeError`` (:issue:`61475`)
858+
- Bug in :meth:`DataFrame.merge` where user-provided suffixes could result in duplicate column names if the resulting names matched existing columns. Now raises a :class:`MergeError` in such cases. (:issue:`61402`)
857859

858860
Sparse
859861
^^^^^^

environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name: pandas-dev
33
channels:
44
- conda-forge
55
dependencies:
6-
- python=3.10
6+
- python=3.11
77
- pip
88

99
# build dependencies

meson.build

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -57,6 +57,7 @@ if cy.version().version_compare('>=3.1.0')
5757
command: [
5858
cy,
5959
'-3',
60+
'-Xfreethreading_compatible=true',
6061
'--fast-fail',
6162
'--generate-shared=' + meson.current_build_dir() / '_cyutility.c',
6263
],

pandas/_libs/tslibs/conversion.pyx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -797,7 +797,7 @@ cdef int64_t parse_pydatetime(
797797
dts : *npy_datetimestruct
798798
Needed to use in pydatetime_to_dt64, which writes to it.
799799
creso : NPY_DATETIMEUNIT
800-
Resolution to store the the result.
800+
Resolution to store the result.
801801
802802
Raises
803803
------

pandas/core/arrays/categorical.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1666,7 +1666,7 @@ def __array__(
16661666
Parameters
16671667
----------
16681668
dtype : np.dtype or None
1669-
Specifies the the dtype for the array.
1669+
Specifies the dtype for the array.
16701670
16711671
copy : bool or None, optional
16721672
See :func:`numpy.asarray`.

0 commit comments

Comments
 (0)