Deduplicating crate dependencies (part 1 of n) (#11606)
This fixes (partially) #11468. The change includes: ``` arrayvec base64 crossbeam-deque crossbeam-epoch crossbeam-utils home idna impl-serde keccak-hasher lock_api miow num-traits parking_lot parking_lot_core percent-encoding ```
This commit is contained in:
parent
1cf37cca0d
commit
d78565593b
97
Cargo.lock
generated
97
Cargo.lock
generated
@ -136,15 +136,6 @@ version = "0.3.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "a4c527152e37cf757a3f78aae5a06fbeefdb07ccc535c980a3208ee3060dd544"
|
||||
|
||||
[[package]]
|
||||
name = "arrayvec"
|
||||
version = "0.4.12"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "cd9fd44efafa8690358b7408d253adf110036b88f55672a933f01d616ad9b1b9"
|
||||
dependencies = [
|
||||
"nodrop",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "arrayvec"
|
||||
version = "0.5.1"
|
||||
@ -765,41 +756,17 @@ dependencies = [
|
||||
"itertools",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-deque"
|
||||
version = "0.6.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "05e44b8cf3e1a625844d1750e1f7820da46044ff6d28f4d43e455ba3e5bb2c13"
|
||||
dependencies = [
|
||||
"crossbeam-epoch 0.7.2",
|
||||
"crossbeam-utils 0.6.6",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-deque"
|
||||
version = "0.7.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "9f02af974daeee82218205558e51ec8768b48cf524bd01d550abe5573a608285"
|
||||
dependencies = [
|
||||
"crossbeam-epoch 0.8.2",
|
||||
"crossbeam-utils 0.7.2",
|
||||
"crossbeam-epoch",
|
||||
"crossbeam-utils",
|
||||
"maybe-uninit",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-epoch"
|
||||
version = "0.7.2"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fedcd6772e37f3da2a9af9bf12ebe046c0dfe657992377b4df982a2b54cd37a9"
|
||||
dependencies = [
|
||||
"arrayvec 0.4.12",
|
||||
"cfg-if",
|
||||
"crossbeam-utils 0.6.6",
|
||||
"lazy_static",
|
||||
"memoffset",
|
||||
"scopeguard 1.1.0",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-epoch"
|
||||
version = "0.8.2"
|
||||
@ -808,7 +775,7 @@ checksum = "058ed274caafc1f60c4997b5fc07bf7dc7cca454af7c6e81edffe5f33f70dace"
|
||||
dependencies = [
|
||||
"autocfg 1.0.0",
|
||||
"cfg-if",
|
||||
"crossbeam-utils 0.7.2",
|
||||
"crossbeam-utils",
|
||||
"lazy_static",
|
||||
"maybe-uninit",
|
||||
"memoffset",
|
||||
@ -822,17 +789,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "c695eeca1e7173472a32221542ae469b3e9aac3a4fc81f7696bcad82029493db"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"crossbeam-utils 0.7.2",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "crossbeam-utils"
|
||||
version = "0.6.6"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "04973fa96e96579258a5091af6003abde64af786b860f18622b82e026cca60e6"
|
||||
dependencies = [
|
||||
"cfg-if",
|
||||
"lazy_static",
|
||||
"crossbeam-utils",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -945,7 +902,7 @@ version = "0.1.2"
|
||||
dependencies = [
|
||||
"app_dirs",
|
||||
"ethereum-types",
|
||||
"home 0.3.4",
|
||||
"home",
|
||||
"journaldb",
|
||||
]
|
||||
|
||||
@ -1354,7 +1311,7 @@ dependencies = [
|
||||
name = "ethcore-io"
|
||||
version = "1.12.0"
|
||||
dependencies = [
|
||||
"crossbeam-deque 0.6.3",
|
||||
"crossbeam-deque",
|
||||
"fnv",
|
||||
"futures",
|
||||
"log",
|
||||
@ -1421,7 +1378,7 @@ name = "ethcore-logger"
|
||||
version = "1.12.0"
|
||||
dependencies = [
|
||||
"ansi_term",
|
||||
"arrayvec 0.4.12",
|
||||
"arrayvec",
|
||||
"atty",
|
||||
"env_logger 0.5.13",
|
||||
"lazy_static",
|
||||
@ -2157,16 +2114,6 @@ dependencies = [
|
||||
"digest",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "home"
|
||||
version = "0.3.4"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "29302b90cfa76231a757a887d1e3153331a63c7f80b6c75f86366334cbe70708"
|
||||
dependencies = [
|
||||
"scopeguard 0.3.3",
|
||||
"winapi 0.3.8",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "home"
|
||||
version = "0.5.3"
|
||||
@ -2825,7 +2772,7 @@ dependencies = [
|
||||
"client-traits",
|
||||
"common-types",
|
||||
"criterion",
|
||||
"crossbeam-utils 0.6.6",
|
||||
"crossbeam-utils",
|
||||
"ethabi",
|
||||
"ethabi-contract",
|
||||
"ethabi-derive",
|
||||
@ -3072,12 +3019,6 @@ dependencies = [
|
||||
"tempfile",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
name = "nodrop"
|
||||
version = "0.1.14"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "72ef4a56884ca558e5ddb05a1d1e7e1bfd9a68d9ed024c21704cc98872dae1bb"
|
||||
|
||||
[[package]]
|
||||
name = "nom"
|
||||
version = "5.1.1"
|
||||
@ -3411,7 +3352,7 @@ version = "0.1.3"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f66a327a200fe67c16f1d0acab2f74a2ec67c41d6202a2a98a7378df653d848d"
|
||||
dependencies = [
|
||||
"home 0.5.3",
|
||||
"home",
|
||||
]
|
||||
|
||||
[[package]]
|
||||
@ -3516,7 +3457,7 @@ version = "1.2.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "f509c5e67ca0605ee17dcd3f91ef41cadd685c75a298fb6261b781a5acb3f910"
|
||||
dependencies = [
|
||||
"arrayvec 0.5.1",
|
||||
"arrayvec",
|
||||
"bitvec",
|
||||
"byte-slice-cast",
|
||||
"serde",
|
||||
@ -4223,7 +4164,7 @@ version = "1.3.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "db6ce3297f9c85e16621bb8cca38a06779ffc31bb8184e1be4bed2be4678a098"
|
||||
dependencies = [
|
||||
"crossbeam-deque 0.7.3",
|
||||
"crossbeam-deque",
|
||||
"either",
|
||||
"rayon-core",
|
||||
]
|
||||
@ -4234,9 +4175,9 @@ version = "1.7.0"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "08a89b46efaf957e52b18062fb2f4660f8b8a4dde1807ca002690868ef2c85a9"
|
||||
dependencies = [
|
||||
"crossbeam-deque 0.7.3",
|
||||
"crossbeam-deque",
|
||||
"crossbeam-queue",
|
||||
"crossbeam-utils 0.7.2",
|
||||
"crossbeam-utils",
|
||||
"lazy_static",
|
||||
"num_cpus",
|
||||
]
|
||||
@ -4693,7 +4634,7 @@ dependencies = [
|
||||
"client-traits",
|
||||
"common-types",
|
||||
"criterion",
|
||||
"crossbeam-utils 0.6.6",
|
||||
"crossbeam-utils",
|
||||
"engine",
|
||||
"env_logger 0.5.13",
|
||||
"ethabi",
|
||||
@ -5152,7 +5093,7 @@ version = "0.1.10"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "fb2d1b8f4548dbf5e1f7818512e9c406860678f29c300cdf0ebac72d1a3a1671"
|
||||
dependencies = [
|
||||
"crossbeam-utils 0.7.2",
|
||||
"crossbeam-utils",
|
||||
"futures",
|
||||
]
|
||||
|
||||
@ -5197,7 +5138,7 @@ version = "0.1.12"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "09bc590ec4ba8ba87652da2068d150dcada2cfa2e07faae270a5e0409aa51351"
|
||||
dependencies = [
|
||||
"crossbeam-utils 0.7.2",
|
||||
"crossbeam-utils",
|
||||
"futures",
|
||||
"lazy_static",
|
||||
"log",
|
||||
@ -5263,9 +5204,9 @@ version = "0.1.18"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "df720b6581784c118f0eb4310796b12b1d242a7eb95f716a8367855325c25f89"
|
||||
dependencies = [
|
||||
"crossbeam-deque 0.7.3",
|
||||
"crossbeam-deque",
|
||||
"crossbeam-queue",
|
||||
"crossbeam-utils 0.7.2",
|
||||
"crossbeam-utils",
|
||||
"futures",
|
||||
"lazy_static",
|
||||
"log",
|
||||
@ -5290,7 +5231,7 @@ version = "0.2.13"
|
||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||
checksum = "93044f2d313c95ff1cb7809ce9a7a05735b012288a888b62d4434fd58c94f296"
|
||||
dependencies = [
|
||||
"crossbeam-utils 0.7.2",
|
||||
"crossbeam-utils",
|
||||
"futures",
|
||||
"slab 0.4.2",
|
||||
"tokio-executor",
|
||||
|
@ -15,7 +15,7 @@ required-features = ["test-helpers"]
|
||||
account-state = { path = "../account-state" }
|
||||
client-traits = { path = "../client-traits" }
|
||||
common-types = { path = "../types" }
|
||||
crossbeam-utils = "0.6"
|
||||
crossbeam-utils = "0.7.2"
|
||||
ethabi = "9.0.1"
|
||||
ethabi-contract = "9.0.0"
|
||||
ethabi-derive = "9.0.1"
|
||||
|
@ -18,7 +18,7 @@ bloom-journal = { package = "accounts-bloom", path = "../../util/bloom" }
|
||||
bytes = { package = "parity-bytes", version = "0.1.0" }
|
||||
client-traits = { path = "../client-traits" }
|
||||
common-types = { path = "../types" }
|
||||
crossbeam-utils = "0.6"
|
||||
crossbeam-utils = "0.7.2"
|
||||
engine = { path = "../engine" }
|
||||
ethcore-db = { path = "../db" }
|
||||
ethcore-io = { path = "../../util/io" }
|
||||
|
@ -13,5 +13,5 @@ lazy_static = "1.0"
|
||||
regex = "1.0"
|
||||
time = "0.1"
|
||||
parking_lot = "0.10.0"
|
||||
arrayvec = "0.4"
|
||||
arrayvec = "0.5.1"
|
||||
ansi_term = "0.11"
|
||||
|
@ -8,4 +8,4 @@ license = "GPL3"
|
||||
ethereum-types = "0.8.0"
|
||||
journaldb = { path = "../journaldb" }
|
||||
app_dirs = { git = "https://github.com/paritytech/app-dirs-rs" }
|
||||
home = "0.3"
|
||||
home = "0.5.3"
|
||||
|
@ -10,7 +10,7 @@ edition = "2018"
|
||||
[dependencies]
|
||||
fnv = "1.0"
|
||||
mio = { version = "0.6.19", optional = true }
|
||||
crossbeam-deque = "0.6"
|
||||
crossbeam-deque = "0.7.3"
|
||||
parking_lot = "0.10.0"
|
||||
log = "0.4"
|
||||
slab = "0.4"
|
||||
|
@ -199,7 +199,8 @@ impl<Message> IoManager<Message> where Message: Send + Sync + 'static {
|
||||
event_loop: &mut EventLoop<IoManager<Message>>,
|
||||
handlers: Arc<RwLock<Slab<Arc<dyn IoHandler<Message>>>>>
|
||||
) -> Result<(), IoError> {
|
||||
let (worker, stealer) = deque::fifo();
|
||||
let worker = deque::Worker::new_fifo();
|
||||
let stealer = worker.stealer();
|
||||
let num_workers = 4;
|
||||
let work_ready_mutex = Arc::new(Mutex::new(()));
|
||||
let work_ready = Arc::new(Condvar::new());
|
||||
|
@ -227,7 +227,8 @@ impl<Message> Clone for WorkTask<Message> where Message: Send + Sized {
|
||||
impl<Message> IoService<Message> where Message: Send + Sync + 'static {
|
||||
/// Starts IO event loop
|
||||
pub fn start() -> Result<IoService<Message>, IoError> {
|
||||
let (tx, rx) = deque::fifo();
|
||||
let tx = deque::Worker::new_fifo();
|
||||
let rx = tx.stealer();
|
||||
|
||||
let shared = Arc::new(Shared {
|
||||
handlers: RwLock::new(Slab::with_capacity(MAX_HANDLERS)),
|
||||
@ -317,8 +318,8 @@ fn do_work<Message>(shared: &Arc<Shared<Message>>, rx: deque::Stealer<WorkTask<M
|
||||
match rx.steal() {
|
||||
deque::Steal::Retry => continue,
|
||||
deque::Steal::Empty => thread::park(),
|
||||
deque::Steal::Data(WorkTask::Shutdown) => break,
|
||||
deque::Steal::Data(WorkTask::UserMessage(message)) => {
|
||||
deque::Steal::Success(WorkTask::Shutdown) => break,
|
||||
deque::Steal::Success(WorkTask::UserMessage(message)) => {
|
||||
for id in 0 .. MAX_HANDLERS {
|
||||
if let Some(handler) = shared.handlers.read().get(id) {
|
||||
let ctxt = IoContext { handler: id, shared: shared.clone() };
|
||||
@ -326,7 +327,7 @@ fn do_work<Message>(shared: &Arc<Shared<Message>>, rx: deque::Stealer<WorkTask<M
|
||||
}
|
||||
}
|
||||
},
|
||||
deque::Steal::Data(WorkTask::TimerTrigger { handler_id, token }) => {
|
||||
deque::Steal::Success(WorkTask::TimerTrigger { handler_id, token }) => {
|
||||
if let Some(handler) = shared.handlers.read().get(handler_id) {
|
||||
let ctxt = IoContext { handler: handler_id, shared: shared.clone() };
|
||||
handler.timeout(&ctxt, token);
|
||||
|
@ -90,7 +90,7 @@ impl Worker {
|
||||
|
||||
while !deleting.load(AtomicOrdering::Acquire) {
|
||||
match stealer.steal() {
|
||||
deque::Steal::Data(work) => Worker::do_work(work, channel.clone()),
|
||||
deque::Steal::Success(work) => Worker::do_work(work, channel.clone()),
|
||||
deque::Steal::Retry => {},
|
||||
deque::Steal::Empty => break,
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user