Commit Graph

22 Commits

Author SHA1 Message Date
Henry de Valence 22c3bdeb61 Prefix workspace crates with zebra- (#70)
* Update license and author metadata in workspace crates.

- ensure that the license field is set to GPL-3 for all GPL-3 licensed crates;
- ensure that the author field is set to "Zcash Foundation", responsible for maintenance;
- preserve the original authorship info in AUTHORS.md for human-readable history.

Updating the author field ensures that all of the machine systems that read
crate metadata list the ZF organization, not any single individual, as the
maintainer of the crate.

* Prefix all internal crate names with zebra-.

This does not move the directories containing these crates to also have zebra-
prefixes (for instance, zebra-chain instead of chain).  I think that this would
be preferable, but because it's a `git mv`, it will be simple to do later and
leaving it out of this change makes it easier to see the renaming of all of the
internal modules.

* Remove git dependency from eth-secp256k1

* Avoid an error seemingly related to Deref coercions.

This code caused an overflow while evaluating type constraints.  As best as I
can determine, the cause of the problem was something like so: the Rust
implementation of the Bitcoin-specific hash function used in the Bloom filter
doesn't operate on byte slices, but only on a `&mut R where R: Read`, so to
hash a byte slice, you need to create a mutable copy of the input slice which
can be consumed as a `Read` implementation by the hash function; the previous
version of this code created a slice copy using a `Deref` coercion instead of
`.clone()`, and when a tokio update added new trait impls, the type inference
for the `Deref` coercion exploded (somehow -- I'm not sure about the last
part?).

This commit avoids the problem by manually cloning the input slice.
2019-07-02 15:07:06 -04:00
Henry de Valence 891226069a Run cargo fmt 2019-06-28 15:26:18 -07:00
Svyatoslav Nikolsky 8c38105a2a do not store sapling ct root aside from the header 2019-03-08 08:52:05 +03:00
Svyatoslav Nikolsky 3099c66ba1 store Sprout + Sapling commitment tree states in single column 2019-03-06 14:54:36 +03:00
Svyatoslav Nikolsky 807822a9fd update sapling commitment tree on block insert 2019-03-05 13:55:28 +03:00
Svyatoslav Nikolsky 2a80149e1a prepare for Sapling note commitment tree 2019-03-04 14:53:36 +03:00
NikVolf 2a72d6e85f cache distribution 2019-01-18 16:01:54 +03:00
NikVolf 4ac862f51c add logic to the db 2019-01-17 13:36:52 +03:00
NikVolf c833d392c4 block roots in db 2019-01-16 17:39:54 +03:00
NikVolf 0219337d1e update db 2019-01-14 14:43:04 +03:00
NikVolf 55e0c661a1 refactor nullifier tag to epoch tag 2018-12-27 13:23:57 +03:00
NikVolf 33be1815e5 remove bloom value 2018-12-03 16:16:14 +03:00
NikVolf 5b62e5b639 reserve some columns 2018-12-03 14:44:54 +03:00
NikVolf 0052703c0a also for keyvalue 2018-12-02 21:08:46 +03:00
NikVolf 9aa90a45e9 memory db and key types 2018-12-02 20:58:01 +03:00
Aleksey Sidorov f120076cab Make parity-bitcoin usable for spv validation
- In this PR I extract from the crate `db` to the new `storage` crate all traits that is not specifically related to the concrete implementation of database. So I now can use `verification` crate without `rocksdb` dependency.

- Also I modify the `HeaderAcceptor` so that can be constructed without the private `BlockDeployments`.
2018-03-09 15:45:07 +03:00
Svyatoslav Nikolsky 0fcf1fac5b firce user to select chain on first run 2017-09-01 16:57:29 +03:00
debris 382efe12c6 pr cleanup 2017-04-24 13:52:58 +02:00
debris 09f25c4f2f db refactor finished 2017-04-21 15:26:19 +02:00
debris f4c958e9f2 db cache refactor in progress 2017-04-21 13:59:06 +02:00
debris 6aa78e42e1 db cache refactor in progress 2017-04-21 09:54:18 +02:00
Marek Kotewicz 77cfd9e8f7 db refactor (#385)
* db refactor in progress, refactored kvdb

* kvdb refactor

* removed unused RwLock

* removed unused RwLock

* BlockChainDatabase

* db refactor in progress

* implemented BlockProvider for newdb

* fixed compiling

* newdb TransactionMeta

* newdb tests

* reopen tests for newdb

* replaced old db with new db

* chain_verifier uses new db

* sync module uses refactored db

* check double spends in verification layer

* added Forkable trait to satisfy resolving recursive types by compiler

* new db regtests in progress

* fixed verification and sync unit tests

* fixed miner and rpc unit tests

* implemented fmt::Debug for few structs

* removed commented out code

* fixed bencher target

* removing commented out code, polishing db_refactor pr
2017-04-05 16:37:58 +07:00