Skip to content

Commit 7602764

Browse files
Merge remote-tracking branch 'upstream/2.3.x' into auto-backport-of-pr-59906-on-2.3.x
2 parents a30e1d2 + 6451f79 commit 7602764

File tree

363 files changed

+6809
-3766
lines changed

Some content is hidden

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

363 files changed

+6809
-3766
lines changed

.circleci/config.yml

-144
This file was deleted.

.gitattributes

-1
Original file line numberDiff line numberDiff line change
@@ -61,7 +61,6 @@ pandas/_version.py export-subst
6161
*.pxi export-ignore
6262

6363
# Ignoring stuff from the top level
64-
.circleci export-ignore
6564
.github export-ignore
6665
asv_bench export-ignore
6766
ci export-ignore

.github/actions/build_pandas/action.yml

-7
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,6 @@ runs:
2828
fi
2929
shell: bash -el {0}
3030

31-
- name: Uninstall nomkl
32-
run: |
33-
if conda list nomkl | grep nomkl 1>/dev/null; then
34-
conda remove nomkl -y
35-
fi
36-
shell: bash -el {0}
37-
3831
- name: Build Pandas
3932
run: |
4033
export CFLAGS="$CFLAGS ${{ inputs.cflags_adds }}"

.github/actions/setup-conda/action.yml

+6-2
Original file line numberDiff line numberDiff line change
@@ -9,10 +9,14 @@ runs:
99
- name: Install ${{ inputs.environment-file }}
1010
uses: mamba-org/setup-micromamba@v1
1111
with:
12-
# Pinning to avoid 2.0 failures
13-
micromamba-version: '1.5.10-0'
1412
environment-file: ${{ inputs.environment-file }}
1513
environment-name: test
1614
condarc-file: ci/.condarc
1715
cache-environment: true
1816
cache-downloads: true
17+
18+
- name: Uninstall pyarrow
19+
if: ${{ env.REMOVE_PYARROW == '1' }}
20+
run: |
21+
micromamba remove -y pyarrow
22+
shell: bash -el {0}

.github/workflows/unit-tests.yml

+34-5
Original file line numberDiff line numberDiff line change
@@ -22,21 +22,25 @@ defaults:
2222

