Skip to content

Remove libblas, mkl and m2w64-toolchain dependencies #4932

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 2 commits into from
Oct 12, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
24 changes: 12 additions & 12 deletions .github/workflows/pytest.yml
Original file line number Diff line number Diff line change
Expand Up @@ -107,12 +107,12 @@ jobs:
- name: Cache conda
uses: actions/cache@v1
env:
# Increase this value to reset cache if environment-dev-py37.yml has not changed
# Increase this value to reset cache if environment-test-py37.yml has not changed
CACHE_NUMBER: 0
with:
path: ~/conda_pkgs_dir
key: ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-${{
hashFiles('conda-envs/environment-dev-py37.yml') }}
hashFiles('conda-envs/environment-test-py37.yml') }}
- name: Cache multiple paths
uses: actions/cache@v2
env:
Expand All @@ -127,19 +127,19 @@ jobs:
hashFiles('requirements.txt') }}
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: pymc-dev-py37
activate-environment: pymc-test-py37
channel-priority: strict
environment-file: conda-envs/environment-dev-py37.yml
environment-file: conda-envs/environment-test-py37.yml
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
- name: Install-pymc
run: |
conda activate pymc-dev-py37
conda activate pymc-test-py37
pip install -e .
pip install --pre -U polyagamma
python --version
- name: Run tests
run: |
conda activate pymc-dev-py37
conda activate pymc-test-py37
python -m pytest -vv --cov=pymc --cov-append --cov-report=xml --cov-report term --durations=50 $TEST_SUBSET
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v1
Expand Down Expand Up @@ -186,12 +186,12 @@ jobs:
- name: Cache conda
uses: actions/cache@v1
env:
# Increase this value to reset cache if conda-envs/environment-dev-py38.yml has not changed
# Increase this value to reset cache if conda-envs/environment-test-py38.yml has not changed
CACHE_NUMBER: 0
with:
path: ~/conda_pkgs_dir
key: ${{ runner.os }}-conda-${{ env.CACHE_NUMBER }}-${{
hashFiles('conda-envs/windows-environment-dev-py38.yml') }}
hashFiles('conda-envs/windows-environment-test-py38.yml') }}
- name: Cache multiple paths
uses: actions/cache@v2
env:
Expand All @@ -206,19 +206,19 @@ jobs:
hashFiles('requirements.txt') }}
- uses: conda-incubator/setup-miniconda@v2
with:
activate-environment: pymc-dev-py38
activate-environment: pymc-test-py38
channel-priority: strict
environment-file: conda-envs/windows-environment-dev-py38.yml
environment-file: conda-envs/windows-environment-test-py38.yml
use-only-tar-bz2: true # IMPORTANT: This needs to be set for caching to work properly!
- name: Install-pymc
run: |
conda activate pymc-dev-py38
conda activate pymc-test-py38
pip install -e .
pip install --pre -U polyagamma
python --version
- name: Run tests
# This job uses a cmd shell, therefore the environment variable syntax is different!
# The ">-" in the next line replaces newlines with spaces (see https://stackoverflow.com/a/66809682).
run: >-
conda activate pymc-dev-py38 &&
conda activate pymc-test-py38 &&
python -m pytest -vv --cov=pymc --cov-append --cov-report=xml --cov-report term --durations=50 %TEST_SUBSET%
6 changes: 2 additions & 4 deletions conda-envs/environment-dev-py37.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,8 @@ dependencies:
- cachetools>=4.2.1
- cloudpickle
- fastprogress>=0.2.0
- h5py>=2.7
- ipython>=7.16
- libblas=*=*mkl
- mkl-service
- h5py
- ipython
- myst-nb
- numpy>=1.15
- numpydoc>=0.9
Expand Down
6 changes: 2 additions & 4 deletions conda-envs/environment-dev-py38.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,8 @@ dependencies:
- cachetools>=4.2.1
- cloudpickle
- fastprogress>=0.2.0
- h5py>=2.7
- ipython>=7.16
- libblas=*=*mkl
- mkl-service
- h5py
- ipython
- myst-nb
- numpy>=1.15.0
- numpydoc>=0.9
Expand Down
6 changes: 2 additions & 4 deletions conda-envs/environment-dev-py39.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,11 @@ dependencies:
- cloudpickle
- fastprogress>=0.2.0
- h5py>=2.7
- ipython>=7.16
- libblas=*=*mkl
- mkl-service
- ipython
- myst-nb
- numpy>=1.15.0
- numpydoc>=0.9
- pandas>=0.24.0
- pandas
- pre-commit>=2.8.0
- pydata-sphinx-theme
- pytest-cov>=2.5
Expand Down
31 changes: 31 additions & 0 deletions conda-envs/environment-test-py37.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: pymc3-test-py37
channels:
- conda-forge
- defaults
dependencies:
- aesara>=2.1.0
- arviz>=0.11.2
- cachetools>=4.2.1
- cloudpickle
- fastprogress>=0.2.0
- h5py>=2.7
- ipython
- libblas=*=*mkl
- mkl-service
- myst-nb
- numpy>=1.15.0
- numpydoc>=0.9
- pandas=0.24
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Do we really need to pin pandas to such an old version?

Below it doesn't even pin a version. Is this because of some Python 3.7 oddity?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

IIRC there was one env which would have the deps pinned to the earliest allowed versions

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

