From 908842122edb2e90645d40c3ad4b9bba60bc9ceb Mon Sep 17 00:00:00 2001 From: q-posev Date: Wed, 11 Sep 2024 09:47:14 +0200 Subject: [PATCH] [wheel build] Release 2.5.0 + updated README --- README.md | 49 ++++++++++++++++++++++++------------------------ python/README.md | 11 +++++------ 2 files changed, 29 insertions(+), 31 deletions(-) diff --git a/README.md b/README.md index 97bb9300..4c0953c9 100644 --- a/README.md +++ b/README.md @@ -15,31 +15,30 @@ which enables fast read and write operations. It is compatible with a variety of platforms and has interfaces for the Fortran, Python, OCaml and Rust programming languages. -* [TREXIO](#trexio) - * [Installation](#installation) - * [Installation using a package manager](#installation-using-a-package-manager) - * [Conda](#conda) - * [Spack](#spack) - * [Guix](#guix) - * [Debian/Ubuntu](#debianubuntu) - * [Installation from source](#installation-from-source) - * [Minimal requirements (for users):](#minimal-requirements-for-users) - * [Recommended: Installation from the release tarball](#recommended-installation-from-the-release-tarball) - * [Compilation without the HDF5 library](#compilation-without-the-hdf5-library) - * [For TREXIO developers: from the GitHub repo clone](#for-trexio-developers-from-the-github-repo-clone) - * [Using CMake instead of Autotools](#using-cmake-instead-of-autotools) - * [Using TREXIO](#using-trexio) - * [Naming convention](#naming-convention) - * [Tutorial](#tutorial) - * [Documentation](#documentation) - * [Linking to your program](#linking-to-your-program) - * [Distributing TREXIO with your code](#distributing-trexio-with-your-code) - * [APIs for other languages](#apis-for-other-languages) - * [Python](#python) - * [Rust](#rust) - * [OCaml](#ocaml) - * [Citation](#citation) - * [Miscellaneous](#miscellaneous) +* [Installation](#installation) + * [Installation using a package manager](#installation-using-a-package-manager) + * [Conda](#conda) + * [Spack](#spack) + * [Guix](#guix) + * [Debian/Ubuntu](#debianubuntu) + * [Installation from source](#installation-from-source) + * [Minimal requirements (for users):](#minimal-requirements-for-users) + * [Recommended: Installation from the release tarball](#recommended-installation-from-the-release-tarball) + * [Compilation without the HDF5 library](#compilation-without-the-hdf5-library) + * [For TREXIO developers: from the GitHub repo clone](#for-trexio-developers-from-the-github-repo-clone) + * [Using CMake instead of Autotools](#using-cmake-instead-of-autotools) +* [Using TREXIO](#using-trexio) + * [Naming convention](#naming-convention) + * [Tutorial](#tutorial) + * [Documentation](#documentation) + * [Linking to your program](#linking-to-your-program) + * [Distributing TREXIO with your code](#distributing-trexio-with-your-code) +* [APIs for other languages](#apis-for-other-languages) + * [Python](#python) + * [Rust](#rust) + * [OCaml](#ocaml) +* [Citation](#citation) + * [Miscellaneous](#miscellaneous) ## Installation diff --git a/python/README.md b/python/README.md index 8c95b88d..de1749be 100644 --- a/python/README.md +++ b/python/README.md @@ -11,8 +11,8 @@ can be used to convert data from one input/output file format into another. ## Requirements -- python3 (>= 3.6) -- numpy (>= 1.17.3) +- python3 (>= 3.8) +- numpy (>= 1.17.3) ## Installation from PyPI @@ -27,10 +27,6 @@ However, it is good practice to first check for updates of the build-system pack **Note: we highly recommend to use virtual environments to avoid compatibility issues and to improve reproducibility.** For more details, see the corresponding part of the [Python documentation](https://docs.python.org/3/library/venv.html#creating-virtual-environments). -**Note: our build farm (GitHub Actions) does not support ARM64 architectures (including the Mac M1/M2 chips). Therefore, `pip install trexio` does not work on an ARM64-based machine. Thus, we recommend to install TREXIO from source on an ARM64-based machine. If one uses a Mac where HDF5 is installed with brew (i.e., `brew install hdf5`), a workaround is to execute the following 2 lines before doing `pip install trexio`:** - -- `export H5_CFLAGS="-I$(brew --prefix hdf5)/include"` -- `export H5_LDFLAGS="-L$(brew --prefix hdf5)/lib"` ## Additional requirements (for installation from source) @@ -50,6 +46,9 @@ For more details, see the corresponding part of the [Python documentation](https The following two steps can be skipped if HDF5 is properly configured for `pkg-config` (i.e. if executing `pkg-config --libs hdf5` returns a list of options). - `export H5_CFLAGS=-I/path/to/hdf5/include` - `export H5_LDFLAGS=-L/path/to/hdf5/lib` +On MacOS where HDF5 is installed with homebrew (i.e. `brew install hdf5`), one can use the following: + - `export H5_CFLAGS="-I$(brew --prefix hdf5)/include"` + - `export H5_LDFLAGS="-L$(brew --prefix hdf5)/lib"` 6. `pip install .` (this installs `trexio` in your environment) 7. `cd test && python -m pytest -v test_api.py` (this executes several tests that verify the installation)