dev-size:
clear && du ./target/debug/libharu_cmaes.rlib -h
prod-size:
clear && du ./target/release/libharu_cmaes.rlib -h
tree:
cargo tree
graph-dep:
cargo depgraph --dedup-transitive-deps | dot -Tpng > dependencies_graph_of_current_cargo_toml.png
deps:
make tree && make graph-dep
clean:
cargo cache --autoclean && cargo clean
lint:
cargo fmt && cargo clippy -- -D warnings
test:
cargo test
prep:
cargo build --all-targets
docu:
cargo doc
exam:
cargo run --release --bin express_use
all: clean lint test prep exam docu
build:
clear && make all
benc:
clear && cargo bench --bench mine
prof:
clear && cargo run --release --example flamegraph
samp:
clear && samply record cargo run --release --bin ask_tell
VERSION := $(shell awk -F ' = ' '/^version/ {gsub(/"/, "", $$2); print $$2}' Cargo.toml)
clif:
git cliff -o CHANGELOG.md
git add CHANGELOG.md
git commit -m "Update changelog for v$(VERSION)"
publ:
@git diff-index --quiet HEAD || { echo "Error: Uncommitted changes! Commit before publishing."; exit 1; }
@echo "✓ Working tree clean"
@clear
@echo "Publishing v$(VERSION)..."
@make clif
@git tag -a v$(VERSION) -m "Release v$(VERSION)"
@echo "🏷️ Tagged as v$(VERSION)"
@git push --tags
@echo "📤 Pushing tags..."
@cargo publish
@echo "✅ Successfully published v$(VERSION)"