Jane Lusby
eaf5473efc
Add verification and state tracing events and spans ( #1131 )
2020-10-09 19:05:09 +10:00
Jane Lusby
b3634fa3e7
Make the state service use broadcast channels ( #1137 )
...
And refactor error handling
2020-10-09 18:37:24 +10:00
dependabot[bot]
76e7e3d714
build(deps): bump tracing-subscriber from 0.2.12 to 0.2.13
...
Bumps [tracing-subscriber](https://github.com/tokio-rs/tracing ) from 0.2.12 to 0.2.13.
- [Release notes](https://github.com/tokio-rs/tracing/releases )
- [Commits](https://github.com/tokio-rs/tracing/compare/tracing-subscriber-0.2.12...tracing-subscriber-0.2.13 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-08 15:09:32 -04:00
Jane Lusby
855f9b5bcb
Implement MVP of NonFinalizedState and integrate it with the state service ( #1101 )
...
* implement most of the chain functions
* implement fork
* fix outpoint handling in Chain struct
* update expect for work
* split utxo into two sets
* update the Chain definition
* remove allow attribute in zebra-state/lib.rs
* merge ChainSet type into MemoryState
* Add error messages to asserts
* export proptest impls for use in downstream crates
* add testjob for disabled feature in zebra-chain
* try to fix github actions syntax
* add module doc comment
* update RFC for utxos
* add missing header
* working proptest for Chain
* propagate back results over channel
* Start updating RFC to match changes
* implement queued block pruning
* and now it syncs wooo!
* remove empty modules
* setup config for proptests
* re-enable missing_docs lint
* update RFC to match changes in impl
* add documentation
* use more explicit variable names
2020-10-08 13:07:32 +10:00
dependabot[bot]
1b7bf61f96
build(deps): bump thiserror from 1.0.20 to 1.0.21
...
Bumps [thiserror](https://github.com/dtolnay/thiserror ) from 1.0.20 to 1.0.21.
- [Release notes](https://github.com/dtolnay/thiserror/releases )
- [Commits](https://github.com/dtolnay/thiserror/compare/1.0.20...1.0.21 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-07 18:25:33 -04:00
Deirdre Connolly
b6bca380fa
Format 'under construction' better in markdown
2020-10-07 11:35:39 -04:00
Henry de Valence
b2c3ba9d94
docs: update readme ( #1118 )
...
* docs: update readme
Fill in the README with:
- setting expectations about Zebra goals;
- explanation of the work we've done so far;
- suggestions from review comments;
- under construction sign.
Co-authored-by: Jane Lusby <jlusby42@gmail.com>
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: Jane Lusby <jlusby42@gmail.com>
Co-authored-by: Deirdre Connolly <deirdre@zfnd.org>
Co-authored-by: Jane Lusby <jlusby42@gmail.com>
Co-authored-by: teor <teor@riseup.net>
Co-authored-by: Deirdre Connolly <deirdre@zfnd.org>
2020-10-06 23:53:22 -07:00
Deirdre Connolly
8b8ef6dc4d
Remove extra Sum impl
2020-10-07 01:29:08 -04:00
Deirdre Connolly
cc44711204
Impl<'a> Sub<&'a ValueCommitment> for ValueCommitment
2020-10-07 01:29:08 -04:00
Deirdre Connolly
de6994ad52
Dupe the multiple Add impls
...
Co-authored-by: Jane Lusby <jlusby42@gmail.com>
2020-10-07 01:29:08 -04:00
Deirdre Connolly
62ad554d84
Remove redundant non_snake_case
2020-10-07 01:29:08 -04:00
Deirdre Connolly
b5b2d6a359
Impl more Add, Sum for references and Sum test
2020-10-07 01:29:08 -04:00
Deirdre Connolly
7cd730c552
Add tests for impl (Add|Sub)(Assign) for ValueCommitment
2020-10-07 01:29:08 -04:00
Deirdre Connolly
d4da79af86
Impl (Add|Sub)(Assign) for ValueCommitment
2020-10-07 01:29:08 -04:00
teor
3820eddef7
Shielded coinbase test blocks ( #1116 )
...
* Add shielded coinbase block test vectors
* Add a large block test vector in binary format
2020-10-06 16:35:41 -07:00
dependabot[bot]
08f363e1cb
build(deps): bump futures from 0.3.5 to 0.3.6
...
Bumps [futures](https://github.com/rust-lang/futures-rs ) from 0.3.5 to 0.3.6.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.5...0.3.6 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-06 16:54:08 -04:00
dependabot[bot]
1d742d0658
build(deps): bump futures-util from 0.3.5 to 0.3.6
...
Bumps [futures-util](https://github.com/rust-lang/futures-rs ) from 0.3.5 to 0.3.6.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.5...0.3.6 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-06 05:32:21 -04:00
dependabot[bot]
23a62a2d87
build(deps): bump inferno from 0.10.0 to 0.10.1
...
Bumps [inferno](https://github.com/jonhoo/inferno ) from 0.10.0 to 0.10.1.
- [Release notes](https://github.com/jonhoo/inferno/releases )
- [Changelog](https://github.com/jonhoo/inferno/blob/master/CHANGELOG.md )
- [Commits](https://github.com/jonhoo/inferno/compare/v0.10.0...v0.10.1 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-06 05:31:01 -04:00
dependabot[bot]
51746892ff
build(deps): bump futures-core from 0.3.5 to 0.3.6
...
Bumps [futures-core](https://github.com/rust-lang/futures-rs ) from 0.3.5 to 0.3.6.
- [Release notes](https://github.com/rust-lang/futures-rs/releases )
- [Changelog](https://github.com/rust-lang/futures-rs/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/futures-rs/compare/0.3.5...0.3.6 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-06 05:29:51 -04:00
Deirdre Connolly
f7095ae9a2
Add some more human-readable language to the doc comment on merkle_crh_sprout
2020-10-05 23:44:25 -04:00
Deirdre Connolly
0cf24be8e0
Use VecDeque in places
...
The unwrap()'s are all after checks to make sure the value should never be None.
2020-10-05 23:44:25 -04:00
Deirdre Connolly
d6cac9ea0a
Allow dead code for now
2020-10-05 23:44:25 -04:00
Deirdre Connolly
ee8ac1fd38
Remove LittleEndian import
2020-10-05 23:44:25 -04:00
Deirdre Connolly
b85fcdfce9
Hex-encode empty root test vectors to height 29
2020-10-05 23:44:25 -04:00
Deirdre Connolly
8ab0f92d45
Persist the byte-reversed commitments
2020-10-05 23:44:25 -04:00
Deirdre Connolly
ebbb494fb3
It woooooorks
2020-10-05 23:44:25 -04:00
Deirdre Connolly
30491c2c55
Fix merkle_crh_sprout
2020-10-05 23:44:25 -04:00
Deirdre Connolly
064021b7bf
Update test vectors
2020-10-05 23:44:25 -04:00
Deirdre Connolly
24fa507e41
Tidy tests
2020-10-05 23:44:25 -04:00
Deirdre Connolly
867576db21
Add a (theoretically) working Sprout note commitment tree impl and some tests
2020-10-05 23:44:25 -04:00
Deirdre Connolly
5e18e72522
Add some more human-readable language to the doc comment on merkle_crh_sapling
2020-10-05 23:43:23 -04:00
Deirdre Connolly
bb0fe9955b
Remove Arbitrary from NoteCommitmentTree
2020-10-05 23:43:23 -04:00
Deirdre Connolly
44af7855e4
Move hex_empty_roots test vectors into the only test that uses them
2020-10-05 23:43:23 -04:00
Deirdre Connolly
98e40aa44f
Use VecDeque in places
...
All unwrap()'s are after checks to make sure we won't be unwrap'ing a None
2020-10-05 23:43:23 -04:00
Deirdre Connolly
6732084928
Revert Sprout note commitment tree stuff for now
2020-10-05 23:43:23 -04:00
Deirdre Connolly
fea448227f
Add comment about where the sapling empty merkle roots come from
2020-10-05 23:43:23 -04:00
Deirdre Connolly
3d45209f05
Sprout NoteCommitmentTree root computation
2020-10-05 23:43:23 -04:00
Deirdre Connolly
06c69913c3
We can accurately compute Sapling note commitment tree roots now
2020-10-05 23:43:23 -04:00
Deirdre Connolly
915372e6a2
Correctly computing empty internal nodes in the Sapling note commitment tree
2020-10-05 23:43:23 -04:00
Deirdre Connolly
b93abea34f
Incomplete impl of Sapling note commitment merkle tree
2020-10-05 23:43:23 -04:00
Deirdre Connolly
568edb54e6
Add merkle_crh_sprout() and tidy note* things
2020-10-05 23:43:23 -04:00
Dimitris Apostolou
36279621f0
Fix typos
2020-10-06 12:16:41 +10:00
teor
b05273ac16
State RFC: remove duplicate validation steps ( #1123 )
2020-10-05 19:03:17 -07:00
dependabot[bot]
b473476a4a
build(deps): bump pin-project from 0.4.25 to 0.4.26
...
Bumps [pin-project](https://github.com/taiki-e/pin-project ) from 0.4.25 to 0.4.26.
- [Release notes](https://github.com/taiki-e/pin-project/releases )
- [Changelog](https://github.com/taiki-e/pin-project/blob/master/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/pin-project/compare/v0.4.25...v0.4.26 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-05 11:27:06 -04:00
dependabot[bot]
d769f62a73
build(deps): bump color-eyre from 0.5.5 to 0.5.6
...
Bumps [color-eyre](https://github.com/yaahc/color-eyre ) from 0.5.5 to 0.5.6.
- [Release notes](https://github.com/yaahc/color-eyre/releases )
- [Changelog](https://github.com/yaahc/color-eyre/blob/master/CHANGELOG.md )
- [Commits](https://github.com/yaahc/color-eyre/compare/v0.5.5...v0.5.6 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-05 11:26:23 -04:00
Jane Lusby
86ed13060f
Add tests for `Chain` implementation ( #1093 )
...
* Begin work on RFC5 implementation
* I think this is necessary
* holy shit supertrait implemented via subtrait
* implement most of the chain functions
* change to slightly better name
* implement fork
* fix outpoint handling in Chain struct
* update expect for work
* resolve review comment
* split utxo into two sets
* update the Chain definition
* just a little more
* update comment
* Apply suggestions from code review
Co-authored-by: teor <teor@riseup.net>
* apply changes from code review
* remove allow attribute in zebra-state/lib.rs
* Update zebra-state/src/memory_state.rs
Co-authored-by: teor <teor@riseup.net>
* merge ChainSet type into MemoryState
* rename state impl types
* Add error messages to asserts
* checkpoint so I can split off arbitrary changes into a PR
* export proptest impls for use in downstream crates
* add testjob for disabled feature in zebra-chain
* run rustfmt
* try to fix github actions syntax
* differentiate name
* prove that github action tests zebra-chain build without features
* revert change from last commit now that test is running
* remove accidentally introduced newline
* checkpoint
* add module doc comment
* update RFC for utxos
* add missing header
* working proptest for Chain
* apply change from chain impl PR
* setup config for proptests
* Update zebra-chain/src/block/arbitrary.rs
Co-authored-by: teor <teor@riseup.net>
* run rustfmt
Co-authored-by: teor <teor@riseup.net>
2020-10-02 15:51:51 -07:00
dependabot[bot]
1b528404cd
build(deps): bump pin-project from 0.4.24 to 0.4.25
...
Bumps [pin-project](https://github.com/taiki-e/pin-project ) from 0.4.24 to 0.4.25.
- [Release notes](https://github.com/taiki-e/pin-project/releases )
- [Changelog](https://github.com/taiki-e/pin-project/blob/master/CHANGELOG.md )
- [Commits](https://github.com/taiki-e/pin-project/compare/v0.4.24...v0.4.25 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-02 11:18:13 -04:00
dependabot[bot]
ae362d260e
build(deps): bump serde_json from 1.0.57 to 1.0.58
...
Bumps [serde_json](https://github.com/serde-rs/json ) from 1.0.57 to 1.0.58.
- [Release notes](https://github.com/serde-rs/json/releases )
- [Commits](https://github.com/serde-rs/json/compare/v1.0.57...v1.0.58 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-01 16:56:11 -04:00
dependabot[bot]
b5ecafa7bc
build(deps): bump chrono from 0.4.18 to 0.4.19
...
Bumps [chrono](https://github.com/chronotope/chrono ) from 0.4.18 to 0.4.19.
- [Release notes](https://github.com/chronotope/chrono/releases )
- [Changelog](https://github.com/chronotope/chrono/blob/main/CHANGELOG.md )
- [Commits](https://github.com/chronotope/chrono/compare/v0.4.18...v0.4.19 )
Signed-off-by: dependabot[bot] <support@github.com>
2020-10-01 15:09:10 -04:00
teor
2db97ba6e4
Send the final checkpoint block to the checkpoint verifier ( #1111 )
...
* Send the final checkpoint block to the checkpoint verifier
Also:
* route blocks with no height to the block verifier
* update an incorrect comment
* Add missing {
* rustfmt
2020-09-30 12:53:31 -07:00