This repository has been archived by the owner on Jul 24, 2023. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 4
Lotus release handoff: FVM Topaz (r08) #15
Labels
Comments
jimpick
added a commit
to jimpick/lotus-fvm-localnet
that referenced
this issue
Nov 17, 2022
@jimpick -- commit has been updated. |
f8-ptrk
added
FVM testnet release
live-ntwk
label issues that have a live network
labels
Nov 17, 2022
|
|
7 tasks
retired |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Request
Please deploy the Wallaby testnet with the following Lotus release.
Git reference
Branch: https://github.com/filecoin-project/lotus/tree/release/fevm-wallaby
Commit: filecoin-project/lotus@e7b78dbCommit: filecoin-project/lotus@8d0403d
New Features
Support for EVM logs
This release delivers full support for EVM logs, in the form of FIP-0049 Actor Events. Events produced by actors get included in the receipt, which is then committed to the chain via the receipt root. The EVM runtime now handles the
LOG{0..4}
opcodes by emitting actor events.Feature completeness of Ethereum JSON-RPC API
With this release, the Ethereum JSON-RPC API becomes feature complete. This means that all Ethereum tools should be able to operate full against Filecoin (except for debugging purposes -- those tend to be client-specific APIs).
There are still some adjustments needed. If you notice any glitch or hiccup during your testing with Ethereum tools, libraries, frameworks like Hardhat, Truffle, Foundry, etc., please let us know. There may be implicit, undocumented assumptions that wallets, tools, etc. that we may not have been aware of.
This release adds support for the following Ethereum JSON-RPC methods:
Additionally,
eth_getTransactionReceipt
now returns the transaction logs too.Events indexing
Lotus now indexes events in a sqlite database so it can serve historical queries. In the following days, we add database maintenance logic and will optimize this subsystem.
Memory limits and memory expansion gas
In preparation for user programmability, the system now enforces hard memory limits during actor execution (maximum 512MiB utilization across the entire call stack, value will be revisited). Code for charging for memory expansion gas has also landed, but is currently free.
New Filecoin-specific precompiles
See filecoin-project/ref-fvm#947 for more details. We will write up more in the next days.
Network Version 18 (Hygge)
Support for network version 18 has been added. FEVM now runs under nv18. Wallaby and devnet configurations bootstrap into nv18 at genesis.
New
[ActorEvent]
configuration section inconfig.toml
To activate support for events indexing, historical events, and filtering APIs, you will need to set these attributes in the config file:
Instructions for network operators
config.toml
file under $LOTUS_HOME. Make sure to restart your daemon after.Instructions for node operators and explorers
config.toml
file under $LOTUS_HOME. Make sure to restart your daemon after.Step (2) is necessary for users to be able to use the new log querying and streaming methods. Explorers wanting to process events in real-time will likely want to use the streaming APIs.
Instructions for RPC endpoint operators
You will need to whitelist these new methods.
For Ethereum clients:
For Filecoin clients:
Verification Tests
All past tests should work (e.g. #12). In addition, run the following event-specific tests.
Deploy a simple contract with events
xxd -r -p events_contract.hex events_contract.bin
Deploy the OpenZeppelin ERC20 contract using Remix IDE and MetaMask
No modifications are necessary any longer to drop events.
MyToken.sol
.The text was updated successfully, but these errors were encountered: