Release v6.1.0: Web-based GUI #22
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Documentation | |
| on: | |
| push: | |
| branches: | |
| - develop | |
| - main | |
| - 'release/**' | |
| paths: | |
| - 'docs/**' | |
| - 'fusion/**/*.py' | |
| - '.github/workflows/docs.yml' | |
| pull_request: | |
| branches: | |
| - develop | |
| - main | |
| - 'release/**' | |
| paths: | |
| - 'docs/**' | |
| - 'fusion/**/*.py' | |
| workflow_dispatch: | |
| permissions: | |
| contents: read | |
| pages: write | |
| id-token: write | |
| # Allow only one concurrent deployment | |
| concurrency: | |
| group: "pages" | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| name: Build Documentation | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - name: Set up Python 3.11 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| cache: 'pip' | |
| - name: Install system dependencies | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y graphviz pandoc | |
| - name: Install Python dependencies | |
| run: | | |
| python -m pip install --upgrade pip setuptools wheel | |
| # Install torch first (required before PyG packages) | |
| pip install torch==2.2.2 | |
| # Install PyG packages with pre-built wheels | |
| pip install torch-scatter torch-sparse torch-cluster torch-spline-conv -f https://data.pyg.org/whl/torch-2.2.2+cpu.html | |
| # Install the rest of the requirements | |
| pip install -r requirements.txt | |
| # Install the package with dev dependencies | |
| pip install -e .[dev] | |
| # Install additional Sphinx packages | |
| pip install sphinx sphinx-rtd-theme sphinx-copybutton sphinx-tabs myst-parser | |
| - name: Build documentation | |
| run: | | |
| cd docs | |
| make clean | |
| make html | |
| env: | |
| # Note: -W flag removed to allow deployment despite warnings | |
| # TODO: Re-enable -W after fixing documentation warnings | |
| SPHINXOPTS: "--keep-going" | |
| - name: Check documentation build | |
| run: | | |
| if [ ! -f docs/_build/html/index.html ]; then | |
| echo "Error: Documentation build failed - index.html not found" | |
| exit 1 | |
| fi | |
| echo "Documentation built successfully!" | |
| - name: Upload build artifacts | |
| uses: actions/upload-artifact@v4 | |
| with: | |
| name: documentation-html | |
| path: docs/_build/html/ | |
| retention-days: 7 | |
| - name: Upload Pages artifact | |
| if: github.ref == 'refs/heads/main' && github.event_name == 'push' | |
| uses: actions/upload-pages-artifact@v3 | |
| with: | |
| path: docs/_build/html/ | |
| deploy: | |
| name: Deploy to GitHub Pages | |
| if: github.ref == 'refs/heads/main' && github.event_name == 'push' | |
| needs: build | |
| runs-on: ubuntu-latest | |
| environment: | |
| name: github-pages | |
| url: ${{ steps.deployment.outputs.page_url }} | |
| steps: | |
| - name: Deploy to GitHub Pages | |
| id: deployment | |
| uses: actions/deploy-pages@v4 | |
| link-check: | |
| name: Check Links | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'pull_request' | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Set up Python 3.11 | |
| uses: actions/setup-python@v5 | |
| with: | |
| python-version: '3.11' | |
| cache: 'pip' | |
| - name: Install dependencies | |
| run: | | |
| python -m pip install --upgrade pip | |
| pip install sphinx sphinx-rtd-theme sphinx-copybutton sphinx-tabs myst-parser | |
| - name: Check links | |
| run: | | |
| cd docs | |
| make linkcheck | |
| continue-on-error: true | |
| spell-check: | |
| name: Spell Check | |
| runs-on: ubuntu-latest | |
| if: github.event_name == 'pull_request' | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install codespell | |
| run: pip install codespell | |
| - name: Run spell checker | |
| run: | | |
| codespell docs/ \ | |
| --skip="docs/_build,docs/_static,*.svg" \ | |
| --ignore-words-list="te,nd,ue,ba,hist" \ | |
| --quiet-level=2 | |
| continue-on-error: true |