Skip to content

Commit 3c614a9

Browse files
committed
Merge remote-tracking branch 'upstream/main' into 47216
2 parents 9dd728d + 27135a5 commit 3c614a9

File tree

143 files changed

+2649
-1077
lines changed

Some content is hidden

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

143 files changed

+2649
-1077
lines changed

.github/CODE_OF_CONDUCT.md

-62
This file was deleted.

.github/CONTRIBUTING.md

-3
This file was deleted.

.github/FUNDING.yml

-3
This file was deleted.

.github/SECURITY.md

-1
This file was deleted.

.github/actions/build_pandas/action.yml

+3-1
Original file line numberDiff line numberDiff line change
@@ -17,4 +17,6 @@ runs:
1717
shell: bash -el {0}
1818
env:
1919
# Cannot use parallel compilation on Windows, see https://github.com/pandas-dev/pandas/issues/30873
20-
N_JOBS: ${{ runner.os == 'Windows' && 1 || 2 }}
20+
# GH 47305: Parallel build causes flaky ImportError: /home/runner/work/pandas/pandas/pandas/_libs/tslibs/timestamps.cpython-38-x86_64-linux-gnu.so: undefined symbol: pandas_datetime_to_datetimestruct
21+
N_JOBS: 1
22+
#N_JOBS: ${{ runner.os == 'Windows' && 1 || 2 }}

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

+27
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,27 @@
1+
name: Run tests and report results
2+
runs:
3+
using: composite
4+
steps:
5+
- name: Test
6+
run: ci/run_tests.sh
7+
shell: bash -el {0}
8+
9+
- name: Publish test results
10+
uses: actions/upload-artifact@v2
11+
with:
12+
name: Test results
13+
path: test-data.xml
14+
if: failure()
15+
16+
- name: Report Coverage
17+
run: coverage report -m
18+
shell: bash -el {0}
19+
if: failure()
20+
21+
- name: Upload coverage to Codecov
22+
uses: codecov/codecov-action@v2
23+
with:
24+
flags: unittests
25+
name: codecov-pandas
26+
fail_ci_if_error: false
27+
if: failure()

.github/workflows/code-checks.yml

+37-6
Original file line numberDiff line numberDiff line change
@@ -65,37 +65,39 @@ jobs:
6565
id: build
6666
uses: ./.github/actions/build_pandas
6767

68+
# The following checks are independent of each other and should still be run if one fails
6869
- name: Check for no warnings when building single-page docs
6970
run: ci/code_checks.sh single-docs
70-
if: ${{ steps.build.outcome == 'success' }}
71+
if: ${{ steps.build.outcome == 'success' && always() }}
7172

7273
- name: Run checks on imported code
7374
run: ci/code_checks.sh code
74-
if: ${{ steps.build.outcome == 'success' }}
75+
if: ${{ steps.build.outcome == 'success' && always() }}
7576

7677
- name: Run doctests
7778
run: ci/code_checks.sh doctests
78-
if: ${{ steps.build.outcome == 'success' }}
79+
if: ${{ steps.build.outcome == 'success' && always() }}
7980

8081
- name: Run docstring validation
8182
run: ci/code_checks.sh docstrings
82-
if: ${{ steps.build.outcome == 'success' }}
83+
if: ${{ steps.build.outcome == 'success' && always() }}
8384

8485
- name: Use existing environment for type checking
8586
run: |
8687
echo $PATH >> $GITHUB_PATH
8788
echo "PYTHONHOME=$PYTHONHOME" >> $GITHUB_ENV
8889
echo "PYTHONPATH=$PYTHONPATH" >> $GITHUB_ENV
90+
if: ${{ steps.build.outcome == 'success' && always() }}
8991

9092
- name: Typing
9193
uses: pre-commit/[email protected]
9294
with:
9395
extra_args: --hook-stage manual --all-files
94-
if: ${{ steps.build.outcome == 'success' }}
96+
if: ${{ steps.build.outcome == 'success' && always() }}
9597

