diff --git a/.circleci/config.yml b/.circleci/config.yml index d4b68b468f..7b49ee7f78 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -8,11 +8,15 @@ commands: - run: name: Install dependencies and set path command: | + wget --no-check-certificate -O - https://apt.llvm.org/llvm-snapshot.gpg.key | sudo apt-key add - + sudo add-apt-repository -y 'deb http://apt.llvm.org/bionic/ llvm-toolchain-bionic-10 main' sudo apt-get update - sudo apt-get install -y ninja-build libcunit1-dev valgrind clang doxygen python3-pip + # Hack as libffi.so.6 needed for llvm10 + sudo ln -s /usr/path/to/libffi.so.7 /usr/lib/path/to/libffi.so.6 + sudo apt-get install -y ninja-build libcunit1-dev valgrind clang doxygen python3-pip llvm-10 # Install meson to the system packages so we can run it as root + pip install --upgrade pip wheel sudo pip install meson - pip install numpy==1.18.5 pip install --user -r python/requirements/CI-complete/requirements.txt # Remove tskit installed by msprime pip uninstall tskit -y @@ -153,7 +157,7 @@ commands: jobs: build: docker: - - image: cimg/python:3.7 + - image: cimg/python:3.10 working_directory: /home/circleci/tskit steps: - checkout @@ -162,10 +166,10 @@ jobs: # It's sometimes necessary to nuke the cache, and the simplest # way to do it is to change the key. We can increment this # version number when we want to do this. - key: tskit-{{ .Branch }}-v6 + key: tskit-{{ .Branch }}-v8 - setup - save_cache: - key: tskit-{{ .Branch }}-v6 + key: tskit-{{ .Branch }}-v8 paths: - "/home/circleci/.local" - compile_and_test @@ -194,16 +198,16 @@ jobs: build-32: docker: - - image: tskitimages/testing-32bit:2.0 + - image: tskitimages/testing-32bit:3.0 working_directory: /home/circleci/tskit steps: - checkout - run: sudo chown -R circleci:circleci * - restore_cache: - key: tskit-32-{{ .Branch }}-v7 + key: tskit-32-{{ .Branch }}-v8 - setup - save_cache: - key: tskit-32-{{ .Branch }}-v7 + key: tskit-32-{{ .Branch }}-v8 paths: - "/home/circleci/.local" # We need to install curl for the codecov upload. diff --git a/.circleci/images/32bit/Dockerfile b/.circleci/images/32bit/Dockerfile index f894020e09..f00fc9a99c 100644 --- a/.circleci/images/32bit/Dockerfile +++ b/.circleci/images/32bit/Dockerfile @@ -1,4 +1,4 @@ -FROM i386/python:3.7-slim-bullseye +FROM i386/python:3.10-slim-bullseye RUN apt-get update && apt-get install -y sudo rustc cargo libhdf5-dev libgsl-dev pkg-config libssl-dev RUN adduser --disabled-password --gecos "" circleci diff --git a/python/requirements/CI-complete/requirements.txt b/python/requirements/CI-complete/requirements.txt index a582f42387..a30e1571b6 100644 --- a/python/requirements/CI-complete/requirements.txt +++ b/python/requirements/CI-complete/requirements.txt @@ -3,15 +3,15 @@ black==21.12b0 coverage==6.5.0 dendropy==4.5.2 flake8==5.0.4 -h5py==3.7.0 +h5py==3.9.0 jsonschema==4.16.0 kastore==0.3.2 lshmm==0.0.4 msgpack==1.0.4 msprime==1.2.0 -networkx==2.6.3 # Held at 2.6.3 for Python 3.7 compatibility +networkx==3.1 newick==1.3.2 -numpy==1.21.6 # Held at 1.21.6 for Python 3.7 compatibility +numpy==1.25.2 portion==2.3.0 pyparsing==3.0.9 pysam==0.19.1