dept: update duniter-core (network db change)
This commit is contained in:
parent
2576d3e061
commit
bccc1a507a
3 changed files with 30 additions and 32 deletions
18
Cargo.lock
generated
18
Cargo.lock
generated
|
@ -757,7 +757,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-bc-reader"
|
name = "duniter-bc-reader"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"dubp",
|
"dubp",
|
||||||
|
@ -803,7 +803,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-conf"
|
name = "duniter-conf"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"dubp",
|
"dubp",
|
||||||
|
@ -817,7 +817,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-core"
|
name = "duniter-core"
|
||||||
version = "1.8.1"
|
version = "1.8.1"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"duniter-bc-reader",
|
"duniter-bc-reader",
|
||||||
"duniter-conf",
|
"duniter-conf",
|
||||||
|
@ -830,7 +830,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-dbs"
|
name = "duniter-dbs"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"arrayvec",
|
"arrayvec",
|
||||||
"bincode",
|
"bincode",
|
||||||
|
@ -853,7 +853,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-dbs-write-ops"
|
name = "duniter-dbs-write-ops"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"chrono",
|
"chrono",
|
||||||
"dubp",
|
"dubp",
|
||||||
|
@ -868,7 +868,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-global"
|
name = "duniter-global"
|
||||||
version = "1.8.1"
|
version = "1.8.1"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"async-rwlock",
|
"async-rwlock",
|
||||||
"dubp",
|
"dubp",
|
||||||
|
@ -1001,7 +1001,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-mempools"
|
name = "duniter-mempools"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"dubp",
|
"dubp",
|
||||||
"duniter-bc-reader",
|
"duniter-bc-reader",
|
||||||
|
@ -1014,7 +1014,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "duniter-module"
|
name = "duniter-module"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"anyhow",
|
"anyhow",
|
||||||
"async-mutex",
|
"async-mutex",
|
||||||
|
@ -1560,7 +1560,7 @@ dependencies = [
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "kv_typed"
|
name = "kv_typed"
|
||||||
version = "0.1.0"
|
version = "0.1.0"
|
||||||
source = "git+https://git.duniter.org/nodes/rust/duniter-core#4f26e9e6f687f2c42adf7027bebb34f4ed58e600"
|
source = "git+https://git.duniter.org/nodes/rust/duniter-core#193a64f042500c7a0b327fc216db1773a904270c"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"byteorder",
|
"byteorder",
|
||||||
"cfg-if 0.1.10",
|
"cfg-if 0.1.10",
|
||||||
|
|
|
@ -14,7 +14,6 @@
|
||||||
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
// along with this program. If not, see <https://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
use crate::*;
|
use crate::*;
|
||||||
use dubp::crypto::keys::PublicKey as _;
|
|
||||||
use duniter_core::dbs::{databases::network_v1::NetworkV1DbReadable, DunpHeadDbV1, PeerCardDbV1};
|
use duniter_core::dbs::{databases::network_v1::NetworkV1DbReadable, DunpHeadDbV1, PeerCardDbV1};
|
||||||
|
|
||||||
#[allow(clippy::unnecessary_wraps)]
|
#[allow(clippy::unnecessary_wraps)]
|
||||||
|
@ -51,18 +50,14 @@ impl DbsReaderImpl {
|
||||||
it.values()
|
it.values()
|
||||||
.filter_map(|peer_res| {
|
.filter_map(|peer_res| {
|
||||||
if let Ok(peer) = peer_res {
|
if let Ok(peer) = peer_res {
|
||||||
if let Ok(pubkey) = PublicKey::from_base58(&peer.pubkey) {
|
let k_min = duniter_core::dbs::DunpNodeIdV1Db::new(0, peer.pubkey);
|
||||||
let k_min = duniter_core::dbs::DunpNodeIdV1Db::new(0, pubkey);
|
let k_max = duniter_core::dbs::DunpNodeIdV1Db::new(u32::MAX, peer.pubkey);
|
||||||
let k_max = duniter_core::dbs::DunpNodeIdV1Db::new(u32::MAX, pubkey);
|
Some((
|
||||||
Some((
|
peer,
|
||||||
peer,
|
dunp_db.heads_old().iter(k_min..k_max, |it| {
|
||||||
dunp_db.heads_old().iter(k_min..k_max, |it| {
|
it.values().filter_map(|head| head.ok()).collect()
|
||||||
it.values().filter_map(|head| head.ok()).collect()
|
}),
|
||||||
}),
|
))
|
||||||
))
|
|
||||||
} else {
|
|
||||||
None
|
|
||||||
}
|
|
||||||
} else {
|
} else {
|
||||||
None
|
None
|
||||||
}
|
}
|
||||||
|
@ -75,6 +70,7 @@ impl DbsReaderImpl {
|
||||||
#[cfg(test)]
|
#[cfg(test)]
|
||||||
mod tests {
|
mod tests {
|
||||||
use super::*;
|
use super::*;
|
||||||
|
use dubp::crypto::keys::PublicKey as _;
|
||||||
use duniter_core::dbs::databases::network_v1::NetworkV1DbWritable;
|
use duniter_core::dbs::databases::network_v1::NetworkV1DbWritable;
|
||||||
use duniter_core::dbs::PeerCardDbV1;
|
use duniter_core::dbs::PeerCardDbV1;
|
||||||
|
|
||||||
|
@ -155,21 +151,21 @@ mod tests {
|
||||||
let dunp_db =
|
let dunp_db =
|
||||||
duniter_core::dbs::databases::network_v1::NetworkV1Db::<Mem>::open(MemConf::default())?;
|
duniter_core::dbs::databases::network_v1::NetworkV1Db::<Mem>::open(MemConf::default())?;
|
||||||
let db_reader = DbsReaderImpl::mem();
|
let db_reader = DbsReaderImpl::mem();
|
||||||
let pk = PublicKey::default();
|
let pubkey = PublicKey::default();
|
||||||
|
|
||||||
dunp_db.peers_old_write().upsert(
|
dunp_db.peers_old_write().upsert(
|
||||||
PubKeyKeyV2(pk),
|
PubKeyKeyV2(pubkey),
|
||||||
PeerCardDbV1 {
|
PeerCardDbV1 {
|
||||||
pubkey: pk.to_string(),
|
pubkey,
|
||||||
..Default::default()
|
..Default::default()
|
||||||
},
|
},
|
||||||
)?;
|
)?;
|
||||||
dunp_db.heads_old_write().upsert(
|
dunp_db.heads_old_write().upsert(
|
||||||
duniter_core::dbs::DunpNodeIdV1Db::new(42, pk),
|
duniter_core::dbs::DunpNodeIdV1Db::new(42, pubkey),
|
||||||
DunpHeadDbV1::default(),
|
DunpHeadDbV1::default(),
|
||||||
)?;
|
)?;
|
||||||
dunp_db.heads_old_write().upsert(
|
dunp_db.heads_old_write().upsert(
|
||||||
duniter_core::dbs::DunpNodeIdV1Db::new(43, pk),
|
duniter_core::dbs::DunpNodeIdV1Db::new(43, pubkey),
|
||||||
DunpHeadDbV1 {
|
DunpHeadDbV1 {
|
||||||
pubkey: PublicKey::from_base58("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
|
pubkey: PublicKey::from_base58("aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa")
|
||||||
.expect("invalid pubkey"),
|
.expect("invalid pubkey"),
|
||||||
|
@ -181,7 +177,7 @@ mod tests {
|
||||||
db_reader.peers_and_heads(&dunp_db)?,
|
db_reader.peers_and_heads(&dunp_db)?,
|
||||||
vec![(
|
vec![(
|
||||||
PeerCardDbV1 {
|
PeerCardDbV1 {
|
||||||
pubkey: pk.to_string(),
|
pubkey,
|
||||||
..Default::default()
|
..Default::default()
|
||||||
},
|
},
|
||||||
vec![
|
vec![
|
||||||
|
|
|
@ -1,3 +1,5 @@
|
||||||
|
use dubp::crypto::{bases::b58::ToBase58, keys::Signature};
|
||||||
|
|
||||||
// Copyright (C) 2020 Éloïs SANCHEZ.
|
// Copyright (C) 2020 Éloïs SANCHEZ.
|
||||||
//
|
//
|
||||||
// This program is free software: you can redistribute it and/or modify
|
// This program is free software: you can redistribute it and/or modify
|
||||||
|
@ -29,11 +31,11 @@ impl From<duniter_core::dbs::PeerCardDbV1> for PeerCardGva {
|
||||||
Self {
|
Self {
|
||||||
version: peer.version,
|
version: peer.version,
|
||||||
currency: peer.currency,
|
currency: peer.currency,
|
||||||
pubkey: peer.pubkey,
|
pubkey: peer.pubkey.to_base58(),
|
||||||
blockstamp: peer.blockstamp,
|
blockstamp: peer.blockstamp.to_string(),
|
||||||
endpoints: peer.endpoints,
|
endpoints: peer.endpoints,
|
||||||
status: peer.status,
|
status: if peer.status { "UP" } else { "DOWN" }.to_owned(),
|
||||||
signature: peer.signature,
|
signature: peer.signature.to_base64(),
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Reference in a new issue