Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

v2.0.0 release diff against v1.5.0 #2011

Draft
wants to merge 371 commits into
base: releases/v1.5.0
Choose a base branch
from
Draft

Conversation

k-yang
Copy link
Member

@k-yang k-yang commented Aug 19, 2024

DO NOT MERGE. For illustration purposes only.

jgimeno and others added 30 commits March 4, 2024 21:01
* fix wasm ibc transaction panic

* remove comment

* add changelog entry
* feat(inflation): add burn method

* Update CHANGELOG.md
* test(inflation): add negative burn tests

* test(inflation): add total supply check to burn tests
)

* chore(deps): Bump bufbuild/buf-setup-action from 1.29.0 to 1.30.0

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.29.0 to 1.30.0.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](bufbuild/buf-setup-action@v1.29.0...v1.30.0)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Unique-Divine <[email protected]>
Co-authored-by: Unique Divine <[email protected]>
* refactor: move Burn rpc method to x/tokenfactory

* Update tx_msgs.go

* feat: add burn native method to tokenfactory msg server

* feat: add cli cmd

* fix: validate msg

* feat: add v1.2.0 upgrade handler

* Update CHANGELOG.md

* fix: register codec for MsgBurnNative

* fix: test

---------

Co-authored-by: Unique-Divine <[email protected]>
* feat: rest in peace

* fix: fix e2e wasm test

* fix: fix justfile and deplyo-wasm

---------

Co-authored-by: Unique Divine <[email protected]>
)

* chore(deps): Bump bufbuild/buf-setup-action from 1.30.0 to 1.30.1

