Split common crates out into their own repos (#3890)

## Proposed Changes

Split out several crates which now exist in separate repos under `sigp`.

- [`ssz` and `ssz_derive`](https://github.com/sigp/ethereum_ssz)
- [`tree_hash` and `tree_hash_derive`](https://github.com/sigp/tree_hash)
- [`ethereum_hashing`](https://github.com/sigp/ethereum_hashing)
- [`ethereum_serde_utils`](https://github.com/sigp/ethereum_serde_utils)
- [`ssz_types`](https://github.com/sigp/ssz_types)

For the published crates see: https://crates.io/teams/github:sigp:crates-io?sort=recent-updates.

## Additional Info

- [x] Need to work out how to handle versioning. I was hoping to do 1.0 versions of several crates, but if they depend on `ethereum-types 0.x` that is not going to work. EDIT: decided to go with 0.5.x versions.
- [x] Need to port several changes from `tree-states`, `capella`, `eip4844` branches to the external repos.
This commit is contained in:
Michael Sproul
2023-04-28 01:15:40 +00:00
parent 7456e1e8fa
commit c11638c36c
162 changed files with 469 additions and 10669 deletions

299
Cargo.lock generated
View File

@@ -590,10 +590,9 @@ dependencies = [
"environment",
"eth1",
"eth2",
"eth2_hashing",
"eth2_ssz",
"eth2_ssz_derive",
"eth2_ssz_types",
"ethereum_hashing",
"ethereum_ssz",
"ethereum_ssz_derive",
"execution_layer",
"exit-future",
"fork_choice",
@@ -624,6 +623,7 @@ dependencies = [
"sloggers",
"slot_clock",
"smallvec",
"ssz_types",
"state_processing",
"store",
"strum",
@@ -779,10 +779,10 @@ version = "0.2.0"
dependencies = [
"arbitrary",
"blst",
"eth2_hashing",
"eth2_serde_utils",
"eth2_ssz",
"ethereum-types 0.14.1",
"ethereum_hashing",
"ethereum_serde_utils",
"ethereum_ssz",
"hex",
"milagro_bls",
"rand 0.7.3",
@@ -824,7 +824,7 @@ dependencies = [
"clap",
"clap_utils",
"eth2_network_config",
"eth2_ssz",
"ethereum_ssz",
"hex",
"lighthouse_network",
"log",
@@ -922,14 +922,14 @@ dependencies = [
name = "cached_tree_hash"
version = "0.1.0"
dependencies = [
"eth2_hashing",
"eth2_ssz",
"eth2_ssz_derive",
"eth2_ssz_types",
"ethereum-types 0.14.1",
"ethereum_hashing",
"ethereum_ssz",
"ethereum_ssz_derive",
"quickcheck",
"quickcheck_macros",
"smallvec",
"ssz_types",
"tree_hash",
]
@@ -1073,8 +1073,8 @@ dependencies = [
"clap",
"dirs",
"eth2_network_config",
"eth2_ssz",
"ethereum-types 0.14.1",
"ethereum_ssz",
"hex",
"serde",
"serde_json",
@@ -1166,16 +1166,6 @@ dependencies = [
"crossbeam-utils",
]
[[package]]
name = "console_error_panic_hook"
version = "0.1.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc"
dependencies = [
"cfg-if",
"wasm-bindgen",
]
[[package]]
name = "const-oid"
version = "0.9.2"
@@ -1648,8 +1638,8 @@ dependencies = [
name = "deposit_contract"
version = "0.2.0"
dependencies = [
"eth2_ssz",
"ethabi 16.0.0",
"ethereum_ssz",
"hex",
"reqwest",
"serde_json",
@@ -1965,9 +1955,9 @@ dependencies = [
"compare_fields",
"compare_fields_derive",
"derivative",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum-types 0.14.1",
"ethereum_ssz",
"ethereum_ssz_derive",
"execution_layer",
"fork_choice",
"fs2",
@@ -2157,8 +2147,8 @@ dependencies = [
"environment",
"eth1_test_rig",
"eth2",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum_ssz",
"ethereum_ssz_derive",
"execution_layer",
"futures",
"hex",
@@ -2201,9 +2191,9 @@ dependencies = [
"account_utils",
"bytes",
"eth2_keystore",
"eth2_serde_utils",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum_serde_utils",
"ethereum_ssz",
"ethereum_ssz_derive",
"futures",
"futures-util",
"libsecp256k1",
@@ -2230,25 +2220,13 @@ dependencies = [
"types",
]
[[package]]
name = "eth2_hashing"
version = "0.3.0"
dependencies = [
"cpufeatures",
"lazy_static",
"ring",
"rustc-hex",
"sha2 0.10.6",
"wasm-bindgen-test",
]
[[package]]
name = "eth2_interop_keypairs"
version = "0.2.0"
dependencies = [
"base64 0.13.1",
"bls",
"eth2_hashing",
"ethereum_hashing",
"hex",
"lazy_static",
"num-bigint",
@@ -2297,62 +2275,13 @@ version = "0.2.0"
dependencies = [
"discv5",
"eth2_config",
"eth2_ssz",
"ethereum_ssz",
"serde_yaml",
"tempfile",
"types",
"zip",
]
[[package]]
name = "eth2_serde_utils"
version = "0.1.1"
dependencies = [
"ethereum-types 0.14.1",
"hex",
"serde",
"serde_derive",
"serde_json",
]
[[package]]
name = "eth2_ssz"
version = "0.4.1"
dependencies = [
"eth2_ssz_derive",
"ethereum-types 0.14.1",
"itertools",
"smallvec",
]
[[package]]
name = "eth2_ssz_derive"
version = "0.3.1"
dependencies = [
"darling 0.13.4",
"eth2_ssz",
"proc-macro2",
"quote",
"syn 1.0.109",
]
[[package]]
name = "eth2_ssz_types"
version = "0.2.2"
dependencies = [
"arbitrary",
"derivative",
"eth2_serde_utils",
"eth2_ssz",
"serde",
"serde_derive",
"serde_json",
"smallvec",
"tree_hash",
"tree_hash_derive",
"typenum",
]
[[package]]
name = "eth2_wallet"
version = "0.1.0"
@@ -2491,6 +2420,54 @@ dependencies = [
"uint",
]
[[package]]
name = "ethereum_hashing"
version = "1.0.0-beta.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "233dc6f434ce680dbabf4451ee3380cec46cb3c45d66660445a435619710dd35"
dependencies = [
"cpufeatures",
"lazy_static",
"ring",
"sha2 0.10.6",
]
[[package]]
name = "ethereum_serde_utils"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0f8cb04ea380a33e9c269fa5f8df6f2d63dee19728235f3e639e7674e038686a"
dependencies = [
"ethereum-types 0.14.1",
"hex",
"serde",
"serde_derive",
"serde_json",
]
[[package]]
name = "ethereum_ssz"
version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "32749e96305376af40d7a7ee8ea4c4c64c68d09ff94a81ab78c8d9bc7153c221"
dependencies = [
"ethereum-types 0.14.1",
"itertools",
"smallvec",
]
[[package]]
name = "ethereum_ssz_derive"
version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9cac7ef2107926cea34c0064056f9bb134d2085eef882388d151d2e59174cf0"
dependencies = [
"darling 0.13.4",
"proc-macro2",
"quote",
"syn 1.0.109",
]
[[package]]
name = "ethers-core"
version = "1.0.2"
@@ -2593,10 +2570,9 @@ dependencies = [
"bytes",
"environment",
"eth2",
"eth2_serde_utils",
"eth2_ssz",
"eth2_ssz_types",
"ethereum-consensus",
"ethereum_serde_utils",
"ethereum_ssz",
"ethers-core",
"exit-future",
"fork_choice",
@@ -2619,6 +2595,7 @@ dependencies = [
"slog",
"slot_clock",
"ssz-rs",
"ssz_types",
"state_processing",
"strum",
"superstruct 0.6.0",
@@ -2772,8 +2749,8 @@ name = "fork_choice"
version = "0.1.0"
dependencies = [
"beacon_chain",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum_ssz",
"ethereum_ssz_derive",
"proto_array",
"slog",
"state_processing",
@@ -2961,8 +2938,8 @@ dependencies = [
"environment",
"eth1",
"eth1_test_rig",
"eth2_hashing",
"eth2_ssz",
"ethereum_hashing",
"ethereum_ssz",
"futures",
"int_to_bytes",
"merkle_proof",
@@ -3316,8 +3293,8 @@ dependencies = [
"environment",
"eth1",
"eth2",
"eth2_serde_utils",
"eth2_ssz",
"ethereum_serde_utils",
"ethereum_ssz",
"execution_layer",
"futures",
"genesis",
@@ -3855,8 +3832,8 @@ dependencies = [
"eth1_test_rig",
"eth2",
"eth2_network_config",
"eth2_ssz",
"eth2_wallet",
"ethereum_ssz",
"genesis",
"int_to_bytes",
"lighthouse_network",
@@ -4506,8 +4483,8 @@ dependencies = [
"env_logger 0.9.3",
"environment",
"eth1",
"eth2_hashing",
"eth2_network_config",
"ethereum_hashing",
"futures",
"lazy_static",
"lighthouse_metrics",
@@ -4547,9 +4524,8 @@ dependencies = [
"dirs",
"discv5",
"error-chain",
"eth2_ssz",
"eth2_ssz_derive",
"eth2_ssz_types",
"ethereum_ssz",
"ethereum_ssz_derive",
"exit-future",
"fnv",
"futures",
@@ -4574,6 +4550,7 @@ dependencies = [
"slog-term",
"smallvec",
"snap",
"ssz_types",
"strum",
"superstruct 0.5.0",
"task_executor",
@@ -4815,8 +4792,8 @@ dependencies = [
name = "merkle_proof"
version = "0.2.0"
dependencies = [
"eth2_hashing",
"ethereum-types 0.14.1",
"ethereum_hashing",
"lazy_static",
"quickcheck",
"quickcheck_macros",
@@ -5216,9 +5193,8 @@ dependencies = [
"derivative",
"environment",
"error-chain",
"eth2_ssz",
"eth2_ssz_types",
"ethereum-types 0.14.1",
"ethereum_ssz",
"execution_layer",
"exit-future",
"fnv",
@@ -5244,6 +5220,7 @@ dependencies = [
"sloggers",
"slot_clock",
"smallvec",
"ssz_types",
"store",
"strum",
"task_executor",
@@ -5563,8 +5540,8 @@ dependencies = [
"beacon_chain",
"bitvec 1.0.1",
"derivative",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum_ssz",
"ethereum_ssz_derive",
"itertools",
"lazy_static",
"lighthouse_metrics",
@@ -6212,8 +6189,8 @@ dependencies = [
name = "proto_array"
version = "0.2.0"
dependencies = [
"eth2_ssz",
"eth2_ssz_derive",
"ethereum_ssz",
"ethereum_ssz_derive",
"safe_arith",
"serde",
"serde_derive",
@@ -7320,8 +7297,8 @@ version = "0.1.0"
dependencies = [
"bincode",
"byteorder",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum_ssz",
"ethereum_ssz_derive",
"filesystem",
"flate2",
"lazy_static",
@@ -7369,7 +7346,7 @@ name = "slashing_protection"
version = "0.1.0"
dependencies = [
"arbitrary",
"eth2_serde_utils",
"ethereum_serde_utils",
"filesystem",
"lazy_static",
"r2d2",
@@ -7597,6 +7574,24 @@ dependencies = [
"syn 1.0.109",
]
[[package]]
name = "ssz_types"
version = "0.5.2"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8052a1004e979c0be24b9e55940195553103cc57d0b34f7e2c4e32793325e402"
dependencies = [
"arbitrary",
"derivative",
"ethereum_serde_utils",
"ethereum_ssz",
"itertools",
"serde",
"serde_derive",
"smallvec",
"tree_hash",
"typenum",
]
[[package]]
name = "state_processing"
version = "0.2.0"
@@ -7606,10 +7601,9 @@ dependencies = [
"bls",
"derivative",
"env_logger 0.9.3",
"eth2_hashing",
"eth2_ssz",
"eth2_ssz_derive",
"eth2_ssz_types",
"ethereum_hashing",
"ethereum_ssz",
"ethereum_ssz_derive",
"int_to_bytes",
"integer-sqrt",
"itertools",
@@ -7619,6 +7613,7 @@ dependencies = [
"rayon",
"safe_arith",
"smallvec",
"ssz_types",
"tokio",
"tree_hash",
"types",
@@ -7629,7 +7624,7 @@ name = "state_transition_vectors"
version = "0.1.0"
dependencies = [
"beacon_chain",
"eth2_ssz",
"ethereum_ssz",
"lazy_static",
"state_processing",
"tokio",
@@ -7649,8 +7644,8 @@ dependencies = [
"beacon_chain",
"db-key",
"directory",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum_ssz",
"ethereum_ssz_derive",
"itertools",
"lazy_static",
"leveldb",
@@ -7778,8 +7773,8 @@ name = "swap_or_not_shuffle"
version = "0.2.0"
dependencies = [
"criterion",
"eth2_hashing",
"ethereum-types 0.14.1",
"ethereum_hashing",
]
[[package]]
@@ -8446,22 +8441,20 @@ dependencies = [
[[package]]
name = "tree_hash"
version = "0.4.1"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ca8488e272d45adc36db8f6c99d09613f58a7cd06c7b347546c87d9a29ca11e8"
dependencies = [
"beacon_chain",
"eth2_hashing",
"eth2_ssz",
"eth2_ssz_derive",
"ethereum-types 0.14.1",
"rand 0.8.5",
"ethereum_hashing",
"smallvec",
"tree_hash_derive",
"types",
]
[[package]]
name = "tree_hash_derive"
version = "0.4.0"
version = "0.5.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "83baa26594d96889e5fef7638dfb0f41e16070301a5cf6da99b9a6a0804cec89"
dependencies = [
"darling 0.13.4",
"quote",
@@ -8616,13 +8609,12 @@ dependencies = [
"compare_fields_derive",
"criterion",
"derivative",
"eth2_hashing",
"eth2_interop_keypairs",
"eth2_serde_utils",
"eth2_ssz",
"eth2_ssz_derive",
"eth2_ssz_types",
"ethereum-types 0.14.1",
"ethereum_hashing",
"ethereum_serde_utils",
"ethereum_ssz",
"ethereum_ssz_derive",
"hex",
"int_to_bytes",
"itertools",
@@ -8645,6 +8637,7 @@ dependencies = [
"serde_yaml",
"slog",
"smallvec",
"ssz_types",
"state_processing",
"superstruct 0.6.0",
"swap_or_not_shuffle",
@@ -8822,7 +8815,7 @@ dependencies = [
"environment",
"eth2",
"eth2_keystore",
"eth2_serde_utils",
"ethereum_serde_utils",
"exit-future",
"filesystem",
"futures",
@@ -9076,30 +9069,6 @@ version = "0.2.84"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0046fef7e28c3804e5e38bfa31ea2a0f73905319b677e57ebe37e49358989b5d"
[[package]]
name = "wasm-bindgen-test"
version = "0.3.34"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6db36fc0f9fb209e88fb3642590ae0205bb5a56216dabd963ba15879fe53a30b"
dependencies = [
"console_error_panic_hook",
"js-sys",
"scoped-tls",
"wasm-bindgen",
"wasm-bindgen-futures",
"wasm-bindgen-test-macro",
]
[[package]]
name = "wasm-bindgen-test-macro"
version = "0.3.34"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0734759ae6b3b1717d661fe4f016efcfb9828f5edb4520c18eaee05af3b43be9"
dependencies = [
"proc-macro2",
"quote",
]
[[package]]
name = "wasm-streams"
version = "0.2.3"