diff --git a/lib/kredits.js b/lib/kredits.js index caa654b..e63dda5 100644 --- a/lib/kredits.js +++ b/lib/kredits.js @@ -49,7 +49,7 @@ class Kredits { this.addresses['Kernel'] = this.addresses['Kernel'] || DaoAddresses[network.chainId.toString()]; let addressPromises = contractsToLoad.map((contractName) => { 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) => { throw new Error(`Failed to get address for ${contractName} from DAO at ${this.Kernel.contract.address} - ${error.message}` diff --git a/package.json b/package.json index 08db072..b973194 100644 --- a/package.json +++ b/package.json @@ -60,7 +60,7 @@ "yargs": "^15.0.0" }, "dependencies": { - "ethers": "^4.0.47", + "ethers": "^5.0.2", "ipfs-http-client": "^41.0.1", "kosmos-schemas": "^2.2.1", "node-fetch": "^2.6.0", diff --git a/scripts/current-address.js b/scripts/current-address.js index 7776569..b4c418f 100644 --- a/scripts/current-address.js +++ b/scripts/current-address.js @@ -1,9 +1,12 @@ const knownDAOAddresses = require('../lib/addresses/dao.json'); const knownKreditsKitAddresses = require('../lib/addresses/KreditsKit.json'); const getNetworkId = require('./helpers/networkid.js') +const ethers = require('ethers'); 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'); Object.keys(knownDAOAddresses).forEach((networkId) => { diff --git a/scripts/deploy-kit.js b/scripts/deploy-kit.js index 275f92c..9c95d56 100644 --- a/scripts/deploy-kit.js +++ b/scripts/deploy-kit.js @@ -3,10 +3,10 @@ const deployDAOFactory = require('@aragon/os/scripts/deploy-daofactory.js') const fs = require('fs'); const path = require('path'); 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 getNetworkId = require('./helpers/networkid.js') const DAOFactory = artifacts.require('DAOFactory') const KreditsKit = artifacts.require('KreditsKit') @@ -26,9 +26,10 @@ const daoFactoryAddress = kreditsArappConfig.daoFactory || argv['daoFactory'] const ensAddr = arapp.environments[environment].registry || argv['ensAddress'] - 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}`) if (!ensAddr) { diff --git a/scripts/helpers/init_kredits.js b/scripts/helpers/init_kredits.js index e151977..9a5725d 100644 --- a/scripts/helpers/init_kredits.js +++ b/scripts/helpers/init_kredits.js @@ -1,6 +1,5 @@ const argv = require('yargs').argv; const ethers = require('ethers'); -const getNetworkId = require('./networkid.js'); const Kredits = require('../../lib/kredits'); const arapp = require('../../arapp.json'); @@ -10,7 +9,7 @@ const apm = arapp.environments[environment].apm; module.exports = async function(web3) { return new Promise((resolve, reject) => { const provider = new ethers.providers.Web3Provider(web3.currentProvider); - let signer = provider.getSigner(); + const signer = provider.getSigner(); // checking if siner supports signing transactions signer.getAddress().then(_ => { new Kredits(provider, signer, { apm }).init().then(kredits => { diff --git a/scripts/helpers/networkid.js b/scripts/helpers/networkid.js deleted file mode 100644 index a1b517d..0000000 --- a/scripts/helpers/networkid.js +++ /dev/null @@ -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); - } - }) - }) -} diff --git a/scripts/helpers/update_local_networkid.js b/scripts/helpers/update_local_networkid.js index b4bda0f..79575a3 100644 --- a/scripts/helpers/update_local_networkid.js +++ b/scripts/helpers/update_local_networkid.js @@ -1,12 +1,14 @@ const fs = require('fs'); -const getNetworkId = require('./networkid.js'); +const ethers = require('ethers'); module.exports = async function(callback) { const daoAddressPath = 'lib/addresses/dao.json'; // TODO maybe do the same for KreditsKit address file 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 oldNetworkId = Math.max(...Object.keys(daoAddresses).map(a => parseInt(a))); const localDaoAddress = daoAddresses[oldNetworkId]; diff --git a/scripts/new-dao.js b/scripts/new-dao.js index 8601034..5a022f8 100644 --- a/scripts/new-dao.js +++ b/scripts/new-dao.js @@ -3,13 +3,15 @@ const path = require('path'); const ethers = require('ethers'); const fileInject = require('./helpers/file_inject.js'); -const getNetworkId = require('./helpers/networkid.js'); const KreditsKit = require('../lib/kreditskit'); const addressesPath = path.join(__dirname, '..', 'lib/addresses'); 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}`) let kitAddresseFile = path.join(addressesPath, 'KreditsKit.json'); @@ -20,9 +22,6 @@ module.exports = async function(callback) { } 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() // TODO: get rid of the hard coded gas limit