46 lines
1.0 KiB
YAML
46 lines
1.0 KiB
YAML
name: Python application
|
|
|
|
on:
|
|
push:
|
|
branches: [master, dev]
|
|
pull_request:
|
|
branches: [master, dev]
|
|
|
|
permissions:
|
|
contents: read
|
|
|
|
concurrency:
|
|
group: ${{ github.workflow }}-${{ github.ref }}
|
|
cancel-in-progress: true
|
|
|
|
jobs:
|
|
build:
|
|
runs-on: windows-latest
|
|
steps:
|
|
- uses: actions/checkout@v4
|
|
|
|
- uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.13"
|
|
cache: pip
|
|
|
|
- name: Install dependencies
|
|
run: |
|
|
python -m pip install --upgrade pip
|
|
python -m pip install ruff==0.14.1 mypy==1.19.1 uv pytest types-tqdm
|
|
python -m pip install "ta-lib==0.6.4" --index-url https://pypi.vnpy.com
|
|
python -m pip install -e ".[dev]" "polars>=1.26.0" "scipy>=1.15.2" "pyarrow>=19.0.1" statsmodels matplotlib
|
|
python -m pip install vnpy_sqlite
|
|
|
|
- name: Lint
|
|
run: ruff check .
|
|
|
|
- name: Type check
|
|
run: mypy vnpy
|
|
|
|
- name: Test
|
|
run: python -m pytest tests
|
|
|
|
- name: Build
|
|
run: uv build
|