Skip to content
This repository has been archived by the owner on Aug 31, 2021. It is now read-only.

flatsurf/pyeantic

Repository files navigation

This Repository is Obsolete

pyeantic is now a part of e-antic, see https://github.com/flatsurf/e-antic/tree/master/pyeantic.


Build Status

Python Wrapper for E-ANTIC

This repository implements a Python wrapper for E-ANTIC powered by cppyy.

Current Release Info

We release this package regularly with rever; typically with every push to the master branch.

Name Downloads Version Platforms
Build Conda Downloads Conda Version Conda Platforms

Install with Conda

You can install this package with conda. Download and install Miniconda, then run

conda config --add channels conda-forge
conda create -n pyeantic -c flatsurf pyeantic
conda activate pyeantic

Run with binder in the Cloud

You can try out the projects in this repository in a very limited environment online by clicking the following links:

  • pyeantic Binder

Build from the Source Code Repository

We are following a standard autoconf setup, i.e., you can create the wrapper src/pyeantic with the following:

git clone --recurse-submodules https://github.com/flatsurf/pyeantic.git
cd pyeantic
./bootstrap
./configure
make
make check # to run our test suite
make install # to install into /usr/local

Build from the Source Code Repository with Conda Dependencies

If you don't want to use your distribution's packages, you can provide the dependencies with conda. Download and install Miniconda, then run

conda config --add channels conda-forge
conda config --add channels flatsurf # if you want to pull in the latest version of dependencies
conda create -n pyeantic-build cxx-compiler libtool automake python setuptools cppyy boost-cpp e-antic # to run the tests add: valgrind pytest sagelib pip ipywidgets sympy
conda activate pyeantic-build
export CPPFLAGS="-isystem $CONDA_PREFIX/include"
export CFLAGS="$CPPFLAGS"
export LDFLAGS="-L$CONDA_PREFIX/lib -Wl,-rpath-link=$CONDA_PREFIX/lib"
export CC="ccache cc"
export CXX="ccache c++"
git clone --recurse-submodules https://github.com/flatsurf/pyeantic.git
cd pyeantic
./bootstrap
./configure --prefix="$CONDA_PREFIX"
make

Build from the Source Code Repository with Conda

The conda recipe in recipe/ is built automatically as part of our Continuous Integration. If you want to build the recipe manually, something like the following should work:

git clone --recurse-submodules https://github.com/flatsurf/pyeantic.git
cd pyeantic
conda activate root
conda config --add channels conda-forge
conda config --add channels flatsurf # if you want to pull in the latest version of dependencies
conda install conda-build conda-forge-ci-setup=2
export FEEDSTOCK_ROOT=`pwd`
export RECIPE_ROOT=${FEEDSTOCK_ROOT}/recipe
export CI_SUPPORT=${FEEDSTOCK_ROOT}/.ci_support
export CONFIG=linux_
make_build_number "${FEEDSTOCK_ROOT}" "${RECIPE_ROOT}" "${CI_SUPPORT}/${CONFIG}.yaml"
conda build "${RECIPE_ROOT}" -m "${CI_SUPPORT}/${CONFIG}.yaml" --clobber-file "${CI_SUPPORT}/clobber_${CONFIG}.yaml"

You can then try out the package that you just built with:

conda create -n pyeantic-test --use-local pyeantic
conda activate pyeantic-test

Run Tests and Benchmark

make check runs all tests through the pytest interface.

Maintainers