68 releases (40 breaking)

new 0.45.0 Jan 13, 2025
0.44.0 Dec 9, 2024
0.43.0 Oct 29, 2024
0.42.0-alpha.6 Jul 23, 2024
0.7.2 Nov 23, 2022

#113 in Cryptography

Download history 700/week @ 2024-09-22 462/week @ 2024-09-29 760/week @ 2024-10-06 715/week @ 2024-10-13 182/week @ 2024-10-20 288/week @ 2024-10-27 141/week @ 2024-11-03 205/week @ 2024-11-10 263/week @ 2024-11-17 203/week @ 2024-11-24 216/week @ 2024-12-01 569/week @ 2024-12-08 152/week @ 2024-12-15 23/week @ 2024-12-22 35/week @ 2024-12-29 252/week @ 2025-01-05

484 downloads per month
Used in 11 crates (7 directly)

GPL-2.0 license

760KB
16K SLoC

twenty-first

GitHub CI crates.io Coverage Status

A collection of cryptography primitives written in Rust.

Content of this library

This library contains primarily the following cryptographic primitives:

Release protocol

While twenty-first's version is 0.x.y, releasing a new version:

  1. Is the release backwards-compatible? Then the new version is 0.x.y+1. Otherwise the new version is 0.x+1.0.
  2. Checkout the last commit on Mjolnir, and run make bench-publish. Save the benchmark's result and verify that there is no performance degradation.
  3. Create a commit that increases version = "0.x.y" in twenty-first/Cargo.toml. The commit message should give a one-line summary of each release change. Include the benchmark result at the bottom.
  4. Have a v0.x.y git tag on this commit created. (git tag v0.x.y [sha], git push upstream --tags)
  5. Have this commit cargo published on crates.io and in GitHub tags.

If you do not have the privilege to create git tags or run cargo publish, submit a PR and the merger will take care of these.

Building

For detailed buildings instructions, see the description in HACKING.md.

Dependencies

~7.5MB
~132K SLoC