Forge
Added
#[should_panic(expected: (...))]now supports regular strings inside mixed tuples, alongside short strings and numbers.#[derive(Fuzzable)]macro that automatically generatesFuzzabletrait implementations for structs and enumsSNFOUNDRY_CACHEenvironment variable to allow to specify a custom cache directory
Changed
snforge_scarb_plugindiagnostics for named-argument kind violations now include both possible values and invalid arguments found.snforge test --exactnow reports the exact number of filtered-out tests in summaries instead ofother.- Minimal required
Scarbversion is now2.13.1(updated from2.12.0).
Fixed
- Bug in forge debugging and
--gas-reportthat caused panic in case of a call to non-existent selector snforge testnow fails fast and explicitly when[cairo] enable-gas = false. Read more inScarb.tomlreference.#[test]macro now expands correctly insnforge_scarb_pluginfor cases involving block expressions (e.g. function code starting with[)tracked_resourcefield fromScarb.tomlis now taken into account when runningsnforge test
Removed
- The deprecated
snforge clean-cachecommand. Usesnforge clean cacheinstead
Cast
Added
--no-abiflag fordeclare,declare-from, anddeploy, erasing the ABI before class declaration.sncast get spec-versioncommand that returns the version of the Starknet JSON-RPC specification used by the nodesncast get tx-receipt(alias:get transaction-receipt) command that returns the receipt of a transaction
Fixed
sncast completionsno longer fails due to invalid local or globalsnfoundry.tomlconfig.- Non-panic errors no longer bypass foundry UI.
--jsonnow works for user-facing errors where plain text was printed before (excluding clap arg-parsing errors). - Build failures now return command errors instead of panicking.
- In command errors,
commandfield now universally displays a full command path (get tx-status,account import) (previously in some cases, only top-level command name was shown, e.g.get,account). sncast account deploynow correctly writes deployed address to keystore account file.sncast declarenow correctly includes--keystoreflag in the suggested deploy command when keystore is used.
Removed
argentoption for--typeflag inaccount createandaccount importcommands. Usereadyinstead. Old account files with"type": "argent"are still loaded correctly.