Skip to content

Releases: wemixarchive/go-wemix

WEMIX3.0 Mainnet Applepie hardfork Build (v0.10.4)

01 Jun 06:00
3ae3514

Choose a tag to compare

Please take note that the update mentioned below is COMPULSORY for Gwemix MAINNET nodes.
Please be aware that Gwemix v0.10.4 functions properly on the WEMIX3.0 TESTNET without any issues.

This release will activate the Applepie hardfork at fixed block #20476911 on the WEMIX3.0 MAINNET. The expected date for this transition is 2023-06-14 03:00:00 +UTC.
Gwemix v0.10.4 is a planned feature release that includes several significant improvements and new features for WEMIX3.0 MAINNET:

  • Introduction of a fee delegation function and related RPC API, allowing users to delegate transaction fees to another account.
  • Modification in PMR distribution method based on WEMIX staking amount, encouraging users to hold onto their tokens and contribute to network security.
  • Implementation of Verifiable Random Function (VRF) verification functionalities through pre-compiled contracts, offering a more secure and transparent method of generating random numbers on the blockchain.
  • Enhancement in BaseFee change logic to set the fee to 0, reducing transaction costs in various testing environments.
  • Bugfixes to v0.10.3 (#54) (#52)

Commits:

  • params: Configuration settings for Applepie Hard Fork on Mainnet (#56)
  • wemix: block coinbase from the latest governance (#54)
  • internal/ethapi: changed 'blockNumber' data type from BigInt to hexUtil.Uint64 (GetReceiptsByHash RPC) (#52)
  • core,internal/ethapi: Fixed fee calculation error and added feePayer null check (#45)
  • consensus/misc: Handle case when maxBaseFee is lower than current base fee (#44)
  • core,light,params,wemix/scripts: Configuration settings for Applepie Hard Fork on Testnet (#43)
  • internal/ethapi: changed 'gasPrice' data type from BigInt to hexUtil.Big (#42)
  • Makefile, wemix: rewards distribution according to stakes (#41)
  • Added functions required to support fee delegation transaction (#40)
  • internal/ethapi: changed 'gasPrice' data type to BigInt ('GetTransactionReceipt' RPC API) (#39)
  • internal/ethapi: improved 'GetReceiptsByHash' rpc api (#38)
  • internal/ethapi: add error handling for invalid block hash (GetReceiptsByHash) (#37)
  • Add Verifiable Random Function functionalities to go-WEMIX through pre-compiled contract (#36)

WEMIX3.0 Testnet Applepie hardfork Build (v0.10.3)

11 May 06:00
e7f0653

Choose a tag to compare

Please note that this update is ONLY MANDATORY for Gwemix TESTNET nodes.

This release enables the Applepie hardfork in fixed block #26240268 on the WEMIX3.0 TESTNET. The expected date for this transition is 2023-05-17 03:00:00 +UTC.
Gwemix v0.10.3 is a scheduled feature release containing several significant improvements and new features to WEMIX3.0 TESTNET:

  • The introduction of a fee delegation function and related RPC API, which allows users to delegate transaction fees to another account.
  • The change in PMR distribution method according to WEMIX staking amount incentivizes users to hold onto their tokens and contribute to the network's security.
  • The implementation of the VRF (Verifiable Random Function) verification functionalities via pre-compiled contracts provides a more secure and transparent way of generating random numbers on the blockchain.
  • The improvement in BaseFee change logic to set the fee to 0 can help reduce the cost of transactions in various testing environments.

Commits:

  • core,internal/ethapi: Fixed fee calculation error and added feePayer null check (#45)
  • consensus/misc: Handle case when maxBaseFee is lower than current base fee (#44)
  • core,light,params,wemix/scripts: Configuration settings for Applepie Hard Fork on Testnet (#43)
  • internal/ethapi: changed 'gasPrice' data type from BigInt to hexUtil.Big (#42)
  • Makefile, wemix: rewards distribution according to stakes (#41)
  • Added functions required to support fee delegation transaction (#40)
  • internal/ethapi: changed 'gasPrice' data type to BigInt ('GetTransactionReceipt' RPC API) (#39)
  • internal/ethapi: improved 'GetReceiptsByHash' rpc api (#38)
  • internal/ethapi: add error handling for invalid block hash (GetReceiptsByHash) (#37)
  • Add Verifiable Random Function functionalities to go-WEMIX through pre-compiled contract (#36)

WEMIX3.0 Mainnet and Testnet Build (v0.10.2)

23 Mar 06:00
05eb4a4

Choose a tag to compare

Please note that updates are not mandatory for end nodes that are operated externally.
Gwemix v0.10.2 is a scheduled maintenance release containing the following improvements:

  • Increased the default value of 'TxLookupLimit' flag from 2350000 to 31536000 (approximately the number of blocks in year)
  • Added to gwemix CLI flags to allow changing value of 'triesInMemory'
  • Removed logic to do initEtcd() at boot node when joining etcd cluster
  • Enable PORTABLE flag when building gwemix with rocksdb
  • Modified gwemix.sh script to shut down the BP node more safely
  • Ethereum Sharblu release(v1.10.18) was applied
  • Changed to create blocks by sorting transactions in descending order of gas price
  • Ethereum Ploitari release(v1.10.17) was applied
  • Added a new JSON-RPC 'eth_getReceiptsByHash' which will be used to serve all receipts in a designated block

Commits:

  • eth/ethconfig: Update 'TxLookupLimit' default value (e2e963d)
  • Make TriesInMemory configurable through CLI config (27c70b9)
  • wemix: remove auto-etcdInit() for bootnode (8164f3c)
  • Makefile: build rocksdb with PORTABLE=1 (7dad7ca)
  • gwemix.sh: check if mining is in progress during stopping (60f38b9)
  • Applied Ethereum Sharblu(v1.10.18) release (53d0c1f)
  • miner: fetch the pending transaction only once (95bf414)
  • Applied Ethereum Ploitari(v1.10.17) release (eb28145)
  • Feat: Added 'eth_getReceiptsByHash' JSON-RPC API. Returns all the transaction receipts for the given block hash (cbdfcd7)

WEMIX3.0 Mainnet and Testnet Build (v0.10.1)

26 Oct 04:59
f772792

Choose a tag to compare

Gwemix v0.10.1 is a hotfix release to enable miner limit at testnet and fix bugs.

  • pangyo hardfork for testnet, enforcing miner limit
  • bug fixes

Commits:

  • params: release Gwemix v0.10.1 (f772792)
  • params: update wemix testnet pangyo block to 10m (2a86c1c)
  • miner, wemix: work logging before registering mined block (896b8ef)
  • consensus, params, wemix: pangyo hardfork, enforcing miner limit (827963f)
  • wemix: re-fixed unauthorized bad block error before a member is added (5767c2e)

WEMIX3.0 Mainnet Build (v0.10.0)

20 Oct 00:23
9801ee2

Choose a tag to compare

Please note that there was a hardfork in block 6400689 on the testnet. Therefore, Gwemix w0.9.9 must be upgraded to w0.10.0 to work properly.

Gwemix v0.10.0 is the first release of the official WEMIX3.0 mainnet.

  • enhancements to consensus network among miners
  • bug fixes & security enhancments during governance setup
  • CI enhancements
  • upgrade Openzeppelin v0.4.7 and use Openzeppelin upgradeable contract v0.4.7
  • genesis format change
  • 1 second block interval
  • modified eip1559 / base fee scheme to suit sustained and rapid fluctuation of high traffic volumes
  • new minting & reward system
  • performance improvement

Commits:

  • core, params: wemix mainnet genesis & boot nodes (0e0acaf)
  • cmd, wemix: updated scripts for new initOnce (8e92f16)
  • wemix: governance with updated StakingImp.init (ef9671b)
  • eth: new default extradata (8ab7d87)
  • wemix: fixed base fee calc error before the first member is added (f4e95c5)
  • wemix: governance with updated initOnce (58d09d4)
  • wemix: fixed incorrect spinlock (160dc79)
  • wemix: fixed unauthorized bad block error before a member is added (95e0ae6)
  • wemix: updated governance which was broken (326d343)
  • wemix: updated governance (ab42fab)
  • Add CI using Github Action (1a4f3d7)
  • wemix: fixed too aggressive sync check (d857992, 8948d9a)
  • wemix: handled unnecessary 'work' reset during sync check (e461860)
  • wemix: updated etcd initialization & joining sequence (72ad64a)
  • eip1559.go: fixed a bug about zero div when governance is being deployed (3039be5)
  • wemix: removes deleted nodes from etcd network (0b8e5b0)
  • wemix: sync check (2bb66f9)
  • miner, wemix: miner limit, one block within the last n/2+1 blocks (cf57a4b)
  • update the error handling routine by Sooho's QA result (Low #1). (6c6214f)
  • wemix: enabled auto-tls for etcd (7eedcc8)
  • wemix: added testnet block 94 reward handler (7c7d2be)
  • eth/protocols/eth: made tx handler async for performance (67cc6bf)
  • consensus/ethash, wemix: make minerNodeSig compatible with existing testnet (c958ea6)
  • consensus/ethash, wemix: SignBlock uses height & state root to prevent replay (36141f9)
  • consensus, wemix: check if miner node id is valid (6389141)
  • eth/protocols/eth, eth/fetcher: increased queued tx announcements (5e04b2a)

WEMIX3.0 Testnet Build (v0.9.9)

17 Jul 11:15

Choose a tag to compare

Pre-release

Please note that v0.9.9 is not backward compatible with the previous version (v0.9.8)

Gwemix v0.9.9 is the second release of the official WEMIX3.0 testnet.

  • upgrade Openzeppelin v0.4.7 and use Openzeppelin upgradeable contract v0.4.7
  • genesis format change

Commits:

  • core, params: DropUnderPriced flag to drop underpriced txs
  • fix compile error due to unsupported function UnixMilli()
  • wemix: incorporated updated governance contracts
  • core: drop transactions if given fees are less than maxPriorityFeePerGas + baseFee
  • cmd, eth, ethstats, wemix: meta -> wemix & mir
  • miner: fixed incorrect millisecond conversion
  • wemix: fixed maxBaseFee read error & updated base fee change rate
  • cmd, consensus, console, core, eth, miner, params, wemix: for make test
  • fix ethstats error
  • core: fixed json marshaling error with rewards field
  • params: updated new testnet genesis hash

WEMIX3.0 Testnet Build (v0.9.8)

01 Jul 01:15

Choose a tag to compare

Pre-release

Gwemix v0.9.8 is the first release of the official WEMIX3.0 testnet.

  • 1 second block interval
  • modified eip1559 / base fee scheme to suit sustained and rapid fluctuation of high traffic volumes
  • new minting & reward system
  • performance improvement

Commits:

  • README.md: rpc -> http
  • core, params: wemix testnet genesis & boot nodes
  • gwemix: gmet -> gwemix
  • gwemix: rebranding
  • metadium: updated governance contract
  • metadium: reward distribution is 10000 based
  • miner: sets baseFee in pending block
  • metadium: new reward system
  • metadium/contracts: updated governance contract
  • miner: fixed incorrect block build interval when it's > 1 second
  • cmd, eth: network id 1111 and 1112 for mainnet and testnet, respectively
  • metadium: fixed ballot strorage initialization issue in governance deploy script
  • core: Fee in ExecutionResult is big.Int to avoid int64 overflow
  • consensus, core, metadium, miner, params: updated base fee calculation
  • metadium: updated governance contract
  • consensus, metadium: ignores base fee calculation during header verification stage during sync
  • consensus, core, metadium, miner: fixed gas limit before governance is set up
  • consensus, core, metadium, miner, params: governance integration, block building parameters from governance & updated base fee calculation
  • metadium: updated governance contract
  • metadium: updated wemix chain id
  • renamed: gnxt -> gwemix, gnxt.sh -> gwemix.sh, geth.ipc -> gwemix.ipc, --meta-testnet -> --wemix-testnet
  • chain-ids: mainnet=1111, testnet=1112
  • metadium, params: fixed gasPrice bug, set baseFee parameters
  • consensus, core, internal: enabled eip1559
  • metadium/scripts: no more initial DAG generation
  • metadium/scripts: ws port to 8598
  • consensus/ethash: hashimeta replaces hashimoto, does simple sha256 with seed and nonce
  • miner: timeIt, updated ahead condition
  • miner, metadium: various changes to make a block per second
  • cmd/geth, cmd/utils, cmd/params: parameters to build a block per second
  • ethdb/rocksdb: increased delay to free batch object
  • apply concept of compact window
  • update check logic
  • add etcdCompactWindow
  • feat: add etcd compact
  • eth/protocols/eth: handlers are go routines / asynchronous
  • metadium/metclient: sync.Map for better concurrency control for nonce cache
  • miner: removed unnecessary commitWork
  • ethdb/rocksdb: added 1 second delay to batch finalizer
  • nxtmeta: etcd upgraded to v3.5.2
  • nxtmeta: gmet -> gnxt and metadium -> nxtmeta (not all of them yet)
  • metadium: fixes for sync issues, pending block issue & chaindata directory name issue
  • miner: fixed pending block refresh issue
  • core/rawdb: db detection before opening
  • ethdb/rocksdb: null terminated file name string, fixed read only rocksdb
  • core, params: reverted metadium testnet berlin & london block height
  • metadium/scripts: removed chaindata* from gmet.sh wipe
  • eth/protocols/eth: updated GetBlockHeaders66() to handle legacy cases
  • metadium/scripts: updated gmet.sh to check if db is still open
  • conensus, metadium: allow block generation when governance is not initialized
  • core, params, consensus: testnet berlin & london block height, abort block generation upon rewards calculation error
  • consensus: abort upon rewards calculation error
  • core, params: update metadium testnet berlin & london block height
  • Makefile: fixed gmet-linux
  • Metadium - v1.10.16 merge
  • metadium/scripts: gmet.sh to start ws service
  • consensus, eth: restored ETH/65 protocol
  • Merge ethereum v1.10.16
  • core, params: berlin & london block place holders
  • metadium/scripts: updated genesis template
  • consensus/misc, core, core/vm: disabled EIP-1559 & EIP-3198, fixed --override.london option to include berlin as well
  • eth/ethconfig: unlimited gascap and feecap for now
  • rocksdb: bump-up rocksdb version to 6.27.3
  • etcd: added patched etcd
  • core: moved governance initialization check after block validation fails
  • metadium/scripts: update gmet.sh for new command line options
  • core: unon fast sync completion wait for governance to be initialized in order to calculate rewards distribution correctly
  • params: Berlin & London block numbers to nil
  • metadium: removed unnecessary contract calls
  • rpc: lowered log level for failed rpc request to Debug
  • ethdb/rocksdb: fixed iterator range issue