Commit Graph

551 Commits

Author SHA1 Message Date
Andreas Fackler 313fe1da75 Extract vote counter from DHB. 2018-07-12 09:54:26 +02:00
Andreas Fackler 0e39bfed40
Merge pull request #125 from c0gent/c0gent-arc
Make `*HoneyBadger` types thread safe.
2018-07-12 09:41:44 +02:00
c0gent f0ed2e6e12 Make `*HoneyBadger` types thread safe.
Replaces `Rc` with `Arc`. This allows usage from different threads
which will be necessary for use with Parity.
2018-07-11 16:28:41 -07:00
Andreas Fackler c31e01fa28
Merge pull request #123 from poanetwork/afck-dhb-votes
Split the dynamic_honey_badger module.
2018-07-11 15:39:09 +02:00
Andreas Fackler b41ada1809 Split the dynamic_honey_badger module. 2018-07-11 11:36:40 +02:00
Andreas Fackler 6194c0e461
Merge pull request #117 from poanetwork/afck-queue
Separate queue from Honey Badger.
2018-07-11 11:03:59 +02:00
Andreas Fackler ca2dd2327e Add back InvalidNodeTransactionSignature fault.
This was accidentally removed due to a merge conflict.
2018-07-10 17:29:58 +02:00
Andreas Fackler c1b4381753 Separate queue from Honey Badger.
This makes Honey Badger a bit more complicated but a lot more flexible:
It is now unaware of transactions and basically just runs one Subset
instance per epoch.

