Releases: anoma/namada
Namada 0.28.1
Namada 0.28.1 is a patch release that makes improvements to the MASP, SDK, merkle trees, and chain initialization conditions.
BUG FIXES
- Fix sdk compilation when using async-send feature flag.
(#2261) - Added back missing changed storage keys in transaction results.
(#2263) - Fix to skip pruning BridgePool Merkle trees when no signed nonce
(#2264) - Initialize token total supply to zero at init chain.
(#2270)
IMPROVEMENTS
Namada 0.28.0
Namada 0.28.0 is a minor release that improves the genesis setup to allow signing with hardware wallet and contains various improvements including validator liveness jailing, accounts simplifications, bug fixes, stability improvements and more.
BUG FIXES
- Fix the start block height of the first epoch.
(#1993) - Fix Ethereum event validation/state updates when more than one validator is
running the chain (#2035) - Fix possible underflow in MASP rewards calculation.
(#2230)
IMPROVEMENTS
Allow the ethereum oracle to be activated / deactivated via config
updates sent from ledger. This allows governance to shut down the
ledger without restarts. Otherwise, disconnecting from Ethereum will
result in the ledger crashing.
(#1764)
- Prune merkle tree of bridge pool
(#2110) - Revert the chain ID format by upgrading ibc-rs to 0.48.1
(#2153) - Changed pre-genesis established addresses to be derived from their data.
Improved signing of pre-genesis transactions to use the same format as
regular transactions. Genesis token balances now can be directly assigned to
established addresses. (#2186) - Combined the user and the validator VP into one.
(#2202) - Charge gas for network usage.
(#2205) - A new
tx_become_validator
replacestx_init_validator
. This tx doesn't
initialize a new account and instead it modifies an existing established
address to become a validator. This currently requires that there are no
delegations on the source account before it can become a validator (if there
are some, they have to be unbonded, but they don't have to be withdrawn).
A new client commandbecome-validator
is added that requires an--address
.
The client commandinit-validator
is kept for convenience and updated to
sendtx_init_account
tx beforetx_become_validator
.
(#2208) - Increase hardware wallet support in the CLI
(#2209) - Handle errors on loading WASMs from file-system compilation cache.
(#2215) - Implement a CLI query for available rewards from a bond,
and improve the bond amount for rewards computation
(#2217) - Fix bug in client to allow for unjailing a validator
that was jailed for missing liveness requirements
(#2246)
MISCELLANEOUS
- Upgraded borsh dependency to v1.2.0.
(#2233)
SDK
Namada 0.27.0
Namada 0.27.0 is a minor release that incorporates the remaining essential proof-of-stake features, updates the MASP and transaction functionality, and provides some additions to the SDK.
BUG FIXES
- Fix a feature flag to compile namada_sdk
(#2164) - Fix to get the proof even if no height is specified
(#2166) - Fix ABCI queries at the last committed height
(#2184)
FEATURES
- Tx that allows a validator to change its consensus key
(#2137)
IMPROVEMENTS
- Moved the masp vp to native.
(#2051) - Tighten security around potential P2P issues
(#2131) - Print more context from eyre error types.
(#2132) - Require to verify ownership of all validator keys when initialized on-chain.
(#2163) - Improve the validator VP to ensure that only the validator themself
can execute transactions that manipulate its own validator data
(#2169) - Various improvements to the PoS code, including adding a panic on a slashing
failure, some more checked arithmetics, aesthetic code cleanup, and fixing a
bug in is_delegator. (#2178) - Added type tags to transactions to enable hardware wallets
to fully decode transactions even after minor Namada updates.
(#2182) - Save MASP conversion state to the state storage instead of the diffs
(#2189)
MISCELLANEOUS
- Removed catching of panics from PoS VP.
(#2145)
SDK
Namada 0.26.0
Namada 0.26.0 is a minor release on the way to mainnet with updates to PoS and governance as well as its upstream dependencies.
BUG FIXES
- Fix Windows build by disabling RocksDB jemalloc feature.
(#2100) - Fix balance query not to return duplicate results
(#2125) - Fixed bugs in the governance VP and in the PGF inflation mechanism.
(#2133) - Added handling of ABCI Info requests load-shedding and removed load-shedding
from Mempool requests. (#2152)
FEATURES
- Implements a claim-based rewards system for PoS inflation.
(#1992) - Store validator metadata on-chain
(#2045) - Add transactions to deactivate and reactivate a validator
(#2082) - Added Ledger support to the CLI client.
(#2118) - Added the option to abstain from voting a governance proposal.
(#2128)
IMPROVEMENTS
- Improved replay protection for invalid transactions.
(#1905) - store only essential merkle tree snapshots
(#2043) - Replace strings with a specialized IBC token hash type in addresses
(#2046) - Switch to a more compact representation in Namada's transparent
addresses, and change all bech32m HRPs to their mainnet equivalent
(#2060) - refactoring IBC and remove IBC token denomination
(#2062) - Upgraded to upstream ibc-rs and tendermint-rs crates.
(#2084) - Updated the gas costs. Introduced a local validator configuration
parameter to set the accepted tokens and amounts for fees.
(#2091) - Moved the inner transaction replay check at execution time.
(#2104) - Removed "abcipp" and "abciplus" features and "abcipp"-only code.
(#2112) - Removed the DKG implementation with its ferveo dependency.
(#2115) - Upgraded to upstream tower-abci version.
(#2141)
Namada 0.25.0
This release includes only the new genesis flow.
FEATURES
- Added bech32m string encoding for
common::PublicKey
andDkgPublicKey
.
(#2088) - Added
--pre-genesis
argument to the wallet commands to allow to generate
keys, implicit addresses and shielded keys without having a chain setup. If
no chain is setup yet (i.e. there's no base-dir or it's empty), the wallet
defaults to use the pre-genesis wallet even without the--pre-genesis
flag. The pre-genesis wallet is located inside base-dir in
pre-genesis/wallet.toml
.
(#2088) - Reworked the genesis templates, setup and related utils commands.
(#2088)
Namada 0.23.2
Namada 0.23.2 is patch release addressing ledger startup problems with wasm artifacts and several other minor fixes.
Namada 0.24.1
Namada 0.24.0
Namada 0.24.0 is a minor release that introduces an SDK crate, PoS redelegation, various updates and fixes for IBC, PoS, governance, ETH bridge and the ledger.
BUG FIXES
- Reintroduced a dummy field in order to achieve compatibility with hardware
wallet. (#1949) - Fix broadcasting logic for protocol txs when a node operating the network is a
validator (#1964) - Avoid redundant storage deletions in lazy collections that would incur
extra gas cause and appear in transaction result as changed keys even if not
changed occurred. This may have caused PoS transactions to run out of gas.
(#1984) - Update ibc-rs with the fix for ibc-rs/#911
(#1989) - Fixed the pgf stewards reward to be constant regardless of the number of
stewards. (#1999)
IMPROVEMENTS
- Reworked the signature of inner transactions to improve safety and fix replay
protection. (#1867) - Updated the generation of hardware wallet test vectors to cover current
codebase (#1888) - IBC transfer to a payment address
(#1917) - Migrate to upstream borsh (#1930)
- Improve the Epoched data structure's bookkeeping of past
epochs, now parameterizable by PoS and governance params.
(#1943) - New implementation and parameters for purging old epochs for Epoched validator
data in storage. (#1944) - Query also IBC token balances
(#1946) - Increased resoultion of gas accounting for signature verification.
(#1954) - Refactor benchmarks to avoid enabling
"testing"
and `"dev"`` features by
default in the workspace.
(#1955) - Add missing checks for the commission rate change tx and code clean-up
(#1973) - Reduced the storage consumption of replay protection.
(#1977) - Persist the results of governance proposals in storage to allow recovering old
results. (#1979) - MASP rewards are now distributed in the manner dictated by the PD-controller
(#1985) - Wait for a node to sync before broadcasting protocol txs
(#2001) - Sign transactions originating from the Namada relayer that are sent to
Ethereum (#2012)
MISCELLANEOUS
SDK
- Phase out Halt abstractions
(#1953) - Validate Bridge pool transfers before submitting them to the network
(#1957) - Improved the usability of the SDK and moved it to separate crate.
(#1963) - Now re-exporting crates that will commonly be used with the SDK.
(#2033)
TESTING
- Mock ledger services in integration tests
(#1976)
Namada 0.23.1
Namada 0.23.1 is a patch release fixing a potential ledger crash on the pgf module.
BUG FIXES
- Fixed a bug that would cause the ledger to crash on a failed PGF payment.
(#1991)
Namada 0.23.0
Namada 0.23.0 is a minor release that improves the ethereum bridge, the IBC mechanism, and fixes some general protocol bugs.
BUG FIXES
- Fixed a bug in the parallel gas accounting of validity predicates.
(#1835) - Removed gas and fees related panics from the sdk.
(#1878) - Fix lower bound in client proposal vote check
(#1887) - Respect force option for proposal vote transaction
(#1889) - Never overwrite recent Bridge pool proofs in storage
(#1893) - Keep a record of the first block heights of every epoch in the chain's history
instead of trimming to only keep this data for a certain number of epochs in
the past. (#1898) - Added wasm validation in
init_chain
and in client utils.
(#1902) - Implement IBC tx execution via a native host function to workaround Mac M1/2
WASM compilation issues. (#1904)
FEATURES
- Replaced standard IO in SDK and client code with a trait that allows custom
handling. (#1746)
IMPROVEMENTS
- Rework voting on Ethereum tallies across epoch boundaries
(#1865) - Move all functions considered to be apart of the SDK to the SDK
folder. (#1868) - Remove pay-fee-with-pow feature and faucet vp.
(#1873) - Removed redundant
WasmPayload
enum in favor ofCommitment
.
(#1874) - Added a section in CONTRIBUTING.md to outline how to document SDK
changes (#1876) - Refactored retrieval of
Transaction
object for fee unshielding.
(#1877) - Renamed
gas_cost
tominimum_gas_price
in the genesis file.
(#1882) - Enable hardware wallets to participate in nondegenerate multisignature
transactions. (#1884) - Added support for validators' hostnames in configuration.
(#1886) - Allow Bridge pool transfers to pay zero gas fees
(#1892) - Forced the
async_trait
s' futures in the SDK to beSend
.
(#1894) - Retransmit timed out Ethereum events in case they have accumulated >1/3 voting
power (#1899) - Move the IBC native VP to a different module
(#1927)
MISCELLANEOUS
- Migrate to the new Ethereum contracts
(#1885)
SDK
- The shared-utils topic (#1868) moves the following:
-
Modules
From To namada::ledger::tx namada::sdk::tx namada::ledger::rpc namada::sdk::rpc namada::ledger::signing namada::sdk::signing namada::ledger::masp namada::sdk::masp namada::ledger::args namada::sdk::args namada::ledger::wallet::alias namada::sdk::wallet::alias namada::ledger::wallet::derivation_path namada::sdk::wallet::derivation_path namada::ledger::wallet::keys namada::sdk::wallet::keys namada::ledger::wallet::pre_genesis namada::sdk::wallet::pre_genesis namada::ledger::wallet::store namada::sdk::wallet::store namada::types::error namada::sdk::error -
Types
From To namada::ledger::queires::Client namada::sdk::queires::Client
-
- Added two new variants to the
TxError
enum,BalanceToLowForFees
and
FeeUnshieldingError
, representing possible failures in transactions' fees.
(#1878) - Added the
Send
bound to theClient
andShieldedUtils
async_trait
s'.
This allows the SDK to be used in environments which are both asynchronous and
multithread. (#1894)
TESTING
- Updated benchmarks and added tests to ensure they're working.
(#1907)