Skip to content

Commit

Permalink
Merge branch 'main' into release
Browse files Browse the repository at this point in the history
  • Loading branch information
jhale committed Apr 22, 2024
2 parents 9e8c597 + ed98281 commit d997903
Show file tree
Hide file tree
Showing 214 changed files with 8,786 additions and 8,233 deletions.
10 changes: 5 additions & 5 deletions .github/workflows/build-wheels.yml
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: Checkout UFL
uses: actions/checkout@v2
uses: actions/checkout@v4
with:
ref: ${{ github.event.inputs.ufl_ref }}

Expand All @@ -50,7 +50,7 @@ jobs:
- name: Build sdist and wheel
run: python -m build .

- uses: actions/upload-artifact@v2
- uses: actions/upload-artifact@v4
with:
path: dist/*

Expand All @@ -59,21 +59,21 @@ jobs:
needs: [build]
runs-on: ubuntu-latest
steps:
- uses: actions/download-artifact@v2
- uses: actions/download-artifact@v4
with:
name: artifact
path: dist

- name: Push to PyPI
uses: pypa/gh-action-pypi-publish@v1.5.0
uses: pypa/gh-action-pypi-publish@release/v1
if: ${{ github.event.inputs.pypi_publish == 'true' }}
with:
user: __token__
password: ${{ secrets.PYPI_TOKEN }}
repository_url: https://upload.pypi.org/legacy/

- name: Push to Test PyPI
uses: pypa/gh-action-pypi-publish@v1.5.0
uses: pypa/gh-action-pypi-publish@release/v1
if: ${{ github.event.inputs.test_pypi_publish == 'true' }}
with:
user: __token__
Expand Down
25 changes: 8 additions & 17 deletions .github/workflows/fenicsx-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -18,9 +18,9 @@ jobs:
PETSC_ARCH: linux-gnu-real-64

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: 3.9

Expand All @@ -37,7 +37,7 @@ jobs:
python3 -m pip install git+https://github.com/FEniCS/basix.git
- name: Clone FFCx
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: ./ffcx
repository: FEniCS/ffcx
Expand All @@ -53,24 +53,15 @@ jobs:
dolfinx-tests:
name: Run DOLFINx tests
runs-on: ubuntu-latest
container: fenicsproject/test-env:nightly-openmpi
container: ghcr.io/fenics/test-env:current-openmpi

env:

PETSC_ARCH: linux-gnu-complex-32
PETSC_ARCH: linux-gnu-complex128-32
OMPI_ALLOW_RUN_AS_ROOT: 1
OMPI_ALLOW_RUN_AS_ROOT_CONFIRM: 1
OMPI_MCA_rmaps_base_oversubscribe: 1
OMPI_MCA_plm: isolated
OMPI_MCA_btl_vader_single_copy_mechanism: none
OMPI_MCA_mpi_yield_when_idle: 1
OMPI_MCA_hwloc_base_binding_policy: none

steps:
- uses: actions/checkout@v3
- name: Install dependencies (Python)
run: |
python3 -m pip install --upgrade pip
- uses: actions/checkout@v4

- name: Install UFL
run: |
Expand All @@ -82,7 +73,7 @@ jobs:
python3 -m pip install git+https://github.com/FEniCS/ffcx.git
- name: Clone DOLFINx
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
path: ./dolfinx
repository: FEniCS/dolfinx
Expand All @@ -92,6 +83,6 @@ jobs:
cmake -G Ninja -DCMAKE_BUILD_TYPE=Developer -B build -S dolfinx/cpp/
cmake --build build
cmake --install build
pip3 -v install --global-option build --global-option --debug dolfinx/python/
python3 -m pip -v install --no-build-isolation --check-build-dependencies --config-settings=cmake.build-type="Developer" dolfinx/python/
- name: Run DOLFINx unit tests
run: python3 -m pytest -n auto dolfinx/python/test/unit
21 changes: 9 additions & 12 deletions .github/workflows/pythonapp.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,22 +20,19 @@ jobs:
strategy:
matrix:
os: [ubuntu-latest, macos-latest]
python-version: ['3.8', '3.9', '3.10', '3.11']
python-version: ['3.8', '3.9', '3.10', '3.11', '3.12']

steps:
- uses: actions/checkout@v3
- uses: actions/checkout@v4
- name: Set up Python
uses: actions/setup-python@v3
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Lint with flake8
- name: Lint with ruff
run: |
python -m pip install flake8
flake8 --statistics .
- name: Check documentation style
run: |
python -m pip install pydocstyle
python -m pydocstyle ufl/
pip install ruff
ruff check .
ruff format --check .
- name: Install UFL
run: python -m pip install .[ci]
- name: Run unit tests
Expand All @@ -53,7 +50,7 @@ jobs:
make html
- name: Upload documentation artifact
uses: actions/upload-artifact@v3
uses: actions/upload-artifact@v4
with:
name: doc-${{ matrix.os }}-${{ matrix.python-version }}
path: doc/sphinx/build/html/
Expand All @@ -62,7 +59,7 @@ jobs:

- name: Checkout FEniCS/docs
if: ${{ github.repository == 'FEniCS/ufl' && ( github.ref == 'refs/heads/main' || startsWith(github.ref, 'refs/tags/') ) && runner.os == 'Linux' && matrix.python-version == 3.8 }}
uses: actions/checkout@v3
uses: actions/checkout@v4
with:
repository: "FEniCS/docs"
path: "docs"
Expand Down
61 changes: 61 additions & 0 deletions .github/workflows/spack.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
name: Spack build

on:
# Uncomment the below 'push' to trigger on push
# push:
# branches:
# - "**"
schedule:
# '*' is a special character in YAML, so string must be quoted
- cron: "0 2 * * WED"
workflow_dispatch:
inputs:
spack_repo:
description: "Spack repository to test"
default: "spack/spack"
type: string
spack_ref:
description: "Spack repository branch/tag to test"
default: "develop"
type: string

jobs:
build:
runs-on: ubuntu-latest
container: ubuntu:latest
steps:
- name: Install Spack requirements
run: |
apt-get -y update
apt-get install -y bzip2 curl file git gzip make patch python3-minimal tar xz-utils
apt-get install -y g++ gfortran # compilers
- name: Get Spack
if: github.event_name != 'workflow_dispatch'
uses: actions/checkout@v4
with:
path: ./spack
repository: spack/spack
- name: Get Spack
if: github.event_name == 'workflow_dispatch'
uses: actions/checkout@v4
with:
path: ./spack
repository: ${{ github.event.inputs.spack_repo }}
ref: ${{ github.event.inputs.spack_ref }}

- name: Install UFL development version and run tests
run: |
. ./spack/share/spack/setup-env.sh
spack env create main
spack env activate main
spack add py-fenics-ufl@main
spack install --test=root
- name: Install UFL release version and run tests
run: |
. ./spack/share/spack/setup-env.sh
spack env create release
spack env activate release
spack add py-fenics-ufl
spack install --test=root
4 changes: 2 additions & 2 deletions .github/workflows/tsfc-tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -32,14 +32,14 @@ jobs:
with:
path: ./tsfc
repository: firedrakeproject/tsfc
ref: master
ref: mscroggs/gdim
- name: Install tsfc
run: |
cd tsfc
pip install -r requirements-ext.txt
pip install git+https://github.com/coneoproject/COFFEE.git#egg=coffee
pip install git+https://github.com/firedrakeproject/fiat.git#egg=fenics-fiat
pip install git+https://github.com/FInAT/FInAT.git#egg=finat
pip install git+https://github.com/FInAT/FInAT.git@mscroggs/gdim#egg=finat
pip install git+https://github.com/firedrakeproject/loopy.git#egg=loopy
pip install .[ci]
pip install pytest
Expand Down
1 change: 1 addition & 0 deletions AUTHORS
Original file line number Diff line number Diff line change
Expand Up @@ -31,3 +31,4 @@ Contributors:
| Nacime Bouziani <nacime.bouziani@gmail.com>
| Reuben W. Hill <reuben.hill10@imperial.ac.uk>
| Nacime Bouziani <n.bouziani18@imperial.ac.uk>
| Matthew Scroggs <matthew.scroggs.14@ucl.ac.uk>
Loading

0 comments on commit d997903

Please sign in to comment.