Skip to content

Commit b54c8af

Browse files
authored
Remove libblas, mkl and m2w64-toolchain dependencies (#4932)
* Remove libblas, mkl and m2w64-toolchain dependencies. As PyMC3 itself does not compile anything, it should not have these dependencies. Instead, it is aesaras job to specify its compile-chain dependencies. Closes #4715. Add custom envs for testing. Remove patsy dependency. * Regenerate rerquirements.
1 parent f184912 commit b54c8af

12 files changed

+157
-37
lines changed

.github/workflows/pytest.yml

Lines changed: 12 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -107,12 +107,12 @@ jobs:
107107
- name: Cache conda
108108
uses: actions/cache@v1
109109
env:
110-
# Increase this value to reset cache if environment-dev-py37.yml has not changed
110+
# Increase this value to reset cache if environment-test-py37.yml has not changed
111111
CACHE_NUMBER: 0
112112
with:
113113
path: ~/conda_pkgs_dir
114114
key: ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-${{
115-
hashFiles('conda-envs/environment-dev-py37.yml') }}
115+
hashFiles('conda-envs/environment-test-py37.yml') }}
116116
- name: Cache multiple paths
117117
uses: actions/cache@v2
118118
env:
@@ -127,19 +127,19 @@ jobs:
127127
hashFiles('requirements.txt') }}
128128
- uses: conda-incubator/setup-miniconda@v2
129129
with:
130-
activate-environment: pymc-dev-py37
130+
activate-environment: pymc-test-py37
131131
channel-priority: strict
132-
environment-file: conda-envs/environment-dev-py37.yml
132+
environment-file: conda-envs/environment-test-py37.yml
133133
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
134134
- name: Install-pymc
135135
run: |
136-
conda activate pymc-dev-py37
136+
conda activate pymc-test-py37
137137
pip install -e .
138138
pip install --pre -U polyagamma
139139
python --version
140140
- name: Run tests
141141
run: |
142-
conda activate pymc-dev-py37
142+
conda activate pymc-test-py37
143143
python -m pytest -vv --cov=pymc --cov-append --cov-report=xml --cov-report term --durations=50 $TEST_SUBSET
144144
- name: Upload coverage to Codecov
145145
uses: codecov/codecov-action@v1
@@ -186,12 +186,12 @@ jobs:
186186
- name: Cache conda
187187
uses: actions/cache@v1
188188
env:
189-
# Increase this value to reset cache if conda-envs/environment-dev-py38.yml has not changed
189+
# Increase this value to reset cache if conda-envs/environment-test-py38.yml has not changed
190190
CACHE_NUMBER: 0
191191
with:
192192
path: ~/conda_pkgs_dir
193193
key: ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-${{
194-
hashFiles('conda-envs/windows-environment-dev-py38.yml') }}
194+
hashFiles('conda-envs/windows-environment-test-py38.yml') }}
195195
- name: Cache multiple paths
196196
uses: actions/cache@v2
197197
env:
@@ -206,19 +206,19 @@ jobs:
206206
hashFiles('requirements.txt') }}
207207
- uses: conda-incubator/setup-miniconda@v2
208208
with:
209-
activate-environment: pymc-dev-py38
209+
activate-environment: pymc-test-py38
210210
channel-priority: strict
211-
environment-file: conda-envs/windows-environment-dev-py38.yml
211+
environment-file: conda-envs/windows-environment-test-py38.yml
212212
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
213213
- name: Install-pymc
214214
run: |
215-
conda activate pymc-dev-py38
215+
conda activate pymc-test-py38
216216
pip install -e .
217217
pip install --pre -U polyagamma
218218
python --version
219219
- name: Run tests
220220
# This job uses a cmd shell, therefore the environment variable syntax is different!
221221
# The ">-" in the next line replaces newlines with spaces (see https://stackoverflow.com/a/66809682).
222222
run: >-
223-
conda activate pymc-dev-py38 &&
223+
conda activate pymc-test-py38 &&
224224
python -m pytest -vv --cov=pymc --cov-append --cov-report=xml --cov-report term --durations=50 %TEST_SUBSET%

