github zeta-chain/node v19.0.0

latest releases: v20.0.2, v20.0.1, v19.1.7...
one month ago

Breaking Changes

  • 2460 - Upgrade to go 1.22. This required us to temporarily remove the QUIC backend from go-libp2p. If you are a zetaclient operator and have configured quic peers, you need to switch to tcp peers.
  • List of the other breaking changes can be found in this document

Features

  • 2032 - improve some general structure of the ZetaClient codebase
  • 2100 - cosmos v0.47 upgrade
  • 2145 - add ibc and ibc-transfer modules
  • 2135 - add develop build version logic
  • 2152 - custom priority nonce mempool
  • 2113 - add zetaclientd-supervisor process
  • 2154 - add ibccrosschain module
  • 2282 - modify rpc methods to support synthetic txs
  • 2258 - add Optimism and Base in static chain information
  • 2287 - implement MsgUpdateChainInfo message
  • 2279 - add a CCTXGateway field to chain static data
  • 2275 - add ChainInfo singleton state variable in authority
  • 2291 - initialize cctx gateway interface
  • 2289 - add an authorization list to keep track of all authorizations on the chain
  • 2305 - add new messages MsgAddAuthorization and MsgRemoveAuthorization that can be used to update the authorization list
  • 2313 - add CheckAuthorization function to replace the IsAuthorized function. The new function uses the authorization list to verify the signer's authorization
  • 2312 - add queries ShowAuthorization and ListAuthorizations
  • 2319 - use CheckAuthorization function in all messages
  • 2325 - revert telemetry server changes
  • 2339 - add binaries related question to syncing issue form
  • 2366 - add migration script for adding authorizations table
  • 2372 - add queries for tss fund migration info
  • 2416 - add Solana chain information
  • 2465 - add Solana inbound SOL token observation
  • 2497 - support for runtime chain (de)provisioning
  • 2518 - add support for Solana address in zetacore
  • 2483 - add priorityFee (gasTipCap) gas to the state
  • 2567 - add sign latency metric to zetaclient (zetaclient_sign_latency)
  • 2629 - backport Solana withdraw to release/v19 branch

Refactor

  • 2094 - upgrade go-tss to use cosmos v0.47
  • 2110 - move non-query rate limiter logic to zetaclient side and code refactor
  • 2032 - improve some general structure of the ZetaClient codebase
  • 2097 - refactor lightclient verification flags to account for individual chains
  • 2071 - Modify chains struct to add all chain related information
  • 2118 - consolidate inbound and outbound naming
  • 2124 - removed unused variables and method
  • 2150 - created chains zetacore orchestrator packages in zetaclient and reorganized source files accordingly
  • 2210 - removed uncessary panics in the zetaclientd process
  • 2205 - remove deprecated variables pre-v17
  • 2226 - improve Go formatting with imports standardization and max line length to 120
  • 2262 - refactor MsgUpdateZRC20 into MsgPauseZrc20 and MsgUnPauseZRC20
  • 2290 - rename MsgAddBlameVote message to MsgVoteBlame
  • 2269 - refactor MsgUpdateCrosschainFlags into MsgEnableCCTX, MsgDisableCCTX and MsgUpdateGasPriceIncreaseFlags
  • 2306 - refactor zetaclient outbound transaction signing logic
  • 2296 - move testdata package to testutil to organize test-related utilities
  • 2317 - add ValidateOutbound method for cctx orchestrator
  • 2340 - add ValidateInbound method for cctx orchestrator
  • 2344 - group common data of EVM/Bitcoin signer and observer using base structs
  • 2357 - integrate base Signer structure into EVM/Bitcoin Signer
  • 2359 - integrate base Observer structure into EVM/Bitcoin Observer
  • 2375 - improve & speedup code formatting
  • 2380 - use ChainInfo in authority to allow dynamically support new chains
  • 2395 - converge AppContext with ZetaCoreContext in zetaclient
  • 2428 - propagate context across codebase & refactor zetacore client
  • 2464 - move common voting logic to voting.go and add new function VoteOnBallot
  • 2515 - replace chainName by chainID for ChainNonces indexing
  • 2541 - deprecate ChainName field in Chain object
  • 2542 - adjust permissions to be more restrictive
  • 2572 - turn off IBC modules
  • 2556 - refactor migrator length check to use consensus type

