Skip to content

Commit 82214f7

Browse files
voorhsDarinochkagithub-actions[bot]Samoed
authored
Check dumper (#182)
* Feat/code carbon each node (#175) * feat: update codecarbon * feat: update codecarbon * feat: added codecarbon * Update optimizer_config.schema.json * fix: fixed import mypy * fix: codecarbon package * fix: only float\integer log * fix: codecarbon package * fix: mypy * fix: test * fix: delete emissions * fix: test --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * standartize pyproject & speedup tests (#176) * speedup tests * fix pyproject * Update optimizer_config.schema.json * move optional dependencies * fixes * add xdist * fix ci * download data from hub in doc * add caching * add doc cache --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: voorhs <[email protected]> * add proper `omit` definition for tests coverage report (#179) * add proper `omit` definition * Update optimizer_config.schema.json * exclude tmp from coverage report --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> * add node validators (#177) * add node validators * add comments * Update optimizer_config.schema.json * rename bert model * lint * fixes * fix test --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: voorhs <[email protected]> * update makefile * update bert test * mypy workaround * attempt to fix windows permission error * workaround --------- Co-authored-by: Darinochka <[email protected]> Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com> Co-authored-by: Roman Solomatin <[email protected]>
1 parent fd607ac commit 82214f7

File tree

25 files changed

+684
-273
lines changed

25 files changed

+684
-273
lines changed

.github/workflows/build-docs.yaml

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -36,33 +36,36 @@ jobs:
3636
with:
3737
python-version: "3.10"
3838

39-
- name: setup poetry
40-
run: |
41-
curl -sSL https://install.python-poetry.org | python -
39+
- name: Cache Hugging Face
40+
id: cache-hf
41+
uses: actions/cache@v4
42+
with:
43+
path: ~/.cache/huggingface
44+
key: docs-cache-hf
4245

4346
- name: Install pandoc
4447
run: |
4548
sudo apt install pandoc
4649
4750
- name: Install dependencies
4851
run: |
49-
poetry install --with docs
52+
pip install .[docs]
5053
5154
- name: Run tests
5255
if: github.event_name != 'workflow_dispatch'
5356
run: |
5457
echo "Testing documentation build..."
55-
make test-docs
58+
python -m sphinx build -b doctest docs/source docs/build/html
5659
5760
- name: Build documentation
5861
if: ${{ github.ref == 'refs/heads/dev' }} && github.event_name != 'workflow_dispatch'
5962
run: |
60-
make docs
63+
python -m sphinx build -b html docs/source docs/build/html
6164
6265
- name: build multiversion documentation
6366
if: github.event_name == 'release' || github.event_name == 'workflow_dispatch'
6467
run: |
65-
make multi-version-docs
68+
sphinx-multiversion docs/source docs/build/html
6669
6770
- name: Deploy to GitHub Pages
6871
uses: peaceiris/actions-gh-pages@v3
Lines changed: 46 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,46 @@
1+
name: Reusable Test Workflow
2+
3+
on:
4+
workflow_call:
5+
inputs:
6+
test_command:
7+
required: true
8+
type: string
9+
description: 'Command to run tests'
10+
11+
jobs:
12+
test:
13+
runs-on: ${{ matrix.os }}
14+
strategy:
15+
fail-fast: false
16+
matrix:
17+
os: [ ubuntu-latest ]
18+
python-version: [ "3.10", "3.11", "3.12" ]
19+
include:
20+
- os: windows-latest
21+
python-version: "3.10"
22+
23+
steps:
24+
- name: Checkout code
25+
uses: actions/checkout@v4
26+
27+
- name: Cache Hugging Face
28+
id: cache-hf
29+
uses: actions/cache@v4
30+
with:
31+
path: ~/.cache/huggingface
32+
key: ${{ runner.os }}-hf
33+
34+
- name: Setup Python ${{ matrix.python-version }}
35+
uses: actions/setup-python@v5
36+
with:
37+
python-version: ${{ matrix.python-version }}
38+
cache: "pip"
39+
40+
- name: Install dependencies
41+
run: |
42+
pip install .[test]
43+
44+
- name: Run tests
45+
run: |
46+
${{ inputs.test_command }}

.github/workflows/test-inference.yaml

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,6 @@ on:
88

99
jobs:
1010
test:
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
fail-fast: false
14-
matrix:
15-
os: [ ubuntu-latest ]
16-
python-version: [ "3.10", "3.11", "3.12" ]
17-
include:
18-
- os: windows-latest
19-
python-version: "3.10"
20-
21-
steps:
22-
- name: Checkout code
23-
uses: actions/checkout@v4
24-
25-
- name: Setup Python ${{ matrix.python-version }}
26-
uses: actions/setup-python@v5
27-
with:
28-
python-version: ${{ matrix.python-version }}
29-
cache: "pip"
30-
31-
- name: Install dependencies
32-
run: |
33-
pip install .
34-
pip install pytest pytest-asyncio
35-
36-
- name: Run tests
37-
run: |
38-
pytest tests/pipeline/test_inference.py
11+
uses: ./.github/workflows/reusable-test.yaml
12+
with:
13+
test_command: pytest -n auto tests/pipeline/test_inference.py

.github/workflows/test-nodes.yaml

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,6 @@ on:
88

99
jobs:
1010
test:
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
fail-fast: false
14-
matrix:
15-
os: [ ubuntu-latest ]
16-
python-version: [ "3.10", "3.11", "3.12" ]
17-
include:
18-
- os: windows-latest
19-
python-version: "3.10"
20-
21-
steps:
22-
- name: Checkout code
23-
uses: actions/checkout@v4
24-
25-
- name: Setup Python ${{ matrix.python-version }}
26-
uses: actions/setup-python@v5
27-
with:
28-
python-version: ${{ matrix.python-version }}
29-
cache: "pip"
30-
31-
- name: Install dependencies
32-
run: |
33-
pip install .
34-
pip install pytest pytest-asyncio
35-
36-
- name: Run tests
37-
run: |
38-
pytest tests/nodes
11+
uses: ./.github/workflows/reusable-test.yaml
12+
with:
13+
test_command: pytest -n auto tests/nodes

.github/workflows/test-optimization.yaml

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,6 @@ on:
88

99
jobs:
1010
test:
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
fail-fast: false
14-
matrix:
15-
os: [ ubuntu-latest ]
16-
python-version: [ "3.10", "3.11", "3.12" ]
17-
include:
18-
- os: windows-latest
19-
python-version: "3.10"
20-
21-
steps:
22-
- name: Checkout code
23-
uses: actions/checkout@v4
24-
25-
- name: Setup Python ${{ matrix.python-version }}
26-
uses: actions/setup-python@v5
27-
with:
28-
python-version: ${{ matrix.python-version }}
29-
cache: "pip"
30-
31-
- name: Install dependencies
32-
run: |
33-
pip install .
34-
pip install pytest pytest-asyncio
35-
36-
- name: Run tests
37-
run: |
38-
pytest tests/pipeline/test_optimization.py
11+
uses: ./.github/workflows/reusable-test.yaml
12+
with:
13+
test_command: pytest -n auto tests/pipeline/test_optimization.py

.github/workflows/test-presets.yaml

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,6 @@ on:
88

99
jobs:
1010
test:
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
fail-fast: false
14-
matrix:
15-
os: [ ubuntu-latest ]
16-
python-version: [ "3.10", "3.11", "3.12" ]
17-
include:
18-
- os: windows-latest
19-
python-version: "3.10"
20-
21-
steps:
22-
- name: Checkout code
23-
uses: actions/checkout@v4
24-
25-
- name: Setup Python ${{ matrix.python-version }}
26-
uses: actions/setup-python@v5
27-
with:
28-
python-version: ${{ matrix.python-version }}
29-
cache: "pip"
30-
31-
- name: Install dependencies
32-
run: |
33-
pip install .
34-
pip install pytest pytest-asyncio
35-
36-
- name: Run tests
37-
run: |
38-
pytest tests/pipeline/test_presets.py
11+
uses: ./.github/workflows/reusable-test.yaml
12+
with:
13+
test_command: pytest -n auto tests/pipeline/test_presets.py

.github/workflows/typing.yml

Lines changed: 2 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -11,14 +11,9 @@ jobs:
1111
python-version: "3.10"
1212
cache: "pip"
1313

14-
- name: Install Poetry
15-
run: |
16-
curl -sSL https://install.python-poetry.org | python3 -
17-
echo "$HOME/.poetry/bin" >> $GITHUB_PATH
18-
1914
- name: Install dependencies
2015
run: |
21-
poetry install --with typing
16+
pip install .[typing]
2217
2318
- name: Run mypy
24-
run: make typing
19+
run: mypy autointent

.github/workflows/unit-tests.yaml

Lines changed: 3 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -8,31 +8,6 @@ on:
88

99
jobs:
1010
test:
11-
runs-on: ${{ matrix.os }}
12-
strategy:
13-
fail-fast: false
14-
matrix:
15-
os: [ ubuntu-latest ]
16-
python-version: [ "3.10", "3.11", "3.12" ]
17-
include:
18-
- os: windows-latest
19-
python-version: "3.10"
20-
21-
steps:
22-
- name: Checkout code
23-
uses: actions/checkout@v4
24-
25-
- name: Setup Python ${{ matrix.python-version }}
26-
uses: actions/setup-python@v5
27-
with:
28-
python-version: ${{ matrix.python-version }}
29-
cache: "pip"
30-
31-
- name: Install dependencies
32-
run: |
33-
pip install .
34-
pip install pytest pytest-asyncio
35-
36-
- name: Run tests
37-
run: |
38-
pytest --ignore=tests/nodes --ignore=tests/pipeline
11+
uses: ./.github/workflows/reusable-test.yaml
12+
with:
13+
test_command: pytest -n auto --ignore=tests/nodes --ignore=tests/pipeline

Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ poetry = poetry run
33

44
.PHONY: install
55
install:
6-
poetry install --with dev,test,typing,docs
6+
poetry install --extras "dev test typing docs"
77

88
.PHONY: test
99
test:
@@ -24,7 +24,7 @@ lint:
2424

2525
.PHONY: sync
2626
sync:
27-
poetry sync --with dev,test,typing,docs
27+
poetry sync --extras "dev test typing docs"
2828

2929
.PHONY: docs
3030
docs:

autointent/context/data_handler/_stratification.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
from numpy import typing as npt
1313
from sklearn.model_selection import train_test_split
1414
from skmultilearn.model_selection import IterativeStratification
15-
from transformers import set_seed
15+
from transformers import set_seed # type: ignore[attr-defined]
1616

1717
from autointent import Dataset
1818
from autointent.custom_types import LabelType
@@ -128,7 +128,8 @@ def _split_multilabel(self, dataset: HFDataset, test_size: float) -> Sequence[np
128128
Returns:
129129
A sequence containing indices for train and test splits.
130130
"""
131-
set_seed(self.random_seed) # workaround for buggy nature of IterativeStratification from skmultilearn
131+
if self.random_seed is not None:
132+
set_seed(self.random_seed) # workaround for buggy nature of IterativeStratification from skmultilearn
132133
splitter = IterativeStratification(
133134
n_splits=2,
134135
order=2,

0 commit comments

Comments
 (0)