Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[MNT] new CI workflow to test extras #5375

Merged
merged 37 commits into from Oct 21, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
37 commits
Select commit Hold shift + click to select a range
42335e9
new CI workflow to test extras
yarnabrina Oct 6, 2023
abbd71c
diagnostic commit: auto-formatted pyproject.toml with pyproject-fmt
yarnabrina Oct 6, 2023
9875a46
fixed typos
yarnabrina Oct 7, 2023
e77c98b
added python restriction for esig
yarnabrina Oct 7, 2023
be83021
removed mrsqm from classification extra
yarnabrina Oct 7, 2023
611fe14
sort extras
yarnabrina Oct 7, 2023
92c79f7
skip cython_extras on windows
yarnabrina Oct 7, 2023
8e81065
fixed license field and minor changes
yarnabrina Oct 7, 2023
14c26ec
Merge remote-tracking branch 'origin/main' into validate-extras-workflow
yarnabrina Oct 8, 2023
c9f7e29
new action to test installation of single extra
yarnabrina Oct 8, 2023
3cb178b
switch to local action based workflow
yarnabrina Oct 8, 2023
c31a6fe
Merge remote-tracking branch 'origin/main' into validate-extras-workflow
yarnabrina Oct 10, 2023
aca6262
added new hook
yarnabrina Oct 14, 2023
c71d161
format using new hook
yarnabrina Oct 14, 2023
4204ee6
added new hook
yarnabrina Oct 14, 2023
f353053
Merge remote-tracking branch 'origin/auto-format-pyproject' into vali…
yarnabrina Oct 14, 2023
b06fc6f
remove workflows temporarily
yarnabrina Oct 14, 2023
2ec78b2
remove python bounds temporarily
yarnabrina Oct 14, 2023
fbda0d0
support 3.12
yarnabrina Oct 14, 2023
f1337dd
reduce job matrix size
yarnabrina Oct 14, 2023
8617d63
added python 3.11 bound for esig
yarnabrina Oct 14, 2023
fb3c0b4
removed mrsqm from classification extra
yarnabrina Oct 14, 2023
7fb8b5d
remove older python versions temporarily
yarnabrina Oct 14, 2023
64de4a7
add python 3.12 bound for numba
yarnabrina Oct 14, 2023
d35e7b0
add python 3.12 bound for statsforecast
yarnabrina Oct 14, 2023
3b54efc
add python 3.12 bound for tensorflow
yarnabrina Oct 14, 2023
66a858d
add python 3.12 bound for tslearn
yarnabrina Oct 14, 2023
ef1f089
add python 3.12 bound for tsfresh
yarnabrina Oct 14, 2023
f8f89a0
add python 3.12 bound for pyod
yarnabrina Oct 14, 2023
05fc0d7
add python 3.12 bound for stumpy
yarnabrina Oct 14, 2023
f56cd94
add python 3.12 bound for pmdarima
yarnabrina Oct 14, 2023
9e6e652
add python 3.12 bound for tbats
yarnabrina Oct 15, 2023
5e57626
Revert "remove older python versions temporarily"
yarnabrina Oct 15, 2023
6b4bf53
Revert "remove workflows temporarily"
yarnabrina Oct 15, 2023
1946e7d
removed unnecessary exclusion
yarnabrina Oct 15, 2023
222dbf1
shorted workflow and job names
yarnabrina Oct 15, 2023
c466fee
Merge remote-tracking branch 'origin/main' into validate-extras-workflow
yarnabrina Oct 15, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
21 changes: 21 additions & 0 deletions .github/actions/validate-extra/action.yml
@@ -0,0 +1,21 @@
name: test specific sktime extra
description: install individual extra of sktime
inputs:
sktime-extra-identifier:
description: name of sktime extra
required: true
python-version-identifier:
description: python version to run tests
required: true
runs:
using: composite
steps:
- name: repository checkout step
uses: actions/checkout@v4
- name: python environment step
uses: actions/setup-python@v4
with:
python-version: ${{ inputs.python-version-identifier }}
- name: extra installation step
run: python3 -m pip install .[${{ inputs.sktime-extra-identifier }}]
shell: bash
45 changes: 45 additions & 0 deletions .github/workflows/validate_extras.yml
@@ -0,0 +1,45 @@
name: extras validation
on:
pull_request:
branches:
- main
paths:
- pyproject.toml
schedule:
- cron: 0 0 1 * *
workflow_dispatch:
jobs:
test_installations:
name: extras installation
strategy:
fail-fast: false
matrix:
python-version:
- "3.8"
- "3.9"
- "3.10"
- "3.11"
- "3.12"
operating-system:
- macos-latest
- ubuntu-latest
- windows-latest
sktime-extra:
- alignment
- annotation
- classification
- clustering
- forecasting
- networks
- param_est
- regression
- transformations
runs-on: ${{ matrix.operating-system }}
steps:
- name: checkout pull request branch
uses: actions/checkout@v4
- name: install ${{ matrix.sktime-extra }} extra on python ${{ matrix.python-version }}
uses: ./.github/actions/validate-extra
with:
sktime-extra-identifier: ${{ matrix.sktime-extra }}
python-version-identifier: ${{ matrix.python-version }}
23 changes: 11 additions & 12 deletions pyproject.toml
Expand Up @@ -133,22 +133,21 @@ all_extras_pandas2 = [
annotation = [
"hmmlearn<0.4,>=0.2.7",
'numba<0.59,>=0.53; python_version < "3.12"',
"pyod<1.2,>=0.8",
'pyod<1.2,>=0.8; python_version < "3.12"',
]
binder = [
"jupyter",
"pandas<2.0.0",
]
classification = [
"esig<0.10,>=0.9.7",
"mrsqm<0.1,>=0.0.3",
'esig<0.10,>=0.9.7; python_version < "3.11"',
'numba<0.59,>=0.53; python_version < "3.12"',
"tensorflow<=2.14,>=2",
'tensorflow<=2.14,>=2; python_version < "3.12"',
'tsfresh<0.21,>=0.17; python_version < "3.12"',
]
clustering = [
'numba<0.59,>=0.53; python_version < "3.12"',
"tslearn<0.6.3,>=0.5.2",
'tslearn<0.6.3,>=0.5.2; python_version < "3.12"',
]
cython_extras = [
"mrseql",
Expand Down Expand Up @@ -184,11 +183,11 @@ docs = [
"tabulate",
]
forecasting = [
"arch<6.3.0,>=5.6",
"arch<6.3,>=5.6",
'pmdarima!=1.8.1,<2.1,>=1.8; python_version < "3.12"',
'prophet<1.2,>=1.1; python_version < "3.12"',
"skpro<2.2.0,>=2",
'statsforecast<1.7.0,>=0.5.2; python_version < "3.12"',
"prophet<1.2,>=1.1",
"skpro<2.2,>=2",
'statsforecast<1.7,>=0.5.2; python_version < "3.12"',
"statsmodels<0.15,>=0.12.1",
'tbats<1.2,>=1.1; python_version < "3.12"',
]
Expand All @@ -203,7 +202,7 @@ mlflow_tests = [
]
networks = [
"keras-self-attention<0.52,>=0.51",
"tensorflow<=2.14,>=2",
'tensorflow<=2.14,>=2; python_version < "3.12"',
]
pandas1 = [
"pandas<2.0.0",
Expand All @@ -214,10 +213,10 @@ param_est = [
]
regression = [
'numba<0.59,>=0.53; python_version < "3.12"',
"tensorflow<=2.14,>=2",
'tensorflow<=2.14,>=2; python_version < "3.12"',
]
transformations = [
"esig<0.10,>=0.9.7",
'esig<0.10,>=0.9.7; python_version < "3.11"',
"filterpy<1.5,>=1.4.5",
"holidays<0.35,>=0.29",
"mne<1.6,>=1.5",
Expand Down