Así que esta es mi primera interacción con hardhat. Creé un proyecto de muestra usando npx hardhat pero por alguna razón, cuando intento ejecutar:
npx hardhat testObtuve el siguiente error:
Error HH502: Couldn't download compiler versions list. Please check your connection.Con el siguiente error en el seguimiento de la pila:
Caused by: FetchError: request to https://binaries.soliditylang.org/windows-amd64/list.json failed, reason: getaddrinfo EAI_AGAIN binaries.soliditylang.org Así que intenté navegar a binaries.soliditylang.org con Chrome y descubrí que net::ERR_NAME_NOT_RESOLVED .
(Recibo este error incluso cuando trato de navegar a docs.soliditylang.org)
Entiendo que tiene algo que ver con el DNS, pero no tengo ni idea de cómo resolverlo.
Me enfrenté a un problema similar. Sin embargo, para mí, hardhat no puede descargar la lista de versiones del compilador detrás del proxy corporativo. Intenté muchas cosas. Sin suerte. Después de muchas pruebas y errores, encontré una manera de hacer que esto funcione. Descargue list.json y guárdelo localmente en C:\Users\<your-user>\AppData\Local\hardhat-nodejs\Cache\compilers\windows-amd64 (windows). Además, descargue el ejecutable del compilador solidity para Windows (versión requerida) desde https://github.com/ethereum/solidity/releases y colóquelo en la misma carpeta mencionada anteriormente. Ahora, lea detenidamente su list.json e identifique el objeto para la versión de interés del compilador solc. Cambie el nombre del ejecutable con el nombre largo dado en la path en ese objeto. Por ejemplo, si necesita la versión 0.8.0 de solc , la path en list.json para la versión 0.8.0 es solc-windows-amd64-v0.8.4+commit.c7e474f2.exe . Use esto para cambiar el nombre del ejecutable descargado. Ahora, ejecute npm test . Esto debería solucionar el problema.
También hay una forma interesante de ejecutar el compilador dentro de Docker en Windows. Para esto, siga la discusión aquí: https://github.com/NomicFoundation/hardhat/issues/1280
Agregar un archivo .env a la raíz del proyecto con
HTTPS_PROXY = ...Resuelto en https://github.com/NomicFoundation/hardhat/pull/1291