You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Jul 24, 2023. It is now read-only.
This is a MANDATORY release for the upcoming Hyperspace nv20 upgrade. The upgrade epoch is set at 87480, 2023-02-15T15:00:00Z, all node operators need to update your Hyperspace node to this tag before then. This release includes the fvm-v3-rc1, actor v10 bundle, a bunch of bug fixes and Eth RPC improvements.
Contracts can now be re-deployed after calling SELFDESTRUCT.
Calls to Solidity's transfer function will now invoke the target contract with 10M gas instead of invoking method-0.
Gas charging schedule has been changed according to FIP-57. Notably, it includes gas adjustments to some syscalls and increase in the state storage gas cost from 1,300 to 3,340 gas. As a result, developers shall expect increased gas usage compared to their previous messages.
Events implementation has been aligned with FIP-49 and FIP-54. Notably, event keys are now t1, t2, t3, t4 for topics; and d for data.
Node operators
Event Index migration
This release implements the final version of FIP-0049 (Actor Events) and FIP-0054 (EVM runtime). These involve changes in the event schema, internal event entry key names (topic{1..4} => t{1..4}, data => d), value padding, and flags.
Calls to eth_getLogs, as well as Eth subscriptions and Eth filters, are served through the event index (sqlite database under your Lotus repo).
Upon starting this version, a migration will kick off from v1 to v2 of the event index database. It should take less than a minute (usually a few seconds).
This migration enables both backwards compatibility and forward compatibility. Queries for past Eth logs will continue to work, as will queries for future Eth logs.
Look out for logs like this soon after starting and confirm that the final statement is one signalling competition and success:
The GranularityExported method in the Datacap actor was renamed to Granularity. Any contracts which use the FRC42 hash of GranularityExported which is 953701584 must be changed to use 3936767397 and redeployed.
Any contracts sending funds to actors that are not native accounts (f1, f3), Ethereum accounts, or EVM smart contracts must use the call_actor precompile. Solidity's transfer function will no longer work as that will attempt to invoke the target actor as an EVM contract.
All contracts interacting with built-in actors MUST upgrade to the latest version of Filecoin Solidity library. The IPLD codec used in the handle_filecoin_method solidity entrypoint and the call_actor should now be CBOR (0x51) not DAG_CBOR (0x71) as previously used. The underlying encoding (i.e. payload bytes) is the same, but the codec numbers are different. DAG_CBOR support will be re-enabled in the future but the usage of the codec implies additional runtime guarantees that have not yet been implemented.
Developers must:
Accept both DAG_CBOR (0x71) and CBOR (0x51) in inputs and treat them identically. Specifically, developers should:
Treat DAG_CBOR and CBOR as equivalent when returned from the call_actor precompile.
Treat DAG_CBOR and CBOR as equivalent when received as a parameter to handle_filecoin_method.
Use CBOR (0x51) in outputs. Specifically, developers should:
Always pass CBOR to the call_actor precompile. DAG_CBOR is currently forbidden.
Always return CBOR from handle_filecoin_method. DAG_CBOR is currently forbidden.
The text was updated successfully, but these errors were encountered:
Request
Please update Hyperspace nodes with the following Lotus release!
**The network will perform a light upgrade at epoch 87480, 2023-02-15T15:00:00.
Git reference
Branch: https://github.com/filecoin-project/lotus/tree/ntwk/hyperspace
Lotus tag: v1.20.0-hyperspace-nv20
Builtin Actor: hyperspace/v10.0.0-rc.2
This is a MANDATORY release for the upcoming Hyperspace nv20 upgrade. The upgrade epoch is set at 87480, 2023-02-15T15:00:00Z, all node operators need to update your Hyperspace node to this tag before then. This release includes the fvm-v3-rc1, actor v10 bundle, a bunch of bug fixes and Eth RPC improvements.
Highlights:
Feature: support filtering logs in
eth_subscribe
by addresses Eth RPC: eth_subscribe is missing params for basic filters lotus#10175Node operators
Event Index migration
eth_getLogs
, as well as Eth subscriptions and Eth filters, are served through the event index (sqlite database under your Lotus repo).Developers
GranularityExported
method in the Datacap actor was renamed to Granularity. Any contracts which use the FRC42 hash of GranularityExported which is953701584
must be changed to use3936767397
and redeployed.call_actor
precompile. Solidity's transfer function will no longer work as that will attempt to invoke the target actor as an EVM contract.handle_filecoin_method
solidity entrypoint and thecall_actor
should now beCBOR
(0x51
) notDAG_CBOR
(0x71
) as previously used. The underlying encoding (i.e. payload bytes) is the same, but the codec numbers are different.DAG_CBOR
support will be re-enabled in the future but the usage of the codec implies additional runtime guarantees that have not yet been implemented.DAG_CBOR
(0x71
) andCBOR
(0x51
) in inputs and treat them identically. Specifically, developers should:DAG_CBOR
andCBOR
as equivalent when returned from thecall_actor
precompile.DAG_CBOR
andCBOR
as equivalent when received as a parameter tohandle_filecoin_method
.CBOR
(0x51
) in outputs. Specifically, developers should:CBOR
to thecall_actor
precompile.DAG_CBOR
is currently forbidden.CBOR
fromhandle_filecoin_method
.DAG_CBOR
is currently forbidden.The text was updated successfully, but these errors were encountered: