Commit Graph

35 Commits

Author SHA1 Message Date
Andreas Fackler d52be00d0e Fix CI.
Fix a few new Clippy lints, and some broken dependencies.
2020-03-20 10:37:31 +01:00
Andreas Fackler 66033a9f7f Fix cargo install commands. 2019-08-27 20:51:24 +02:00
Andreas Fackler 4b2cff8db7 Increase the Travis timeout. 2019-07-29 12:08:54 +02:00
Andreas Fackler 51e4809260 Upgrade Travis to Rust 1.36.0, too. 2019-07-23 13:30:02 +02:00
Andreas Fackler 003d37ebd6 Update to Rust 1.35.0. 2019-06-18 16:31:17 +02:00
Andreas Fackler 15f7313706 Extract test framework into hbbft_testing crate. (#404)
* Extract test framework into hbbft_testing crate.

Also update Rust and some dependencies.

* Rename DHB tests.

They are only called `net_dynamic_hb` because we used to have two test
frameworks and two DHB test modules.
2019-04-26 15:54:11 +01:00
Vladimir Komendantskiy 10dbf705e4 using serde derive feature 2019-04-02 12:42:51 +02:00
Demi Marie Obenour 7fb172cda2 Switch to 2018 edition idioms (#359)
* Switch to 2018 edition idioms

* Fix build with Rust 2018.

* Remove unnecessary cloning, make `max_faulty` const.

* Remove unneeded `extern crate` statements.
2018-12-11 14:44:36 +01:00
Andreas Fackler e1038c66ba Upgrade to Rust 1.30.0. 2018-10-29 09:27:45 +01:00
Marc Brinkmann 26e659079a Added `cargo audit` to CI. 2018-10-16 11:50:46 +02:00
Marc Brinkmann df1471f86d Factored out CI execution into `ci.sh`. 2018-10-16 11:02:05 +02:00
Andreas Fackler 13b0b04943 Update crypto, add mock crypto for testing. 2018-10-15 13:55:04 +02:00
Andreas Fackler 1d05ad60fb Fix build failure if deadlinks is already installed. 2018-09-27 18:51:44 +02:00
Andreas Fackler 010f29f337 Run cargo-deadlinks in CI. 2018-09-26 08:44:55 -07:00
Marc Brinkmann 900ba76e90 Disable beta, use `stable` channel. (#235)
* Disable beta, use `stable` channel.

* Pin to Rust 1.29 stable.

* Streamline clippy operation.

* Fix or disable remaining failing clippy lints.

* Use `$TRAVIS_RUST_VERSION` instead of `stable` to name toolchain.
2018-09-17 14:19:20 +01:00
Marc Brinkmann 0e3cc4501a Temporarily disable clippy. 2018-09-11 16:59:47 +02:00
c0gent 56198e3e1f Add `--test-threads 1` for travis. 2018-09-04 08:38:49 -07:00
c0gent 8ac8bef66c Travis: Enable cpu-specific optimizations.
This is off by default so that binaries can be shared.
2018-09-04 08:38:49 -07:00
Marc Brinkmann fc3d578eea
Advance to Rust beta (#221)
Update Rust version to `beta` in CI, paving the way for 1.29 stable.
2018-08-31 15:57:10 +02:00
Marc Brinkmann d459683288 Added commented-out `after_failure` commands to `.travis.yml` to debug `SIGILL` issues. 2018-08-26 14:47:19 +02:00
Andreas Fackler b7fe494fad Fix build if secure env vars are unavailable. 2018-08-09 22:26:34 +02:00
DrPeterVanNostrand 8ab58d35d4 Added error handling for mlock errors in threshold_crypto crate. 2018-08-09 15:44:36 -04:00
natalia 6d42d749c5 Added deploy key 2018-08-07 16:02:42 -07:00
Andreas Fackler 15cc6ffddd Separate keys and key shares. 2018-07-18 14:44:35 +02:00
Peter van Nostrand a86f6666b5 Clear 'Poly' and 'BivarPoly' coeffs on drop. 2018-07-16 09:38:27 -04:00
Marc Brinkmann 3e19b01f1f Tweak CI, now runs stable.
The following changes have been made to the Travis CI:

* The cache timeout has been increased, before builds would spend three minutes trying to cache something before giving up.
* The toolchain for building and testing has been switched to stable. A nightly version is still used to run `clippy` and `rustfmt`; however in both cases the toolchain binaries are used instead of compiling them from scratch.
* The `cargo check` pass has been removed; it simply tested whether or not the crate compiled against stable before compiling again against release. As there very, very few bugs that will cause a mismatch here (differences will be in execution), a trade-off was made in favor of compiling only once.
2018-07-16 09:34:28 +02:00
Peter van Nostrand 04f654ff31 Removed protoc installation from CI setup. 2018-07-14 07:46:15 -04: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
Vladimir Komendantskiy 87485c2eb1 optimised tests to execute faster - needed by pairing computations 2018-06-13 15:18:27 +01:00
Andreas Fackler 0017a2a7c0 Make public keys and signatures serializable. 2018-05-30 10:08:43 +02:00
Andreas Fackler 9a0622f3f2 Update Rust, re-enable rustfmt. 2018-05-21 11:26:42 +02:00
Andreas Fackler e2c66e9a0a Add optional serde support.
If the feature "serialization-serde" is specified, protocol messages
implement serde's `Serialize` and `Deserialize` traits.

Close #18
2018-05-14 18:32:59 +02:00
Andreas Fackler e8838f1491 Make protobuf support optional.
Protobuf support is now only built if the feature
"serialization-protobuf" is enabled.

Close #19
2018-05-14 17:29:04 +02:00
Andreas Fackler b98bbe9dcd Fix broadcast and example, enable more tests.
This fixes several issues with the broadcast algorithm and enables the
previously ignored tests that now pass:
* Don't decide on a root hash based on anyone's `Echo` message.
* Work around the `merkle` crate's inability to produce the proof of the
  `i`-th leaf for a given index `i`.
* Ignore messages from unknown nodes.
* Avoid decoding multiple times.
* Document the full algorithm.
* Don't count multiple `Echo` or `Ready` messages coming from the same
  node.
* Fix index computation for a given proof.
* Move `BroadcastMessage` into `broadcast` to make the module more
  self-contained.

The example now only executes a single broadcast instance, expecting the
first node (the one with the lexicographically lowest address) to
propose a value. A shell script is added that runs for example nodes.

Use env_logger instead of simple_logger, so the log level can be controlled
with an environment variable. You can e.g. log all output from the broadcast
test and the crate itself in debug mode with:
RUST_LOG=hbbft=debug,broadcast=debug

Some debugging messages are more concise now and use hexadecimal
notation instead of printing arrays of decimal values.

An indentation error in the Travis script is also fixed.
2018-05-08 17:04:38 +02:00
Andreas Fackler 7826987af1 added a Travis configuration file, fixed Clippy lints 2018-05-05 09:53:29 +02:00