-
#6082 Added
forest-cli snapshot export-statusandforest-cli snapshot export-cancelsubcommands to monitor or cancel an export, respectively. -
#6161 Added
forest-tool db importsubcommand. -
#6166 Gate
JWTexpiration validation behind environment variableFOREST_JWT_DISABLE_EXP_VALIDATION. -
#6171 Enable V2 API support for basic Eth RPC methods:
EthChainId,EthProtocolVersion,EthSyncing,EthAccounts.
- #6145 Updated
forest-cli snapshot exportto use v2 format by default.
This is a non-mandatory release that brings important enhancements to Forest's tooling capabilities, Ethereum RPC compatibility, and F3 integration. The release includes new CLI commands for snapshot management and state inspection, along with critical fixes for Ethereum RPC methods.
-
#6074 Added
forest-cli snapshot export-diffsubcommand for exporting a diff snapshot. -
#6061 Added
forest-cli state actor-cidscommand for listing all actor CIDs in the state tree for the current tipset. -
#5568 Added
--n-tipsetsflag to theforest-tool index backfillsubcommand to specify the number of epochs to backfill. -
#6133 Added
Filecoin.ChainGetFinalizedTipsetAPI method to get the finalized tipset using f3.
-
#5055 Fixed an issue where Forest fails on duplicate drand entries. This would only happen on new devnets.
-
#6103 Fixed
eth_getTransactionCountto return the nonce of the requested tipset and not its parent. -
#6140 Fixed the
eth_getLogsRPC method to acceptNoneas theaddressparameter.
Mandatory release for mainnet node operators. It sets the NV27 Golden Week network upgrade to epoch 5_348_280 which corresponds to Wed 24 Sep 23:00:00 UTC 2025. It also includes a few improvements that help with snapshot generation and inspection.
-
#6057 Added
--no-progress-timeouttoforest-cli f3 readysubcommand to exit when F3 is stuck for the given timeout. -
#6000 Added support for the
Filecoin.StateDecodeParamsAPI methods to enable decoding actors method params. -
#6079 Added prometheus metrics
network_version,network_version_revisionandactor_version. -
#6068 Added
--index-backfill-epochstoforest-tool api serve.
- #6068 Made
--chainoptional inforest-tool api serveby inferring network from the snapshots.
Mandatory release for calibration network node operators. It includes the NV27 Golden Week network upgrade at epoch 3_007_294 which corresponds to Wed 10 Sep 23:00:00 UTC 2025. This release also includes a few breaking changes (removal of unused commands) and minor fixes.
-
#6006 More strict checks for the address arguments in the
forest-clisubcommands. -
#5897 Added support for the NV27 Golden Week network upgrade for devnets.
-
#5897 Added support for the NV27 Golden Week network upgrade for calibration network. The upgrade epoch is set to
3_007_294(Wed 10 Sep 23:00:00 UTC 2025).
-
#6010 Removed the deprecated
forest-cli sendsubcommand. Useforest-wallet sendinstead. -
#6014 Removed
--unorderedfromforest-cli snapshot export. -
#6014 Removed
unordered-graph-traversalfromforest-tool benchmark. -
#6037 Removed
--track-peak-rssfromforestin favor of external tools like/usr/bin/time -v.
- #6028 Fixed missing
TeepandTocknetwork upgrade entries inFilecoin.StateGetNetworkParamsRPC method.
Non-mandatory release. It introduces a couple of features around snapshot generation and inspection. It fully supports the new FRC-0108 Filecoin snapshot format. There is also a notable fix in Filecoin.ChainNotify RPC method that would cause issues with some clients.
- #5946 Updated parameters and response of
Forest.StateComputeRPC method to support newforest-cli state computeoptions.
-
#5835 Add
--formatflag to theforest-cli snapshot exportsubcommand. This allows exporting a Filecoin snapshot in v2 format(FRC-0108). -
#5956 Add
forest-tool archive f3-headersubcommand for inspecting the header of a standalone F3 snapshot(FRC-0108). -
#5835 Add
forest-tool archive metadatasubcommand for inspecting snapshot metadata of a Filecoin snapshot in v2 format(FRC-0108). -
#5859 Added size metrics for zstd frame cache and made max size configurable via
FOREST_ZSTD_FRAME_CACHE_DEFAULT_MAX_SIZEenvironment variable. -
#5963 Added
forest-cli f3 readycommand for checking whether F3 is in sync. -
#5867 Added
--unorderedtoforest-cli snapshot exportfor exportingCARblocks in non-deterministic order for better performance with more parallelization. -
#5946 Added
--n-epochstoforest-cli state computefor computating state trees in batch. -
#5946 Added
--verbosetoforest-cli state computefor printing epochs and tipset keys along with state roots. -
#5886 Add
forest-tool archive merge-f3subcommand for merging a v1 Filecoin snapshot and an F3 snapshot into a v2 Filecoin snapshot. -
#4976 Add support for the
Filecoin.EthSubscribeandFilecoin.EthUnsubscribeAPI methods to enable subscriptions to Ethereum event types:headsandlogs. -
#5999 Add
forest-cli mpool noncecommand to get the current nonce for an address.
-
#5886 Updated
forest-tool archive metadatato print F3 snapshot header info when applicable. -
#5869 Updated
forest-cli snapshot exportto print average speed. -
#5969 Updated
forest-tool snapshot validateto print better error message for troubleshooting.
-
#5863 Fixed needless GC runs on a stateless node.
-
#5859 Fixed size calculation for zstd frame cache.
-
#5975 Fixed JSON escaping in the
Filecoin.ChainNotifyRPC method.
This is a non-mandatory release recommended for all node operators. It includes numerous fixes and quality-of-life improvements for development and archival snapshot operations. It also includes a memory leak fix that would surface on long-running nodes.
-
#5739 Add
--export-modeflag to theforest-tool archive sync-bucketsubcommand. This allows exporting and uploading only the required files. -
#5778 Feat generate a detailed test report in
api comparecommand through--report-dirand--report-mode.
-
#5771 Update OpenRPC schemars by bumping
schemarscreate. -
#5816 Changed the monitoring stack to include a full Forest node. This allows for one-click local deployment of a fully-monitored Forest setup via
docker compose upin./monitored-stack.
- #5822 Remove
mimallocfeature.
-
#5752 Fix duplicated events in
Filecoin.ChainGetEventsRPC method. -
#5762 Cleanup temporary CAR DB files on node start.
-
#5773 The
forest-tool index backfillnow correctly respects the--fromargument. At the same time, it's been made optional and will default to the chain head. -
#5610 Fix
Filecoin.StateGetNetworkParamsandFilecoin.StateNetworkNameRPC methods output for mainnet. They now returnmainnet(and nottestnetnet) as the network name, which is consistent with Lotus. -
#5750 Fix regression causing the
Filecoin.ChainNotifyRPC endpoint to be unreachable. -
#5730 Fixed various bugs in the mempool selection logic, including gas overpricing and incorrect message chain pruning. Additional logic was added to limit the number of messages in the block.
-
#5842 Fixed a memory leak in the bad block cache that could lead to excessive memory usage over time.
This is a non-mandatory but highly recommended release for all node operators. It introduces a fix for the forest node
getting stuck, a few new features including automatic snapshot GC scheduler, offline index backfilling, and
important bug fixes. It also contains a breaking change regarding the detach mode.
- #5652 Remove
--detachflag fromforest. Checkout the migration guide
-
#5598 Add
forest-cli chain prune snapcommand for garbage collecting the database with a new snapshot garbage collector. -
#5629 Save the default RPC token and consume it automatically.
-
#5639 Add automatic scheduler for snapshot GC.
-
#5697 Add
forest-cli chain listcommand for viewing a segment of the chain. -
#5666 Add support for the
Filecoin.StateReadStateAPI method to read the state of the actors. -
#5738 Add support for the
forest-cli state read-statecommand.
-
#5616 Remove the initial background task for populating Ethereum mappings. Use
forest-tool index backfillto perform this operation offline instead. -
#5662 Print index size when applicable in
forest-tool archive info.
-
#5624 Fix
Filecoin.EthTraceFilterto correctly handle null tipsets and stay within the filter range. -
#5177 Fix
Filecoin.EthGetBlockReceiptsLimitedto correctly handle the limit parameter. -
#5704 Fixed an issue that a Forest node gets stuck in some cases.
-
#4490 Fixed panic conditions in the
Filecoin.MpoolSelectRPC method.
This is a non-mandatory release for all node operators. It includes a fix for the F3 on mainnet and a few other improvements. It also sets the initial power table CID for F3 on mainnet.
- #5559 Change
Filecoin.ChainGetMinBaseFeetoForest.ChainGetMinBaseFeewith read access. - #5589 Replace existing
Filecoin.SyncStateAPI with newForest.SyncStatusto track node syncing progress specific to Forest.
- #4750 Add support for
Filecoin.ChainGetEventsRPC method. Addindex backfillsubcommand toforest-tool. - #5483 Add
forest-tool archive sync-bucketcommand.
- #5467 Improve error message for
Filecoin.EthEstimateGasandFilecoin.EthCall.
- #5609 Fixed an issue with F3 on mainnet where the node would not join the KAD network.
This is a non-mandatory, but highly recommended, release targeting the mainnet node operators. It includes a fix preventing the node from duplicate, costly migrations. Given the upcoming network upgrade state migration is expected to be slow, we recommend upgrading your Forest node before Mon 14 Apr 23:00:00 UTC 2025.
- #5512 Fixed
Filecoin.EthTraceFilterRPC method. - #5517 Fix the
forest-cli sync waitissue - #5540 Avoid duplicate migrations.
This is a mandatory release for mainnet and calibnet node operators. It introduces a fix upgrade for calibnet at epoch 2_558_014 which corresponds to Mon 7 Apr 23:00:00 UTC 2025 and changes the mainnet upgrade epoch for the NV25 Teep to 4_878_840 which corresponds to Mon 14 Apr 23:00:00 UTC 2025.
See here for details on the issue.
- #5515 Changed the mainnet upgrade epoch for the NV25 Teep to
4_878_840which corresponds toMon 14 Apr 23:00:00 UTC 2025.
- #5515 Introduced a fix network upgrade for the calibnet
Tock.
This is a mandatory release for mainnet node operators. It includes the NV25 Teep network upgrade at epoch 4_867_320 which corresponds to 10 Apr 23:00:00 UTC 2025. This release also includes a few fixes, most notably a database migration speed up that used to give certain important people a massive headache. Forest Prometheus metrics have been cleaned and you can look them up in the documentation.
- #5464 Changed the
allow_response_mismatchflag touse_response_fromin theforest-tool api generate-test-snapshotsubcommand. This allows specifying the source of the response to use when generating test snapshots and creating failing tests.
- #5461 Add
forest-tool shed migrate-statecommand. - #5488 Add partial support for the
Filecoin.StateComputeRPC method.
- #5452 Speed up void database migration.
- #5479 Move the snapshot progress tracking to sync wait command
- #5449 Remove unnecessary/duplicate metrics.
- #5457 Remove most prometheus
metrics starting with
libp2p_.
- #5458 Fix stack overflow occurring when running Forest in debug mode.
- #5475 Added missing fields for state sector RPC methods that were added in the recent network upgrade.
This is a mandatory release for calibnet node operators. It includes the revised NV25 Teep network upgrade at epoch 2_523_454 which corresponds to 2025-03-26T23:00:00Z. This release also includes a number of new RPC methods, fixes and other improvements. Be sure to check the breaking changes before upgrading.
- #4505 The Ethereum RPC API indexer now runs as a background task (disabled by default). It can be configured in the
[chain_indexer]section or via theFOREST_CHAIN_INDEXER_ENABLEDenvironment variable. Theclient.eth_mapping_ttloption has been moved tochain_indexer.gc_retention_epochs, which is now specified as a number of epochs.
-
#5375 Add an RNG wrapper that that can be overriden by a reproducible seeded RNG.
-
#5386 Add support for the
Filecoin.EthTraceTransactionRPC method. -
#5427 Add support for the
Filecoin.EthTraceFilterRPC method. -
#5383 Add support for
Filecoin.EthGetFilterChangesRPC method.
-
#5377 Fix incorrect handling of
max_heightforlatestpredefined block inFilecoin.EthGetLogs. -
#5356 Fixed slow (and incorrect!)
Filecoin.EthGasPriceRPC method. The method now returns the correct gas price of the latest tipset.
Non-mandatory release without network upgrades. It includes a number of potentially breaking changes (see below), new RPC methods, fixes and other improvements.
-
#5236 Dropped support for migrating from ancient versions of Forest. The latest supported version for migration is v0.19.2.
-
#4261 Remove the short flags from
forest-wallet listandforest-wallet balancecommands. -
#5329 Changed JSON-RPC alias for
Filecoin.NetListening,Filecoin.NetVersion,Filecoin.EthTraceBlock,Filecoin.EthTraceReplayBlockTransactionsto adhere to Lotus API.
-
#5244 Add
liveandhealthysubcommands toforest-cli healthcheck. -
#4708 Add support for the
Filecoin.EthTraceBlockRPC method. -
#5154 Added support for test criteria overrides in
forest-tool api compare. -
#5167 Allow overriding drand configs with environment variables.
-
#4851 Add support for
FOREST_MAX_FILTER_RESULTSinFilecoin.EthGetLogsRPC method. Add an[events]section to Forest configuration file. -
#4954 Add
--format jsontoforest-cli chain headcommand. -
#5232 Support
CARv2stream decoding. -
#5230 Add
CARv2support toforest-tool archivecommand. -
#5259 Add
forest-cli wait-apicommand. -
#4769 Add delegated address support to
forest-wallet newcommand. -
#5147 Add support for the
--rpc-filter-listflag to theforestdaemon. This flag allows users to specify a list of RPC methods to whitelist or blacklist. -
#4709 Add support for
Filecoin.EthTraceReplayBlockTransactionsRPC method. -
#4751 Add support for
Filecoin.GetActorEventsRawRPC method. -
#4671 Add support for
Filecoin.EthGetFilterLogsRPC method. -
#5309 Add
forest-tool shed f3 check-activation-rawcommand. -
#5242 Fix existing signature verification and add
delegatedsignature -
#5314 Add omit fields option for OpenRPC spec generation.
-
#5293 Extend RPC test snapshots to support Eth methods that require an index.
-
#5319 Improve the ergonomics of the
forest-tool api generate-test-snapshotsubcommand. -
#5342 Improved the ergonomics of handling addresses in the
Filecoin.EthGetLogsandFilecoin.EthNewFilterto accept both single addresses and arrays of addresses. This conforms to the Ethereum RPC API. -
#5346
Filecoin.EthGetBlockReceiptsandFilecoin.EthGetBlockReceiptsLimitednow accepts predefined block parameters on top of the block hash, e.g.,latest,earliest,pending. -
#5324 Add shell completion subcommand in
forest-tool -
#5368 Add
Forest.SyncSnapshotProgressRPC and track the progress inforest-cli sync status
-
#5237 Stylistic changes to FIL pretty printing.
-
#5329
Filecoin.Web3ClientVersionnow returns the name of the node and its version, e.g.,forest/0.23.3+git.32a34e92. -
#5332 Adhere to the Ethereum RPC API for
eth_callby not requiring thefrom,gas,gas_priceandvalueparameters.datais still required. -
#5359 Eth RPC API methods' params are now all in camelCase. This aligns with the Ethereum RPC API. Note that this change is only for the OpenRPC documentation and does not affect the actual RPC methods which accepted correct camelCase params before.
- #5344 Removed the last traces of the
forest-cli attachcommand.
-
#5111 Make F3 work when the node Kademlia is disabled.
-
#5122 Fix a bug in database garbage collection flow.
-
#5131 Fix incorrect data deserialization in the
Filecoin.EthGetBlockReceiptsRPC method. This caused the method to return an error on some blocks. -
#5150 Fix incorrect prototype for the
Filecoin.EthGetBlockReceiptsLimitedRPC method. -
#5006 Fix incorrect logs, logs bloom and event index for the
Filecoin.EthGetBlockReceiptsRPC method. -
#4996 Fix incorrect logs and logs bloom for the
Filecoin.EthGetTransactionReceiptandFilecoin.EthGetTransactionReceiptLimitedRPC methods on some blocks. -
#5213 Fix incorrect results for the
Filecoin.EthGetLogsRPC method on ranges that include null tipsets. -
#5357 Make data field in EthCallMessage optional. Affected RPC methods are
Filecoin.EthEstimateGas(eth_estimateGas) andFilecoin.EthCall(eth_call) -
#5345 Fixed handling of odd-length hex strings in some Eth RPC methods. Now, the methods should not return error if provided with, e.g.,
0x0(which would be expanded to0x00).
Mandatory release for calibnet node operators. It fixes a sync error at epoch 2281645.
-
#5020 Add support for the
Filecoin.EthGetTransactionByBlockNumberAndIndexRPC method. -
#4907 Add support for the
Filecoin.StateMinerInitialPledgeForSectorRPC method.
- #5077 Remove
peer_tipset_epochfrom the metrics.
- #5109 Fix a calibnet sync error at epoch 2281645.
Mandatory release for calibnet node operators. It removes the NV25 Teep network upgrade from the schedule. Read more here.
- #5079 Removed the NV25 Teep network upgrade for calibnet from the schedule. It is postponed to a later date.
- #5071 Fix issue that caused Forest to temporarily drift out of sync.
This is a mandatory release for the calibration network. It includes the NV25
Teep network upgrade at epoch 2_235_454 which corresponds to
Mon 16 Dec 23:00:00 UTC 2024. This release also includes a number of new RPC
methods, fixes (notably to the garbage collection), and other improvements.
-
#5010 Added
forest-cli f3 certs listCLI command. -
#4995 Added
forest-cli f3 powertable getCLI command. -
#5028 Added
forest-cli f3 powertable get-proportionCLI command. -
#5054 Added
--dump-diroption toforest-tool api compareCLI command. -
#4704 Add support for the
Filecoin.EthGetTransactionReceiptLimitedRPC method. -
#4875 Move fil-actor-interface crate from fil-actor-states repo.
-
#4701 Add support for the
Filecoin.EthGetTransactionByBlockHashAndIndexRPC method.
-
#5053 Added support for the NV25 Teep network upgrade for
2kandbutterflynetnetworks. -
#5040 Added support for the NV25 Teep network upgrade for
calibrationnetwork.
-
#4959 Re-enable garbage collection after implementing a "persistent" storage for manifests.
-
#4988 Fix the
logsmember inEthTxReceiptthat was initialized with a default value. -
#5043 Added missing entry for
TukTukupgrade in theFilecoin.StateGetNetworkParamsRPC method.
Mandatory release for mainnet node operators. It sets the upgrade epoch for the
NV24 Tuk Tuk upgrade to 4_461_240 which corresponds to
Wed 20 Nov 23:00:00 UTC 2024. No F3 support is planned for the NV24, see
this post
for more details.
- #4952 Extended the
forest-cli chain headcommand to allow for specifying number of last tipsets to display. This change is breaking as the output now contains the epoch of tipsets.
-
#4937 Added
forest-cli f3 manifestCLI command. -
#4949 Added
forest-cli f3 statusCLI command. -
#4949 Added
forest-cli f3 certs getCLI command. -
#4706 Add support for the
Filecoin.EthSendRawTransactionRPC method. -
#4839 Add support for the
Filecoin.EthGetBlockReceiptsRPC method. -
#5017 Add support for the
Filecoin.EthGetBlockReceiptsLimitedRPC method. -
#4943 Add generation of method aliases for
forest-tool shed openrpcsubcommand and sort all methods in lexicographic order. -
#4801 Add support for
Tuk TukNV24 upgrade for mainnet
This is an optional release for calibration network node operators. It enables F3 by default and includes initial power table CID on calibration network.
-
#4910 Add support for the
Filecoin.F3ListParticipantsRPC method. -
#4920 Add support for the
Filecoin.F3GetOrRenewParticipationTicketRPC method. -
#4924 Add support for the
Filecoin.F3GetManifestRPC method. -
#4917 Support
dnsaddrin the bootstrap list. -
#4939 Fix
Filecoin.EthBlockNumberRPC method return type to be anEthUInt64.
-
#4920 Update
Filecoin.F3ParticipateRPC method to align with the spec change. -
#4920 Update
Filecoin.F3ListParticipantsRPC method to align with the spec change.
- #4927 Temporarily disable garbage collection.
This is a mandatory release for calibration network node operators. It includes
state migration for the NV24 TukTuk upgrade at epoch 2078794
2024-10-23T13:30:00Z. It also includes a number of new RPC methods, fixes and F3
support.
- #4782 Devnets are no longer configurable with legacy drand network.
-
#4703 Add support for the
Filecoin.EthGetTransactionByHashLimitedRPC method. -
#4783 Add support for the
Filecoin.NetProtectListRPC method. -
#4865 Add support for the
Filecoin.F3IsRunningRPC method. -
#4878 Add support for the
Filecoin.F3GetProgressRPC method. -
#4857 Add support for nv24 (TukTuk).
- #4786 ubuntu image is upgraded from 22.04 to 24.04 in Dockerfile
-
#4809 the Mac OS X build on Apple silicons works
-
#4820 Fix edge-case in
Filecoin.MinerGetBaseInfoRPC method. -
#4890 Fix incorrect deal weight calculation in the
Filecoin.StateMinerInitialPledgeCollateralRPC method.
Non-mandatory release including a number of new RPC methods, fixes, and other improvements. Be sure to check the breaking changes before upgrading.
-
#4620 Removed the
--consume-snapshotparameter from theforestbinary. To consume a snapshot, use--import-snapshot <path> --import-mode=move. -
#3403 The snapshot validation command
forest-tool snapshot validatenow checks the snapshots individually. The previous behavior, to validate the sum of the snapshots, can be achieved viaforest-tool snapshot validate-diffs. -
#4672 The default user in Docker images is now
root. This facilitates usage, especially when mounting volumes and dealing with surprising permission errors. Note that the default data directory is now/root/.local/share/forestand not/home/forest/.local/share/forest. The directory will not be migrated automatically. Please adapt your configurations accordingly. If you've been switching torootmanually in your workflows you can now remove that step. -
#4757 Changed the default option of
--import-modetoautowhich hardlink snapshots and fallback to copying them if not applicable. -
#4768 Moved all RPC methods to V1 when applicabile
-
#3959 Added support for the Ethereum RPC name aliases.
-
#4607 Expose usage and timing metrics for RPC methods.
-
#4599 Block delay and block propagation delays are now configurable via environment variables.
-
#4596 Support finality-related params in the
Filecoin.EthGetBlockByNumberRPC method. -
#4620 Added an option to link snapshots instead of moving or copying them. This can be invoked with
--import-snapshot <path> --import-mode=symlink. -
#4533 Added
build_infometric to Prometheus metrics, which include the current build's version. -
#4628 Added support for devnets (2k networks) in the offline Forest.
-
#4463 Add support for the
Filecoin.EthGetTransactionByHashRPC method. -
#4613 Add support for the
Filecoin.EthCallRPC method. -
#4665 Add support for the
Filecoin.EthNewFilterRPC method. -
#4666 Add support for the
Filecoin.EthNewBlockFilterRPC method. -
#4667 Add support for the
Filecoin.EthNewPendingTransactionFilterRPC method. -
#4686 Add support for the
Filecoin.EthAddressToFilecoinAddressRPC method. -
#4612 Add support for the
Filecoin.MarketAddBalanceRPC method. -
#4701 Add method
Filecoin.EthGetTransactionByBlockHashAndIndexto existing methods (though without support, which matches the current Lotus's behavior). -
#4702 Add method
Filecoin.EthGetTransactionByBlockNumberAndIndexto existing methods (though without support, which matches the current Lotus's behavior). -
#4757 Added an option to hardlink snapshots instead of moving or copying them. This can be invoked with
--import-snapshot <path> --import-mode=hardlink. -
#4668 Add support for the
Filecoin.EthUninstallFilterRPC method.
- #4583 Removed the expiration date for the master token. The new behavior aligns with Lotus.
- #4624 Remove the
--chain-importflag. Its functionality can be accessed through the more flexible--heightflag.
-
#4603 Fixed incorrect deserialisation in
Filecoin.EthGetBlockByNumberandFilecoin.EthGetBlockByHashRPC methods. -
#4610 Fixed incorrect structure in the
Filecoin.MinerGetBaseInfoRPC method. -
#4635 Fixed bug in
StateMinerProvingDeadline. -
#4674 Fixed bug in
StateCirculatingSupply. -
#4656 Fixed bug in
StateCall. -
#4498 Fixed incorrect
Filecoin.VersionsAPIVersionfield value.
Non-mandatory release that includes a fix for the Prometheus-incompatible metric.
- #4594 Reverted the Forest version metric with Prometheus-incompatible metric type.
Mandatory release for mainnet nodes that adds the NV23 Waffle migration at epoch 4154640 (2024-08-06T12:00:00Z). This release also adds support for new RPC methods and fixes a networking issue where Forest would not bootstrap a Lotus node.
-
#4545 Add support for the
Filecoin.StateGetAllClaimsRPC method. -
#4545 Add support for the
Filecoin.StateGetAllAllocationsRPC method. -
#4503 Add support for the
Filecoin.StateMinerAllocatedRPC method. -
#4512 Add support for the
Filecoin.StateGetAllocationIdForPendingDealRPC method. -
#4514 Add support for the
Filecoin.WalletSignMessageRPC method. -
#4517 Add support for the
Filecoin.StateGetAllocationForPendingDealRPC method. -
#4526 Added
forest-cli state computemethod, and a corresponding RPC methodForest.StateCompute. -
#4511 Add support for the
Filecoin.EthMaxPriorityFeePerGasRPC method. -
#4515 Add support for the
Filecoin.StateLookupRobustAddressRPC method. -
#4496 Add support for the
Filecoin.EthEstimateGasRPC method. -
#4558 Add support for the
Filecoin.StateVerifiedRegistryRootKeyRPC method. -
#4474 Add new subcommand
forest-cli healthcheck ready. -
#4569 Add support for the
Filecoin.NetFindPeerRPC method. -
#4565 Add support for the
Filecoin.StateGetRandomnessDigestFromBeaconRPC method. -
#4547 Add support for the
Filecoin.MpoolPushUntrustedRPC method. -
#4561 Add support for the
Filecoin.MpoolBatchPushandFilecoin.MpoolBatchPushUntrustedRPC method. -
#4566 Add support for the
Filecoin.StateGetRandomnessDigestFromTicketsRPC method.
This is a mandatory release for all calibration network node operators. It includes migration logic for the NV23 Waffle network upgrade. It also includes a number of new RPC methods, fixes to existing ones, and other improvements, most notably, garbage collection fix.
-
#4473 Add support for NV23 Waffle network upgrade (FIP-0085, FIP-0091, v14 actors).
-
#4352 Add support for the
Filecoin.StateGetClaimRPC method. -
#4356 Add support for the
Filecoin.NetProtectAddRPC method. -
#4382 Add support for the
Filecoin.StateGetAllocationRPC method. -
#4381 Add support for the
Filecoin.StateSectorPartitionRPC method. -
#4368 Add support for the
Filecoin.EthGetMessageCidByTransactionHashRPC method. -
#4167 Add support for the
Filecoin.EthGetBlockByHashRPC method. -
#4360 Add support for the
Filecoin.EthGetBlockTransactionCountByHashRPC method. -
#4475 Add support for the
Filecoin.EthFeeHistoryRPC method. -
#4359 Add support for the
EIP-1898object scheme. -
#4443 Update
Filecoin.StateSectorPreCommitInfoRPC method to be API-V1-compatible -
#4444 Update
Filecoin.StateWaitMsgRPC method to be API-V1-compatible
- #4358 Remove the
forest-cli attachcommand.
-
#4425 Fix GC collision issues.
-
#4357 Fix schema bug in the
Filecoin.ChainNotifyRPC method. -
#4371 Fix extra
Applychange in theFilecoin.ChainNotifyRPC method. -
#4002 Add support for multiple WebSocket clients for
Filecoin.ChainNotifyRPC method. -
#4390 Fix
SignedMessageJSON formatting to match Lotus.
This is a non-mandatory release including a fair number of new RPC methods and improvements to the Forest RPC API. The release also includes a number of bug fixes, as outlined below. Please note the breaking changes in this release.
-
#4177 Rename environment variable
TRUST_PARAMStoFOREST_FORCE_TRUST_PARAMS. -
#4184 Removed short form flags from
forestbinary. -
#4215 Changed the prefix for Forest-specific RPC methods to
Forest;Filecoin.NetInfoandFilecoin.StateFetchRoottoForest.NetInfoandForest.StateFetchRoot. -
#4262 Added
Bearerprefix to theAuthorizationheader in the Forest RPC API. This is a partially-breaking change - new Forest RPC clients will not work with old Forest nodes. This change is necessary to align with the Lotus RPC API.
-
#4246 Add support for the
Filecoin.SyncSubmitBlockRPC method. -
#4084 Add support for the
Filecoin.StateDealProviderCollateralBoundsRPC method. -
#3949 Added healthcheck endpoints
/healthz,/readyz, and/livez. By default, the healthcheck endpoint is enabled on port 2346. -
#4166 Add support for the
Filecoin.Web3ClientVersionRPC method. -
#4184 Added
--no-healthcheckflag toforestto disable the healthcheck endpoint. -
#4183 Add support for the
Filecoin.EthGetBlockByNumberRPC method. -
#4253 RPC client default timeout is now configurable via the
FOREST_RPC_DEFAULT_TIMEOUTenvironment variable. -
#4240 Added
--fixed-unitand--exact-balanceflags toforest-wallet balancesimilarly toforest-wallet listsubcommand. -
#4213 Add support for the
Filecoin.StateMinerInitialPledgeCollateralRPC method. -
#4214 Add support for the
Filecoin.StateMinerPreCommitDepositForPowerRPC method. -
#4255 Add support for the
Filecoin.MinerCreateBlockRPC method. -
#4315 Add support for the
Filecoin.StateGetNetworkParamsRPC method. -
#4326 Added
expected_network_heightmetric to the Prometheus metrics.
- #4170 Change the default
Filecoin proof parameters source to ChainSafe's hosted Cloudflare R2 bucket.
IPFS gateway can still be enforced via
FOREST_PROOFS_ONLY_IPFS_GATEWAY=1.
-
#4177 Fixed a bug where the environment variable
IPFS_GATEWAYwas not used to change the IPFS gateway. -
#4267 Fixed potential panics in
forest-tool api compare. -
#4297 Fixed double decoding of message in the
Filecoin.WalletSignRPC method. -
#4314 Fixed incorrect allowed proof types for all networks.
-
#4328 Fix issues when connecting to a network with fewer than 5 peers.
This is a mandatory release for all mainnet node operators. It changes the NV22 dragon network upgrade epoch to 3855360 (Wed Apr 24 02:00:00 PM UTC 2024)). All mainnet node must be updated to this version before the network upgrade epoch to avoid being stuck on a fork.
- #4151 Changed the Dragon NV22 network upgrade epoch to 3855360 (April 24th 2024).
- #4145 Fix the
forest-cli net peers --agentcommand in case the agent is not available.
This is a mandatory release that includes scheduled migration for the NV22 Dragon network upgrade for mainnet and fix for the calibration network. Various other fixes and improvements are included as well, see below for details.
-
#4029 Add
forest-tool shed private-key-from-key-pairandforest-tool shed key-pair-from-private-keycommands. These facilate moving between Forest and Lotus without losing the peer-to-peer identity. -
#4052 Add
forest-cli net reachabilitycommand that prints information about reachability from the internet. -
#4058 Add support for multiple snapshot files in the
forest-tool api servecommand. -
#4056 Enable libp2p
quicprotocol -
#4071 Add
forest-tool net pingcommand that pings a peer via its multiaddress. -
#4119 Add support for NV22 fix for calibration network.
- #4018 Remove --ws flag from
forest-tool api compare.
-
#4068 Fix schema bug in the
ChainNotifyRPC method. -
#4080 Fix broken
StateVMCirculatingSupplyInternalRPC method on calibnet. -
#4091 Restore
Breeze,Smoke, andIgnitionentries for calibnet -
#4093 Fix parsing issue in the
Filecoin.StateAccountKeyRPC method.
Mandatory release that includes:
- support for the NV22 Dragon network upgrade, together with the required state migration,
- important networking improvements that increase Forest resilience to network disruptions,
- various improvements and support for new RPC methods.
-
#3555 Add Forest database query optimizations when serving with many car files.
-
#3995 Add
--p2p-listen-addressoption toforestto override p2p addresses that forest listens on -
#4031 Added RPC method
Filecoin.NetAgentVersionand--agentflag to theforest-cli net peerssubcommand, that will list the agent version of the connected peers. -
#3955 Added support for the NV22 Dragon network upgrade, together with the required state migration.
- #3976
forest-walletdefaults to using a local wallet instead of the builtin Forest wallet for greater security.
- #4019 Fix Forest sending stale notifications after channel cancelation.
- #3978 Add support for the
Filecoin.ChainNotifyRPC method.
Mandatory release that includes a fix for a bug in the libp2p usage. This is
necessary after the PL-managed bootstrap nodes were decommissioned. Failure to
upgrade will result in difficulty connecting to the mainnet network.
- #3849 Implement the
Filecoin.ChainGetPathlotus-compatible RPC API. - #3849 Add
forest-tool shed summarize-tipsets. - #3893 Add
forest-tool shed peer-id-from-key-pair. - #3981 Add
forest-tool backup create|restore.
- #3996 Fixed a bug in the
libp2pusage that caused the connections to not get upgraded to secure ones.
- #3866 Implement Offline RPC API.
- #3857 Timeout parameter fetch to 30 minutes to avoid it getting stuck on IPFS gateway issues.
- #3901 Fix timeout issue in
forest-cli snapshot export. - #3919 Fix misreporting when logging progress.
Non-mandatory upgrade including mostly new RPC endpoints. The option to use an
alternative FilOps snapshot provider was removed given the service was
decommissioned.
- #3817 Implement the
Filecoin.StateVerifiedClientStatuslotus-compatible RPC API. - #3824 Add
--wsflag toforest-tool api compareto run all tests using WebSocket connections. Add support for WebSocket binary messages in Forest daemon. - #3802 Implement the
Filecoin.EthGetBalancelotus-compatible RPC API. - #3773 Implement the
Filecoin.MpoolGetNoncelotus-compatible RPC API. - #3773 Implement the
Filecoin.MinerGetBaseInfolotus-compatible RPC API. - #3807 Add
--run-ignoredflag toforest-tool api compare. - #3806 Implement the
Filecoin.EthGasPricelotus-compatible RPC API.
- #3819 Make progress messages more human-readable.
- #3824 Demote noisy WebSocket info logs to debug in Forest daemon.
- #3878: FILOps is no longer
serving lite snapshots. Removed
filopsoption fromforest-tool snapshot fetch --vendor [vendor].
- #3779 Implement the
Filecoin.StateMinerRecoverieslotus-compatible RPC API. - #3745 Implement the
Filecoin.StateCirculatingSupplylotus-compatible RPC API. - #3773 Implement the
Filecoin.StateVMCirculatingSupplyInternallotus-compatible RPC API. - #3748 Add timing for each
message and gas charge in the JSON output of
forest-tool snapshot compute-stateandFilecoin.StateCallRPC API. - #3720 Implement the
Filecoin.StateMinerInfolotus-compatible RPC API. - #1670 Support Butterflynet 🦋.
- #3801 Implement the
Filecoin.StateSearchMsglotus-compatible RPC API. - #3801 Implement the
Filecoin.StateSearchMsgLimitedlotus-compatible RPC API.
- #3751 Workaround for performance bug that prevents Forest from syncing to the network.
- #3749 Implement the
Filecoin.StateSectorGetInfolotus-compatible RPC API. - #3720 Implement the
Filecoin.GetParentMessageslotus-compatible RPC API. - #3726 Implement the
Filecoin.StateMinerFaultslotus-compatible RPC API. - #3735 Implement the
Filecoin.StateAccountKeylotus-compatible RPC API. - #3744 Implement the
Filecoin.StateLookupIDlotus-compatible RPC API. - #3727 Added glif.io calibnet bootstrap node peer
- #3737 Added
--n-tipsetsoption toforest-tool api compare
This is yet another mandatory upgrade for calibration network, containing the
2nd fix for the WatermelonFix upgrade. See this
update
for reference.
This is a mandatory upgrade for calibration network, containing fix for the
WatermelonFix upgrade. See
Lotus release
for reference.
- #3072 Implemented mark-and-sweep GC, removing GC progress reports along with the corresponding RPC endpoint.
-
#3540 Fix forest-cli sync wait to ensure that Forest is in the follow mode.
-
#3686 Fix regression when using
forest-tool dbsubcommands and a--chainflag different from mainnet. -
#3694 Calibration WatermelonFix recovery fix.
-
#3632 Added an upgrade/fix for calibration network that will go live at epoch 1070494.
-
#3674 Added a tentative mainnet Watermelon upgrade with the 12.0.0-rc.2 bundle.
Forest v0.15.1 is a service release with support for the v0.14.1 database.
- #3662 Add
--filterand--fail-fastflags toforest-tool api compare. - #3670 Implement the
Filecoin.ChainGetMessagesInTipsetlotus-compatible RPC API.
- #3363 Remove hidden
forest-clicommands used for helping users to migrate onforest-toolandforest-wallet.
Forest v0.15.0 is a service release containing minor bug fixes and small usability improvements.
- #3591 Add
forest-tool car validatecommand for checking non-filecoin invariants in CAR files. - #3589 Add
forest-tool archive diffcommand for debugging state-root mismatches. - #3609 Add
--no-metricsoption toforestfor controlling the availability of the metrics Prometheus server. - #3613 Add
--expire-inparameter to token commands. - #3584 Add
forest-tool api comparecommand for testing RPC compatibility.
- #3614 Moved downloading bundle to runtime.
- #3589 Remove
forest-cli state diffcommand. Replaced byforest-tool archive diff. - #3615 Remove
chainsection from forest configuration files.
- #3619 Use correct timestamp in exported snapshot filenames.
- #3422 Add NV21 (Watermelon) support for calibration network.
- #3593: Add
--statelessflag toforest. In stateless mode, forest connects to the P2P network but does not sync to HEAD.
- #3590 Fix bug in ForestCAR encoder that would cause corrupted archives if a hash-collision happened.
- #3231 Moved some Forest internal settings from files to the database.
- #3333 Changed default rpc port from 1234 to 2345.
- #3336 Moved following
forest-clisubcommands toforest-toolarchive infofetch-paramssnapshot fetchsnapshot validate
- #3355 Moved commands
forest-cli db statstoforest-tool db statsforest-cli db cleantoforest-tool db destroy
- #3362 Moved the following
forest-cli walletsubcommands toforest-wallet - #3432 Moved following
forest-clisubcommands toforest-toolarchive exportarchive checkpoints
- #3431 Moved the following
forest-cli snapshot compresssubcommand toforest-tool - #3435 Moved subcommand
forest-cli car concatsubcommands toforest-tool
- #3430: Add
forest-tool snapshot compute-state ...subcommand. - #3321: Support for multi-threaded car-backed block stores.
- #3316: Add
forest-tool benchmarkcommands. - #3330: Add
--depthflag toforest-cli snapshot export. - #3348: Add
--diff-depthflag toforest-cli archive export. - #3325: Add
forest-tool state-migration actor-bundlesubcommand. - #3387: Add
forest-wallet deleteRPC command. - #3322: Added prompt to
forest-cli archive exportto overwrite file if the file specified with--output-pathalready exists and a--forceflag to suppress the prompt. - #3439: Add
--consume-snapshotoption toforestcommand. - #3462: Add
forest-tool archive mergecommand.
- #3331: Use multiple cores when exporting snapshots.
- #3379: Improved state graph walking performance.
- #3178: Removed inaccurate progress log ETA; now only the elapsed time is displayed.
- #3322: The
snapshot exportandsnapshot compresssubcommands forforest-cliare now both consistent withforest-cli archive exportin supporting a short-form output path flag-oand a long-form output path flag--output-path. The flag--outputfor thesnapshot compresssubcommand was replaced by--output-path.
-
#3319: Fix bug triggered by re-encoding ForestCAR.zst files.
-
#3322: Forest is now able to parse data from epochs below 1_960_320 (on mainnet)
- #3307#3310: Reduce memory requirements when exporting a snapshot by 50% (roughly from 14GiB to 7GiB).
Notable updates:
- Support for the
.forest.car.zstformat. - Support for diff snapshots.
- #3189: Changed the database organisation to use multiple columns. The database will need to be recreated.
- #3220: Removed the
forest-cli chain validate-tipset-checkpointsandforest-cli chain tipset-hashcommands.
- #3167: Added a new option
--validate-tipsetsforforest-cli snapshot validate. - #3166: Add
forest-cli archive infocommand for inspecting archives. - #3159: Add
forest-cli archive export -e=Xcommand for exporting archives. - #3150:
forest-cli car concatsubcommand for concatenating.carfiles. - #3148: add
save_to_fileoption toforest-cli state fetchcommand. - #3213: Add support for loading forest.car.zst files.
- #3284: Add
--diffflag toarchive export. - #3292: Add
net infosubcommand toforest-cli.
- #3126: Bail on database lookup errors instead of silently ignoring them.
- #2999: Restored
--tipsetflag toforest-cli snapshot exportto allow export at a specific tipset. - #3283: All generated car files use the new forest.car.zst format.
- #3248: Fixed Forest being
unable to re-create its libp2p keypair from file and always changing its
PeerId.
- #3048: Remove support for rocksdb
- #3047: Remove support for compiling with delegated consensus
- #3086:
forest-cli snapshot validateno longer supports URLs. Download the snapshot and then run the command.
- #2761: Add a per actor limit of 1000 messages to Forest mpool for preventing spam attacks.
- #2728: Revive
forest-cli mpool pendingandforest-cli mpool statsubcommands. - #2816: Support
2kdevnet. - #3026: Expose
forest-cli state diff ... - #3086:
forest-cli snapshot validateis faster and uses less disk space, operating directly on the snapshot rather than loading through a database. - #2983: Added state migration support for NV17.
- #3107: Introduced 'head' parameter for snapshot validation.
-
#3005: Fix incorrect progress reported when importing compressed snapshots.
-
#3122: Fix state-root mismatch around null tipsets.
- #3007: Optimize DB parameters. This requires all existing databases to be re-initialized.
- #3006: Fix
premature enderror when exporting a snapshot.
Notable updates:
--compressedoption removed from CLI, snapshots are now always compressed.- The
dir,list,pruneandremovesnapshot commands have been removed from the CLI. - Snapshots are fetched to current directory by default.
- Added new subcommand
forest-cli info show. Filecoin.ChainSetHeadRPC endpoint andforest-cli chain set-headsubcommand are now implemented.- IPLD graph can now be downloaded via bitswap.
sendFILfunction has been updated to match recent changes in the Forest send command.- FIL amount parsing/printing has been improved and 2 new options are added to forest-cli wallet list (--no-round and --no-abbrev).
- #2873
- remove
--compressedfrom the CLI. Snapshots are now always compressed. - Remove snapshot ops - snapshots fetched to the current directory by default.
- remove
- #2706: implement
Filecoin.ChainSetHeadRPC endpoint andforest-cli chain set-headsubcommand. - #2979: implement command for downloading an IPLD graph via bitswap.
- #2578: implement initial
support for
forest-cli info
- #2668: JavaScript console
sendFILfunction has been updated to align with recent changes in the Forestsendcommand (allowed units for the amount field are now "attoFIL", "femtoFIL", "picoFIL", "nanoFIL", "microFIL", "milliFIL", and "FIL"). Note that the defaultsendFILamount unit (i.e., if no units are specified) is now FIL to match the behavior in Lotus. - #2833: Improvements to FIL
amount parsing/printing, and add
--no-roundand--no-abbrevtoforest-cli wallet list.
- #2888: FILOps is no longer
serving uncompressed snapshots. Removed support for them in both
forestandforest-cli.
- #2967: Fix http-client concurrency issues caused by fetching root certificates multiple times.
- #2958: Fix occasional consensus fault.
- #2950: Fix cases where ctrl-c would be ignored.
- #2934: Fix race condition when connecting to development blockchains.
- #2655: Configurable number of default recent state roots included in memory/snapshots.
- #2796: Fix issue when running Forest on calibnet using a configuration file only.
- #2807: Fix issue with v11 actor CIDs.
- #2804: Add work around for
FVM bug that caused
forest-cli sync waitto fail.
- #2788: Move back to the
upstream
ref-fvmand bump the dependency version so that it included the latest critical patch
- #2763: Support NV19 and NV20. ⛈️
- #2741: Support importing zstd compressed snapshot car files
- #2741: Support fetching
zstd compressed snapshots with filecoin provider via
--compressedoption - #2741: Support exporting
zstd compressed snapshots via
--compressedoption inforest-cli snapshot exportsubcommand - #1454: Added state migration support for NV18.
- #2770: Use
latesttag for stable releases, andedgefor latest development builds.
Notable updates:
- Fix CD task for image publishing on new tagged releases
- #2721: Add
--no-gcflag to daemon.
- #2607: Use jemalloc as the default global allocator
Notable updates:
- Support for NV18.
- Automatic database garbage collection.
- A JavaScript console to interact with Filecoin API.
- Switched to ParityDb as the default backend for Forest daemon.
- Support for NV18. #2596
- Automatic database garbage collection. #2292 #1708
- ParityDb statistics to the stats endpoint. #2433
- A JavaScript console to interact with Filecoin API. #2492
- Multi-platform Docker image support. #2476
--dry-runflag to forest-clisnapshot exportcommand. #2550--exit-after-initand--save-tokenflags to daemon. #2528--track-peak-rssto forest daemon to get peak RSS usage. #2696- RPC
Filecoin.Shutdownendpoint andforest-cli shutdownsubcommand. #2402 - Added retry capabilities to failing snapshot fetch. #2544
- Network needs to be specified for most commands(eg Calibnet), including
sync waitandsnapshot export. #2596 - Switched to ParityDb as the default backend for Forest daemon. All clients
must re-import the snapshot. The old database must be deleted manually - it is
located in
$(forest-cli config dump | grep data_dir | cut -d' ' -f3)/<NETWORK>/rocksdb. #2576 - Revised how balances are displayed, defaulting to:
#2323
- adding metric prefix when it's required, consequently CLI flag
--fixed-unitadded to force to show in originalFILunit - 4 significant digits, consequently CLI flag
--exact-balanceadded to force full accuracy.
- adding metric prefix when it's required, consequently CLI flag
statsandcompressionkeys inparity_dbsection were renamed toenable_statisticsandcompression_typerespectively. #2433download_snapshotkey inclientsection configuration renamed toauto_download_snapshot. #2457--skip-loadflag must be now called with a boolean indicating its value. #2573- Ban peers with duration, Banned peers are automatically unbanned after a period of 1h. #2391
- Added support for multiple listen addr. #2551
- Allowed specifying the encryption passphrase via environmental variable. #2499
- Removed Forest
ctrl-chard shutdown behavior on subsequentctrl-csignals. #2538 - Added support in the forest
sendcommand for all FIL units currently supported in forestwallet("attoFIL", "femtoFIL", "picoFIL", "nanoFIL", "microFIL", "milliFIL", and "FIL"). Note that the defaultsendunits (i.e., if no units are specified) are now FIL to match the behavior in Lotus. #2668
- Removed
--halt-after-importand--auto-download-snapshotfrom configuration. They are now strictly a CLI option. #2528 #2573
- Daemon getting stuck in an infinite loop during shutdown. #2672
Scanning Blockchainprogess bar never hitting 100% during snapshot import. #2404- bitswap queries cancellation that do not respond after a period. #2398
- Forest daeamon crashing on sending bitswap requests. #2405
- Corrected counts displayed when using
forest-cli --chain <chain> sync wait. #2429 - Snapshot export issue when running on a system with a separate temporary filesystem. #2693
- All binaries and crates in the project to follow a standard version, based on the release tag. #2493
Notable updates:
- Added support for the new Protocol Labs snapshot service.
- Several improvements to logging (including integration with Grafana Loki) and error handling.
- New daemon option flag
--log-dirfor log file support. - New ParityDb section in configuration (including statistics and compression settings).
- Integration with Grafana Loki for more advanced log filtering and summarization.
- Peer tipset epoch now in metrics.
- Several improvements to error handling.
- Docker images are now tagged with version (eg
0.6.0) and date (eg2023-01-05-commit_hash). - Upgraded toolchain channel to
nightly-2022-12-15. - Migrated logging infrastructure from
logtotracing. - Fixed bug triggered by large network messages.
- Fixed bug where cursor would be hidden after keyboard interrupt.
- Allow
-—heightflag to take relative offsets for validating the tipsets in a snapshot. - Fixed issue with invalid snapshot exports; messages were accidentally removed from snapshots, making them invalid.
- Updated
snapshot fetchsubcommands to support the new Protocol Labs snapshot service. - Fixed RPC
net disconnectendpoint (a bug was returning a JSON RPC error when runningforest-cli net disconnectand preventing proper peer disconnection). - Corrected RPC serialization of FIL balances (a bug was preventing display of
floating point balance using
forest-cli wallet list).
- RocksDB check for low file descriptor limit.
- Unused RPC endpoints.
- Restore progress indicators that were accidentally broken.
Notable updates:
- Support for nv17.
- Forest was split into two programs: a Filecoin node (forest), and a control program (forest-cli).
- Improved snapshot importing performance: ~75% reduction in snapshot import time.
- Improved code building time: ~45% reduction in build time.
- Code coverage increased from 32% to 63%.
- Support for nv17 on both calibnet and mainnet.
- Experimental support for ParityDB.
- Improved snapshot handling via the
forest-cli snapshotcommands. - Support using
aria2for faster snapshot downloads. - Support for sending FIL.
- Replace async_std with tokio.
- Significantly improve tracked performance metrics.
- Gracefully shutdown the database on sigterm and sighup.
- Fix gas charging issue that caused state-root mismatches on mainnet.
- Snapshots are automatically downloaded if the database is empty.
- Improve error messages if a snapshot doesn't match the requested network.
- Add
--color=[always;auto;never]flag.
- Fat snapshots (snapshots that contain all transaction receipts since genesis) have been deprecated in favor of slim snapshots where receipts are downloaded on demand.
- All security advistory exceptions. Forest's dependencies are now free of known vulnerabilities.
- Fix bug in handling of blockchain forks.
Notable updates:
- Support for nv16.
- Built-in method of downloading snapshots.
- Vastly improved automated testing.
- New
forest chain exportcommand for generating snapshots. - New
forest chain fetchcommand for downloading recent snapshots. - Logging settings are now part of the configuration file rather than only being accessible through an environment variable.
- A
--detachflag for running the Forest node in the background. - A
--halt-after-importfor exiting Forest directly after importing a snapshot. - Delegated Consensus: A consensus mode useful for testing.
- FIP-0023: Break ties between tipsets of equal weight.
- Improve error messages if Forest isn't initiated with a valid database.
- Formatting clean-up in the forest wallet.
- Improved pretty-printing of debugging statediffs.
- Several dozen spelling fixes in the documentation.
- Fixed dead links in documentation (with automated detection).
- Avoided a segmentation fault caused by an improper shutdown of the database.
- Bump required rust version from nightly-2022-09-08 to nightly-2022-09-28.
- Support for the
sleddatabase.
Notable updates:
- Support nv15 entirely through the FVM.
- Resolve two security concerns by removing legacy code (RUSTSEC-2020-0071 and RUSTSEC-2021-0130).
- Fixed Docker image and released it to GH container registry.
- Network selection (ie mainnet vs testnet) moved to a CLI flag rather than a compile-time flag.
Forest v0.2.2 alpha is a service release improving performance and stability. This release supports Filecoin network version 14.
Notable updates:
- Forest now supports Calibnet:
make calibnet(nv14) - FVM is available both native and as external crate: ref-fvm
- Reading config from a default config location unless a file is specified.
- Improved logging and display of synchronization progress.
- Defaulting to Rust Edition 2021 from now on.
All changes:
- Log: don't override default filters (#1504) by @jdjaustin in #1530
- Crates: bump wasmtime by @q9f in #1526
- Ci: add wasm target to release script by @q9f in #1524
- Ci: add codecov target threshold tolerance of 1% by @q9f in #1525
- Node: demote noisy warnings to debug by @q9f in #1518
- Workaround fix for prometheus endpoint by @LesnyRumcajs in #1516
- Fixed bug label for bug template by @LesnyRumcajs in #1514
- Crates: purge unused dependencies by @q9f in #1509
- Github: update code owners by @q9f in #1507
- Ci: enable rustc version trinity for builds by @q9f in #1506
- Crates: bump dependencies by @q9f in #1503
- Re-use some code from ref-fvm by @LesnyRumcajs in #1500
- Connor/default config location by @connormullett in #1494
- Deps: simplify os dependencies by @q9f in #1496
- Use exports from ref-fvm by @LesnyRumcajs in #1495
- Start the prometheus server before loading snapshots. by @lemmih in #1484
- Config dump with tests by @LesnyRumcajs in #1485
- Use the v6 version of the actor's bundle. by @lemmih in #1474
- Exposed more rocksdb options, increased max files by @LesnyRumcajs in #1481
- Parametrize current rocksdb settings by @LesnyRumcajs in #1479
- Use progress bars when downloading headers and scanning the blockchain. by @lemmih in #1480
- Night job scripts by @LesnyRumcajs in #1475
- Add more metrics of syncing by @LesnyRumcajs in #1467
- Limit RocksDB to 200 open files. by @lemmih in #1468
- Ci: Include conformance tests in code coverage results by @lemmih in #1470
- Show a progressbar when downloading tipset headers. by @lemmih in #1469
- Add 'fvm' backend in parallel to our native backend. by @lemmih in #1403
- Update regex to v1.5.5 (from 1.5.4) to avoid performance vulnerability. by @lemmih in #1472
- Ci: Allow codecov policies to fail. by @lemmih in #1471
- Improve docker-compose for monitoring stack by @LesnyRumcajs in #1461
- Revert "Enforce max length when serializing/deserializing arrays" by @lemmih in #1462
- Introduce serde_generic_array by @clearloop in #1434
- Fixed new clippy warnings by @LesnyRumcajs in #1449
- Improve license check script by @LesnyRumcajs in #1443
- Elmattic/actors review f26 by @elmattic in #1340
- Calibnet Support by @connormullett in #1370
- Blockchain/sync: demote chain exchange warning to debug message by @q9f in #1439
- Fix clippy fiascoes introduced in #1437 by @LesnyRumcajs in #1438
- Fix signature verification fiasco by @LesnyRumcajs in #1437
- Clippy for tests by @LesnyRumcajs in #1436
- Rustc: switch to rust edition 2021 by @q9f in #1429
- Forest: bump version to 0.2.2 by @q9f in #1428
- Move from chrono to time crate by @LesnyRumcajs in #1426
Forest v0.2.1 alpha is a service release improving performance and stability.
All changes:
- Ci: fix documentation in release workflow by @q9f in #1427
- Feat(encoding): add max length check for bytes by @clearloop in #1399
- Add assert in debug mode and tests by @elmattic in #1416
- Add shellcheck to CI by @LesnyRumcajs in #1423
- Fail CI on failed fmt or other linting file changes by @LesnyRumcajs in #1422
- Crates: replace monkey-patched cs_* crates by upstream deps by @q9f in #1414
- Add LesnyRumcajs to CODEOWNERS by @LesnyRumcajs in #1425
- Ci: temporarily ignore RUSTSEC-2022-0009 by @q9f in #1424
- Vm/actor: remove unused fields in paych actor tests by @q9f in #1415
- Forest: bump version to 0.2.1 by @q9f in #1417
- Fix exit code mismatch by @noot in #1412
- Improve snapshot parsing performance by ~2.5x by @lemmih in #1408
- Update conformance test vectors (and fix test driver) by @lemmih in #1404
- Use human readable units when loading snapshots. by @lemmih in #1407
- Chore: bump rocksdb to 0.17 by @q9f in #1398
- Include network in forest version string. by @lemmih in #1401
- Fix 1369 by @willeslau in #1397
- Move
/docsto/documentationby @connormullett in #1390
ChainSafe System's second alpha release of the Forest Filecoin Rust protocol implementation. This release fixes a series of bugs and performance issues and introduces, among others, support for:
- Full mainnet compatibility
- Filecoin network version 14 "Chocolate"
- Forest actors version 6
- Further audit fixes
To compile release binaries, checkout the v0.2.0 tag and build with the
release feature.
git checkout v0.2.0
cargo build --release --bin forest --features release
./target/release/forest --helpAll changes:
- Release forest v0.2.0 alpha (#1393
- C1 actors review (#1368)
- Fix encoding size constraints for BigInt and BigUint not enforced (#1367)
- Fix typo when running conformance tests. (#1394)
- Auto-detect available cores on Linux and MacOS. (#1387
- Remove unused lint exceptions. (#1385
- B4 fix: fixing by adding max index computation in bitfield validation (#1344)
- Ci: run github actions on buildjet (#1366)
- Ci: documentation dry-run for PRs. (#1383)
- Use pre-made action to deploy documentation to gh-pages. (#1380)
- Networks: Show an informative error message if the selected feature set is invalid. (#1373)
- Disable test 'test_optimal_message_selection3' because it is inconsistent. (#1381)
- Add David to repo maintainers (#1374)
- Apply lints from rust-1.58 (#1378)
- Catch panic in verify_window_post (#1365)
- Make 'base64' dependency for key_management no longer optional (#1372)
- Fix snapshot get in docs (#1353)
- Fix market logic (#1356)
- V6: fix market and power actors to match go (#1348)
- F28 fix (#1343)
- Fix: F25 (#1342)
- Ci: --ignore RUSTSEC-2021-0130 (#1350)
- Drand v14 update: fix fetching around null tipsets (#1339)
- Fix v6 market actor bug (#1341)
- F27 fix (#1328)
- F17 fix (#1324)
- Laudiacay/actors review f23 (#1325)
- Fix market actor publish_storage_deals (#1327)
- Remove .swp (#1326)
- F24 fix (#1323)
- F9 fix (#1315)
- F20: Fix expiration set validation order (#1322)
- F13 fix (#1313)
- F21 fix (#1311)
- F11 fix (#1312)
- F15 fix (#1314)
- F18, F19 fix (#1321)
- Nv14: implement v6 actors (#1260)
- Add to troubleshooting docs (#1282)
- F12 fix (#1290)
- F1 fix (#1293)
- F16: Fix improper use of assert macro (#1310)
- F14: Fix missing continue statement (#1309)
- F10 fix (#1308)
- F7: Fix incorrect error codes (#1297)
- F8: Add missing decrement for miner_count (#1298)
- F6: Fix incorrect error code (#1296)
- F5: Fix proposal check in market actor (#1295)
- Remove redundant validation code and update error message to be same as in spec actors (#1294)
- F3: fix logic to be the same as in the spec actors (#1292)
- Attempt to improve gh actions time (#1319)
- Fix clippy errors for the new cargo 1.57.0 (#1316)
- Ci: add gh actions workflows (#1317)
- Fix: audit issue F2 (#1289)
- Update codeowners (#1306)
- Add Guillaume to code owners (#1283)
- .circleci: Remove extra step for docs (#1251)
- .circleci: Build and push mdbook (#1250)
- Add MdBook Documentation (#1249)
- Docs: add release notes (#1246)
ChainSafe System's first alpha release of the Forest Filecoin Rust protocol implementation.
- It synchronizes and verifies the latest Filecoin main network and is able to query the latest state.
- It implements all core systems of the Filecoin protocol specification exposed through a command-line interface.
- The set of functionalities for this first alpha-release include: Message Pool, State Manager, Chain and Wallet CLI functionality, Prometheus Metrics, and a JSON-RPC Server.
To compile release binaries, checkout the v0.1.0 tag and build with the
release feature.
git checkout v0.1.0
cargo build --release --bin forest --features release
./target/release/forest --helpThe Forest mono-repository contains ten main components (in logical order):
forest: the command-line interface and daemon (1 crate/workspace)node: the networking stack and storage (7 crates)blockchain: the chain structure and synchronization (6 crates)vm: state transition and actors, messages, addresses (9 crates)key_management: Filecoin account management (1 crate)crypto: cryptographic functions, signatures, and verification (1 crate)encoding: serialization library for encoding and decoding (1 crate)ipld: the IPLD model for content-addressable data (9 crates)types: the forest types (2 crates)utils: the forest toolbox (12 crates)
All initial change sets:
cd33929eCi: ignore cargo audit for RUSTSEC-2020-0159 (#1245) (Afr Schoe)d7e816a7Update Libp2p to 0.40.0-RC.1 (#1243) (Eric Tu)a33328c9Mpool CLI Commands (#1203) (Connor Mullett)9d4b5291Create new_issue.md (#1193) (Lee Raj)60910979Actor_name_by_code (#1218) (Eric Tu)5845cdf7Bump libsecp256k1 and statrs (#1244) (Eric Tu)a56e4a53Fix stable clippy::needless_collect (#1238) (Afr Schoe)4eb74f90Fix stable clippy::needless_borrow (#1236) (Afr Schoe)5006e62aClippy: avoid contiguous acronyms (#upper_case_acronyms) (#1239) (Afr Schoe)8543b3fbConnor/state cli (#1219) (Connor Mullett)b40f8d11Fix Deadlock when using Rayon (#1240) (Eric Tu)0e816c8aClippy: remove redundant enum variant names (enum_variant_names) (#1237) (Afr Schoe)db5bb065Cli: use cargo package version environment data in cli options struct (#1229) (Afr Schoe)28f7d83fRust: default to stable toolchain instead of pinned version (#1228) (Afr Schoe)70f26c29Circleci: prepare build matrix (#1233) (Afr Schoe)d9a4df14Scripts: fix copyright header years (#1230) (Afr Schoe)ccf1ac11Return Ok when validating drand beacon entries similar to how Lotus does as per the audit recommendation. (#1206) (Hunter Trujillo)f5fe14d2[Audit fixes] FOR-03 - Inconsistent Deserialization of Randomness (#1205) (Hunter Trujillo)32a9ae5fRest of V5 Updates (#1217) (Eric Tu)e6e1c8adAPI_IMPLEMENTATION.md build script formatting improvements (#1210) (Hunter Trujillo)1e88b095For 01 (#1188) (Jorge Olivero)881d8f23FIP 0013 Aggregate Seal Verification (#1185) (Eric Tu)ea98ea2aFIP 0008 Batch Pre Commits (#1189) (Eric Tu)a134d5edMulti-key import feature (#1201) (Elvis)0c447d4cOpenRPC schema parsing & generation (#1194) (Hunter Trujillo)bf3936a2Connor/cli smoke test (#1196) (Connor Mullett)7d5b3333Reference files with PathBuf instead of Strings (#1200) (Elvis)3771568cRemove loopback and duplicate addrs innet peersoutput (#1199) (Francis Murillo)ffc30193Constant consensus fault reward (#1190) (Eric Tu)d88ea8d1Added the check for config file via Env Var (#1197) (Elvis)d4a1d044Chain Sync CLI Commands (#1175) (Connor Mullett)698cf3c3Additional Net RPC API & CLI Methods (#1167) (Hunter Trujillo)32656db9auth api-info(#1172) (Connor Mullett)90ab8650FOR-06 fix: indexmap version bump and MSRV update (#1180) (creativcoder)d1d6f640Update Runtime to Support V5 Actors (#1173) (Eric Tu)085ee872Bugfix:vm:run cron for null rounds (#1177) (detailyang)07499a3fChore:build:tweak interopnet compile flags (#1178) (detailyang)933503e2Hotfix:metrics:change prometheus response type (#1169) (detailyang)99fa3864Metrics (#1102) (Jorge Olivero)02791b92Implement network version 12 state migration / actors v4 migration (#1101) (creativcoder)d144eac8Fix wallet verify (#1170) (Connor Mullett)f07f0278Hotfix:fix passphrase fake confirm (#1168) (detailyang)132884d8Chore:interopnet&devnet:fix build error (#1162) (detailyang)992e69e3FOR-15 fix approx_cmp in msg_chain.rs (#1160) (creativcoder)34799734Wallet CLI Implementation (#1128) (Connor Mullett)f698ba88[Audit fixes] FOR-02: Inconsistent Deserialization of Address ID (#1149) (Hunter Trujillo)e50d2ae8[Audit fixes] FOR-16: Unnecessary Extensive Permissions for Private Keys (#1151) (Hunter Trujillo)665ca476Subtract 1 (#1152) (Eric Tu)4047ff5e3 -> 4 (#1153) (Eric Tu)446bea40Swap to asyncronous_codec and bump futures_cbor_codec (#1163) (Eric Tu)e4e6711bEncrypted keystore now defaults to enabled. Warn the user if using an unencrypted keystore. (#1150) (Hunter Trujillo)9b2a03a6Add rust-toolchain file (#1132) (Hunter Trujillo)6f9edae8Fix P2P random walk logic (#1125) (Fraccaroli Gianmarco)87f61d20Spelling and typos (#1126) (Kirk Baird)69d52cbdRPC API w/ Permissions handling (#1122) (Hunter Trujillo)81080179Import/Export StateTree for Testing (#1114) (Eric Tu)b75a4f31Improve CLI printing and RPC error handling. (#1121) (Hunter Trujillo)a8931e2aEnable Gossip Scoring (#1115) (Eric Tu)c337d3bfV5 Actors Prep (#1116) (Eric Tu)0a20e468JSON-RPC Client with FULLNODE_API_INFO config & JWT support (#1100) (Hunter Trujillo)f87d0bafResolve Stack Overflow (#1103) (Eric Tu)bd90aa65Tidy up submitwindowedpost (#1099) (Kirk Baird)36a18656Add Prometheus server (#1098) (Jorge Olivero)ff6776caBase64 encode persistent keystore (#1092) (Connor Mullett)c02669faRemove tide-websockets-sink fork (#1089) (Hunter Trujillo)84ab31b0Parallelize tipset processing (#1081) (Jorge Olivero)d245f14cEncrypted Key Store (#1078) (Connor Mullett)34740715Actors v4 (Network v12) (#1087) (Eric Tu)946f4510Implement optimal message selection (#1086) (creativcoder)e8c1b599Ignore If txn_id Existed Or Not When Deleting (#1082) (Eric Tu)0a134afaDevnet Build (#1073) (Eric Tu)77f8495eRemove check for empty_params (#1079) (Eric Tu)bb7034acMinor fixes and touch-ups (#1074) (François Garillot)674c3b39HTTP JWT validation (#1072) (Hunter Trujillo)4c9856dcDisable MacOS CI for now. Looked into it a bit, not sure what other better solutions we have. (#1077) (Hunter Trujillo)8a3823c3Add @connormullett to Code Owners (#1076) (Hunter Trujillo)e52b34d0Remove a couple unnecessary panics (#1075) (François Garillot)3606c3f9Fix Error Handling in Load Deadlines (#1071) (Eric Tu)a2452f3dTweaks to buffered blockstore (#1069) (Austin Abell)78303511NetworkVersion 11 Upgrade at Epoch 665280 (#1066) (Eric Tu)b9fccde0Release New Crates Due to Vulnerability in forest_message 0.6.0 (#1058) (Eric Tu)4a9e4e47Reduce time to resolve links in flush to ~51ms in buffer blockstore writes (#1059) (creativcoder)b3ad6d7aUpdate bls_signatures to 0.9 and filecoin-proofs-api to 6.1 (#1062) (Eric Tu)7301c6bfFix Error Handling in Deadline Construction (#1063) (Eric Tu)425ec083Clippy "Fix" (#1064) (Eric Tu)275f312eHTTP RPC-JSON and tide-websockets (#990) (Hunter Trujillo)cfeab68fFix ExitCode handling when calling repay_partial_debt_in_priority_order (#1055) (Eric Tu)d30d093dSetup rustfmt (#1053) (Jorge Olivero)d4fc556fLibp2p Connection Limits (#1051) (Eric Tu)36aaf693Add @olibero to Code Owners (#1052) (Eric Tu)8278d257Fix ExitCode Handling in load_deadline (#1050) (Eric Tu)77080e61BufferedBlockstore Flush Improvements (#1044) (Eric Tu)0bd9b1efUpdate Networking Log Levels (#1046) (Eric Tu)669d5504Fix Parent Grinding Fault Detection (#1045) (Eric Tu)c424b65fFix ReportConsensusFault Gas Mismatch (#1043) (Eric Tu)b2141ff3Update Actors Interface and Fix Actors Consensus Issues (#1041) (Eric Tu)0ddec266Cargo Audit Patch (#1042) (Eric Tu)f89b9ad1Paych Actor v3 (#1035) (Eric Tu)608c0a93Miner Actor v3 (#1032) (Eric Tu)01ae4250Remove dutter and add creativ (#1036) (Eric Tu)c4143e0aInitial refactor: separate pool and provider (#1027) (creativcoder)f6eddd54Update libp2p to 0.35 (#928) (Austin Abell)0b63a93fReward Actor v3 (#1020) (Eric Tu)caf19b94Init Actor v3 (#1019) (Eric Tu)4a00c91eRemove old codeowners (#1018) (Austin Abell)49220a1dStorage Power Actor v3 (#1017) (Eric Tu)91ba65b3Update verifreg to v3 (#1016) (Eric Tu)4d663116Document node and cleanup (#1007) (Austin Abell)79c0da79Multisig Actor v3 (#1013) (Eric Tu)0289e349Market Actor v3 (#1010) (Eric Tu)4d0c8642Update types documentation (#1008) (Austin Abell)b42e66b5Fix new clippy warnings and fix logic (#1011) (Austin Abell)44dd57b8Update VM docs. (#1009) (Austin Abell)f20740eeV3 HAMT and AMT for Actors (#1005) (Eric Tu)bfb406b9Update ipld docs (#1004) (Austin Abell)69e91fc2Update crypto docs and cleanup API (#1002) (Austin Abell)9be446b5Blockchain docs and cleanup (#1000) (Austin Abell)121bdedeActors v3 Setup (#1001) (Eric Tu)e2034f74Release Actors V2 (#994) (Eric Tu)47b8b4f7Add 1.46.0 msrv check to CI (#993) (Austin Abell)d38a08d5Framework for State Migrations (#987) (Eric Tu)83906046Improve Car file read node (#988) (Austin Abell)e642c55fFix hyper vulnerability (#991) (Austin Abell)bd546119Include git hash and crate version (#977) (Rajarupan Sampanthan)46f7bf61V3 Hamt update (#982) (Austin Abell)11d059abFix bug in miner extend sector expiration (#989) (Austin Abell)84296d92Nightly build/audit workaround and nightly linting fixes (#983) (Austin Abell)d1b2f622Prep hamt v2 release (#981) (Austin Abell)c5342907Fix fork handling (#980) (Eric Tu)931de226V3 Actors Amt update (#978) (Austin Abell)4c2e4a07Update Amt API and prep release (#979) (Austin Abell)d0a46ba7Refactor discovery, improve Hello handling/peer management (#975) (Austin Abell)7ba2217dReplace broadcast channels and refactor websocket streaming (#955) (Austin Abell)75403b30Fix verify consensus fault logic (#973) (Austin Abell)76797645Replace lazycell with once_cell (#976) (Austin Abell)7a8cce81Fix block header signature verification helper function (#972) (Austin Abell)f182e8d6Fix fork (#971) (Eric Tu)34e1b1e6Remove irrelevant spam logs (#969) (Austin Abell)c565eb92Fix edge case in update pending deal state (#968) (Austin Abell)db0c4417Fixes to ChainSyncer Scheduling (#965) (Eric Tu)3b16f807Purge approvals on multisig removal (#967) (Austin Abell)3d91af03Cleanup TODOs (#933) (Austin Abell)d7b9b396Update logging to hide internal messages by default (#954) (Austin Abell)d82e3791Interopnet support (#964) (Austin Abell)59c4413cAdd skip-load flag and cleanup snapshot loading (#939) (Austin Abell)ce37d70dFix to address resolution for chained internal calls (#952) (Austin Abell)18535f7cFix storage deal resolution pattern (#948) (Austin Abell)34b8c7ebUpdate statediff for v2 and keep under feature (#949) (Austin Abell)3eed3ac2Update bls backend to blst (#945) (Austin Abell)c02944fbHandle null multisig proposal hashes (#953) (Austin Abell)5845f9e7Ignore invalid peer id in miner info (#951) (Austin Abell)721bc466Fix bugs in terminate sectors logic (#950) (Austin Abell)ccd4fbd0Nullable Entropy in Randomness RPC and Fix Gas Base Fee Estimation (#947) (Eric Tu)4825a6a8Fix calico vesting (#942) (Austin Abell)60e59697Fix bug with pledge delta from proving deadline (#943) (Austin Abell)334551e1Update consensus min power (#946) (Austin Abell)0e4ff578Update calico storage gas multiplier (#940) (Austin Abell)53d35f02Fix typo in v2 winning post validation (#941) (Austin Abell)749303c4CBOR Stream Read in LibP2P RPC (#932) (Eric Tu)a79a97a9Fix header signing bytes cache bug (#935) (Austin Abell)a32e19d3Update header caches and builder (#930) (Austin Abell)ae9d7acbSwitch temp bytes deserialize to Cow (#931) (Austin Abell)a2ac9552Clean up chain exchange responses and peer disconnects (#929) (Austin Abell)2f87782cUpdate libp2p, async-std, and other deps (#922) (Austin Abell)9a6c9a87Change default address prefix to 'f' (#921) (Rajarupan Sampanthan)182eacceFix ChainNotify RPC (#924) (Eric Tu)b97451a8Update price list for calico VM gas (#918) (Austin Abell)67dfe7b1Update calico vesting and refactor circ supply (#917) (Austin Abell)8efd8ee6Claus fork burn removal (#920) (Austin Abell)ef3ecd1eCalico (V7) update (#919) (Austin Abell)3c536d0dSetup multiple network configurations and drand schedule (#915) (Austin Abell)fa82654fAdding Insecure Post-Validation (#916) (Rajarupan Sampanthan)05b282daWrap ChainSyncer::state in an Arc and set it to Follow accordingly (#914) (Tim Vermeulen)adfbe855Update smoke base fee calculation (#912) (Austin Abell)dd173e41Update randomness for conformance tipsets and update V7 proof verification (#911) (Austin Abell)4b23b65cUpdate types for all new V2 network upgrades (#906) (Austin Abell)0da265deReplace shared actor crates with local code (#907) (Austin Abell)c604ae5fUpdate miner actor to v2 (#903) (Austin Abell)e4e39094Update reward actor to v2 (#897) (Austin Abell)62325dd7Add GetMarketState to State Manager (#900) (Ayush Mishra)208c7655Update runtime for network version upgrades (#896) (Austin Abell)c1a7553fStorage Miner Pledging (#899) (Eric Tu)d6af098eAdd serde annotation for go vec visitor without using wrapper (#898) (Austin Abell)56f6d628Update verifreg actor to v2 (#889) (Austin Abell)88d1d465Add a cfg flag to build Forest in Devnet mode (#895) (Eric Tu)8a1f2038Paych v2 actor update (#894) (Austin Abell)f821b971Power actor v2 upgrade (#893) (Austin Abell)d1dbd0abAdd syncing configuration options (#892) (Dustin Brickwood)83a86a9dHandle pubsub blocks in parallel (#891) (Tim Vermeulen)5dee4491Update seal proof types and proofs api version (#890) (Austin Abell)169f9e3fVersion Hamt, Amt, State tree (#887) (Austin Abell)ecc7c680Update market actor to v2 (#888) (Austin Abell)dcbac0f0Update multisig to v2 (#886) (Austin Abell)5043ed0cUpdate CI build checks (#885) (Austin Abell)787dcc0cImplement Net API Module + Some other RPC methods (#884) (Eric Tu)47f2bd1eActors v2 upgrade setup (#854) (Austin Abell)aa448702Storage Miner Init Interop (#882) (Eric Tu)8e821e0bRemove coverage from CI until fixed (#883) (Austin Abell)61e5465eFix message crate compilation with json feature (#880) (Austin Abell)85e96837Release crates for actors v2 upgrade (#879) (Austin Abell)82ca74ccForm tipsets (#875) (Tim Vermeulen)ce5c28b9A bunch of fixes for the RPC (#874) (Eric Tu)8193a4b1Implement hamt fuzzer (#872) (Austin Abell)36154ff6Implement Amt fuzzer (#871) (Austin Abell)15c0e67fFix syncing regressions from #841 (#873) (Austin Abell)6aaa037aUpdate message json format to match Lotus (#870) (Austin Abell)56b4961fRpc fixes and implementations (#841) (Purple Hair Rust Bard)1da3294cFork serde_bytes to disallow string and array deserialization (#868) (Austin Abell)44f2c22eFix exit code handling in market (#866) (Austin Abell)f325bb35Fix unlock unvested funds (#865) (Austin Abell)d690d484Implement chain export functionality and car writer (#861) (Austin Abell)1b4dd61dAdd sled backend and cleanup RocksDb type (#858) (Austin Abell)db642466MessagePool Greedy Message Selection (#856) (Eric Tu)26082703Implement chain index (#855) (Austin Abell)c300f8e4Update dependencies (#859) (Dustin Brickwood)d6c9bf60Allow importing snapshot from URL + Progress bar (#762) (#811) (Stepan)178d1679Setup mocking panic handling in vm (#857) (Austin Abell)60d12063Switch param deserialization to the runtime to interop (#853) (Austin Abell)f9249b15Use upstream cid (#850) (Volker Mische)85786ad3Update CODEOWNERS (#848) (Austin Abell)0c1febbfRename BlockSync -> ChainExchange and tweak parameters (#852) (Austin Abell)876b9881Refactor ChainStore, tipset usage, cache loaded tipsets (#851) (Austin Abell)396052caFix: update balance table (#849) (Austin Abell)af28ef40Update amt for_each caching mechanisms and usages (#847) (Austin Abell)ee25ba92Add Networking and Republishing logic to MsgPool (#732) (Eric Tu)ef2583dbUse concrete implementations (#842) (Volker Mische)3c8a57b7Fix gossipsub handling to process only when in follow state (#845) (Austin Abell)c53a5b82Fix bug with import and cleanup (#844) (Austin Abell)1832a05eFix makefile test commands (#843) (Austin Abell)293ef19eFixes code cov build (#840) (Dustin Brickwood)62ea7ef4Update multihash dependency and make Cid impl Copy (#839) (Austin Abell)cb1e2c41Update README.md with security policy (#831) (Amer Ameen)d7b76cc9Fix circleCI coverage (#836) (Austin Abell)e51e1eceFix allow internal reset after failed tx (#834) (Austin Abell)a86f0056CircleCI updates, removal of github actions (#813) (Dustin Brickwood)d74b34eeAdd Gossipsub chain messages to MPool in the ChainSyncer instead of Libp2p Service (#833) (Eric Tu)bbdddf9dFix block messages generation for sequence edge case (#832) (Austin Abell)e1f1244bRefactor chainstore and related components (#809) (Austin Abell)7990d4d4Cleanup batch_verify_seal and tipset state execution (#807) (Austin Abell)0b7a49b6Process blocks coming off of GossipSub (#808) (Eric Tu)1a447316Defer bitfield decoding until its first use (#803) (Tim Vermeulen)ede37134Update proofs and other deps (#812) (Austin Abell)a97f4b3bFix message receipt json (#810) (Austin Abell)b31fa0aeUpdate gossip messagepool error log (#805) (Austin Abell)3bec812cFix unsealed sector padding (#804) (Austin Abell)9eab4a8aFix reschedule sector expirations (#802) (Austin Abell)21d6108fOptimize statediff and fix hamt bug (#799) (Austin Abell)7da52345Add msgs to msg pool (#797) (Dustin Brickwood)901d00cfIncrease cron gas limit (#796) (Austin Abell)ca3c131fImport snapshots and import chains (#789) (Eric Tu)7d34126dRefactor types out of actors crate to prep for v2 upgrade (#790) (Austin Abell)54635c52Fix Miner cron related things (#795) (Austin Abell)27d3e668GossipSub Message and Block Deserialization (#791) (Eric Tu)34710f7eUpdate Dockerfile and include make command (#792) (Dustin Brickwood)5a8dfaabSwitch store for randomness retrieval (#793) (Austin Abell)b94f39deUpdate bootnodes (#794) (Austin Abell)2e1bb096Adding CircSupply Calculations (#710) (nannick)36e38c67Wrap cached state in async mutex to avoid duplicate state calculation (#785) (Austin Abell)20de7a45Adding Block Probability Calculations (#771) (nannick)bee59904Fix deferred cron and validate caller (#782) (Austin Abell)78e6bb4bPut Hamt reordering fix under a feature (#783) (Austin Abell)7743da7eFix projection period for faults (#784) (Austin Abell)fb2ca2beBuild and Api Versoining (#752) (Purple Hair Rust Bard)aa397491Fix get_sectors_for_winning_post and cleanup (#781) (Austin Abell)dd707577Fix provider and block message limit (#780) (Austin Abell)199d7febRefactor statediff to own crate (#779) (Austin Abell)6fb284a2Fix sync messages logic (#778) (Austin Abell)c571e0e0Fix tipset sorting function (#777) (Austin Abell)f9ab4c20Update sequence based on epoch for internal messages (#775) (Austin Abell)057ff0d4Fix chaos actor send (#773) (Austin Abell)0834808aMinimum power fix (#774) (Eric Tu)34759a88Fix Amt iter mut guard (#772) (Austin Abell)655eac22Update conformance vectors (#768) (Austin Abell)1de532f3Fix link in README (#770) (Austin Abell)6535480fRemove protoc dependency and update README (#769) (Austin Abell)fc05e125Minor fixes found during devnet testing (#753) (Purple Hair Rust Bard)982738c2Authorization Setup for Write Access on RPC Calls (#620) (Jaden Foldesi)d4de5481Fix blockstore get gas charge (#751) (Austin Abell)fd89bb9fImplement actor upgrade logic (#750) (Austin Abell)6a46d7a4Add aValueMutwrapper type that tracks whether AMT values are mutated (#749) (Tim Vermeulen)0a7e163eFix CronEvents in Miner Actor (#748) (Eric Tu)3e8fd6cfFix block validations and add chain export test (#741) (Austin Abell)a4e399d9Remove extra state load from withdraw balance (#747) (Austin Abell)15e00e80Fix trailing 0s on bitfield serialization (#746) (Austin Abell)7e7d79c3Switch serde_cbor to fork to allow unsafe unchecked utf8 deserialization (#745) (Austin Abell)f8e16554Fix Balance Table get (#744) (Eric Tu)6f187420Skip send in transfer_to_actor if value is 0 (#743) (Eric Tu)9dbcc47dMAX_MINER_PROVE_COMMITS_PER_EPOCH 3 to 200 (#742) (Eric Tu)cecf8713State diff on root mismatch option (#738) (Austin Abell)f309a28bFix miner constructor params and proving period offset calculation (#740) (Austin Abell)891cd3ceFix base fee in conformance, bump versions and cleanup (#739) (Austin Abell)1b23fa33Add label to DealProposal (#737) (Austin Abell)a75b47acAdd redundant writes to Hamt and Amt to interop (#731) (Austin Abell)d910cf02Update conformance vectors (#734) (Austin Abell)9de9e351BlockSync provider (#724) (Stepan)0d86e686Update params and fetch on daemon start (#733) (Austin Abell)cb4f779bUpdating Chaos Actor and Test Vectors (#696) (nannick)15eb3f07Fix signature verification in mempool (#727) (Austin Abell)3ec23378Update proof verification (#726) (Austin Abell)82f76ae6Add caching to Hamt and update testing (#730) (Austin Abell)630b54f1Update Actors error handling (#722) (Austin Abell)e59b7ae6Switch bigint division usage to Euclidean to match Go (#723) (Austin Abell)2561c51cAmt refactor and interop tests (#716) (Austin Abell)7a471d57Remove unnecessary feature with audit failure (#721) (Austin Abell)b073565eMempool Update (#705) (Eric Tu)f0072101Update Miner actor (#691) (Tim Vermeulen)285b9c34Storage miner integration (#670) (Purple Hair Rust Bard)04274b14Adding More Reward Actor Tests (#715) (nannick)dae9342fUpdate block validations (#711) (Austin Abell)6dc3b50dUpdate AMT max index bound (#714) (Austin Abell)d4dee5a2Make block validations async (#702) (Austin Abell)8ef5ae5cPeer stats tracking and selection (#701) (Austin Abell)dc0ff4cdSemantic Validation for Messages (#703) (Eric Tu)3411459dChainSync refactor (#693) (Austin Abell)66ca99e2Fix StateManager use in different components (#694) (Eric Tu)96b64cb2Drand ignore env variable (#697) (nannick)548a4645Print out conformance results and add log for skips (#695) (Austin Abell)0d7b16ccAdd CLI command to add Genesis Miner to Genesis Template (#644) (Stepan)0be6b76aChain syncing verification fixes (#503) (Eric Tu)156b2fb6Fix docs publish workflow (#688) (Austin Abell)b54d0ec7Update statetree cache (#668) (Dustin Brickwood)0809097fUpdate blocksync message formats (#686) (Austin Abell)0db7ddbbTipset vector runner (#682) (Austin Abell)41ad3220Swap secio authentication for noise (#685) (Austin Abell)93faacdeFix bitswap breaking patch release (#683) (Austin Abell)f2c3ff0fUpdate apply_blocks call (#678) (Austin Abell)e411eeedRemove TODOs from scoping (#675) (Austin Abell)24341646Adding Mdns and Kad Toggle (#647) (nannick)26517fbaUpdate edge cases for dynamic error handling in VM (#671) (Austin Abell)cd68b539Update runtime transaction logic (#666) (Austin Abell)d5ccf900Update EPOCH_DURATION_SECONDS (#667) (Eric Tu)c73394bcFix serialization of TxnIdParams (#665) (Eric Tu)7b4174e3Fix runtime implementation to return gas blockstore (#664) (Austin Abell)2712508eHandle failed retrieve of actor state (#663) (Eric Tu)bbbfacbaCheck value correctly before transfer (#662) (Eric Tu)8d87c681Add validation in chaos actor (#661) (Eric Tu)7d2bd2faFix caller validation on nested sends (#660) (Austin Abell)5db465c3Make hamt value type generic and add benchmarks (#635) (Austin Abell)5e35560cFix internal send bug, remove message ref from runtime (#659) (Austin Abell)ff754b90Fix Get Actor (#658) (Eric Tu)0d82f424Fix bugs in vm and update runner (#657) (Austin Abell)809e3e8cAllow registering of Actors to the VM (#654) (Eric Tu)0f8185b2Fix inconsistencies in apply_message (#656) (Austin Abell)4e0efe99Add benchmarks and cleanup AMT (#626) (Austin Abell)aa6167c8Expose message fields (#655) (Austin Abell)fd911984Adding Chaos Actor (#653) (nannick)d0bd5844Fix actor creation and deletion logic (#652) (Austin Abell)81557c9eSpace race genesis and bootnodes updates (#650) (Austin Abell)f1bf6079Released updated protocol crates (#651) (Austin Abell)3fe1d46aUpdate gas charges in VM (#649) (Austin Abell)0fb2fa38Adding Puppet Actor (#627) (nannick)3e6c2ee7Conformance test runner (#638) (Austin Abell)a4171becBuiltin actors 0.9.3 update (#643) (Austin Abell)6029b716Update libp2p, proofs, and other deps (#641) (Austin Abell)bbd20ccfDynamic Gas Implementation (#639) (Eric Tu)12ea58cfPower actor update (#621) (Austin Abell)23718156Separate ticket and beacon randomness (#637) (Austin Abell)da57abaeUpdate commcid to new codes and validation (#601) (Austin Abell)2b54a873Update default hamt hash function to sha256 and make algo generic (#624) (Austin Abell)f0c0149aUpdate header serialization (#636) (Austin Abell)22971156Update to new empty amt serialization (#623) (Austin Abell)0a7036b0Rpc state implementation (#618) (Purple Hair Rust Bard)336ae3b5Add Bitfield cut operator and other improvements (#617) (Tim Vermeulen)88fdfbc0Update system actor (#622) (Austin Abell)bbbb9e2bNew Genesis Template cli command (#612) (Stepan)8192c126Fix bug in reading and persisting keystore data (#625) (Austin Abell)1b43ad5eReward actor update (#619) (Austin Abell)208f1719Update verified registry actor (#609) (Austin Abell)87aec324Add Persistent KeyStore (#604) (Jaden Foldesi)b6602bbdFix string decode handling network (#611) (Austin Abell)4aeadf71Paych actor updates (#608) (Austin Abell)9c8e9a60Smoothing Functions For Actors (#594) (nannick)a84ac2f0Multisig actor update (#606) (Austin Abell)90353963Market actor update (#593) (Austin Abell)44c1cd9bAdd address bugfix tests and bump crate version (#598) (Austin Abell)d7dcaf6eRemove incorrectly ported sanity check from go implementation (#597) (Austin Abell)8b0b35cdReturns an Error in case of slicing non-ascii strings (#599) (Natanael Mojica)52a5acecUpdate Drand to use HTTP with the new endpoint (#591) (Eric Tu)4783a670Update cron actor (#588) (Austin Abell)c642d9a9JSON client setup and chain CLI commands (#572) (Dustin Brickwood)f80cfab7Update account actor and params defaults/checks (#587) (Austin Abell)25203cb9Add bulk put blockstore function and update header persisting (#570) (Austin Abell)9982c586Add Drand Beacon Cache (#586) (Stepan)0c0b617cUpdate init actor (#589) (Austin Abell)2863f64eVM and Runtime updates (#569) (Austin Abell)fc523a32Message Pool RPC (#551) (Jaden Foldesi)907eda8fState API - RPC methods (#532) (Purple Hair Rust Bard)7cb6cecdAdd actor error convenience macro (#550) (Austin Abell)b9ae7e8fSwitch to use MessageInfo and refactor MockRuntime (#552) (Austin Abell)53378a9fTest Runner for Message Signing Serialization Vectors (#548) (Jaden Foldesi)d3a1776cWallet rpc (#512) (Jaden Foldesi)916bd4a6Have BitField store ranges instead of bytes, and add benchmarks (#543) (Tim Vermeulen)37617d38Send events through publisher (#549) (Eric Tu)0af8cfbaUpdate machine version for docs publish (#546) (Austin Abell)6c30ffe5TokenAmount and StoragePower to BigInt (#540) (nannick)d83dac3cBitswap Integration (#518) (Eric Tu)b635c087Implement Mock Runtime Syscalls (#542) (nannick)1b04f1caImplement Sync API and improve syncing (#539) (Austin Abell)9c561287Paych actor tests (#492) (nannick)c7e94f24Implement msg pool (#449) (Jaden Foldesi)1c58f7a4Move libp2p from fork and bump versions (#534) (Austin Abell)41256318Adding RPC Configuration (#531) (nannick)250ad1bfImplements deadline tests and chain epoch update to i64 (#533) (Dustin Brickwood)0facf1baRefactor RPC and network events (#530) (Austin Abell)2d88d06cRemove bitvec dependency and other bit field changes (#525) (Tim Vermeulen)e0d574e1Update async-std runtime setup (#526) (Austin Abell)a2cab731Implementing Market Balance (#524) (nannick)7143e42bRefactor CLI and implement fetch-params (#516) (Austin Abell)95a2fcc1Update proofs-api to 4.0.1 (#523) (Austin Abell)6e33c231Bitfield improvements (#506) (Tim Vermeulen)8de380d2Rupan/market actor tests (#426) (nannick)68c026aeFix docs push rule (#520) (Austin Abell)f68ae5ddUpdate default branch name to main (#519) (Austin Abell)2650f8e8Remove dead code and update CI (#517) (Austin Abell)4422cddcA bare-bones GraphSync ResponseManager (#511) (Tim Vermeulen)11411a37Update dependencies and proofs version (#515) (Austin Abell)8add7840Update bootnodes and genesis for testnet (#509) (Austin Abell)1ff34dbcUpdate proofs to v4 (#507) (Austin Abell)0f1dba04Updates market actor (#496) (Dustin Brickwood)18f6aaccImplement Kademlia discovery (#501) (Austin Abell)dd396b9fFix ecrecover and verify methods (#500) (Jaden Foldesi)a326fec9Ashanti/winning posts (#493) (Purple Hair Rust Bard)f66b4e1aAdded ctrl addresses (#494) (Dustin Brickwood)f38a0016Miner actor implemented (#486) (Dustin Brickwood)8d2a4936Implement Wallet (#469) (Jaden Foldesi)418c2fedAdds Json serialization for Message Receipts and ActorState (#484) (Eric Tu)a49f9a96Update Reward actor to new spec (#480) (Austin Abell)33310f57Implements Storage Miner critical Chain API methods (#478) (Eric Tu)21b3b498Batch seal verification implementation (#483) (Austin Abell)78e32a99Switch bls pub key from using vec (#481) (Austin Abell)afb1fc82Updated Code to Pass Checks With Rust 1.44 (#479) (Jaden Foldesi)9cc24d70Tide JSONRPC over HTTP (#462) (Eric Tu)7e0540f1Ashanti/chain store channel (#473) (Purple Hair Rust Bard)2ad2399bAshanti/connect state transition (#454) (Purple Hair Rust Bard)a0dbd7bdImplement Block header json (#470) (Austin Abell)206ec565Update power, reward and market actors, rt and registered proofs relative to miner actor (#458) (Dustin Brickwood)63083135Implement compatible bitfield (#466) (Austin Abell)6dab2336Add CircleCI (#441) (Gregory Markou)8ee51446Add PeerResponseSender (#453) (Tim Vermeulen)f4b306d6Update dockerfiles for protoc install (#460) (Austin Abell)fb1b4085Bump async-std to 1.6 (#456) (Eric Tu)fc34b441Runtime randomness and ChainStore randomness (#415) (Eric Tu)47835025Fix block header serialization (#450) (Austin Abell)91f44e20Setup GraphSync network interface (#442) (Austin Abell)129f17e0Bump versions for release (#451) (Austin Abell)078eda17Signed and Unsigned message json impls (#444) (Austin Abell)bb982fbbUpdate libp2p to 0.19 (#439) (Austin Abell)acedcf08Remove a bajillion manual serde implementations (#433) (Tim Vermeulen)c9a089e8Update serialization vectors (#435) (Austin Abell)9ef6e67aAdd Secp address sanity check (#438) (Austin Abell)c58aeb4bSetup GraphSync message types and protobuf encoding (#434) (Austin Abell)ba8d9467Verifying Drand Entries from Blocks (#387) (Eric Tu)b1903ba2Jaden/chainstore refactor (#432) (Jaden Foldesi)b80ab49dJaden/chainsync/asyncverification (#419) (Jaden Foldesi)033bade8Update prefix bytes encoding to include mh len (#431) (Austin Abell)a04ba8f1Cargo changes for publishing core crates (#425) (Austin Abell)42fc42e9Add default implementations for Store bulk operations (#424) (Tim Vermeulen)ff39f2aaLast block info for selectors (#418) (Austin Abell)1f96e918Update docs and use rocksdb as feature (#421) (Austin Abell)187ca6ccRemove Address default implementation (#422) (Austin Abell)932dae3bImplemented verify post (#416) (Purple Hair Rust Bard)b7f6f92aShared types refactor (#417) (Austin Abell)6241454aImplement Verify Registry Actor (#413) (Purple Hair Rust Bard)1598ff20Update tipset sorting (#412) (Austin Abell)4c95043eIpld selector traversals implementation (#408) (Austin Abell)fa12fff0Jaden/tipsetconversions (#404) (Jaden Foldesi)f47b7579SyncBucket cleanup (#407) (Tim Vermeulen)ef7aafdcAsync Block verification in ChainSync (#409) (Eric Tu)0bba0ecfFix CI for docs build (#406) (Austin Abell)81257dfdRupan/reward actor tests (#403) (nannick)5a0bf8d9Implement interfacing with Drand over GRPC (#375) (Eric Tu)91a7e651Selector explore implementation (#402) (Austin Abell)cbbd921aRefactor with structops macro (#401) (Purple Hair Rust Bard)a048f250Init test porting (#394) (nannick)67a25f9cClean up tipsets (#397) (Tim Vermeulen)4e4fa120Update proofs api (#400) (Austin Abell)2052eb9fBump Dependencies (#399) (Eric Tu)c57cf419Implement verify seal syscall (#393) (Dustin Brickwood)18d179b2DAGJson support for Ipld (#390) (Austin Abell)84fb0e44IPLD Selector framework with serialization (#395) (Austin Abell)3f8c6cf6Temporary build fix for fil-proofs (#396) (Austin Abell)0b589d73Interop updates and refactoring (#388) (Austin Abell)1aa2e64dImplements verify consensus fault syscall and reorg vm crates (#386) (Dustin Brickwood)aa899c08BlockHeader Update (#385) (Eric Tu)7e8124deRefactor address crate (#376) (Austin Abell)14894298Implement buffered blockstore cache (#383) (Austin Abell)5355acd0Apply Blocks and refactor (#374) (Austin Abell)8bc201a3Added forest img (#378) (Dustin Brickwood)16483531Added bls aggregate sig check for block validation (#371) (Dustin Brickwood)3d5aeb2bStmgr retrieval methods + is_ticket_winner calc for block validation (#369) (Dustin Brickwood)cecd33d7Load Genesis from CAR file (#329) (Eric Tu)29b45845Compute unsealed sector CID syscall (#360) (Austin Abell)c27deabaSetup dockerfiles and update CI (#370) (Austin Abell)68c4f9aeImplement Weight method + st/gt for heaviest ts (#359) (Dustin Brickwood)4382a82eMock Runtime and tests for Account and Cron Actors (#356) (Eric Tu)ff5260a6Update to new PoSt sector types (#357) (Austin Abell)8f0fc1d5Commitment to cid conversions (#358) (Austin Abell)3798a4e8Disallow default Cid and Address serialization (#354) (Austin Abell)dbee0e66Implements apply_message and apply_implicit_message (#353) (Dustin Brickwood)1e6533a4Implement verify signature syscall and cleanup (#351) (Austin Abell)d257f5cdBlake2b syscall (#352) (Austin Abell)38825e7bVM gas usage implementation and refactor (#350) (Austin Abell)8f8fd1e3Connect remaining Actor invocations to runtime and cleanup (#342) (Austin Abell)4f0c6f7dMarket actor implementation (#338) (Dustin Brickwood)380dde3eUpdate block header serialization (#337) (Austin Abell)f5845a0bRefactor error handling (#336) (Austin Abell)3bc7d410Key hashing compatibility (#333) (Austin Abell)28760209Update peerid serialization in miner actor (#335) (Austin Abell)35f3c973Reward Actor (#318) (Austin Abell)ca7898f7Move bigint serialization utils (#331) (Austin Abell)e0a996bdMiner state (#325) (Austin Abell)d30d396eMarket actor state (#330) (Austin Abell)5f81a1d6Runtime Implementation (#323) (Eric Tu)4aacd72aInitial chainsync process (#293) (Dustin Brickwood)e2157f57Logging level config with RUST_LOG env variable(#328) (Austin Abell)29b9e265Libp2p and dependency update (#326) (Austin Abell)618cf4abStorage Power actor (#308) (Austin Abell)6d2bf0e0Switch MethodNum and ActorID to aliases (#317) (Austin Abell)661f52aaChange ChainEpoch and TokenAmount types (#309) (Austin Abell)7e8bd6f2Payment channel actor (#299) (Austin Abell)c97033c0Bitfield/ rle+ impl (#296) (Austin Abell)5473af59SetMultimap implementation (#292) (Austin Abell)1ae3ba41Improve actors serialization handling (#297) (Austin Abell)31738128Refactor annotated serializations (#295) (Austin Abell)a5b1ab3cSector types (#294) (Austin Abell)08d523b5Implement multimap (#290) (Austin Abell)338ddf9dFeat(vm): implement improved error handling (#289) (Friedel Ziegelmayer)9611818aFeat(vm): implement system-actor (#288) (Friedel Ziegelmayer)76712559Implement balance table (#285) (Austin Abell)f2027f03Update message for type changes (#286) (Austin Abell)af7ad3a7Multisig actor implementation (#284) (Austin Abell)e1200ea6Cron actor implementation (#281) (Austin Abell)d7f01992Move abi types and implement piece size (#283) (Austin Abell)7c8fb8cfInit actor implementation (#282) (Austin Abell)5d829172Clean actors and update to spec (#279) (Austin Abell)d7195739Remove unnecessary db trait (#274) (Austin Abell)0018c22cState tree full implementation and refactor IPLD (#273) (Austin Abell)125a9a24Move CodeID and ActorState to vm crate (#271) (Eric Tu)1a5b619bUpdate exit codes (#270) (Eric Tu)b337f7c7Clear warnings for new nightly toolchain rule (#259) (Austin Abell)28cb8f54Hamt implementation (#255) (Austin Abell)17a447e0Update runtime to new spec/ impl (#256) (Austin Abell)0c451396Read CAR Files (#254) (Eric Tu)bd9f5cf0Update multihash dependency and Blockstore interface (#253) (Austin Abell)6aeee77aImplement basic peer manager (#252) (Austin Abell)970d476fImplement sync fork (#248) (Dustin Brickwood)a43df302Connected blocksync requests and network polling thread (#244) (Austin Abell)7b5d8db0Refactor RPC and implement hello protocol (#246) (Austin Abell)a1672031Adding Verification Function for Aggregate BLS Signatures (#240) (DragonMural)8c924495ChainSync framework (#243) (Austin Abell)5a18b496Libp2p RPC protocol and Blocksync (#229) (Eric Tu)47dfb47cUpdate multibase dependency for lowercase base32 support (#239) (Austin Abell)39a8d88eAllow Address network prefix to be overriden for printing (#233) (Austin Abell)faa71386Refactor SyncManager to have ownership over tipsets (#238) (Austin Abell)f242043eRemove all clones and copies from serializations (#234) (Austin Abell)d87704f1State Manager and initial miner retrieval methods (#224) (Dustin Brickwood)a65794baSetup Forest execution threads (#236) (Austin Abell)56e62302Global async logging (#232) (Eric Tu)14115728Fix cid serde feature reference (#235) (Austin Abell)b598ffcaLocal bigint serialization (#231) (Austin Abell)1bd9a59cRefactor blockstore and Cid for usage (#230) (Austin Abell)abe9be2eFix cbor serialization formats and cleanup (#228) (Austin Abell)59e2fc7cRefactor keypair retrieval and saving (#221) (Austin Abell)67ebaae2Initial Validation Checks - Message, Timestamp and Block Sig (#219) (Dustin Brickwood)fdf6c506Entry point for app for organization (#220) (Austin Abell)b25b4066Fix README build badge (#218) (Austin Abell)6d4304e2Added Fetch and Load Methods (#196) (Dustin Brickwood)b41107d3Clean crypto crate and interfaces with Signature types (#214) (Austin Abell)75224a6aAdd audit to CI (#213) (Austin Abell)477930dbMigration to Stable Futures and Network Refactor (#209) (Eric Tu)8b1b61baAMT implementation (#197) (Austin Abell)62beb1b2CBOR encoding for BlockHeader (#192) (Eric Tu)3d6814c8Updated markdown for readme and templates (#208) (Dustin Brickwood)15ce6d2cAdd MIT license to dual (#204) (Austin Abell)547e35b7Updated readme (#201) (Dustin Brickwood)21635617Updated link to include internal discord (#200) (Dustin Brickwood)f21765c4Rename repo (#199) (Austin Abell)957da7edUpdate README.md (#198) (ChainSafe Systems)2514c406Sync & Store methods updated (#193) (Dustin Brickwood)f1eb515bDagCBOR encoding and decoding for Tickets (#190) (Eric Tu)58f3e03aUpdate BlockHeader weight to BigUint and DagCBOR encoding for TipsetKeys (#191) (Eric Tu)8755ec16Refactor to remove ToCid trait (#186) (Austin Abell)ab99a6ecWrap Signature into a struct (#184) (Eric Tu)8018d246Added templates and config (#183) (Dustin Brickwood)7a9fa80bBasic Syncer and ChainStore methods (#173) (Dustin Brickwood)7e524b3cUnsignedMessage cbor encoding (#174) (Austin Abell)925d2711MessageParams update and refactor (#175) (Austin Abell)1d6dd985Add missing fields for BlockHeader (#177) (Eric Tu)f025a9bbUpdate changes in spec, updated docs, updated function signatures (#171) (Austin Abell)c3c6e052Updated cid format and IPLD link to Cid type (#172) (Austin Abell)6d527a47Update message types function signatures (#170) (Austin Abell)468846f9Refactor Blockheader (#169) (Austin Abell)e70250dbFix existing bug with multibase ToCid (#167) (Austin Abell)89a0e60eAdd CODEOWNERS (#166) (Austin Abell)ae6861e2Switch from using dynamic pointers (#154) (Austin Abell)b5295e25Implement and update Cbor encoding (#157) (Austin Abell)e998474fUpdate address for network config, clean auxiliary stuff (#145) (Austin Abell)c9d3fbbdReadme Updates (#159) (David Ansermino)1e99c0caImplemented block format (#149) (Dustin Brickwood)7e58d9bcDocs index redirect (#151) (Austin Abell)a641becaUpdate Cid references, bump serde_cbor version (#155) (Austin Abell)79374e42Fix license script and add to CI (#150) (Austin Abell)8431cad8Docs Cleanup (#138) (David Ansermino)9d04393eImplement memory db (#137) (Austin Abell)d35410efImplement Basic SyncManager (#132) (Austin Abell)1576674fUpdate makefile (#140) (Gregory Markou)0d29569cCreated wrapper for Cid type (#134) (Austin Abell)eace8d81Storage Power Actor framework (#129) (Austin Abell)ede60e7bNaive DB + Rocksdb implemenation (#125) (Gregory Markou)957d0529Implement BlockHeader builder pattern (#124) (Austin Abell)d745c60dSwitch License to Apache (#139) (Gregory Markou)cee77ac1Update libp2p version to fix cargo issue (#136) (Austin Abell)2c63bc56Add License and license script (#123) (Gregory Markou)0ab143c4CI cleanup (#122) (Austin Abell)e4363f1aImplement TipIndex (#113) (Dustin Brickwood)c916eb4dUpdate StateTree and implement cache (#108) (Austin Abell)4c9fbd88MethodParameter usage and implementation in system actors (#107) (Austin Abell)af198d43Basic VRF (#104) (David Ansermino)6818dc5dFix linting issues (#105) (Austin Abell)2bb5c0acRemove ref keywords (#99) (Austin Abell)d9a35b51Remove redundant CI (#102) (Austin Abell)1bd01685MethodParams update and implementation (#103) (Austin Abell)2b8ee0ebUpdated blocks crate to reflect spec changes (#86) (Dustin Brickwood)efb3d8fcState tree and interpreter framework (#97) (Austin Abell)792f1204Reward System Actor framework (#95) (Austin Abell)e41786ceAccount System Actor framework (#96) (Austin Abell)51a17882Updated ChainEpoch usages and clock crate (#98) (Austin Abell)de80b34aRefactor Message type and vm packages (#79) (Austin Abell)e99d8b57Add libp2p Identify protocol (#94) (Eric Tu)cb4576d4Cleanup epoch time (#92) (Gregory Markou)62888071Readme typo fix (#93) (Dustin Brickwood)6a2092b7Persist networking keystore (#90) (Gregory Markou)db7d7fc4Ec2/libp2p ping (#91) (Eric Tu)36acea44Cron system actor (#84) (Austin Abell)db5dad03Update libp2p dep (#87) (Austin Abell)93caa63cInitial Structures for Message - Manager Communication (#69) (Dustin Brickwood)054f25d4InitActor framework (#76) (Austin Abell)d75c8f2eCLI cleanup (#70) (Gregory Markou)bbea6130Add config file parsing (#60) (Gregory Markou)d10a5460Runtime trait and vm types (#68) (Austin Abell)ca0159f6Implements basic actor type (#61) (Austin Abell)3438654dFix makefile clean and phony targets (#62) (Austin Abell)af33dd2bImplements Address cbor encoding (#59) (Austin Abell)bf608808Create Networking Service (#49) (Eric Tu)acb00bb0Closes #51 - Add basic makefile (#57) (Gregory Markou)9fd58b8dAdd file reading and writing (#54) (Gregory Markou)9fba7d98New Tipset w/ unit tests (#56) (Dustin Brickwood)f7772339Encoding library and standardizing usage (#48) (Austin Abell)996900c4Add an async logger (#53) (Eric Tu)fd534869Remove unneeded types (#47) (Austin Abell)dc04a06fAdd message and messageReceipt to block (#37) (Gregory Markou)ff9b6757Refactor crypto and address to libraries (#40) (Austin Abell)e85e6992[VM] Implement basic message types and signing stubs (#31) (Austin Abell)62194eb7[VM] Address module cleanup (#32) (Austin Abell)ae846751Basic blockchain types and Tipset methods (#28) (Dustin Brickwood)fd667b8dBasic clock interface (#27) (Gregory Markou)29c8b441Add basic cli (#25) (Gregory Markou)e79cc5f7[VM] Address logic and code restructure (#21) (Austin Abell)dba3d3edFix build and setup node binary and subsystem libs (#1) (Austin Abell)0443c1d4Remove signed block (Eric Tu)ea16ee42Chain_sync stub (austinabell)995aa6eeFixed fn naming (Dustin Brickwood)2644a493Added stubbed message pool.rs (Dustin Brickwood)bc6cb2a8Blocks refactor (Eric Tu)c0af00aaMerge branch 'master' of github.com:ec2/rust-filecoin (Eric Tu)10868e19More block stubs (Eric Tu)5eaa11cbChange how types are referenced externally (austinabell)a37ee2d4Merge branch 'master' of github.com:ec2/rust-filecoin (Eric Tu)a927122cExported message types for use (austinabell)e78e209cBasic incomplete stubbing for block (Eric Tu)235f00d5Stubbed some vm (Eric Tu)cb354a60Fix gitignore (austinabell)e8e71e10Remove cargo lock (austinabell)f3cc8430Updated lockfile (austinabell)83730efdSet up subsystems (austinabell)04b6d5bfSet up vm and blockchain system binaries (austinabell)ba604fa5Executable project template (Eric Tu)8344e2b8Initial commit (Eric Tu)