conda-envs/environment-dev-py37.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@ dependencies:
88
- cachetools>=4.2.1
99
- cloudpickle
1010
- fastprogress>=0.2.0
11-
- h5py>=2.7
12-
- ipython>=7.16
13-
- libblas=*=*mkl
14-
- mkl-service
11+
- h5py
12+
- ipython
1513
- myst-nb
1614
- numpy>=1.15
1715
- numpydoc>=0.9

conda-envs/environment-dev-py38.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,10 +8,8 @@ dependencies:
88
- cachetools>=4.2.1
99
- cloudpickle
1010
- fastprogress>=0.2.0
11-
- h5py>=2.7
12-
- ipython>=7.16
13-
- libblas=*=*mkl
14-
- mkl-service
11+
- h5py
12+
- ipython
1513
- myst-nb
1614
- numpy>=1.15.0
1715
- numpydoc>=0.9

conda-envs/environment-dev-py39.yml

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,13 +9,11 @@ dependencies:
99
- cloudpickle
1010
- fastprogress>=0.2.0
1111
- h5py>=2.7
12-
- ipython>=7.16
13-
- libblas=*=*mkl
14-
- mkl-service
12+
- ipython
1513
- myst-nb
1614
- numpy>=1.15.0
1715
- numpydoc>=0.9
18-
- pandas>=0.24.0
16+
- pandas
1917
- pre-commit>=2.8.0
2018
- pydata-sphinx-theme
2119
- pytest-cov>=2.5

conda-envs/environment-test-py37.yml

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
name: pymc3-test-py37
2+
channels:
3+
- conda-forge
4+
- defaults
5+
dependencies:
6+
- aesara>=2.1.0
7+
- arviz>=0.11.2
8+
- cachetools>=4.2.1
9+
- cloudpickle
10+
- fastprogress>=0.2.0
11+
- h5py>=2.7
12+
- ipython
13+
- libblas=*=*mkl
14+
- mkl-service
15+
- myst-nb
16+
- numpy>=1.15.0
17+
- numpydoc>=0.9
18+
- pandas=0.24
19+
- pre-commit>=2.8.0
20+
- pydata-sphinx-theme
21+
- pytest-cov>=2.5
22+
- pytest>=3.0
23+
- python-graphviz
24+
- python=3.7
25+
- recommonmark>=0.4
26+
- scipy>1.4.1
27+
- sphinx-autobuild>=0.7
28+
- sphinx-panels
29+
- sphinx>=1.5
30+
- typing-extensions
31+
- watermark

conda-envs/environment-test-py38.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: pymc3-test-py38
2+
channels:
3+
- conda-forge
4+
- defaults
5+
dependencies:
6+
- aesara>=2.1.0
7+
- arviz>=0.11.2
8+
- cachetools>=4.2.1
9+
- cloudpickle
10+
- fastprogress>=0.2.0
11+
- h5py>=2.7
12+
- ipython
13+
- libblas=*=*mkl
14+
- mkl-service
15+
- myst-nb
16+
- nbsphinx>=0.4
17+
- numpy>=1.15.0
18+
- numpydoc>=0.9
19+
- pandas
20+
- pre-commit>=2.8.0
21+
- pydata-sphinx-theme
22+
- pytest-cov>=2.5
23+
- pytest>=3.0
24+
- python-graphviz
25+
- python=3.8
26+
- recommonmark>=0.4
27+
- scipy>1.4.1
28+
- sphinx-autobuild>=0.7
29+
- sphinx-panels
30+
- sphinx>=1.5
31+
- typing-extensions>=3.7.4
32+
- watermark

