One article understand the significance of the second mainnet upgrade of the cross-chain project Cosmos

Source: Cosmos Interconnection Chain

Editor's Note: The original title was "Understanding the Significance of Cosmos's Second Mainnet Upgrade". This article has been deleted without changing the original intention of the author.

The Cosmos mainnet was successfully upgraded to Cosmos Hub 3 on December 12, 2019 Beijing time. The upgraded Cosmos Hub 3 adds parameter change proposals, module refactoring, supply modules, high-level queries, and includes event refactoring and other legacy technology updates .

Next, let's take a look at the new features after the upgrade:

Development process changes: Gaia separated from Cosmos SDK

The Gaia code base is a code base separated from the Cosmos Hub application. This is important because it separates the release of Gaia from the release of the SDK and allows the two products to evolve independently. It also allows the Cosmos SDK to be released on a regular basis and fixes faults for chains that rely on it. This change will greatly ease confusion for new users. It also helps them distinguish between Gaia and Cosmos SDK.

This separation facilitates developers' choice of code base and modules. For example, before the separation, there was only one installation package, Cosmos SDK. Now there is an installation package named Gaia. The difference between the two is that when you want to develop a new chain based on the Cosmos SDK, the Cosmos SDK installation package is preferred; when you want to connect to the Cosmos Hub, choose the Gaia installation package. Developers can choose the corresponding installation package for development according to their needs, which can save a lot of time and make development work faster.

Proposal vote to modify network parameters

The newly upgraded Cosmos mainnet allows initiation of governance proposals to modify parameters on the chain, such as inflation rate, decommissioning time, etc. After this upgrade, there is no need to stop or fork the network to modify these parameters, which means that the network is now more stable.

The community can organize and discuss whether any parameters are unreasonable or need to be modified. Submit them to the validator to create a governance proposal and vote on it. After the vote is passed, the parameters will be modified. For example, this parameter modification increases the maximum number of validators to 125. In addition to the original well known IRISnet-Bianjie nodes, there will be more and more high-quality nodes to provide services for everyone. Entrusting to a safe and reliable node can avoid the penalty of 5% token penalty when the node is evil. Everyone is welcome to download the Rainbow Wallet to entrust the nodes and get revenue. In this way, on-chain governance will become more fair, just and open.

Reduce the tightness between functional modules

Developers can build blockchain applications based on the Cosmos SDK. Among them, the biggest feature of the Cosmos SDK is its modularity, which does not need to spend a lot of time to program.

In the Cosmos SDK, each module has a corresponding function and purpose, but sometimes the function is developed at the expense of modularity. Over time, the cross-relationship between modules and the formation of a tight network have continued to expand, making it more difficult to develop with the SDK.

Imagine when you are building a house with blocks, if each block looks similar, will it take you a lot of time to try whether the next block is what you need. Therefore, it is necessary to weaken the cross-dependent dependencies between internal modules. This upgrade will reduce the closeness of the interconnection between modules, make development easier and faster, and create blockchain applications that serve users faster.

New function module: Supply

The Supply module, as the name suggests, is a module that tracks the total supply of tokens, minting one token at a time (for example: as part of an inflation mechanism) or destroying one token (for example: due to a penalty or if a governance proposal is rejected), The total supply is updated. This is like the total amount in your bank account. If you spend one dollar, reduce the total amount by one dollar. If you make one dollar, the total amount will automatically increase by one dollar.

Add arbitrary height query

The newly upgraded height query allows the ability to query the network status at any height, such as balance and other information. This means that the application built based on this module can allow users to query the historical status of the account. Without this function, users can only see what the current balance of their account is, and they cannot query yesterday's balance, the previous day's balance, etc. .

Events refactoring to improve efficiency

Events is a rebuild of the previous index / query function (named Tags). Events contains all the features of Tags and perfectly solves the pain points of Tags.

For users, this upgrade makes the use of queries more convenient.

Other technical updates

Some other functional updates, such as adding configurable timeouts for the REST server, CLIContext, and Bank modules will be further optimized to make applications based on the Cosmos SDK more efficient and accurate.

Based on the update of the above functions, developers can more conveniently create applications based on the Cosmos SDK. The Cosmos ecosystem will become more prosperous with the continuous emergence of applications and new projects. Similarly, with the continuous improvement of IBC, the tokens in the Cosmos ecosystem will be interconnected, which means that the Cosmos Hub will support a variety of tokens other than ATOM to truly achieve cross-chain interoperability.