Skip to content

[FIX] Pooled global/groupby lag transforms to use RANGE semantics (#641) #534

[FIX] Pooled global/groupby lag transforms to use RANGE semantics (#641)

[FIX] Pooled global/groupby lag transforms to use RANGE semantics (#641) #534

Workflow file for this run

name: pytest
on:
push:
branches: [main]
pull_request:
branches: [main]
workflow_dispatch:
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
cancel-in-progress: true
permissions:
contents: read
jobs:
check-package:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: '3.12'
- name: Install uv
uses: astral-sh/setup-uv@v7
- name: Build wheel
run: uv build --wheel
- name: Check wheel contents
run: |
python -c "
import glob, zipfile, sys
wheel = glob.glob('dist/*.whl')[0]
with zipfile.ZipFile(wheel) as zf:
names = zf.namelist()
required = [
'mlforecast/__init__.py',
'mlforecast/distributed/__init__.py',
'mlforecast/distributed/models/__init__.py',
'mlforecast/distributed/models/dask/__init__.py',
'mlforecast/distributed/models/ray/__init__.py',
'mlforecast/distributed/models/spark/__init__.py',
]
missing = [p for p in required if p not in names]
if missing:
print('Missing from wheel:')
for p in missing:
print(f' {p}')
sys.exit(1)
print('All subpackages found in wheel.')
"
all-tests:
needs: check-package
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
os: [ubuntu-latest, macos-latest, windows-latest]
python-version: ['3.10', '3.11', '3.12', '3.13', '3.14']
steps:
- name: Clone repo
uses: actions/checkout@v6
- uses: actions/setup-python@v6
with:
python-version: ${{ matrix.python-version }}
- name: Install uv
uses: astral-sh/setup-uv@v7
with:
enable-cache: true
cache-dependency-glob: "uv.lock"
- name: Install dependencies
run: uv sync --group dev --upgrade-package mkdocstrings-parser --extra dask --extra spark --extra ray
- name: Install lightgbm on macOS
if: matrix.os == 'macos-latest'
run: |
# install brew first
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew install lightgbm
- name: Run pytest
env:
RAY_ENABLE_UV_RUN_RUNTIME_ENV: 0
run: uv run pytest --reruns=2 --reruns-delay=2 --only-rerun="Socket recv error"