That way, users can use any kind of external queue, control throttling
and prioritization.
2018-07-10 17:29:58 +02:00
Andreas Fackler b546c16a5e
Merge pull request #111 from andogro/ag-example-information
Add documentation and screenshot for network simulation
2018-07-10 16:11:56 +02:00
Andrew Gross 95dce9eee3 Text updates (review comments) 2018-07-10 07:32:27 -06:00
Andreas Fackler eb22d84db9
Merge pull request #99 from poanetwork/report-faulty-nodes
Added logging for faulty nodes
2018-07-10 12:26:40 +02:00
Vladimir Komendantskiy 68d5d0829b
Merge pull request #107 from poanetwork/afck-cargo-toml
Add recommended metadata to Cargo.toml
2018-07-09 22:56:17 +01:00
Andrew Gross 2121292621 README adjustments (review comments) 2018-07-09 12:06:24 -06:00
Peter van Nostrand 6783ece9b0 Added faulty node logging to algorithms. 2018-07-09 13:45:11 -04:00
Andreas Fackler 64e5f49b8d Add more authors to Cargo.toml. 2018-07-09 16:11:13 +02:00
Vladimir Komendantskiy 4f7feda9fc
Merge pull request #114 from poanetwork/afck-subset-1-node
Fix Subset for a single validator.
2018-07-09 11:33:15 +01:00
Andreas Fackler 6248e4079f Fix Subset for a single validator. 2018-07-09 11:38:56 +02:00
Andrew Gross f3abd3a574 Updated screenshot 2018-07-06 14:37:01 -06:00
Andrew Gross b014fe56b0 Add documentation for network simulation 2018-07-06 13:58:58 -06:00
Andreas Fackler d63bc64159
Merge pull request #110 from poanetwork/mbr--show-rustfmt-version
Show `rustfmt` version in CI
2018-07-06 17:47:21 +02:00
Vladimir Komendantskiy 90e468ecf6
Merge pull request #101 from poanetwork/afck-docs
Add module-level Agreement, Coin and Subset documentation.
2018-07-05 17:39:09 +01:00
Vladimir Komendantskiy 1945473740
Merge pull request #105 from andogro/ag_contributing_file_coc
Doc updates: Contributing File, Code of Conduct, README
2018-07-05 17:38:45 +01:00
Vladimir Komendantskiy 0038d3cad9
Merge pull request #96 from poanetwork/afck-hb-delay
Add a max_future_epochs option to Honey Badger.
2018-07-05 16:54:19 +01:00
Andreas Fackler c42f606644 Fix module docs. (Review comments.) 2018-07-05 17:51:55 +02:00
Marc Brinkmann 1107e54771 Show `rustfmt` version in CI to make it easier to hit the correct version in your local dev environment. 2018-07-05 17:29:04 +02:00
Andreas Fackler 6f7245f123 Prefer HB::builder over HBBuilder::new. 2018-07-05 11:47:19 +02:00
Andreas Fackler 3f53964ac4 Add max_future_epochs parameter to DynamicHoneyBadger. 2018-07-05 11:47:19 +02:00
Andreas Fackler 93ca149757 Apply rustfmt and expand HB doc comment. 2018-07-05 11:47:19 +02:00
c0gent 2408e012fe Add type to `HoneyBadgerBuilder`. 2018-07-05 11:47:19 +02:00
Andreas Fackler 1a3016d94d Add Honey Badger builder. 2018-07-05 11:47:19 +02:00
Andreas Fackler 0f92010fe4 Add a max_future_epochs option to Honey Badger.
This delays handling of messages from epochs that are too far ahead.
2018-07-05 11:47:19 +02:00
Andreas Fackler f05e087492 Improve mod docs (review comments). 2018-07-05 11:45:30 +02:00
Andreas Fackler 2a30860bb0 Add agreement module-level docs. 2018-07-05 11:45:30 +02:00
Andreas Fackler f22999a37f Move the Subset docs to the module level. 2018-07-05 11:45:30 +02:00
Andreas Fackler daab0eb564 Add coin docs, change parity computation.
This makes the signature parity computation take into account all bits,
not just the last one of each byte.
2018-07-05 11:45:30 +02:00
Andreas Fackler 6fcceb993f
Merge pull request #109 from poanetwork/mbr--rand-for-secret-key
Implement `Rand` for `SecretKey`.
2018-07-05 11:41:54 +02:00
Marc Brinkmann 60450d2c90 Reformatted using nightly rustfmt instead of stable rustfmt. 2018-07-05 10:12:57 +02:00
Marc Brinkmann 5e8b26cfc3 Implemented `Rand` for `SecretKey`. 2018-07-04 16:43:17 +02:00
Andreas Fackler fe47291709 Add recommended metadata to Cargo.toml
The Rust API guidelines recommend a set of metadata values:
https://rust-lang-nursery.github.io/api-guidelines/documentation.html#c-metadata
2018-07-04 13:00:36 +02:00
Andrew Gross 71fb0df479 add contributing section to README 2018-07-03 15:56:35 -06:00
Andrew Gross fd83776043 Add contributing file, code of conduct and update TODOs 2018-07-03 15:47:10 -06:00
Andreas Fackler 38178af124
Merge pull request #93 from poanetwork/afck-dyn-hb
Add node transaction messages to Dynamic HB.
2018-07-02 15:14:38 +02:00
Andreas Fackler a4b691fd33 Improve dynamic HB doc comments. 2018-07-02 14:25:08 +02:00
Andreas Fackler 34385746c6 Add start_epoch option and DHB builder. 2018-07-02 14:14:19 +02:00
Andreas Fackler 515bd14a23 Restart Honey Badger when DKG starts for joining validator.
That way the user can be sure that if they forward all `Target::All`
messages after the first batch mentioning a joining validator, they
don't miss any messages relevant for that joining node.
2018-07-02 14:14:19 +02:00
Andreas Fackler bbc27e8a66 Update terminology: "observers" and "validators" 2018-07-02 14:14:19 +02:00
Andreas Fackler 11149c5e66 Communicate change state in Dynamic HB, add module docs. 2018-07-02 14:14:19 +02:00
Andreas Fackler 7a0b397233 Add node transaction messages to Dynamic HB. 2018-07-02 14:14:19 +02:00
Vladimir Komendantskiy 15caa4f949
Merge pull request #98 from mbr/mbr-compile-on-stable
Remove unused feature, allowing compilation on stable again.
2018-07-01 17:41:37 +01:00
Marc Brinkmann a6c920e88e Remove unused feature, allowing compilation on stable again.
There is no evidence that [optin_builtin_traits](https://doc.rust-lang.org/beta/unstable-book/language-features/optin-builtin-traits.html) are used any longer (the keyword `auto` does not even show up in the codebase).

Removing this features allow compilation on stable Rust 1.27 and possible earlier versions.
2018-07-01 18:09:21 +02:00