Update to ethers 5

This commit is contained in:
bumi 2020-06-24 01:20:04 +02:00
parent 2b99593699
commit c2dcedfe58
8 changed files with 20 additions and 33 deletions

View File

@ -49,7 +49,7 @@ class Kredits {
this.addresses['Kernel'] = this.addresses['Kernel'] || DaoAddresses[network.chainId.toString()]; this.addresses['Kernel'] = this.addresses['Kernel'] || DaoAddresses[network.chainId.toString()];
let addressPromises = contractsToLoad.map((contractName) => { let addressPromises = contractsToLoad.map((contractName) => {
return this.Kernel.getApp(contractName).then((address) => { return this.Kernel.getApp(contractName).then((address) => {
this.addresses[contractName] = address; this.addresses[contractName] = address[0]; // we get an array from the getApp response
}).catch((error) => { }).catch((error) => {
throw new Error(`Failed to get address for ${contractName} from DAO at ${this.Kernel.contract.address} throw new Error(`Failed to get address for ${contractName} from DAO at ${this.Kernel.contract.address}
- ${error.message}` - ${error.message}`

View File

@ -60,7 +60,7 @@
"yargs": "^15.0.0" "yargs": "^15.0.0"
}, },
"dependencies": { "dependencies": {
"ethers": "^4.0.47", "ethers": "^5.0.2",
"ipfs-http-client": "^41.0.1", "ipfs-http-client": "^41.0.1",
"kosmos-schemas": "^2.2.1", "kosmos-schemas": "^2.2.1",
"node-fetch": "^2.6.0", "node-fetch": "^2.6.0",

View File

@ -1,9 +1,12 @@
const knownDAOAddresses = require('../lib/addresses/dao.json'); const knownDAOAddresses = require('../lib/addresses/dao.json');
const knownKreditsKitAddresses = require('../lib/addresses/KreditsKit.json'); const knownKreditsKitAddresses = require('../lib/addresses/KreditsKit.json');
const getNetworkId = require('./helpers/networkid.js') const getNetworkId = require('./helpers/networkid.js')
const ethers = require('ethers');
module.exports = async function(callback) { module.exports = async function(callback) {
const networkId = await getNetworkId(web3) const provider = new ethers.providers.Web3Provider(web3.currentProvider);
let network = await provider.getNetwork();
let networkId = network.chainId;
console.log('# All known DAO addresses'); console.log('# All known DAO addresses');
Object.keys(knownDAOAddresses).forEach((networkId) => { Object.keys(knownDAOAddresses).forEach((networkId) => {

View File

@ -3,10 +3,10 @@ const deployDAOFactory = require('@aragon/os/scripts/deploy-daofactory.js')
const fs = require('fs'); const fs = require('fs');
const path = require('path'); const path = require('path');
const argv = require('yargs').argv const argv = require('yargs').argv
const namehash = require('ethers').utils.namehash; const ethers = require('ethers');
const namehash = ethers.utils.namehash;
const fileInject = require('./helpers/file_inject.js') const fileInject = require('./helpers/file_inject.js')
const getNetworkId = require('./helpers/networkid.js')
const DAOFactory = artifacts.require('DAOFactory') const DAOFactory = artifacts.require('DAOFactory')
const KreditsKit = artifacts.require('KreditsKit') const KreditsKit = artifacts.require('KreditsKit')
@ -26,9 +26,10 @@ const daoFactoryAddress = kreditsArappConfig.daoFactory || argv['daoFactory']
const ensAddr = arapp.environments[environment].registry || argv['ensAddress'] const ensAddr = arapp.environments[environment].registry || argv['ensAddress']
module.exports = async function(callback) { module.exports = async function(callback) {
const networkId = await getNetworkId(web3) const provider = new ethers.providers.Web3Provider(web3.currentProvider);
const network = await provider.getNetwork();
const networkId = network.chainId;
console.log(`Deploying to networkId: ${networkId}`) console.log(`Deploying to networkId: ${networkId}`)
if (!ensAddr) { if (!ensAddr) {

View File

@ -1,6 +1,5 @@
const argv = require('yargs').argv; const argv = require('yargs').argv;
const ethers = require('ethers'); const ethers = require('ethers');
const getNetworkId = require('./networkid.js');
const Kredits = require('../../lib/kredits'); const Kredits = require('../../lib/kredits');
const arapp = require('../../arapp.json'); const arapp = require('../../arapp.json');
@ -10,7 +9,7 @@ const apm = arapp.environments[environment].apm;
module.exports = async function(web3) { module.exports = async function(web3) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
const provider = new ethers.providers.Web3Provider(web3.currentProvider); const provider = new ethers.providers.Web3Provider(web3.currentProvider);
let signer = provider.getSigner(); const signer = provider.getSigner();
// checking if siner supports signing transactions // checking if siner supports signing transactions
signer.getAddress().then(_ => { signer.getAddress().then(_ => {
new Kredits(provider, signer, { apm }).init().then(kredits => { new Kredits(provider, signer, { apm }).init().then(kredits => {

View File

@ -1,17 +0,0 @@
module.exports = function(web3) {
return new Promise((resolve, reject) => {
let func;
if (web3.version.getNetwork) {
func = web3.version.getNetwork;
} else {
func = web3.eth.net.getId;
}
func((err, network) => {
if (err) {
reject(err);
} else {
resolve(network);
}
})
})
}

View File

@ -1,12 +1,14 @@
const fs = require('fs'); const fs = require('fs');
const getNetworkId = require('./networkid.js'); const ethers = require('ethers');
module.exports = async function(callback) { module.exports = async function(callback) {
const daoAddressPath = 'lib/addresses/dao.json'; const daoAddressPath = 'lib/addresses/dao.json';
// TODO maybe do the same for KreditsKit address file // TODO maybe do the same for KreditsKit address file
try { try {
const networkId = await getNetworkId(web3); const provider = new ethers.providers.Web3Provider(web3.currentProvider);
const network = await provider.getNetwork();
const networkId = network.chainId;
const daoAddresses = JSON.parse(fs.readFileSync(daoAddressPath)); const daoAddresses = JSON.parse(fs.readFileSync(daoAddressPath));
const oldNetworkId = Math.max(...Object.keys(daoAddresses).map(a => parseInt(a))); const oldNetworkId = Math.max(...Object.keys(daoAddresses).map(a => parseInt(a)));
const localDaoAddress = daoAddresses[oldNetworkId]; const localDaoAddress = daoAddresses[oldNetworkId];

View File

@ -3,13 +3,15 @@ const path = require('path');
const ethers = require('ethers'); const ethers = require('ethers');
const fileInject = require('./helpers/file_inject.js'); const fileInject = require('./helpers/file_inject.js');
const getNetworkId = require('./helpers/networkid.js');
const KreditsKit = require('../lib/kreditskit'); const KreditsKit = require('../lib/kreditskit');
const addressesPath = path.join(__dirname, '..', 'lib/addresses'); const addressesPath = path.join(__dirname, '..', 'lib/addresses');
module.exports = async function(callback) { module.exports = async function(callback) {
const networkId = await getNetworkId(web3) const provider = new ethers.providers.Web3Provider(web3.currentProvider);
const signer = provider.getSigner();
const network = await provider.getNetwork();
const networkId = network.chainId;
console.log(`Deploying to networkId: ${networkId}`) console.log(`Deploying to networkId: ${networkId}`)
let kitAddresseFile = path.join(addressesPath, 'KreditsKit.json'); let kitAddresseFile = path.join(addressesPath, 'KreditsKit.json');
@ -20,9 +22,6 @@ module.exports = async function(callback) {
} }
console.log(`Using KreditsKit at: ${kreditsKitAddress}`); console.log(`Using KreditsKit at: ${kreditsKitAddress}`);
const provider = new ethers.providers.Web3Provider(web3.currentProvider);
let signer = provider.getSigner();
let kit = await new KreditsKit(provider, signer).init() let kit = await new KreditsKit(provider, signer).init()
// TODO: get rid of the hard coded gas limit // TODO: get rid of the hard coded gas limit