Skip to content

Latest commit

 

History

History
57 lines (40 loc) · 1.32 KB

File metadata and controls

57 lines (40 loc) · 1.32 KB

Contributing

Commit messages

Commit messages follow the Conventional Commits specification.

Allowed types: feat, fix, docs, style, refactor, test, chore, ci, build, perf, revert.

Examples:

feat: add modular inverse operation
fix: correct overflow in multiplication for 64-bit blocks
build: pin googletest to v1.17.0

Pull request titles must also follow this format — they are checked automatically on every PR.

Branches

Use feature/, fix/, docs/, ci/, refactor/ prefixes:

feature/modular-inverse
fix/multiplication-overflow
docs/update-readme

Running tests

Requires GMP (libgmp-dev / brew install gmp).

cmake -B build -DAESI_BUILD_TESTS=ON
cmake --build build
ctest --test-dir build

Running benchmarks

Requires GMP, Google Benchmark, and Crypto++.

cmake -B build -DAESI_BUILD_BENCHMARKS=ON
cmake --build build
./build/benchmark/Benchmarking --benchmark_format=json

Running sanitizers

cmake -B build -DAESI_BUILD_SANITIZERS=ON
cmake --build build
./build/sanitize/unsigned/AesiSanitize

Opening a PR

Push your branch and open a PR via the GitHub interface. Keep each PR focused on a single concern.