tune: a progress display for --tune, per-ISA [tuned] fallbacks, and arm64 cpu_supports #5155
Workflow file for this run
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: Build doc | |
| # Run only on tags and release publish | |
| on: | |
| release: | |
| types: prereleased | |
| push: | |
| paths: | |
| - 'doc/**' | |
| - 'daslib/**' | |
| - 'src/builtin/**' | |
| - 'modules/dasLLAMA/dasllama/**' | |
| pull_request: | |
| paths: | |
| - 'doc/**' | |
| - 'daslib/**' | |
| - 'src/builtin/**' | |
| - 'modules/dasLLAMA/dasllama/**' | |
| concurrency: | |
| group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
| cancel-in-progress: true | |
| jobs: | |
| build: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: "SCM Checkout" | |
| uses: actions/checkout@v4 | |
| - name: "Install Python dependencies" | |
| run: | | |
| # Our bindings do not work on latest. | |
| pip install -r doc/requirements.txt | |
| - name: "Install CMake and Ninja" | |
| uses: lukka/get-cmake@latest | |
| - name: "Build: Daslang (for das2rst)" | |
| run: | | |
| set -eux | |
| mkdir build | |
| cmake --no-warn-unused-cli -B./build \ | |
| -DCMAKE_BUILD_TYPE:STRING=Release \ | |
| -DDAS_HV_DISABLED=OFF \ | |
| -DDAS_PUGIXML_DISABLED=OFF \ | |
| -DDAS_LLVM_DISABLED=ON \ | |
| -DDAS_GLFW_DISABLED=ON \ | |
| -DDAS_BUILD_DOCUMENTATION=ON \ | |
| -G Ninja | |
| cmake --build ./build --target daslang | |
| - name: "Run das2rst" | |
| run: cmake --build ./build --target check_docs_generated | |
| - name: "Check for // `stub` in handmade docs" | |
| run: | | |
| set -eux | |
| if grep -rl '// stub' doc/source/stdlib/handmade/; then | |
| echo "ERROR: Found // stub entries in handmade docs. Please provide proper documentation." | |
| exit 1 | |
| fi | |
| - name: "Check for Uncategorized sections" | |
| run: | | |
| set -eux | |
| if grep -rl '^Uncategorized$' doc/source/stdlib/generated/; then | |
| echo "ERROR: Found Uncategorized sections in generated docs." | |
| echo "Add the function(s) to a group_by_regex() in doc/reflections/das2rst.das." | |
| exit 1 | |
| fi | |
| - name: "Check for new untracked RST files" | |
| run: | | |
| set -eux | |
| UNTRACKED=$(git ls-files --others --exclude-standard doc/source/stdlib/) | |
| if [ -n "$UNTRACKED" ]; then | |
| echo "ERROR: das2rst generated new files not tracked in git:" | |
| echo "$UNTRACKED" | |
| echo "Run das2rst locally and commit the new files." | |
| exit 1 | |
| fi | |
| - name: "Build documentation (HTML + LaTeX)" | |
| run: cmake --build ./build --target build_doc | |
| - name: Compile LaTeX document | |
| uses: xu-cheng/latex-action@v4 | |
| with: | |
| # Pinned: the rolling texlive-alpine:latest flipped to TL 2026 (2026-07-01) whose kernel | |
| # dies with "TeX capacity exceeded [input stack size]" on the generated stdlib PDF. | |
| texlive_version: "2025" | |
| root_file: daslangstdlib.tex | |
| working_directory: build/doc/doc_latex | |
| continue_on_error: true | |
| - name: Compile LaTeX document | |
| uses: xu-cheng/latex-action@v4 | |
| with: | |
| texlive_version: "2025" | |
| root_file: daslang.tex | |
| working_directory: build/doc/doc_latex | |
| continue_on_error: true | |
| - name: Check pdf file | |
| run: | | |
| find . -name "*.pdf" | |
| - name: "Upload release PDFs" | |
| if: github.event_name == 'release' && (github.event.action == 'published' || github.event.action == 'prereleased') | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| run: gh release upload "${{ github.event.release.tag_name }}" build/doc/doc_latex/daslang.pdf build/doc/doc_latex/daslangstdlib.pdf --clobber |