go-filecoin 0.3.2 is released

We’re happy to announce go-filecoin 0.3.2. This release is a big step towards completing the filecoin storage protocol. It includes many changes to the miner actor builtin smart contract that will allow the network to securely account for verifiable storage power once fault handling is in place. Many less visible but high impact code and testing improvements ship with this release. 0.3.2 also includes a big UX improvement with the new and improved go-filecoin deals command for user friendly management of storage deals. Getting paid as a storage miner is now as simple as a single CLI call.

Features

🏇 Storage protocol nearing completeness

Our number one goal is a network securely powered by verifiable storage. In order for this to work we need to penalize cheating miners who do not prove their storage on time. This release includes most of the groundwork needed, including fundamental data structures and encoding work for tracking sets of sectors, improved power tracking in the miner actor built-in smart contract, and charging fees for late storage proof (PoSt) submissions. Expect these changes to blossom into the complete fault reporting mechanism in the next release.

👪 Multiple sector sizes

In order for the network to scale gracefully, different miners may choose from a variety of different sector sizes to put data in and prove over: smaller sectors for faster and more nimble storage; larger sectors for slower but efficient storage. This release includes all of the software updates we need to support multiple sector sizes in a single network; however, we plan to properly vet network conditions with much bigger sectors before enabling multiple sectors sizes in the user devnet. Expect 1 GiB sectors on the user devnet in the next release.

🤝 Deal management and payments

Both clients and miners can now easily inspect the fine details of all storage deals they have entered into using go-filecoin deals list and go-filecoin deals show. Miners can get paid for honoring a deal by running go-filecoin deals redeem. Additionally this release ships some improvements in payment channel safety for correct arbitration of deal disputes we want down the road.

Performance and Reliability

🌳 Upgrade in place

This release drives home previous work on repo migrations. The go-filecoin-migrate tool (included in the go-filecoin source repo) is now complete. This release includes a proof of concept migration: upgrading on-disk chain metadata from JSON to the more compact CBOR. Landing this means we are confident that this major technical challenge is behind us, putting us one step closer to a reliable, persistent testnet.

Refactors and Endeavors

📈Major testing improvements

Testing is the silent champion of reliability and development speed. This release includes tons of behind the scenes work improving the quality of existing unit and integration tests as well as adding new tests to existing code. Continued improvements to the FAST framework promise to further accelerate integration testing and devnet deployments.

💳 Tech debt paydown

This release is not playing around when it comes to paying off technical debt. Fundamental chain refactors include an improved immutable tipset type and tipset cache sharing are at the top of the list. A major refactor of the message handling system into inbox and outbox queues is also a notable improvement. Don’t forget about a consistent internal attoFIL token type, a sleek new miner deal acceptance codepath, sector builder reliability fixes… the list goes on. We are excited to be shipping higher quality software with each release so that we can move faster towards a robust mainnet.

Changelog

A full list of all 207 PRs in this release, including many bugfixes not listed here, can be found on Github.

CLI diff

go-filecoin command change
deals list added
deals redeem added
deals show added
miner pledge removed
mining status added
show block args changed

Contributors

❤️ Huge thank you to everyone that made this release possible! By alphabetical order, here are all the humans who contributed to this release:

🙌🏽 Want to contribute?

Would you like to contribute to the Filecoin project and don’t know how? Here are a few places you can get started:

⁉️ Do you have questions?

The best place to ask your questions about go-filecoin, how it works, and what you can do with it is at discuss.filecoin.io. We are also available at the community chat on Matrix/Slack.

Filecoin is an open-source cloud storage marketplace, protocol, and incentive layer.
icon_client
filecoin_request_icon
filecoin_data_icon
filecoin_data_icon_black
icon_miner
icon_miner_other
filecoin_data_icon_black