Walnut logo

Changelog

Stay updated on everything we ship. Subscribe with your email to get the latest Walnut news straight to your inbox.

Sneak peak of the Walnut Debugger Window with arguments and result values

Added Argument and Result Values to the Debugger

Function arguments and return results are now visible in the step-by-step-debugger. In the screenshot above, the extract_age function returns a single result: 18.

Improvements

  • The debugger now shows arguments and return values. Some data might be missing in specific places, which will be improved in the future.
  • Internal function calls in the Call Trace now display the argument and result values.
  • New API endpoint for querying the source code of verified contracts via API using Class ID. Available at the /{network_id}/classes/{class_id} endpoint. Try it here.
  • Added support for the Sepolia testnet and deprecated Goerli.
Sneak peak of the Walnut Verifaction API for starknet smart contracts

Contract Verification API

In the latest release, we have introduced the contract class verification API endpoint.

Improvements

  • Launched new API at api.walnut.dev with a /verify endpoint for Cairo Smart Contract Verification.
  • In the Call Trace, the DELEGATE and CALL functions have now been merged and are displayed as DCALL.
Sneak peak of the Walnut Debugger for Starknet Transactions

Debugger for Starknet Transactions

In the latest release, we finally launched the first version of the step by step debugger. It comes with support for multiple contracts in the transaction, and moves the code execution accordingly.

Improvements

  • External calls now also present the source code of the contract in Cairo.
Gif of showing an code snippet on Walnut

Contract Source Code in Call Trace

In the latest release, we added support for displaying the corresponding Cairo source code for each call in the call trace.

Improvements

  • Each call trace now displays the associated Cairo line and the corresponding code snippet where the call occurred. This only works for verified contracts.
  • The new events tab showcases all emitted events for simulated transactions.
  • Data for arguments and results is now also available in view functions.
Gif of resimulating an existing transaction on Walnut

Transaction Simulations

In this release we added support for transaction simulations into Walnut. You can simulate a new transaction, or re-simulate an existing one.

Improvements

  • New transaction simulation screen that allows to re-run existing transactions or simulate new ones on the Starknet Mainnet network
  • Simulations support modification of the following transaction parameters: sender address, calldata, block number, chain id, and transaction version
Internal function calls in a transaction call trace.

Internal functions in the call trace

In this release we added support for internal function calls in the call trace. After verifying contracts, the call trace presents calls to every Cairo function, and will also present details about each call's arugments and return values.

Improvements

  • Support for different colors in the call trace to visually separate certain elements. For example contract names, entrypoints, arguments.
  • After clicking on a call trace item, you get details about argument and return values.
Walnut homepage with search for transactions

Walnut v0.1.0

This is our first changelog message. We started building Walnut to make transaction debugging and simulations on Starknet easier. In the initial version, we plan the following features:

Transaction Call Trace

  • Support for any transaction, including failed transactions
  • The call trace will include calls to internal functions within each contract involved in the simulated transaction
  • Each call will present decoded arguments with names and values, as well as the return value
  • For verified contracts, ability to see the exact call location mapped to the Cairo source code.

Contract Verification

  • Ability to upload the contract source code to Walnut for verification

Step by step debugger

  • Visual debugger that will allow to re-run the transaction line-by-line, mapped to the original source code in Cairo.

Transaction Simulations

  • Visual debugger that will allow to re-run the transaction line-by-line, mapped to the original source code in Cairo.