From c6db1575542b5c33f635dfa95356d11d57bba1fb Mon Sep 17 00:00:00 2001 From: keorn Date: Mon, 21 Nov 2016 12:06:14 +0000 Subject: [PATCH 01/10] fix flaky test, clean up specs --- ethcore/res/authority_round.json | 4 ++-- ethcore/res/instant_seal.json | 6 +++--- ethcore/src/engines/authority_round.rs | 14 +++++++------- 3 files changed, 12 insertions(+), 12 deletions(-) diff --git a/ethcore/res/authority_round.json b/ethcore/res/authority_round.json index ad23b461fe7..9ab78239535 100644 --- a/ethcore/res/authority_round.json +++ b/ethcore/res/authority_round.json @@ -21,8 +21,8 @@ "genesis": { "seal": { "generic": { - "fields": 1, - "rlp": "0x11bbe8db4e347b4e8c937c1c8370e4b5ed33adb3db69cbdb7a38e1e50b1b82fa" + "fields": 2, + "rlp": "0x200" } }, "difficulty": "0x20000", diff --git a/ethcore/res/instant_seal.json b/ethcore/res/instant_seal.json index 2d5b386596a..a6b24faf992 100644 --- a/ethcore/res/instant_seal.json +++ b/ethcore/res/instant_seal.json @@ -11,9 +11,9 @@ }, "genesis": { "seal": { - "ethereum": { - "nonce": "0x00006d6f7264656e", - "mixHash": "0x00000000000000000000000000000000000000647572616c65787365646c6578" + "generic": { + "fields": 0, + "rlp": "0x0" } }, "difficulty": "0x20000", diff --git a/ethcore/src/engines/authority_round.rs b/ethcore/src/engines/authority_round.rs index 9bed99e8ba7..8bd4156d70c 100644 --- a/ethcore/src/engines/authority_round.rs +++ b/ethcore/src/engines/authority_round.rs @@ -254,8 +254,8 @@ impl Engine for AuthorityRound { /// Check if the signature belongs to the correct proposer. fn verify_block_unordered(&self, header: &Header, _block: Option<&[u8]>) -> Result<(), Error> { - let header_step = try!(header_step(header)); - // Give one step slack if step is lagging, double vote is still not possible. + let header_step = try!(header_step(header)); + // Give one step slack if step is lagging, double vote is still not possible. if header_step <= self.step() + 1 { let proposer_signature = try!(header_signature(header)); let ok_sig = try!(verify_address(self.step_proposer(header_step), &proposer_signature, &header.bare_hash())); @@ -417,13 +417,13 @@ mod tests { let engine = Spec::new_test_round().engine; let signature = tap.sign(addr, Some("0".into()), header.bare_hash()).unwrap(); - let mut step = UNIX_EPOCH.elapsed().unwrap().as_secs(); + let time = UNIX_EPOCH.elapsed().unwrap().as_secs(); + // Two authorities. + let mut step = time - time % 2; header.set_seal(vec![encode(&step).to_vec(), encode(&(&*signature as &[u8])).to_vec()]); - let first_ok = engine.verify_block_seal(&header).is_ok(); + assert!(engine.verify_block_seal(&header).is_err()); step = step + 1; header.set_seal(vec![encode(&step).to_vec(), encode(&(&*signature as &[u8])).to_vec()]); - let second_ok = engine.verify_block_seal(&header).is_ok(); - - assert!(first_ok ^ second_ok); + assert!(engine.verify_block_seal(&header).is_ok()); } } From 959ccc705a81aa912ade59f5125a30f7b9997ee3 Mon Sep 17 00:00:00 2001 From: keorn Date: Mon, 21 Nov 2016 12:07:43 +0000 Subject: [PATCH 02/10] fix indent --- ethcore/src/engines/authority_round.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/ethcore/src/engines/authority_round.rs b/ethcore/src/engines/authority_round.rs index 8bd4156d70c..830fcf9c85f 100644 --- a/ethcore/src/engines/authority_round.rs +++ b/ethcore/src/engines/authority_round.rs @@ -255,7 +255,7 @@ impl Engine for AuthorityRound { /// Check if the signature belongs to the correct proposer. fn verify_block_unordered(&self, header: &Header, _block: Option<&[u8]>) -> Result<(), Error> { let header_step = try!(header_step(header)); - // Give one step slack if step is lagging, double vote is still not possible. + // Give one step slack if step is lagging, double vote is still not possible. if header_step <= self.step() + 1 { let proposer_signature = try!(header_signature(header)); let ok_sig = try!(verify_address(self.step_proposer(header_step), &proposer_signature, &header.bare_hash())); From 8bb8ecac2dd40e9e6112ffa7d43f0047a4f976e5 Mon Sep 17 00:00:00 2001 From: arkpar Date: Mon, 21 Nov 2016 14:39:26 +0100 Subject: [PATCH 03/10] --testnet set to ropset --- parity/cli/usage.txt | 2 +- parity/configuration.rs | 4 ++-- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/parity/cli/usage.txt b/parity/cli/usage.txt index 89603d311e4..3e3e79247be 100644 --- a/parity/cli/usage.txt +++ b/parity/cli/usage.txt @@ -32,7 +32,7 @@ Operating Options: (default: {flag_mode_alarm}). --chain CHAIN Specify the blockchain type. CHAIN may be either a JSON chain specification file or olympic, frontier, - homestead, mainnet, morden, classic, expanse, + homestead, mainnet, morden, ropsten, classic, expanse, testnet or dev (default: {flag_chain}). -d --db-path PATH Specify the database & configuration directory path (default: {flag_db_path}). diff --git a/parity/configuration.rs b/parity/configuration.rs index 61063aa18d8..5188b44f1bd 100644 --- a/parity/configuration.rs +++ b/parity/configuration.rs @@ -313,7 +313,7 @@ impl Configuration { fn chain(&self) -> String { if self.args.flag_testnet { - "morden".to_owned() + "ropsten".to_owned() } else { self.args.flag_chain.clone() } @@ -905,7 +905,7 @@ mod tests { // then assert_eq!(conf.network_settings(), NetworkSettings { name: "testname".to_owned(), - chain: "morden".to_owned(), + chain: "ropsten".to_owned(), network_port: 30303, rpc_enabled: true, rpc_interface: "local".to_owned(), From efdf017c430c71df1efca166cba46c4791a06677 Mon Sep 17 00:00:00 2001 From: arkpar Date: Mon, 21 Nov 2016 15:03:20 +0100 Subject: [PATCH 04/10] Import account message --- parity/account.rs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/parity/account.rs b/parity/account.rs index 9d400cab5f0..ae7e1f62b37 100644 --- a/parity/account.rs +++ b/parity/account.rs @@ -102,7 +102,7 @@ fn import(i: ImportAccounts) -> Result { let from = DiskDirectory::at(path); imported += try!(import_accounts(&from, &to).map_err(|_| "Importing accounts failed.")).len(); } - Ok(format!("{}", imported)) + Ok(format!("{} account(s) imported", imported)) } fn import_geth(i: ImportFromGethAccounts) -> Result { From 65785475f35a1978e8da8182d8b12a8d7cb4867b Mon Sep 17 00:00:00 2001 From: GitLab Build Bot Date: Mon, 21 Nov 2016 17:37:37 +0000 Subject: [PATCH 05/10] [ci skip] js-precompiled 20161121-173542 --- Cargo.lock | 2 +- js/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 02e45b49e38..a9af4e0c623 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1263,7 +1263,7 @@ dependencies = [ [[package]] name = "parity-ui-precompiled" version = "1.4.0" -source = "git+https://github.com/ethcore/js-precompiled.git#587684374a12bf715151dd987a552a3d61e42972" +source = "git+https://github.com/ethcore/js-precompiled.git#253103aef1579e6ff11d5efe8b31f394fd0857bc" dependencies = [ "parity-dapps-glue 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] diff --git a/js/package.json b/js/package.json index 7f4157cad61..e4d34c3161d 100644 --- a/js/package.json +++ b/js/package.json @@ -1,6 +1,6 @@ { "name": "parity.js", - "version": "0.2.58", + "version": "0.2.59", "main": "release/index.js", "jsnext:main": "src/index.js", "author": "Parity Team ", From eb94eda30b680467425ab5e088ab8c3949b081a3 Mon Sep 17 00:00:00 2001 From: GitLab Build Bot Date: Mon, 21 Nov 2016 18:16:10 +0000 Subject: [PATCH 06/10] [ci skip] js-precompiled 20161121-181249 --- Cargo.lock | 2 +- js/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index a9af4e0c623..dd05fc18de1 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1263,7 +1263,7 @@ dependencies = [ [[package]] name = "parity-ui-precompiled" version = "1.4.0" -source = "git+https://github.com/ethcore/js-precompiled.git#253103aef1579e6ff11d5efe8b31f394fd0857bc" +source = "git+https://github.com/ethcore/js-precompiled.git#a0cf68024199f7a8c39c7d149ad622ac2f72129a" dependencies = [ "parity-dapps-glue 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] diff --git a/js/package.json b/js/package.json index e4d34c3161d..bed226f02de 100644 --- a/js/package.json +++ b/js/package.json @@ -1,6 +1,6 @@ { "name": "parity.js", - "version": "0.2.59", + "version": "0.2.60", "main": "release/index.js", "jsnext:main": "src/index.js", "author": "Parity Team ", From 8a1b585da23f8b250cb6f2019ff2da49714f6b84 Mon Sep 17 00:00:00 2001 From: Nicolas Gotchac Date: Mon, 21 Nov 2016 20:44:07 +0100 Subject: [PATCH 07/10] Fix peers not displaying (#3561) * Add peers count to status polling * Array destruct for better readability --- js/src/redux/providers/status.js | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/js/src/redux/providers/status.js b/js/src/redux/providers/status.js index bdc4dd38b63..50b28a5ac34 100644 --- a/js/src/redux/providers/status.js +++ b/js/src/redux/providers/status.js @@ -155,24 +155,20 @@ export default class Status { const { refreshStatus } = this._store.getState().nodeStatus; - const statusPromises = [ this._api.eth.syncing() ]; + const statusPromises = [ this._api.eth.syncing(), this._api.parity.netPeers() ]; if (refreshStatus) { statusPromises.push(this._api.eth.hashrate()); - statusPromises.push(this._api.parity.netPeers()); } Promise .all(statusPromises) - .then((statusResults) => { - const status = statusResults.length === 1 - ? { - syncing: statusResults[0] - } + .then(([ syncing, netPeers, ...statusResults ]) => { + const status = statusResults.length === 0 + ? { syncing, netPeers } : { - syncing: statusResults[0], - hashrate: statusResults[1], - netPeers: statusResults[2] + syncing, netPeers, + hashrate: statusResults[0] }; if (!isEqual(status, this._status)) { From 5735d948f5fd327f71d851bdf2d8f29061b2e098 Mon Sep 17 00:00:00 2001 From: Nicolas Gotchac Date: Mon, 21 Nov 2016 20:44:37 +0100 Subject: [PATCH 08/10] [Registry] Clear input and working buttons (#3563) * onClick to onTouchTap #3556 * onClick to onTouchTap 2 #3556 * Registry dApp clear input + check Signer #3557 --- js/src/dapps/registry/Lookup/lookup.js | 2 +- js/src/dapps/registry/Names/actions.js | 27 +++++++++++++++---- js/src/dapps/registry/Names/names.js | 18 ++++++++++++- js/src/dapps/registry/Records/records.js | 2 +- js/src/modals/LoadContract/loadContract.js | 2 +- js/src/ui/Form/TypedInput/typedInput.js | 4 +-- js/src/views/Dapps/dapps.js | 2 +- .../TransactionPendingFormConfirm.js | 2 +- .../TransactionPendingFormReject.js | 2 +- .../components/CallsToolbar/CallsToolbar.js | 4 +-- .../ScrollTopButton/ScrollTopButton.js | 2 +- 11 files changed, 50 insertions(+), 17 deletions(-) diff --git a/js/src/dapps/registry/Lookup/lookup.js b/js/src/dapps/registry/Lookup/lookup.js index 4238f116010..436d113b9ca 100644 --- a/js/src/dapps/registry/Lookup/lookup.js +++ b/js/src/dapps/registry/Lookup/lookup.js @@ -77,7 +77,7 @@ export default class Lookup extends Component { label='Lookup' primary icon={ } - onClick={ this.onLookupClick } + onTouchTap={ this.onLookupClick } /> { output } diff --git a/js/src/dapps/registry/Names/actions.js b/js/src/dapps/registry/Names/actions.js index 74e446d9d78..48814533132 100644 --- a/js/src/dapps/registry/Names/actions.js +++ b/js/src/dapps/registry/Names/actions.js @@ -14,7 +14,7 @@ // You should have received a copy of the GNU General Public License // along with Parity. If not, see . -import { sha3 } from '../parity.js'; +import { sha3, api } from '../parity.js'; const alreadyQueued = (queue, action, name) => !!queue.find((entry) => entry.action === action && entry.name === name); @@ -43,14 +43,23 @@ export const reserve = (name) => (dispatch, getState) => { const values = [ sha3(name) ]; dispatch(reserveStart(name)); + reserve.estimateGas(options, values) .then((gas) => { options.gas = gas.mul(1.2).toFixed(0); return reserve.postTransaction(options, values); }) - .then((data) => { + .then((requestId) => { + return api.pollMethod('parity_checkRequest', requestId); + }) + .then((txhash) => { dispatch(reserveSuccess(name)); - }).catch((err) => { + }) + .catch((err) => { + if (err && err.type === 'REQUEST_REJECTED') { + return dispatch(reserveFail(name)); + } + console.error(`could not reserve ${name}`); if (err) console.error(err.stack); dispatch(reserveFail(name)); @@ -81,9 +90,17 @@ export const drop = (name) => (dispatch, getState) => { options.gas = gas.mul(1.2).toFixed(0); return drop.postTransaction(options, values); }) - .then((data) => { + .then((requestId) => { + return api.pollMethod('parity_checkRequest', requestId); + }) + .then((txhash) => { dispatch(dropSuccess(name)); - }).catch((err) => { + }) + .catch((err) => { + if (err && err.type === 'REQUEST_REJECTED') { + dispatch(reserveFail(name)); + } + console.error(`could not drop ${name}`); if (err) console.error(err.stack); dispatch(reserveFail(name)); diff --git a/js/src/dapps/registry/Names/names.js b/js/src/dapps/registry/Names/names.js index dd7e6f77296..369d9690ce8 100644 --- a/js/src/dapps/registry/Names/names.js +++ b/js/src/dapps/registry/Names/names.js @@ -86,6 +86,22 @@ export default class Names extends Component { name: '' }; + componentWillReceiveProps (nextProps) { + const nextQueue = nextProps.queue; + const prevQueue = this.props.queue; + + if (nextQueue.length > prevQueue.length) { + const newQueued = nextQueue[nextQueue.length - 1]; + const newName = newQueued.name; + + if (newName !== this.state.name) { + return; + } + + this.setState({ name: '' }); + } + } + render () { const { action, name } = this.state; const { fee, pending, queue } = this.props; @@ -120,7 +136,7 @@ export default class Names extends Component { label={ action === 'reserve' ? 'Reserve' : 'Drop' } primary icon={ } - onClick={ this.onSubmitClick } + onTouchTap={ this.onSubmitClick } /> { queue.length > 0 ? (
{ useSignerText }{ renderQueue(queue) }
) diff --git a/js/src/dapps/registry/Records/records.js b/js/src/dapps/registry/Records/records.js index 60640893cb5..89c751c3693 100644 --- a/js/src/dapps/registry/Records/records.js +++ b/js/src/dapps/registry/Records/records.js @@ -52,7 +52,7 @@ export default class Records extends Component { label='Save' primary icon={ } - onClick={ this.onSaveClick } + onTouchTap={ this.onSaveClick } /> diff --git a/js/src/modals/LoadContract/loadContract.js b/js/src/modals/LoadContract/loadContract.js index 3de55561a04..f67a2dce617 100644 --- a/js/src/modals/LoadContract/loadContract.js +++ b/js/src/modals/LoadContract/loadContract.js @@ -174,7 +174,7 @@ export default class LoadContract extends Component { const secondaryText = description || `Saved ${moment(timestamp).fromNow()}`; const remove = removable ? ( - + ) diff --git a/js/src/ui/Form/TypedInput/typedInput.js b/js/src/ui/Form/TypedInput/typedInput.js index 6bcb5bbf183..f5ec2a02f9c 100644 --- a/js/src/ui/Form/TypedInput/typedInput.js +++ b/js/src/ui/Form/TypedInput/typedInput.js @@ -96,7 +96,7 @@ export default class TypedInput extends Component { @@ -104,7 +104,7 @@ export default class TypedInput extends Component { diff --git a/js/src/views/Dapps/dapps.js b/js/src/views/Dapps/dapps.js index 5d87b808d11..7faead57666 100644 --- a/js/src/views/Dapps/dapps.js +++ b/js/src/views/Dapps/dapps.js @@ -67,7 +67,7 @@ export default class Dapps extends Component { label='edit' key='edit' icon={ } - onClick={ this.store.openModal } + onTouchTap={ this.store.openModal } /> ] } /> diff --git a/js/src/views/Signer/components/TransactionPendingForm/TransactionPendingFormConfirm/TransactionPendingFormConfirm.js b/js/src/views/Signer/components/TransactionPendingForm/TransactionPendingFormConfirm/TransactionPendingFormConfirm.js index 5765447ee7e..f2cc0f91001 100644 --- a/js/src/views/Signer/components/TransactionPendingForm/TransactionPendingFormConfirm/TransactionPendingFormConfirm.js +++ b/js/src/views/Signer/components/TransactionPendingForm/TransactionPendingFormConfirm/TransactionPendingFormConfirm.js @@ -74,7 +74,7 @@ class TransactionPendingFormConfirm extends Component { data-effect='solid' > This cannot be undone + onTouchTap={ this._scrollToTop }> ); From f9ecea8f4de9d27eb3e3f19e82f95bba4be17746 Mon Sep 17 00:00:00 2001 From: Jannis Redmann Date: Mon, 21 Nov 2016 20:45:47 +0100 Subject: [PATCH 09/10] sms verification code style (#3564) * sms verification: fix code style * sms verification: move server-related code to 3rdparty * sms verification: adapt to ropsten --- .../sms-verification/index.js} | 18 ++++- js/src/contracts/sms-verification.js | 17 ---- .../SMSVerification/GatherData/gatherData.js | 7 +- .../modals/SMSVerification/SMSVerification.js | 80 +++++++++++-------- js/src/modals/SMSVerification/store.js | 5 +- 5 files changed, 68 insertions(+), 59 deletions(-) rename js/src/{modals/SMSVerification/terms-of-service.js => 3rdparty/sms-verification/index.js} (81%) diff --git a/js/src/modals/SMSVerification/terms-of-service.js b/js/src/3rdparty/sms-verification/index.js similarity index 81% rename from js/src/modals/SMSVerification/terms-of-service.js rename to js/src/3rdparty/sms-verification/index.js index f61b3c97d47..9b113f36433 100644 --- a/js/src/modals/SMSVerification/terms-of-service.js +++ b/js/src/3rdparty/sms-verification/index.js @@ -14,9 +14,10 @@ // You should have received a copy of the GNU General Public License // along with Parity. If not, see . +import { stringify } from 'querystring'; import React from 'react'; -export default ( +export const termsOfService = (
  • This privacy notice relates to your use of the Parity SMS verification service. We take your privacy seriously and deal in an honest, direct and transparent way when it comes to your data.
  • We collect your phone number when you use this service. This is temporarily kept in memory, and then encrypted and stored in our EU servers. We only retain the cryptographic hash of the number to prevent duplicated accounts. You consent to this use.
  • @@ -25,3 +26,18 @@ export default (
  • Parity Technology Limited is registered in England and Wales under company number 09760015 and complies with the Data Protection Act 1998 (UK). You may contact us via email at admin@parity.io. Our general privacy policy can be found here: https://ethcore.io/legal.html.
); + +export const postToServer = (query) => { + query = stringify(query); + return fetch('https://sms-verification.parity.io/?' + query, { + method: 'POST', mode: 'cors', cache: 'no-store' + }) + .then((res) => { + return res.json().then((data) => { + if (res.ok) { + return data.message; + } + throw new Error(data.message || 'unknown error'); + }); + }); +}; diff --git a/js/src/contracts/sms-verification.js b/js/src/contracts/sms-verification.js index e93d57ffc5d..c6893e6392d 100644 --- a/js/src/contracts/sms-verification.js +++ b/js/src/contracts/sms-verification.js @@ -14,8 +14,6 @@ // You should have received a copy of the GNU General Public License // along with Parity. If not, see . -import { stringify } from 'querystring'; - export const checkIfVerified = (contract, account) => { return contract.instance.certified.call({}, [account]); }; @@ -35,18 +33,3 @@ export const checkIfRequested = (contract, account) => { }); }); }; - -export const postToServer = (query) => { - query = stringify(query); - return fetch('https://sms-verification.parity.io/?' + query, { - method: 'POST', mode: 'cors', cache: 'no-store' - }) - .then((res) => { - return res.json().then((data) => { - if (res.ok) { - return data.message; - } - throw new Error(data.message || 'unknown error'); - }); - }); -}; diff --git a/js/src/modals/SMSVerification/GatherData/gatherData.js b/js/src/modals/SMSVerification/GatherData/gatherData.js index f4036a3bc91..3620de904af 100644 --- a/js/src/modals/SMSVerification/GatherData/gatherData.js +++ b/js/src/modals/SMSVerification/GatherData/gatherData.js @@ -25,7 +25,7 @@ import ErrorIcon from 'material-ui/svg-icons/navigation/close'; import { fromWei } from '../../../api/util/wei'; import { Form, Input } from '../../../ui'; -import terms from '../terms-of-service'; +import { termsOfService } from '../../../3rdparty/sms-verification'; import styles from './gatherData.css'; export default class GatherData extends Component { @@ -66,7 +66,7 @@ export default class GatherData extends Component { disabled={ isVerified } onCheck={ this.consentOnChange } /> -
{ terms }
+
{ termsOfService }
); } @@ -123,8 +123,7 @@ export default class GatherData extends Component {

You already requested verification.

); - } - if (hasRequested === false) { + } else if (hasRequested === false) { return (
diff --git a/js/src/modals/SMSVerification/SMSVerification.js b/js/src/modals/SMSVerification/SMSVerification.js index 4ec0b608d19..b7c8a901a10 100644 --- a/js/src/modals/SMSVerification/SMSVerification.js +++ b/js/src/modals/SMSVerification/SMSVerification.js @@ -16,8 +16,8 @@ import React, { Component, PropTypes } from 'react'; import { observer } from 'mobx-react'; -import ActionDoneAll from 'material-ui/svg-icons/action/done-all'; -import ContentClear from 'material-ui/svg-icons/content/clear'; +import DoneIcon from 'material-ui/svg-icons/action/done-all'; +import CancelIcon from 'material-ui/svg-icons/content/clear'; import { Button, IdentityIcon, Modal } from '../../ui'; @@ -77,7 +77,7 @@ export default class SMSVerification extends Component { const cancel = (
@@ -140,37 +140,47 @@ export default class SMSVerification extends Component { setNumber, setConsentGiven, setCode } = this.props.store; - if (phase === 5) { - return (); - } - if (phase === 4) { - return (); - } - if (phase === 3) { - return ( - - ); - } - if (phase === 2) { - return (); - } - if (phase === 1) { - const { setNumber, setConsentGiven } = this.props.store; - return ( - - ); - } - if (phase === 0) { - return (

Preparing awesomeness!

); - } + switch (phase) { + case 0: + return ( +

Loading SMS Verification.

+ ); + + case 1: + const { setNumber, setConsentGiven } = this.props.store; + return ( + + ); - return null; + case 2: + return ( + + ); + + case 3: + return ( + + ); + + case 4: + return ( + + ); + + case 5: + return ( + + ); + + default: + return null; + } } } diff --git a/js/src/modals/SMSVerification/store.js b/js/src/modals/SMSVerification/store.js index 7337f4eac50..8c4db373a52 100644 --- a/js/src/modals/SMSVerification/store.js +++ b/js/src/modals/SMSVerification/store.js @@ -20,7 +20,8 @@ import { sha3 } from '../../api/util/sha3'; import Contracts from '../../contracts'; -import { checkIfVerified, checkIfRequested, postToServer } from '../../contracts/sms-verification'; +import { checkIfVerified, checkIfRequested } from '../../contracts/sms-verification'; +import { postToServer } from '../../3rdparty/sms-verification'; import checkIfTxFailed from '../../util/check-if-tx-failed'; import waitForConfirmations from '../../util/wait-for-block-confirmations'; @@ -87,7 +88,7 @@ export default class VerificationStore { this.account = account; this.step = LOADING; - Contracts.create(api).registry.getContract('smsVerification') + Contracts.create(api).registry.getContract('smsverification') .then((contract) => { this.contract = contract; this.load(); From b97763e13de1178a0323e3b5a9b50ea45e9dd8fa Mon Sep 17 00:00:00 2001 From: GitLab Build Bot Date: Mon, 21 Nov 2016 23:35:10 +0000 Subject: [PATCH 10/10] [ci skip] js-precompiled 20161121-233309 --- Cargo.lock | 2 +- js/package.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index dd05fc18de1..7be09f3e359 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1263,7 +1263,7 @@ dependencies = [ [[package]] name = "parity-ui-precompiled" version = "1.4.0" -source = "git+https://github.com/ethcore/js-precompiled.git#a0cf68024199f7a8c39c7d149ad622ac2f72129a" +source = "git+https://github.com/ethcore/js-precompiled.git#f46188126257e03c775e76a3cea82b5f70549400" dependencies = [ "parity-dapps-glue 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", ] diff --git a/js/package.json b/js/package.json index bed226f02de..62a09e1d17b 100644 --- a/js/package.json +++ b/js/package.json @@ -1,6 +1,6 @@ { "name": "parity.js", - "version": "0.2.60", + "version": "0.2.61", "main": "release/index.js", "jsnext:main": "src/index.js", "author": "Parity Team ",