Tests

  • 2047 - fix liquidity cap advanced test
  • 2181 - add more assertion and test cases in ZEVM message passing E2E tests
  • 2184 - add tx priority checks to e2e tests
  • 2199 - custom priority mempool unit tests
  • 2240 - removed hard-coded Bitcoin regnet chainID in E2E withdraw tests
  • 2266 - try fixing E2E test crosschain_swap failure btc transaction not signed
  • 2294 - add and fix existing ethermint rpc unit test
  • 2329 - fix TODOs in rpc unit tests
  • 2342 - extend rpc unit tests with testing extension to include synthetic ethereum txs
  • 2299 - add zetae2e command to deploy test contracts
  • 2364 - add stateful upgrade test
  • 2360 - add stateful e2e tests.
  • 2349 - add TestBitcoinDepositRefund and WithdrawBitcoinMultipleTimes E2E tests
  • 2368 - eliminate panic usage across testing suite
  • 2369 - fix random cross-chain swap failure caused by using tiny UTXO
  • 2549 - add separate accounts for each policy in e2e tests
  • 2415 - add e2e test for upgrade and test admin functionalities
  • 2440 - Add e2e test for TSS migration
  • 2473 - add e2e tests for most used admin transactions

Fixes

  • 1484 - replaced hard-coded MaxLookaheadNonce with a default lookback factor
  • 2125 - fix develop upgrade test
  • 2222 - removed maxHeightDiff to let observer scan from Bitcoin height where it left off
  • 2233 - fix IsSupported flag not properly updated in zetaclient's context
  • 2243 - fix incorrect bitcoin outbound height in the CCTX outbound parameter
  • 2256 - fix rate limiter falsely included reverted non-withdraw cctxs
  • 2327 - partially cherry picked the fix to Bitcoin outbound dust amount
  • 2362 - set 1000 satoshis as minimum BTC amount that can be withdrawn from zEVM
  • 2382 - add tx input and gas in rpc methods for synthetic eth txs
  • 2396 - special handle bitcoin testnet gas price estimator
  • 2434 - the default database when running zetacored init is now pebbledb
  • 2481 - increase gas limit inbound and outbound vote message to 500k
  • 2545 - check solana minimum rent exempt to avoid outbound failure
  • 2547 - limit max txs in priority mempool

CI

  • 2388 - added GitHub attestations of binaries produced in the release workflow.
  • 2285 - added nightly EVM performance testing pipeline, modified localnet testing docker image to utilitze debian:bookworm, removed build-jet runners where applicable, removed deprecated/removed upgrade path testing pipeline
  • 2268 - updated the publish-release pipeline to utilize the Github Actions Ubuntu 20.04 Runners
  • 2070 - Added commands to build binaries from the working branch as a live full node rpc to test non-governance changes
  • 2119 - Updated the release pipeline to only run on hotfix/ and release/ branches. Added option to only run pre-checks and not cut release as well. Switched approval steps to use environments
  • 2189 - Updated the docker tag when a release trigger runs to be the github event for the release name which should be the version. Removed mac specific build as the arm build should handle that
  • 2191 - Fixed conditional logic for the docker build step for non release builds to not overwrite the github tag
  • 2192 - Added release status checker and updater pipeline that will update release statuses when they go live on network
  • 2335 - ci: updated the artillery report to publish to artillery cloud
  • 2377 - ci: adjusted sast-linters.yml to not scan itself, nor alert on removal of nosec.
  • 2400 - ci: adjusted the performance test to pass or fail pipeline based on test results, alert slack, and launch network with state. Fixed connection issues as well.
  • 2425 - Added verification to performance testing pipeline to ensure p99 aren't above 2000ms and p50 aren't above 40ms, Tweaked the config to 400 users requests per second. 425 is the current max before it starts failing.

Documentation

  • 2321 - improve documentation for ZetaClient functions and packages

Performance

  • 2482 - increase the outbound tracker buffer length from 2 to 5

Don't miss a new node release

NewReleases is sending notifications on new releases.