Escribí un contrato inteligente simple en Solidity 0.6.6 que estoy tratando de implementar en BSC Testnet.
Esto es lo que tengo en mi archivo truffle-config.js (privateKeys es una matriz con una sola entrada de ['0x + privatekey']:
networks: { bscTestnet: { provider: () => new HDWalletProvider( privateKeys, 'https://data-seed-prebsc-1-s1.binance.org:8545/' ), network_id: 97, skipDryRun: true } }Cuando ejecuto el comando "truffle migrate --reset --network bscTestnet" aparece el siguiente error:
Compiling your contracts... =========================== > Everything is up to date, there is nothing to compile. Starting migrations... ====================== > Network name: 'bscTestnet' > Network id: 97 > Block gas limit: 30000000 (0x1c9c380) 1_initial_migration.js ====================== Deploying 'Migrations' ---------------------- Error: *** Deployment Failed *** "Migrations" -- cb is not a function. at /Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/deployer/src/deployment.js:365:1 at runMicrotasks (<anonymous>) at processTicksAndRejections (node:internal/process/task_queues:96:5) at Migration._deploy (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/migrate/Migration.js:70:1) at Migration._load (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/migrate/Migration.js:56:1) at Migration.run (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/migrate/Migration.js:217:1) at Object.runMigrations (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:150:1) at Object.runFrom (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:110:1) at Object.runAll (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:114:1) at Object.run (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/migrate/index.js:79:1) at runMigrations (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate/run.js:80:1) at Object.module.exports [as run] (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/core/lib/commands/migrate/run.js:44:1) at Command.run (/Users/admin/.nvm/versions/node/v17.4.0/lib/node_modules/truffle/build/webpack:/packages/core/lib/command.js:189:1) Truffle v5.4.31 (core: 5.4.31) Node v17.4.0Abrí un problema al respecto: https://github.com/trufflesuite/truffle/issues/4676 Supongo que es un error en HardwareWallet2.0.2. Volver a HardwareWallet2.0.0 resolvió el problema para mí
npm i @truffle/hdwallet-provider@2.0.0ACTUALIZACIÓN: correcto, solución alternativa: volví a @HDWalletProvider a v2.0.1 y pude migrar.
Supongo que debe haber un problema con la nueva versión para las personas que se actualizaron hoy.
================
Mismo problema con Polygon Mumbai.
La función "cb" se refiere a la función de devolución de llamada. La parte extraña es que el mensaje de error no hace referencia a mi propio código en absoluto; hace referencia a las migraciones.js ubicado en:
<.nvm/versions/node/v16.11.1/lib/node_modules/truffle/build/webpack:/packages/deployer/src/deployment.js:365:1 en processTicksAndRejections (node:internal/process/task_queues:96:5 >
Esto me lleva a creer que hay un problema con 1_initial_migration.js... sin embargo, eso se genera automáticamente, así que no puedo ver ningún problema... es extraño.
1_migración_inicial.js:
const Migrations = artifacts.require("Migrations"); module.exports = function(deployer) { deployer.deploy(Migrations); };