#!/bin/bash -e # Don't put anything here that routinely takes longer than a second or so to # run. It gets old fast. That's why this doesn't run tests, for example. tools/check-format tools/check-lint # Make sure package-lock.json is up to date with package.json npm ci --dry-run # Make sure Cargo.lock is up to date with Cargo.toml. cargo update --locked --workspace # Make sure the prepared statement data in .sqlx is up to date. Requires # `cargo-sqlx` (`cargo install cargo-sqlx`). export DATABASE_URL=sqlite://pilcrow.db.pre-commit?mode=rwc rm -f pilcrow.db.pre-commit cargo sqlx migrate run cargo sqlx prepare --check