Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
28 changes: 22 additions & 6 deletions .github/workflows/Coverage.yaml
Original file line number Diff line number Diff line change
@@ -1,35 +1,51 @@
name: Coverage

on:
- push
- pull_request
push:
branches: [main]
tags: ["v*"]
pull_request:
branches: [main]

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.head.sha || github.sha }}
cancel-in-progress: true

permissions:
contents: read

jobs:
coverage:
runs-on: ${{ matrix.os }}
timeout-minutes: 45
strategy:
matrix:
os: [macos-14]
python-version: ["3.11"]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "pip"

- name: Install dependencies
run: |
if [ "$RUNNER_OS" = "Linux" ]; then
sudo apt update
sudo apt install -y libmpich-dev zlib1g-dev
sudo apt-get update
sudo apt-get install -y libmpich-dev zlib1g-dev
elif [ "$RUNNER_OS" = "macOS" ]; then
brew update
brew install mpich zlib
fi
python -m pip install --upgrade pip
pip install tox tox-gh-actions

- name: Run coverage
run: tox -e coverage

- name: Upload coverage report
uses: actions/upload-artifact@v4
with:
Expand Down
27 changes: 21 additions & 6 deletions .github/workflows/format.yaml
Original file line number Diff line number Diff line change
@@ -1,32 +1,47 @@
name: Format Check

on:
- push
- pull_request
push:
branches: [main]
tags: ["v*"]
pull_request:
branches: [main]

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.head.sha || github.sha }}
cancel-in-progress: true

permissions:
contents: read

jobs:
black:
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
matrix:
os: [macos-14]
python-version: ["3.11"]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "pip"

- name: Install dependencies
run: |
if [ "$RUNNER_OS" = "Linux" ]; then
sudo apt update
sudo apt install -y libmpich-dev zlib1g-dev
sudo apt-get update
sudo apt-get install -y libmpich-dev zlib1g-dev
elif [ "$RUNNER_OS" = "macOS" ]; then
brew update
brew install mpich zlib
fi
python -m pip install --upgrade pip
pip install tox tox-gh-actions

- name: Run black
run: tox -e black
31 changes: 22 additions & 9 deletions .github/workflows/lint.yml
Original file line number Diff line number Diff line change
@@ -1,34 +1,47 @@
name: Lint

on:
- push
- pull_request
push:
branches: [main]
tags: ["v*"]
pull_request:
branches: [main]

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.head.sha || github.sha }}
cancel-in-progress: true

permissions:
contents: read

jobs:
lint:
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
matrix:
os: [macos-14]
python-version: ["3.11"]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Install MPI
cache: "pip"

- name: Install dependencies
run: |
if [ "$RUNNER_OS" = "Linux" ]; then
sudo apt update
sudo apt install -y libmpich-dev zlib1g-dev
sudo apt-get update
sudo apt-get install -y libmpich-dev zlib1g-dev
elif [ "$RUNNER_OS" = "macOS" ]; then
brew update
brew install mpich zlib
fi
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install tox tox-gh-actions

- name: Run linter
run: tox -e lint
30 changes: 17 additions & 13 deletions .github/workflows/tests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,22 @@ name: Tests

on:
push:
branches: [main]
tags: ["v*"]
pull_request:
branches: [main]

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.head.sha || github.sha }}
cancel-in-progress: true

permissions:
contents: read

jobs:
test:
runs-on: ${{ matrix.os }}
timeout-minutes: 60
strategy:
fail-fast: false
matrix:
Expand All @@ -15,35 +26,28 @@ jobs:
mpi: [mpich, openmpi]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4

- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}

- name: Cache pip
uses: actions/cache@v4
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements*.txt') }}
restore-keys: |
${{ runner.os }}-pip-
cache: "pip"

- name: Install MPI
run: |
if [ "$RUNNER_OS" = "Linux" ]; then
sudo apt update
if [ "${{ matrix.mpi }}" = "mpich" ]; then
sudo apt install -y mpich libmpich-dev zlib1g-dev
elif [ "${{ matrix.mpi }}" = "openmpi" ]; then
else
sudo apt install -y openmpi-bin libopenmpi-dev zlib1g-dev
fi
elif [ "$RUNNER_OS" = "macOS" ]; then
else
brew update
if [ "${{ matrix.mpi }}" = "mpich" ]; then
brew install mpich zlib
elif [ "${{ matrix.mpi }}" = "openmpi" ]; then
else
brew install open-mpi zlib
fi
fi
Expand Down
27 changes: 21 additions & 6 deletions .github/workflows/typecheck.yaml
Original file line number Diff line number Diff line change
@@ -1,32 +1,47 @@
name: Type Check

on:
- push
- pull_request
push:
branches: [main]
tags: ["v*"]
pull_request:
branches: [main]

concurrency:
group: ${{ github.workflow }}-${{ github.event.pull_request.head.sha || github.sha }}
cancel-in-progress: true

permissions:
contents: read

jobs:
mypy:
runs-on: ${{ matrix.os }}
timeout-minutes: 30
strategy:
matrix:
os: [macos-14]
python-version: ["3.11"]

steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v4
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v2
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: "pip"

- name: Install dependencies
run: |
if [ "$RUNNER_OS" = "Linux" ]; then
sudo apt update
sudo apt install -y libmpich-dev zlib1g-dev
sudo apt-get update
sudo apt-get install -y libmpich-dev zlib1g-dev
elif [ "$RUNNER_OS" = "macOS" ]; then
brew update
brew install mpich zlib
fi
python -m pip install --upgrade pip
pip install tox tox-gh-actions

- name: Run mypy
run: tox -e mypy
Empty file added .gitmodules
Empty file.
3 changes: 2 additions & 1 deletion MANIFEST.in
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
include README.md
include LICENSE
recursive-include examples *
recursive-include src/ *.pyx *.pxd *.py *.hpp *.h
recursive-include src/ *.pyx *.pxd *.py *.hpp *.h
recursive-include extern/ *.h
Loading
Loading