-
Notifications
You must be signed in to change notification settings - Fork 3
41 lines (34 loc) · 1.18 KB
/
Copy pathci.yml
File metadata and controls
41 lines (34 loc) · 1.18 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
name: CI
on:
push:
branches: [main]
pull_request:
permissions:
contents: read
jobs:
test:
name: Python ${{ matrix.python-version }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
python-version: ["3.11", "3.12"]
steps:
- uses: actions/checkout@v4
- uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
cache: pip
- name: Install core + test dependencies
run: |
python -m pip install --upgrade pip
pip install numpy pandas scipy scikit-learn pyarrow pyyaml jieba statsmodels pytest pytest-timeout
# alphalens-reloaded:供 test_backtest.py 的交叉校验测试使用
# (alphalens.reformed 为有效签名研究提供第三方交叉印证)
pip install alphalens-reloaded
- name: Run test suite
# 不设 --maxfail,让所有失败都可见(避免早期失败掩盖后续缺陷)
run: python -m pytest tests/ -q --timeout=180
- name: Compile-check all source modules
run: |
python -m compileall -q src scripts factorgpt-skill third_party demo_sim.py run_agent.py