6 Commits

Author SHA1 Message Date
Quake Wang fb7605c6da Merge pull request #20 from yangby-cryptape/pr/release-v0.5.0
chore: bump version to v0.5.0
2022-08-02 12:19:56 +09:00
Boyu Yang 92f32c6751 chore: bump version to v0.5.0 2022-08-02 10:20:38 +08:00
Quake Wang 0e3b02c38f Merge pull request #19 from zhangsoledad/zhangsoledad/remove-trait-bounds-on-struct
chore: remove trait bounds on struct
2022-08-02 09:07:35 +09:00
zhangsoledad d6cfbe6454 chore: remove trait bounds on struct 2022-08-01 19:48:32 +08:00
Quake Wang c8ae8dad9d Merge pull request #18 from koushiro/update-deps
Update some dependencies
2022-07-22 16:58:13 +09:00
koushiro 7796272361 Update some dependencies
Signed-off-by: koushiro <koushiro.cqx@gmail.com>
2022-07-22 12:26:56 +08:00
8 changed files with 19 additions and 21 deletions
+6 -6
View File
@@ -1,6 +1,6 @@
[package]
name = "ckb-merkle-mountain-range"
version = "0.4.0"
version = "0.5.0"
authors = ["Nervos Core Dev <dev@nervos.org>"]
edition = "2018"
license = "MIT"
@@ -12,15 +12,15 @@ default = ["std"]
std = []
[dependencies]
cfg-if = "0.1"
cfg-if = "1.0"
[dev-dependencies]
faster-hex = "0.3"
faster-hex = "0.6.1"
criterion = "0.3"
rand = "0.6"
proptest = "0.9.4"
rand = "0.8.5"
proptest = "1.0.0"
lazy_static = "1.3.0"
bytes = "0.4"
bytes = "1.2.0"
blake2b-rs = "0.1.4"
[[bench]]
-2
View File
@@ -3,8 +3,6 @@
A generalized merkle mountain range implementation.
**Notice** this library is not stable yet, API and proof format may changes. Make sure you know what you do before using this library.
## Features
* Leaves accumulation
+2 -2
View File
@@ -10,7 +10,7 @@ fn bench(c: &mut Criterion) {
c.bench_function("left_index_to_pos", |b| {
let mut rng = thread_rng();
b.iter(|| {
let leaf_index = rng.gen_range(50_000_000_000, 70_000_000_000);
let leaf_index = rng.gen_range(50_000_000_000..70_000_000_000);
leaf_index_to_pos(leaf_index);
});
});
@@ -18,7 +18,7 @@ fn bench(c: &mut Criterion) {
c.bench_function("left_index_to_mmr_size", |b| {
let mut rng = thread_rng();
b.iter(|| {
let leaf_index = rng.gen_range(50_000_000_000, 70_000_000_000);
let leaf_index = rng.gen_range(50_000_000_000..70_000_000_000);
leaf_index_to_mmr_size(leaf_index);
});
});
+1 -1
View File
@@ -15,7 +15,7 @@ use core::fmt::Debug;
use core::marker::PhantomData;
#[allow(clippy::upper_case_acronyms)]
pub struct MMR<T, M, S: MMRStore<T>> {
pub struct MMR<T, M, S> {
mmr_size: u64,
batch: MMRBatch<T, S>,
merge: PhantomData<M>,
+1 -1
View File
@@ -1,7 +1,7 @@
use crate::{vec::Vec, Result};
#[derive(Default)]
pub struct MMRBatch<Elem, Store: MMRStore<Elem>> {
pub struct MMRBatch<Elem, Store> {
memory_batch: Vec<(u64, Vec<Elem>)>,
store: Store,
}
+6 -6
View File
@@ -1,7 +1,7 @@
use super::new_blake2b;
use crate::{leaf_index_to_pos, util::MemStore, MMRStore, Merge, MerkleProof, Result, MMR};
use bytes::Bytes;
use std::fmt::{self, Debug};
use bytes::{Bytes, BytesMut};
use std::fmt;
#[derive(Clone)]
struct Header {
@@ -42,9 +42,9 @@ struct HashWithTD {
impl HashWithTD {
fn serialize(&self) -> Bytes {
let mut data = self.hash.clone();
let mut data = BytesMut::from(self.hash.as_ref());
data.extend(&self.td.to_le_bytes());
data
data.into()
}
fn deserialize(mut data: Bytes) -> Self {
@@ -57,12 +57,12 @@ impl HashWithTD {
}
}
impl Debug for HashWithTD {
impl fmt::Debug for HashWithTD {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
write!(
f,
"HashWithTD {{ hash: {}, td: {} }}",
faster_hex::hex_string(&self.hash).unwrap(),
faster_hex::hex_string(&self.hash),
self.td
)
}
+2 -2
View File
@@ -64,7 +64,7 @@ fn test_mmr_root() {
mmr.push(NumberHash::from(i)).unwrap();
});
let root = mmr.get_root().expect("get root");
let hex_root = hex_string(&root.0).unwrap();
let hex_root = hex_string(&root.0);
assert_eq!(
"f6794677f37a57df6a5ec36ce61036e43a36c1a009d05c81c9aa685dde1fd6e3",
hex_root
@@ -154,7 +154,7 @@ proptest! {
let mut leaves: Vec<u32> = (0..count).collect();
let mut rng = thread_rng();
leaves.shuffle(&mut rng);
let leaves_count = rng.gen_range(1, count - 1);
let leaves_count = rng.gen_range(1..count - 1);
leaves.truncate(leaves_count as usize);
test_mmr(count, leaves);
}
+1 -1
View File
@@ -91,7 +91,7 @@ proptest! {
let mut leaves: Vec<u32> = (0..count).collect();
let mut rng = thread_rng();
leaves.shuffle(&mut rng);
let leaves_count = rng.gen_range(1, count - 1);
let leaves_count = rng.gen_range(1..count - 1);
leaves.truncate(leaves_count as usize);
test_sequence_sub_func(count, leaves);
}