diff --git a/.github/workflows/ci.yaml b/.github/workflows/ci.yaml index 05a26d289e..35e5cb04e0 100644 --- a/.github/workflows/ci.yaml +++ b/.github/workflows/ci.yaml @@ -202,6 +202,7 @@ jobs: - name: Release build run: | cd node/web + rustup component add rust-src rustfmt --toolchain nightly-x86_64-unknown-linux-gnu cargo +nightly build --release --target wasm32-unknown-unknown wasm-bindgen --keep-debug --web --out-dir pkg ../../target/wasm32-unknown-unknown/release/openmina_node_web.wasm diff --git a/Makefile b/Makefile new file mode 100644 index 0000000000..c99a66ac4e --- /dev/null +++ b/Makefile @@ -0,0 +1,57 @@ +# OpenMina Makefile + +.PHONY: help +help: ## Ask for help! + @grep -E '^[a-zA-Z0-9_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}' + +.PHONY: build +build: ## Build the project in debug mode + cargo build + +.PHONY: build-release +build-release: ## Build the project in release mode + cargo build --release --bin openmina + +.PHONY: build-tests +build-tests: ## Build test binaries + cargo build --release --tests --package=openmina-node-testing --package=cli + +.PHONY: build-wasm +build-wasm: ## Build WebAssembly node + cd node/web && cargo +nightly build --release --target wasm32-unknown-unknown + +.PHONY: check +check: ## Check code for compilation errors + cargo check --all-targets + +.PHONY: clean +clean: ## Clean build artifacts + cargo clean + +.PHONY: fmt +fmt: ## Format code using rustfmt + cargo fmt --all + +.PHONY: lint +lint: ## Run linter (clippy) + cargo clippy --all-targets -- -D warnings --allow clippy::mutable_key_type + +.PHONY: test +test: ## Run tests + cargo test + +.PHONY: test-ledger +test-ledger: ## Run ledger tests + cd ledger && cargo test --release + +.PHONY: test-p2p +test-p2p: ## Run P2P tests + cargo test -p p2p --tests + +.PHONY: test-release +test-release: ## Run tests in release mode + cargo test --release + +.PHONY: test-vrf +test-vrf: ## Run VRF tests + cd vrf && cargo test --release \ No newline at end of file diff --git a/rust-toolchain b/rust-toolchain new file mode 100644 index 0000000000..40671b9085 --- /dev/null +++ b/rust-toolchain @@ -0,0 +1 @@ +1.84