Merge branch 'master' into issues/4673
This commit is contained in:
commit
8b3ec61151
465
CHANGELOG.md
465
CHANGELOG.md
@ -1,3 +1,468 @@
|
|||||||
|
## Parity [v1.6.10](https://github.com/paritytech/parity/releases/tag/v1.6.10) (2017-07-23)
|
||||||
|
|
||||||
|
This is a hotfix release for the stable channel addressing the recent [multi-signature wallet vulnerability](https://blog.parity.io/security-alert-high-2/). Note, upgrading is not mandatory, and all future multi-sig wallets created by any version of Parity are secure.
|
||||||
|
|
||||||
|
All Changes:
|
||||||
|
|
||||||
|
- Backports for stable [#6116](https://github.com/paritytech/parity/pull/6116)
|
||||||
|
- Remove chunk to restore from pending set only upon successful import [#6112](https://github.com/paritytech/parity/pull/6112)
|
||||||
|
- Blacklist bad snapshot manifest hashes upon failure [#5874](https://github.com/paritytech/parity/pull/5874)
|
||||||
|
- Bump snap version and tweak importing detection logic [#6079](https://github.com/paritytech/parity/pull/6079) (modified to work)
|
||||||
|
- Fix docker build for stable [#6118](https://github.com/paritytech/parity/pull/6118)
|
||||||
|
- Backported wallet fix [#6104](https://github.com/paritytech/parity/pull/6104)
|
||||||
|
- Fix initialisation bug. ([#6102](https://github.com/paritytech/parity/pull/6102))
|
||||||
|
- Update wallet library modifiers ([#6103](https://github.com/paritytech/parity/pull/6103))
|
||||||
|
- Bump to v1.6.10
|
||||||
|
|
||||||
|
## Parity [v1.7.0](https://github.com/paritytech/parity/releases/tag/v1.7.0) (2017-07-23)
|
||||||
|
|
||||||
|
Parity 1.7.0 is a major release introducing several important features:
|
||||||
|
|
||||||
|
- **Experimental [Light client](https://github.com/paritytech/parity/wiki/The-Parity-Light-Protocol-(PIP)) support**. Start Parity with `--light` to enable light mode.
|
||||||
|
- **Experimental web wallet**. A hosted version of Parity that keeps the keys and signs transactions using your browser storage. Try it at https://wallet.parity.io or run your own with `--public-node`.
|
||||||
|
- **WASM contract support**. Private networks can run contracts compiled into WASM bytecode. _More information and documentation to follow_.
|
||||||
|
- **DApps and RPC server merge**. DApp and RPC are now available through a single API endpoint. DApp server related settings are deprecated.
|
||||||
|
- **Export accounts from the wallet**. Backing up your keys can now simply be managed through the wallet interface.
|
||||||
|
- **PoA/Kovan validator set contract**. The PoA network validator-set management via smart contract is now supported by warp and light sync.
|
||||||
|
- **PubSub API**. https://github.com/paritytech/parity/wiki/JSONRPC-Parity-Pub-Sub-module
|
||||||
|
- **Signer apps for IOS and Android**.
|
||||||
|
|
||||||
|
Full list of included changes:
|
||||||
|
|
||||||
|
- Check QR before lowercase ([#6119](https://github.com/paritytech/parity/pull/6119)) [#6120](https://github.com/paritytech/parity/pull/6120)
|
||||||
|
- Remove chunk to restore from pending set only upon successful import [#6117](https://github.com/paritytech/parity/pull/6117)
|
||||||
|
- Fixed node address detection on incoming connection [#6094](https://github.com/paritytech/parity/pull/6094)
|
||||||
|
- Place RETURNDATA behind block number gate [#6095](https://github.com/paritytech/parity/pull/6095)
|
||||||
|
- Backported wallet fix [#6105](https://github.com/paritytech/parity/pull/6105)
|
||||||
|
- Fix initialisation bug. ([#6102](https://github.com/paritytech/parity/pull/6102))
|
||||||
|
- Update wallet library modifiers ([#6103](https://github.com/paritytech/parity/pull/6103))
|
||||||
|
- Bump snap version and tweak importing detection logic ([#6079](https://github.com/paritytech/parity/pull/6079)) [#6081](https://github.com/paritytech/parity/pull/6081)
|
||||||
|
- bump last tick just before printing info and restore sync detection
|
||||||
|
- bump kovan snapshot version
|
||||||
|
- Fixed sync tests
|
||||||
|
- Fixed rpc tests
|
||||||
|
- Acquire client report under lock in informant [#6071](https://github.com/paritytech/parity/pull/6071)
|
||||||
|
- Show busy indicator on Address forget [#6069](https://github.com/paritytech/parity/pull/6069)
|
||||||
|
- Add CSP for worker-src ([#6059](https://github.com/paritytech/parity/pull/6059)) [#6064](https://github.com/paritytech/parity/pull/6064)
|
||||||
|
- Specify worker-src seperately, add blob
|
||||||
|
- Upgrade react-qr-scan to latest version
|
||||||
|
- Set release channel to beta
|
||||||
|
- Limit transaction queue memory & limit future queue [#6038](https://github.com/paritytech/parity/pull/6038)
|
||||||
|
- Fix CI build issue [#6050](https://github.com/paritytech/parity/pull/6050)
|
||||||
|
- New contract PoA sync fixes [#5991](https://github.com/paritytech/parity/pull/5991)
|
||||||
|
- Fixed link to Multisig Contract Wallet on master [#5984](https://github.com/paritytech/parity/pull/5984)
|
||||||
|
- Ethcore crate split part 1 [#6041](https://github.com/paritytech/parity/pull/6041)
|
||||||
|
- Fix status icon [#6039](https://github.com/paritytech/parity/pull/6039)
|
||||||
|
- Errors & warnings for inappropriate RPCs [#6029](https://github.com/paritytech/parity/pull/6029)
|
||||||
|
- Add missing CSP for web3.site [#5992](https://github.com/paritytech/parity/pull/5992)
|
||||||
|
- Remove cargo install --git from README.md [#6037](https://github.com/paritytech/parity/pull/6037)
|
||||||
|
- Node Health warnings [#5951](https://github.com/paritytech/parity/pull/5951)
|
||||||
|
- RPC cpu pool [#6023](https://github.com/paritytech/parity/pull/6023)
|
||||||
|
- Use crates.io dependencies for parity-wasm [#6036](https://github.com/paritytech/parity/pull/6036)
|
||||||
|
- Add test for loading the chain specs [#6028](https://github.com/paritytech/parity/pull/6028)
|
||||||
|
- Whitelist APIs for generic Pub-Sub [#5840](https://github.com/paritytech/parity/pull/5840)
|
||||||
|
- WASM contracts MVP [#5679](https://github.com/paritytech/parity/pull/5679)
|
||||||
|
- Fix valid QR scan not advancing [#6033](https://github.com/paritytech/parity/pull/6033)
|
||||||
|
- --reseal-on-uncle [#5940](https://github.com/paritytech/parity/pull/5940)
|
||||||
|
- Support comments in reserved peers file ([#6004](https://github.com/paritytech/parity/pull/6004)) [#6012](https://github.com/paritytech/parity/pull/6012)
|
||||||
|
- Add new md tnc [#5937](https://github.com/paritytech/parity/pull/5937)
|
||||||
|
- Fix output of parity-evm in case of bad instruction [#5955](https://github.com/paritytech/parity/pull/5955)
|
||||||
|
- Don't send notifications to unsubscribed clients of PubSub [#5960](https://github.com/paritytech/parity/pull/5960)
|
||||||
|
- Proper light client informant and more verification of imported headers [#5897](https://github.com/paritytech/parity/pull/5897)
|
||||||
|
- New Kovan bootnodes [#6017](https://github.com/paritytech/parity/pull/6017)
|
||||||
|
- Use standard paths for Ethash cache [#5881](https://github.com/paritytech/parity/pull/5881)
|
||||||
|
- Defer code hash calculation. [#5959](https://github.com/paritytech/parity/pull/5959)
|
||||||
|
- Fix first run wizard. [#6000](https://github.com/paritytech/parity/pull/6000)
|
||||||
|
- migration to serde 1.0 [#5996](https://github.com/paritytech/parity/pull/5996)
|
||||||
|
- SecretStore: generating signatures [#5764](https://github.com/paritytech/parity/pull/5764)
|
||||||
|
- bigint upgraded to version 3.0 [#5986](https://github.com/paritytech/parity/pull/5986)
|
||||||
|
- config: don't allow dev chain with force sealing option [#5965](https://github.com/paritytech/parity/pull/5965)
|
||||||
|
- Update lockfile for miniz-sys and gcc [#5969](https://github.com/paritytech/parity/pull/5969)
|
||||||
|
- Clean up function naming in RPC error module [#5995](https://github.com/paritytech/parity/pull/5995)
|
||||||
|
- Fix underflow in gas calculation [#5975](https://github.com/paritytech/parity/pull/5975)
|
||||||
|
- PubSub for parity-js [#5830](https://github.com/paritytech/parity/pull/5830)
|
||||||
|
- Report whether a peer was kept from `Handler::on_connect` [#5958](https://github.com/paritytech/parity/pull/5958)
|
||||||
|
- Implement skeleton for transaction index and epoch transition proof PIP messages [#5908](https://github.com/paritytech/parity/pull/5908)
|
||||||
|
- TransactionQueue improvements [#5917](https://github.com/paritytech/parity/pull/5917)
|
||||||
|
- constant time HMAC comparison and clarify docs in ethkey [#5952](https://github.com/paritytech/parity/pull/5952)
|
||||||
|
- Avoid pre-computing jump destinations [#5954](https://github.com/paritytech/parity/pull/5954)
|
||||||
|
- Upgrade elastic array [#5949](https://github.com/paritytech/parity/pull/5949)
|
||||||
|
- PoA: Wait for transition finality before applying [#5774](https://github.com/paritytech/parity/pull/5774)
|
||||||
|
- Logs Pub-Sub [#5705](https://github.com/paritytech/parity/pull/5705)
|
||||||
|
- Add the command to install the parity snap [#5945](https://github.com/paritytech/parity/pull/5945)
|
||||||
|
- Reduce unnecessary allocations [#5944](https://github.com/paritytech/parity/pull/5944)
|
||||||
|
- Clarify confusing messages. [#5935](https://github.com/paritytech/parity/pull/5935)
|
||||||
|
- Content Security Policy [#5790](https://github.com/paritytech/parity/pull/5790)
|
||||||
|
- CLI: Export error message and less verbose peer counter. [#5870](https://github.com/paritytech/parity/pull/5870)
|
||||||
|
- network: make it more explicit about StreamToken and TimerToken [#5939](https://github.com/paritytech/parity/pull/5939)
|
||||||
|
- sync: make it more idiomatic rust [#5938](https://github.com/paritytech/parity/pull/5938)
|
||||||
|
- Prioritize accounts over address book [#5909](https://github.com/paritytech/parity/pull/5909)
|
||||||
|
- Fixing failing compilation of RPC test on master. [#5916](https://github.com/paritytech/parity/pull/5916)
|
||||||
|
- Empty local middleware, until explicitly requested [#5912](https://github.com/paritytech/parity/pull/5912)
|
||||||
|
- Cancel propagated TX [#5899](https://github.com/paritytech/parity/pull/5899)
|
||||||
|
- fix minor race condition in aura seal generation [#5910](https://github.com/paritytech/parity/pull/5910)
|
||||||
|
- Docs for Pub-Sub, optional parameter for parity_subscribe [#5833](https://github.com/paritytech/parity/pull/5833)
|
||||||
|
- Fix gas editor doubling-up on gas [#5820](https://github.com/paritytech/parity/pull/5820)
|
||||||
|
- Information about used paths added to general output block [#5904](https://github.com/paritytech/parity/pull/5904)
|
||||||
|
- Domain-locked web tokens. [#5894](https://github.com/paritytech/parity/pull/5894)
|
||||||
|
- Removed panic handlers [#5895](https://github.com/paritytech/parity/pull/5895)
|
||||||
|
- Latest changes from Rust RocksDB binding merged [#5905](https://github.com/paritytech/parity/pull/5905)
|
||||||
|
- Adjust keyethereum/secp256 aliasses [#5903](https://github.com/paritytech/parity/pull/5903)
|
||||||
|
- Keyethereum fs dependency [#5902](https://github.com/paritytech/parity/pull/5902)
|
||||||
|
- Ethereum Classic Monetary Policy [#5741](https://github.com/paritytech/parity/pull/5741)
|
||||||
|
- Initial token should allow full access. [#5873](https://github.com/paritytech/parity/pull/5873)
|
||||||
|
- Fixed account selection for Dapps on public node [#5856](https://github.com/paritytech/parity/pull/5856)
|
||||||
|
- blacklist bad snapshot manifest hashes upon failure [#5874](https://github.com/paritytech/parity/pull/5874)
|
||||||
|
- Fix wrongly called timeouts [#5838](https://github.com/paritytech/parity/pull/5838)
|
||||||
|
- ArchiveDB and other small fixes [#5867](https://github.com/paritytech/parity/pull/5867)
|
||||||
|
- convert try!() to ? [#5866](https://github.com/paritytech/parity/pull/5866)
|
||||||
|
- Make config file optional in systemd [#5847](https://github.com/paritytech/parity/pull/5847)
|
||||||
|
- EIP-116 (214), [#4833](https://github.com/paritytech/parity/issues/4833) [#4851](https://github.com/paritytech/parity/pull/4851)
|
||||||
|
- all executables are workspace members [#5865](https://github.com/paritytech/parity/pull/5865)
|
||||||
|
- minor optimizations of the modexp builtin [#5860](https://github.com/paritytech/parity/pull/5860)
|
||||||
|
- three small commits for HashDB and MemoryDB [#5766](https://github.com/paritytech/parity/pull/5766)
|
||||||
|
- use rust 1.18's retain to boost the purge performance [#5801](https://github.com/paritytech/parity/pull/5801)
|
||||||
|
- Allow IPFS server to accept POST requests [#5858](https://github.com/paritytech/parity/pull/5858)
|
||||||
|
- Dutch i18n from [#5802](https://github.com/paritytech/parity/issues/5802) for master [#5836](https://github.com/paritytech/parity/pull/5836)
|
||||||
|
- Typos in token deploy dapp ui [#5851](https://github.com/paritytech/parity/pull/5851)
|
||||||
|
- A CLI flag to allow fast transaction signing when account is unlocked. [#5778](https://github.com/paritytech/parity/pull/5778)
|
||||||
|
- Removing `additional` field from EVM instructions [#5821](https://github.com/paritytech/parity/pull/5821)
|
||||||
|
- Don't fail on wrong log decoding [#5813](https://github.com/paritytech/parity/pull/5813)
|
||||||
|
- Use randomized subscription ids for PubSub [#5756](https://github.com/paritytech/parity/pull/5756)
|
||||||
|
- Fixed mem write for empty slice [#5827](https://github.com/paritytech/parity/pull/5827)
|
||||||
|
- Fix party technologies [#5810](https://github.com/paritytech/parity/pull/5810)
|
||||||
|
- Revert "Fixed mem write for empty slice" [#5826](https://github.com/paritytech/parity/pull/5826)
|
||||||
|
- Fixed mem write for empty slice [#5825](https://github.com/paritytech/parity/pull/5825)
|
||||||
|
- Fix JS tests [#5822](https://github.com/paritytech/parity/pull/5822)
|
||||||
|
- Bump native-tls and openssl crates. [#5817](https://github.com/paritytech/parity/pull/5817)
|
||||||
|
- Public node using WASM [#5734](https://github.com/paritytech/parity/pull/5734)
|
||||||
|
- enforce block signer == author field in PoA [#5808](https://github.com/paritytech/parity/pull/5808)
|
||||||
|
- Fix stack display in evmbin. [#5733](https://github.com/paritytech/parity/pull/5733)
|
||||||
|
- Disable UI if it's not compiled in. [#5773](https://github.com/paritytech/parity/pull/5773)
|
||||||
|
- Require phrase confirmation. [#5731](https://github.com/paritytech/parity/pull/5731)
|
||||||
|
- Duration limit made optional for EthashParams [#5777](https://github.com/paritytech/parity/pull/5777)
|
||||||
|
- Update Changelog for 1.6.8 [#5798](https://github.com/paritytech/parity/pull/5798)
|
||||||
|
- Replace Ethcore comany name in T&C and some other places [#5796](https://github.com/paritytech/parity/pull/5796)
|
||||||
|
- PubSub for IPC. [#5800](https://github.com/paritytech/parity/pull/5800)
|
||||||
|
- Fix terminology distributed -> decentralized applications [#5797](https://github.com/paritytech/parity/pull/5797)
|
||||||
|
- Disable compression for RLP strings [#5786](https://github.com/paritytech/parity/pull/5786)
|
||||||
|
- update the source for the snapcraft package [#5781](https://github.com/paritytech/parity/pull/5781)
|
||||||
|
- Fixed default UI port for mac installer [#5782](https://github.com/paritytech/parity/pull/5782)
|
||||||
|
- Block invalid account name creation [#5784](https://github.com/paritytech/parity/pull/5784)
|
||||||
|
- Update Cid/multihash/ring/tinykeccak [#5785](https://github.com/paritytech/parity/pull/5785)
|
||||||
|
- use NULL_RLP, remove NULL_RLP_STATIC [#5742](https://github.com/paritytech/parity/pull/5742)
|
||||||
|
- Blacklist empty phrase account. [#5730](https://github.com/paritytech/parity/pull/5730)
|
||||||
|
- EIP-211 RETURNDATACOPY and RETURNDATASIZE [#5678](https://github.com/paritytech/parity/pull/5678)
|
||||||
|
- Bump mio [#5763](https://github.com/paritytech/parity/pull/5763)
|
||||||
|
- Fixing UI issues after UI server refactor [#5710](https://github.com/paritytech/parity/pull/5710)
|
||||||
|
- Fix WS server expose issue. [#5728](https://github.com/paritytech/parity/pull/5728)
|
||||||
|
- Fix local transactions without condition. [#5716](https://github.com/paritytech/parity/pull/5716)
|
||||||
|
- Bump parity-wordlist. [#5748](https://github.com/paritytech/parity/pull/5748)
|
||||||
|
- two small changes in evm [#5700](https://github.com/paritytech/parity/pull/5700)
|
||||||
|
- Evmbin: JSON format printing pre-state. [#5712](https://github.com/paritytech/parity/pull/5712)
|
||||||
|
- Recover from empty phrase in dev mode [#5698](https://github.com/paritytech/parity/pull/5698)
|
||||||
|
- EIP-210 BLOCKHASH changes [#5505](https://github.com/paritytech/parity/pull/5505)
|
||||||
|
- fixes typo [#5708](https://github.com/paritytech/parity/pull/5708)
|
||||||
|
- Bump rocksdb [#5707](https://github.com/paritytech/parity/pull/5707)
|
||||||
|
- Fixed --datadir option [#5697](https://github.com/paritytech/parity/pull/5697)
|
||||||
|
- rpc -> weak to arc [#5688](https://github.com/paritytech/parity/pull/5688)
|
||||||
|
- typo fix [#5699](https://github.com/paritytech/parity/pull/5699)
|
||||||
|
- Revamping parity-evmbin [#5696](https://github.com/paritytech/parity/pull/5696)
|
||||||
|
- Update dependencies and bigint api [#5685](https://github.com/paritytech/parity/pull/5685)
|
||||||
|
- UI server refactoring [#5580](https://github.com/paritytech/parity/pull/5580)
|
||||||
|
- Fix from/into electrum in ethkey [#5686](https://github.com/paritytech/parity/pull/5686)
|
||||||
|
- Add unit tests [#5668](https://github.com/paritytech/parity/pull/5668)
|
||||||
|
- Guanqun add unit tests [#5671](https://github.com/paritytech/parity/pull/5671)
|
||||||
|
- Parity-PubSub as a separate API. [#5676](https://github.com/paritytech/parity/pull/5676)
|
||||||
|
- EIP-140 REVERT opcode [#5477](https://github.com/paritytech/parity/pull/5477)
|
||||||
|
- Update CHANGELOG for 1.6.7 [#5683](https://github.com/paritytech/parity/pull/5683)
|
||||||
|
- Updated docs slightly. [#5674](https://github.com/paritytech/parity/pull/5674)
|
||||||
|
- Fix build [#5684](https://github.com/paritytech/parity/pull/5684)
|
||||||
|
- Back-references for the on-demand service [#5573](https://github.com/paritytech/parity/pull/5573)
|
||||||
|
- Dynamically adjust PIP request costs based on gathered data [#5603](https://github.com/paritytech/parity/pull/5603)
|
||||||
|
- use cargo workspace [#5601](https://github.com/paritytech/parity/pull/5601)
|
||||||
|
- Latest headers Pub-Sub [#5655](https://github.com/paritytech/parity/pull/5655)
|
||||||
|
- improved dockerfile builds [#5659](https://github.com/paritytech/parity/pull/5659)
|
||||||
|
- Adding CLI options: port shift and unsafe expose. [#5677](https://github.com/paritytech/parity/pull/5677)
|
||||||
|
- Report missing author in Aura [#5583](https://github.com/paritytech/parity/pull/5583)
|
||||||
|
- typo fix [#5669](https://github.com/paritytech/parity/pull/5669)
|
||||||
|
- Remove public middleware (temporary) [#5665](https://github.com/paritytech/parity/pull/5665)
|
||||||
|
- Remove additional polyfill [#5663](https://github.com/paritytech/parity/pull/5663)
|
||||||
|
- Importing accounts from files. [#5644](https://github.com/paritytech/parity/pull/5644)
|
||||||
|
- remove the deprecated options in rustfmt.toml [#5616](https://github.com/paritytech/parity/pull/5616)
|
||||||
|
- Update the Console dapp [#5602](https://github.com/paritytech/parity/pull/5602)
|
||||||
|
- Create an account for chain=dev [#5612](https://github.com/paritytech/parity/pull/5612)
|
||||||
|
- Use babel-runtime as opposed to babel-polyfill [#5662](https://github.com/paritytech/parity/pull/5662)
|
||||||
|
- Connection dialog timestamp info [#5554](https://github.com/paritytech/parity/pull/5554)
|
||||||
|
- use copy_from_slice instead of for loop [#5647](https://github.com/paritytech/parity/pull/5647)
|
||||||
|
- Light friendly dapps [#5634](https://github.com/paritytech/parity/pull/5634)
|
||||||
|
- Add Recover button to Accounts and warnings [#5645](https://github.com/paritytech/parity/pull/5645)
|
||||||
|
- Update eth_sign docs. [#5631](https://github.com/paritytech/parity/pull/5631)
|
||||||
|
- Proper signer Pub-Sub for pending requests. [#5594](https://github.com/paritytech/parity/pull/5594)
|
||||||
|
- Bump bigint to 1.0.5 [#5641](https://github.com/paritytech/parity/pull/5641)
|
||||||
|
- PoA warp implementation [#5488](https://github.com/paritytech/parity/pull/5488)
|
||||||
|
- Improve on-demand dispatch and add support for batch requests [#5419](https://github.com/paritytech/parity/pull/5419)
|
||||||
|
- Use default account for sending transactions [#5588](https://github.com/paritytech/parity/pull/5588)
|
||||||
|
- Add peer management to the Status tab [#5566](https://github.com/paritytech/parity/pull/5566)
|
||||||
|
- Add monotonic step transition [#5587](https://github.com/paritytech/parity/pull/5587)
|
||||||
|
- Decrypting for external accounts. [#5581](https://github.com/paritytech/parity/pull/5581)
|
||||||
|
- only enable warp sync when engine supports it [#5595](https://github.com/paritytech/parity/pull/5595)
|
||||||
|
- fix the doc of installing rust [#5586](https://github.com/paritytech/parity/pull/5586)
|
||||||
|
- Small fixes [#5584](https://github.com/paritytech/parity/pull/5584)
|
||||||
|
- SecretStore: remove session on master node [#5545](https://github.com/paritytech/parity/pull/5545)
|
||||||
|
- run-clean [#5607](https://github.com/paritytech/parity/pull/5607)
|
||||||
|
- relicense RLP to MIT/Apache2 [#5591](https://github.com/paritytech/parity/pull/5591)
|
||||||
|
- Fix eth_sign signature encoding. [#5597](https://github.com/paritytech/parity/pull/5597)
|
||||||
|
- Check pending request on Node local transactions [#5564](https://github.com/paritytech/parity/pull/5564)
|
||||||
|
- Add tooltips on ActionBar [#5562](https://github.com/paritytech/parity/pull/5562)
|
||||||
|
- Can't deploy without compiling Contract [#5593](https://github.com/paritytech/parity/pull/5593)
|
||||||
|
- Add a warning when node is syncing [#5565](https://github.com/paritytech/parity/pull/5565)
|
||||||
|
- Update registry middleware [#5585](https://github.com/paritytech/parity/pull/5585)
|
||||||
|
- Set block condition to BigNumber in MethodDecoding [#5592](https://github.com/paritytech/parity/pull/5592)
|
||||||
|
- Load the sources immediately in Contract Dev [#5575](https://github.com/paritytech/parity/pull/5575)
|
||||||
|
- Remove formal verification messages in Dev Contract [#5574](https://github.com/paritytech/parity/pull/5574)
|
||||||
|
- Fix event params decoding when no names for parameters [#5567](https://github.com/paritytech/parity/pull/5567)
|
||||||
|
- Do not convert to Dates twice [#5563](https://github.com/paritytech/parity/pull/5563)
|
||||||
|
- Fix Multisig wallet settings [#5560](https://github.com/paritytech/parity/pull/5560)
|
||||||
|
- Typo [#5547](https://github.com/paritytech/parity/pull/5547)
|
||||||
|
- Generic PubSub implementation [#5456](https://github.com/paritytech/parity/pull/5456)
|
||||||
|
- Fix CI paths. [#5570](https://github.com/paritytech/parity/pull/5570)
|
||||||
|
- reorg into blocks before minimum history [#5558](https://github.com/paritytech/parity/pull/5558)
|
||||||
|
- EIP-86 update [#5506](https://github.com/paritytech/parity/pull/5506)
|
||||||
|
- Secretstore RPCs + integration [#5439](https://github.com/paritytech/parity/pull/5439)
|
||||||
|
- Fixes Parity Bar position [#5557](https://github.com/paritytech/parity/pull/5557)
|
||||||
|
- Fixes invalid log in BadgeReg events [#5556](https://github.com/paritytech/parity/pull/5556)
|
||||||
|
- Fix issues in Contract Development view [#5555](https://github.com/paritytech/parity/pull/5555)
|
||||||
|
- Added missing methods [#5542](https://github.com/paritytech/parity/pull/5542)
|
||||||
|
- option to disable persistent txqueue [#5544](https://github.com/paritytech/parity/pull/5544)
|
||||||
|
- Bump jsonrpc [#5552](https://github.com/paritytech/parity/pull/5552)
|
||||||
|
- Retrieve block headers only for header-only info [#5480](https://github.com/paritytech/parity/pull/5480)
|
||||||
|
- add snap to CI [#5519](https://github.com/paritytech/parity/pull/5519)
|
||||||
|
- Pass additional data when reporting [#5527](https://github.com/paritytech/parity/pull/5527)
|
||||||
|
- Calculate post-constructors state root in spec at load time [#5523](https://github.com/paritytech/parity/pull/5523)
|
||||||
|
- Fix utf8 decoding [#5533](https://github.com/paritytech/parity/pull/5533)
|
||||||
|
- Add CHANGELOG.md [#5513](https://github.com/paritytech/parity/pull/5513)
|
||||||
|
- Change all occurrences of ethcore.io into parity.io [#5528](https://github.com/paritytech/parity/pull/5528)
|
||||||
|
- Memory usage optimization [#5526](https://github.com/paritytech/parity/pull/5526)
|
||||||
|
- Compose transaction RPC. [#5524](https://github.com/paritytech/parity/pull/5524)
|
||||||
|
- Support external eth_sign [#5481](https://github.com/paritytech/parity/pull/5481)
|
||||||
|
- Treat block numbers as strings, not BigNums. [#5449](https://github.com/paritytech/parity/pull/5449)
|
||||||
|
- npm cleanups [#5512](https://github.com/paritytech/parity/pull/5512)
|
||||||
|
- Export acc js [#4973](https://github.com/paritytech/parity/pull/4973)
|
||||||
|
- YARN [#5395](https://github.com/paritytech/parity/pull/5395)
|
||||||
|
- Fix linting issues [#5511](https://github.com/paritytech/parity/pull/5511)
|
||||||
|
- Chinese Translation [#5460](https://github.com/paritytech/parity/pull/5460)
|
||||||
|
- Fixing secretstore TODOs - part 2 [#5416](https://github.com/paritytech/parity/pull/5416)
|
||||||
|
- fix json format of state snapshot [#5504](https://github.com/paritytech/parity/pull/5504)
|
||||||
|
- Bump jsonrpc version [#5489](https://github.com/paritytech/parity/pull/5489)
|
||||||
|
- Groundwork for generalized warp sync [#5454](https://github.com/paritytech/parity/pull/5454)
|
||||||
|
- Add the packaging metadata to build the parity snap [#5496](https://github.com/paritytech/parity/pull/5496)
|
||||||
|
- Cancel tx JS [#4958](https://github.com/paritytech/parity/pull/4958)
|
||||||
|
- EIP-212 (bn128 curve pairing) [#5307](https://github.com/paritytech/parity/pull/5307)
|
||||||
|
- fix panickers in tree-route [#5479](https://github.com/paritytech/parity/pull/5479)
|
||||||
|
- Update links to etherscan.io [#5455](https://github.com/paritytech/parity/pull/5455)
|
||||||
|
- Refresh UI on nodeKind changes, e.g. personal -> public [#5312](https://github.com/paritytech/parity/pull/5312)
|
||||||
|
- Correct contract address for EIP-86 [#5473](https://github.com/paritytech/parity/pull/5473)
|
||||||
|
- Force two decimals for USD conversion rate [#5471](https://github.com/paritytech/parity/pull/5471)
|
||||||
|
- Refactoring of Tokens & Balances [#5372](https://github.com/paritytech/parity/pull/5372)
|
||||||
|
- Background-repeat round [#5475](https://github.com/paritytech/parity/pull/5475)
|
||||||
|
- nl i18n updated [#5461](https://github.com/paritytech/parity/pull/5461)
|
||||||
|
- Show ETH value (even 0) if ETH transfer in transaction list [#5406](https://github.com/paritytech/parity/pull/5406)
|
||||||
|
- Store the pending requests per network version [#5405](https://github.com/paritytech/parity/pull/5405)
|
||||||
|
- Use in-memory database for tests [#5451](https://github.com/paritytech/parity/pull/5451)
|
||||||
|
- WebSockets RPC server [#5425](https://github.com/paritytech/parity/pull/5425)
|
||||||
|
- Added missing docs [#5452](https://github.com/paritytech/parity/pull/5452)
|
||||||
|
- Tests and tweaks for public node middleware [#5417](https://github.com/paritytech/parity/pull/5417)
|
||||||
|
- Fix removal of hash-mismatched files. [#5440](https://github.com/paritytech/parity/pull/5440)
|
||||||
|
- parity_getBlockHeaderByNumber and LightFetch utility [#5383](https://github.com/paritytech/parity/pull/5383)
|
||||||
|
- New state tests [#5418](https://github.com/paritytech/parity/pull/5418)
|
||||||
|
- Fix buffer length for QR code gen. [#5447](https://github.com/paritytech/parity/pull/5447)
|
||||||
|
- Add raw hash signing [#5423](https://github.com/paritytech/parity/pull/5423)
|
||||||
|
- Filters and block RPCs for the light client [#5320](https://github.com/paritytech/parity/pull/5320)
|
||||||
|
- Work around mismatch for QR checksum [#5374](https://github.com/paritytech/parity/pull/5374)
|
||||||
|
- easy to use conversion from and to string for ethstore::Crypto [#5437](https://github.com/paritytech/parity/pull/5437)
|
||||||
|
- Tendermint fixes [#5415](https://github.com/paritytech/parity/pull/5415)
|
||||||
|
- Adrianbrink lightclientcache branch. [#5428](https://github.com/paritytech/parity/pull/5428)
|
||||||
|
- Add caching to HeaderChain struct [#5403](https://github.com/paritytech/parity/pull/5403)
|
||||||
|
- Add decryption to the UI (in the Signer) [#5422](https://github.com/paritytech/parity/pull/5422)
|
||||||
|
- Add CIDv0 RPC [#5414](https://github.com/paritytech/parity/pull/5414)
|
||||||
|
- Updating documentation for RPCs [#5392](https://github.com/paritytech/parity/pull/5392)
|
||||||
|
- Fixing secretstore TODOs - part 1 [#5386](https://github.com/paritytech/parity/pull/5386)
|
||||||
|
- Fixing disappearing content. [#5399](https://github.com/paritytech/parity/pull/5399)
|
||||||
|
- Snapshot chunks packed by size [#5318](https://github.com/paritytech/parity/pull/5318)
|
||||||
|
- APIs wildcards and simple arithmetic. [#5402](https://github.com/paritytech/parity/pull/5402)
|
||||||
|
- Fixing compilation without dapps. [#5410](https://github.com/paritytech/parity/pull/5410)
|
||||||
|
- Don't use port 8080 anymore [#5397](https://github.com/paritytech/parity/pull/5397)
|
||||||
|
- Quick'n'dirty CLI for the light client [#5002](https://github.com/paritytech/parity/pull/5002)
|
||||||
|
- set gas limit before proving transactions [#5401](https://github.com/paritytech/parity/pull/5401)
|
||||||
|
- Public node: perf and fixes [#5390](https://github.com/paritytech/parity/pull/5390)
|
||||||
|
- Straight download path in the readme [#5393](https://github.com/paritytech/parity/pull/5393)
|
||||||
|
- On-chain ACL checker for secretstore [#5015](https://github.com/paritytech/parity/pull/5015)
|
||||||
|
- Allow empty-encoded values from QR encoding [#5385](https://github.com/paritytech/parity/pull/5385)
|
||||||
|
- Update npm build for new inclusions [#5381](https://github.com/paritytech/parity/pull/5381)
|
||||||
|
- Fix for Ubuntu Dockerfile [#5356](https://github.com/paritytech/parity/pull/5356)
|
||||||
|
- Secretstore over network [#4974](https://github.com/paritytech/parity/pull/4974)
|
||||||
|
- Dapps and RPC server merge [#5365](https://github.com/paritytech/parity/pull/5365)
|
||||||
|
- trigger js build release [#5379](https://github.com/paritytech/parity/pull/5379)
|
||||||
|
- Update expanse json with fork at block 600000 [#5351](https://github.com/paritytech/parity/pull/5351)
|
||||||
|
- Futures-based native wrappers for contract ABIs [#5341](https://github.com/paritytech/parity/pull/5341)
|
||||||
|
- Kovan warp sync fixed [#5337](https://github.com/paritytech/parity/pull/5337)
|
||||||
|
- Aura eip155 validation transition [#5362](https://github.com/paritytech/parity/pull/5362)
|
||||||
|
- Shared wordlist for brain wallets [#5331](https://github.com/paritytech/parity/pull/5331)
|
||||||
|
- Allow signing via Qr [#4881](https://github.com/paritytech/parity/pull/4881)
|
||||||
|
- Allow entry of url or hash for DappReg meta [#5360](https://github.com/paritytech/parity/pull/5360)
|
||||||
|
- Adjust tx overlay colours [#5353](https://github.com/paritytech/parity/pull/5353)
|
||||||
|
- Add ability to disallow API subscriptions [#5366](https://github.com/paritytech/parity/pull/5366)
|
||||||
|
- EIP-213 (bn128 curve operations) [#4999](https://github.com/paritytech/parity/pull/4999)
|
||||||
|
- Fix analize output file name [#5357](https://github.com/paritytech/parity/pull/5357)
|
||||||
|
- Add default eip155 validation [#5346](https://github.com/paritytech/parity/pull/5346)
|
||||||
|
- Add new seed nodes for Classic chain [#5345](https://github.com/paritytech/parity/pull/5345)
|
||||||
|
- Shared wordlist for frontend [#5336](https://github.com/paritytech/parity/pull/5336)
|
||||||
|
- fix rpc tests [#5338](https://github.com/paritytech/parity/pull/5338)
|
||||||
|
- Public node with accounts and signing in Frontend [#5304](https://github.com/paritytech/parity/pull/5304)
|
||||||
|
- Rename Status/Status -> Status/NodeStatus [#5332](https://github.com/paritytech/parity/pull/5332)
|
||||||
|
- Updating paths to repos. [#5330](https://github.com/paritytech/parity/pull/5330)
|
||||||
|
- Separate status for canceled local transactions. [#5319](https://github.com/paritytech/parity/pull/5319)
|
||||||
|
- Cleanup the Status View [#5317](https://github.com/paritytech/parity/pull/5317)
|
||||||
|
- Update UI minimised requests [#5324](https://github.com/paritytech/parity/pull/5324)
|
||||||
|
- Order signer transactions FIFO [#5321](https://github.com/paritytech/parity/pull/5321)
|
||||||
|
- updating dependencies [#5028](https://github.com/paritytech/parity/pull/5028)
|
||||||
|
- Minimise transactions progress [#4942](https://github.com/paritytech/parity/pull/4942)
|
||||||
|
- Fix eth_sign showing as wallet account [#5309](https://github.com/paritytech/parity/pull/5309)
|
||||||
|
- Ropsten revival [#5302](https://github.com/paritytech/parity/pull/5302)
|
||||||
|
- Strict validation transitions [#4988](https://github.com/paritytech/parity/pull/4988)
|
||||||
|
- Fix default list sorting [#5303](https://github.com/paritytech/parity/pull/5303)
|
||||||
|
- Use unique owners for multisig wallets [#5298](https://github.com/paritytech/parity/pull/5298)
|
||||||
|
- Copy all existing i18n strings into zh (as-is translation aid) [#5305](https://github.com/paritytech/parity/pull/5305)
|
||||||
|
- Fix booleans in Typedinput [#5295](https://github.com/paritytech/parity/pull/5295)
|
||||||
|
- node kind RPC [#5025](https://github.com/paritytech/parity/pull/5025)
|
||||||
|
- Fix the use of MobX in playground [#5294](https://github.com/paritytech/parity/pull/5294)
|
||||||
|
- Fine grained snapshot chunking [#5019](https://github.com/paritytech/parity/pull/5019)
|
||||||
|
- Add lint:i18n to find missing & extra keys [#5290](https://github.com/paritytech/parity/pull/5290)
|
||||||
|
- Scaffolding for zh translations, including first-round by @btceth [#5289](https://github.com/paritytech/parity/pull/5289)
|
||||||
|
- JS package bumps [#5287](https://github.com/paritytech/parity/pull/5287)
|
||||||
|
- Auto-extract new i18n strings (update) [#5288](https://github.com/paritytech/parity/pull/5288)
|
||||||
|
- eip100b [#5027](https://github.com/paritytech/parity/pull/5027)
|
||||||
|
- Set earliest era in snapshot restoration [#5021](https://github.com/paritytech/parity/pull/5021)
|
||||||
|
- Avoid clogging up tmp when updater dir has bad permissions. [#5024](https://github.com/paritytech/parity/pull/5024)
|
||||||
|
- Resilient warp sync [#5018](https://github.com/paritytech/parity/pull/5018)
|
||||||
|
- Create webpack analysis files (size) [#5009](https://github.com/paritytech/parity/pull/5009)
|
||||||
|
- Dispatch an open event on drag of Parity Bar [#4987](https://github.com/paritytech/parity/pull/4987)
|
||||||
|
- Various installer and tray apps fixes [#4970](https://github.com/paritytech/parity/pull/4970)
|
||||||
|
- Export account RPC [#4967](https://github.com/paritytech/parity/pull/4967)
|
||||||
|
- Switching ValidatorSet [#4961](https://github.com/paritytech/parity/pull/4961)
|
||||||
|
- Implement PIP messages, request builder, and handlers [#4945](https://github.com/paritytech/parity/pull/4945)
|
||||||
|
- auto lint [#5003](https://github.com/paritytech/parity/pull/5003)
|
||||||
|
- Fix FireFox overflows [#5000](https://github.com/paritytech/parity/pull/5000)
|
||||||
|
- Show busy indicator, focus first field in password change [#4997](https://github.com/paritytech/parity/pull/4997)
|
||||||
|
- Consistent store naming in the Signer components [#4996](https://github.com/paritytech/parity/pull/4996)
|
||||||
|
- second (and last) part of rlp refactor [#4901](https://github.com/paritytech/parity/pull/4901)
|
||||||
|
- Double click to select account creation type [#4986](https://github.com/paritytech/parity/pull/4986)
|
||||||
|
- Fixes to the Registry dapp [#4984](https://github.com/paritytech/parity/pull/4984)
|
||||||
|
- Extend api.util [#4979](https://github.com/paritytech/parity/pull/4979)
|
||||||
|
- Updating JSON-RPC crates [#4934](https://github.com/paritytech/parity/pull/4934)
|
||||||
|
- splitting part of util into smaller crates [#4956](https://github.com/paritytech/parity/pull/4956)
|
||||||
|
- Updating syntex et al [#4983](https://github.com/paritytech/parity/pull/4983)
|
||||||
|
- EIP198 and built-in activation [#4926](https://github.com/paritytech/parity/pull/4926)
|
||||||
|
- Fix MethodDecoding for Arrays [#4977](https://github.com/paritytech/parity/pull/4977)
|
||||||
|
- Try to fix WS race condition connection [#4976](https://github.com/paritytech/parity/pull/4976)
|
||||||
|
- eth_sign where account === undefined [#4964](https://github.com/paritytech/parity/pull/4964)
|
||||||
|
- Fix references to api outside of `parity.js` [#4981](https://github.com/paritytech/parity/pull/4981)
|
||||||
|
- Fix Password Dialog form overflow [#4968](https://github.com/paritytech/parity/pull/4968)
|
||||||
|
- Changing Mutex into RwLock for transaction queue [#4951](https://github.com/paritytech/parity/pull/4951)
|
||||||
|
- Disable max seal period for external sealing [#4927](https://github.com/paritytech/parity/pull/4927)
|
||||||
|
- Attach hardware wallets already in addressbook [#4912](https://github.com/paritytech/parity/pull/4912)
|
||||||
|
- rlp serialization refactor [#4873](https://github.com/paritytech/parity/pull/4873)
|
||||||
|
- Bump nanomsg [#4965](https://github.com/paritytech/parity/pull/4965)
|
||||||
|
- Fixed multi-chunk ledger transactions on windows [#4960](https://github.com/paritytech/parity/pull/4960)
|
||||||
|
- Fix outputs in Contract Constant Queries [#4953](https://github.com/paritytech/parity/pull/4953)
|
||||||
|
- systemd: Start parity after network.target [#4952](https://github.com/paritytech/parity/pull/4952)
|
||||||
|
- Remove transaction RPC [#4949](https://github.com/paritytech/parity/pull/4949)
|
||||||
|
- Swap out ethcore.io url for parity.io [#4947](https://github.com/paritytech/parity/pull/4947)
|
||||||
|
- Don't remove confirmed requests to early. [#4933](https://github.com/paritytech/parity/pull/4933)
|
||||||
|
- Ensure sealing work enabled in miner once subscribers added [#4930](https://github.com/paritytech/parity/pull/4930)
|
||||||
|
- Add z-index to small modals as well [#4923](https://github.com/paritytech/parity/pull/4923)
|
||||||
|
- Bump nanomsg [#4946](https://github.com/paritytech/parity/pull/4946)
|
||||||
|
- Bumping multihash and libc [#4943](https://github.com/paritytech/parity/pull/4943)
|
||||||
|
- Edit ETH value, gas and gas price in Contract Deployment [#4919](https://github.com/paritytech/parity/pull/4919)
|
||||||
|
- Add ability to configure Secure API [#4922](https://github.com/paritytech/parity/pull/4922)
|
||||||
|
- Add Token image from URL [#4916](https://github.com/paritytech/parity/pull/4916)
|
||||||
|
- Use the registry fee in Token Deployment dapp [#4915](https://github.com/paritytech/parity/pull/4915)
|
||||||
|
- Add reseal max period [#4903](https://github.com/paritytech/parity/pull/4903)
|
||||||
|
- Detect rust compiler version in Parity build script, closes 4742 [#4907](https://github.com/paritytech/parity/pull/4907)
|
||||||
|
- Add Vaults logic to First Run [#4914](https://github.com/paritytech/parity/pull/4914)
|
||||||
|
- Updated gcc and rayon crates to remove outdated num_cpus dependency [#4909](https://github.com/paritytech/parity/pull/4909)
|
||||||
|
- Renaming evm binary to avoid conflicts. [#4899](https://github.com/paritytech/parity/pull/4899)
|
||||||
|
- Better error handling for traces RPC [#4849](https://github.com/paritytech/parity/pull/4849)
|
||||||
|
- Safari SectionList fix [#4895](https://github.com/paritytech/parity/pull/4895)
|
||||||
|
- Safari Dialog scrolling fix [#4893](https://github.com/paritytech/parity/pull/4893)
|
||||||
|
- Spelling :) [#4900](https://github.com/paritytech/parity/pull/4900)
|
||||||
|
- Additional kovan params [#4892](https://github.com/paritytech/parity/pull/4892)
|
||||||
|
- trigger js-precompiled build [#4898](https://github.com/paritytech/parity/pull/4898)
|
||||||
|
- Recalculate receipt roots in close_and_lock [#4884](https://github.com/paritytech/parity/pull/4884)
|
||||||
|
- Reload UI on network switch [#4864](https://github.com/paritytech/parity/pull/4864)
|
||||||
|
- Update parity-ui-precompiled with branch [#4850](https://github.com/paritytech/parity/pull/4850)
|
||||||
|
- OSX Installer is no longer experimental [#4882](https://github.com/paritytech/parity/pull/4882)
|
||||||
|
- Chain-selection from UI [#4859](https://github.com/paritytech/parity/pull/4859)
|
||||||
|
- removed redundant (and unused) FromJson trait [#4871](https://github.com/paritytech/parity/pull/4871)
|
||||||
|
- fix typos and grammar [#4880](https://github.com/paritytech/parity/pull/4880)
|
||||||
|
- Remove old experimental remote-db code [#4872](https://github.com/paritytech/parity/pull/4872)
|
||||||
|
- removed redundant FixedHash trait, fixes [#4029](https://github.com/paritytech/parity/issues/4029) [#4866](https://github.com/paritytech/parity/pull/4866)
|
||||||
|
- Reference JSON-RPC more changes-friendly [#4870](https://github.com/paritytech/parity/pull/4870)
|
||||||
|
- Better handling of Solidity compliation [#4860](https://github.com/paritytech/parity/pull/4860)
|
||||||
|
- Go through contract links in Transaction List display [#4863](https://github.com/paritytech/parity/pull/4863)
|
||||||
|
- Fix Gas Price Selector Tooltips [#4865](https://github.com/paritytech/parity/pull/4865)
|
||||||
|
- Fix auto-updater [#4867](https://github.com/paritytech/parity/pull/4867)
|
||||||
|
- Make the UI work offline [#4861](https://github.com/paritytech/parity/pull/4861)
|
||||||
|
- Subscribe to accounts info in Signer / ParityBar [#4856](https://github.com/paritytech/parity/pull/4856)
|
||||||
|
- Don't link libsnappy explicitly [#4841](https://github.com/paritytech/parity/pull/4841)
|
||||||
|
- Fix paste in Inputs [#4854](https://github.com/paritytech/parity/pull/4854)
|
||||||
|
- Extract i18n from shared UI components [#4834](https://github.com/paritytech/parity/pull/4834)
|
||||||
|
- Fix paste in Inputs [#4844](https://github.com/paritytech/parity/pull/4844)
|
||||||
|
- Pull contract deployment title from available steps [#4848](https://github.com/paritytech/parity/pull/4848)
|
||||||
|
- Supress USB error message [#4839](https://github.com/paritytech/parity/pull/4839)
|
||||||
|
- Fix getTransactionCount in --geth mode [#4837](https://github.com/paritytech/parity/pull/4837)
|
||||||
|
- CI: test coverage (for core and js) [#4832](https://github.com/paritytech/parity/pull/4832)
|
||||||
|
- Lowering threshold for transactions above gas limit [#4831](https://github.com/paritytech/parity/pull/4831)
|
||||||
|
- Fix TxViewer when no `to` (contract deployment) [#4847](https://github.com/paritytech/parity/pull/4847)
|
||||||
|
- Fix method decoding [#4845](https://github.com/paritytech/parity/pull/4845)
|
||||||
|
- Add React Hot Reload to dapps + TokenDeploy fix [#4846](https://github.com/paritytech/parity/pull/4846)
|
||||||
|
- Dapps show multiple times in some cases [#4843](https://github.com/paritytech/parity/pull/4843)
|
||||||
|
- Fixes to the Registry dapp [#4838](https://github.com/paritytech/parity/pull/4838)
|
||||||
|
- Show token icons on list summary pages [#4826](https://github.com/paritytech/parity/pull/4826)
|
||||||
|
- Calibrate step before rejection [#4800](https://github.com/paritytech/parity/pull/4800)
|
||||||
|
- Add replay protection [#4808](https://github.com/paritytech/parity/pull/4808)
|
||||||
|
- Better icon on windows [#4804](https://github.com/paritytech/parity/pull/4804)
|
||||||
|
- Better logic for contract deployments detection [#4821](https://github.com/paritytech/parity/pull/4821)
|
||||||
|
- Fix wrong default values for contract queries inputs [#4819](https://github.com/paritytech/parity/pull/4819)
|
||||||
|
- Adjust selection colours/display [#4811](https://github.com/paritytech/parity/pull/4811)
|
||||||
|
- Update the Wallet Library Registry key [#4817](https://github.com/paritytech/parity/pull/4817)
|
||||||
|
- Update Wallet to new Wallet Code [#4805](https://github.com/paritytech/parity/pull/4805)
|
||||||
|
|
||||||
|
## Parity [v1.6.9](https://github.com/paritytech/parity/releases/tag/v1.6.9) (2017-07-16)
|
||||||
|
|
||||||
|
This is a first stable release of 1.6 series. It contains a number of minor fixes and introduces the `--reseal-on-uncles` option for miners.
|
||||||
|
|
||||||
|
Full list of changes:
|
||||||
|
|
||||||
|
- Backports [#6061](https://github.com/paritytech/parity/pull/6061)
|
||||||
|
- Ethereum Classic Monetary Policy [#5741](https://github.com/paritytech/parity/pull/5741)
|
||||||
|
- Update rewards for uncle miners for ECIP1017
|
||||||
|
- Fix an off-by-one error in ECIP1017 era calculation
|
||||||
|
- `ecip1017_era_rounds` missing from EthashParams when run in build bot
|
||||||
|
- strip out ecip1017_eras_block_reward function and add unit test
|
||||||
|
- JS precompiled set to stable
|
||||||
|
- Backports [#6060](https://github.com/paritytech/parity/pull/6060)
|
||||||
|
- --reseal-on-uncle [#5940](https://github.com/paritytech/parity/pull/5940)
|
||||||
|
- Optimized uncle check
|
||||||
|
- Additional uncle check
|
||||||
|
- Updated comment
|
||||||
|
- Bump to v1.6.9
|
||||||
|
- CLI: Export error message and less verbose peer counter. [#5870](https://github.com/paritytech/parity/pull/5870)
|
||||||
|
- Removed numbed of active connections from informant
|
||||||
|
- Print error message when fatdb is required
|
||||||
|
- Remove peers from UI
|
||||||
|
|
||||||
## Parity [v1.6.8](https://github.com/paritytech/parity/releases/tag/v1.6.8) (2017-06-08)
|
## Parity [v1.6.8](https://github.com/paritytech/parity/releases/tag/v1.6.8) (2017-06-08)
|
||||||
|
|
||||||
This release addresses:
|
This release addresses:
|
||||||
|
27
Cargo.lock
generated
27
Cargo.lock
generated
@ -316,6 +316,11 @@ name = "crossbeam"
|
|||||||
version = "0.2.10"
|
version = "0.2.10"
|
||||||
source = "registry+https://github.com/rust-lang/crates.io-index"
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
|
||||||
|
[[package]]
|
||||||
|
name = "crunchy"
|
||||||
|
version = "0.1.3"
|
||||||
|
source = "registry+https://github.com/rust-lang/crates.io-index"
|
||||||
|
|
||||||
[[package]]
|
[[package]]
|
||||||
name = "crypt32-sys"
|
name = "crypt32-sys"
|
||||||
version = "0.2.0"
|
version = "0.2.0"
|
||||||
@ -445,6 +450,7 @@ dependencies = [
|
|||||||
name = "ethash"
|
name = "ethash"
|
||||||
version = "1.8.0"
|
version = "1.8.0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
|
"crunchy 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"log 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
"log 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"parking_lot 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
"parking_lot 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"primal 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
"primal 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
@ -1169,7 +1175,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-core"
|
name = "jsonrpc-core"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"futures 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
"futures 0.1.11 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"log 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
"log 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
@ -1181,7 +1187,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-http-server"
|
name = "jsonrpc-http-server"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"hyper 0.10.0-a.0 (git+https://github.com/paritytech/hyper)",
|
"hyper 0.10.0-a.0 (git+https://github.com/paritytech/hyper)",
|
||||||
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
@ -1194,7 +1200,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-ipc-server"
|
name = "jsonrpc-ipc-server"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
@ -1207,7 +1213,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-macros"
|
name = "jsonrpc-macros"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
"jsonrpc-pubsub 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-pubsub 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
@ -1217,7 +1223,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-minihttp-server"
|
name = "jsonrpc-minihttp-server"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
@ -1232,7 +1238,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-pubsub"
|
name = "jsonrpc-pubsub"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
"log 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
"log 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
@ -1242,7 +1248,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-server-utils"
|
name = "jsonrpc-server-utils"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"globset 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
"globset 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
@ -1255,7 +1261,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-tcp-server"
|
name = "jsonrpc-tcp-server"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
"bytes 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
@ -1269,7 +1275,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "jsonrpc-ws-server"
|
name = "jsonrpc-ws-server"
|
||||||
version = "7.0.0"
|
version = "7.0.0"
|
||||||
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#5e79be8a098cdda221713992f4a46b41a1d4d8f0"
|
source = "git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7#4d3ec22c7aba426988a678b489b2791e95283699"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-core 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
"jsonrpc-server-utils 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
"jsonrpc-server-utils 7.0.0 (git+https://github.com/paritytech/jsonrpc.git?branch=parity-1.7)",
|
||||||
@ -2003,7 +2009,7 @@ dependencies = [
|
|||||||
[[package]]
|
[[package]]
|
||||||
name = "parity-ui-precompiled"
|
name = "parity-ui-precompiled"
|
||||||
version = "1.4.0"
|
version = "1.4.0"
|
||||||
source = "git+https://github.com/paritytech/js-precompiled.git#b4c17fb0478fc9655ca373637816ee6e325da0d7"
|
source = "git+https://github.com/paritytech/js-precompiled.git#fef524b2c679407d32a9ddef3af5dced97cdd3d0"
|
||||||
dependencies = [
|
dependencies = [
|
||||||
"parity-dapps-glue 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
"parity-dapps-glue 1.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
|
||||||
]
|
]
|
||||||
@ -3180,6 +3186,7 @@ dependencies = [
|
|||||||
"checksum core-foundation 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "20a6d0448d3a99d977ae4a2aa5a98d886a923e863e81ad9ff814645b6feb3bbd"
|
"checksum core-foundation 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "20a6d0448d3a99d977ae4a2aa5a98d886a923e863e81ad9ff814645b6feb3bbd"
|
||||||
"checksum core-foundation-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "05eed248dc504a5391c63794fe4fb64f46f071280afaa1b73308f3c0ce4574c5"
|
"checksum core-foundation-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "05eed248dc504a5391c63794fe4fb64f46f071280afaa1b73308f3c0ce4574c5"
|
||||||
"checksum crossbeam 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "0c5ea215664ca264da8a9d9c3be80d2eaf30923c259d03e870388eb927508f97"
|
"checksum crossbeam 0.2.10 (registry+https://github.com/rust-lang/crates.io-index)" = "0c5ea215664ca264da8a9d9c3be80d2eaf30923c259d03e870388eb927508f97"
|
||||||
|
"checksum crunchy 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e6aa9cb5f2d7bffc4eecfaf924fe450549dc4f0c3a6502298dc24f968b1eabbe"
|
||||||
"checksum crypt32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e34988f7e069e0b2f3bfc064295161e489b2d4e04a2e4248fb94360cdf00b4ec"
|
"checksum crypt32-sys 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e34988f7e069e0b2f3bfc064295161e489b2d4e04a2e4248fb94360cdf00b4ec"
|
||||||
"checksum ctrlc 1.1.1 (git+https://github.com/paritytech/rust-ctrlc.git)" = "<none>"
|
"checksum ctrlc 1.1.1 (git+https://github.com/paritytech/rust-ctrlc.git)" = "<none>"
|
||||||
"checksum custom_derive 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9"
|
"checksum custom_derive 0.1.7 (registry+https://github.com/rust-lang/crates.io-index)" = "ef8ae57c4978a2acd8b869ce6b9ca1dfe817bff704c220209fdef2c0b75a01b9"
|
||||||
|
@ -3,7 +3,7 @@
|
|||||||
|
|
||||||
### [Download latest release](https://github.com/paritytech/parity/releases)
|
### [Download latest release](https://github.com/paritytech/parity/releases)
|
||||||
|
|
||||||
[![build status](https://gitlab.parity.io/parity/parity/badges/master/build.svg)](https://gitlab.parity.io/parity/parity/commits/master) [![Coverage Status][coveralls-image]][coveralls-url] [![GPLv3][license-image]][license-url]
|
[![build status](https://gitlab.parity.io/parity/parity/badges/master/build.svg)](https://gitlab.parity.io/parity/parity/commits/master) [![Coverage Status][coveralls-image]][coveralls-url] [![GPLv3][license-image]][license-url] [![Snap Status](https://build.snapcraft.io/badge/paritytech/parity.svg)](https://build.snapcraft.io/user/paritytech/parity)
|
||||||
|
|
||||||
### Join the chat!
|
### Join the chat!
|
||||||
|
|
||||||
@ -46,6 +46,8 @@ of RPC APIs.
|
|||||||
If you run into an issue while using parity, feel free to file one in this repository
|
If you run into an issue while using parity, feel free to file one in this repository
|
||||||
or hop on our [gitter chat room][gitter-url] to ask a question. We are glad to help!
|
or hop on our [gitter chat room][gitter-url] to ask a question. We are glad to help!
|
||||||
|
|
||||||
|
**For security-critical issues**, please refer to the security policy outlined in `SECURITY.MD`.
|
||||||
|
|
||||||
Parity's current release is 1.6. You can download it at https://github.com/paritytech/parity/releases or follow the instructions
|
Parity's current release is 1.6. You can download it at https://github.com/paritytech/parity/releases or follow the instructions
|
||||||
below to build from source.
|
below to build from source.
|
||||||
|
|
||||||
|
44
SECURITY.md
Normal file
44
SECURITY.md
Normal file
@ -0,0 +1,44 @@
|
|||||||
|
# Security Policy
|
||||||
|
|
||||||
|
For security inquiries or vulnerability reports, please send a message to security@parity.io.
|
||||||
|
|
||||||
|
Please use a descriptive subject line so we can identify the report as such.
|
||||||
|
|
||||||
|
If you send a report, we will respond to the e-mail within 48 hours, and provide regular updates from that time onwards.
|
||||||
|
|
||||||
|
If you would like to encrypt your report, please use the PGP key provided below.
|
||||||
|
It is also reproduced [on MIT's key server](https://pgp.mit.edu/pks/lookup?op=get&search=0x5D0F03018D07DE73)
|
||||||
|
|
||||||
|
```
|
||||||
|
-----BEGIN PGP PUBLIC KEY BLOCK-----
|
||||||
|
|
||||||
|
mQENBFlyIAwBCACe0keNPjgYzZ1Oy/8t3zj/Qw9bHHqrzx7FWy8NbXnYBM19NqOZ
|
||||||
|
DIP7Oe0DvCaf/uruBskCS0iVstHlEFQ2AYe0Ei0REt9lQdy61GylU/DEB3879IG+
|
||||||
|
6FO0SnFeYeerv1/hFI2K6uv8v7PyyVDiiJSW0I1KIs2OBwJicTKmWxLAeQsRgx9G
|
||||||
|
yRGalrVk4KP+6pWTA7k3DxmDZKZyfYV/Ej10NtuzmsemwDbv98HKeomp/kgFOfSy
|
||||||
|
3AZjeCpctlsNqpjUuXa0/HudmH2WLxZ0fz8XeoRh8XM9UudNIecjrDqmAFrt/btQ
|
||||||
|
/3guvlzhFCdhYPVGsUusKMECk/JG+Xx1/1ZjABEBAAG0LFBhcml0eSBTZWN1cml0
|
||||||
|
eSBDb250YWN0IDxzZWN1cml0eUBwYXJpdHkuaW8+iQFUBBMBCAA+FiEE2uUVYCjP
|
||||||
|
N6B8aTiDXQ8DAY0H3nMFAllyIAwCGwMFCQPCZwAFCwkIBwIGFQgJCgsCBBYCAwEC
|
||||||
|
HgECF4AACgkQXQ8DAY0H3nM60wgAkS3A36Zc+upiaxU7tumcGv+an17j7gin0sif
|
||||||
|
+0ELSjVfrXInM6ovai+NhUdcLkJ7tCrKS90fvlaELK5Sg9CXBWCTFccKN4A/B7ey
|
||||||
|
rOg2NPXUecnyBB/XqQgKYH7ujYlOlqBDXMfz6z8Hj6WToxg9PPMGGomyMGh8AWxM
|
||||||
|
3yRPFs5RKt0VKgN++5N00oly5Y8ri5pgCidDvCLYMGTVDHFKwkuc9w6BlWlu1R1e
|
||||||
|
/hXFWUFAP1ffTAul3QwyKhjPn2iotCdxXjvt48KaU8DN4iL7aMBN/ZBKqGS7yRdF
|
||||||
|
D/JbJyaaJ0ZRvFSTSXy/sWY3z1B5mtCPBxco8hqqNfRkCwuZ6LkBDQRZciAMAQgA
|
||||||
|
8BP8xrwe12TOUTqL/Vrbxv/FLdhKh53J6TrPKvC2TEEKOrTNo5ahRq+XOS5E7G2N
|
||||||
|
x3b+fq8gR9BzFcldAx0XWUtGs/Wv++ulaSNqTBxj13J3G3WGsUfMKxRgj//piCUD
|
||||||
|
bCFLQfGZdKk0M1o9QkPVARwwmvCNiNB/l++xGqPtfc44H5jWj3GoGvL2MkShPzrN
|
||||||
|
yN/bJ+m+R5gtFGdInqa5KXBuxxuW25eDKJ+LzjbgUgeC76wNcfOiQHTdMkcupjdO
|
||||||
|
bbGFwo10hcbRAOcZEv6//Zrlmk/6nPxEd2hN20St2bSN0+FqfZ267mWEu3ejsgF8
|
||||||
|
ArdCpv5h4fBvJyNwiTZwIQARAQABiQE8BBgBCAAmFiEE2uUVYCjPN6B8aTiDXQ8D
|
||||||
|
AY0H3nMFAllyIAwCGwwFCQPCZwAACgkQXQ8DAY0H3nNisggAl4fqhRlA34wIb190
|
||||||
|
sqXHVxiCuzPaqS6krE9xAa1+gncX485OtcJNqnjugHm2rFE48lv7oasviuPXuInE
|
||||||
|
/OgVFnXYv9d/Xx2JUeDs+bFTLouCDRY2Unh7KJZasfqnMcCHWcxHx5FvRNZRssaB
|
||||||
|
WTZVo6sizPurGUtbpYe4/OLFhadBqAE0EUmVRFEUMc1YTnu4eLaRBzoWN4d2UWwi
|
||||||
|
LN25RSrVSke7LTSFbgn9ntQrQ2smXSR+cdNkkfRCjFcpUaecvFl9HwIqoyVbT4Ym
|
||||||
|
0hbpbbX/cJdc91tKa+psa29uMeGL/cgL9fAu19yNFRyOTMxjZnvql1X/WE1pLmoP
|
||||||
|
ETBD1Q==
|
||||||
|
=K9Qw
|
||||||
|
-----END PGP PUBLIC KEY BLOCK-----
|
||||||
|
```
|
@ -147,13 +147,7 @@ impl RestApiRouter {
|
|||||||
HealthInfo { status, message, details, }
|
HealthInfo { status, message, details, }
|
||||||
};
|
};
|
||||||
|
|
||||||
let status = if [&peers.status, &sync.status, &time.status].iter().any(|x| *x != &HealthStatus::Ok) {
|
response::as_json(StatusCode::Ok, &Health { peers, sync, time })
|
||||||
StatusCode::PreconditionFailed // HTTP 412
|
|
||||||
} else {
|
|
||||||
StatusCode::Ok // HTTP 200
|
|
||||||
};
|
|
||||||
|
|
||||||
response::as_json(status, &Health { peers, sync, time })
|
|
||||||
};
|
};
|
||||||
|
|
||||||
let time = self.api.time.time_drift();
|
let time = self.api.time.time_drift();
|
||||||
|
@ -10,3 +10,7 @@ log = "0.3"
|
|||||||
sha3 = { path = "../util/sha3" }
|
sha3 = { path = "../util/sha3" }
|
||||||
primal = "0.2.3"
|
primal = "0.2.3"
|
||||||
parking_lot = "0.4"
|
parking_lot = "0.4"
|
||||||
|
crunchy = "0.1.0"
|
||||||
|
|
||||||
|
[features]
|
||||||
|
benches = []
|
@ -289,24 +289,55 @@ fn hash_compute(light: &Light, full_size: usize, header_hash: &H256, nonce: u64)
|
|||||||
let num_full_pages = (full_size / page_size) as u32;
|
let num_full_pages = (full_size / page_size) as u32;
|
||||||
let cache: &[Node] = &light.cache; // deref once for better performance
|
let cache: &[Node] = &light.cache; // deref once for better performance
|
||||||
|
|
||||||
for i in 0..(ETHASH_ACCESSES as u32) {
|
debug_assert_eq!(ETHASH_ACCESSES, 64);
|
||||||
let index = fnv_hash(f_mix.get_unchecked(0).as_words().get_unchecked(0) ^ i, *mix.get_unchecked(0).as_words().get_unchecked((i as usize) % MIX_WORDS)) % num_full_pages;
|
debug_assert_eq!(MIX_NODES, 2);
|
||||||
for n in 0..MIX_NODES {
|
debug_assert_eq!(NODE_WORDS, 16);
|
||||||
let tmp_node = calculate_dag_item(index * MIX_NODES as u32 + n as u32, cache);
|
|
||||||
for w in 0..NODE_WORDS {
|
unroll! {
|
||||||
*mix.get_unchecked_mut(n).as_words_mut().get_unchecked_mut(w) = fnv_hash(*mix.get_unchecked(n).as_words().get_unchecked(w), *tmp_node.as_words().get_unchecked(w));
|
// ETHASH_ACCESSES
|
||||||
|
for i_usize in 0..64 {
|
||||||
|
let i = i_usize as u32;
|
||||||
|
|
||||||
|
let index = fnv_hash(
|
||||||
|
f_mix.get_unchecked(0).as_words().get_unchecked(0) ^ i,
|
||||||
|
*mix.get_unchecked(0).as_words().get_unchecked(i as usize % MIX_WORDS)
|
||||||
|
) % num_full_pages;
|
||||||
|
|
||||||
|
unroll! {
|
||||||
|
// MIX_NODES
|
||||||
|
for n in 0..2 {
|
||||||
|
let tmp_node = calculate_dag_item(
|
||||||
|
index * MIX_NODES as u32 + n as u32,
|
||||||
|
cache,
|
||||||
|
);
|
||||||
|
|
||||||
|
unroll! {
|
||||||
|
// NODE_WORDS
|
||||||
|
for w in 0..16 {
|
||||||
|
*mix.get_unchecked_mut(n).as_words_mut().get_unchecked_mut(w) =
|
||||||
|
fnv_hash(
|
||||||
|
*mix.get_unchecked(n).as_words().get_unchecked(w),
|
||||||
|
*tmp_node.as_words().get_unchecked(w),
|
||||||
|
);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
debug_assert_eq!(MIX_WORDS / 4, 8);
|
||||||
|
|
||||||
// compress mix
|
// compress mix
|
||||||
for i in 0..(MIX_WORDS / 4) {
|
unroll! {
|
||||||
let w = i * 4;
|
for i in 0..8 {
|
||||||
let mut reduction = *mix.get_unchecked(0).as_words().get_unchecked(w + 0);
|
let w = i * 4;
|
||||||
reduction = reduction.wrapping_mul(FNV_PRIME) ^ *mix.get_unchecked(0).as_words().get_unchecked(w + 1);
|
let mut reduction = *mix.get_unchecked(0).as_words().get_unchecked(w + 0);
|
||||||
reduction = reduction.wrapping_mul(FNV_PRIME) ^ *mix.get_unchecked(0).as_words().get_unchecked(w + 2);
|
reduction = reduction.wrapping_mul(FNV_PRIME) ^ *mix.get_unchecked(0).as_words().get_unchecked(w + 1);
|
||||||
reduction = reduction.wrapping_mul(FNV_PRIME) ^ *mix.get_unchecked(0).as_words().get_unchecked(w + 3);
|
reduction = reduction.wrapping_mul(FNV_PRIME) ^ *mix.get_unchecked(0).as_words().get_unchecked(w + 2);
|
||||||
*mix.get_unchecked_mut(0).as_words_mut().get_unchecked_mut(i) = reduction;
|
reduction = reduction.wrapping_mul(FNV_PRIME) ^ *mix.get_unchecked(0).as_words().get_unchecked(w + 3);
|
||||||
|
*mix.get_unchecked_mut(0).as_words_mut().get_unchecked_mut(i) = reduction;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
let mut mix_hash = [0u8; 32];
|
let mut mix_hash = [0u8; 32];
|
||||||
@ -331,13 +362,22 @@ fn calculate_dag_item(node_index: u32, cache: &[Node]) -> Node {
|
|||||||
*ret.as_words_mut().get_unchecked_mut(0) ^= node_index;
|
*ret.as_words_mut().get_unchecked_mut(0) ^= node_index;
|
||||||
sha3::sha3_512(ret.bytes.as_mut_ptr(), ret.bytes.len(), ret.bytes.as_ptr(), ret.bytes.len());
|
sha3::sha3_512(ret.bytes.as_mut_ptr(), ret.bytes.len(), ret.bytes.as_ptr(), ret.bytes.len());
|
||||||
|
|
||||||
for i in 0..ETHASH_DATASET_PARENTS {
|
debug_assert_eq!(NODE_WORDS, 16);
|
||||||
|
for i in 0..ETHASH_DATASET_PARENTS as u32 {
|
||||||
let parent_index = fnv_hash(node_index ^ i, *ret.as_words().get_unchecked(i as usize % NODE_WORDS)) % num_parent_nodes as u32;
|
let parent_index = fnv_hash(node_index ^ i, *ret.as_words().get_unchecked(i as usize % NODE_WORDS)) % num_parent_nodes as u32;
|
||||||
let parent = cache.get_unchecked(parent_index as usize);
|
let parent = cache.get_unchecked(parent_index as usize);
|
||||||
for w in 0..NODE_WORDS {
|
|
||||||
*ret.as_words_mut().get_unchecked_mut(w) = fnv_hash(*ret.as_words().get_unchecked(w), *parent.as_words().get_unchecked(w));
|
unroll! {
|
||||||
|
for w in 0..16 {
|
||||||
|
*ret.as_words_mut().get_unchecked_mut(w) =
|
||||||
|
fnv_hash(
|
||||||
|
*ret.as_words().get_unchecked(w),
|
||||||
|
*parent.as_words().get_unchecked(w)
|
||||||
|
);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sha3::sha3_512(ret.bytes.as_mut_ptr(), ret.bytes.len(), ret.bytes.as_ptr(), ret.bytes.len());
|
sha3::sha3_512(ret.bytes.as_mut_ptr(), ret.bytes.len(), ret.bytes.as_ptr(), ret.bytes.len());
|
||||||
ret
|
ret
|
||||||
}
|
}
|
||||||
@ -359,13 +399,20 @@ fn light_new<T: AsRef<Path>>(cache_dir: T, block_number: u64) -> Light {
|
|||||||
sha3::sha3_512(nodes.get_unchecked_mut(i).bytes.as_mut_ptr(), NODE_BYTES, nodes.get_unchecked(i - 1).bytes.as_ptr(), NODE_BYTES);
|
sha3::sha3_512(nodes.get_unchecked_mut(i).bytes.as_mut_ptr(), NODE_BYTES, nodes.get_unchecked(i - 1).bytes.as_ptr(), NODE_BYTES);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
debug_assert_eq!(NODE_WORDS, 16);
|
||||||
|
|
||||||
|
// This _should_ get unrolled by the compiler, since it's not using the loop variable.
|
||||||
for _ in 0..ETHASH_CACHE_ROUNDS {
|
for _ in 0..ETHASH_CACHE_ROUNDS {
|
||||||
for i in 0..num_nodes {
|
for i in 0..num_nodes {
|
||||||
let idx = *nodes.get_unchecked_mut(i).as_words().get_unchecked(0) as usize % num_nodes;
|
let idx = *nodes.get_unchecked_mut(i).as_words().get_unchecked(0) as usize % num_nodes;
|
||||||
let mut data = nodes.get_unchecked((num_nodes - 1 + i) % num_nodes).clone();
|
let mut data = nodes.get_unchecked((num_nodes - 1 + i) % num_nodes).clone();
|
||||||
for w in 0..NODE_WORDS {
|
|
||||||
*data.as_words_mut().get_unchecked_mut(w) ^= *nodes.get_unchecked(idx).as_words().get_unchecked(w);
|
unroll! {
|
||||||
|
for w in 0..16 {
|
||||||
|
*data.as_words_mut().get_unchecked_mut(w) ^= *nodes.get_unchecked(idx).as_words().get_unchecked(w);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
sha3_512(&data.bytes, &mut nodes.get_unchecked_mut(i).bytes);
|
sha3_512(&data.bytes, &mut nodes.get_unchecked_mut(i).bytes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -16,10 +16,15 @@
|
|||||||
|
|
||||||
//! Ethash implementation
|
//! Ethash implementation
|
||||||
//! See https://github.com/ethereum/wiki/wiki/Ethash
|
//! See https://github.com/ethereum/wiki/wiki/Ethash
|
||||||
|
|
||||||
|
#![cfg_attr(feature = "benches", feature(test))]
|
||||||
|
|
||||||
extern crate primal;
|
extern crate primal;
|
||||||
extern crate sha3;
|
extern crate sha3;
|
||||||
extern crate parking_lot;
|
extern crate parking_lot;
|
||||||
|
|
||||||
|
#[macro_use]
|
||||||
|
extern crate crunchy;
|
||||||
#[macro_use]
|
#[macro_use]
|
||||||
extern crate log;
|
extern crate log;
|
||||||
mod compute;
|
mod compute;
|
||||||
@ -128,3 +133,27 @@ fn test_lru() {
|
|||||||
assert_eq!(ethash.cache.lock().recent_epoch.unwrap(), 2);
|
assert_eq!(ethash.cache.lock().recent_epoch.unwrap(), 2);
|
||||||
assert_eq!(ethash.cache.lock().prev_epoch.unwrap(), 0);
|
assert_eq!(ethash.cache.lock().prev_epoch.unwrap(), 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[cfg(feature = "benches")]
|
||||||
|
mod benchmarks {
|
||||||
|
extern crate test;
|
||||||
|
|
||||||
|
use compute::{Light, light_compute, SeedHashCompute};
|
||||||
|
use self::test::Bencher;
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn bench_light_compute(b: &mut Bencher) {
|
||||||
|
let hash = [0xf5, 0x7e, 0x6f, 0x3a, 0xcf, 0xc0, 0xdd, 0x4b, 0x5b, 0xf2, 0xbe, 0xe4, 0x0a, 0xb3, 0x35, 0x8a, 0xa6, 0x87, 0x73, 0xa8, 0xd0, 0x9f, 0x5e, 0x59, 0x5e, 0xab, 0x55, 0x94, 0x05, 0x52, 0x7d, 0x72];
|
||||||
|
let nonce = 0xd7b3ac70a301a249;
|
||||||
|
let light = Light::new(486382);
|
||||||
|
|
||||||
|
b.iter(|| light_compute(&light, &hash, nonce));
|
||||||
|
}
|
||||||
|
|
||||||
|
#[bench]
|
||||||
|
fn bench_seedhash(b: &mut Bencher) {
|
||||||
|
let seed_compute = SeedHashCompute::new();
|
||||||
|
|
||||||
|
b.iter(|| seed_compute.get_seedhash(486382));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
@ -46,6 +46,9 @@ struct Guard(bool, PathBuf);
|
|||||||
impl Guard {
|
impl Guard {
|
||||||
fn new(path: PathBuf) -> Self { Guard(true, path) }
|
fn new(path: PathBuf) -> Self { Guard(true, path) }
|
||||||
|
|
||||||
|
#[cfg(test)]
|
||||||
|
fn benign() -> Self { Guard(false, PathBuf::default()) }
|
||||||
|
|
||||||
fn disarm(mut self) { self.0 = false }
|
fn disarm(mut self) { self.0 = false }
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -123,7 +126,7 @@ impl Restoration {
|
|||||||
|
|
||||||
// feeds a state chunk, aborts early if `flag` becomes false.
|
// feeds a state chunk, aborts early if `flag` becomes false.
|
||||||
fn feed_state(&mut self, hash: H256, chunk: &[u8], flag: &AtomicBool) -> Result<(), Error> {
|
fn feed_state(&mut self, hash: H256, chunk: &[u8], flag: &AtomicBool) -> Result<(), Error> {
|
||||||
if self.state_chunks_left.remove(&hash) {
|
if self.state_chunks_left.contains(&hash) {
|
||||||
let len = snappy::decompress_into(chunk, &mut self.snappy_buffer)?;
|
let len = snappy::decompress_into(chunk, &mut self.snappy_buffer)?;
|
||||||
|
|
||||||
self.state.feed(&self.snappy_buffer[..len], flag)?;
|
self.state.feed(&self.snappy_buffer[..len], flag)?;
|
||||||
@ -131,6 +134,8 @@ impl Restoration {
|
|||||||
if let Some(ref mut writer) = self.writer.as_mut() {
|
if let Some(ref mut writer) = self.writer.as_mut() {
|
||||||
writer.write_state_chunk(hash, chunk)?;
|
writer.write_state_chunk(hash, chunk)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
self.state_chunks_left.remove(&hash);
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -138,13 +143,15 @@ impl Restoration {
|
|||||||
|
|
||||||
// feeds a block chunk
|
// feeds a block chunk
|
||||||
fn feed_blocks(&mut self, hash: H256, chunk: &[u8], engine: &Engine, flag: &AtomicBool) -> Result<(), Error> {
|
fn feed_blocks(&mut self, hash: H256, chunk: &[u8], engine: &Engine, flag: &AtomicBool) -> Result<(), Error> {
|
||||||
if self.block_chunks_left.remove(&hash) {
|
if self.block_chunks_left.contains(&hash) {
|
||||||
let len = snappy::decompress_into(chunk, &mut self.snappy_buffer)?;
|
let len = snappy::decompress_into(chunk, &mut self.snappy_buffer)?;
|
||||||
|
|
||||||
self.secondary.feed(&self.snappy_buffer[..len], engine, flag)?;
|
self.secondary.feed(&self.snappy_buffer[..len], engine, flag)?;
|
||||||
if let Some(ref mut writer) = self.writer.as_mut() {
|
if let Some(ref mut writer) = self.writer.as_mut() {
|
||||||
writer.write_block_chunk(hash, chunk)?;
|
writer.write_block_chunk(hash, chunk)?;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
self.block_chunks_left.remove(&hash);
|
||||||
}
|
}
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
@ -668,4 +675,50 @@ mod tests {
|
|||||||
service.restore_state_chunk(Default::default(), vec![]);
|
service.restore_state_chunk(Default::default(), vec![]);
|
||||||
service.restore_block_chunk(Default::default(), vec![]);
|
service.restore_block_chunk(Default::default(), vec![]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#[test]
|
||||||
|
fn cannot_finish_with_invalid_chunks() {
|
||||||
|
use util::H256;
|
||||||
|
use util::kvdb::DatabaseConfig;
|
||||||
|
|
||||||
|
let spec = get_test_spec();
|
||||||
|
let dir = RandomTempPath::new();
|
||||||
|
|
||||||
|
let state_hashes: Vec<_> = (0..5).map(|_| H256::random()).collect();
|
||||||
|
let block_hashes: Vec<_> = (0..5).map(|_| H256::random()).collect();
|
||||||
|
let db_config = DatabaseConfig::with_columns(::db::NUM_COLUMNS);
|
||||||
|
let gb = spec.genesis_block();
|
||||||
|
let flag = ::std::sync::atomic::AtomicBool::new(true);
|
||||||
|
|
||||||
|
let params = RestorationParams {
|
||||||
|
manifest: ManifestData {
|
||||||
|
version: 2,
|
||||||
|
state_hashes: state_hashes.clone(),
|
||||||
|
block_hashes: block_hashes.clone(),
|
||||||
|
state_root: H256::default(),
|
||||||
|
block_number: 100000,
|
||||||
|
block_hash: H256::default(),
|
||||||
|
},
|
||||||
|
pruning: Algorithm::Archive,
|
||||||
|
db_path: dir.as_path().to_owned(),
|
||||||
|
db_config: &db_config,
|
||||||
|
writer: None,
|
||||||
|
genesis: &gb,
|
||||||
|
guard: Guard::benign(),
|
||||||
|
engine: &*spec.engine.clone(),
|
||||||
|
};
|
||||||
|
|
||||||
|
let mut restoration = Restoration::new(params).unwrap();
|
||||||
|
let definitely_bad_chunk = [1, 2, 3, 4, 5];
|
||||||
|
|
||||||
|
for hash in state_hashes {
|
||||||
|
assert!(restoration.feed_state(hash, &definitely_bad_chunk, &flag).is_err());
|
||||||
|
assert!(!restoration.is_done());
|
||||||
|
}
|
||||||
|
|
||||||
|
for hash in block_hashes {
|
||||||
|
assert!(restoration.feed_blocks(hash, &definitely_bad_chunk, &*spec.engine, &flag).is_err());
|
||||||
|
assert!(!restoration.is_done());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
{
|
{
|
||||||
"name": "parity.js",
|
"name": "parity.js",
|
||||||
"version": "1.8.3",
|
"version": "1.8.5",
|
||||||
"main": "release/index.js",
|
"main": "release/index.js",
|
||||||
"jsnext:main": "src/index.js",
|
"jsnext:main": "src/index.js",
|
||||||
"author": "Parity Team <admin@parity.io>",
|
"author": "Parity Team <admin@parity.io>",
|
||||||
|
@ -120,7 +120,6 @@ export default class Store {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@computed get qrAddressValid () {
|
@computed get qrAddressValid () {
|
||||||
console.log('qrValid', this.qrAddress, this._api.util.isAddressValid(this.qrAddress));
|
|
||||||
return this._api.util.isAddressValid(this.qrAddress);
|
return this._api.util.isAddressValid(this.qrAddress);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -191,7 +190,7 @@ export default class Store {
|
|||||||
}
|
}
|
||||||
|
|
||||||
// FIXME: Current native signer encoding is not 100% for EIP-55, lowercase for now
|
// FIXME: Current native signer encoding is not 100% for EIP-55, lowercase for now
|
||||||
this.qrAddress = this._api.util
|
this.qrAddress = qrAddress && this._api.util
|
||||||
? this._api.util.toChecksumAddress(qrAddress.toLowerCase())
|
? this._api.util.toChecksumAddress(qrAddress.toLowerCase())
|
||||||
: qrAddress;
|
: qrAddress;
|
||||||
}
|
}
|
||||||
|
@ -407,7 +407,11 @@ export default class TransactionPendingFormConfirm extends Component {
|
|||||||
onScan = (signature) => {
|
onScan = (signature) => {
|
||||||
const { chainId, rlp, tx, data, decrypt } = this.state.qr;
|
const { chainId, rlp, tx, data, decrypt } = this.state.qr;
|
||||||
|
|
||||||
if (signature && signature.substr(0, 2) !== '0x') {
|
if (!signature) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (signature.substr(0, 2) !== '0x') {
|
||||||
signature = `0x${signature}`;
|
signature = `0x${signature}`;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -188,7 +188,10 @@ mod server {
|
|||||||
use parity_rpc::{hyper, RequestMiddleware, RequestMiddlewareAction};
|
use parity_rpc::{hyper, RequestMiddleware, RequestMiddlewareAction};
|
||||||
use rpc_apis;
|
use rpc_apis;
|
||||||
|
|
||||||
pub type SyncStatus = Fn() -> bool;
|
pub trait SyncStatus {
|
||||||
|
fn is_major_importing(&self) -> bool;
|
||||||
|
fn peers(&self) -> (usize, usize);
|
||||||
|
}
|
||||||
|
|
||||||
pub struct Middleware;
|
pub struct Middleware;
|
||||||
impl RequestMiddleware for Middleware {
|
impl RequestMiddleware for Middleware {
|
||||||
|
Loading…
Reference in New Issue
Block a user