Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
170 commits
Select commit Hold shift + click to select a range
5f58d6a
Bump reviewdog/action-actionlint from 1.41.0 to 1.42.0 (#618)
dependabot[bot] Feb 28, 2024
6e5aff8
Bump codecov/codecov-action from 4.0.1 to 4.1.0 (#620)
dependabot[bot] Feb 28, 2024
3a72a9d
Bump reviewdog/action-actionlint from 1.42.0 to 1.43.0 (#627)
dependabot[bot] Mar 14, 2024
a47177d
docs: update demo section to match current code (#632)
conradoplg Apr 10, 2024
c205ef7
Fix --no-default-features (#630)
conradoplg Apr 10, 2024
e5c5e53
Fix clippy issue (#640)
natalieesk Apr 16, 2024
9ca9f59
Bump codecov/codecov-action from 4.1.0 to 4.3.0 (#638)
dependabot[bot] Apr 17, 2024
af0fc6e
Bump reviewdog/action-actionlint from 1.43.0 to 1.44.0 (#641)
dependabot[bot] Apr 17, 2024
5c8d905
Bump peaceiris/actions-mdbook from 1.2.0 to 2.0.0 (#637)
dependabot[bot] Apr 17, 2024
7e3eb5b
Bump reviewdog/action-actionlint from 1.44.0 to 1.46.0 (#650)
dependabot[bot] May 20, 2024
63892e1
Update derive-getters requirement from 0.3.0 to 0.4.0 (#651)
dependabot[bot] May 20, 2024
2b0df05
Bump codecov/codecov-action from 4.3.0 to 4.4.0 (#654)
dependabot[bot] May 20, 2024
e32e16d
Bump actions/checkout from 4.1.1 to 4.1.6 (#655)
dependabot[bot] May 20, 2024
3ebe7a1
Update itertools requirement from 0.12.0 to 0.13.0 (#656)
dependabot[bot] May 20, 2024
96f1144
docs: update Ywallet demo section for phase 2 (#652)
conradoplg May 30, 2024
2f07dbc
ci: use cargo-all-features (#659)
conradoplg Jun 4, 2024
9e19bc9
randomized: add Debug to structs (#622)
conradoplg Jun 6, 2024
a7ab035
ci: test MSRV and minimal versions; also fix thiserror min version (#…
conradoplg Jun 11, 2024
36fbf54
Bump reviewdog/action-actionlint from 1.46.0 to 1.48.0 (#669)
dependabot[bot] Jun 14, 2024
7f034a4
chore: fix some comments (#682)
wangcundashang Jun 19, 2024
8be644f
return error when deserializing the identity (#671)
conradoplg Jun 19, 2024
29fd1bf
Bump actions/checkout from 4.1.1 to 4.1.7 (#676)
dependabot[bot] Jun 19, 2024
84b83f5
Bump codecov/codecov-action from 4.4.0 to 4.5.0 (#678)
dependabot[bot] Jun 19, 2024
4e5e338
Update curve25519-dalek requirement from =4.1.2 to =4.1.3 (#683)
dependabot[bot] Jun 19, 2024
6f917ba
Bump reviewdog/action-actionlint from 1.48.0 to 1.50.0 (#681)
dependabot[bot] Jun 19, 2024
647da35
core: remove MulAssign impl for Scalar (#626)
conradoplg Jun 19, 2024
57c0b7b
add no-std support (#621)
conradoplg Jun 20, 2024
8ce1522
build and test each crate separately (#689)
conradoplg Jun 20, 2024
e7b631a
Make serialization methods consistent (#674)
conradoplg Jun 20, 2024
f95aeb2
Bump versions to 2.0.0-rc.0 (#691)
conradoplg Jun 20, 2024
60c62b1
Bump actions/checkout from 4.1.1 to 4.1.7 (#692)
dependabot[bot] Jun 24, 2024
5fa454d
Bump reviewdog/action-actionlint from 1.50.0 to 1.51.0 (#694)
dependabot[bot] Jun 24, 2024
a0d900b
docs: update spec links to the final URL (#700)
conradoplg Jul 10, 2024
60cc5b9
docs: update demo section per new ciphersuite selection (#699)
conradoplg Jul 10, 2024
835a3f0
Add refresh shares with dealer functionality (#665)
natalieesk Jul 18, 2024
16bdfc7
Bump reviewdog/action-actionlint from 1.51.0 to 1.54.0 (#705)
dependabot[bot] Jul 18, 2024
5368611
add 'be' (#708)
zancas Jul 22, 2024
c6c3f2f
docs: update trusted dealer figure to use 'Dealer' instead of 'Coordi…
conradoplg Jul 23, 2024
067f393
chore(docs): fix clippy warnings in examples (#712)
StackOverflowExcept1on Aug 5, 2024
052fb25
frost_core: add 'static bound to Ciphersuite trait (#701)
conradoplg Aug 6, 2024
0ea837e
docs: improve DKG docs (#702)
conradoplg Aug 8, 2024
15fd2b1
Update derive-getters requirement from 0.4.0 to 0.5.0 (#716)
dependabot[bot] Aug 8, 2024
0422038
docs: update Ywallet demo section for the new signing tool (#719)
conradoplg Aug 10, 2024
dcf1773
docs: update demo docs for user registration (#721)
conradoplg Aug 14, 2024
d31257f
ci: pin nightly toolchain when using minimal-versions (#742)
conradoplg Oct 2, 2024
30977f6
Add `internal` feature for `validate_num_of_signers` (#740)
StackOverflowExcept1on Oct 2, 2024
0da1938
chore(docs): fix rustdoc warning (#745)
StackOverflowExcept1on Oct 7, 2024
16d527c
Add missing `derive(Getters)` for `dkg::{round1, round2}` (#741)
StackOverflowExcept1on Oct 7, 2024
cef4217
chore(frost-core): fix dead_code warning (#748)
StackOverflowExcept1on Oct 8, 2024
b1f946f
add a verify_signature_share() function (#727)
conradoplg Oct 15, 2024
cd352bb
ci: improve coverage speed (#743)
conradoplg Oct 15, 2024
cffaff6
Release v2.0.0 (#756)
natalieesk Oct 16, 2024
2d88edf
Expose to_element() for GroupCommitment (#757)
natalieesk Oct 21, 2024
ae6d2e8
docs: make clearer the risks of refresh shares (#753)
conradoplg Oct 23, 2024
9a4394c
allow identifying culprit in error returned by dkg::part3() (#728)
conradoplg Nov 4, 2024
ca33dad
fix(changelog): now it's possible to identify culprit in part3(), but…
StackOverflowExcept1on Nov 4, 2024
958fde3
chore(frost-p256, frost-secp256k1): do not use allocator for domain s…
StackOverflowExcept1on Nov 11, 2024
c88fadd
Add frost-secp256k1-tr crate (BIP340/BIP341) [moved] (#730)
conduition Nov 14, 2024
94c0042
fix: typos in documentation files (#774)
leopardracer Nov 19, 2024
cf6b0c0
docs: add secp256k1-tr to changelog and book (#776)
StackOverflowExcept1on Nov 19, 2024
6c452a2
build(deps): bump reviewdog/action-actionlint from 1.54.0 to 1.57.0 (…
dependabot[bot] Nov 19, 2024
682ab50
build(deps): bump actions/checkout from 4.1.7 to 4.2.2 (#760)
dependabot[bot] Nov 19, 2024
95e1641
secp256k1-tr: fix hashes_to_scalar to avoid panics (#777)
conradoplg Nov 20, 2024
5abeb84
build(deps): update thiserror requirement from 1.0.29 to 2.0.3 (#771)
dependabot[bot] Nov 20, 2024
102320b
Typo fix Update importing.md (#788)
mdqst Nov 22, 2024
908289d
secp256k1-tr: fix no-std support (#782)
conradoplg Nov 25, 2024
3100f8f
Explanation of the Importance of Correcting These Errors (#791)
futreall Nov 28, 2024
f8dcc21
clippy fixes (#798)
conradoplg Dec 3, 2024
670cd1c
build(deps): bump reviewdog/action-actionlint from 1.57.0 to 1.60.0 (…
dependabot[bot] Dec 9, 2024
e5fdcf1
build(deps): bump codecov/codecov-action from 4.5.0 to 5.1.1 (#801)
dependabot[bot] Dec 9, 2024
7685ff3
ci(mergify): upgrade configuration to current format (#794)
mergify[bot] Dec 10, 2024
d6c9f73
core: prevent creating a zero identifier with deserialization (#797)
conradoplg Dec 10, 2024
dee685d
Refresh Shares with DKG (#766)
natalieesk Dec 11, 2024
061d1cb
fix(frost-secp256k1-tr): add missing `pub mod refresh` and missing te…
StackOverflowExcept1on Dec 11, 2024
db78886
Fix typos (#819)
rex4539 Dec 26, 2024
fa5c842
ci: fail on doc warnings (#809)
conradoplg Dec 27, 2024
39b61ec
fix(frost-secp256k1-tr): empty merkle root tweak should still hash th…
arminsabouri Dec 30, 2024
ba4ec4f
build(deps): bump codecov/codecov-action from 5.1.1 to 5.1.2 (#816)
dependabot[bot] Jan 13, 2025
2fa0238
build(deps): update itertools requirement from 0.13.0 to 0.14.0 (#824)
dependabot[bot] Jan 13, 2025
595ee33
build(deps): bump reviewdog/action-actionlint from 1.60.0 to 1.63.0 (…
dependabot[bot] Jan 14, 2025
7afd19f
frost-core: remove unneeded code (#831)
conradoplg Jan 15, 2025
3143a26
fix typos in documentation files (#837)
rootdiae Jan 15, 2025
80d53f2
all: make DKG SecretPackages serializable (#833)
conradoplg Jan 15, 2025
a879360
all: fix issues related to features (#835)
conradoplg Jan 15, 2025
1a3578b
Add refreshing shares image for book (#710)
natalieesk Jan 15, 2025
f7dcad9
Release 2.1.0 (#836)
conradoplg Jan 15, 2025
94dba95
frost-core: fix visibility of coefficients() (#842)
conradoplg Jan 15, 2025
b56839d
doc: Refreshing shares is now implemented for DKG (#847)
mpguerra Jan 22, 2025
d92fc2b
build(deps): bump reviewdog/action-actionlint from 1.63.0 to 1.64.1 (…
dependabot[bot] Jan 24, 2025
2a7f8ae
build(deps): bump codecov/codecov-action from 5.1.2 to 5.2.0 (#848)
dependabot[bot] Jan 24, 2025
1f8e0e9
Update dependabot.yml (#856)
mpguerra Jan 28, 2025
121a116
fix errors (#858)
sky-coderay Jan 30, 2025
7035593
build(deps): bump codecov/codecov-action from 5.2.0 to 5.3.1 (#851)
dependabot[bot] Jan 30, 2025
1d41c21
Fixing a small typo (#863)
AntoineRondelet Feb 4, 2025
602157a
docs: correction comments (#860)
reject-i Feb 4, 2025
464cc05
book: add FROST Server section (#811)
conradoplg Feb 4, 2025
4d3d882
Fix typo (#866)
azuchi Feb 7, 2025
543e6f4
all: use OsRng instead of thread_rng() (#861)
conradoplg Feb 11, 2025
f862ef1
update release checklist; misc cleanups (#843)
conradoplg Feb 11, 2025
64a4be6
chore(ci): update some github action dependencies (#873)
StackOverflowExcept1on Feb 17, 2025
fc87f59
chore(deps): improve organization of workspace (root Cargo.toml) (#874)
StackOverflowExcept1on Feb 17, 2025
aed1ea8
feat(frost-core): add (de)serialization for `VerifiableSecretSharingS…
StackOverflowExcept1on Feb 24, 2025
2a6673f
docs: Add network topologies section with diagrams (#883)
crStiv Apr 10, 2025
ca1c98c
Add tests for all test vectors in DKG (#875)
azuchi Apr 11, 2025
d7cd2a2
docs: add warning about encrypted channel for DKG (#888)
conradoplg Apr 14, 2025
a8c8b6d
clippy fixes (#889)
conradoplg Apr 24, 2025
78c70b4
chore(frost-core): import `String` from `alloc` (#899)
StackOverflowExcept1on Jun 5, 2025
412f049
feat: bump MSRV to Rust 1.73 (#900)
StackOverflowExcept1on Jun 6, 2025
4378727
feat: bump MSRV to Rust 1.81 (#901)
StackOverflowExcept1on Jun 6, 2025
81a091d
Add post_generate to Ciphersuite trait (#884)
VolodymyrBg Jun 6, 2025
6ff59d1
Add CONTRIBUTING.md (#902)
mpguerra Jun 12, 2025
9956559
Remove reference to private repo (#905)
mpguerra Jun 20, 2025
f62ee73
core: remove unused error (#909)
conradoplg Aug 25, 2025
379ef68
refresh: validate min_signers (#908)
conradoplg Aug 27, 2025
3ffc19d
bump to 2.2.0 (#914)
conradoplg Aug 27, 2025
6034316
core: add aggregate_custom (#911)
conradoplg Sep 29, 2025
29fa065
build(deps): bump reviewdog/action-actionlint from 1.64.1 to 1.65.2 (…
dependabot[bot] Sep 29, 2025
e0d2176
feat(frost-core): simplify trait bounds, don't use the allocator in s…
StackOverflowExcept1on Oct 2, 2025
80fd87e
ci: install clippy (#923)
conradoplg Oct 6, 2025
76dc3a2
build(deps): bump reviewdog/action-actionlint from 1.65.2 to 1.68.0 (…
dependabot[bot] Nov 20, 2025
dbaa190
build(deps): bump clechasseur/rs-clippy-check from 4 to 5 (#928)
dependabot[bot] Nov 20, 2025
aad8b8a
build(deps): bump codecov/codecov-action from 5.3.1 to 5.5.1 (#924)
dependabot[bot] Nov 20, 2025
72c4847
build(deps): bump actions/checkout from 4.2.2 to 5.0.0 (#925)
dependabot[bot] Nov 20, 2025
40edb6e
ci: commit Cargo.lock, update crypto-common to avoid generic-array de…
conradoplg Nov 27, 2025
1882937
build(deps): bump reviewdog/action-actionlint from 1.68.0 to 1.69.0 (…
dependabot[bot] Dec 2, 2025
4431ca1
ci(mergify): upgrade configuration to current format (#934)
mergify[bot] Dec 8, 2025
43c8827
all: remove cheater-detection feature (#958)
conradoplg Dec 9, 2025
18d4ed1
dependabot: update lockfile only (#959)
conradoplg Dec 9, 2025
ca1df5f
ci: test with latest versions of dependencies (#961)
conradoplg Dec 9, 2025
ee450bd
book: add devtool demo section (#968)
conradoplg Dec 18, 2025
705acde
core: fix unused warning due to compiler bug (#971)
conradoplg Dec 22, 2025
a454d02
docs: explain origin of identifiers in aggregate() (#956)
conradoplg Dec 22, 2025
4827fd2
core: fix `dkg::round2::SecretPackage` serialization (#937)
conradoplg Dec 22, 2025
85c16bc
core: expose NonceCommitment getter/new under internals (#947)
conradoplg Dec 22, 2025
0f21162
core: add pre-commitment computation hooks (#950)
conradoplg Dec 22, 2025
2bc191f
core: improve zeroization (#945)
conradoplg Dec 22, 2025
99aca96
docs: add warning about secp256k1; clean up READMEs (#954)
conradoplg Dec 22, 2025
a473fc8
book: make it clear that auth channel is not needed for signing (#953)
conradoplg Dec 22, 2025
94cef54
core: bind traits to Send + Sync (#946)
conradoplg Dec 22, 2025
5a27016
fix function name and ciphersuite refresh modules (#922)
conradoplg Dec 22, 2025
8f60e6d
core: add more serialization roundtrips to tests (#952)
conradoplg Dec 22, 2025
59b4dbd
update debugless-unwrap (#962)
conradoplg Dec 22, 2025
504ef20
Implement ZeroizeOnDrop for SigningNonces (#987)
kwsantiago Jan 6, 2026
78066bf
all: cleanup repairable module (#957)
conradoplg Jan 23, 2026
5cac0f4
build(deps): bump reviewdog/action-actionlint from 1.69.0 to 1.69.1 (…
dependabot[bot] Jan 23, 2026
9637346
build(deps): bump codecov/codecov-action from 5.5.1 to 5.5.2 (#982)
dependabot[bot] Jan 23, 2026
e6a57b3
build(deps): bump actions/checkout from 6.0.0 to 6.0.1 (#966)
dependabot[bot] Jan 23, 2026
bac3297
frost-rerandomized: change Randomizer generation (#762)
conradoplg Jan 23, 2026
3ed40ad
core: simplify compute_refreshing_shares() (#940)
conradoplg Jan 23, 2026
8f97498
use partX() for repair share functions (#1001)
conradoplg Jan 27, 2026
68b1f57
reexport rerandomized API in ciphersuite crates (#998)
conradoplg Jan 27, 2026
ee89da3
change PublicKeyPackage::new() to take min_signers as an Option (#1000)
conradoplg Jan 27, 2026
893afc7
Release 3.0.0 (#995)
conradoplg Jan 27, 2026
1792427
book, docs: mention channel requirements for DKG; remove redundancy; …
conradoplg Jan 27, 2026
3fa76ef
Clippy fixes (#1006)
natalieesk Jan 28, 2026
8315231
fix issues from specific feature combinations (#1008)
conradoplg Jan 28, 2026
6e2ed05
actually remove the std feature (#1010)
conradoplg Jan 28, 2026
1399dc0
feat(frost-core): add pre_commitment_aggregate hook to `verify_signat…
scaraven Feb 6, 2026
f7954c3
ci: migrate book to GitHub pages (#1020)
conradoplg Feb 20, 2026
ff5ec8d
core: misc fixes (#1042)
conradoplg Apr 1, 2026
3c2f25f
build(deps): bump keccak from 0.1.5 to 0.1.6 (#1023)
dependabot[bot] Apr 1, 2026
75d14b0
build(deps): bump actions/upload-pages-artifact from 3 to 4 (#1026)
dependabot[bot] Apr 1, 2026
7967016
build(deps): bump regex from 1.12.2 to 1.12.3 (#1028)
dependabot[bot] Apr 1, 2026
5c0deb3
build(deps): bump codecov/codecov-action from 5.5.2 to 6.0.0 (#1043)
dependabot[bot] Apr 1, 2026
d94090a
build(deps): bump reviewdog/action-actionlint from 1.69.1 to 1.72.0 (…
dependabot[bot] Apr 1, 2026
c484499
build(deps): bump release-drafter/release-drafter from 6 to 7 (#1045)
dependabot[bot] Apr 1, 2026
4ea9c86
build(deps): bump insta from 1.46.1 to 1.47.2 (#1046)
dependabot[bot] Apr 1, 2026
fb36ac9
build(deps): bump actions/deploy-pages from 4 to 5 (#1047)
dependabot[bot] Apr 1, 2026
7bc107e
build(deps): bump proptest from 1.9.0 to 1.11.0 (#1048)
dependabot[bot] Apr 1, 2026
28a9b27
build(deps): bump tokio from 1.49.0 to 1.50.0 (#1049)
dependabot[bot] Apr 1, 2026
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 5 additions & 2 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,15 @@ updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
interval: monthly
timezone: America/New_York
open-pull-requests-limit: 10
- package-ecosystem: cargo
directory: "/"
# Update only the lockfile. We shouldn't update Cargo.toml unless it's for
# a security issue, or if we need a new feature of the dependency.
versioning-strategy: lockfile-only
schedule:
interval: daily
interval: monthly
timezone: America/New_York
open-pull-requests-limit: 10
15 changes: 6 additions & 9 deletions .github/workflows/coverage.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -23,25 +23,22 @@ jobs:
RUST_BACKTRACE: full

steps:
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v6.0.2
with:
persist-credentials: false

- uses: actions-rs/toolchain@v1.0.7
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
override: true
profile: minimal
components: llvm-tools-preview
components: llvm-tools

- name: Install cargo-llvm-cov cargo command
run: cargo install cargo-llvm-cov

- name: Run tests
run: cargo llvm-cov --lcov --no-report --ignore-filename-regex '.*(tests).*|benches.rs|gencode|helpers.rs'
run: cargo llvm-cov --lcov --no-report --ignore-filename-regex '.*(tests).*|benches.rs|gencode|helpers.rs|interoperability_tests.rs'

- name: Generate coverage report
run: cargo llvm-cov report --lcov --ignore-filename-regex '.*(tests).*|benches.rs|gencode|helpers.rs' --output-path lcov.info
run: cargo llvm-cov report --lcov --ignore-filename-regex '.*(tests).*|benches.rs|gencode|helpers.rs|interoperability_tests.rs' --output-path lcov.info

- name: Upload coverage report to Codecov
uses: codecov/codecov-action@v4.0.1
uses: codecov/codecov-action@v6.0.0
56 changes: 29 additions & 27 deletions .github/workflows/docs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,14 +15,20 @@ on:
paths:
# doc source files
- 'book/**'
- '**/firebase.json'
- 'katex-header.html'
# source files; some md files include code snippets that we want to keep up to date
- 'frost-*/**'
# workflow definitions
- '.github/workflows/docs.yml'
push:
branches:
- main

# Sets permissions for GitHub Pages deployment
permissions:
contents: read
pages: write
id-token: write

env:
RUST_LOG: info
RUST_BACKTRACE: full
Expand All @@ -31,26 +37,22 @@ env:

jobs:
build:
name: Build and Deploy Docs (+beta)
name: Build Docs (+beta)
timeout-minutes: 45
runs-on: ubuntu-latest
steps:
- name: Checkout the source code
uses: actions/checkout@v4.1.1
uses: actions/checkout@v6.0.2
with:
persist-credentials: false

- name: Install latest beta
uses: actions-rs/toolchain@v1
with:
toolchain: beta
components: rust-docs
override: true
uses: dtolnay/rust-toolchain@beta

- uses: Swatinem/rust-cache@v2

- name: Setup mdBook
uses: peaceiris/actions-mdbook@v1.2.0
uses: peaceiris/actions-mdbook@v2.0.0
with:
mdbook-version: '0.4.18'

Expand All @@ -64,23 +66,23 @@ jobs:
run: |
mdbook build book/

- name: Deploy FROST book to Firebase preview channel
uses: FirebaseExtended/action-hosting-deploy@v0
if: ${{ github.event_name == 'pull_request' && github.actor != 'dependabot[bot]' }}
with:
entrypoint: "book/"
expires: 14d
firebaseServiceAccount: ${{ secrets.GCP_SA_KEY }}
repoToken: ${{ secrets.GITHUB_TOKEN }}
projectId: ${{ vars.FIREBASE_PROJECT_ID }}

- name: Deploy FROST book to Firebase live channel
uses: FirebaseExtended/action-hosting-deploy@v0
- name: Upload artifact
uses: actions/upload-pages-artifact@v4
if: ${{ github.event_name == 'push' && github.ref_name == 'main' }}
with:
channelId: live
entrypoint: "book/"
firebaseServiceAccount: ${{ secrets.GCP_SA_KEY }}
repoToken: ${{ secrets.GITHUB_TOKEN }}
projectId: ${{ vars.FIREBASE_PROJECT_ID }}
path: 'book/book'

deploy:
name: Deploy to GitHub Pages
if: ${{ github.event_name == 'push' && github.ref_name == 'main' }}
needs: build
timeout-minutes: 10
runs-on: ubuntu-latest
environment:
name: github-pages
url: ${{ steps.deployment.outputs.page_url }}
steps:
- name: Deploy to GitHub Pages
id: deployment
uses: actions/deploy-pages@v5

143 changes: 88 additions & 55 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,49 +9,100 @@ on:
- main

jobs:

build_default:
name: build with default features
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4.1.1
- uses: actions-rs/toolchain@v1.0.7
with:
toolchain: beta
override: true
- uses: actions-rs/cargo@v1.0.3
with:
command: build
- uses: actions/checkout@v6.0.2
- uses: dtolnay/rust-toolchain@beta
- run: cargo build

build_latest:
name: build with latest versions of dependencies
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v6.0.2
- uses: dtolnay/rust-toolchain@stable
- run: cargo update && cargo build --all-features

build_msrv:
name: build with MSRV (1.81)
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v6.0.2
# Re-resolve Cargo.lock with minimal versions.
# This only works with nightly. We pin to a specific version because
# newer versions use lock file version 4, but the MSRV cargo does not
# support that.
- uses: dtolnay/rust-toolchain@master
with:
toolchain: nightly-2024-09-20
- run: cargo update -Z minimal-versions
# Now check that `cargo build` works with respect to the oldest possible
# deps and the stated MSRV
- uses: dtolnay/rust-toolchain@1.81
- run: cargo build --all-features

# TODO: this is filling up the disk space in CI. See if there is a way to
# workaround it.

# build_all_features:
# name: build all features combinations
# runs-on: ubuntu-latest

# steps:
# - uses: actions/checkout@v6.0.2
# - uses: dtolnay/rust-toolchain@stable
# - run: cargo install cargo-all-features
# # We check and then test because some test dependencies could help
# # a bugged build work, while a regular build would fail.
# # Note that this also builds each crate separately, which also helps
# # catching some issues.
# - run: cargo check-all-features
# # Build all tests. We don't run them to save time, since it's unlikely
# # that tests would fail due to feature combinations.
# - run: cargo test-all-features --no-run

build_no_std:
name: build with no_std
runs-on: ubuntu-latest
# Skip ed448 which does not support it.
strategy:
matrix:
crate: [ristretto255, ed25519, p256, secp256k1, secp256k1-tr, rerandomized]
steps:
- uses: actions/checkout@v6.0.2
- uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
targets: thumbv6m-none-eabi
- run: cargo build -p frost-${{ matrix.crate }} --no-default-features --target thumbv6m-none-eabi
- run: cargo build -p frost-${{ matrix.crate }} --no-default-features --features serialization --target thumbv6m-none-eabi

test_beta:
name: test on beta
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4.1.1
- uses: actions-rs/toolchain@v1.0.7
with:
toolchain: beta
override: true
- uses: actions-rs/cargo@v1.0.3
with:
command: test
args: --release --all-features
- uses: actions/checkout@v6.0.2
- uses: dtolnay/rust-toolchain@beta
- run: cargo test --release --all-features

clippy:
name: Clippy
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v6.0.2
with:
persist-credentials: false

- uses: actions-rs/toolchain@v1.0.7
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
override: true
components: clippy

- name: Check workflow permissions
id: check_permissions
Expand All @@ -62,12 +113,9 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

- name: Run clippy action to produce annotations
uses: actions-rs/clippy-check@v1.0.7
uses: clechasseur/rs-clippy-check@v5
if: ${{ steps.check_permissions.outputs.has-permission }}
with:
# GitHub displays the clippy job and its results as separate entries
name: Clippy (stable) Results
token: ${{ secrets.GITHUB_TOKEN }}
args: --all-features --all-targets -- -D warnings

- name: Run clippy manually without annotations
Expand All @@ -79,71 +127,56 @@ jobs:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v6.0.2
with:
persist-credentials: false

- uses: actions-rs/toolchain@v1.0.7
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
components: rustfmt
override: true

- uses: Swatinem/rust-cache@v2

- uses: actions-rs/cargo@v1.0.3
with:
command: fmt
args: --all -- --check
- run: cargo fmt --all -- --check

gencode:
name: Check if automatically generated code is up to date
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v6.0.2
with:
persist-credentials: false

- uses: actions-rs/toolchain@v1.0.7
- uses: dtolnay/rust-toolchain@stable
with:
toolchain: stable
components: rustfmt
override: true

- uses: Swatinem/rust-cache@v2

- uses: actions-rs/cargo@v1.0.3
with:
command: run
args: --bin gencode -- --check
- run: cargo run --bin gencode -- --check

docs:
name: Check Rust doc
runs-on: ubuntu-latest
env:
RUSTDOCFLAGS: -D warnings

steps:
- uses: actions/checkout@v4.1.1
- uses: actions/checkout@v6.0.2
with:
persist-credentials: false

- uses: actions-rs/toolchain@v1.0.7
with:
toolchain: stable
profile: minimal
override: true
- uses: dtolnay/rust-toolchain@stable

- uses: actions-rs/cargo@v1.0.3
with:
command: doc
args: --no-deps --document-private-items --all-features
- run: cargo doc --no-deps --document-private-items --all-features

actionlint:
runs-on: ubuntu-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4.1.1
- uses: reviewdog/action-actionlint@v1.41.0
- uses: actions/checkout@v6.0.2
- uses: reviewdog/action-actionlint@v1.72.0
with:
level: warning
fail_on_error: false
fail_level: none
2 changes: 1 addition & 1 deletion .github/workflows/release-drafter.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ jobs:
runs-on: ubuntu-latest
steps:
# Drafts your next Release notes as Pull Requests are merged into main
- uses: release-drafter/release-drafter@v6
- uses: release-drafter/release-drafter@v7
with:
# (Optional) specify config name to use, relative to .github/. Default: release-drafter.yml
config-name: release-drafter.yml
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
/target
**/*.rs.bk
Cargo.lock
*~
**/.DS_Store
.vscode/*
Loading