8000 CI Use lock files for CircleCI doc builds (#23429) · scikit-learn/scikit-learn@de65c26 · GitHub
[go: up one dir, main page]

Skip to content

Commit de65c26

Browse files
authored
CI Use lock files for CircleCI doc builds (#23429)
1 parent c5fe6cb commit de65c26

24 files changed

+540
-73
lines changed

.circleci/config.yml

Lines changed: 2 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -8,18 +8,7 @@ jobs:
88
- OMP_NUM_THREADS: 2
99
- MKL_NUM_THREADS: 2
1010
- CONDA_ENV_NAME: testenv
11-
- PYTHON_VERSION: 3.8
12-
- NUMPY_VERSION: 'min'
13-
- SCIPY_VERSION: 'min'
14-
- MATPLOTLIB_VERSION: 'min'
15-
- CYTHON_VERSION: 'min'
16-
- SCIKIT_IMAGE_VERSION: 'min'
17-
- SPHINX_VERSION: 'min'
18-
- PANDAS_VERSION: 'min'
19-
- SPHINX_GALLERY_VERSION: 'min'
20-
- NUMPYDOC_VERSION: 'min'
21-
- SPHINX_PROMPT_VERSION: 'min'
22-
- SPHINXEXT_OPENGRAPH_VERSION: 'min'
11+
- LOCK_FILE: build_tools/circle/doc_min_dependencies_linux-64_conda.lock
2312
steps:
2413
- checkout
2514
- run: ./build_tools/circle/checkout_merge_commit.sh
@@ -53,20 +42,7 @@ jobs:
5342
- OMP_NUM_THREADS: 2
5443
- MKL_NUM_THREADS: 2
5544
- CONDA_ENV_NAME: testenv
56-
- PYTHON_VERSION: '3.9'
57-
- NUMPY_VERSION: 'latest'
58-
- SCIPY_VERSION: 'latest'
59-
- MATPLOTLIB_VERSION: 'latest'
60-
- CYTHON_VERSION: 'latest'
61-
- SCIKIT_IMAGE_VERSION: 'latest'
62-
# Bump the sphinx version from time to time. Avoid latest sphinx version
63-
# that tends to break things slightly too often
64-
- SPHINX_VERSION: 4.2.0
65-
- PANDAS_VERSION: 'latest'
66-
- SPHINX_GALLERY_VERSION: 'latest'
67-
- NUMPYDOC_VERSION: 'latest'
68-
- SPHINX_PROMPT_VERSION: 'latest'
69-
- SPHINXEXT_OPENGRAPH_VERSION: 'latest'
45+
- LOCK_FILE: build_tools/circle/doc_linux-64_conda.lock
7046
steps:
7147
- checkout
7248
- run: ./build_tools/circle/checkout_merge_commit.sh

README.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@
3838
.. |JoblibMinVersion| replace:: 1.0.0
3939
.. |ThreadpoolctlMinVersion| replace:: 2.0.0
4040
.. |MatplotlibMinVersion| replace:: 3.1.2
41-
.. |Scikit-ImageMinVersion| replace:: 0.14.5
41+
.. |Scikit-ImageMinVersion| replace:: 0.16.2
4242
.. |PandasMinVersion| replace:: 1.0.5
4343
.. |SeabornMinVersion| replace:: 0.9.0
4444
.. |PytestMinVersion| replace:: 5.0.1

build_tools/azure/debian_atlas_32bit_requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
cython
55
joblib==1.0.0 # min

build_tools/azure/py38_conda_defaults_openblas_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- defaults

build_tools/azure/py38_conda_forge_mkl_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- conda-forge

build_tools/azure/py38_conda_forge_openblas_ubuntu_1804_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- conda-forge

build_tools/azure/py38_pip_openblas_32bit_requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
numpy
55
scipy

build_tools/azure/pylatest_conda_forge_mkl_linux-64_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- conda-forge

build_tools/azure/pylatest_conda_forge_mkl_no_coverage_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- conda-forge

build_tools/azure/pylatest_conda_forge_mkl_osx-64_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- conda-forge

build_tools/azure/pylatest_conda_mkl_no_openmp_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- defaults

build_tools/azure/pylatest_pip_openblas_pandas_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- defaults

build_tools/azure/pylatest_pip_scipy_dev_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- defaults

build_tools/azure/pypy3_environment.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
channels:
55
- conda-forge

build_tools/azure/ubuntu_atlas_requirements.txt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
# DO NOT EDIT: this file is generated from the specification found in the
2-
# following script to centralize the configuration for all Azure CI builds:
2+
# following script to centralize the configuration for CI builds:
33
# build_tools/update_environments_and_lock_files.py
44
cython
55
joblib==1.0.0 # min

build_tools/circle/build_doc.sh

Lines changed: 5 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -153,35 +153,12 @@ export PATH="/usr/lib/ccache:$MINICONDA_PATH/bin:$PATH"
153153
ccache -M 512M
154154
export CCACHE_COMPRESS=1
155155

156-
# Old packages coming from the 'free' conda channel have been removed but we
157-
# are using them for our min-dependencies doc generation. See
158-
# https://www.anaconda.com/why-we-removed-the-free-channel-in-conda-4-7/ for
159-
# more details.
160-
if [[ "$CIRCLE_JOB" == "doc-min-dependencies" ]]; then
161-
conda config --set restore_free_channel true
162-
fi
163-
164-
# imports get_dep
165-
source build_tools/shared.sh
166-
167-
# packaging won't be needed once setuptools starts shipping packaging>=17.0
168-
mamba create -n $CONDA_ENV_NAME --yes --quiet \
169-
python="${PYTHON_VERSION:-*}" \
170-
"$(get_dep numpy $NUMPY_VERSION)" \
171-
"$(get_dep scipy $SCIPY_VERSION)" \
172-
"$(get_dep cython $CYTHON_VERSION)" \
173-
"$(get_dep matplotlib $MATPLOTLIB_VERSION)" \
174-
"$(get_dep sphinx $SPHINX_VERSION)" \
175-
"$(get_dep pandas $PANDAS_VERSION)" \
176-
joblib memory_profiler packaging seaborn pillow pytest coverage \
177-
compilers
156+
# pin conda-lock to latest released version (needs manual update from time to time)
157+
mamba install conda-lock==1.0.5 -y
158+
conda-lock install --name $CONDA_ENV_NAME $LOCK_FILE
159+
source activate $CONDA_ENV_NAME
178160

179-
source activate testenv
180-
pip install "$(get_dep scikit-image $SCIKIT_IMAGE_VERSION)"
181-
pip install "$(get_dep sphinx-gallery $SPHINX_GALLERY_VERSION)"
182-
pip install "$(get_dep numpydoc $NUMPYDOC_VERSION)"
183-
pip install "$(get_dep sphinx-prompt $SPHINX_PROMPT_VERSION)"
184-
pip install "$(get_dep sphinxext-opengraph $SPHINXEXT_OPENGRAPH_VERSION)"
161+
mamba list
185162

186163
# Set parallelism to 3 to overlap IO bound tasks with CPU bound tasks on CI
187164
# workers with 2 cores when building the compiled extensions of scikit-learn.
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
# DO NOT EDIT: this file is generated from the specification found in the
2+
# following script to centralize the configuration for CI builds:
3+
# build_tools/update_environments_and_lock_files.py
4+
channels:
5+
- conda-forge
6+
dependencies:
7+
- python=3.9
8+
- numpy
9+
- blas
10+
- scipy
11+
- cython
12+
- joblib
13+
- threadpoolctl
14+
- matplotlib
15+
- pandas
16+
- pyamg
17+
- pytest=6.2.5
18+
- pytest-xdist
19+
- pillow
20+
- scikit-image
21+
- seaborn
22+
- memory_profiler
23+
- compilers
24+
- sphinx
25+
- sphinx-gallery
26+
- numpydoc
27+
- sphinx-prompt
28+
- pip
29+
- pip:
30+
- sphinxext-opengraph

0 commit comments

Comments
 (0)
0