Skip to content

Commit 32288dc

Browse files
committed
Merge main
2 parents 420540d + 9b8598a commit 32288dc

File tree

368 files changed

+6337
-3666
lines changed

Some content is hidden

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

368 files changed

+6337
-3666
lines changed

.github/workflows/code-checks.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ jobs:
3333

3434
steps:
3535
- name: Checkout
36-
uses: actions/checkout@v5
36+
uses: actions/checkout@v6
3737
with:
3838
fetch-depth: 0
3939

@@ -114,7 +114,7 @@ jobs:
114114

115115
steps:
116116
- name: Checkout
117-
uses: actions/checkout@v5
117+
uses: actions/checkout@v6
118118
with:
119119
fetch-depth: 0
120120

@@ -142,7 +142,7 @@ jobs:
142142

143143
steps:
144144
- name: Checkout
145-
uses: actions/checkout@v5
145+
uses: actions/checkout@v6
146146
with:
147147
fetch-depth: 0
148148

.github/workflows/codeql.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,7 @@ jobs:
2727
- python
2828

2929
steps:
30-
- uses: actions/checkout@v5
30+
- uses: actions/checkout@v6
3131
- uses: github/codeql-action/init@v4
3232
with:
3333
languages: ${{ matrix.language }}

.github/workflows/docbuild-and-upload.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ jobs:
3636

3737
steps:
3838
- name: Checkout
39-
uses: actions/checkout@v5
39+
uses: actions/checkout@v6
4040
with:
4141
fetch-depth: 0
4242

@@ -93,7 +93,7 @@ jobs:
9393
run: mv doc/build/html web/build/docs
9494

9595
- name: Save website as an artifact
96-
uses: actions/upload-artifact@v5
96+
uses: actions/upload-artifact@v6
9797
with:
9898
name: website
9999
path: web/build

.github/workflows/package-checks.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ jobs:
3434

3535
steps:
3636
- name: Checkout
37-
uses: actions/checkout@v5
37+
uses: actions/checkout@v6
3838
with:
3939
fetch-depth: 0
4040

@@ -58,7 +58,7 @@ jobs:
5858
cancel-in-progress: true
5959
steps:
6060
- name: Checkout
61-
uses: actions/checkout@v5
61+
uses: actions/checkout@v6
6262
with:
6363
fetch-depth: 0
6464

.github/workflows/unit-tests.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -145,7 +145,7 @@ jobs:
145145

146146
steps:
147147
- name: Checkout
148-
uses: actions/checkout@v5
148+
uses: actions/checkout@v6
149149
with:
150150
fetch-depth: 0
151151

@@ -204,7 +204,7 @@ jobs:
204204

205205
steps:
206206
- name: Checkout
207-
uses: actions/checkout@v5
207+
uses: actions/checkout@v6
208208
with:
209209
fetch-depth: 0
210210

@@ -222,7 +222,7 @@ jobs:
222222
Linux-32-bit:
223223
runs-on: ubuntu-24.04
224224
container:
225-
image: quay.io/pypa/manylinux2014_i686
225+
image: quay.io/pypa/manylinux_2_28_i686
226226
options: --platform linux/386
227227
steps:
228228
- name: Checkout pandas Repo
@@ -342,7 +342,7 @@ jobs:
342342
PYTEST_TARGET: pandas
343343

344344
steps:
345-
- uses: actions/checkout@v5
345+
- uses: actions/checkout@v6
346346
with:
347347
fetch-depth: 0
348348

@@ -379,7 +379,7 @@ jobs:
379379
cancel-in-progress: true
380380
steps:
381381
- name: Checkout pandas Repo
382-
uses: actions/checkout@v5
382+
uses: actions/checkout@v6
383383
with:
384384
fetch-depth: 0
385385

.github/workflows/wheels.yml

