Neutron Core Releases
This section provides a comprehensive overview of the significant changes and updates in Neutron, focusing on the upgrades to Cosmos SDK, Wasmd, and Neutron's internal modules.
Cosmos SDK Upgrade
Neutron has transitioned from Cosmos SDK v0.45 to the more advanced v0.47, encompassing significant improvements and custom adaptations. The key aspects of this upgrade include:
- Primary Changes:
- Reference to the main Cosmos SDK v0.47 documentation.
- Access to the full changelog here.
--broadcast-modeblock was removed. You need to query the result for a TX with neutrond q tx hash instead.
- the SDK version includes some key store migration for the CLI. Make sure you backup your private keys before testing this! You can not switch back to v0.45.
- We have created our own fork of the Cosmos SDK, introducing unique enhancements tailored to our needs:
- Gas Counting Exclusion: Removal of gas counting in the upgrade module's begin blocker for more consistent gas accounting.
- BankHooks Introduction: Implementation of BankHooks, a pivotal feature for the new Tokenfactory.
- Optimized Slashing Calculation: Backporting of slashing missed blocks calculation from Cosmos SDK v0.50.
- CometBFT Transition: A significant shift to CometBFT for enhanced consensus reliability.
- ABCI 1.0 Support: Enabling chains to implement their mempool with ABCI 1.0 compatibility.
- Module Parameters Handling: Deprecation of the x/params module. Modules now manage parameters directly.
- IBC-Go Upgrade: Moving to ibc-go v7 for improved inter-blockchain communication.
- Technical Enhancements: Several minor yet impactful technical improvements (see full list here).
- Instantiate2 Activation: Enabling predictable contract addresses through the instantiate2 feature.
- Smart-Contract Size Limit Increase: Expansion of the binary size limit from 800KB to 1.6MB as explained here.
- Legacy REST endpoints for queries and txs are completely removed and only gRPC endpoints must be used now;legacy REST endpoints for queries and txs are completely removed and only gRPC endpoints must be used now.
- contracts are able to use floating point operations.
- Additional Improvements: Various other technical modifications and advancements (see full changelog here).
Enhancements within Neutron focus on integrating new modules, refining existing functionalities, and ensuring better alignment with the upgraded Cosmos SDK:
Globalfee Module Integration
- Minimum Gas Price Enforcement: A mechanism implemented via the globalfee module to standardize gas prices across validators.
Tokenfactory Module Update
- BankHooks Activation: Introduction of BankHooks for smart contracts handling token transfers, as detailed here.
- Fee Removal for Token Creation: Elimination of creation fees for Tokenfactory tokens, promoting free token generation on Neutron (source).
Interchain Transactions and ContractManager Module Refactor
- ICA Usability Improvements: Enhanced Interchain Account (ICA) functionality for a more user-friendly and secure experience for developers.
- Sudo Execution Error Handling: Streamlined error message retrieval in the ContractManager module.
- New Fee Structure for ICA Creation: Introduction of a fee system for developers creating ICAs on remote chains. Learn more
- Module and Governance Alignment: The admin module has been redesigned to align with the deprecated params module and the new governance proposal handling mechanism in Cosmos SDK v0.47. For more details, visit Adminmodule Overview.
Dex module intoduction
- Neutrality: Bringing completely new dex module. Users may interact with this module to provide liquidity and execute trades according to commonly-accepted exchange semantics.