Dan Larimer has stated that EOSIO v1.8 is Needed to launch VOICE, the social media platform announced by Block.One.
Here’s how we get there…
The First EOS Hardfork
EOS benefits from a streamlined method of upgrading because it places many important features within a smart contract called
eosio (the system contract), and EOSIO.contracts (
eosio.msig, etc.). Smart contracts can be upgraded on EOS with relative ease, and Block Producers have updated
eosio and EOSIO.contracts many times without issue (REX was one such upgrade). It is only when there are fundamental changes to the core code of the EOS blockchain that we require a “hardfork”. Examples of these changes are alterations to the methods and mechanisms for achieving consensus, or the structuring of block and transaction data.
In the case of EOSIO v1.8 a hardfork is required.
This is the first time that EOS will undergo this type of upgrade.
Please note that the use of hardfork in this case does not imply a new token will be created and the community will divide. This is not a contentious hardfork, but a coordinated one where 15/21 BPs will agree and continue the longest chain.
The following is a list of high-level considerations for the successful deployment of this upgrade.
Stable releases of both EOSIO v1.8 and EOSIO.contracts v1.7 are required.
Block.One released EOSIO v1.8 RC2 and EOSIO.contracts v1.7 RC1 for testing and are in the middle of continued development as well as obtaining feedback from the eosio community. Both updates must occur for the new features to be activated.
Block Producers will need to manually agree to an exact time.
In the case of this upgrade
eosio.msig cannot be utilized. Manual agreement to a specific point in time must be had among Block Producers and entered in as
earliest_allowed_activation_time (link). This means that when BPs know, the community will know.
All EOS nodes around the world must update.
At a certain point during the upgrade all EOS nodes running v1.7.x or earlier will no longer sync, and their last irreversible block will stop increasing. This means that sufficient time must be given to all EOS node operators to prepare(dApps, block explorers, echanges, etc.) and there must be sufficient communication in many different languages to accommodate them. Besides understanding the upgrade process, the global community will also need time to test their own smart contracts against these new versions.
Block Producers must practice and test.
…And test, and test, and test again. Testing is already underway in the most popular test networks such as Jungle and Kylin. The importance of this cannot be understated as uptime is paramount.
The level of coordination required for this upgrade is second only to genesis launch of the EOS blockchain. Every dApp, block explorer, and exchange that touches EOS is required to participate.
For these reasons EOS New York conservatively estimates 3–6 months from now for EOSIO v1.8 to be deployed successfully (sometime between September and December 2019).
For a list of feature upgrades in EOSIO v1.8 please see the original post by Block.One here.