Lines changed: 15 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -45,13 +45,12 @@ jobs:
4545
(github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && ( ! endsWith(github.ref, 'dev0')))
4646
runs-on: ubuntu-24.04
4747
env:
48-
IS_PUSH: ${{ github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') }}
4948
IS_SCHEDULE_DISPATCH: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' }}
5049
outputs:
5150
sdist_file: ${{ steps.save-path.outputs.sdist_name }}
5251
steps:
5352
- name: Checkout pandas
54-
uses: actions/checkout@v5
53+
uses: actions/checkout@v6
5554
with:
5655
fetch-depth: 0
5756

@@ -65,7 +64,7 @@ jobs:
6564
python -m pip install build
6665
python -m build --sdist
6766
68-
- uses: actions/upload-artifact@v5
67+
- uses: actions/upload-artifact@v6
6968
with:
7069
name: sdist
7170
path: ./dist/*
@@ -118,11 +117,10 @@ jobs:
118117
python: ["cp313t", "3.13"]
119118

120119
env:
121-
IS_PUSH: ${{ github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') }}
122120
IS_SCHEDULE_DISPATCH: ${{ github.event_name == 'schedule' || github.event_name == 'workflow_dispatch' }}
123121
steps:
124122
- name: Checkout pandas
125-
uses: actions/checkout@v5
123+
uses: actions/checkout@v6
126124
with:
127125
fetch-depth: 0
128126

@@ -140,7 +138,7 @@ jobs:
140138
# removes unnecessary files from the release
141139
- name: Download sdist (not macOS)
142140
#if: ${{ matrix.buildplat[1] != 'macosx_*' }}
143-
uses: actions/download-artifact@v6
141+
uses: actions/download-artifact@v7
144142
with:
145143
name: sdist
146144
path: ./dist
@@ -166,6 +164,7 @@ jobs:
166164
uses: pypa/[email protected]
167165
with:
168166
package-dir: ./dist/${{ startsWith(matrix.buildplat[1], 'macosx') && env.sdist_name || needs.build_sdist.outputs.sdist_file }}
167+
output-dir: ./dist
169168
env:
170169
CIBW_BUILD: ${{ matrix.python[0] }}-${{ matrix.buildplat[1] }}
171170
CIBW_BUILD_FRONTEND: ${{ matrix.cibw_build_frontend || 'pip' }}
@@ -196,29 +195,19 @@ jobs:
196195

197196
- name: Validate wheel RECORD
198197
shell: bash -el {0}
199-
run: for whl in $(ls wheelhouse); do wheel unpack wheelhouse/$whl -d /tmp; done
198+
run: for whl in $(ls ./dist/*.whl); do wheel unpack $whl -d /tmp; done
200199

201-
- uses: actions/upload-artifact@v5
200+
- uses: actions/upload-artifact@v6
202201
with:
203202
name: ${{ matrix.python[0] }}-${{ matrix.buildplat[1] }}
204-
path: ./wheelhouse/*.whl
203+
path: ./dist/*.whl
205204

206205
- name: Upload wheels & sdist
207-
if: ${{ success() && (env.IS_SCHEDULE_DISPATCH == 'true' || env.IS_PUSH == 'true') }}
208-
shell: bash -el {0}
209-
env:
210-
PANDAS_STAGING_UPLOAD_TOKEN: ${{ secrets.PANDAS_STAGING_UPLOAD_TOKEN }}
211-
PANDAS_NIGHTLY_UPLOAD_TOKEN: ${{ secrets.PANDAS_NIGHTLY_UPLOAD_TOKEN }}
212-
# trigger an upload to
213-
# https://anaconda.org/scientific-python-nightly-wheels/pandas
214-
# for cron jobs or "Run workflow" (restricted to main branch).
215-
# Tags will upload to
216-
# https://anaconda.org/multibuild-wheels-staging/pandas
217-
# The tokens were originally generated at anaconda.org
218-
run: |
219-
source ci/upload_wheels.sh
220-
set_upload_vars
221-
upload_wheels
206+
if: ${{ success() && env.IS_SCHEDULE_DISPATCH == 'true' }}
207+
uses: scientific-python/[email protected]
208+
with:
209+
artifacts_path: ./dist
210+
anaconda_nightly_upload_token: ${{secrets.PANDAS_NIGHTLY_UPLOAD_TOKEN}}
222211

223212
publish:
224213
if: >
@@ -240,11 +229,11 @@ jobs:
240229

241230
steps:
242231
- name: Download all artefacts
243-
uses: actions/download-artifact@v6
232+
uses: actions/download-artifact@v7
244233
with:
245234
path: dist # everything lands in ./dist/**
246235

247-
# TODO: This step can be probably be achieved by actions/download-artifact@v6
236+
# TODO: This step can be probably be achieved by actions/download-artifact@v7
248237
# by specifying merge-multiple: true, and a glob pattern
249238
- name: Collect files
250239
run: |

.gitignore

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,6 +21,7 @@
2121
.noseids
2222
.ipynb_checkpoints
2323
.tags
24+
tags
2425
.cache/
2526
.vscode/
2627

@@ -66,7 +67,6 @@ pandas/py.typed
6667
.ropeproject
6768
# wheel files
6869
*.whl
69-
**/wheelhouse/*
7070
pip-wheel-metadata
7171
# coverage
7272
.coverage

.pre-commit-config.yaml

Lines changed: 4 additions & 4 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.14.3
22+
rev: v0.14.7
2323
hooks:
2424
- id: ruff
2525
args: [--exit-non-zero-on-fix]
@@ -71,7 +71,7 @@ repos:
7171
hooks:
7272
- id: isort
7373
- repo: https://github.com/asottile/pyupgrade
74-
rev: v3.21.0
74+
rev: v3.21.2
7575
hooks:
7676
- id: pyupgrade
7777
args: [--py311-plus]
@@ -87,12 +87,12 @@ repos:
8787
types: [text] # overwrite types: [rst]
8888
types_or: [python, rst]
8989
- repo: https://github.com/sphinx-contrib/sphinx-lint
90-
rev: v1.0.1
90+
rev: v1.0.2
9191
hooks:
9292
- id: sphinx-lint
9393
args: ["--enable", "all", "--disable", "line-too-long"]
9494
- repo: https://github.com/pre-commit/mirrors-clang-format
95-
rev: v21.1.2
95+
rev: v21.1.6
9696
hooks:
9797
- id: clang-format
9898
files: ^pandas/_libs/src|^pandas/_libs/include

ci/code_checks.sh

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,16 +69,18 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
6969
"$BASE_DIR"/scripts/validate_docstrings.py \
7070
--format=actions \
7171
-i ES01 `# For now it is ok if docstrings are missing the extended summary` \
72+
-i "pandas.DataFrame.from_arrow SA01,EX01" \
7273
-i "pandas.Series.dt PR01" `# Accessors are implemented as classes, but we do not document the Parameters section` \
7374
-i "pandas.Period.freq GL08" \
7475
-i "pandas.Period.ordinal GL08" \
76+
-i "pandas.errors.ChainedAssignmentError SA01" \
7577
-i "pandas.errors.IncompatibleFrequency SA01,SS06,EX01" \
76-
-i "pandas.errors.InvalidVersion GL08" \
7778
-i "pandas.api.extensions.ExtensionArray.value_counts EX01,RT03,SA01" \
7879
-i "pandas.api.typing.DataFrameGroupBy.plot PR02" \
7980
-i "pandas.api.typing.SeriesGroupBy.plot PR02" \
8081
-i "pandas.api.typing.Resampler.quantile PR01,PR07" \
81-
-i "pandas.arrays.NumpyExtensionArray GL08" \
82+
-i "pandas.StringDtype.storage SA01" \
83+
-i "pandas.StringDtype.na_value SA01" \
8284
-i "pandas.tseries.offsets.BDay PR02,SA01" \
8385
-i "pandas.tseries.offsets.BHalfYearBegin.is_on_offset GL08" \
8486
-i "pandas.tseries.offsets.BHalfYearBegin.n GL08" \
@@ -166,6 +168,8 @@ if [[ -z "$CHECK" || "$CHECK" == "docstrings" ]]; then
166168
-i "pandas.tseries.offsets.DateOffset.is_on_offset GL08" \
167169
-i "pandas.tseries.offsets.DateOffset.n GL08" \
168170
-i "pandas.tseries.offsets.DateOffset.normalize GL08" \
171+
-i "pandas.tseries.offsets.DateOffset.rollback SA01,EX01" \
172+
-i "pandas.tseries.offsets.DateOffset.rollforward SA01,EX01" \
169173
-i "pandas.tseries.offsets.Day.freqstr SA01" \
170174
-i "pandas.tseries.offsets.Day.is_on_offset GL08" \
171175
-i "pandas.tseries.offsets.Day.n GL08" \

ci/upload_wheels.sh

Lines changed: 0 additions & 42 deletions
This file was deleted.

0 commit comments

Comments
 (0)