conda-envs/environment-test-py39.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
name: pymc3-test-py39
2+
channels:
3+
- conda-forge
4+
- defaults
5+
dependencies:
6+
- aesara>=2.1.0
7+
- arviz>=0.11.2
8+
- cachetools
9+
- cloudpickle
10+
- fastprogress>=0.2.0
11+
- h5py
12+
- ipython>=7.16
13+
- libblas=*=*mkl
14+
- mkl-service
15+
- myst-nb
16+
- nbsphinx>=0.4
17+
- numpy>=1.15.0
18+
- numpydoc>=0.9
19+
- pandas
20+
- pre-commit>=2.8.0
21+
- pydata-sphinx-theme
22+
- pytest-cov>=2.5
23+
- pytest>=3.0
24+
- python-graphviz
25+
- python=3.9
26+
- recommonmark>=0.4
27+
- scipy>1.4.1
28+
- sphinx-autobuild>=0.7
29+
- sphinx-panels
30+
- sphinx>=1.5
31+
- typing-extensions>=3.7.4
32+
- watermark

conda-envs/windows-environment-dev-py38.yml

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -9,20 +9,16 @@ dependencies:
99
- cachetools>=4.2.1
1010
- cloudpickle
1111
- fastprogress>=0.2.0
12-
- h5py>=2.7
13-
- libpython
14-
- mkl-service
15-
- m2w64-toolchain
16-
- numba
12+
- h5py
1713
- numpy>=1.15.0
18-
- pandas>=0.24.0
14+
- pandas
1915
- pip
2016
- python=3.8
2117
- python-graphviz
2218
- scipy>1.4.1
2319
- typing-extensions>=3.7.4
2420
# Extra stuff for dev, testing and docs build
25-
- ipython>=7.16
21+
- ipython
2622
- myst-nb
2723
- numpydoc>=0.9
2824
- pre-commit>=2.8.0
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
name: pymc3-test-py38
2+
channels:
3+
- conda-forge
4+
- defaults
5+
dependencies:
6+
# base dependencies (see install guide for Windows)
7+
- aesara>=2.1.0
8+
- arviz>=0.11.2
9+
- cachetools
10+
- cloudpickle
11+
- fastprogress>=0.2.0
12+
- h5py>=2.7
13+
- libpython
14+
- mkl-service
15+
- m2w64-toolchain
16+
- numpy>=1.15.0
17+
- pandas
18+
- pip
19+
- python=3.8
20+
- python-graphviz
21+
- scipy>1.4.1
22+
- typing-extensions>=3.7.4
23+
# Extra stuff for dev, testing and docs build
24+
- ipython>=7.16
25+
- myst-nb
26+
- nbsphinx>=0.4
27+
- numpydoc>=0.9
28+
- pre-commit>=2.8.0
29+
- pydata-sphinx-theme
30+
- pytest-cov>=2.5
31+
- pytest>=3.0
32+
- recommonmark>=0.4
33+
- sphinx-autobuild>=0.7
34+
- sphinx-panels
35+
- sphinx>=1.5
36+
- watermark

requirements-dev.txt

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,25 +2,24 @@
22
# See that file for comments about the need/usage of each dependency.
33

44
aesara>=2.1.0
5-
arviz>=0.11.4
6-
cachetools>=4.2.1
5+
arviz>=0.11.2
6+
cachetools
77
cloudpickle
88
fastprogress>=0.2.0
99
h5py>=2.7
1010
ipython>=7.16
1111
myst-nb
12+
nbsphinx>=0.4
1213
numpy>=1.15.0
1314
numpydoc>=0.9
14-
pandas>=0.24.0
15+
pandas
1516
pre-commit>=2.8.0
1617
pydata-sphinx-theme
1718
pytest-cov>=2.5
1819
pytest>=3.0
1920
recommonmark>=0.4
2021
scipy>1.4.1
2122
sphinx-autobuild>=0.7
22-
sphinx-design
23-
sphinx-notfound-page
2423
sphinx-panels
2524
sphinx>=1.5
2625
typing-extensions>=3.7.4

requirements.txt

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,5 @@ cloudpickle
55
fastprogress>=0.2.0
66
numpy>=1.15.0
77
pandas>=0.24.0
8-
patsy>=0.5.1
98
scipy>=1.4.1
109
typing-extensions>=3.7.4

scripts/generate_pip_deps_from_conda.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@
4545
"pip",
4646
"python",
4747
"libblas",
48+
"libblas=*=*mkl",
4849
"libpython",
4950
"m2w64-toolchain",
5051
"mkl-service",

0 commit comments

Comments
 (0)