name: dependency checks
permissions:
contents: read
on:
push:
branches:
- main
paths:
- '.github/workflows/dependency_check.yml'
- '**.rs'
- Cargo.lock
- Cargo.toml
- 'ui/**.ts'
- 'ui/**.tsx'
- 'ui/package.json'
- 'ui/package-lock.json'
pull_request:
branches:
- main
paths:
- '.github/workflows/dependency_check.yml'
- '**.rs'
- Cargo.lock
- Cargo.toml
- 'ui/**.ts'
- 'ui/**.tsx'
- 'ui/package.json'
- 'ui/package-lock.json'
schedule:
- cron: '0 0 * * 0' workflow_dispatch:
jobs:
check-rust-dependencies:
name: Check Rust Dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- uses: actions-rust-lang/setup-rust-toolchain@v1
with:
toolchain: stable
- name: Install cargo-outdated
run: cargo install cargo-outdated
- name: Check for outdated dependencies
run: cargo outdated --exit-code 1
check-typescript-dependencies:
name: Check TypeScript Dependencies
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.2.2
- name: Set up Node.js
uses: actions/setup-node@v4
with:
node-version: '23.10.0'
cache: 'npm'
cache-dependency-path: ui/package-lock.json
- name: Install npm-check-updates
run: npm install -g npm-check-updates
- name: Check for outdated dependencies
working-directory: ui
run: ncu --errorLevel 1