Extract spec to own crate (#10978)
* Add client-traits crate Move the BlockInfo trait to new crate * New crate `machine` Contains code extracted from ethcore that defines `Machine`, `Externalities` and other execution related code. * Use new machine and client-traits crates in ethcore * Use new crates machine and client-traits instead of ethcore where appropriate * Fix tests * Don't re-export so many types from ethcore::client * Fixing more fallout from removing re-export * fix test * More fallout from not re-exporting types * Add some docs * cleanup * import the macro edition style * Tweak docs * Add missing import * remove unused ethabi_derive imports * Use latest ethabi-contract * Move many traits from ethcore/client/traits to client-traits crate Initial version of extracted Engine trait * Move snapshot related traits to the engine crate (eew) * Move a few snapshot related types to common_types Cleanup Executed as exported from machine crate * fix warning * Gradually introduce new engine crate: snapshot * ethcore typechecks with new engine crate * Sort out types outside ethcore * Add an EpochVerifier to ethash and use that in Engine.epoch_verifier() Cleanup * Document pub members * Sort out tests Sort out default impls for EpochVerifier * Add test-helpers feature and move EngineSigner impl to the right place * Sort out tests * Sort out tests and refactor verification types * Fix missing traits * More missing traits Fix Histogram * Fix tests and cleanup * cleanup * Put back needed logger import * Don't rexport common_types from ethcore/src/client Don't export ethcore::client::* * Remove files no longer used Use types from the engine crate Explicit exports from engine::engine * Get rid of itertools * Move a few more traits from ethcore to client-traits: BlockChainReset, ScheduleInfo, StateClient * Move ProvingBlockChainClient to client-traits * Don't re-export ForkChoice and Transition from ethcore * Address grumbles: sort imports, remove commented out code * Fix merge resolution error * Extract the Clique engine to own crate * Extract NullEngine and the block_reward module from ethcore * Extract InstantSeal engine to own crate * Extract remaining engines * Extract executive_state to own crate so it can be used by engine crates * Remove snapshot stuff from the engine crate * Put snapshot traits back in ethcore * cleanup * Remove stuff from ethcore * Don't use itertools * itertools in aura is legit-ish * More post-merge fixes * Re-export less types in client * cleanup * Extract spec to own crate * Put back the test-helpers from basic-authority * Fix ethcore benchmarks * Reduce the public api of ethcore/verification * Update ethcore/block-reward/Cargo.toml Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com> * Update ethcore/engines/basic-authority/Cargo.toml Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com> * Update ethcore/engines/ethash/Cargo.toml Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com> * Update ethcore/engines/clique/src/lib.rs Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com> * signers is already a ref * Add an EngineType enum to tighten up Engine.name() * Introduce Snapshotting enum to distinguish the type of snapshots a chain uses * Rename supports_warp to snapshot_mode * Missing import * Update ethcore/src/snapshot/consensus/mod.rs Co-Authored-By: Tomasz Drwięga <tomusdrw@users.noreply.github.com> * missing import * Fix import * double semi
This commit is contained in:
@@ -18,10 +18,10 @@ use std::sync::Arc;
|
||||
use std::time::Duration;
|
||||
|
||||
use ethcore::client::DatabaseCompactionProfile;
|
||||
use ethcore::spec::{SpecParams, OptimizeFor};
|
||||
use spec::SpecParams;
|
||||
use light::client::fetch::Unavailable as UnavailableDataFetcher;
|
||||
use light::Cache as LightDataCache;
|
||||
|
||||
use types::engines::OptimizeFor;
|
||||
use params::{SpecType, Pruning};
|
||||
use helpers::execute_upgrades;
|
||||
use dir::Directories;
|
||||
|
||||
@@ -73,6 +73,7 @@ extern crate parity_runtime;
|
||||
extern crate parity_updater as updater;
|
||||
extern crate parity_version;
|
||||
extern crate registrar;
|
||||
extern crate spec;
|
||||
|
||||
#[macro_use]
|
||||
extern crate log as rlog;
|
||||
|
||||
@@ -18,7 +18,7 @@ use std::collections::HashSet;
|
||||
use std::time::Duration;
|
||||
use std::{str, fs, fmt};
|
||||
|
||||
use ethcore::spec::{Spec, SpecParams, self};
|
||||
use spec::{Spec, SpecParams, self};
|
||||
use ethereum_types::{U256, Address};
|
||||
use parity_runtime::Executor;
|
||||
use hash_fetch::fetch::Client as FetchClient;
|
||||
|
||||
@@ -26,7 +26,7 @@ use client_traits::{BlockInfo, BlockChainClient};
|
||||
use ethcore::client::{Client, DatabaseCompactionProfile, VMType};
|
||||
use ethcore::miner::{self, stratum, Miner, MinerService, MinerOptions};
|
||||
use ethcore::snapshot::{self, SnapshotConfiguration};
|
||||
use ethcore::spec::{SpecParams, OptimizeFor};
|
||||
use spec::SpecParams;
|
||||
use ethcore::verification::queue::VerifierSettings;
|
||||
use ethcore_logger::{Config as LogConfig, RotatingLogger};
|
||||
use ethcore_service::ClientService;
|
||||
@@ -43,6 +43,7 @@ use parity_runtime::Runtime;
|
||||
use sync::{self, SyncConfig, PrivateTxHandler};
|
||||
use types::{
|
||||
client_types::Mode,
|
||||
engines::OptimizeFor,
|
||||
ids::BlockId,
|
||||
snapshot::Snapshotting,
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user