fundamentum-edge-mcu-http-client 0.1.0

An HTTP Client for provisioning EdgeMCU devices
Documentation
target_dir := "target"
repo_name := file_name(justfile_directory())
project_name := repo_name

# Build the default variant of this package, its doc and perform all available
# checks
default: build doc check

# Build all variants of this package, its doc and perform all available checks
all: build-all doc check

# Clean all products of this justfile
clean: clean-build

#----------
# Building
#----------

# Build all variants of this package.
build-all: build-debug

# Build the default variant of this package.
build: build-debug

# Clean any products of the 'build' task
clean-build:
    cargo clean

# Build the debug version of this package.
build-debug:
    cargo build

#----------
# Checks
#----------

# Run all available checks
check: check-static check-test

# Run cargo test with all features enabled
check-test:
    cargo test --all-features

# Run cargo test
check-test-quick:
    cargo test

# Run all static checks (i.e.: all checks but without any tests).
check-static: check-formatting check-clippy

# Check the formatting
check-formatting:
    cargo fmt --all -- --check

# Check clippy
check-clippy:
    cargo clippy --all -- -D warnings

#------
# Docs
#------

# Build this package's documentation
doc: doc-package

# Clean any doc related build products
clean-doc: clean-doc-package

# Generates this package's full doc (including that of all its
# dependencies)
doc-package:
    cargo doc --all-features

# Generates this package's full doc and launch a browser to it
doc-package-preview:
    cargo doc --all-features --open

# Generates only this package's doc (without any dependencies)
doc-package-only:
    cargo doc --all-features --no-deps

# Clean this package's doc
clean-doc-package:
    cargo clean --doc

#---------------
# Misc actions
#---------------

# Format the rust code base
format:
    cargo fmt --all

#----------
# Publish
#----------

# Publish this package to crates.io
publish:
    echo ${CARGO_REGISTRY_TOKEN} | cargo login
    cargo publish