Change all packages to use web3providerengine without excess polling

This commit is contained in:
Jacob Evans 2019-03-18 13:48:12 +01:00
parent 6a28e41bc8
commit 180c65cfeb
No known key found for this signature in database
GPG Key ID: 2036DA2ADDFB0842
13 changed files with 30 additions and 24 deletions

View File

@ -2,7 +2,7 @@ import { ContractAddresses } from '@0x/contract-addresses';
import { BlockchainLifecycle, callbackErrorReporter } from '@0x/dev-utils';
import { EmptyWalletSubprovider, Web3ProviderEngine } from '@0x/subproviders';
import { DoneCallback } from '@0x/types';
import { BigNumber } from '@0x/utils';
import { BigNumber, providerUtils } from '@0x/utils';
import * as chai from 'chai';
import 'mocha';
@ -628,6 +628,6 @@ function addEmptyWalletSubprovider(p: Web3ProviderEngine): Web3ProviderEngine {
for (const subprovider of currentSubproviders) {
providerEngine.addProvider(subprovider);
}
providerEngine.start();
providerUtils.startProviderEngine(providerEngine);
return providerEngine;
}

View File

@ -1,7 +1,7 @@
import { BlockchainLifecycle, callbackErrorReporter } from '@0x/dev-utils';
import { EmptyWalletSubprovider, Web3ProviderEngine } from '@0x/subproviders';
import { DoneCallback } from '@0x/types';
import { BigNumber } from '@0x/utils';
import { BigNumber, providerUtils } from '@0x/utils';
import * as chai from 'chai';
import 'mocha';
@ -460,6 +460,6 @@ function addEmptyWalletSubprovider(p: Web3ProviderEngine): Web3ProviderEngine {
for (const subprovider of currentSubproviders) {
providerEngine.addProvider(subprovider);
}
providerEngine.start();
providerUtils.startProviderEngine(providerEngine);
return providerEngine;
}

View File

@ -5,6 +5,7 @@ import {
RPCSubprovider,
Web3ProviderEngine,
} from '@0x/subproviders';
import { providerUtils } from '@0x/utils';
import * as fs from 'fs';
import * as _ from 'lodash';
@ -68,7 +69,7 @@ export const web3Factory = {
} else {
provider.addProvider(new RPCSubprovider(config.rpcUrl || constants.RPC_URL));
}
provider.start();
providerUtils.startProviderEngine(provider);
return provider;
},
};

View File

