Skip to content

Commit 438d084

Browse files
committed
Merge remote-tracking branch 'upstream/main' into regr_index_map_tz
# Conflicts: # doc/source/whatsnew/v2.2.1.rst
2 parents ad64b75 + 4241ba5 commit 438d084

File tree

654 files changed

+11345
-15647
lines changed

Some content is hidden

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

654 files changed

+11345
-15647
lines changed

.circleci/config.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ version: 2.1
33
jobs:
44
test-arm:
55
machine:
6-
image: ubuntu-2004:2022.04.1
6+
image: default
77
resource_class: arm.large
88
environment:
99
ENV_FILE: ci/deps/circle-310-arm64.yaml
@@ -46,7 +46,7 @@ jobs:
4646
cibw-build:
4747
type: string
4848
machine:
49-
image: ubuntu-2004:2022.04.1
49+
image: default
5050
resource_class: arm.large
5151
environment:
5252
TRIGGER_SOURCE: << pipeline.trigger_source >>

.github/actions/run-tests/action.yml

Lines changed: 1 addition & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,9 @@
11
name: Run tests and report results
2-
inputs:
3-
preload:
4-
description: Preload arguments for sanitizer
5-
required: false
6-
asan_options:
7-
description: Arguments for Address Sanitizer (ASAN)
8-
required: false
92
runs:
103
using: composite
114
steps:
125
- name: Test
13-
run: ${{ inputs.asan_options }} ${{ inputs.preload }} ci/run_tests.sh
6+
run: ci/run_tests.sh
147
shell: bash -el {0}
158

169
- name: Publish test results

.github/workflows/comment-commands.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
concurrency:
2525
group: ${{ github.actor }}-preview-docs
2626
steps:
27-
- uses: pandas-dev/[email protected].1
27+
- uses: pandas-dev/[email protected].2
2828
with:
2929
previewer-server: "https://pandas.pydata.org/preview"
3030
artifact-job: "Doc Build and Upload"

.github/workflows/package-checks.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ jobs:
2424
runs-on: ubuntu-22.04
2525
strategy:
2626
matrix:
27-
extra: ["test", "performance", "computation", "fss", "aws", "gcp", "excel", "parquet", "feather", "hdf5", "spss", "postgresql", "mysql", "sql-other", "html", "xml", "plot", "output-formatting", "clipboard", "compression", "consortium-standard", "all"]
27+
extra: ["test", "pyarrow", "performance", "computation", "fss", "aws", "gcp", "excel", "parquet", "feather", "hdf5", "spss", "postgresql", "mysql", "sql-other", "html", "xml", "plot", "output-formatting", "clipboard", "compression", "all"]
2828
fail-fast: false
2929
name: Install Extras - ${{ matrix.extra }}
3030
concurrency:

.github/workflows/unit-tests.yml

Lines changed: 1 addition & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -64,21 +64,10 @@ jobs:
6464
- name: "Numpy Dev"
6565
env_file: actions-311-numpydev.yaml
6666
pattern: "not slow and not network and not single_cpu"
67-
# Currently restricted the warnings that error to Deprecation Warnings from numpy
68-
# done since pyarrow isn't compatible with numpydev always
69-
# TODO: work with pyarrow to revert this?
70-
test_args: "-W error::DeprecationWarning:numpy -W error::FutureWarning:numpy"
67+
test_args: "-W error::DeprecationWarning -W error::FutureWarning"
7168
- name: "Pyarrow Nightly"
7269
env_file: actions-311-pyarrownightly.yaml
7370
pattern: "not slow and not network and not single_cpu"
74-
- name: "ASAN / UBSAN"
75-
env_file: actions-311-sanitizers.yaml
76-
pattern: "not slow and not network and not single_cpu and not skip_ubsan"
77-
asan_options: "ASAN_OPTIONS=detect_leaks=0"
78-
preload: LD_PRELOAD=$(gcc -print-file-name=libasan.so)
79-
meson_args: --config-settings=setup-args="-Db_sanitize=address,undefined"
80-
cflags_adds: -fno-sanitize-recover=all
81-
pytest_workers: -1 # disable pytest-xdist as it swallows stderr from ASAN
8271
fail-fast: false
8372
name: ${{ matrix.name || format('ubuntu-latest {0}', matrix.env_file) }}
8473
env:
@@ -164,18 +153,12 @@ jobs:
164153
- name: Test (not single_cpu)
165154
uses: ./.github/actions/run-tests
166155
if: ${{ matrix.name != 'Pypy' }}
167-
with:
168-
preload: ${{ matrix.preload }}
169-
asan_options: ${{ matrix.asan_options }}
170156
env:
171157
# Set pattern to not single_cpu if not already set
172158
PATTERN: ${{ env.PATTERN == '' && 'not single_cpu' || matrix.pattern }}
173159

174160
- name: Test (single_cpu)
175161
uses: ./.github/actions/run-tests
176-
with:
177-
preload: ${{ matrix.preload }}
178-
asan_options: ${{ matrix.asan_options }}
179162
env:
180163
PATTERN: 'single_cpu'
181164
PYTEST_WORKERS: 0

.github/workflows/wheels.yml

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

