forked from Lightprotocol/light-protocol
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathjustfile
More file actions
54 lines (43 loc) · 1.25 KB
/
Copy pathjustfile
File metadata and controls
54 lines (43 loc) · 1.25 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
# Light Protocol Monorepo
set dotenv-load
export SBF_OUT_DIR := "target/deploy"
export REDIS_URL := env_var_or_default("REDIS_URL", "redis://localhost:6379")
export CARGO_FEATURES := env_var_or_default("CARGO_FEATURES", "v2_ix")
# Submodules
mod prover 'prover/server'
mod programs 'programs'
mod program-tests 'program-tests'
mod program-libs 'program-libs'
mod sdk-libs 'sdk-libs'
mod sdk-tests 'sdk-tests'
mod js 'js'
mod cli 'cli'
mod forester 'forester'
default:
@just --list
# === Setup ===
install:
pnpm install --frozen-lockfile
mkdir -p target/deploy
[ -f target/deploy/spl_noop.so ] || cp third-party/solana-program-library/spl_noop.so target/deploy/
# === Build ===
build: programs::build js::build cli::build
# === Test ===
test: program-tests::test sdk-tests::test js::test
# === Lint & Format ===
lint: lint-rust js::lint
lint-rust:
cargo +nightly fmt --all -- --check
cargo clippy --workspace --all-features -- -D warnings
format:
cargo +nightly fmt --all
just js format
# === Clean ===
clean:
find . -type d -name "test-ledger" -exec rm -rf {} + 2>/dev/null || true
cargo clean
# === Info ===
info:
@echo "Solana: $(solana --version)"
@echo "Rust: $(rustc --version)"
@echo "Node: $(node --version)"