and I believe that pinning minimum versions helps and speeds up the conda dependency resolver, right?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't know

- pre-commit>=2.8.0
- pydata-sphinx-theme
- pytest-cov>=2.5
- pytest>=3.0
- python-graphviz
- python=3.7
- recommonmark>=0.4
- scipy>1.4.1
- sphinx-autobuild>=0.7
- sphinx-panels
- sphinx>=1.5
- typing-extensions
- watermark
32 changes: 32 additions & 0 deletions conda-envs/environment-test-py38.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: pymc3-test-py38
channels:
- conda-forge
- defaults
dependencies:
- aesara>=2.1.0
- arviz>=0.11.2
- cachetools>=4.2.1
- cloudpickle
- fastprogress>=0.2.0
- h5py>=2.7
- ipython
- libblas=*=*mkl
- mkl-service
- myst-nb
- nbsphinx>=0.4
- numpy>=1.15.0
- numpydoc>=0.9
- pandas
- pre-commit>=2.8.0
- pydata-sphinx-theme
- pytest-cov>=2.5
- pytest>=3.0
- python-graphviz
- python=3.8
- recommonmark>=0.4
- scipy>1.4.1
- sphinx-autobuild>=0.7
- sphinx-panels
- sphinx>=1.5
- typing-extensions>=3.7.4
- watermark
32 changes: 32 additions & 0 deletions conda-envs/environment-test-py39.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: pymc3-test-py39
channels:
- conda-forge
- defaults
dependencies:
- aesara>=2.1.0
- arviz>=0.11.2
- cachetools
- cloudpickle
- fastprogress>=0.2.0
- h5py
- ipython>=7.16
- libblas=*=*mkl
- mkl-service
- myst-nb
- nbsphinx>=0.4
- numpy>=1.15.0
- numpydoc>=0.9
- pandas
- pre-commit>=2.8.0
- pydata-sphinx-theme
- pytest-cov>=2.5
- pytest>=3.0
- python-graphviz
- python=3.9
- recommonmark>=0.4
- scipy>1.4.1
- sphinx-autobuild>=0.7
- sphinx-panels
- sphinx>=1.5
- typing-extensions>=3.7.4
- watermark
10 changes: 3 additions & 7 deletions conda-envs/windows-environment-dev-py38.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,20 +9,16 @@ dependencies:
- cachetools>=4.2.1
- cloudpickle
- fastprogress>=0.2.0
- h5py>=2.7
- libpython
- mkl-service
- m2w64-toolchain
- numba
- h5py
- numpy>=1.15.0
- pandas>=0.24.0
- pandas
- pip
- python=3.8
- python-graphviz
- scipy>1.4.1
- typing-extensions>=3.7.4
# Extra stuff for dev, testing and docs build
- ipython>=7.16
- ipython
- myst-nb
- numpydoc>=0.9
- pre-commit>=2.8.0
Expand Down
36 changes: 36 additions & 0 deletions conda-envs/windows-environment-test-py38.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
name: pymc3-test-py38
channels:
- conda-forge
- defaults
dependencies:
# base dependencies (see install guide for Windows)
- aesara>=2.1.0
- arviz>=0.11.2
- cachetools
- cloudpickle
- fastprogress>=0.2.0
- h5py>=2.7
- libpython
- mkl-service
- m2w64-toolchain
- numpy>=1.15.0
- pandas
- pip
- python=3.8
- python-graphviz
- scipy>1.4.1
- typing-extensions>=3.7.4
# Extra stuff for dev, testing and docs build
- ipython>=7.16
- myst-nb
- nbsphinx>=0.4
- numpydoc>=0.9
- pre-commit>=2.8.0
- pydata-sphinx-theme
- pytest-cov>=2.5
- pytest>=3.0
- recommonmark>=0.4
- sphinx-autobuild>=0.7
- sphinx-panels
- sphinx>=1.5
- watermark
9 changes: 4 additions & 5 deletions requirements-dev.txt
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,24 @@
# See that file for comments about the need/usage of each dependency.

aesara>=2.1.0
arviz>=0.11.4
cachetools>=4.2.1
arviz>=0.11.2
cachetools
cloudpickle
fastprogress>=0.2.0
h5py>=2.7
ipython>=7.16
myst-nb
nbsphinx>=0.4
numpy>=1.15.0
numpydoc>=0.9
pandas>=0.24.0
pandas
pre-commit>=2.8.0
pydata-sphinx-theme
pytest-cov>=2.5
pytest>=3.0
recommonmark>=0.4
scipy>1.4.1
sphinx-autobuild>=0.7
sphinx-design
sphinx-notfound-page
sphinx-panels
sphinx>=1.5
typing-extensions>=3.7.4
Expand Down
1 change: 0 additions & 1 deletion requirements.txt
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,5 @@ cloudpickle
fastprogress>=0.2.0
numpy>=1.15.0
pandas>=0.24.0
patsy>=0.5.1
scipy>=1.4.1
typing-extensions>=3.7.4
1 change: 1 addition & 0 deletions scripts/generate_pip_deps_from_conda.py
Original file line number Diff line number Diff line change
Expand Up @@ -45,6 +45,7 @@
"pip",
"python",
"libblas",
"libblas=*=*mkl",
"libpython",
"m2w64-toolchain",
"mkl-service",
Expand Down