Skip to content

Commit 018eaa3

Browse files
authored
2.0.1rc4 (#365)
1 parent ad64938 commit 018eaa3

Some content is hidden

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

51 files changed

+2472
-411
lines changed

.coveragerc

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,8 @@ omit =
1111
*/gui/experiments/*
1212
*/gui/viewer/*
1313
*/gui/BCInterface.py
14+
*/signal/model/offline_analysis.py
15+
*/signal/evaluate/fusion.py
1416

1517
[report]
1618
exclude_lines =

.github/workflows/main.yml

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,7 @@ jobs:
3737
sudo apt-get install xvfb
3838
python -m pip install --upgrade pip
3939
pip install attrdict3
40+
conda install -c conda-forge liblsl
4041
- name: Install dependencies
4142
run: |
4243
make dev-install
@@ -96,6 +97,9 @@ jobs:
9697
- name: lint
9798
run: |
9899
make lint
100+
- name: integration-test
101+
run: |
102+
make integration-test
99103
100104
build-macos:
101105

@@ -129,5 +133,8 @@ jobs:
129133
- name: lint
130134
run: |
131135
make lint
136+
- name: integration-test
137+
run: |
138+
make integration-test
132139
133140
Lines changed: 100 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,100 @@
1+
name: Publish Python 🐍 distribution 📦 to GitHub and PyPI
2+
3+
on:
4+
push:
5+
branches:
6+
- 'main'
7+
8+
jobs:
9+
build:
10+
name: Build distribution 📦
11+
runs-on: macos-latest
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
with:
16+
persist-credentials: false
17+
- name: Set up Python
18+
uses: actions/setup-python@v5
19+
with:
20+
python-version: "3.9"
21+
- name: update pip & install custom dependencies
22+
run: |
23+
sh scripts/shell/m2chip_install.sh
24+
brew install labstreaminglayer/tap/lsl
25+
python -m pip install --upgrade pip
26+
- name: install dependencies
27+
run: |
28+
make dev-install
29+
- name: Build a binary wheel and a source tarball
30+
run: make build
31+
- name: Store the distribution packages
32+
uses: actions/upload-artifact@v4
33+
with:
34+
name: python-package-distributions
35+
path: dist/
36+
37+
publish-to-pypi:
38+
name: >-
39+
Publish Python 🐍 distribution 📦 to PyPI
40+
if: startsWith(github.ref, 'refs/tags/') # only publish to PyPI on tag pushes
41+
needs:
42+
- build
43+
runs-on: ubuntu-latest
44+
environment:
45+
name: prodpypi
46+
url: https://pypi.org/p/bcipy
47+
permissions:
48+
id-token: write # IMPORTANT: mandatory for trusted publishing
49+
50+
steps:
51+
- name: Download all the dists
52+
uses: actions/download-artifact@v4
53+
with:
54+
name: python-package-distributions
55+
path: dist/
56+
- name: Publish distribution 📦 to PyPI
57+
uses: pypa/gh-action-pypi-publish@release/v1
58+
59+
github-release:
60+
name: >-
61+
Sign the Python 🐍 distribution 📦 with Sigstore
62+
and upload them to GitHub Release
63+
needs:
64+
- publish-to-pypi
65+
runs-on: ubuntu-latest
66+
67+
permissions:
68+
contents: write # IMPORTANT: mandatory for making GitHub Releases
69+
id-token: write # IMPORTANT: mandatory for sigstore
70+
71+
steps:
72+
- name: Download all the dists
73+
uses: actions/download-artifact@v4
74+
with:
75+
name: python-package-distributions
76+
path: dist/
77+
- name: Sign the dists with Sigstore
78+
uses: sigstore/gh-action-sigstore-python@v3.0.0
79+
with:
80+
inputs: >-
81+
./dist/*.tar.gz
82+
./dist/*.whl
83+
- name: Create GitHub Release
84+
env:
85+
GITHUB_TOKEN: ${{ github.token }}
86+
run: >-
87+
gh release create
88+
"$GITHUB_REF_NAME"
89+
--repo "$GITHUB_REPOSITORY"
90+
--notes ""
91+
- name: Upload artifact signatures to GitHub Release
92+
env:
93+
GITHUB_TOKEN: ${{ github.token }}
94+
# Upload to GitHub Release using the `gh` CLI.
95+
# `dist/` contains the built packages, and the
96+
# sigstore-produced signatures and certificates.
97+
run: >-
98+
gh release upload
99+
"$GITHUB_REF_NAME" dist/**
100+
--repo "$GITHUB_REPOSITORY"
Lines changed: 60 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,60 @@
1+
name: Publish Python 🐍 distribution 📦 to TestPyPI
2+
3+
on:
4+
pull_request:
5+
branches:
6+
- 'main'
7+
8+
jobs:
9+
build:
10+
name: Build distribution 📦
11+
runs-on: macos-latest
12+
13+
steps:
14+
- uses: actions/checkout@v4
15+
with:
16+
persist-credentials: false
17+
- name: Set up Python
18+
uses: actions/setup-python@v5
19+
with:
20+
python-version: "3.9"
21+
- name: update pip & install custom dependencies
22+
run: |
23+
sh scripts/shell/m2chip_install.sh
24+
brew install labstreaminglayer/tap/lsl
25+
python -m pip install --upgrade pip
26+
- name: install dependencies
27+
run: |
28+
make dev-install
29+
- name: Build a binary wheel and a source tarball
30+
run: make build
31+
- name: Store the distribution packages
32+
uses: actions/upload-artifact@v4
33+
with:
34+
name: python-package-distributions
35+
path: dist/
36+
37+
publish-to-testpypi:
38+
name: Publish Python 🐍 distribution 📦 to TestPyPI
39+
needs:
40+
- build
41+
runs-on: ubuntu-latest
42+
43+
environment:
44+
name: testpypi
45+
url: https://test.pypi.org/p/bcipy
46+
47+
permissions:
48+
id-token: write
49+
50+
steps:
51+
- name: Download all the dists
52+
uses: actions/download-artifact@v4
53+
with:
54+
name: python-package-distributions
55+
path: dist/
56+
- name: Publish distribution 📦 to TestPyPI
57+
uses: pypa/gh-action-pypi-publish@release/v1
58+
with:
59+
skip-existing: true
60+
repository-url: https://test.pypi.org/legacy/

CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,11 @@
1+
# 2.0.1-rc.4
2+
3+
Patch on final release candidate
4+
5+
## Contributions
6+
7+
- Fusion model analysis and performance metrics support. Bugfixes in gaze model #366
8+
19
# 2.0.0-rc.4
210

311
Our final release candidate before the official 2.0 release!

Makefile

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,14 +3,18 @@ install:
33

44
dev-install:
55
pip install -r dev_requirements.txt
6-
pip install psychopy==2024.2.1 --no-deps
76
pip install kenlm==0.1 --global-option="--max_order=12"
87
make install
98

9+
build:
10+
make dev-install
11+
python setup.py sdist bdist_wheel
12+
1013
test-all:
1114
make coverage-report
1215
make type
1316
make lint
17+
make integration-test
1418

1519
unit-test:
1620
pytest --mpl -k "not slow"

0 commit comments

Comments
 (0)