Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: pandas-dev/pandas
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: main
Choose a base ref
...
head repository: pandas-dev/pandas
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 1.5.x
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
Loading
Showing 341 changed files with 4,886 additions and 2,410 deletions.
7 changes: 5 additions & 2 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -4,7 +4,7 @@ jobs:
test-arm:
machine:
image: ubuntu-2004:202101-01
resource_class: arm.medium
resource_class: arm.large
environment:
ENV_FILE: ci/deps/circle-38-arm64.yaml
PYTEST_WORKERS: auto
@@ -14,7 +14,10 @@ jobs:
steps:
- checkout
- run: .circleci/setup_env.sh
- run: PATH=$HOME/miniconda3/envs/pandas-dev/bin:$HOME/miniconda3/condabin:$PATH ci/run_tests.sh
- run: >
PATH=$HOME/miniconda3/envs/pandas-dev/bin:$HOME/miniconda3/condabin:$PATH
LD_PRELOAD=$HOME/miniconda3/envs/pandas-dev/lib/libgomp.so.1:$LD_PRELOAD
ci/run_tests.sh
workflows:
test:
3 changes: 1 addition & 2 deletions .devcontainer.json
Original file line number Diff line number Diff line change
@@ -9,8 +9,7 @@
// You can edit these settings after create using File > Preferences > Settings > Remote.
"settings": {
"terminal.integrated.shell.linux": "/bin/bash",
"python.condaPath": "/opt/conda/bin/conda",
"python.pythonPath": "/opt/conda/bin/python",
"python.pythonPath": "/usr/local/bin/python",
"python.formatting.provider": "black",
"python.linting.enabled": true,
"python.linting.flake8Enabled": true,
2 changes: 1 addition & 1 deletion .github/actions/setup-conda/action.yml
Original file line number Diff line number Diff line change
@@ -18,7 +18,7 @@ runs:
- name: Set Arrow version in ${{ inputs.environment-file }} to ${{ inputs.pyarrow-version }}
run: |
grep -q ' - pyarrow' ${{ inputs.environment-file }}
sed -i"" -e "s/ - pyarrow/ - pyarrow=${{ inputs.pyarrow-version }}/" ${{ inputs.environment-file }}
sed -i"" -e "s/ - pyarrow<10/ - pyarrow=${{ inputs.pyarrow-version }}/" ${{ inputs.environment-file }}
cat ${{ inputs.environment-file }}
shell: bash
if: ${{ inputs.pyarrow-version }}
6 changes: 3 additions & 3 deletions .github/workflows/32-bit-linux.yml
Original file line number Diff line number Diff line change
@@ -4,11 +4,11 @@ on:
push:
branches:
- main
- 1.4.x
- 1.5.x
pull_request:
branches:
- main
- 1.4.x
- 1.5.x
paths-ignore:
- "doc/**"

@@ -17,7 +17,7 @@ permissions:

jobs:
pytest:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Checkout
uses: actions/checkout@v3
2 changes: 1 addition & 1 deletion .github/workflows/assign.yml
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@ jobs:
permissions:
issues: write
pull-requests: write
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- if: github.event.comment.body == 'take'
run: |
2 changes: 1 addition & 1 deletion .github/workflows/asv-bot.yml
Original file line number Diff line number Diff line change
@@ -21,7 +21,7 @@ jobs:
name: "Run benchmarks"
# TODO: Support more benchmarking options later, against different branches, against self, etc
if: startsWith(github.event.comment.body, '@github-actions benchmark')
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
defaults:
run:
shell: bash -el {0}
4 changes: 2 additions & 2 deletions .github/workflows/autoupdate-pre-commit-config.yml
Original file line number Diff line number Diff line change
@@ -15,10 +15,10 @@ jobs:
pull-requests: write # for technote-space/create-pr-action to create a PR
if: github.repository_owner == 'pandas-dev'
name: Autoupdate pre-commit config
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v4
- name: Cache multiple paths
uses: actions/cache@v3
with:
23 changes: 13 additions & 10 deletions .github/workflows/code-checks.yml
Original file line number Diff line number Diff line change
@@ -4,11 +4,11 @@ on:
push:
branches:
- main
- 1.4.x
- 1.5.x
pull_request:
branches:
- main
- 1.4.x
- 1.5.x

env:
ENV_FILE: environment.yml
@@ -20,7 +20,7 @@ permissions:
jobs:
pre_commit:
name: pre-commit
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
concurrency:
# https://github.community/t/concurrecy-not-work-for-push/183068/7
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-pre-commit
@@ -30,16 +30,16 @@ jobs:
uses: actions/checkout@v3

- name: Install Python
uses: actions/setup-python@v3
uses: actions/setup-python@v4
with:
python-version: '3.9.7'
python-version: '3.9'

- name: Run pre-commit
uses: pre-commit/action@v2.0.3

typing_and_docstring_validation:
name: Docstring and typing validation
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
defaults:
run:
shell: bash -el {0}
@@ -98,7 +98,7 @@ jobs:

asv-benchmarks:
name: ASV Benchmarks
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
defaults:
run:
shell: bash -el {0}
@@ -129,7 +129,7 @@ jobs:
build_docker_dev_environment:
name: Build Docker Dev Environment
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
defaults:
run:
shell: bash -el {0}
@@ -151,9 +151,12 @@ jobs:
- name: Build image
run: docker build --pull --no-cache --tag pandas-dev-env .

- name: Show environment
run: docker run --rm pandas-dev-env python -c "import pandas as pd; print(pd.show_versions())"

requirements-dev-text-installable:
name: Test install requirements-dev.txt
runs-on: ubuntu-latest
runs-on: ubuntu-22.04

concurrency:
# https://github.community/t/concurrecy-not-work-for-push/183068/7
@@ -168,7 +171,7 @@ jobs:

- name: Setup Python
id: setup_python
uses: actions/setup-python@v3
uses: actions/setup-python@v4
with:
python-version: '3.8'
cache: 'pip'
2 changes: 1 addition & 1 deletion .github/workflows/codeql.yml
Original file line number Diff line number Diff line change
@@ -10,7 +10,7 @@ concurrency:

jobs:
analyze:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
permissions:
actions: read
contents: read
16 changes: 8 additions & 8 deletions .github/workflows/docbuild-and-upload.yml
Original file line number Diff line number Diff line change
@@ -4,13 +4,13 @@ on:
push:
branches:
- main
- 1.4.x
- 1.5.x
tags:
- '*'
pull_request:
branches:
- main
- 1.4.x
- 1.5.x

env:
ENV_FILE: environment.yml
@@ -22,7 +22,7 @@ permissions:
jobs:
web_and_docs:
name: Doc Build and Upload
runs-on: ubuntu-latest
runs-on: ubuntu-22.04

concurrency:
# https://github.community/t/concurrecy-not-work-for-push/183068/7
@@ -64,22 +64,22 @@ jobs:
mkdir -m 700 -p ~/.ssh
echo "${{ secrets.server_ssh_key }}" > ~/.ssh/id_rsa
chmod 600 ~/.ssh/id_rsa
echo "${{ secrets.server_ip }} ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBE1Kkopomm7FHG5enATf7SgnpICZ4W2bw+Ho+afqin+w7sMcrsa0je7sbztFAV8YchDkiBKnWTG4cRT+KZgZCaY=" > ~/.ssh/known_hosts
if: github.event_name == 'push' && github.ref == 'refs/heads/main'
echo "${{ secrets.server_ip }} ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBFjYkJBk7sos+r7yATODogQc3jUdW1aascGpyOD4bohj8dWjzwLJv/OJ/fyOQ5lmj81WKDk67tGtqNJYGL9acII=" > ~/.ssh/known_hosts
if: github.event_name == 'push' && (github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/'))

- name: Copy cheatsheets into site directory
run: cp doc/cheatsheet/Pandas_Cheat_Sheet* web/build/

- name: Upload web
run: rsync -az --delete --exclude='pandas-docs' --exclude='docs' web/build/ docs@${{ secrets.server_ip }}:/usr/share/nginx/pandas
run: rsync -az --delete --exclude='pandas-docs' --exclude='docs' web/build/ web@${{ secrets.server_ip }}:/var/www/html
if: github.event_name == 'push' && github.ref == 'refs/heads/main'

- name: Upload dev docs
run: rsync -az --delete doc/build/html/ docs@${{ secrets.server_ip }}:/usr/share/nginx/pandas/pandas-docs/dev
run: rsync -az --delete doc/build/html/ web@${{ secrets.server_ip }}:/var/www/html/pandas-docs/dev
if: github.event_name == 'push' && github.ref == 'refs/heads/main'

- name: Upload prod docs
run: rsync -az --delete doc/build/html/ docs@${{ secrets.server_ip }}:/usr/share/nginx/pandas/pandas-docs/version/${GITHUB_REF_NAME}
run: rsync -az --delete doc/build/html/ web@${{ secrets.server_ip }}:/var/www/html/pandas-docs/version/${GITHUB_REF_NAME:1}
if: github.event_name == 'push' && startsWith(github.ref, 'refs/tags/')

- name: Move docs into site directory
6 changes: 3 additions & 3 deletions .github/workflows/macos-windows.yml
Original file line number Diff line number Diff line change
@@ -4,11 +4,11 @@ on:
push:
branches:
- main
- 1.4.x
- 1.5.x
pull_request:
branches:
- main
- 1.4.x
- 1.5.x
paths-ignore:
- "doc/**"

@@ -26,7 +26,7 @@ jobs:
defaults:
run:
shell: bash -el {0}
timeout-minutes: 120
timeout-minutes: 180
strategy:
matrix:
os: [macos-latest, windows-latest]
15 changes: 8 additions & 7 deletions .github/workflows/python-dev.yml
Original file line number Diff line number Diff line change
@@ -24,11 +24,11 @@ on:
push:
branches:
- main
- 1.4.x
- 1.5.x
pull_request:
branches:
- main
- 1.4.x
- 1.5.x
paths-ignore:
- "doc/**"

@@ -49,10 +49,10 @@ jobs:
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macOS-latest, windows-latest]
os: [ubuntu-22.04, macOS-latest, windows-latest]

name: actions-311-dev
timeout-minutes: 80
timeout-minutes: 120

concurrency:
#https://github.community/t/concurrecy-not-work-for-push/183068/7
@@ -73,15 +73,16 @@ jobs:
run: |
python --version
python -m pip install --upgrade pip setuptools wheel
python -m pip install git+https://github.com/numpy/numpy.git
python -m pip install --pre --extra-index-url https://pypi.anaconda.org/scipy-wheels-nightly/simple numpy
python -m pip install git+https://github.com/nedbat/coveragepy.git
python -m pip install python-dateutil pytz cython hypothesis==6.52.1 pytest>=6.2.5 pytest-xdist pytest-cov pytest-asyncio>=0.17
python -m pip list
# GH 47305: Parallel build can cause flaky ImportError from pandas/_libs/tslibs
- name: Build Pandas
run: |
python setup.py build_ext -q -j2
python -m pip install -e . --no-build-isolation --no-use-pep517
python setup.py build_ext -q -j1
python -m pip install -e . --no-build-isolation --no-use-pep517 --no-index
- name: Build Version
run: |
12 changes: 7 additions & 5 deletions .github/workflows/sdist.yml
Original file line number Diff line number Diff line change
@@ -4,11 +4,11 @@ on:
push:
branches:
- main
- 1.4.x
- 1.5.x
pull_request:
branches:
- main
- 1.4.x
- 1.5.x
types: [labeled, opened, synchronize, reopened]
paths-ignore:
- "doc/**"
@@ -19,7 +19,7 @@ permissions:
jobs:
build:
if: ${{ github.event.label.name == 'Build' || contains(github.event.pull_request.labels.*.name, 'Build') || github.event_name == 'push'}}
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
timeout-minutes: 60
defaults:
run:
@@ -28,7 +28,7 @@ jobs:
strategy:
fail-fast: false
matrix:
python-version: ["3.8", "3.9", "3.10"]
python-version: ["3.8", "3.9", "3.10", "3.11"]
concurrency:
# https://github.community/t/concurrecy-not-work-for-push/183068/7
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{matrix.python-version}}-sdist
@@ -40,7 +40,7 @@ jobs:
fetch-depth: 0

- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.python-version }}

@@ -84,6 +84,8 @@ jobs:
pip install numpy==1.20.3 ;;
3.10)
pip install numpy==1.21.2 ;;
3.11)
pip install numpy==1.23.2 ;;
esac
- name: Import pandas
2 changes: 1 addition & 1 deletion .github/workflows/stale-pr.yml
Original file line number Diff line number Diff line change
@@ -11,7 +11,7 @@ jobs:
stale:
permissions:
pull-requests: write
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- uses: actions/stale@v4
with:
8 changes: 4 additions & 4 deletions .github/workflows/ubuntu.yml
Original file line number Diff line number Diff line change
@@ -4,11 +4,11 @@ on:
push:
branches:
- main
- 1.4.x
- 1.5.x
pull_request:
branches:
- main
- 1.4.x
- 1.5.x
paths-ignore:
- "doc/**"

@@ -20,11 +20,11 @@ permissions:

jobs:
pytest:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
defaults:
run:
shell: bash -el {0}
timeout-minutes: 120
timeout-minutes: 180
strategy:
matrix:
env_file: [actions-38.yaml, actions-39.yaml, actions-310.yaml]
Loading