Debugging Ethereum smart contracts made easier with Buidler EVM

Argentinian smart contract auditor Nomic Labs today released a new tool for finding bugs in Solidity, the programming language underlying the Ethereum blockchain platform. Buidler EVM is a development network built into Nomic’s smart contract development tool, also called Buidler. It should make life easier for Ethereum developers.

The tool gathers information while smart contract tests are running. Developers can then use this to help debug the code, making the whole process more efficient. “It always knows which smart contracts are being run, what they do exactly and why they fail,” wrote Patricio Palladino, co-founder of Nomic Labs.

Pointing out these errors could save developers a lot of time and frustration. More than that, it could make the code more efficient, and cheaper to run. Inefficient code can use up a lot of gas (a secondary cryptocurrency used to pay transaction fees on Ethereum), as shown in the case of Fairwin, which was clogging up the Ethereum network.

Buidler EVM is built on top of an unmodified version of the Javascript implementation of the Ethereum Virtual Machine (known as ethereumjs-vm). This is the same EVM implementation that debugging and testing tools Ganache and Remix IDE use. 

For the developers, Buidler EVN can identify and give error messages for functions including calling a non-payable function with ETH, sending ETH to a contract without a payable fallback function, and incorrectly calling a precompiled contract.

Palladino wrote that other tools can be unreliable or have drawbacks like not explaining their error messages in full. Instead, Buidler EVM, wrote Palladino, “plays nicely with your current tools.”

If only it was spelt properly.

Source Link