142142
- name: Build normal wheels
143143
if: ${{ (env.IS_SCHEDULE_DISPATCH != 'true' || env.IS_PUSH == 'true') }}
144-
uses: pypa/cibuildwheel@v2.16.5
144+
uses: pypa/cibuildwheel@v2.17.0
145145
with:
146146
package-dir: ./dist/${{ startsWith(matrix.buildplat[1], 'macosx') && env.sdist_name || needs.build_sdist.outputs.sdist_file }}
147147
env:
@@ -150,7 +150,7 @@ jobs:
150150

151151
- name: Build nightly wheels (with NumPy pre-release)
152152
if: ${{ (env.IS_SCHEDULE_DISPATCH == 'true' && env.IS_PUSH != 'true') }}
153-
uses: pypa/cibuildwheel@v2.16.5
153+
uses: pypa/cibuildwheel@v2.17.0
154154
with:
155155
package-dir: ./dist/${{ startsWith(matrix.buildplat[1], 'macosx') && env.sdist_name || needs.build_sdist.outputs.sdist_file }}
156156
env:

.pre-commit-config.yaml

Lines changed: 9 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ ci:
1919
skip: [pylint, pyright, mypy]
2020
repos:
2121
- repo: https://github.com/astral-sh/ruff-pre-commit
22-
rev: v0.1.13
22+
rev: v0.3.1
2323
hooks:
2424
- id: ruff
2525
args: [--exit-non-zero-on-fix]
@@ -30,6 +30,12 @@ repos:
3030
files: ^pandas
3131
exclude: ^pandas/tests
3232
args: [--select, "ANN001,ANN2", --fix-only, --exit-non-zero-on-fix]
33+
- id: ruff
34+
name: ruff-use-pd_array-in-core
35+
alias: ruff-use-pd_array-in-core
36+
files: ^pandas/core/
37+
exclude: ^pandas/core/api\.py$
38+
args: [--select, "ICN001", --exit-non-zero-on-fix]
3339
- id: ruff-format
3440
exclude: ^scripts
3541
- repo: https://github.com/jendrikseipp/vulture
@@ -53,13 +59,11 @@ repos:
5359
- repo: https://github.com/pre-commit/pre-commit-hooks
5460
rev: v4.5.0
5561
hooks:
56-
- id: check-ast
5762
- id: check-case-conflict
5863
- id: check-toml
5964
- id: check-xml
6065
- id: check-yaml
6166
exclude: ^ci/meta.yaml$
62-
- id: debug-statements
6367
- id: end-of-file-fixer
6468
exclude: \.txt$
6569
- id: mixed-line-ending
@@ -74,7 +78,7 @@ repos:
7478
hooks:
7579
- id: pylint
7680
stages: [manual]
77-
args: [--load-plugins=pylint.extensions.redefined_loop_name]
81+
args: [--load-plugins=pylint.extensions.redefined_loop_name, --fail-on=I0021]
7882
- id: pylint
7983
alias: redefined-outer-name
8084
name: Redefining name from outer scope
@@ -129,7 +133,7 @@ repos:
129133
types: [python]
130134
stages: [manual]
131135
additional_dependencies: &pyright_dependencies
132-
136+
133137
- id: pyright
134138
# note: assumes python env is setup and activated
135139
name: pyright reportGeneralTypeIssues
@@ -274,13 +278,6 @@ repos:
274278
language: python
275279
entry: python scripts/validate_unwanted_patterns.py --validation-type="nodefault_used_not_only_for_typing"
276280
types: [python]
277-
- id: use-pd_array-in-core
278-
name: Import pandas.array as pd_array in core
279-
language: python
280-
entry: python scripts/use_pd_array_in_core.py
281-
files: ^pandas/core/
282-
exclude: ^pandas/core/api\.py$
283-
types: [python]
284281
- id: no-return-exception
285282
name: Use raise instead of return for exceptions
286283
language: pygrep

Dockerfile

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@ RUN apt-get install -y build-essential
99
RUN apt-get install -y libhdf5-dev libgles2-mesa-dev
1010

1111
RUN python -m pip install --upgrade pip
12-
RUN python -m pip install \
13-
-r https://raw.githubusercontent.com/pandas-dev/pandas/main/requirements-dev.txt
12+
COPY requirements-dev.txt /tmp
13+
RUN python -m pip install -r /tmp/requirements-dev.txt
14+
RUN git config --global --add safe.directory /home/pandas
1415
CMD ["/bin/bash"]

asv_bench/benchmarks/categoricals.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,7 +88,7 @@ def setup(self):
8888
)
8989

9090
for col in ("int", "float", "timestamp"):
91-
self.df[col + "_as_str"] = self.df[col].astype(str)
91+
self.df[f"{col}_as_str"] = self.df[col].astype(str)
9292

9393
for col in self.df.columns:
9494
self.df[col] = self.df[col].astype("category")

asv_bench/benchmarks/indexing.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
lower-level methods directly on Index and subclasses, see index_object.py,
44
indexing_engine.py, and index_cached.py
55
"""
6+
67
from datetime import datetime
78
import warnings
89

0 commit comments

Comments
 (0)