Releases: iotexproject/iotex-core
Releases · iotexproject/iotex-core
Photon^1 (v0.4.1)
iotex-core v0.4.1 is a patch release that contains the following bug fixes:
- Improve the block sync logic to proactively ask for higher block if a not doesn't observe incoming blocks for a while;
- Fix action injector to be able to inject 1K+ tps workload;
- Fix nonce validation bug;
- Make block interval calculation always be based on the last block timestamp.
Photon (v0.4.0)
MainNet Preview (codename: Photon)
Photon (v0.4.0) is our last pre-release. IoTeX blockchain is almost feature complete. In this release, we added multi-chain feature, enhanced consensus, and improved overall performance and robustness. The full list of new features are as follows:
- TBC (Transactions, Block & Chain)
- Sub-chain provisioning protocol
- Deposit to sub-chain
- Commit state root to the block header
- State storage pruning
- Gas fee collection
- Consensus
- Performance improvement: consensus latency 10s -> 7s
- Security improvement: authenticating proposer and validators
- Time slot based proposer rotation
- Preliminary implementation of distributed key generation protocol
- Testing & Deployment
- Scaling deployment to 101 nodes
- Load test of 1K+ TPS at peak
- Option to spin-off index data into separate RDBMS
- Engineering excellence
- Action abstraction
- Action handling framework (native “smart contract” in golang)
- State working set to isolate uncommitted state change
- Documentation
- Protocol (data schema, wire format, and so on)
Epik^2 (v0.3.2)
iotex-core v0.3.2 is a patch release that contains the following bug fixes:
- Validate recipient address in actpool and blockvalidator
- Let nodes panic if committing state changes fails & Add some error logs in statefactory
Epik^1 (v0.3.1)
iotex-core v0.3.1 is a patch release that contains the following bug fixes:
- Fix the deadlock of accessing the sync map of peers
- Allow read-only smart contract execution to run offline
- Create creator's state first when recovering from fresh state db
Epik (v0.3.0)
Testnet Beta (codename: Epik)
- TBC (Transactions, Block & Chain)
- Bech32-encoded address
- Serialization and deserialize of messages on the wire
- Merkle tree
- Actions, transfers, votes, blocks and chain
- Fast and reliable blockchain/state storage via BoltDB and DB transaction support
- Improved block sync from network peers
- Basic framework for script and VM
- Account/state layer built on top of Merkle Patricia tree
- Voting and unvoting for block producer candidates
- New account-based action pool
- Initial implementation of secure keystore of private keys
- Initial integration with Ethereum Virtual Machine (EVM), smart contracts (Solidity)
- Network
- Efficient gossip protocol over TLS
- Broadcast & unicast semantics
- Seeding through network config
- Rate-limit requests per connection
- Peer discovery
- Large-scale simulation and load test
- Consensus
- Framework for plugable consensus
- Standalone and NOOP schemes
- Full implementation of FSM-based Roll-DPoS
- Full integration with delegates pool
- Roll-DPoS simulator
- Initial implementation of random beacon
- Clients
- Full implementation of JSON RPC
- UI Design and backend implementation of explorer
- Command line console
- Basic wallet
- Crypto
- libsect283 -- lightweight crypto library, with cgo binding
- libtblsmnt -- complete BLS signature parameterization and implementation, with cgo binding
- Implementation of distributed key generation (DKG) with cgo binding
- Testing & Integration & Deployment
- Improved action injection and address generation tools
- Work-preserving restart
- Dockerization of IoTeX server
- Large-scale testnet deployment via Kubernetes
- Unit test coverage ~70%
- Thorough integration tests
- Enhancement of existing features, performance and robustness
Strive (v0.2.0)
Testnet Alpha (codename: Strive)
- TBC (Transactions, Block & Chain)
- Bech32-encoded address
- Serialization and deserialize of messages on the wire
- Merkle tree
- Actions, transfers, votes, blocks and chain
- Fast and reliable blockchain storage and query using BoltDB
- Block sync from network peers
- Basic framework for script and VM
- Account/state layer built on top of Merkle Patricia tree
- Voting and unvoting for block producer candidates
- New account-based action pool
- Network
- Efficient gossip protocol over TLS
- Broadcast & unicast semantics
- Seeding through network config
- Rate-limit requests per connection
- Peer discovery
- Large-scale simulation and load test
- Consensus
- Framework for plugable consensus
- Standalone and NOOP schemes
- Full implementation of FSM-based Roll-DPoS
- Roll-DPoS simulator
- Initial implementation of random beacon
- Clients
- JSON RPC support
- UI Design and backend implementation of explorer
- Command line console
- Crypto
- libsect283 -- lightweight crypto library, with cgo binding
- libtblsmnt -- Intial BLS signature parameterization and implementation, with cgo binding
- Testing & Integration & Deployment
- Unit test coverage > 60%
- Thorough integration tests
- Dockerization of IoTeX server
- Testnet deployment of 20+ block producer delegates in production
- Action injection and address generation tools
- Enhancement of existing features, performance improvement and code refactoring
StoneVan (v0.1.0)
- Transaction and block handling
- Gossip protocol over a P2P network
- Pluggable consensus framework leveraging initial version of Roll-DPoS consensus scheme
- Initial RPC support