9698
- name: Run docstring validation script tests
9799
run: pytest scripts
98-
if: ${{ steps.build.outcome == 'success' }}
100+
if: ${{ steps.build.outcome == 'success' && always() }}
99101

100102
asv-benchmarks:
101103
name: ASV Benchmarks
@@ -157,3 +159,32 @@ jobs:
157159

158160
- name: Build image
159161
run: docker build --pull --no-cache --tag pandas-dev-env .
162+
163+
requirements-dev-text-installable:
164+
name: Test install requirements-dev.txt
165+
runs-on: ubuntu-latest
166+
167+
concurrency:
168+
# https://github.community/t/concurrecy-not-work-for-push/183068/7
169+
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-requirements-dev-text-installable
170+
cancel-in-progress: true
171+
172+
steps:
173+
- name: Checkout
174+
uses: actions/checkout@v3
175+
with:
176+
fetch-depth: 0
177+
178+
- name: Setup Python
179+
id: setup_python
180+
uses: actions/setup-python@v3
181+
with:
182+
python-version: '3.8'
183+
cache: 'pip'
184+
cache-dependency-path: 'requirements-dev.txt'
185+
186+
- name: Install requirements-dev.txt
187+
run: pip install -r requirements-dev.txt
188+
189+
- name: Check Pip Cache Hit
190+
run: echo ${{ steps.setup_python.outputs.cache-hit }}

.github/workflows/comment_bot.yml

-40
This file was deleted.

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

+5
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,11 @@ jobs:
4646
- name: Build documentation
4747
run: doc/make.py --warnings-are-errors
4848

49+
- name: Build the interactive terminal
50+
run: |
51+
cd web/interactive_terminal
52+
jupyter lite build
53+
4954
- name: Install ssh key
5055
run: |
5156
mkdir -m 700 -p ~/.ssh

.github/workflows/macos-windows.yml

+4-16
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,6 @@ on:
1515
env:
1616
PANDAS_CI: 1
1717
PYTEST_TARGET: pandas
18-
PYTEST_WORKERS: auto
1918
PATTERN: "not slow and not db and not network and not single_cpu"
2019

2120

@@ -36,6 +35,9 @@ jobs:
3635
# https://github.community/t/concurrecy-not-work-for-push/183068/7
3736
group: ${{ github.event_name == 'push' && github.run_number || github.ref }}-${{ matrix.env_file }}-${{ matrix.os }}
3837
cancel-in-progress: true
38+
env:
39+
# GH 47443: PYTEST_WORKERS > 1 crashes Windows builds with memory related errors
40+
PYTEST_WORKERS: ${{ matrix.os == 'macos-latest' && 'auto' || '1' }}
3941

4042
steps:
4143
- name: Checkout
@@ -53,18 +55,4 @@ jobs:
5355
uses: ./.github/actions/build_pandas
5456

5557
- name: Test
56-
run: ci/run_tests.sh
57-
58-
- name: Publish test results
59-
uses: actions/upload-artifact@v3
60-
with:
61-
name: Test results
62-
path: test-data.xml
63-
if: failure()
64-
65-
- name: Upload coverage to Codecov
66-
uses: codecov/codecov-action@v2
67-
with:
68-
flags: unittests
69-
name: codecov-pandas
70-
fail_ci_if_error: false
58+
uses: ./.github/actions/run-tests

.github/workflows/python-dev.yml

