UltrafastSecp256k1/.clang-format
vano c347bae204 feat: v2.2.0 — ECDSA (RFC 6979), Schnorr (BIP-340), SHA-256, CI/CD, fuzzing, CT bench
New features:
- ECDSA sign/verify with RFC 6979 deterministic nonce (HMAC-SHA256)
- Schnorr BIP-340 sign/verify with tagged hashing & x-only pubkeys
- Self-contained SHA-256 (header-only, no deps)
- Scalar::inverse (Fermat's theorem), negate(), is_even()

Build & tooling:
- GitHub Actions CI: Linux (gcc-13/clang-17), Windows (MSVC), macOS
- .clang-format + .editorconfig for code style
- cmake/version.hpp.in auto-generated version header
- CMake VERSION 1.0.0 -> 2.2.0
- Fixed install(TARGETS/EXPORT) — moved to cpu/ where target is defined
- MSVC compatibility via SECP256K1_NO_INT128 generator expression
- Fixed BUILD_TESTING standalone build

Testing & benchmarks:
- test_ecdsa_schnorr: 22 checks (SHA-256 NIST, inverse, ECDSA, Schnorr)
- bench_ct: CT vs fast comparison for all primitives
- 3 libFuzzer harnesses (field, scalar, point)
- Desktop CLI example (examples/basic_usage)

All 5 CTest targets pass (22/22 ECDSA+Schnorr checks).
2026-02-15 05:03:33 +04:00

61 lines
1.1 KiB
YAML

---
Language: Cpp
BasedOnStyle: Google
# Indentation
IndentWidth: 4
TabWidth: 4
UseTab: Never
ContinuationIndentWidth: 4
NamespaceIndentation: None
IndentCaseLabels: true
IndentPPDirectives: AfterHash
# Line length
ColumnLimit: 120
# Braces
BreakBeforeBraces: Attach
AllowShortFunctionsOnASingleLine: Inline
AllowShortIfStatementsOnASingleLine: Never
AllowShortLoopsOnASingleLine: false
# Alignment
AlignConsecutiveAssignments: false
AlignConsecutiveDeclarations: false
AlignOperands: true
AlignTrailingComments: true
# Includes
SortIncludes: CaseInsensitive
IncludeBlocks: Regroup
IncludeCategories:
# Project headers
- Regex: '^"secp256k1/'
Priority: 2
# Local headers
- Regex: '^"'
Priority: 3
# System headers
- Regex: '^<'
Priority: 1
# Spacing
SpaceAfterCStyleCast: false
SpaceBeforeParens: ControlStatements
SpacesInAngles: false
SpacesInParentheses: false
SpaceBeforeAssignmentOperators: true
# Other
PointerAlignment: Left
DerivePointerAlignment: false
ReflowComments: true
AllowAllParametersOfDeclarationOnNextLine: true
BinPackParameters: true
BinPackArguments: true
# C++20
Standard: c++20
...