NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #1464 most downloaded on crates.io
Implementation of the multihash format
Last release 5 months ago
27 Apr 2026
Release timing varies
gaps range from 2 weeks to 1.4 years
Rarely documented
notes for 8 of 41 stable releases
1 version withdrawn
withdrawn after publishing
11 years old
42 releases · first in 2015
chore: Release multihash version 0.19.5
chore: Release multihash version 0.19.5
chore: Release multihash version 0.19.4
chore: Release multihash version 0.19.4
One column per quarter.
chore: Release multihash version 0.19.3
remove proc-macro-error dependency
make Serde (de)serialization no_std compatible (#337) (7ad5161), closes #336. This was a regression introduced in v0.19.0.
split crates into multiple to isolate breaking changes
identity hasher was removedSee the migration section below for help on upgrading.
identity hasher (#289) (8473e2f)MultihashDigest trait in codetable (#304) (50b43cd)When upgrading to v0.19, consider the following:
Code has moved from multihash::Code to multihash_codetable::Code. It's strongly recommended to define your own code table using multihash_derive. Check the custom codetable example on how to use it. For the simplest migration, use the multihash_codetable::Code.
Before
use multihash::{Code, MultihashDigest};
fn main() {
let hash = Code::Sha2_256.digest(b"hello, world!");
println!("{:?}", hash);
}
After
use multihash_codetable::{Code, MultihashDigest};
fn main() {
let hash = Code::Sha2_256.digest(b"hello, world!");
println!("{:?}", hash);
}
If you get compile errors, make sure you have the correct features enabled. In this case it would be the sha2 and digest features.
multihash::Multihash now requires the size of its internal buffer as a const-generic.
You can migrate your existing code by defining the following type-alias:
type Multihash = multihash::Multihash<64>;
The identity hasher has been removed completely.
Before
use multihash::{Code, MultihashDigest};
fn main() {
let hash = Code::Identity.digest(b"hello, world!");
println!("{:?}", hash);
}
After
use multihash::Multihash;
const IDENTITY_HASH_CODE: u64 = 0x00;
fn main() {
let hash = Multihash::<64>::wrap(IDENTITY_HASH_CODE, b"hello, world!").unwrap();
println!("{:?}", hash);
}
Check the identity example for more information on how to replicate the functionality.
don't panic on non minimal varints (#293) (c3445fc), closes #282
Multihash::write() returns bytes written
update to Rust edition 2021
Multihash::write() returns bytes written
Prior to this change it returned an empty tuple (), now it returns
the bytes written.
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Nothing published for this version
Your coding agent can read these notes before it upgrades. Set up the MCP server →