This repository has been archived by the owner on Feb 26, 2024. It is now read-only.
v7.0.0-beta.1 #1664
davidmurdoch
announced in
Releases
v7.0.0-beta.1
#1664
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Highlights
Fixes
New Features
Known Issues
Future Plans
This release is the second beta release of the new and improved Ganache v7.0.0. You'll definitely want to catch up on the previous changes, if you haven't already, before reading on!
Thanks to everyone who tried out our previous alpha and beta releases and provided feedback! You have been immensely helpful!
Special thanks to Trufflers and community members for reporting and commenting on issues fixed by this release: @MicaiahReid, @0xGorilla, @MatthiasLohr, @0xng, and @FFdhorkin!
Note: this is a beta release; even these 7.0.0 release notes are "beta" and the information here is likely incomplete. There may still be bugs and kinks to work out before we ship things off to
rc
, then finally tolatest
. You absolutely should use this beta release, please do try it out and let us know if breaks for you!To install globally run:
We've changed 15 files across 6 merged pull requests, tallying 204 additions and 39 deletions, since our last beta release.
This release is a a bit light on the changes this time around. We wanted to get a quick release out before the team here at Truffle takes a few days off to be with family over the Thanksgiving holiday here in the USA.
This release contains some small bug fixes and a new config option. Do continue to open new issues and questions while we're away; we're loving the feedback, questions, and issues coming in from everyone trying out these releases ❤️
back to top
Fix Transaction Replacement (#1650)
When a transaction is in the transaction pool, it can be replaced by sending another transaction with the same nonce and with an extra premium on the gas price. This
priceBump
is a percentage that is set by a node and dictates how much that extra premium needs to be in order to replace an existing transaction.Before this fix, Ganache would only replace transactions with gas price greater than the
priceBump
percentage. So, when MetaMask or some other wallet's "cancel transaction" feature was used, which sets the replacement transaction's gas price to exactlypriceBump
more than the original, Ganache would reject the replacement transaction as underpriced. With this fix, Ganache will replace transactions with gas price greater than or equal to thepriceBump
percentage.This fix also aligns us closer with how Geth handles replacement transactions after the introduction of EIP-1559 transactions. Previously, we would compare the
effectiveGasPrice
of the existing and replacement transaction. TheeffectiveGasPrice
represents the lesser value betweenmaxFeePerGas
andbaseFeePerGas + maxPriorityFeePerGas
. If the replacement transaction'seffectiveGasPrice
was greater than the existing transaction'seffectiveGasPrice
by greater thanpriceBump
percent, we'd call it a valid replacement. Geth, however, requires that both themaxFeePerGas
and themaxPriorityFeePerGas
are greater in the replacement transaction, so we've updated ourselves to match.back to fixes
Fix async request processing (#1592)
A misconfiguration of the default options on startup caused all requests to be executed sequentially. Thanks goes to @0xGorilla for finding this issue!
back to fixes
Don't return an error from miner_start if already started (#1632)
A quick and easy fix! When using
legacyInstamine
modeminer_start
used to return an RPC error if the miner was already started. Now it doesn't 🤯back to fixes
back to top
--miner.priceBump
optioneth_maxPriorityFeePerGas
RPC methodAdd a
miner.priceBump
Option (#1650)The new
--miner.priceBump
option allows you to specify the percentage increase in the gas price required to replace an existing transaction. For example, if--miner.priceBump=10
(the default) is used on startup and a transaction withmaxFeePerGas = 100 GWEI
andmaxPriorityFeePerGas = 1 GWEI
is waiting in the transaction pool to be mined, a transaction withmaxFeePerGas >= 110 GWEI
andmaxPriorityFeePerGas >= 1.1 GWEI
will be required to replace the existing transaction.back to features
Add
eth_maxPriorityFeePerGas
RPC Method (#1658)Ganache now supports the
eth_maxPriorityFeePerGas
RPC method. Currently, this defaults to returning 1 GWEI. In the future, we may adjust the behavior so it returns the current gas price minus the latest block'sbaseFeePerGas
.back to features
back to top
evm_setAccountNonce
is race-conditiony (#1646)--miner.callGasLimit
implementation is wrong (#1645)eth_call
with fork is not always behaving as it should in alpha version (#1547)debug_traceTransaction
resultsback to top
eth_maxPriorityFeePerGas
RPC method to return as Geth does,eth_gasPrice - baseFeePerGas
.eth_feeHistory
RPC method.eth_createAccessList
method.evm_mine
will return the new blocks instead of just0x0
.evm_setCode
andevm_setStorageAt
RPC methods.evm_snapshot
ids globally unique (unpredictable instead of a counter).eth_getRawTransactionByHash
RPC method.debug_accountAt
RPC method.ganache filecoin
command will look for the@ganache/filecoin
package and start up a Filecoin and IPFS server.ganache --flavor ethereum --flavor filecoin --flavor optimism
.ganache --fork mainnet
to fork mainnet via your own Infura account.Open new issues (or join our team) to influence what we gets implemented and prioritized.
back to top
💖 The Truffle Team
This discussion was created from the release v7.0.0-beta.1.
Beta Was this translation helpful? Give feedback.
All reactions