2323
jobs:
2424
ubuntu:
25-
runs-on: ubuntu-22.04
25+
runs-on: ${{ matrix.platform }}
2626
timeout-minutes: 90
2727
strategy:
2828
matrix:
29+
platform: [ubuntu-22.04, ubuntu-24.04-arm]
2930
env_file: [actions-39.yaml, actions-310.yaml, actions-311.yaml, actions-312.yaml]
3031
# Prevent the include jobs from overriding other jobs
3132
pattern: [""]
33+
pandas_future_infer_string: ["0"]
3234
include:
3335
- name: "Downstream Compat"
3436
env_file: actions-311-downstream_compat.yaml
3537
pattern: "not slow and not network and not single_cpu"
3638
pytest_target: "pandas/tests/test_downstream.py"
39+
platform: ubuntu-22.04
3740
- name: "Minimum Versions"
3841
env_file: actions-39-minimum_versions.yaml
3942
pattern: "not slow and not network and not single_cpu"
43+
platform: ubuntu-22.04
4044
- name: "Locale: it_IT"
4145
env_file: actions-311.yaml
4246
pattern: "not slow and not network and not single_cpu"
@@ -47,6 +51,7 @@ jobs:
4751
# Also install it_IT (its encoding is ISO8859-1) but do not activate it.
4852
# It will be temporarily activated during tests with locale.setlocale
4953
extra_loc: "it_IT"
54+
platform: ubuntu-22.04
5055
- name: "Locale: zh_CN"
5156
env_file: actions-311.yaml
5257
pattern: "not slow and not network and not single_cpu"
@@ -57,62 +62,86 @@ jobs:
5762
# Also install zh_CN (its encoding is gb2312) but do not activate it.
5863
# It will be temporarily activated during tests with locale.setlocale
5964
extra_loc: "zh_CN"
65+
platform: ubuntu-22.04
6066
- name: "Copy-on-Write 3.9"
6167
env_file: actions-39.yaml
6268
pattern: "not slow and not network and not single_cpu"
6369
pandas_copy_on_write: "1"
70+
platform: ubuntu-22.04
6471
- name: "Copy-on-Write 3.10"
6572
env_file: actions-310.yaml
6673
pattern: "not slow and not network and not single_cpu"
6774
pandas_copy_on_write: "1"
75+
platform: ubuntu-22.04
6876
- name: "Copy-on-Write 3.11"
6977
env_file: actions-311.yaml
7078
pattern: "not slow and not network and not single_cpu"
7179
pandas_copy_on_write: "1"
80+
platform: ubuntu-22.04
7281
- name: "Copy-on-Write 3.12"
7382
env_file: actions-312.yaml
7483
pattern: "not slow and not network and not single_cpu"
7584
pandas_copy_on_write: "1"
85+
platform: ubuntu-22.04
7686
- name: "Copy-on-Write 3.11 (warnings)"
7787
env_file: actions-311.yaml
7888
pattern: "not slow and not network and not single_cpu"
7989
pandas_copy_on_write: "warn"
90+
platform: ubuntu-22.04
8091
- name: "Copy-on-Write 3.10 (warnings)"
8192
env_file: actions-310.yaml
8293
pattern: "not slow and not network and not single_cpu"
8394
pandas_copy_on_write: "warn"
95+
platform: ubuntu-22.04
8496
- name: "Copy-on-Write 3.9 (warnings)"
8597
env_file: actions-39.yaml
8698
pattern: "not slow and not network and not single_cpu"
8799
pandas_copy_on_write: "warn"
100+
platform: ubuntu-22.04
101+
- name: "Future infer strings"
102+
env_file: actions-312.yaml
103+
pandas_future_infer_string: "1"
104+
pandas_copy_on_write: "1"
105+
platform: ubuntu-22.04
106+
- name: "Future infer strings (without pyarrow)"
107+
env_file: actions-311.yaml
108+
pandas_future_infer_string: "1"
109+
pandas_copy_on_write: "1"
110+
platform: ubuntu-22.04
88111
- name: "Pypy"
89112
env_file: actions-pypy-39.yaml
90113
pattern: "not slow and not network and not single_cpu"
91114
test_args: "--max-worker-restart 0"
115+
platform: ubuntu-22.04
92116
- name: "Numpy Dev"
93117
env_file: actions-311-numpydev.yaml
94118
pattern: "not slow and not network and not single_cpu"
95119
test_args: "-W error::DeprecationWarning -W error::FutureWarning"
120+
platform: ubuntu-22.04
96121
- name: "Pyarrow Nightly"
97122
env_file: actions-311-pyarrownightly.yaml
98123
pattern: "not slow and not network and not single_cpu"
124+
pandas_future_infer_string: "1"
125+
pandas_copy_on_write: "1"
126+
platform: ubuntu-22.04
99127
fail-fast: false
100-
name: ${{ matrix.name || format('ubuntu-latest {0}', matrix.env_file) }}
128+
name: ${{ matrix.name || format('ubuntu-latest {0}', matrix.env_file) }}-${{ matrix.platform }}
101129
env:
102130
PATTERN: ${{ matrix.pattern }}
103131
LANG: ${{ matrix.lang || 'C.UTF-8' }}
104132
LC_ALL: ${{ matrix.lc_all || '' }}
105133
PANDAS_COPY_ON_WRITE: ${{ matrix.pandas_copy_on_write || '0' }}
106-
PANDAS_CI: ${{ matrix.pandas_ci || '1' }}
134+
PANDAS_CI: '1'
135+
PANDAS_FUTURE_INFER_STRING: ${{ matrix.pandas_future_infer_string || '0' }}
107136
TEST_ARGS: ${{ matrix.test_args || '' }}
108137
PYTEST_WORKERS: ${{ matrix.pytest_workers || 'auto' }}
109138
PYTEST_TARGET: ${{ matrix.pytest_target || 'pandas' }}
110-
NPY_PROMOTION_STATE: ${{ matrix.env_file == 'actions-311-numpydev.yaml' && 'weak' || 'legacy' }}
111139
# Clipboard tests
112140
QT_QPA_PLATFORM: offscreen
141+
REMOVE_PYARROW: ${{ matrix.name == 'Future infer strings (without pyarrow)' && '1' || '0' }}
113142
concurrency:
114143
# https://github.community/t/concurrecy-not-work-for-push/183068/7
115-
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{ matrix.env_file }}-${{ matrix.pattern }}-${{ matrix.extra_apt || '' }}-${{ matrix.pandas_copy_on_write || '' }}
144+
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{ matrix.env_file }}-${{ matrix.pattern }}-${{ matrix.extra_apt || '' }}-${{ matrix.pandas_copy_on_write || '' }}-${{ matrix.pandas_future_infer_string }}-${{ matrix.platform }}
116145
cancel-in-progress: true
117146

