Skip to content
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

Align python version #614

Merged
merged 11 commits into from
Nov 28, 2024
9 changes: 8 additions & 1 deletion .github/workflows/cpu-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -170,20 +170,27 @@ jobs:
# install mala package
pip --no-cache-dir install -e .[opt,test] --no-build-isolation


- name: Check if Conda environment meets the specified requirements
shell: 'bash -c "docker exec -i mala-cpu bash < {0}"'
run: |
# export Conda environment _with_ mala package installed in it (and extra dependencies)
conda env export -n mala-cpu > env_after.yml

# This command is necessary because conda includes even editable
# packages in an export, at least in the versions we recently used.
# That of course leads to the diff failing, since MALA can never
# be there before it has been installed.
sed -i '/materials-learning-algorithms/d' ./env_after.yml

# if comparison fails, `install/mala_cpu_[base]_environment.yml` needs to be aligned with
# `requirements.txt` and/or extra dependencies are missing in the Docker Conda environment

if diff --brief env_before.yml env_after.yml
then
echo "Files env_before.yml and env_after.yml do not differ."
else
diff --side-by-side --color-always env_before.yml env_after.yml
diff --side-by-side env_before.yml env_after.yml
fi

- name: Download test data repository from RODARE
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/gh-pages.yml
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
python-version: '3.10.4'

- name: Upgrade pip
run: python3 -m pip install --upgrade pip
Expand All @@ -50,7 +50,7 @@ jobs:
- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: '3.12'
python-version: '3.10.4'

- name: Upgrade pip
run: python3 -m pip install --upgrade pip
Expand Down
4 changes: 2 additions & 2 deletions docs/source/install/installing_mala.rst
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ Installing MALA
Prerequisites
**************

MALA does not depend on a specific Python version. The most recent Python
version it has been tested with successfully is Python ``3.10.4``.
MALA supports any Python version starting from ``3.10.4``. No upper limit on
Python versions are enforced. The most recent *tested* version is ``3.10.12``.