@ -41,7 +41,6 @@ describe('Metacoin', () => {
const amount = INITIAL_BALANCE.div(2);
const oldBalance = await metacoin.balances.callAsync(ZERO_ADDRESS);
expect(oldBalance).to.be.bignumber.equal(0);
// profiler.start();
const txHash = await metacoin.transfer1.sendTransactionAsync(
{
to: ZERO_ADDRESS,

View File

@ -1,6 +1,6 @@
#!/usr/bin/env node
import { RPCSubprovider, Web3ProviderEngine } from '@0x/subproviders';
import { logUtils } from '@0x/utils';
import { logUtils, providerUtils } from '@0x/utils';
import * as yargs from 'yargs';
import { runMigrationsAsync } from './migration';
@ -26,7 +26,7 @@ const args = yargs
const rpcSubprovider = new RPCSubprovider(args['rpc-url']);
const provider = new Web3ProviderEngine();
provider.addProvider(rpcSubprovider);
provider.start();
providerUtils.startProviderEngine(provider);
const normalizedFromAddress = (args.from as string).toLowerCase();
const txDefaults = {
from: normalizedFromAddress,

View File

@ -1,4 +1,5 @@
import { LedgerEthereumClient, LedgerSubprovider, RPCSubprovider, Web3ProviderEngine } from '@0x/subproviders';
import { providerUtils } from '@0x/utils';
import Eth from '@ledgerhq/hw-app-eth';
// tslint:disable:no-implicit-dependencies
import TransportNodeHid from '@ledgerhq/hw-transport-node-hid';
@ -21,7 +22,7 @@ export const providerFactory = {
const ledgerSubprovider = new LedgerSubprovider(ledgerWalletConfigs);
provider.addProvider(ledgerSubprovider);
provider.addProvider(new RPCSubprovider(constants.KOVAN_RPC_URL));
provider.start();
providerUtils.startProviderEngine(provider);
return provider;
},
async getMainnetLedgerProviderAsync(): Promise<Provider> {
@ -33,7 +34,7 @@ export const providerFactory = {
const ledgerSubprovider = new LedgerSubprovider(ledgerWalletConfigs);
provider.addProvider(ledgerSubprovider);
provider.addProvider(new RPCSubprovider(constants.MAINNET_RPC_URL));
provider.start();
providerUtils.startProviderEngine(provider);
return provider;
},
};

View File

@ -1,5 +1,5 @@
import { DoneCallback } from '@0x/types';
import { promisify } from '@0x/utils';
import { promisify, providerUtils } from '@0x/utils';
import Eth from '@ledgerhq/hw-app-eth';
// HACK: This dependency is optional and tslint skips optional dependencies
// tslint:disable-next-line:no-implicit-dependencies
@ -86,11 +86,11 @@ describe('LedgerSubprovider', () => {
ledgerProvider.addProvider(ledgerSubprovider);
const httpProvider = new RPCSubprovider('http://localhost:8545');
ledgerProvider.addProvider(httpProvider);
ledgerProvider.start();
providerUtils.startProviderEngine(ledgerProvider);
defaultProvider = new Web3ProviderEngine();
defaultProvider.addProvider(httpProvider);
defaultProvider.start();
providerUtils.startProviderEngine(defaultProvider);
});
it('returns a list of accounts', (done: DoneCallback) => {
const payload = {

View File

@ -1,3 +1,4 @@
import { providerUtils } from '@0x/utils';
import * as chai from 'chai';
import * as lightwallet from 'eth-lightwallet';
import { JSONRPCResponsePayload } from 'ethereum-types';
@ -88,7 +89,7 @@ describe('EthLightwalletSubprovider', () => {
provider = new Web3ProviderEngine();
provider.addProvider(ethLightwalletSubprovider);
provider.addProvider(ganacheSubprovider);
provider.start();
providerUtils.startProviderEngine(provider);
});
describe('success cases', () => {
it('returns a list of accounts', (done: DoneCallback) => {

View File

@ -1,3 +1,4 @@
import { providerUtils } from '@0x/utils';
import * as chai from 'chai';
import { JSONRPCResponsePayload } from 'ethereum-types';
import * as ethUtils from 'ethereumjs-util';
@ -105,7 +106,7 @@ describe('LedgerSubprovider', () => {
provider = new Web3ProviderEngine();
provider.addProvider(ledgerSubprovider);
provider.addProvider(ganacheSubprovider);
provider.start();
providerUtils.startProviderEngine(provider);
});
describe('success cases', () => {
it('returns a list of accounts', (done: DoneCallback) => {

View File

@ -1,3 +1,4 @@
import { providerUtils } from '@0x/utils';
import * as chai from 'chai';
import { JSONRPCResponsePayload } from 'ethereum-types';
import * as ethUtils from 'ethereumjs-util';
@ -77,7 +78,7 @@ describe('MnemonicWalletSubprovider', () => {
provider.addProvider(subprovider);
const ganacheSubprovider = new GanacheSubprovider({});
provider.addProvider(ganacheSubprovider);
provider.start();
providerUtils.startProviderEngine(provider);
});
describe('success cases', () => {
it('returns a list of accounts', (done: DoneCallback) => {

View File

@ -1,7 +1,7 @@
import * as chai from 'chai';
import FixtureSubprovider = require('web3-provider-engine/subproviders/fixture');
import { promisify } from '@0x/utils';
import { promisify, providerUtils } from '@0x/utils';
import EthereumTx = require('ethereumjs-tx');
import { NonceTrackerSubprovider, Web3ProviderEngine } from '../../src';
@ -56,7 +56,7 @@ describe('NonceTrackerSubprovider', () => {
const nonceTrackerSubprovider = new NonceTrackerSubprovider();
provider.addProvider(nonceTrackerSubprovider);
provider.addProvider(createFixtureSubprovider());
provider.start();
providerUtils.startProviderEngine(provider);
const payload = { ...getTransactionCountPayload, params: ['0x0', 'pending'] };
@ -70,7 +70,7 @@ describe('NonceTrackerSubprovider', () => {
const nonceTrackerSubprovider = new NonceTrackerSubprovider();
provider.addProvider(nonceTrackerSubprovider);
provider.addProvider(createFixtureSubprovider());
provider.start();
providerUtils.startProviderEngine(provider);
const payload = { ...getTransactionCountPayload, params: ['0x0', 'latest'] };
@ -91,7 +91,7 @@ describe('NonceTrackerSubprovider', () => {
},
}),
);
provider.start();
providerUtils.startProviderEngine(provider);
const noncePayload = {
...getTransactionCountPayload,
@ -126,7 +126,7 @@ describe('NonceTrackerSubprovider', () => {
},
}),
);
provider.start();
providerUtils.startProviderEngine(provider);
const noncePayload = {
...getTransactionCountPayload,

View File

@ -1,3 +1,4 @@
import { providerUtils } from '@0x/utils';
import * as chai from 'chai';
import { JSONRPCResponsePayload } from 'ethereum-types';
import * as ethUtils from 'ethereumjs-util';
@ -48,7 +49,7 @@ describe('PrivateKeyWalletSubprovider', () => {
provider.addProvider(subprovider);
const ganacheSubprovider = new GanacheSubprovider({});
provider.addProvider(ganacheSubprovider);
provider.start();
providerUtils.startProviderEngine(provider);
});
describe('success cases', () => {
it('returns a list of accounts', (done: DoneCallback) => {

View File

@ -1,4 +1,5 @@
import { DoneCallback } from '@0x/types';
import { providerUtils } from '@0x/utils';
import * as chai from 'chai';
import { JSONRPCResponsePayload } from 'ethereum-types';
import * as Sinon from 'sinon';
@ -20,7 +21,7 @@ describe('RedundantSubprovider', () => {
const subproviders = [ganacheSubprovider];
const redundantSubprovider = new RedundantSubprovider(subproviders);
provider.addProvider(redundantSubprovider);
provider.start();
providerUtils.startProviderEngine(provider);
const payload = {
jsonrpc: '2.0',
@ -44,7 +45,7 @@ describe('RedundantSubprovider', () => {
const subproviders = [nonExistentSubprovider as Subprovider, ganacheSubprovider];
const redundantSubprovider = new RedundantSubprovider(subproviders);
provider.addProvider(redundantSubprovider);
provider.start();
providerUtils.startProviderEngine(provider);
const payload = {
jsonrpc: '2.0',