118147
services:

.github/workflows/wheels.yml

+3-2
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,8 @@ jobs:
9494
buildplat:
9595
- [ubuntu-22.04, manylinux_x86_64]
9696
- [ubuntu-22.04, musllinux_x86_64]
97-
- [macos-12, macosx_x86_64]
97+
- [ubuntu-24.04-arm, manylinux_aarch64]
98+
- [macos-13, macosx_x86_64]
9899
# Note: M1 images on Github Actions start from macOS 14
99100
- [macos-14, macosx_arm64]
100101
- [windows-2022, win_amd64]
@@ -150,7 +151,7 @@ jobs:
150151
run: echo "sdist_name=$(cd ./dist && ls -d */)" >> "$GITHUB_ENV"
151152

152153
- name: Build wheels
153-
uses: pypa/cibuildwheel@v2.20.0
154+
uses: pypa/cibuildwheel@v2.21.3
154155
with:
155156
package-dir: ./dist/${{ startsWith(matrix.buildplat[1], 'macosx') && env.sdist_name || needs.build_sdist.outputs.sdist_file }}
156157
env:

.pre-commit-config.yaml

-7
Original file line numberDiff line numberDiff line change
@@ -274,13 +274,6 @@ repos:
274274
language: python
275275
types: [rst]
276276
files: ^doc/source/(development|reference)/
277-
- id: unwanted-patterns-bare-pytest-raises
278-
name: Check for use of bare pytest raises
279-
language: python
280-
entry: python scripts/validate_unwanted_patterns.py --validation-type="bare_pytest_raises"
281-
types: [python]
282-
files: ^pandas/tests/
283-
exclude: ^pandas/tests/extension/
284277
- id: unwanted-patterns-private-function-across-module
285278
name: Check for use of private functions across modules
286279
language: python

ci/deps/actions-310.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ dependencies:
55
- python=3.10
66

77
# build dependencies
8-
- versioneer[toml]
8+
- versioneer
99
- cython>=0.29.33
10-
- meson[ninja]=1.2.1
10+
- meson=1.2.1
1111
- meson-python=0.13.1
1212

1313
# test dependencies
@@ -52,7 +52,7 @@ dependencies:
5252
- scipy>=1.10.0
5353
- sqlalchemy>=2.0.0
5454
- tabulate>=0.9.0
55-
- xarray>=2022.12.0
55+
- xarray>=2022.12.0, <=2024.9.0
5656
- xlrd>=2.0.1
5757
- xlsxwriter>=3.0.5
5858
- zstandard>=0.19.0

ci/deps/actions-311-downstream_compat.yaml

+3-3
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,9 @@ dependencies:
66
- python=3.11
77

88
# build dependencies
9-
- versioneer[toml]
9+
- versioneer
1010
- cython>=0.29.33
11-
- meson[ninja]=1.2.1
11+
- meson=1.2.1
1212
- meson-python=0.13.1
1313

1414
# test dependencies
@@ -54,7 +54,7 @@ dependencies:
5454
- scipy>=1.10.0
5555
- sqlalchemy>=2.0.0
5656
- tabulate>=0.9.0
57-
- xarray>=2022.12.0
57+
- xarray>=2022.12.0, <=2024.9.0
5858
- xlrd>=2.0.1
5959
- xlsxwriter>=3.0.5
6060
- zstandard>=0.19.0

ci/deps/actions-311-numpydev.yaml

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@ dependencies:
55
- python=3.11
66

77
# build dependencies
8-
- versioneer[toml]
9-
- meson[ninja]=1.2.1
8+
- versioneer
9+
- meson=1.2.1
1010
- meson-python=0.13.1
1111
- cython>=0.29.33
1212

0 commit comments

Comments
 (0)