chore: pull ethers to top level directory (#398)

* chore: pull up ethers to top level directory

* chore: enable ws feature when running examples

* chore: fix paths

* chore: enable ipc feature when running examples
This commit is contained in:
Georgios Konstantopoulos 2021-08-21 15:34:21 +03:00 committed by GitHub
parent 6a0b74ec17
commit 8891ed38b4
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
24 changed files with 83 additions and 82 deletions

View File

@ -1,10 +1,77 @@
[workspace] [package]
name = "ethers"
version = "0.4.1"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
license = "MIT OR Apache-2.0"
edition = "2018"
readme = "../README.md"
documentation = "https://docs.rs/ethers"
repository = "https://github.com/gakonst/ethers-rs"
homepage = "https://docs.rs/ethers"
description = """
Complete Ethereum library and wallet implementation in Rust.
"""
[workspace]
members = [ members = [
"./ethers", "ethers-contract",
"./ethers-contract", "ethers-providers",
"./ethers-providers", "ethers-signers",
"./ethers-signers", "ethers-core",
"./ethers-core", "ethers-middleware",
"./ethers-middleware",
] ]
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[package.metadata.playground]
features = ["full"]
[features]
celo = [
"ethers-core/celo",
"ethers-providers/celo",
"ethers-signers/celo",
"ethers-contract/celo",
"ethers-middleware/celo",
"legacy"
]
legacy = [
"ethers-core/legacy",
"ethers-contract/legacy"
]
# individual features per sub-crate
## core
setup = ["ethers-core/setup"]
## providers
ws = ["ethers-providers/ws"]
ipc = ["ethers-providers/ipc"]
rustls = ["ethers-providers/rustls"]
openssl = ["ethers-providers/openssl"]
## signers
ledger = ["ethers-signers/ledger"]
yubi = ["ethers-signers/yubi"]
## contracts
abigen = ["ethers-contract/abigen"]
[dependencies]
ethers-contract = { version = "0.4.7", default-features = false, path = "./ethers-contract" }
ethers-core = { version = "0.4.8", default-features = false, path = "./ethers-core", features = ["setup"] }
ethers-providers = { version = "0.4.6", default-features = false, path = "./ethers-providers" }
ethers-signers = { version = "0.4.6", default-features = false, path = "./ethers-signers" }
ethers-middleware = { version = "0.4.8", default-features = false, path = "./ethers-middleware" }
[dev-dependencies]
ethers-contract = { version = "0.4.7", default-features = false, path = "./ethers-contract", features = ["abigen"] }
ethers-providers = { version = "0.4.6", default-features = false, path = "./ethers-providers", features = ["ws", "ipc"] }
anyhow = "1.0.39"
rand = "0.8.4"
serde = { version = "1.0.124", features = ["derive"] }
serde_json = "1.0.64"
tokio = { version = "1.5", features = ["macros", "rt-multi-thread"] }

View File

@ -24,7 +24,7 @@ futures-util = { version = "0.3.16" }
hex = { version = "0.4.3", default-features = false, features = ["std"] } hex = { version = "0.4.3", default-features = false, features = ["std"] }
[dev-dependencies] [dev-dependencies]
ethers = { version = "0.4.0", path = "../ethers" } ethers = { version = "0.4.0", path = ".." }
ethers-providers = { version = "0.4.6", path = "../ethers-providers", default-features = false, features = ["ws"] } ethers-providers = { version = "0.4.6", path = "../ethers-providers", default-features = false, features = ["ws"] }
ethers-signers = { version = "0.4.6", path = "../ethers-signers" } ethers-signers = { version = "0.4.6", path = "../ethers-signers" }
ethers-middleware = { version = "0.4.8", path = "../ethers-middleware" } ethers-middleware = { version = "0.4.8", path = "../ethers-middleware" }

View File

@ -36,7 +36,7 @@ tokio = { version = "1.5", default-features = false, optional = true}
futures-util = { version = "0.3.16", optional = true } futures-util = { version = "0.3.16", optional = true }
[dev-dependencies] [dev-dependencies]
ethers = { version = "0.4.0", path = "../ethers" } ethers = { version = "0.4.0", path = ".." }
serde_json = { version = "1.0.64", default-features = false } serde_json = { version = "1.0.64", default-features = false }
bincode = { version = "1.3.3", default-features = false } bincode = { version = "1.3.3", default-features = false }

View File

@ -35,7 +35,7 @@ serde_json = { version = "1.0.64", default-features = false }
tokio = { version = "1.5" } tokio = { version = "1.5" }
[dev-dependencies] [dev-dependencies]
ethers = { version = "0.4.0", path = "../ethers" } ethers = { version = "0.4.0", path = ".." }
hex = { version = "0.4.3", default-features = false, features = ["std"] } hex = { version = "0.4.3", default-features = false, features = ["std"] }
rand = { version = "0.8.4", default-features = false } rand = { version = "0.8.4", default-features = false }
tokio = { version = "1.5", default-features = false, features = ["rt", "macros", "time"] } tokio = { version = "1.5", default-features = false, features = ["rt", "macros", "time"] }

View File

@ -43,7 +43,7 @@ tokio-util = { version = "0.6.7", default-features = false, features = ["io"], o
bytes = { version = "1.0.1", default-features = false, optional = true } bytes = { version = "1.0.1", default-features = false, optional = true }
[dev-dependencies] [dev-dependencies]
ethers = { version = "0.4.0", path = "../ethers" } ethers = { version = "0.4.0", path = ".." }
tokio = { version = "1.5", default-features = false, features = ["rt", "macros"] } tokio = { version = "1.5", default-features = false, features = ["rt", "macros"] }
tempfile = "3.2.0" tempfile = "3.2.0"

View File

@ -37,7 +37,7 @@ tracing-futures = { version = "0.2.5", optional = true }
spki = { version = "0.4.0", optional = true } spki = { version = "0.4.0", optional = true }
[dev-dependencies] [dev-dependencies]
ethers = { version = "0.4.0", path = "../ethers" } ethers = { version = "0.4.0", path = ".." }
yubihsm = { version = "0.39.0", features = ["secp256k1", "usb", "mockhsm"] } yubihsm = { version = "0.39.0", features = ["secp256k1", "usb", "mockhsm"] }
tempfile = "3.2.0" tempfile = "3.2.0"

View File

@ -1,66 +0,0 @@
[package]
name = "ethers"
version = "0.4.1"
authors = ["Georgios Konstantopoulos <me@gakonst.com>"]
license = "MIT OR Apache-2.0"
edition = "2018"
readme = "../README.md"
documentation = "https://docs.rs/ethers"
repository = "https://github.com/gakonst/ethers-rs"
homepage = "https://docs.rs/ethers"
description = """
Complete Ethereum library and wallet implementation in Rust.
"""
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[package.metadata.playground]
features = ["full"]
[features]
celo = [
"ethers-core/celo",
"ethers-providers/celo",
"ethers-signers/celo",
"ethers-contract/celo",
"ethers-middleware/celo",
"legacy"
]
legacy = [
"ethers-core/legacy",
"ethers-contract/legacy"
]
# individual features per sub-crate
## core
setup = ["ethers-core/setup"]
## providers
ws = ["ethers-providers/ws"]
ipc = ["ethers-providers/ipc"]
rustls = ["ethers-providers/rustls"]
openssl = ["ethers-providers/openssl"]
## signers
ledger = ["ethers-signers/ledger"]
yubi = ["ethers-signers/yubi"]
## contracts
abigen = ["ethers-contract/abigen"]
[dependencies]
ethers-contract = { version = "0.4.7", default-features = false, path = "../ethers-contract" }
ethers-core = { version = "0.4.8", default-features = false, path = "../ethers-core", features = ["setup"] }
ethers-providers = { version = "0.4.6", default-features = false, path = "../ethers-providers" }
ethers-signers = { version = "0.4.6", default-features = false, path = "../ethers-signers" }
ethers-middleware = { version = "0.4.8", default-features = false, path = "../ethers-middleware" }
[dev-dependencies]
ethers-contract = { version = "0.4.7", default-features = false, path = "../ethers-contract", features = ["abigen"] }
anyhow = "1.0.39"
rand = "0.8.4"
serde = { version = "1.0.124", features = ["derive"] }
serde_json = "1.0.64"
tokio = { version = "1.5", features = ["macros", "rt-multi-thread"] }

View File

@ -19,7 +19,7 @@ abigen!(
#[tokio::main] #[tokio::main]
async fn main() -> Result<()> { async fn main() -> Result<()> {
// 1. compile the contract (note this requires that you are inside the `ethers/examples` directory) and launch ganache // 1. compile the contract (note this requires that you are inside the `examples` directory) and launch ganache
let (compiled, ganache) = let (compiled, ganache) =
compile_and_launch_ganache(Solc::new("**/contract.sol"), Ganache::new()).await?; compile_and_launch_ganache(Solc::new("**/contract.sol"), Ganache::new()).await?;
let contract = compiled let contract = compiled

View File

@ -9,13 +9,13 @@ use std::{convert::TryFrom, sync::Arc, time::Duration};
// definition in human readable format // definition in human readable format
abigen!( abigen!(
SimpleContract, SimpleContract,
"./ethers/examples/contract_abi.json", "./examples/contract_abi.json",
event_derives(serde::Deserialize, serde::Serialize) event_derives(serde::Deserialize, serde::Serialize)
); );
#[tokio::main] #[tokio::main]
async fn main() -> Result<()> { async fn main() -> Result<()> {
// 1. compile the contract (note this requires that you are inside the `ethers/examples` directory) and launch ganache // 1. compile the contract (note this requires that you are inside the `examples` directory) and launch ganache
let (compiled, ganache) = let (compiled, ganache) =
compile_and_launch_ganache(Solc::new("**/contract.sol"), Ganache::new()).await?; compile_and_launch_ganache(Solc::new("**/contract.sol"), Ganache::new()).await?;

View File

@ -25,7 +25,7 @@
//! ``` //! ```
//! //!
//! Examples on how you can use the types imported by the prelude can be found in //! Examples on how you can use the types imported by the prelude can be found in
//! the [`examples` directory of the repository](https://github.com/gakonst/ethers-rs/tree/master/ethers/examples) //! the [`examples` directory of the repository](https://github.com/gakonst/ethers-rs/tree/master/examples)
//! and in the `tests/` directories of each crate. //! and in the `tests/` directories of each crate.
//! //!
//! # Quick explanation of each module in ascending order of abstraction //! # Quick explanation of each module in ascending order of abstraction