+10-30
Original file line numberDiff line numberDiff line change
@@ -57,40 +57,20 @@ jobs:
5757
- name: Install dependencies
5858
shell: bash -el {0}
5959
run: |
60-
python -m pip install --upgrade pip setuptools wheel
61-
pip install -i https://pypi.anaconda.org/scipy-wheels-nightly/simple numpy
62-
pip install git+https://github.com/nedbat/coveragepy.git
63-
pip install cython python-dateutil pytz hypothesis pytest>=6.2.5 pytest-xdist pytest-cov
64-
pip list
60+
python3 -m pip install --upgrade pip setuptools wheel
61+
python3 -m pip install -i https://pypi.anaconda.org/scipy-wheels-nightly/simple numpy
62+
python3 -m pip install git+https://github.com/nedbat/coveragepy.git
63+
python3 -m pip install cython python-dateutil pytz hypothesis pytest>=6.2.5 pytest-xdist pytest-cov pytest-asyncio>=0.17
64+
python3 -m pip list
6565
6666
- name: Build Pandas
6767
run: |
68-
python setup.py build_ext -q -j2
69-
python -m pip install -e . --no-build-isolation --no-use-pep517
68+
python3 setup.py build_ext -q -j2
69+
python3 -m pip install -e . --no-build-isolation --no-use-pep517
7070
7171
- name: Build Version
7272
run: |
73-
python -c "import pandas; pandas.show_versions();"
73+
python3 -c "import pandas; pandas.show_versions();"
7474
75-
- name: Test with pytest
76-
shell: bash -el {0}
77-
run: |
78-
ci/run_tests.sh
79-
80-
- name: Publish test results
81-
uses: actions/upload-artifact@v3
82-
with:
83-
name: Test results
84-
path: test-data.xml
85-
if: failure()
86-
87-
- name: Report Coverage
88-
run: |
89-
coverage report -m
90-
91-
- name: Upload coverage to Codecov
92-
uses: codecov/codecov-action@v2
93-
with:
94-
flags: unittests
95-
name: codecov-pandas
96-
fail_ci_if_error: true
75+
- name: Test
76+
uses: ./.github/actions/run-tests

.github/workflows/posix.yml renamed to .github/workflows/ubuntu.yml

+3-20
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Posix
1+
name: Ubuntu
22

33
on:
44
push:
@@ -145,7 +145,7 @@ jobs:
145145

146146
- name: Extra installs
147147
# xsel for clipboard tests
148-
run: sudo apt-get update && sudo apt-get install -y libc6-dev-i386 xsel ${{ env.EXTRA_APT }}
148+
run: sudo apt-get update && sudo apt-get install -y xsel ${{ env.EXTRA_APT }}
149149

150150
- name: Set up Conda
151151
uses: ./.github/actions/setup-conda
@@ -157,23 +157,6 @@ jobs:
157157
uses: ./.github/actions/build_pandas
158158

159159
- name: Test
160-
run: ci/run_tests.sh
160+
uses: ./.github/actions/run-tests
161161
# TODO: Don't continue on error for PyPy
162162
continue-on-error: ${{ env.IS_PYPY == 'true' }}
163-
164-
- name: Build Version
165-
run: conda list
166-
167-
- name: Publish test results
168-
uses: actions/upload-artifact@v3
169-
with:
170-
name: Test results
171-
path: test-data.xml
172-
if: failure()
173-
174-
- name: Upload coverage to Codecov
175-
uses: codecov/codecov-action@v2
176-
with:
177-
flags: unittests
178-
name: codecov-pandas
179-
fail_ci_if_error: false

.gitignore

+4
Original file line numberDiff line numberDiff line change
@@ -122,3 +122,7 @@ doc/build/html/index.html
122122
doc/tmp.sv
123123
env/
124124
doc/source/savefig/
125+
126+
# Interactive terminal generated files #
127+
########################################
128+
.jupyterlite.doit.db

ci/deps/actions-310.yaml

+1-2
Original file line numberDiff line numberDiff line change
@@ -31,8 +31,7 @@ dependencies:
3131
- jinja2
3232
- lxml
3333
- matplotlib
34-
# TODO: uncomment after numba supports py310
35-
#- numba
34+
- numba
3635
- numexpr
3736
- openpyxl
3837
- odfpy

doc/source/conf.py

-1
Original file line numberDiff line numberDiff line change
@@ -447,7 +447,6 @@
447447
"py": ("https://pylib.readthedocs.io/en/latest/", None),
448448
"python": ("https://docs.python.org/3/", None),
449449
"scipy": ("https://docs.scipy.org/doc/scipy/", None),
450-
"statsmodels": ("https://www.statsmodels.org/devel/", None),
451450
"pyarrow": ("https://arrow.apache.org/docs/", None),
452451
}
453452

0 commit comments

Comments
 (0)