Skip to content

Commit 5865cfb

Browse files
committed
Merge branch 'master' into master
2 parents 8d8b260 + 4663377 commit 5865cfb

File tree

1,424 files changed

+114821
-68176
lines changed

Some content is hidden

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

1,424 files changed

+114821
-68176
lines changed

.github/ISSUE_TEMPLATE/documentation_improvement.md

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ labels: "Docs, Needs Triage"
99

1010
#### Location of the documentation
1111

12-
[this should provide the location of the documentation, e.g. "pandas.read_csv" or the URL of the documentation, e.g. "https://dev.pandas.io/docs/reference/api/pandas.read_csv.html"]
12+
[this should provide the location of the documentation, e.g. "pandas.read_csv" or the URL of the documentation, e.g. "https://pandas.pydata.org/docs/reference/api/pandas.read_csv.html"]
1313

1414
**Note**: You can check the latest versions of the docs on `master` [here](https://pandas.pydata.org/docs/dev/).
1515

.github/PULL_REQUEST_TEMPLATE.md

+1-2
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
- [ ] closes #xxxx
22
- [ ] tests added / passed
3-
- [ ] passes `black pandas`
4-
- [ ] passes `git diff upstream/master -u -- "*.py" | flake8 --diff`
3+
- [ ] Ensure all linting tests pass, see [here](https://pandas.pydata.org/pandas-docs/dev/development/contributing.html#code-standards) for how to run them
54
- [ ] whatsnew entry
+17
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
name: Build pandas
2+
description: Rebuilds the C extensions and installs pandas
3+
runs:
4+
using: composite
5+
steps:
6+
7+
- name: Environment Detail
8+
run: |
9+
conda info
10+
conda list
11+
shell: bash -l {0}
12+
13+
- name: Build Pandas
14+
run: |
15+
python setup.py build_ext -j 2
16+
python -m pip install -e . --no-build-isolation --no-use-pep517
17+
shell: bash -l {0}

.github/actions/setup/action.yml

+12
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
name: Set up pandas
2+
description: Runs all the setup steps required to have a built pandas ready to use
3+
runs:
4+
using: composite
5+
steps:
6+
- name: Setting conda path
7+
run: echo "${HOME}/miniconda3/bin" >> $GITHUB_PATH
8+
shell: bash -l {0}
9+
10+
- name: Setup environment and build pandas
11+
run: ci/setup_env.sh
12+
shell: bash -l {0}

.github/workflows/ci.yml

+84-34
Original file line numberDiff line numberDiff line change
@@ -2,74 +2,82 @@ name: CI
22

33
on:
44
push:
5-
branches: master
5+
branches:
6+
- master
67
pull_request:
78
branches:
89
- master
910
- 1.2.x
11+
- 1.3.x
1012

1113
env:
1214
ENV_FILE: environment.yml
15+
PANDAS_CI: 1
1316

1417
jobs:
1518
checks:
1619
name: Checks
1720
runs-on: ubuntu-latest
18-
steps:
21+
defaults:
22+
run:
23+
shell: bash -l {0}
1924

20-
- name: Setting conda path
21-
run: echo "${HOME}/miniconda3/bin" >> $GITHUB_PATH
25+
concurrency:
26+
group: ${{ github.ref }}-checks
27+
cancel-in-progress: true
2228

29+
steps:
2330
- name: Checkout
24-
uses: actions/checkout@v1
31+
uses: actions/checkout@v2
32+
with:
33+
fetch-depth: 0
2534

2635
- name: Looking for unwanted patterns
2736
run: ci/code_checks.sh patterns
2837
if: always()
2938

30-
- name: Setup environment and build pandas
31-
run: ci/setup_env.sh
32-
if: always()
39+
- name: Cache conda
40+
uses: actions/cache@v2
41+
with:
42+
path: ~/conda_pkgs_dir
43+
key: ${{ runner.os }}-conda-${{ hashFiles('${{ env.ENV_FILE }}') }}
44+
45+
- uses: conda-incubator/setup-miniconda@v2
46+
with:
47+
activate-environment: pandas-dev
48+
channel-priority: strict
49+
environment-file: ${{ env.ENV_FILE }}
50+
use-only-tar-bz2: true
51+
52+
- name: Build Pandas
53+
uses: ./.github/actions/build_pandas
3354

3455
- name: Linting
35-
run: |
36-
source activate pandas-dev
37-
ci/code_checks.sh lint
56+
run: ci/code_checks.sh lint
3857
if: always()
3958

4059
- name: Checks on imported code
41-
run: |
42-
source activate pandas-dev
43-
ci/code_checks.sh code
60+
run: ci/code_checks.sh code
4461
if: always()
4562

4663
- name: Running doctests
47-
run: |
48-
source activate pandas-dev
49-
ci/code_checks.sh doctests
64+
run: ci/code_checks.sh doctests
5065
if: always()
5166

5267
- name: Docstring validation
53-
run: |
54-
source activate pandas-dev
55-
ci/code_checks.sh docstrings
68+
run: ci/code_checks.sh docstrings
5669
if: always()
5770

5871
- name: Typing validation
59-
run: |
60-
source activate pandas-dev
61-
ci/code_checks.sh typing
72+
run: ci/code_checks.sh typing
6273
if: always()
6374

6475
- name: Testing docstring validation script
65-
run: |
66-
source activate pandas-dev
67-
pytest --capture=no --strict-markers scripts
76+
run: pytest scripts
6877
if: always()
6978

7079
- name: Running benchmarks
7180
run: |
72-
source activate pandas-dev
7381
cd asv_bench
7482
asv check -E existing
7583
git remote add upstream https://github.com/pandas-dev/pandas.git
@@ -91,22 +99,24 @@ jobs:
9199
web_and_docs:
92100
name: Web and docs
93101
runs-on: ubuntu-latest
94-
steps:
95102

96-
- name: Setting conda path
97-
run: echo "${HOME}/miniconda3/bin" >> $GITHUB_PATH
103+
concurrency:
104+
group: ${{ github.ref }}-web-docs
105+
cancel-in-progress: true
98106

107+
steps:
99108
- name: Checkout
100-
uses: actions/checkout@v1
109+
uses: actions/checkout@v2
110+
with:
111+
fetch-depth: 0
101112

102-
- name: Setup environment and build pandas
103-
run: ci/setup_env.sh
113+
- name: Set up pandas
114+
uses: ./.github/actions/setup
104115

105116
- name: Build website
106117
run: |
107118
source activate pandas-dev
108119
python web/pandas_web.py web/pandas --target-path=web/build
109-
110120
- name: Build documentation
111121
run: |
112122
source activate pandas-dev
@@ -132,3 +142,43 @@ jobs:
132142
- name: Upload dev docs
133143
run: rsync -az --delete doc/build/html/ docs@${{ secrets.server_ip }}:/usr/share/nginx/pandas/pandas-docs/dev
134144
if: github.event_name == 'push'
145+
146+
- name: Move docs into site directory
147+
run: mv doc/build/html web/build/docs
148+
- name: Save website as an artifact
149+
uses: actions/upload-artifact@v2
150+
with:
151+
name: website
152+
path: web/build
153+
retention-days: 14
154+
155+
data_manager:
156+
name: Test experimental data manager
157+
runs-on: ubuntu-latest
158+
strategy:
159+
matrix:
160+
pattern: ["not slow and not network and not clipboard", "slow"]
161+
concurrency:
162+
group: ${{ github.ref }}-data_manager-${{ matrix.pattern }}
163+
cancel-in-progress: true
164+
165+
steps:
166+
- name: Checkout
167+
uses: actions/checkout@v2
168+
with:
169+
fetch-depth: 0
170+
171+
- name: Set up pandas
172+
uses: ./.github/actions/setup
173+
174+
- name: Run tests
175+
env:
176+
PANDAS_DATA_MANAGER: array
177+
PATTERN: ${{ matrix.pattern }}
178+
PYTEST_WORKERS: "auto"
179+
run: |
180+
source activate pandas-dev
181+
ci/run_tests.sh
182+
183+
- name: Print skipped tests
184+
run: python ci/print_skipped.py

.github/workflows/comment_bot.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ jobs:
2929
- name: Install-pre-commit
3030
run: python -m pip install --upgrade pre-commit
3131
- name: Run pre-commit
32-
run: pre-commit run --all-files || (exit 0)
32+
run: pre-commit run --from-ref=origin/master --to-ref=HEAD --all-files || (exit 0)
3333
- name: Commit results
3434
run: |
3535
git config user.name "$(git log -1 --pretty=format:%an)"

0 commit comments

Comments
 (0)