Skip to content

Commit 786458c

Browse files
committed
Merge branch 'release/v0.9.0'
2 parents ac4ac7f + 4514e0a commit 786458c

File tree

139 files changed

+9596
-72310
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

139 files changed

+9596
-72310
lines changed

.bumpversion.cfg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[bumpversion]
2-
current_version = 0.8.1
2+
current_version = 0.9.0
33
commit = False
44
tag = False
55
allow_dirty = False

.gitattributes

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1 +1,4 @@
11
notebooks/*.ipynb -linguist-detectable
2+
*.png filter=lfs diff=lfs merge=lfs -text
3+
*.svg filter=lfs diff=lfs merge=lfs -text
4+
logo.svg -filter=lfs -diff=lfs -merge=lfs text

.github/actions/python/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ runs:
88
using: "composite"
99
steps:
1010
- name: Set up Python ${{ inputs.python_version }}
11-
uses: actions/setup-python@v4
11+
uses: actions/setup-python@v5
1212
with:
1313
python-version: ${{ inputs.python_version }}
1414
cache: 'pip'

.github/workflows/main.yaml

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -24,12 +24,12 @@ jobs:
2424
name: Lint code and check type hints
2525
runs-on: ubuntu-latest
2626
steps:
27-
- uses: actions/checkout@v3
27+
- uses: actions/checkout@v4
2828
- name: Setup Python 3.8
2929
uses: ./.github/actions/python
3030
with:
3131
python_version: 3.8
32-
- uses: actions/cache@v3
32+
- uses: actions/cache@v4
3333
with:
3434
path: ~/.cache/pre-commit
3535
key: pre-commit-${{ env.pythonLocation }}-${{ hashFiles('.pre-commit-config.yaml') }}
@@ -43,19 +43,21 @@ jobs:
4343
run: |
4444
MYPY_VERSION=$(mypy --version | sed 's/[^0-9.]*\([0-9.]*\).*/\1/')
4545
echo "key=mypy-$MYPY_VERSION-${{ env.pythonLocation }}" >> $GITHUB_OUTPUT
46-
- uses: actions/cache@v3
46+
- uses: actions/cache@v4
4747
with:
4848
path: .mypy_cache
4949
key: ${{ steps.generate-mypy-cache-key.outputs.key }}
5050
- name: Check Type Hints
5151
run: mypy src/
52+
5253
docs:
5354
name: Build Docs
5455
runs-on: ubuntu-latest
5556
steps:
56-
- uses: actions/checkout@v3
57+
- uses: actions/checkout@v4
5758
with:
5859
fetch-depth: 0
60+
lfs: true
5961
- name: Setup Python 3.8
6062
uses: ./.github/actions/python
6163
with:
@@ -66,11 +68,12 @@ jobs:
6668
pandoc-version: ${{ env.PANDOC_VERSION }}
6769
- name: Build Docs
6870
run: mkdocs build
71+
6972
group-tests:
7073
strategy:
7174
fail-fast: false
7275
matrix:
73-
python_version: ["3.8", "3.9", "3.10"]
76+
python_version: ["3.8", "3.9", "3.10", "3.11"]
7477
group_number: [1, 2, 3, 4]
7578
name: Run Tests - Python ${{ matrix.python_version }} - Group ${{ matrix.group_number }}
7679
uses: ./.github/workflows/run-tests-workflow.yaml
@@ -79,15 +82,21 @@ jobs:
7982
group_number: ${{ matrix.group_number }}
8083
python_version: ${{ matrix.python_version }}
8184
needs: [code-quality]
85+
8286
notebook-tests:
8387
strategy:
88+
fail-fast: false
8489
matrix:
85-
python_version: ["3.8", "3.9", "3.10"]
86-
name: Run Notebook tests - Python ${{ matrix.python_version }}
90+
python_version: ["3.8", "3.9", "3.10", "3.11"]
91+
group_number: [1, 2, 3, 4]
92+
name: Run Notebook tests - Python ${{ matrix.python_version }} - Group ${{ matrix.group_number }}
8793
uses: ./.github/workflows/run-notebook-tests-workflow.yaml
8894
with:
8995
python_version: ${{ matrix.python_version }}
96+
split_size: 4
97+
group_number: ${{ matrix.group_number }}
9098
needs: [code-quality]
99+
91100
push-docs-and-release-testpypi:
92101
name: Push Docs and maybe release Package to TestPyPI
93102
runs-on: ubuntu-latest
@@ -96,7 +105,10 @@ jobs:
96105
concurrency:
97106
group: publish
98107
steps:
99-
- uses: actions/checkout@v3
108+
- uses: actions/checkout@v4
109+
with:
110+
fetch-depth: 0
111+
lfs: true
100112
- name: Setup Python 3.8
101113
uses: ./.github/actions/python
102114
with:

.github/workflows/publish.yaml

Lines changed: 8 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
name: Publish Python Package to PyPI
1+
name: Publish package and docs
22

