[beta] Backports (#6497)

* Fix slow balances (#6471)

* Update token updates

* Update token info fetching

* Update logger

* Minor fixes to updates and notifications for balances

* Use Pubsub

* Fix timeout.

* Use pubsub for status.

* Fix signer subscription.

* Process tokens in chunks.

* Fix tokens loaded by chunks

* Linting

* Dispatch tokens asap

* Fix chunks processing.

* Better filter options

* Parallel log fetching.

* Fix signer polling.

* Fix initial block query.

* Token balances updates : the right(er) way

* Better tokens info fetching

* Fixes in token data fetching

* Only fetch what's needed (tokens)

* Fix linting issues

* Revert "Transaction permissioning (#6441)"

This reverts commit eed0e8b03a.

* Revert "Revert "Transaction permissioning (#6441)""

This reverts commit 8f96415e58dde652e5828706eb2639d43416f448.

* Update wasm-tests.

* Fixing balances fetching

* Fix requests tracking in UI

* Fix request watching

* Update the Logger

* PR Grumbles Fixes

* PR Grumbles fixes

* Linting...

* eth_call returns output of contract creations (#6420)

* eth_call returns output of contract creations

* Fix parameters order.

* Save outputs for light client as well.

* Don't accept transactions above block gas limit.

* Expose health status over RPC (#6274)

* Node-health to a separate crate.

* Initialize node_health outside of dapps.

* Expose health over RPC.

* Bring back 412 and fix JS.

* Add health to workspace and tests.

* Fix compilation without default features.

* Fix borked merge.

* Revert to generics to avoid virtual calls.

* Fix node-health tests.

* Add missing trailing comma.

* Fixing/removing failing JS tests.

* do not activate genesis epoch in immediate transition validator contract (#6349)

* Fix memory tracing.

* Add test to cover that.

* ensure balances of constructor accounts are kept

* test balance of spec-constructed account is kept
This commit is contained in:
Tomasz Drwięga
2017-09-11 18:01:02 +02:00
committed by Gav Wood
parent 6ef9780b81
commit 980418898a
95 changed files with 2537 additions and 1245 deletions

View File

@@ -16,6 +16,7 @@
import Eth from './eth';
import Parity from './parity';
import Signer from './signer';
import Net from './net';
import { isFunction } from '../util/types';
@@ -29,6 +30,7 @@ export default class Pubsub {
this._eth = new Eth(transport);
this._net = new Net(transport);
this._parity = new Parity(transport);
this._signer = new Signer(transport);
}
get net () {
@@ -43,8 +45,35 @@ export default class Pubsub {
return this._parity;
}
get signer () {
return this._signer;
}
unsubscribe (subscriptionIds) {
// subscriptions are namespace independent. Thus we can simply removeListener from any.
return this._parity.removeListener(subscriptionIds);
}
subscribeAndGetResult (f, callback) {
return new Promise((resolve, reject) => {
let isFirst = true;
let onSubscription = (error, data) => {
const p1 = error ? Promise.reject(error) : Promise.resolve(data);
const p2 = p1.then(callback);
if (isFirst) {
isFirst = false;
p2
.then(resolve)
.catch(reject);
}
};
try {
f.call(this, onSubscription).catch(reject);
} catch (err) {
reject(err);
}
});
}
}