diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 5976d93c..518a36e9 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -7,25 +7,25 @@ on: jobs: build: name: Build - runs-on: ubuntu-18.04 + runs-on: ubuntu-latest strategy: matrix: - python-version: [3.7, '3.10'] + python-version: ['3.10', 3.13] include: - - python-version: 3.9 + - python-version: 3.11 test-type: lint - - python-version: 3.9 + - python-version: 3.11 test-type: docs steps: - - uses: actions/setup-python@v4 + - uses: actions/setup-python@v5 with: python-version: ${{ matrix.python-version }} - - uses: actions/cache@v3 + - uses: actions/cache@v4 with: path: ~/.cache/pip key: ${{ runner.os }}-py${{ matrix.python-version }} - - uses: actions/checkout@v3 + - uses: actions/checkout@v4 with: fetch-depth: 3 - name: Fetch tags @@ -33,7 +33,7 @@ jobs: - run: pip install -U pip setuptools wheel - if: matrix.test-type == 'lint' - run: pip install -U --pre bokeh pandas 'numpy<1.24' && pip install -U .[dev] + run: pip install -U --pre bokeh pandas numpy && pip install -U .[dev] - if: matrix.test-type == 'docs' run: pip install -e .[doc] # -e provides _version.py for pdoc - run: pip install -U .[test] @@ -44,13 +44,13 @@ jobs: run: mypy backtesting - if: matrix.test-type == 'lint' env: { BOKEH_BROWSER: none } - run: time catchsegv coverage run -m backtesting.test + run: time coverage run -m backtesting.test - if: matrix.test-type == 'lint' - run: coverage report + run: coverage combine && coverage report - if: '! matrix.test-type' env: { BOKEH_BROWSER: none } - run: time catchsegv python -m backtesting.test + run: time python -m backtesting.test - if: matrix.test-type == 'docs' - run: time catchsegv doc/build.sh + run: time doc/build.sh diff --git a/.github/workflows/deploy-docs.yml b/.github/workflows/deploy-docs.yml index 49592fc8..d22a6c43 100644 --- a/.github/workflows/deploy-docs.yml +++ b/.github/workflows/deploy-docs.yml @@ -9,33 +9,26 @@ jobs: runs-on: ubuntu-latest steps: - - name: Set up Python - uses: actions/setup-python@v2 + - uses: actions/setup-python@v5 with: - python-version: 3.8 + python-version: 3.11 - - uses: actions/cache@v2 - name: Set up caches + - uses: actions/cache@v4 with: path: ~/.cache/pip key: ${{ runner.os }} - - name: Checkout repo - uses: actions/checkout@v2 + - uses: actions/checkout@v4 with: fetch-depth: 3 - name: Fetch tags run: git fetch --depth=1 origin +refs/tags/*:refs/tags/* - - name: Install dependencies - run: | - pip install -U pip setuptools wheel - pip install -U -e .[doc,test] + - run: pip install -U pip setuptools wheel + - run: pip install -U -e .[doc,test] - - name: Build docs - run: time catchsegv doc/build.sh + - run: time doc/build.sh - - name: Deploy docs + - run: .github/deploy-gh-pages.sh env: GH_PASSWORD: ${{ secrets.GITHUB_TOKEN }} - run: .github/deploy-gh-pages.sh diff --git a/setup.cfg b/setup.cfg index afe35649..fbfc8dc2 100644 --- a/setup.cfg +++ b/setup.cfg @@ -13,8 +13,8 @@ ignore_missing_imports = True [coverage:run] parallel = 1 -concurrency = - multiprocessing +concurrency = multiprocessing,thread +disable_warnings = no-data-collected source = backtesting doc/examples