Skip to content

Latest commit

 

History

History
325 lines (229 loc) · 4.69 KB

File metadata and controls

325 lines (229 loc) · 4.69 KB

mq tasks

mq-task -f task.md <task>

run

Run the CLI with the provided arguments.

env = ["RUST_BACKTRACE=1"]
cargo run -- $MX_ARGS

playground

Start the web playground development server.

dir = "packages/mq-playground"
env = ["RUST_BACKTRACE=1"]
pnpm run dev

bench

Run benchmarks using codspeed.

dir = "crates/mq-lang"
depends = ["build-bench"]
env = ["RUST_BACKTRACE=1"]
cargo codspeed run

bench-local

Run benchmarks locally.

dir = "crates/mq-lang"
env = ["RUST_BACKTRACE=1"]
cargo bench

build

Build the project in release mode.

env = ["RUST_BACKTRACE=1"]
cargo build --release -p mq-run --bin mq
cargo build --release -p mq-run --bin mq-dbg --features="debugger"
cargo build --release -p mq-lsp -p mq-crawler -p mq-test
cargo build --release -p mq-check --features="cli"
cargo build --release -p mq-lint --features="cli"
cargo build --release -p mq-formatter

build-target

Build for a specific target architecture.

params = ["target"]
env = ["RUST_BACKTRACE=1"]
cargo build --release --target $MX_PARAM_TARGET -p mq-run --bin mq
cargo build --release --target $MX_PARAM_TARGET -p mq-run --bin mq-dbg --features="debugger"
cargo build --release --target $MX_PARAM_TARGET -p mq-lsp -p mq-crawler -p mq-test
cargo build --release --target $MX_PARAM_TARGET -p mq-check --features="cli"
cargo build --release --target $MX_PARAM_TARGET -p mq-lint --features="cli"
cargo build --release --target $MX_PARAM_TARGET -p mq-formatter

build-bench

Build benchmarks with codspeed.

dir = "crates/mq-lang"
env = ["RUST_BACKTRACE=1"]
cargo codspeed build

build-wasm

Build WebAssembly package for web use.

dir = "crates/mq-wasm"
env = ["RUST_BACKTRACE=1"]
wasm-pack build --release --target web --out-dir ../../packages/mq-web/mq-wasm
rm ../../packages/mq-web/mq-wasm/README.md
rm ../../packages/mq-web/mq-wasm/package.json

build-web

Build mq-web package.

dir = "packages/mq-web"
depends = ["build-wasm"]
env = ["RUST_BACKTRACE=1"]
pnpm run build

build-node-wasm

Build @mqlang/node package.

dir = "crates/mq-wasm"
env = ["RUST_BACKTRACE=1"]
wasm-pack build --release --target nodejs --out-dir ../../packages/mq-nodejs/mq-wasm -- --no-default-features
rm ../../packages/mq-nodejs/mq-wasm/README.md
rm ../../packages/mq-nodejs/mq-wasm/package.json

build-node

Build @mqlang/node package.

dir = "packages/mq-nodejs"
depends = ["build-node-wasm"]
env = ["RUST_BACKTRACE=1"]
pnpm run build

fmt

Run formatting.

env = ["RUST_BACKTRACE=1"]
cargo fmt --all -- --check

test-mq

env = ["RUST_BACKTRACE=1"]
cargo run -p mq-test -- crates/mq-lang/builtin_tests.mq crates/mq-lang/modules/*_test.mq

test-doc

env = ["RUST_BACKTRACE=1"]
cargo test --doc --workspace

test-all-features

env = ["RUST_BACKTRACE=1"]
cargo nextest run --workspace --all-features

test

env = ["RUST_BACKTRACE=1"]
cargo nextest run --workspace --all-features

test-all

Run formatting, linting and all tests.

depends = ["fmt", "lint", "test-mq", "test-doc", "test-all-features", "test"]

test-cov

Run tests with code coverage reporting.

env = ["RUST_BACKTRACE=1"]
cargo llvm-cov --open --html --workspace --all-features --ignore-filename-regex 'crates/mq-(crawler|test|wasm|web-api|dap|python|lsp/src/capabilities\.rs|repl/src/repl\.rs)'

test-fuzz

Run fuzzing tests.

env = ["RUST_BACKTRACE=1"]
cargo +nightly fuzz run interpreter

test-wasm

Run WebAssembly tests in Chrome.

dir = "crates/mq-wasm"
env = ["RUST_BACKTRACE=1"]
wasm-pack test --chrome --headless

lint

Run formatter and linter.

env = ["RUST_BACKTRACE=1"]
cargo clippy --all-targets --all-features --workspace -- -D clippy::all

deps

Check for unused dependencies.

env = ["RUST_BACKTRACE=1"]
cargo +nightly udeps

docs

Update documentation.

env = ["RUST_BACKTRACE=1"]
./scripts/update_doc.sh

bump-version

Bump version for all crates.

dir = "scripts"
env = ["RUST_BACKTRACE=1"]
./bump_version.sh

publish

Publish crates.

env = ["RUST_BACKTRACE=1"]
cp -r crates/mq-run/assets crates/mq-hir
cp -r crates/mq-run/assets crates/mq-lang
cp -r crates/mq-run/assets crates/mq-markdown
cp -r crates/mq-run/assets crates/mq-repl
cargo publish --workspace