Skip to content

Switch to storing AST nodes on the stack for more accurate method signature check and easy access to parent nodes #736

Switch to storing AST nodes on the stack for more accurate method signature check and easy access to parent nodes

Switch to storing AST nodes on the stack for more accurate method signature check and easy access to parent nodes #736

Workflow file for this run

name: numpydoc tests
concurrency:
group: ${{ github.workflow }}-${{ github.event.number }}-${{ github.event.ref }}
cancel-in-progress: true
on:
push:
branches: [main]
pull_request:
branches: [main]
jobs:
test:
runs-on: ${{ matrix.os }}-latest
strategy:
matrix:
os: [Ubuntu]
python-version: ["3.9", "3.10", "3.11", "3.12", "3.13"]
sphinx-version:
["sphinx==6.0", "sphinx==6.2", "sphinx==7.0", "sphinx>=7.3"]
include:
- os: Windows
python-version: "3.12"
sphinx-version: "sphinx" # version shouldn't really matter here
defaults:
run:
shell: bash -eo pipefail {0}
steps:
- uses: actions/checkout@v4
- name: Python setup
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup environment
run: |
python -m pip install --upgrade pip wheel setuptools
python -m pip install codecov
python -m pip install ${{ matrix.sphinx-version }}
python -m pip list
- name: Install
run: |
python -m pip install .[test,doc]
pip list
- name: Run test suite
run: |
pytest -v --pyargs numpydoc
- name: Test coverage
run: |
codecov
- name: Make sure CLI works
run: |
numpydoc render numpydoc.tests.test_main._capture_stdout
echo '! numpydoc render numpydoc.tests.test_main._invalid_docstring' | bash
numpydoc validate numpydoc.tests.test_main._capture_stdout
echo '! numpydoc validate numpydoc.tests.test_main._docstring_with_errors' | bash
- name: Setup for doc build
run: |
sudo apt-get update
sudo apt install texlive texlive-latex-extra latexmk dvipng
if: runner.os == 'Linux'
- name: Build documentation
run: |
make -C doc html SPHINXOPTS="-nT"
make -C doc latexpdf SPHINXOPTS="-nT"
if: runner.os == 'Linux'
prerelease:
runs-on: ${{ matrix.os }}-latest
strategy:
matrix:
os: [ubuntu]
python-version: ["3.11", "3.12", "3.13"]
steps:
- uses: actions/checkout@v4
- name: Python setup
uses: actions/setup-python@v5
with:
python-version: ${{ matrix.python-version }}
- name: Setup environment
run: |
python -m pip install --upgrade pip wheel setuptools
python -m pip install codecov
python -m pip list
- name: Install
run: |
python -m pip install .[test,doc]
pip list
- name: Run test suite
run: |
pytest -v --pyargs .
- name: Test coverage
run: |
codecov
- name: Make sure CLI works
run: |
numpydoc render numpydoc.tests.test_main._capture_stdout
echo '! numpydoc render numpydoc.tests.test_main._invalid_docstring' | bash
numpydoc validate numpydoc.tests.test_main._capture_stdout
echo '! numpydoc validate numpydoc.tests.test_main._docstring_with_errors' | bash
- name: Setup for doc build
run: |
sudo apt-get update
sudo apt install texlive texlive-latex-extra latexmk dvipng
- name: Build documentation
run: |
make -C doc html SPHINXOPTS="-nT"
make -C doc latexpdf SPHINXOPTS="-nT"