517c705ab5
* small cleanups in trie * Memory trie skeleton * decode nodes from RLP * memorytrie -> memorytriedb * implement Trie for MemoryTrie * partially implement insert * implement trie insertion * don't load whole trie into memory, lookup across memory and db * re-implement insertion and lazily load necessary nodes from DB * node removal w/o fixing * reduce churn in node storage * finish remove implementation * committing the in-memory trie * reload root node after commit * generate elastic arrays when converting nodes to rlp * port triedbmut tests over to memorytriedb, fix a few bugs. * hash count and dirty flag * initial attempt for node inspection * back to skeleton * inspection framework * implement insertion * no panic paths in insert * implement deletion without fixing * node fixing * commit nodes to db * tracing targets and bugfix * get tests to pass with a lot of tracing * set playpen iterations to 10 * remove some tracing statements * make TrieMut::root take &mut self * replace triedbmut with memorytriedb * treat empty insert value as removal * add test for null insert * fix some style concerns * trie: use nodehandle for root_node, minor cleanup |
||
---|---|---|
dapps | ||
db | ||
devtools | ||
docker | ||
ethash | ||
ethcore | ||
ethkey | ||
ethstore | ||
evmbin | ||
evmjit | ||
ipc | ||
json | ||
nsis | ||
parity | ||
rpc | ||
scripts | ||
signer | ||
sync | ||
util | ||
.editorconfig | ||
.gitignore | ||
.gitmodules | ||
.travis.yml | ||
appveyor.yml | ||
build.rs | ||
Cargo.lock | ||
Cargo.toml | ||
install-deps.sh | ||
install-parity.sh | ||
LICENSE | ||
license_header | ||
README.md | ||
rustfmt.toml | ||
test.sh |
Parity
Fast, light, and robust Ethereum implementation
Be sure to check out our wiki for more information.
About Parity
Parity's goal is to be the fastest, lightest, and most secure Ethereum client. We are developing Parity using the sophisticated and cutting-edge Rust programming language. Parity is licensed under the GPLv3, and can be used for all your Ethereum needs.
By default, Parity will run a JSONRPC server on 127.0.0.1:8545
. This is fully configurable and supports a number
of RPC APIs.
Parity also runs a server for running decentralized apps, or "Dapps", on http://127.0.0.1:8080
.
This includes a few useful Dapps, including Ethereum Wallet, Maker OTC, and a node status page.
In a near-future release, it will be easy to install Dapps and use them through this web interface.
If you run into an issue while using parity, feel free to file one in this repository or hop on our gitter chat room to ask a question. We are glad to help!
Parity's current release is 1.2. You can download it at https://ethcore.io/parity.html or follow the instructions below to build from source.
Build dependencies
Parity is fully compatible with Stable Rust.
We recommend installing Rust through rustup. If you don't already have rustup, you can install it like this:
-
Linux and OSX:
$ curl https://sh.rustup.rs -sSf | sh
-
Windows
Make sure you have Visual Studio 2015 with C++ support installed. Next, download and run the rustup installer from https://static.rust-lang.org/rustup/dist/x86_64-pc-windows-msvc/rustup-init.exe, start "VS2015 x64 Native Tools Command Prompt", and use the following command to install and set up the msvc toolchain:
$ rustup default stable-x86_64-pc-windows-msvc
Once you have rustup, install parity or download and build from source
Quick install
cargo install --git https://github.com/ethcore/parity.git parity
Build from source
# download Parity code
$ git clone https://github.com/ethcore/parity
$ cd parity
# build in release mode
$ cargo build --release
This will produce an executable in the ./target/release
subdirectory.
To get started, just run
$ ./target/release/parity
and parity will begin syncing the Ethereum blockchain.