MALA requires ``torch`` in order to function. As the installation of torch
depends highly on the architecture you are using, ``torch`` will not
Expand Down
2 changes: 1 addition & 1 deletion install/mala_cpu_base_environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ channels:
- conda-forge
- defaults
dependencies:
- python>=3.6, <3.9
- python=3.10.4
- pip
- numpy
- scipy
Expand Down
255 changes: 119 additions & 136 deletions install/mala_cpu_environment.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,154 +5,137 @@ channels:
dependencies:
- _libgcc_mutex=0.1
- _openmp_mutex=4.5
- absl-py=1.3.0
- aiohttp=3.8.3
- aiosignal=1.3.1
- alembic=1.9.1
- ase=3.22.1
- async-timeout=4.0.2
- attrs=22.2.0
- autopage=0.5.1
- backports=1.0
- backports.functools_lru_cache=1.6.4
- blinker=1.5
- brotli=1.0.9
- brotli-bin=1.0.9
- brotlipy=0.7.0
- absl-py=2.1.0
- alembic=1.14.0
- ase=3.23.0
- blinker=1.9.0
- brotli-bin=1.1.0
- brotli-python=1.0.9
- bzip2=1.0.8
- c-ares=1.18.1
- ca-certificates=2022.12.7
- cachetools=5.2.0
- certifi=2022.12.7
- cffi=1.15.1
- charset-normalizer=2.1.1
- click=8.1.3
- cliff=3.10.1
- cmaes=0.9.0
- cmd2=2.4.2
- c-ares=1.34.3
- ca-certificates=2024.9.24
- click=8.1.7
- colorama=0.4.6
- colorlog=6.7.0
- contourpy=1.0.6
- cryptography=38.0.4
- cycler=0.11.0
- flask=2.2.2
- fonttools=4.38.0
- colorlog=6.9.0
- cycler=0.12.1
- filelock=3.16.1
- flask=3.1.0
- freetype=2.12.1
- frozenlist=1.3.3
- google-auth=2.15.0
- google-auth-oauthlib=0.4.6
- greenlet=2.0.1
- grpcio=1.51.1
- icu=70.1
- idna=3.4
- importlib-metadata=4.11.4
- importlib_resources=5.10.1
- itsdangerous=2.1.2
- jinja2=3.1.2
- jpeg=9e
- kiwisolver=1.4.4
- lcms2=2.14
- ld_impl_linux-64=2.39
- fsspec=2024.10.0
- gmp=6.3.0
- importlib-metadata=8.5.0
- importlib_resources=6.4.5
- itsdangerous=2.2.0
- jinja2=3.1.4
- lcms2=2.16
- ld_impl_linux-64=2.43
- lerc=4.0.0
- libabseil=20220623.0
- libabseil=20240722.0
- libblas=3.9.0
- libbrotlicommon=1.0.9
- libbrotlidec=1.0.9
- libbrotlienc=1.0.9
- libbrotlicommon=1.1.0
- libbrotlidec=1.1.0
- libbrotlienc=1.1.0
- libcblas=3.9.0
- libdeflate=1.14
- libdeflate=1.22
- libffi=3.4.2
- libgcc-ng=12.2.0
- libgfortran-ng=12.3.0
- libgfortran5=12.3.0
- libgrpc=1.51.1
- libhwloc=2.8.0
- libgcc=14.2.0
- libgcc-ng=14.2.0
- libgfortran=14.2.0
- libgfortran5=14.2.0
- libgrpc=1.67.1
- libhwloc=2.11.1
- libiconv=1.17
- libjpeg-turbo=3.0.0
- liblapack=3.9.0
- libnsl=2.0.0
- libopenblas=0.3.21
- libpng=1.6.39
- libprotobuf=3.21.12
- libsqlite=3.40.0
- libstdcxx-ng=12.2.0
- libtiff=4.5.0
- libuuid=2.32.1
- libwebp-base=1.2.4
- libxcb=1.13
- libxml2=2.10.3
- libzlib=1.2.13
- llvm-openmp=15.0.6
- mako=1.2.4
- markdown=3.4.1
- markupsafe=2.1.1
- matplotlib-base=3.6.2
- mkl=2022.2.1
- mpmath=1.2.1
- multidict=6.0.2
- libnsl=2.0.1
- libopenblas=0.3.28
- libpng=1.6.44
- libprotobuf=5.28.2
- libre2-11=2024.07.02
- libsqlite=3.47.0
- libstdcxx=14.2.0
- libstdcxx-ng=14.2.0
- libtiff=4.7.0
- libtorch=2.5.1
- libuuid=2.38.1
- libuv=1.49.2
- libwebp-base=1.4.0
- libxcb=1.17.0
- libxml2=2.13.5
- libzlib=1.3.1
- llvm-openmp=19.1.4
- mako=1.3.6
- markdown=3.6
- matplotlib-base=3.9.2
- mkl=2024.2.2
- mpc=1.3.1
- mpfr=4.2.1
- mpmath=1.3.0
- munkres=1.1.4
- ncurses=6.3
- ninja=1.11.0
- numpy=1.24.0
- oauthlib=3.2.2
- openjpeg=2.5.0
- openssl=3.3.1
- optuna=3.0.5
- packaging=22.0
- pandas=1.5.2
- pbr=5.11.0
- pillow=9.2.0
- pip=22.3.1
- prettytable=3.5.0
- protobuf=4.21.12
- ncurses=6.5
- networkx=3.4.2
- openjpeg=2.5.2
- openssl=3.4.0
- optuna=4.1.0
- packaging=24.2
- pip=24.3.1
- pthread-stubs=0.4
- pyasn1=0.4.8
- pyasn1-modules=0.2.7
- pycparser=2.21
- pyjwt=2.6.0
- pyopenssl=22.1.0
- pyparsing=3.0.9
- pyperclip=1.8.2
- pysocks=1.7.1
- python=3.8.16
- python-dateutil=2.8.2
- python_abi=3.8
- pytorch=1.13.0
- pytorch-cpu=1.13.0
- pytz=2022.7
- pyu2f=0.1.5
- pyyaml=6.0
- re2=2022.06.01
- readline=8.1.2
- requests=2.28.1
- requests-oauthlib=1.3.1
- rsa=4.9
- scipy=1.8.1
- scikit-spatial=6.8.1
- setuptools=59.8.0
- pyparsing=3.2.0
- python=3.10.4
- python-dateutil=2.9.0.post0
- python-tzdata=2024.2
- python_abi=3.10
- pytorch=2.5.1
- pytorch-cpu=2.5.1
- pytz=2024.1
- qhull=2020.2
- re2=2024.07.02
- readline=8.2
- scikit-spatial=8.0.0
- setuptools=75.6.0
- six=1.16.0
- sleef=3.5.1
- sqlalchemy=1.4.45
- stevedore=4.1.1
- tbb=2021.7.0
- tensorboard=2.11.0
- tensorboard-data-server=0.6.1
- tensorboard-plugin-wit=1.8.1
- tk=8.6.12
- tqdm=4.64.1
- typing-extensions=4.4.0
- typing_extensions=4.4.0
- unicodedata2=15.0.0
- urllib3=1.26.13
- wcwidth=0.2.5
- werkzeug=2.2.2
- wheel=0.38.4
- xorg-libxau=1.0.9
- xorg-libxdmcp=1.1.3
- sleef=3.7
- sqlite=3.47.0
- sympy=1.13.3
- tbb=2021.13.0
- tensorboard=2.18.0
- tk=8.6.13
- tqdm=4.67.1
- typing-extensions=4.12.2
- typing_extensions=4.12.2
- tzdata=2024b
- werkzeug=3.1.3
- wheel=0.45.1
- xorg-libxau=1.0.11
- xorg-libxdmcp=1.1.5
- xz=5.2.6
- yaml=0.2.5
- yarl=1.8.1
- zipp=3.11.0
- zlib=1.2.13
- zstd=1.5.5
- zipp=3.21.0
- zstd=1.5.6
- pip:
- openpmd-api==0.15.2
- brotli==1.0.9
- certifi==2024.8.30
- charset-normalizer==3.4.0
- contourpy==1.3.1
- fonttools==4.55.0
- gmpy2==2.1.5
- greenlet==3.1.1
- grpcio==1.67.1
- idna==3.10
- kiwisolver==1.4.7
- markupsafe==3.0.2
- matplotlib==3.9.2
- numpy==1.26.4
- oauthlib==3.2.2
- openpmd-api==0.15.2
- pandas==2.2.3
- pillow==11.0.0
- protobuf==3.19.6
- pysocks==1.7.1
- pyyaml==6.0.2
- requests==2.32.3
- scipy==1.14.1
- sqlalchemy==2.0.36
- tensorboard-data-server==0.7.0
- torch==2.5.1.post103
- unicodedata2==15.1.0
1 change: 1 addition & 0 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -41,4 +41,5 @@
zip_safe=False,
install_requires=open("requirements.txt").read().splitlines(),
extras_require=extras,
python_requires=">=3.10.4",
)