Skip to content
Snippets Groups Projects
Commit ed662c37 authored by Éloïs's avatar Éloïs
Browse files

remove genesis param *certs_expire_on

parent 89ea4cf5
No related branches found
No related tags found
1 merge request!103Remove genesis params `*certs_expire_on`
This commit is part of merge request !103. Comments created here will be created in the context of that merge request.
...@@ -2,10 +2,8 @@ ...@@ -2,10 +2,8 @@
"first_ud": 1000, "first_ud": 1000,
"first_ud_reeval": 100, "first_ud_reeval": 100,
"genesis_parameters": { "genesis_parameters": {
"genesis_certs_expire_on": 100000,
"genesis_certs_min_received": 2, "genesis_certs_min_received": 2,
"genesis_memberships_expire_on": 100000, "genesis_memberships_expire_on": 100000,
"genesis_smith_certs_expire_on": 100000,
"genesis_smith_certs_min_received": 2, "genesis_smith_certs_min_received": 2,
"genesis_smith_memberships_expire_on": 100000 "genesis_smith_memberships_expire_on": 100000
}, },
......
...@@ -2,10 +2,8 @@ ...@@ -2,10 +2,8 @@
"first_ud": 1000, "first_ud": 1000,
"first_ud_reeval": 100, "first_ud_reeval": 100,
"genesis_parameters": { "genesis_parameters": {
"genesis_certs_expire_on": 100000,
"genesis_certs_min_received": 2, "genesis_certs_min_received": 2,
"genesis_memberships_expire_on": 100000, "genesis_memberships_expire_on": 100000,
"genesis_smith_certs_expire_on": 100000,
"genesis_smith_certs_min_received": 2, "genesis_smith_certs_min_received": 2,
"genesis_smith_memberships_expire_on": 100000 "genesis_smith_memberships_expire_on": 100000
}, },
......
...@@ -57,8 +57,7 @@ where ...@@ -57,8 +57,7 @@ where
fn clique_wot( fn clique_wot(
initial_identities_len: usize, initial_identities_len: usize,
cert_validity_period: common_runtime::BlockNumber, ) -> BTreeMap<IdtyIndex, BTreeMap<IdtyIndex, Option<common_runtime::BlockNumber>>> {
) -> BTreeMap<IdtyIndex, BTreeMap<IdtyIndex, common_runtime::BlockNumber>> {
let mut certs_by_issuer = BTreeMap::new(); let mut certs_by_issuer = BTreeMap::new();
for i in 1..=initial_identities_len { for i in 1..=initial_identities_len {
certs_by_issuer.insert( certs_by_issuer.insert(
...@@ -66,7 +65,7 @@ fn clique_wot( ...@@ -66,7 +65,7 @@ fn clique_wot(
(1..=initial_identities_len) (1..=initial_identities_len)
.filter_map(|j| { .filter_map(|j| {
if i != j { if i != j {
Some((j as IdtyIndex, cert_validity_period)) Some((j as IdtyIndex, None))
} else { } else {
None None
} }
......
...@@ -306,7 +306,7 @@ fn gen_genesis_for_local_chain( ...@@ -306,7 +306,7 @@ fn gen_genesis_for_local_chain(
smith_cert_period: 15, smith_cert_period: 15,
smith_cert_max_by_issuer: 8, smith_cert_max_by_issuer: 8,
smith_cert_min_received_cert_to_issue_cert: 2, smith_cert_min_received_cert_to_issue_cert: 2,
smith_cert_validity_period: 1_000, smith_cert_validity_period,
smith_membership_period, smith_membership_period,
smith_pending_membership_period: 500, smith_pending_membership_period: 500,
smiths_wot_first_cert_issuable_on: 20, smiths_wot_first_cert_issuable_on: 20,
...@@ -381,7 +381,7 @@ fn gen_genesis_for_local_chain( ...@@ -381,7 +381,7 @@ fn gen_genesis_for_local_chain(
}, },
cert: CertConfig { cert: CertConfig {
apply_cert_period_at_genesis: false, apply_cert_period_at_genesis: false,
certs_by_receiver: clique_wot(initial_identities.len(), cert_validity_period), certs_by_receiver: clique_wot(initial_identities.len()),
}, },
smiths_membership: SmithsMembershipConfig { smiths_membership: SmithsMembershipConfig {
memberships: (1..=initial_smiths_len) memberships: (1..=initial_smiths_len)
...@@ -390,7 +390,7 @@ fn gen_genesis_for_local_chain( ...@@ -390,7 +390,7 @@ fn gen_genesis_for_local_chain(
}, },
smiths_cert: SmithsCertConfig { smiths_cert: SmithsCertConfig {
apply_cert_period_at_genesis: false, apply_cert_period_at_genesis: false,
certs_by_receiver: clique_wot(initial_smiths_len, smith_cert_validity_period), certs_by_receiver: clique_wot(initial_smiths_len),
}, },
universal_dividend: UniversalDividendConfig { universal_dividend: UniversalDividendConfig {
first_reeval: 100, first_reeval: 100,
......
...@@ -26,7 +26,7 @@ const EXISTENTIAL_DEPOSIT: u64 = 100; ...@@ -26,7 +26,7 @@ const EXISTENTIAL_DEPOSIT: u64 = 100;
#[derive(Clone)] #[derive(Clone)]
pub struct GenesisData<Parameters: DeserializeOwned, SessionKeys: Decode> { pub struct GenesisData<Parameters: DeserializeOwned, SessionKeys: Decode> {
pub accounts: BTreeMap<AccountId, GenesisAccountData<u64>>, pub accounts: BTreeMap<AccountId, GenesisAccountData<u64>>,
pub certs_by_receiver: BTreeMap<u32, BTreeMap<u32, u32>>, pub certs_by_receiver: BTreeMap<u32, BTreeMap<u32, Option<u32>>>,
pub first_ud: u64, pub first_ud: u64,
pub first_ud_reeval: u32, pub first_ud_reeval: u32,
pub identities: Vec<(String, AccountId)>, pub identities: Vec<(String, AccountId)>,
...@@ -35,7 +35,7 @@ pub struct GenesisData<Parameters: DeserializeOwned, SessionKeys: Decode> { ...@@ -35,7 +35,7 @@ pub struct GenesisData<Parameters: DeserializeOwned, SessionKeys: Decode> {
pub memberships: BTreeMap<u32, MembershipData>, pub memberships: BTreeMap<u32, MembershipData>,
pub parameters: Parameters, pub parameters: Parameters,
pub session_keys_map: BTreeMap<AccountId, SessionKeys>, pub session_keys_map: BTreeMap<AccountId, SessionKeys>,
pub smiths_certs_by_receiver: BTreeMap<u32, BTreeMap<u32, u32>>, pub smiths_certs_by_receiver: BTreeMap<u32, BTreeMap<u32, Option<u32>>>,
pub smiths_memberships: BTreeMap<u32, MembershipData>, pub smiths_memberships: BTreeMap<u32, MembershipData>,
pub sudo_key: Option<AccountId>, pub sudo_key: Option<AccountId>,
pub technical_committee_members: Vec<AccountId>, pub technical_committee_members: Vec<AccountId>,
...@@ -43,10 +43,8 @@ pub struct GenesisData<Parameters: DeserializeOwned, SessionKeys: Decode> { ...@@ -43,10 +43,8 @@ pub struct GenesisData<Parameters: DeserializeOwned, SessionKeys: Decode> {
#[derive(Default, Deserialize, Serialize)] #[derive(Default, Deserialize, Serialize)]
pub struct ParamsAppliedAtGenesis { pub struct ParamsAppliedAtGenesis {
pub genesis_certs_expire_on: u32,
pub genesis_certs_min_received: u32, pub genesis_certs_min_received: u32,
pub genesis_memberships_expire_on: u32, pub genesis_memberships_expire_on: u32,
pub genesis_smith_certs_expire_on: u32,
pub genesis_smith_certs_min_received: u32, pub genesis_smith_certs_min_received: u32,
pub genesis_smith_memberships_expire_on: u32, pub genesis_smith_memberships_expire_on: u32,
} }
...@@ -130,10 +128,8 @@ where ...@@ -130,10 +128,8 @@ where
first_ud_reeval, first_ud_reeval,
genesis_parameters: genesis_parameters:
ParamsAppliedAtGenesis { ParamsAppliedAtGenesis {
genesis_certs_expire_on,
genesis_certs_min_received, genesis_certs_min_received,
genesis_memberships_expire_on, genesis_memberships_expire_on,
genesis_smith_certs_expire_on,
genesis_smith_certs_min_received, genesis_smith_certs_min_received,
genesis_smith_memberships_expire_on, genesis_smith_memberships_expire_on,
}, },
...@@ -237,7 +233,7 @@ where ...@@ -237,7 +233,7 @@ where
let issuer_index = idty_index_of let issuer_index = idty_index_of
.get(issuer) .get(issuer)
.ok_or(format!("Identity '{}' not exist", issuer))?; .ok_or(format!("Identity '{}' not exist", issuer))?;
receiver_certs.insert(*issuer_index, genesis_certs_expire_on); receiver_certs.insert(*issuer_index, None);
} }
certs_by_receiver.insert(*issuer_index, receiver_certs); certs_by_receiver.insert(*issuer_index, receiver_certs);
} }
...@@ -319,7 +315,7 @@ where ...@@ -319,7 +315,7 @@ where
let issuer_index = idty_index_of let issuer_index = idty_index_of
.get(receiver) .get(receiver)
.ok_or(format!("Identity '{}' not exist", receiver))?; .ok_or(format!("Identity '{}' not exist", receiver))?;
receiver_certs.insert(*issuer_index, genesis_smith_certs_expire_on); receiver_certs.insert(*issuer_index, None);
} }
smiths_certs_by_receiver.insert(*idty_index, receiver_certs); smiths_certs_by_receiver.insert(*idty_index, receiver_certs);
......
...@@ -90,9 +90,11 @@ pub mod pallet { ...@@ -90,9 +90,11 @@ pub mod pallet {
// GENESIS STUFF // // GENESIS STUFF //
#[pallet::genesis_config] #[pallet::genesis_config]
#[allow(clippy::type_complexity)]
pub struct GenesisConfig<T: Config<I>, I: 'static = ()> { pub struct GenesisConfig<T: Config<I>, I: 'static = ()> {
pub apply_cert_period_at_genesis: bool, pub apply_cert_period_at_genesis: bool,
pub certs_by_receiver: BTreeMap<T::IdtyIndex, BTreeMap<T::IdtyIndex, T::BlockNumber>>, pub certs_by_receiver:
BTreeMap<T::IdtyIndex, BTreeMap<T::IdtyIndex, Option<T::BlockNumber>>>,
} }
#[cfg(feature = "std")] #[cfg(feature = "std")]
...@@ -128,7 +130,8 @@ pub mod pallet { ...@@ -128,7 +130,8 @@ pub mod pallet {
received_count: issuers.len() as u32, received_count: issuers.len() as u32,
}); });
for (issuer, removable_on) in issuers { let mut issuers_: Vec<_> = Vec::with_capacity(issuers.len());
for (issuer, maybe_removable_on) in issuers {
// Count issued certs // Count issued certs
cert_meta_by_issuer cert_meta_by_issuer
.entry(*issuer) .entry(*issuer)
...@@ -139,9 +142,13 @@ pub mod pallet { ...@@ -139,9 +142,13 @@ pub mod pallet {
}) })
.issued_count += 1; .issued_count += 1;
// Compute and store removable_on
let removable_on = maybe_removable_on.unwrap_or_else(T::ValidityPeriod::get);
issuers_.push((*issuer, removable_on));
// Prepare CertsRemovableOn // Prepare CertsRemovableOn
certs_removable_on certs_removable_on
.entry(*removable_on) .entry(removable_on)
.or_default() .or_default()
.push((*issuer, *receiver)); .push((*issuer, *receiver));
...@@ -158,9 +165,8 @@ pub mod pallet { ...@@ -158,9 +165,8 @@ pub mod pallet {
} }
// Write CertsByReceiver // Write CertsByReceiver
let mut issuers: Vec<_> = issuers.iter().collect(); issuers_.sort();
issuers.sort(); CertsByReceiver::<T, I>::insert(receiver, issuers_);
CertsByReceiver::<T, I>::insert(receiver, issuers);
} }
// Write StorageIdtyCertMeta // Write StorageIdtyCertMeta
......
...@@ -42,8 +42,8 @@ fn test_cannot_certify_self() { ...@@ -42,8 +42,8 @@ fn test_cannot_certify_self() {
apply_cert_period_at_genesis: true, apply_cert_period_at_genesis: true,
certs_by_receiver: btreemap![ certs_by_receiver: btreemap![
0 => btreemap![ 0 => btreemap![
1 => 5, 1 => Some(5),
2 => 5, 2 => Some(5),
], ],
], ],
}) })
...@@ -63,16 +63,16 @@ fn test_genesis_build() { ...@@ -63,16 +63,16 @@ fn test_genesis_build() {
apply_cert_period_at_genesis: true, apply_cert_period_at_genesis: true,
certs_by_receiver: btreemap![ certs_by_receiver: btreemap![
0 => btreemap![ 0 => btreemap![
1 => 7, 1 => Some(7),
2 => 9, 2 => Some(9),
], ],
1 => btreemap![ 1 => btreemap![
0 => 10, 0 => Some(10),
2 => 3, 2 => Some(3),
], ],
2 => btreemap![ 2 => btreemap![
0 => 5, 0 => Some(5),
1 => 4, 1 => Some(4),
], ],
], ],
}) })
...@@ -132,16 +132,16 @@ fn test_cert_period() { ...@@ -132,16 +132,16 @@ fn test_cert_period() {
apply_cert_period_at_genesis: true, apply_cert_period_at_genesis: true,
certs_by_receiver: btreemap![ certs_by_receiver: btreemap![
0 => btreemap![ 0 => btreemap![
1 => 10, 1 => Some(10),
2 => 10, 2 => Some(10),
], ],
1 => btreemap![ 1 => btreemap![
0 => 10, 0 => Some(10),
2 => 10, 2 => Some(10),
], ],
2 => btreemap![ 2 => btreemap![
0 => 10, 0 => Some(10),
1 => 10, 1 => Some(10),
], ],
], ],
}) })
......
...@@ -347,7 +347,7 @@ pub fn run_to_block(n: u64) { ...@@ -347,7 +347,7 @@ pub fn run_to_block(n: u64) {
fn clique_wot( fn clique_wot(
initial_identities_len: usize, initial_identities_len: usize,
cert_validity_period: u64, cert_validity_period: u64,
) -> BTreeMap<IdtyIndex, BTreeMap<IdtyIndex, u64>> { ) -> BTreeMap<IdtyIndex, BTreeMap<IdtyIndex, Option<u64>>> {
let mut certs_by_issuer = BTreeMap::new(); let mut certs_by_issuer = BTreeMap::new();
for i in 1..=initial_identities_len { for i in 1..=initial_identities_len {
certs_by_issuer.insert( certs_by_issuer.insert(
...@@ -355,7 +355,7 @@ fn clique_wot( ...@@ -355,7 +355,7 @@ fn clique_wot(
(1..=initial_identities_len) (1..=initial_identities_len)
.filter_map(|j| { .filter_map(|j| {
if i != j { if i != j {
Some((j as IdtyIndex, cert_validity_period)) Some((j as IdtyIndex, Some(cert_validity_period)))
} else { } else {
None None
} }
......
...@@ -395,7 +395,7 @@ pub fn make_secondary_vrf_pre_digest( ...@@ -395,7 +395,7 @@ pub fn make_secondary_vrf_pre_digest(
fn clique_wot( fn clique_wot(
initial_identities_len: usize, initial_identities_len: usize,
cert_validity_period: common_runtime::BlockNumber, cert_validity_period: common_runtime::BlockNumber,
) -> BTreeMap<IdtyIndex, BTreeMap<IdtyIndex, common_runtime::BlockNumber>> { ) -> BTreeMap<IdtyIndex, BTreeMap<IdtyIndex, Option<common_runtime::BlockNumber>>> {
let mut certs_by_issuer = BTreeMap::new(); let mut certs_by_issuer = BTreeMap::new();
for i in 1..=initial_identities_len { for i in 1..=initial_identities_len {
certs_by_issuer.insert( certs_by_issuer.insert(
...@@ -403,7 +403,7 @@ fn clique_wot( ...@@ -403,7 +403,7 @@ fn clique_wot(
(1..=initial_identities_len) (1..=initial_identities_len)
.filter_map(|j| { .filter_map(|j| {
if i != j { if i != j {
Some((j as IdtyIndex, cert_validity_period)) Some((j as IdtyIndex, Some(cert_validity_period)))
} else { } else {
None None
} }
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment