Skip to content

Commit

Permalink
Merge remote-tracking branch 'upstream/master' into fmpz_mpoly
Browse files Browse the repository at this point in the history
  • Loading branch information
deinst committed Aug 17, 2023
2 parents 0489152 + 71bf110 commit 518c0a7
Show file tree
Hide file tree
Showing 11 changed files with 51 additions and 55 deletions.
19 changes: 19 additions & 0 deletions .github/workflows/buildwheel.yml
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,25 @@ jobs:
with:
path: wheelhouse/*.whl

build_sdist:
name: Build sdist
runs-on: ubuntu-20.04

steps:
- uses: actions/checkout@v3

- uses: actions/setup-python@v4
with:
python-version: '3.11'

- run: pip install --upgrade pip
- run: pip install cython numpy
- run: python setup.py sdist

- uses: actions/upload-artifact@v3
with:
path: dist/*.tar.gz

test_wheels:
needs: build_wheels
name: Test ${{ matrix.python-version }} wheel on ${{ matrix.os }}
Expand Down
31 changes: 0 additions & 31 deletions .travis.yml

This file was deleted.

28 changes: 18 additions & 10 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,24 +11,32 @@ and Arb (arbitrary-precision ball arithmetic). Features:

Documentation: http://fredrikj.net/python-flint/

Repository: https://github.com/fredrik-johansson/python-flint/
Repository: https://github.com/flintlib/python-flint/

Author: Fredrik Johansson <fredrik.johansson@gmail.com>

Installation
------------

On Windows (x86-64) or OSX (x86-64 or arm64) there are prebuilt wheels for
python-flint 0.4.1 that can be installed from PyPI using pip
For Windows (x86-64) or OSX (x86-64 or arm64) or Linux (x86-64
`manylinux_2_17`) there are binary wheels for python-flint on PyPI. For these
platforms python-flint can be installed simply with `pip`

pip install python-flint

There is currently a problem with the Linux wheels and so for now Linux wheels
are not available on PyPI. Instead for Linux first install both FLINT 2.9.0 and
Arb 2.23. Note that as of python-flint 0.4.1 only these *exact* versions of
FLINT and Arb will work. While some Linux distributions may provide FLINT and
Arb it is unlikely that they will provide the exact versions required (e.g.
for Ubuntu only Ubuntu 23.04 provides these versions at the time of writing).
Alternatively python-flint can be installed using `conda`

conda install -c conda-forge python-flint

Build from source
-----------------

For other platforms or architectures installation needs to build from source.
First install both FLINT 2.9.0 and Arb 2.23. Note that for python-flint 0.4
only these *exact* versions of FLINT and Arb will work. While some Linux
distributions may provide FLINT and Arb it is unlikely that they will provide
the exact versions required (e.g. for Ubuntu only Ubuntu 23.04 provides these
versions at the time of writing).

See here for instructions on building FLINT and Arb:

Expand All @@ -49,7 +57,7 @@ as follows:
A script that builds and installs FLINT, Arb and Python-FLINT that is tested on
Ubuntu can be found in the git repo here:

* https://github.com/fredrik-johansson/python-flint/blob/master/bin/pip_install_ubuntu.sh
* https://github.com/flintlib/python-flint/blob/master/bin/pip_install_ubuntu.sh

See the documentation for further notes on building and installing
Python-FLINT:
Expand Down
2 changes: 1 addition & 1 deletion bin/build_dependencies_unix.sh
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ if [ $USE_GMP = "gmp" ]; then
--enable-fat\
--enable-shared=yes\
--enable-static=no\
--host=$HOSTARG
--host=$HOST_ARG
make -j3
make install
cd ..
Expand Down
6 changes: 3 additions & 3 deletions bin/build_mingw64_wheel.sh
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@
#
# - Then checkout the code:
#
# $ git clone https://github.com/fredrik-johansson/python-flint/issues/1
# $ git clone https://github.com/flintlib/python-flint.git
#
# - Then install msys2
#
Expand Down Expand Up @@ -44,7 +44,7 @@ fi
PYTHON=$PYTHONDIR/python
VER="${PYTHONVER//./}"

WHEELNAME=python_flint-0.4.1-cp$VER-cp$VER-win_amd64.whl
WHEELNAME=python_flint-0.4.2-cp$VER-cp$VER-win_amd64.whl

$PYTHON -c 'print("hello world")'

Expand Down Expand Up @@ -90,7 +90,7 @@ wheel pack python_flint-*
cd ..

# Make the wheel relocatable
delvewheel repair dist/python_flint-0.4.1-cp$VER-cp$VER-win_amd64.whl \
delvewheel repair dist/python_flint-0.4.2-cp$VER-cp$VER-win_amd64.whl \
--add-path .local/bin:.local/lib/

# Make a virtual enironment to test the wheel
Expand Down
6 changes: 3 additions & 3 deletions bin/pip_install_ubuntu.sh
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ set -o errexit

# This script should work to install python-flint on Ubuntu from a VCS checkout
#
# $ git checkout https://github.com/fredrik-johansson/python-flint.git
# $ git checkout https://github.com/flintlib/python-flint.git
# $ bin/pip_install_ubuntu.sh .
#
# To install an sdist from PyPI, use
Expand All @@ -18,12 +18,12 @@ set -o errexit
# system installation of Flint and Arb in Ubuntu.
#
# Ubuntu 23.04 has Flint 2.9.0 and Arb 2.23.0, so this script might work there
# (for python-flint 0.4.1). That is untested though (23.04 not available in CI).
# (for python-flint 0.4.x). That is untested though (23.04 not available in CI).
#
# With Ubuntu 22.04, this will build but then crashes when running the tests.
# most likely this is because the versions of flint and flint-arb are too old.
# At the time of writing in Ubuntu 22.04 there is Flint 2.8.4 and Arb 2.22. The
# main CI tests and wheels for python-flint 0.4.1 are built with Flint 2.9.0
# main CI tests and wheels for python-flint 0.4.x are built with Flint 2.9.0
# and Arb 2.23.0.
#
# Link against libflint-arb instead of libarb on Ubuntu
Expand Down
4 changes: 2 additions & 2 deletions doc/source/conf.py
Original file line number Diff line number Diff line change
Expand Up @@ -51,9 +51,9 @@
# built documents.
#
# The short X.Y version.
version = '0.4.1'
version = '0.4.2'
# The full version, including alpha/beta/rc tags.
release = '0.4.1'
release = '0.4.2'

# The language for content autogenerated by Sphinx. Refer to documentation
# for a list of supported languages.
Expand Down
2 changes: 1 addition & 1 deletion doc/source/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ and Arb_ (arbitrary-precision ball arithmetic). Features:

Author: `Fredrik Johansson <http://fredrikj.net/>`_ <fredrik.johansson@gmail.com>

Repository: https://github.com/fredrik-johansson/python-flint/
Repository: https://github.com/flintlib/python-flint/

Introduction
------------
Expand Down
4 changes: 2 additions & 2 deletions setup.py
Original file line number Diff line number Diff line change
Expand Up @@ -77,8 +77,8 @@
description='Bindings for FLINT and Arb',
long_description=open('README.md').read(),
long_description_content_type='text/markdown',
version='0.4.1',
url='https://github.com/python-flint/python-flint',
version='0.4.2',
url='https://github.com/flintlib/python-flint',
author='Fredrik Johansson',
author_email='fredrik.johansson@gmail.com',
license='MIT',
Expand Down
2 changes: 1 addition & 1 deletion src/flint/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
from ._flint import *

__version__ = '0.4.1'
__version__ = '0.4.2'
2 changes: 1 addition & 1 deletion src/flint/test/test.py
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@ def raises(f, exception):

def test_pyflint():

assert flint.__version__ == "0.4.1"
assert flint.__version__ == "0.4.2"

ctx = flint.ctx
assert str(ctx) == repr(ctx) == _default_ctx_string
Expand Down

0 comments on commit 518c0a7

Please sign in to comment.