-
Notifications
You must be signed in to change notification settings - Fork 2.6k
Conversation
local_candidate | ||
.into_future() | ||
.map(table::Statement::Candidate) | ||
.map(Some) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are these two lines moot or am I missing something?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
it's necessary for the or_else
in the next line which is currently used to swallow errors in candidate production.
let table = params.table; | ||
params.timer.interval(params.form_proposal_interval) | ||
.map_err(|_| Error::FaultyTimer) | ||
.for_each(move |_| { table.update_proposal(); Ok(()) }) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
could be written .for_each(move |_| Ok(table.update_proposal()))
which is a bit more concise.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
quality looks good but haven't done deep review of logic.
Fix serialize-javascript vulnerability alert
…xecution-benchmarks introduce compile time switch for omitting extrinsics execution
…ech#34) * Update default runtime types to match latest substrate * Format code
Closes #28
The previous PR (#29) implemented the core primitives for achieving consensus. This one wraps them one step further by
The next consensus PR will combine the networking code and the runtime from #32 with the code in the
candidate-agreement
module.