Aergo 1.0.0 Released

The technology for the Aergo main network is complete and open sourced. On April 15, at 2 PM KST, we’ll use it to launch mainnet.

Hunyoung Park
Aergo blog
2 min readApr 12, 2019

--

After many months of development and testing on the testnet, the Aergo 1.0.0 core technology has now been released. We are finally ready to release the first stable version of Aergo, a major milestone in our development progress.

This version includes all features that the Aergo mainnet will launch with, detailed in a seperate post part of our 4/19 campaign (article). The main features of Aergo at launch are: BFT-dPOS consensus (main network), LPOA consensus (sidechains), Lua smart contracts & Lua JIT compilation, SQL smart contracts & data handling (sidechains), Merkle Bridging (interchain transfers), Java/JS/Python SDKs, CLI, LiteTree (database engine), Smart contract templates, Named accounts, Advanced client framework (Ship/Brick), Atom IDE, Aergo Connect browser wallet, and the Polaris node discovery tool.

We have already conducted a few rehearsals using the Aergo 1.0.0 software, and have just upgraded the testnet to this version.

This release includes numerous bug fixes, performance improvements, and new features from our last release. The following is a list of the most important changes. Please refer to the documentation (to be published shortly on docs.aergo.io) for details on specific features.

New features in this release

  • Fee system

On public networks, transactions require a fee that follows a gas system. The minimum fee is 0.002 aergo. An additional fee is required for TX payload and state DB storage.

  • Transaction

Require hash of chain ID in tx body to prevent replay attack.

  • RPC API

consensus info: blockchain call now returns consensus info field. This contains a current list of BPs. On dpos chains, this includes information about the last irreversible block (LIB).

chain id hash: blockchain call now returns the chain id hash for easy use in signing transactions

server info: new API method to retrieve server configuration

  • Smart contract, additional functions

system.isContract(addr), contract.stake(amount), contract.unstake(amount), contract.vote(candidate,…. or {candidates})

abi.register_view(func). register a function that disallows modification of state

Add payable and view flags to ABI

Improvements

  • Protobuffer, various field changes

If you used the RPC API directly, refer to the aergo-protobuf changelog for a list of breaking changes.

  • P2P

Stability improvements

  • Transaction receipt

On contract call error, tx receipt status is now ‘ERROR’ with the error message in the result field.

  • aergo.name

Set up owner of aergo.name using transaction

  • aergo.system

The minimum amount of staking is based on the stored amount, not the amount requested. The staked amount is added to the balance of aergo.system for consistency.

  • Improved many log and error messages
  • Mainnet configuration
  • aergosvr, init command

Change flag name from ‘json’ to ‘genesis’

You can see the full release information and files on Github here.

Other than that, get ready for mainnet! Stay updated with everything on our launch page here. You can also see how our upgraded testnet, deployed just recently, runs here.

Mainnet is going live on Monday, April 15, at 2 PM KST.

--

--

Hunyoung Park
Aergo blog

Board Member of the AERGO Foundation and CTO at Blocko Inc.