New Features
Fixes
Miscellaneous
Changelog
Known Issues
Future Plans
Presenting the latest version of Ganache! This release brings a couple of important bug fixes and one new feature: the ability to specify a file path for Ganache to write logs to – handy when using detach mode, where the logs are not (yet) available.
If you have some time, we encourage you to browse our issues to find anything you'd like implemented/fixed sooner. Give them a +1 and we'll use this community feedback to help prioritize what we work on! Or better yet, open a new issue or open a PR to fix an existing issue.
We've changed 59 files across 14 merged pull requests, tallying 2485 additions and 563 deletions, since our last release.
- feat: add hardfork to cli output (#4343)
- feat: allow logs to be written to a file by providing the
--logging.file
argument (#4195)
feat: add hardfork to cli output (#4343)
Ganache now outputs the hardfork to the console along with the rest of the startup information:
Chain
==================
Hardfork: shanghai
Id: 1337
back to new features
feat: allow logs to be written to a file by providing the --logging.file
argument (#4195)
Introducing the ability to specify a log file for Ganache to write its logs to. No more sifting through endless terminal output to find that one critical message you need. Just provide a path to your desired log file with ganache --logging.file <path-to-log-file>
, and you're all set! Now you can sit back, relax, and let Ganache do the heavy lifting while you focus on building awesome applications.
back to new features
back to top
- fix: show a helpful message when
ganache instances
is executed without a subcommand (#4368) - fix: resolve hardfork for blocks by blocknumber and timestamp (#4455)
- fix: add support for
mergeForkIdTransition
(#4463) - fix: ensure clique-signer for PoA networks (#4465)
fix: show a helpful message when ganache instances
is executed without a subcommand (#4368)
When ganache instances
is executed, a subcommand must be provided.
Previously an unhelpful error was thrown, with this fix we output a simple error message, followed by the the help text for ganache instances
.
$ ganache instances
ganache instances requires a subcommand:
ganache instances
Manage instances of Ganache running in detached mode.
(Ganache can be run in detached mode by providing the --detach flag)
Commands:
ganache instances list List instances running in detached mode
ganache instances stop <name> Stop the instance specified by <name>
Options:
-?, --help Show help [boolean]
fixes: #4360
back to fixes
fix: resolve hardfork for blocks by blocknumber and timestamp (#4455)
Starting with Shanghai, hardforks are determined by timestamp, rather than block number. When resolving the hardfork to use for a given block, we now consider the blocknumber and the timestamp.
fixes: #4450 (in that the correct hardfork is now resolved, which is not mergeForkIdTransition
)
See #4463
back to fixes
fix: add support for mergeForkIdTransition
(#4463)
Add internal support for mergeForkIdTransition
"hardfork", which is presently live only on Sepolia, but assumedly will eventually happen on other networks.
This doesn't add any functionality, but fixes: #4450 for transactions happening on mergeForkIdTransition
hardfork.
See #4455
back to fixes
fix: ensure clique-signer for PoA networks (#4465)
Fixes #4359
back to fixes
back to top
- docs: update contributing guide for linux (#4358)
- chore: use
localhost
as hostname fordocs.preview
dev command (#4357) - test: ensure tests that are skipped in development are run in CI (#4353)
- docs: complete macOS node-gyp troubleshooting steps in CONTRIBUTING.md (#4036)
- perf: optimize account init logging (#4318)
- docs: make light-mode links slightly darker to meet WCAG 2 Level AA contrast goals (#4383)
- perf: optimize options normalization (#4317)
- docs: preloads docs assets (#4384)
docs: update contributing guide for linux (#4358)
Python 2.7 is no longer a requirement to build ganache, but make
is.
back to miscellaneous
chore: use localhost
as hostname for docs.preview
dev command (#4357)
This is just to make ganache development from WSL easier.
back to miscellaneous
test: ensure tests that are skipped in development are run in CI (#4353)
Previously, tests that depend on an INFURA_KEY would be skipped if it were not provided. After this change these tests will fail in CI if no INFURA_KEY is provided.
Additionally, a test which was previously skipped is now run on Windows and Linux agents in Github Actions only. ( > server > listens on given interface only
)
back to miscellaneous
docs: complete macOS node-gyp troubleshooting steps in CONTRIBUTING.md (#4036)
Does what it says on the tin.
back to miscellaneous
perf: optimize account init logging (#4318)
Minor performance improvement on startup.
back to miscellaneous
docs: make light-mode links slightly darker to meet WCAG 2 Level AA contrast goals (#4383)
Changes the contrast on links on ganache.dev in light mode.
back to miscellaneous
perf: optimize options normalization (#4317)
Minor performance improvement on start up.
back to miscellaneous
docs: preloads docs assets (#4384)
Reduces page load time on ganache.dev by initiating downloads of assets that will get loaded from other CSS and JS files later.
back to miscellaneous
back to top
- #4358 docs: update contributing guide for linux (@davidmurdoch)
- #4357 chore: use
localhost
as hostname fordocs.preview
dev command (@davidmurdoch) - #4353 test: ensure tests that are skipped in development are run in CI (@jeffsmale90)
- #4343 feat: add hardfork to cli output (@davidmurdoch)
- #4368 fix: show a helpful message when
ganache instances
is executed without a subcommand (@jeffsmale90) - #4036 docs: complete macOS node-gyp troubleshooting steps in CONTRIBUTING.md (@OnlyOneJMJQ)
- #4318 perf: optimize account init logging (@davidmurdoch)
- #4383 docs: make light-mode links slightly darker to meet WCAG 2 Level AA contrast goals (@davidmurdoch)
- #4317 perf: optimize options normalization (@davidmurdoch)
- #4195 feat: allow logs to be written to a file by providing the
--logging.file
argument (@jeffsmale90) - #4455 fix: resolve hardfork for blocks by blocknumber and timestamp (@jeffsmale90)
- #4463 fix: add support for
mergeForkIdTransition
(@jeffsmale90) - #4465 fix: ensure clique-signer for PoA networks (@davidmurdoch)
- #4384 docs: preloads docs assets (@davidmurdoch)
back to top
Top Priority:
- interactive documentation's
debug_storageRangeAt
doesn't work (#3203) - Add
eth_createAccessList
RPC method (#1056)
Coming Soon™:
- Implications failed: fork.headers -> url (#2627)
- In Geth chain-mode, logic to accept/reject transactions based on gas price/limit should match Geth (#2176)
evm_mine
andminer_start
don't respect --mode.instamine=eager (#2029)evm_setAccount*
is race-conditiony (#1646)@ganache/filecoin@alpha
doesn't work withganache@alpha
(#1150)- Launching ganache with fork is throwing revert errors when communicating with 3rd party contracts (#956)
- Build a real pending block! (#772)
- VM Exception when interfacing with Kyber contract (#606)
- After calling
evm_mine
,eth_getLogs
returns same logs for all blocks (#533) - personal_unlockAccount works with any password (#165)
- --db Option Requires Same Mnemonic and Network ID (#1030)
back to top
Top Priority:
- Accept a genesis.json file (#1042)
Coming Soon™:
- Switch to esbuild to make build times faster/reasonable (#1555)
- fork specific block & specific index (#952)
- Allow to sync forked chain to the latest block (#643)
- Implement a streaming trace capability (#381)
- Improve log performance when forking (#145)
- Log contract events (#45)
back to top
Open new issues to influence what we gets implemented and prioritized.
💖 The Truffle Team