dmihal / eth-permit

Lightweight library for signing ERC-2612 permit signatures.
https://www.npmjs.com/package/eth-permit
139 stars 30 forks source link

eth permit won't work at all in nodejs #9

Closed BuggerBag closed 2 years ago

BuggerBag commented 2 years ago

Hi, eth permit and get following error

D:\@@MRT@@\driver\node_modules\eth-permit\dist\rpc.js:55
        _provider.send(payload, callback).catch((error) => {
                                         ^

TypeError: Cannot read properties of undefined (reading 'catch')
    at D:\@@MRT@@\driver\node_modules\eth-permit\dist\rpc.js:55:42
    at new Promise (<anonymous>)
    at Object.exports.send (D:\@@MRT@@\driver\node_modules\eth-permit\dist\rpc.js:25:46)
    at Object.exports.call (D:\@@MRT@@\driver\node_modules\eth-permit\dist\rpc.js:109:48)
    at D:\@@MRT@@\driver\node_modules\eth-permit\dist\eth-permit.js:94:38
    at Generator.next (<anonymous>)
    at D:\@@MRT@@\driver\node_modules\eth-permit\dist\eth-permit.js:8:71
    at new Promise (<anonymous>)
    at __awaiter (D:\@@MRT@@\driver\node_modules\eth-permit\dist\eth-permit.js:4:12)
    at exports.signERC2612Permit (D:\@@MRT@@\driver\node_modules\eth-permit\dist\eth-permit.js:88:100)
    at create_transaction (D:\@@MRT@@\driver\scripts\Alice-2st-approve.js:143:26)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at async main (D:\@@MRT@@\driver\scripts\Alice-2st-approve.js:228:3)
BuggerBag commented 2 years ago

my config:

const { signERC2612Permit } = require("eth-permit");

....

 const result = await signERC2612Permit(
      web3.currentProvider,
      contractAddress,
      fromAddress,
      spender,
      50
    );

I used Ethers Wallet support.

BuggerBag commented 2 years ago

eth permit has been deprecated! do not use it at all. use ERC 777 with reentrancyGuard from openzepplin. on testnet it won't work well.