@@ -2,86 +2,89 @@ name: CI
2
2
3
3
on :
4
4
push :
5
- branches : master
5
+ branches : [ master]
6
6
pull_request :
7
7
branches :
8
8
- master
9
- - 1.1 .x
9
+ - 1.2 .x
10
10
11
11
env :
12
12
ENV_FILE : environment.yml
13
+ PANDAS_CI : 1
13
14
14
15
jobs :
15
16
checks :
16
17
name : Checks
17
18
runs-on : ubuntu-latest
18
- steps :
19
-
20
- - name : Setting conda path
21
- run : echo "::add-path::${HOME}/miniconda3/bin"
19
+ defaults :
20
+ run :
21
+ shell : bash -l {0}
22
22
23
+ steps :
23
24
- name : Checkout
24
25
uses : actions/checkout@v1
25
26
26
27
- name : Looking for unwanted patterns
27
28
run : ci/code_checks.sh patterns
28
29
if : always()
29
30
30
- - name : Setup environment and build pandas
31
- run : ci/setup_env.sh
32
- if : always()
31
+ - name : Cache conda
32
+ uses : actions/cache@v2
33
+ with :
34
+ path : ~/conda_pkgs_dir
35
+ key : ${{ runner.os }}-conda-${{ hashFiles('${{ env.ENV_FILE }}') }}
33
36
34
- - name : Linting
37
+ - uses : conda-incubator/setup-miniconda@v2
38
+ with :
39
+ activate-environment : pandas-dev
40
+ channel-priority : strict
41
+ environment-file : ${{ env.ENV_FILE }}
42
+ use-only-tar-bz2 : true
43
+
44
+ - name : Environment Detail
35
45
run : |
36
- source activate pandas-dev
37
- ci/code_checks.sh lint
46
+ conda info
47
+ conda list
48
+
49
+ - name : Build Pandas
50
+ run : |
51
+ python setup.py build_ext -j 2
52
+ python -m pip install -e . --no-build-isolation --no-use-pep517
53
+
54
+ - name : Linting
55
+ run : ci/code_checks.sh lint
38
56
if : always()
39
57
40
58
- name : Checks on imported code
41
- run : |
42
- source activate pandas-dev
43
- ci/code_checks.sh code
59
+ run : ci/code_checks.sh code
44
60
if : always()
45
61
46
62
- name : Running doctests
47
- run : |
48
- source activate pandas-dev
49
- ci/code_checks.sh doctests
63
+ run : ci/code_checks.sh doctests
50
64
if : always()
51
65
52
66
- name : Docstring validation
53
- run : |
54
- source activate pandas-dev
55
- ci/code_checks.sh docstrings
67
+ run : ci/code_checks.sh docstrings
56
68
if : always()
57
69
58
70
- name : Typing validation
59
- run : |
60
- source activate pandas-dev
61
- ci/code_checks.sh typing
71
+ run : ci/code_checks.sh typing
62
72
if : always()
63
73
64
74
- name : Testing docstring validation script
65
- run : |
66
- source activate pandas-dev
67
- pytest --capture=no --strict scripts
75
+ run : pytest --capture=no --strict-markers scripts
68
76
if : always()
69
77
70
78
- name : Running benchmarks
71
79
run : |
72
- source activate pandas-dev
73
80
cd asv_bench
74
81
asv check -E existing
75
82
git remote add upstream https://github.com/pandas-dev/pandas.git
76
83
git fetch upstream
77
- if git diff upstream/master --name-only | grep -q "^asv_bench/"; then
78
- asv machine --yes
79
- asv dev | sed "/failed$/ s/^/##[error]/" | tee benchmarks.log
80
- if grep "failed" benchmarks.log > /dev/null ; then
81
- exit 1
82
- fi
83
- else
84
- echo "Benchmarks did not run, no changes detected"
84
+ asv machine --yes
85
+ asv dev | sed "/failed$/ s/^/##[error]/" | tee benchmarks.log
86
+ if grep "failed" benchmarks.log > /dev/null ; then
87
+ exit 1
85
88
fi
86
89
if : always()
87
90
98
101
steps :
99
102
100
103
- name : Setting conda path
101
- run : echo "::set-env name=PATH:: ${HOME}/miniconda3/bin:${PATH}"
104
+ run : echo "${HOME}/miniconda3/bin" >> $GITHUB_PATH
102
105
103
106
- name : Checkout
104
107
uses : actions/checkout@v1
@@ -110,7 +113,6 @@ jobs:
110
113
run : |
111
114
source activate pandas-dev
112
115
python web/pandas_web.py web/pandas --target-path=web/build
113
-
114
116
- name : Build documentation
115
117
run : |
116
118
source activate pandas-dev
@@ -136,3 +138,22 @@ jobs:
136
138
- name : Upload dev docs
137
139
run : rsync -az --delete doc/build/html/ docs@${{ secrets.server_ip }}:/usr/share/nginx/pandas/pandas-docs/dev
138
140
if : github.event_name == 'push'
141
+
142
+ data_manager :
143
+ name : Test experimental data manager
144
+ runs-on : ubuntu-latest
145
+ steps :
146
+
147
+ - name : Setting conda path
148
+ run : echo "${HOME}/miniconda3/bin" >> $GITHUB_PATH
149
+
150
+ - name : Checkout
151
+ uses : actions/checkout@v1
152
+
153
+ - name : Setup environment and build pandas
154
+ run : ci/setup_env.sh
155
+
156
+ - name : Run tests
157
+ run : |
158
+ source activate pandas-dev
159
+ pytest pandas/tests/frame/methods --array-manager
0 commit comments