Releases: NibiruChain/nibiru
Releases · NibiruChain/nibiru
v2.1.0-rc2
v2.1.0-rc1
Changelog
- 78a5b08 fix: app-db-backend not recognized on prune command (#2217)
- a85cbc8 Update 404 link README.md (#2215)
- 7387b09 chore: synchronize
releases/v2.0.0branch withmainbranch (#2010) - 308b8a6 chore(wasm): bump wasmvm dependency to wasmvm v1.5.8 (#2214)
- ead6d9b chore(build): include lib versions on cache (#2213)
- 6b4aa19 fix(evm): proper eth tx logs emission for funtoken operations (#2212)
- 5b23321 ci(chaosnet): avoid building on cache injected directories (#2211)
- b3c8d07 chore(build): add build tags and missing flags/variables (#2202)
- 28dd919 chore(ci): add cache for chaosnet builds (#2207)
- 75eb1e7 ci: Simplify GitHub actions based on conditional paths, removing the need for files like ".github/workflows/skip-unit-tests.yml". (#2209)
- 442a3a5 ci(chaosnet): fix docker image build (#2206)
- 1921af9 feat(evm-core-ts): Add ERC20 caller to the ethers export. (#2204)
- af38373 feat(evm): Create ethers v6 adapters for Nibiru and publish TS library (#2197)
- 2b4e8c0 fix(test): evm e2e oracle test fixed pair name (#2200)
- 1d543b3 refactor(evm): remove double JSON escaping of
EventEthereumTxlogs (#2188) - f2a1a16 fix(oracle): correctly handle misscount (#2192)
- 019ef64 chore: Remove incomplete CI workflow for E2E tests against testnet
- fda9778 fix(evm)!: correct EIP55 addr encoding (#2187)
- 5d1f87b test(evm): e2e tests configuration enhancements (#2184)
- 57371ae chore: update chain IDs (#2104)
- ecda4c1 fix(evm): bank keeper extension gas meter type (#2183)
- 1ddbc2a fix(evm): consume gas in CallContractWithInput (#2180)
- bc29b88 test(evm): additional tests and refactors (#2176)
- 3c2bcc5 fix(cmd): Continue from #2127 and unwire vesting flags and logic from genaccounts.go (#2177)
- 16cecd2 chore(deps): bump undici from 5.28.4 to 5.28.5 in /x/evm/embeds (#2174)
- d6690dd chore(deps): bump golang.org/x/net from 0.23.0 to 0.33.0 (#2175)
- 0e3ab43 fix(evm): ensure stateDB is nil after tx execution (#2173)
- 8a4b968 chore(evm): Augment the Wasm msg handler so that wasm contracts cannot send MsgEthereumTx (#2159)
- dc91b74 chore: Remove redundant allowUnprotectedTxs (#2170)
- 68d837f chore: close iterator in IterateEpochInfo (#2172)
- 0ef4099 fix(evm): added tx logs events to the funtoken related txs (#2161)
- ee5741b fix(evm): Better handling erc20 metadata (#2169)
- 13c71a7 fix(evm): ensure only one copy of StateDB when executing Ethereum txs (#2165)
- f3ca671 refactor(evm): removed blockGasUsed transient variable (#2167)
- 04bd7c2 chore(evm-solidity): Move unrelated docs, gen-embeds, and add Solidity docs (#2168)
- 8731a9e fix(evm): proper tx gas refund (#2132)
- 8db476f test(testutil): try retrying for 'panic: pebbledb: closed' (#2162)
- 1ed351f fix(evm-precompile): use bank.MsgServer Send in precompile IFunToken.bankMsgSend (#2160)
- f7a7007 fix(evm): Fix unit inconsistency related to AuthInfo.Fee and txData.Fee (#2157)
- da4c2c7 test(evm-e2e): add E2E test using the Nibiru Oracle's ChainLink impl (#2156)
- 5533a2a fix(evm): JSON encoding for the
EIP55Addrstruct was not following the Go conventions and needed to include double quotes around the hexadecimal string. (#2154) - c9c56a9 feat(evm-oracle): add Solidity contract that we can use to expose the Nibiru Oracle in the ChainLink interface (#2149)
- 8e477cb feat(evm): randao support for evm (#2151)
- 3a8ff23 fix(precompile): consume gas before returning error (#2152)
- 7aebf75 fix(token-registry): meet formatting requirements for cosmos/chain-registry.
- 8c6e021 fix(simapp): manually add x/vesting Cosmos-SDK module types to the codec in simulation tests since they are expected by default (#2147)
- df8c394 chore(token-registry): add xNIBI Astrovault LST to registry (#2145)
- 2c4c224 fix(evm): proper nonce management in statedb (#2130)
- 20531e7 fix(evm): erc20 born funtoken: properly burn bank coins after converting coin back to erc20 (#2139)
- e5274c0 feat(token-registry): Implement strongly typed Nibiru Token Registry and generation command (#2144)
- de7239f feat: add precompile for calling bank to evm from evm (#2135)
- a0eadea fix: disabled built in auth/vesting module functionality (#2127)
- 350b9e9 fix(bank): fix gas invariant wrapper to actually charge gas (#2140)
- 8cd4ceb refactor: simplify account retrieval (#2141)
- 86d6b3f fix(bank): add additional missing bank keeper method overrides to sync with StateDB (#2142)
- 1ae53e4 fix(evm): query of NIBI should use bank state, not the StateDB (#2134)
- 666a58d feat(evm-precompile): Emit EVM events created to reflect the ABCI events that occur outside the EVM to make sure that block explorers and indexers can find indexed ABCI event information. (#2125)
- 1a256f2 fix(evm): issue with infinite recursion in erc20 funtoken contracts (#2129)
- 3954394 chore(deps-dev): bump bun from 1.1.21 to 1.1.30 in /x/evm/embeds (#2126)
- d06b483 chore: upload security reports
- 7921ecf chore(deps): bump golang.org/x/crypto from 0.21.0 to 0.31.0 (#2123)
- aded079 refactor(evm): Remove unnecessary argument in the
VerifyFeefunction, which returns the token payment required based on the effective fee from the tx data. Improve documentation. (#2124) - 88b060a test(evm): more bank extension tests and EVM ABCI integration tests to prevent regressions (#2122)
- debaa4d fix: Use canonical heaxdecimal strings for Eip155 address encoding (#2120)
- 5a7f90d fix(evm): Guarantee that gas consumed during any send operation of the "NibiruBankKeeper" depends only on the "bankkeeper.BaseKeeper"'s gas consumption. (#2119)
- 39ebc44 chore(deps): bump codecov/codecov-action from 4 to 5 (#2112)
- 0312113 chore(deps): bump bufbuild/buf-setup-action from 1.46.0 to 1.47.2 (#2113)
- 0f96d63 chore(deps): bump cosmossdk.io/math from 1.3.0 to 1.4.0 (#2115)
- 8b30e10 fix(oracle): The timestamps resulting from ctx.WithBlock* don't actually (#2117)
- 7d91c5a fix(precompile-funtoken.go): Fixes a bug where the err != nil check is missing in the bankBalance precompile method (#2116)
- b61c103 fix(evm): make conditional balance check free in gas cost (#2114)
- 04ccbcf fix: e2e-evm-cron.yml (#2111)
- f5d639d fix(evm): non-deterministic gas usage (#2110)
- b4283f1 chore: scheduled basic e2e tests for evm testnet endpoint (#2106)
- 6ec8200 fix(evm): removed deprecated root key from eth_getTransactionReceipt (#2108)
- 8907a61 feat(evm-funtoken-precompile): Implement "balance", "bankBalance", and "whoAmI" methods (#2107)
- 94db838 feat(evm): gas usage in precompiles: limits, local gas meters (#2093)
- 1c8df54 test(evm): precompile call with revert (#2105)
- 528f51a chore(deps): bump bufbuild/buf-setup-action from 1.45.0 to 1.46.0 (#2102)
- 7b26a2c feat: add new query for dated prices (#2097)
- ecf3e47 fix(evm): Use a NibiruBankKeeper to automatically record ether balance changes on the StateDB journal (#2095)
- ee5e29f feat: enable wasm light clients on IBC (08-wasm) (#2068)
- bf70839 fix(evm): tx receipt proper marshalling (#2101)
- 0afb08f refactor: general code style cleanups on precompile and statedb journal (#2100)
- 7b7beb7 feat: add validation for multi message execution wasm (#2092)
- 9d0dbd5 fix(evm): transfer for native to erc20 (#2090)
- f3cbcae fix(evm): StateDB multistore cache for precompile reversion and a safer Nibiru bank keeper that respects the EVM (#2094)
- 16393ca test(evm): statedb tests for race conditions within funtoken precompile (#2098)
- 3aac937 chore(deps): bump github.com/btcsuite/btcd from 0.24.0 to 0.24.2 (#2070)
- 60f0288 chore(deps): bump bufbuild/buf-setup-action from 1.44.0 to 1.45.0 (#2069)
- 9ce1d87 feat(evm): add simple validation for fun token fee in set params (#2091)
- 056edb3 chore(changelog): Fix description for PR#2086 and bump secp256k1 from 4.0.3 to 4.0.4 in /x/evm/embeds (#2087)
- 7c1b12b fix(evm): commit temporary state on precompile start, avoiding bug stemming from uncommitted, dirty journal entries in the EVM StateDB (#2086)
- dd27f4b fix(erc20): better handling of gas consumption within erc20 contract execution (#2089)
- 3199ae5 feat(evm-forge): foundry support and template for Nibiru EVM develoment (#2084)
- 0e5f2fc refactor(evm): remove outdated comment and improper error message text (#2088)
- 3348e14 fix(e2e-evm): package.json command for producing contract types
- 7dee8e0 fix(gas-fees): use effective gas price in RefundGas (#2076)
- 62d4b1a fix(evm-keeper): better utilize ERC20 metadata during FunToken creation (#2074)
- f450c79 chore(deps): bump docker/build-push-action from 5 to 6 (#1924)
- c5b843c chore(deps): bump bufbuild/buf-setup-action from 1.43.0 to 1.44.0 (#2062)
- e3cca15 refactor(evm)!: Refactor out dead code from the evm.Params (#2065)
- 37913c4 chore(deps): bump github.com/CosmWasm/wasmvm from 1.5.0 to 1.5.5 (#2047)
v2.0.0-p1
Info
- Prior mainnet release: v1.5.0
- Full Changelog: v1.5.0...v2.0.0-p1
v2.0.0-p1 - 2025-02-10
- fbcca38 fix: revert wasmvm to v1.5.0
- 533490d fix: revert testnet-1 chain id to 7210
- d8a1092 chore: update changelog for v2 EVM release
v2.0.0 - 2025-02-10
- #2119 - fix(evm): Guarantee
that gas consumed during any send operation of the "NibiruBankKeeper" depends
only on the "bankkeeper.BaseKeeper"'s gas consumption. - #2120 - fix: Use canonical hexadecimal strings for Eip155 address encoding
- #2122 - test(evm): more bank extension tests and EVM ABCI integration tests to prevent regressions
- #2124 - refactor(evm):
Remove unnecessary argument in theVerifyFeefunction, which returns the token
payment required based on the effective fee from the tx data. Improve
documentation. - #2125 - feat(evm-precompile):Emit EVM events created to reflect the ABCI events that occur outside the EVM to make sure that block explorers and indexers can find indexed ABCI event information.
- #2127 - fix(vesting): disabled built in auth/vesting module functionality
- #2129 - fix(evm): issue with infinite recursion in erc20 funtoken contracts
- #2130 - fix(evm): proper nonce management in statedb
- #2132 - fix(evm): proper tx gas refund
- #2134 - fix(evm): query of NIBI should use bank state, not the StateDB
- #2139 - fix(evm): erc20 born funtoken: properly burn bank coins after converting coin back to erc20
- #2140 - fix(bank): bank keeper extension now charges gas for the bank operations
- #2141 - refactor: simplify account retrieval operation in
nibid q evm account. - #2142 - fix(bank): add additional missing methods to the NibiruBankKeeper
- #2144 - feat(token-registry): Implement strongly typed Nibiru Token Registry and generation command
- #2145 - chore(token-registry): add xNIBI Astrovault LST to registry
- #2147 - fix(simapp): manually add x/vesting Cosmos-SDK module types to the codec in simulation tests since they are expected by default
- #2149 - feat(evm-oracle):
add Solidity contract that we can use to expose the Nibiru Oracle in the
ChainLink interface. Publish all precompiled contracts and ABIs on npm under
the@nibiruchain/soliditypackage. - #2151 - feat(evm): randao support for evm
- #2152 - fix(precompile): consume gas for precompile calls regardless of error
- #2154 - fix(evm):
JSON encoding for theEIP55Addrstruct was not following the Go conventions and
needed to include double quotes around the hexadecimal string. - #2156 - test(evm-e2e): add E2E test using the Nibiru Oracle's ChainLink impl
- #2157 - fix(evm): Fix unit inconsistency related to AuthInfo.Fee and txData.Fee using effective fee
- #2159 - chore(evm): Augment the Wasm msg handler so that wasm contracts cannot send MsgEthereumTx
- #2160 - fix(evm-precompile): use bank.MsgServer Send in precompile IFunToken.bankMsgSend
- #2161 - fix(evm): added tx logs events to the funtoken related txs
- #2162 - test(testutil): try retrying for 'panic: pebbledb: closed'
- #2167 - refactor(evm): removed blockGasUsed transient variable
- #2168 - chore(evm-solidity): Move unrelated docs, gen-embeds, and add Solidity docs
- #2165 - fix(evm): use Singleton StateDB pattern for EVM txs
- #2169 - fix(evm): Better handling erc20 metadata
- #2170 - chore: Remove redundant allowUnprotectedTxs
- #2172 - chore: close iterator in IterateEpochInfo
- #2173 - fix(evm): clear
StateDBbetween calls - #2177 - fix(cmd): Continue from #2127 and unwire vesting flags and logic from genaccounts.go
- #2176 - tests(evm): add dirty state tests from code4rena audit
- #2180 - fix(evm): apply gas consumption across the entire EVM codebase at
CallContractWithInput - #2183 - fix(evm): bank keeper extension gas meter type
- #2184 - test(evm): e2e tests configuration enhancements
- #2187 - fix(evm): fix eip55 address encoding
- #2188 - refactor(evm): update logs emission
- #2192 - fix(oracle): correctly handle misscount
- #2197 - chore(evm): Create ethers v6 adapters for Nibiru. Publish as a library on npm (
@nibiruchain/evm-core) - #2200 - fix(test): evm e2e oracle test fixed pair name
Nibiru EVM | Before Audit 2 - 2024-12-06
The codebase went through a third-party Code4rena
Zenith Audit, running from 2024-10-07 until
2024-11-01 and including both a primary review period and mitigation/remission
period. This section describes code changes that occurred after that audit in
preparation for a second audit starting in November 2024.
- #2074 - fix(evm-keeper): better utilize ERC20 metadata during FunToken creation. The bank metadata for a new FunToken mapping ties a connection between the Bank Coin's
DenomUnitand the ERC20 contract metadata like the name, decimals, and symbol. This change brings parity between EVM wallets, such as MetaMask, and Interchain wallets like Keplr and Leap. - #2076 - fix(evm-gas-fees):
Use effective gas price in RefundGas and make sure that units are properly
reflected on all occurrences of "base fee" in the codebase. This fixes #2059
and the related comments from @Unique-Divine and @berndartmueller. - #2084 - feat(evm-forge): foundry support and template for Nibiru EVM development
- #2086 - fix(evm-precomples):
Fix state consistency in precompile execution by ensuring proper journaling of
state changes in the StateDB. This pull request makes sure that state is
committed as expected, fixes theStateDB.Committo follow its guidelines more
closely, and solves for a critical state inconsistency producible from the
FunToken.sol precompiled contract. It also aligns the precompiles to use
consistent setup and dynamic gas calculations, addressing the following tickets. - #2088 - refactor(evm): remove outdated comment and improper error message text
- #2089 - better handling of gas consumption within erc20 contract execution
- #2090 - fix(evm): Account
for (1) ERC20 transfers with tokens that return false success values instead of
throwing an error and (2) ERC20 transfers with other operations that don't bring
about the expected resulting balance for the transfer recipient. - #2091 - feat(evm): add fun token creation fee validation
- #2093 - feat(evm): gas usage in precompiles: limits, local gas meters
- #2092 - feat(evm): add validation for wasm multi message execution
- #2094 - fix(evm): Following
from the changs in #2086, this pull request implements a newJournalChange
struct that saves a deep copy of the state multi store before each
state-modifying, Nibiru...
v2.0.0-testnet.chain.id.7210
Changelog
- 80f51ed fix: revert testnet-1 chain id
v2.0.0-rc.21
v2.0.0
v2.0.0-rc.20
v2.0.0-rc.19
Changelog
- 044d70b Merge branch 'main' into releases/v2.0.0
- ecda4c1 fix(evm): bank keeper extension gas meter type (#2183)
- 1ddbc2a fix(evm): consume gas in CallContractWithInput (#2180)
- bc29b88 test(evm): additional tests and refactors (#2176)
- 3c2bcc5 fix(cmd): Continue from #2127 and unwire vesting flags and logic from genaccounts.go (#2177)
- 16cecd2 chore(deps): bump undici from 5.28.4 to 5.28.5 in /x/evm/embeds (#2174)
- d6690dd chore(deps): bump golang.org/x/net from 0.23.0 to 0.33.0 (#2175)
v2.0.0-rc.18
Changelog
- a58899e Merge branch 'main' into releases/v2.0.0
- 0e3ab43 fix(evm): ensure stateDB is nil after tx execution (#2173)
- 8a4b968 chore(evm): Augment the Wasm msg handler so that wasm contracts cannot send MsgEthereumTx (#2159)
- dc91b74 chore: Remove redundant allowUnprotectedTxs (#2170)
- 68d837f chore: close iterator in IterateEpochInfo (#2172)