Bumps [bufbuild/buf-setup-action](https://github.com/bufbuild/buf-setup-action) from 1.30.0 to 1.30.1.
- [Release notes](https://github.com/bufbuild/buf-setup-action/releases)
- [Commits](bufbuild/buf-setup-action@v1.30.0...v1.30.1)

---
updated-dependencies:
- dependency-name: bufbuild/buf-setup-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: Unique-Divine <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Unique-Divine <[email protected]>
* feat(eth): protos, eth types, and evm module types

* chore: changelog

* feat(eth): unit tests for types, crypto, encoding (#1838)

* feat(eth): unit tests for types, crypto, encoding

## Impl `go-ethereum`

Adds `go-ethereum` fork with an `Interpreter` interface for running smart
contracts in integration tests.

```go
type Interpreter interface {
	// Run loops and evaluates the contract's code with the given input data and returns
	// the return byte-slice and an error if one occurred.
	Run(contract *Contract, input []byte, static bool) ([]byte, error)
}
```

An `Interpreter` is used to run Ethereum based contracts and will utilize the
passed environment to query external sources for state information.
The Interpreter will run the byte code VM based on the passed
configuration.

Changes from go-ethereum v1.11:

* Set `callcode` to use `readOnly` mode for precompiled calls.
* Remove `IsStateful` function from the `PrecompiledContract` interface, as this remains unused.
* Support stateful precompiled contracts.
* Add `Address` function to `PrecompiledContract` interface.
* Implement custom active precompiles for the EVM.
* Define `Interpreter` interface for the EVM.
* Move the `JumpTable` defaults to a separate function.
* Refactor `Stack` implementation

* chore: linter

* docs(sample.go): PrivKeyEth

* refactor: fix copyright lines and LICENSE entity

* feat(eth): Collections encoders for bytes, Ethereum addresses, and Ethereum hashes (#1841)
* fix(docker-chaosnet): add copy step for geth dependency

* chore: changelog

* ci: conditional workflows should account for other go.mod and go.sum files

* ci: changing docker changes the build, so it should be a dep

* fix(docker): test builds locally with 'docker build -d nibi-test .'
* feat: rest in peace

* fix: fix e2e wasm test

* fix: fix justfile and deplyo-wasm

* fix: update localnet

* feat: rest in peace

* fix(localnet.sh): change order of operations in genesis config

* fix(localnet.sh): change order of operations in genesis config

* rm unused file

---------

Co-authored-by: Unique-Divine <[email protected]>
Co-authored-by: Unique Divine <[email protected]>
* chore(deps): Bump golang.org/x/net from 0.20.0 to 0.23.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.20.0 to 0.23.0.
- [Commits](golang/net@v0.20.0...v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20210921155107-089bfa567519 to 0.17.0.
- [Commits](https://github.com/golang/crypto/commits/v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: Unique Divine <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Unique Divine <[email protected]>
…001d to 0.23.0 in /geth (#1849)

* chore(deps): Bump golang.org/x/crypto in /geth

Bumps [golang.org/x/crypto](https://github.com/golang/crypto) from 0.0.0-20210921155107-089bfa567519 to 0.17.0.
- [Commits](https://github.com/golang/crypto/commits/v0.17.0)

---
updated-dependencies:
- dependency-name: golang.org/x/crypto
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* chore(deps): Bump golang.org/x/net in /geth

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.0.0-20220607020251-c690dde0001d to 0.23.0.
- [Commits](https://github.com/golang/net/commits/v0.23.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Unique Divine <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
…154634-513d2456b344 to 0.3.11 in /geth (#1851)

* chore(deps): Bump github.com/supranational/blst in /geth

Bumps [github.com/supranational/blst](https://github.com/supranational/blst) from 0.3.8-0.20220526154634-513d2456b344 to 0.3.11.
- [Release notes](https://github.com/supranational/blst/releases)
- [Commits](https://github.com/supranational/blst/commits/v0.3.11)

---
updated-dependencies:
- dependency-name: github.com/supranational/blst
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Unique Divine <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
* chore(deps): Bump robinraju/release-downloader from 1.9 to 1.10

Bumps [robinraju/release-downloader](https://github.com/robinraju/release-downloader) from 1.9 to 1.10.
- [Release notes](https://github.com/robinraju/release-downloader/releases)
- [Commits](robinraju/release-downloader@v1.9...v1.10)

---
updated-dependencies:
- dependency-name: robinraju/release-downloader
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: Unique Divine <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
* ICA Host / Controller integration. Added upgrade constants. Added make format command

* Fixed required message URLs

* Code import fix

* Fixed upgrade name

* Fixed upgrade target

* Changed version number

* Update CHANGELOG.md

---------

Co-authored-by: Jonathan Gimeno <[email protected]>
Co-authored-by: Kevin Yang <[email protected]>
…4 to 5 (#1854)

* chore(deps): Bump golangci/golangci-lint-action from 4 to 5

Bumps [golangci/golangci-lint-action](https://github.com/golangci/golangci-lint-action) from 4 to 5.
- [Release notes](https://github.com/golangci/golangci-lint-action/releases)
- [Commits](golangci/golangci-lint-action@v4...v5)

---
updated-dependencies:
- dependency-name: golangci/golangci-lint-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>

* ci: add CODECOV_TOKEN env var to secrets

* ci settings

* Updated changelog - dependabot

* refactor: run just fmt

---------

Signed-off-by: Unique-Divine <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
Co-authored-by: dependabot[bot] <[email protected]>
…1858)

* chore(deps): bump github.com/hashicorp/go-getter from 1.7.1 to 1.7.4

Bumps [github.com/hashicorp/go-getter](https://github.com/hashicorp/go-getter) from 1.7.1 to 1.7.4.
- [Release notes](https://github.com/hashicorp/go-getter/releases)
- [Changelog](https://github.com/hashicorp/go-getter/blob/main/.goreleaser.yml)
- [Commits](hashicorp/go-getter@v1.7.1...v1.7.4)

---
updated-dependencies:
- dependency-name: github.com/hashicorp/go-getter
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: Unique Divine <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Unique Divine <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
* refactor(oracle): add oracle slashing events

* Update CHANGELOG.md
…d blocks and Tendermint ones. (#1856)

* feat(eth-pubsub): Implement in-memory EventBus for real-time topic management and event distribution

* feat(eth-rpc): Conversion types and functions between Ethereum txs and blocks and Tendermint ones.

* chore: linter

* test(eth-rpc): more tests for types dir

* ci: add CODECOV_TOKEN env var to secrets

* test,refactor(eth): remove unnecessary nesting + more tests

* refactor(eth): rpc/types -> rpc

* refactor(eth): evm/types -> evm

* refactor(eth): ethtypes -> eth

* test(eth): eip712 more tests

* test(eth): more tests

* test(eth-rpc): more tests
…#1861)

* Squashed commit of the following:

commit 045cf6d
Merge: db03210 ffcea96
Author: Unique-Divine <[email protected]>
Date:   Sun May 5 15:21:16 2024 -0500

    Merge branch 'main' into ud/evm-rpc

commit db03210
Author: Unique-Divine <[email protected]>
Date:   Sun May 5 15:18:59 2024 -0500

    test(eth-rpc): more tests

commit 14f8a2c
Author: Unique-Divine <[email protected]>
Date:   Sun Apr 28 17:21:18 2024 -0500

    test(eth): more tests

commit 433780d
Merge: 4f28f8f 29e2acd
Author: Unique-Divine <[email protected]>
Date:   Sun Apr 28 14:53:34 2024 -0500

    Merge branch 'main' into ud/evm-rpc

commit 4f28f8f
Author: Unique-Divine <[email protected]>
Date:   Sun Apr 28 14:51:54 2024 -0500

    test(eth): eip712 more tests

commit bfac1e8
Author: Unique-Divine <[email protected]>
Date:   Sun Apr 28 14:29:27 2024 -0500

    refactor(eth): ethtypes -> eth

commit b32d385
Author: Unique-Divine <[email protected]>
Date:   Sun Apr 28 14:24:26 2024 -0500

    refactor(eth): evm/types -> evm

commit a336983
Author: Unique-Divine <[email protected]>
Date:   Sat Apr 27 15:58:05 2024 -0500

    refactor(eth): rpc/types -> rpc

commit c3a6215
Merge: fe913dc 31bb3bb
Author: Unique-Divine <[email protected]>
Date:   Sat Apr 27 13:13:37 2024 -0500

    Merge branch 'ud/evm' into ud/evm-rpc

commit 31bb3bb
Merge: 1a05061 072de03
Author: Unique Divine <[email protected]>
Date:   Sat Apr 27 20:12:14 2024 +0200

    Merge branch 'main' into ud/evm

commit fe913dc
Author: Unique-Divine <[email protected]>
Date:   Sat Apr 27 09:10:03 2024 -0500

    test,refactor(eth): remove unnecessary nesting + more tests

commit 372df12
Author: Unique-Divine <[email protected]>
Date:   Sat Apr 27 07:41:04 2024 -0500

    ci: add CODECOV_TOKEN env var to secrets

commit ac0701a
Author: Unique-Divine <[email protected]>
Date:   Sat Apr 27 07:26:57 2024 -0500

    test(eth-rpc): more tests for types dir

commit 176b6c6
Author: Unique-Divine <[email protected]>
Date:   Fri Apr 26 20:54:04 2024 -0500

    chore: linter

commit 36730c5
Author: Unique-Divine <[email protected]>
Date:   Fri Apr 26 20:48:58 2024 -0500

    feat(eth-rpc): Conversion types and functions between Ethereum txs and blocks and Tendermint ones.

commit 1a05061
Author: Unique-Divine <[email protected]>
Date:   Fri Apr 26 08:11:57 2024 +0200

    feat(eth-pubsub): Implement in-memory EventBus for real-time topic management and event distribution

* feat(eth-rpc): RPC backend, Ethereum tracer, KV indexer, and RPC APIs

* fix(indexer): register eth and evm types during test setup
* fix(ica): add controller stack

* chore: update changelog

* fix: linter issues

* Update CHANGELOG.md

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Unique-Divine and others added 20 commits January 9, 2025 17:18
…the Go conventions and needed to include double quotes around the hexadecimal string. (#2154)
…2156)

* test(evm-e2e): add E2E test using the Nibiru Oracle's ChainLink impl

* chore: changelog
…ee (#2157)

* fix(evm): Fix unit inconsistency related to AuthInfo.Fee and txData.Fee using effective fee

* chore: change log
…bankMsgSend (#2160)

* fix(evm-precompile): use bank.MsgServer Send in precompile IFunToken.bankMsgSend

* chore: changelog
* test(testutil): try retrying for 'panic: pebbledb: closed'

* chore: changelog
* fix(evm): proper block gas calculation in precompile calls

* chore: changelog update

* fix(evm): proper tx gas refund

* fix: moved gas comsumption from call_contract to msg_server

* test: fixed test for funtoken created from coin

* chore: lint

* Apply suggestions from code review

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix: cleanup

* fix: minor test fix

* fix: getting current nonce for a specified address

---------

Co-authored-by: Kevin Yang <[email protected]>
Co-authored-by: Unique Divine <[email protected]>
…y docs (#2168)

* docs(evm-embeds): Move Nibiru repo hacking docs to separate file so they
won't be published on npm for @nibiruchain/solidity

* chore(evm-embeds): just gen-embeds + more docs

* chore(CHANGELOG): move old upgrades to legacy changelog

* chore(evm-embeds): just gen-embeds
* refactor(evm): removed blockGasUsed transient variable

* chore: changelog update

* fix: added testutil retry for backend test suite

* fix: lint

---------

Co-authored-by: Unique Divine <[email protected]>
…#2165)

* cleanup

* cleanup

* partial refactor

* fix: compilation errors

* refactor: remove CallContract completely

* refactor: mintOrUnescrowERC20

* refactor: use simpler evmObj creation pattern

* fix: empty gas price in gethcore Message

* fix: contract address collision error

* fix: TestPrecompileSelfCallRevert

* fix: unnecessary stateDB creation

* fix: ensure stateDB singleton

* fix: balance check

* fix: balance transfer check had wrong direction

* fix: deploy contract args

* fix: use a new StateDB before CallContractWithInput

* Update CHANGELOG.md

* fix: clear StateDB between txs

* Update account_info_test.go

* Update account_info_test.go

* Update app/evmante/evmante_can_transfer.go

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix base fee wei

* refactor: funtoken tests

* refactor: simplify NewEVM() object creation in tests

* fix: stateDB should not commit on ERC20 calls

* fix: commit after minting funtokens

* fix: erc20 burn was committing when it shouldn't be

* fix: linter

---------

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
Co-authored-by: Unique-Divine <[email protected]>
* better handling erc20 metadata

* better handling erc20 metadata

* rename

* remove redundant

* update changelog

* lint
* fix: added tx logs emitting to the funtoken related txs

* chore: changelog update

* chore: lint

* chore: debug failing integration test

* fix: removed tx index updating for non eth txs

* fix: tests

---------

Co-authored-by: Unique Divine <[email protected]>
Co-authored-by: Kevin Yang <[email protected]>
* chore: close iterator in IterateEpochInfo

* chore: add a line in changelog
* chore: Remove allowUnprotectedTxs

* chore: add a line in changelog
…t send MsgEthereumTx (#2159)

* chore(evm): Augment the Wasm msg handler so that wasm contracts cannot send MsgEthereumTx

* cleanup

* cleanup

* partial refactor

* fix: compilation errors

* refactor: remove CallContract completely

* refactor: mintOrUnescrowERC20

* refactor: use simpler evmObj creation pattern

* fix: empty gas price in gethcore Message

* fix: contract address collision error

* fix: TestPrecompileSelfCallRevert

* fix: unnecessary stateDB creation

* fix: ensure stateDB singleton

* fix: balance check

* fix: balance transfer check had wrong direction

* fix: deploy contract args

* fix: use a new StateDB before CallContractWithInput

* Update CHANGELOG.md

* fix: clear StateDB between txs

* Update account_info_test.go

* Update account_info_test.go

* Update app/evmante/evmante_can_transfer.go

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix base fee wei

* refactor: funtoken tests

* refactor: simplify NewEVM() object creation in tests

* fix: stateDB should not commit on ERC20 calls

* fix: commit after minting funtokens

* fix: erc20 burn was committing when it shouldn't be

* fix: linter

* refactor: TestCreateFunTokenFromCoin

* test(app-wasmext): add happy path DispatchMsg example to test

---------

Co-authored-by: Kevin Yang <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* fix(evm): ensure stateDB is nil after tx execution

* Update CHANGELOG.md

* test: add smart contract test (precompile sendToBank then ERC20 transfer)
* chore(deps): bump golang.org/x/net from 0.23.0 to 0.33.0

Bumps [golang.org/x/net](https://github.com/golang/net) from 0.23.0 to 0.33.0.
- [Commits](golang/net@v0.23.0...v0.33.0)

---
updated-dependencies:
- dependency-name: golang.org/x/net
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: dependabot[bot] <[email protected]>
Co-authored-by: Unique-Divine <[email protected]>
* chore(deps): bump undici from 5.28.4 to 5.28.5 in /x/evm/embeds

Bumps [undici](https://github.com/nodejs/undici) from 5.28.4 to 5.28.5.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](nodejs/undici@v5.28.4...v5.28.5)

---
updated-dependencies:
- dependency-name: undici
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <[email protected]>

* Updated changelog - dependabot

---------

Signed-off-by: Unique Divine <[email protected]>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Unique Divine <[email protected]>
Unique-Divine and others added 9 commits January 24, 2025 15:48
… genaccounts.go (#2177)

* fix(evm-bank-extension): Use safer gas meter for BaseOp in ForceGasInvariant

* chore: changelog

* fix: preserve the kv gas config in case it's non-default

* revert: new PR

* fix(cmd): Continue from #2127 and unwire vesting flags and logic from genaccounts.go
* chore: cleanup funtoken test

* Update funtoken_test.go

* refactor: update wasm tests

* Update export.go

* Update debug.go

* fix: TestJournalReversion

* test(evm): add dirty state attack tests

* Update wasm_test.go

* test: add TestWasmPrecompileDirtyStateAttack4

* Update wasm_test.go

* Update CHANGELOG.md

* test(evm): add wasm precompile staking test

* fix: total supply calc in tests

* test(evm): remove dirty state attacks 1-3 due to being duplicates

* refactor: variable names
* fix(evm): consume gas in CallContractWithInput

* Update CHANGELOG.md

* fix: gas consumption in ApplyEvmMsg

* fix: move commit after gas refund calculation so that we can return a valid evmResp

* refactor: GasToRefund

* fix: proper checking of err pointer nil

Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>

* fix: remove fullRefundLeftoverGas

* test: add gas assertions

* Update gas_fees.go

---------

Co-authored-by: Oleg Nikonychev <[email protected]>
Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>
* fix: force gas invariant gas meter type

* Update bank_extension.go

* Update CHANGELOG.md
* chore: update chain IDs

* fix: changelog

* chore: fix test

* chore: reset chain id changes

---------

Co-authored-by: Kevin Yang <[email protected]>
* chore: changelog

* chore: cleanup

* chore: formatting
* fix: add extra case of converting straight from bytes to string

* fix: eip55 encoding

* Update CHANGELOG.md
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
⚠️ do not merge On hold for merge or not desired
Projects
None yet
Development

Successfully merging this pull request may close these issues.