Skip to content

Use Hashmaps, vector preallocation and avoid cloning [Rust] #800

Use Hashmaps, vector preallocation and avoid cloning [Rust]

Use Hashmaps, vector preallocation and avoid cloning [Rust] #800

Workflow file for this run

name: Build and Deploy
on:
release:
types: [published]
pull_request:
types: [opened, synchronize, reopened]
permissions:
contents: write
jobs:
build-and-deploy:
runs-on: ubuntu-latest
steps:
# 1. Checkout the repository
- name: Checkout 🛎️
uses: actions/checkout@v4
# 2. Set up Python 3.12
- name: Set up Python 3.12
uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Install Poetry
run: |
curl -sSL https://install.python-poetry.org | python3 -
echo "$HOME/.local/bin" >> $GITHUB_PATH
poetry self add "poetry-dynamic-versioning[plugin]"
# 3. Install dependencies and build the documentation
- name: Install dependencies and build docs
run: |
sudo apt-get install graphviz
poetry install --with dev
poetry run sphinx-build -j 4 -T -b html docs/source docs/build/html
# 4. Deploy the documentation for the 'release' event
- name: Deploy Stable 🚀
if: github.event_name == 'release'
uses: JamesIves/github-pages-deploy-action@v4
with:
folder: docs/build/html
branch: gh-pages
# 5. Deploy the documentation for pull requests (Dev version)
- name: Deploy Dev 🚀
if: github.event_name == 'pull_request'
uses: JamesIves/github-pages-deploy-action@v4
with:
folder: docs/build/html
branch: gh-pages
target-folder: dev