33
on:
44
release:
@@ -28,12 +28,17 @@ jobs:
2828
steps:
2929
- name: Checking out last commit in release
3030
if: ${{ github.event_name != 'workflow_dispatch' }}
31-
uses: actions/checkout@v3
31+
uses: actions/checkout@v4
32+
with:
33+
lfs: true
34+
fetch-depth: 0
3235
- name: Checking out last commit for tag ${{ inputs.tag_name }}
33-
uses: actions/checkout@v3
3436
if: ${{ github.event_name == 'workflow_dispatch' }}
37+
uses: actions/checkout@v4
3538
with:
3639
ref: ${{ inputs.tag_name }}
40+
lfs: true
41+
fetch-depth: 0
3742
- name: Fail if running locally
3843
if: ${{ env.ACT }} # skip during local actions testing
3944
run: |

.github/workflows/run-notebook-tests-workflow.yaml

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,14 @@ name: Run Notebook Tests
33
on:
44
workflow_call:
55
inputs:
6+
split_size:
7+
description: "Determines the number of groups into which the tests should be split"
8+
type: string
9+
default: 4
10+
group_number:
11+
description: "Determines which which group of tests to run. Can be 1, 2, ..., split_size"
12+
type: string
13+
required: true
614
python_version:
715
description: "Determines which Python version to use"
816
type: string
@@ -15,20 +23,20 @@ jobs:
1523
run-tests:
1624
runs-on: ubuntu-latest
1725
steps:
18-
- uses: actions/checkout@v3
26+
- uses: actions/checkout@v4
1927
with:
2028
fetch-depth: 0
2129
- name: Setup Python ${{ inputs.python_version }}
2230
uses: ./.github/actions/python
2331
with:
2432
python_version: ${{ inputs.python_version }}
2533
- name: Cache Tox Directory for Tests
26-
uses: actions/cache@v3
34+
uses: actions/cache@v4
2735
with:
2836
key: tox-${{ runner.os }}-${{ github.ref }}-${{ hashFiles('tox.ini', 'requirements.txt') }}-${{ inputs.python_version }}
2937
path: .tox
3038
- name: Set up memcached
3139
uses: niden/actions-memcached@v7
3240
- name: Test Notebooks
33-
run: tox -e notebook-tests
34-
continue-on-error: true
41+
run: tox -e notebook-tests -- --durations-path .notebook_test_durations --splits ${{ inputs.split_size }} --group ${{ inputs.group_number }}
42+

.github/workflows/run-tests-workflow.yaml

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,22 +16,28 @@ on:
1616
type: string
1717
required: true
1818

19+
1920
env:
2021
PY_COLORS: 1
2122

2223
jobs:
2324
run-tests:
2425
runs-on: ubuntu-latest
2526
steps:
26-
- uses: actions/checkout@v3
27+
- name: Free Disk Space (Ubuntu)
28+
uses: jlumbroso/free-disk-space@main
29+
with:
30+
large-packages: false
31+
docker-images: false
32+
- uses: actions/checkout@v4
2733
with:
2834
fetch-depth: 0
2935
- name: Setup Python ${{ inputs.python_version }}
3036
uses: ./.github/actions/python
3137
with:
3238
python_version: ${{ inputs.python_version }}
3339
- name: Cache Tox Directory for Tests
34-
uses: actions/cache@v3
40+
uses: actions/cache@v4
3541
with:
3642
key: tox-${{ runner.os }}-${{ github.ref }}-${{ hashFiles('tox.ini', 'requirements.txt') }}-${{ inputs.python_version }}
3743
path: .tox
@@ -40,7 +46,7 @@ jobs:
4046
- name: Test Group ${{ inputs.group_number }}
4147
run: tox -e tests -- --slow-tests --splits ${{ inputs.split_size }} --group ${{ inputs.group_number }}
4248
- name: Upload coverage reports to Codecov
43-
uses: codecov/codecov-action@v3
49+
uses: codecov/codecov-action@v4
4450
with:
4551
token: ${{ secrets.CODECOV_TOKEN }}
4652
files: ./coverage.xml

.github/workflows/stale.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ jobs:
77
stale:
88
runs-on: ubuntu-latest
99
steps:
10-
- uses: actions/stale@v6
10+
- uses: actions/stale@v9
1111
with:
1212
only-labels: 'awaiting-reply'
1313
days-before-stale: 30

.notebook_test_durations

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
{
2+
"notebooks/data_oob.ipynb::": 14.514983271001256,
3+
"notebooks/influence_imagenet.ipynb::": 15.937124550999215,
4+
"notebooks/influence_sentiment_analysis.ipynb::": 26.479645616000198,
5+
"notebooks/influence_synthetic.ipynb::": 6.61773010700017,
6+
"notebooks/influence_wine.ipynb::": 16.312171267998565,
7+
"notebooks/least_core_basic.ipynb::": 14.375480750999486,
8+
"notebooks/msr_banzhaf_digits.ipynb::": 106.6507187110019,
9+
"notebooks/shapley_basic_spotify.ipynb::": 15.657225806997303,
10+
"notebooks/shapley_knn_flowers.ipynb::": 3.9943819290019746,
11+
"notebooks/shapley_utility_learning.ipynb::": 25.939783253001224
12+
}

0 commit comments

Comments
 (0)