* fix(evmutil): create module account on InitGenesis
ensures the creation of the x/evmutil module account on init genesis.
* update changelog
* cleanup debug logging
* add cost summary to e2e test suite runs
* lower cost of test
* refactor initial funding to use new BankSend()
* reduce gas used for initial funding
* return all sdk funds on shutdown
* enable refunds when running against live network
* save more cosmos coins! require less total overall
* track erc20s on Chain
* refactor erc20 funding with new TransferErc20()
* return all registered erc20 balance
* lower erc20 e2e test values
* withdraw earn position & convert back to erc20
* lower gas fees in e2e tests
* fix env variable typo
* add readme note about how to run on live network
* log total spend required for e2e tests
* add NodeRunner impl for connecting to live network
* refactor out node runner setups
* remove hardcoded denom for DeployedErc20
* further specify restrictions on DeployedErc20
* don't override .env funded account mnemonic
* lower amounts for convert to coin e2e tests
* lower fund values used by e2e tests
* add doc comments for all e2e functions & types
* clean up naming around axlwBTC
reenable lend money market
assign incentives
* Update .github/scripts/seed-protonet.sh
* alphabetical order of denoms
* alphabetical order of denoms
* alphabetical order of denoms pt 3
* alphabetical order of denoms
* first pass at convert cosmos coin -> evm msg
* test ConvertCosmosCoinFromERC20 method
* test message server for MsgConvertCosmosCoinFromERC20
* update spec to include MsgConvertCosmosCoinFromERC20
* update changelog
* add CLI command for convert-cosmos-coin-from-erc20
* add test of removed/re-enable denom for convert
* add amino registration test
* register evmutil types on app amino codec
* register new msg type in amino and proto,
also use new register method that checks length to catch ledger issues
* clarify variable naming
* feat(evmutil): add ERC20KavaWrappedNativeCoinContract
* adds the contract ABI & bytecode for an Ownable erc20 with the following:
* customizable decimals on deploy -> requires overriding decimals() view
* mint() exposed for the contract owner which will be the evmutil module
* burn() exposed for the contract owner which will be the evmutil module
* sets up keeper to deploy above token based on details from an
AllowedNativeCoinERC20Token
* tests basic queries and permissions of deployed contract
* update changelog
* improve error messages & comments for erc20 deploy
* setup empty hardhat project for evm contract dev
* setup eslint
* setup prettier
* setup solhint
* ignore contracts dir in docker
* add ERC20KavaWrappedNativeCoin contract
* add unit tests for ERC20KavaWrappedNativeCoin
* use solidity 0.8.18
* configure solc with optimization and evm target
* compile ERC20KavaWrappedNativeCoin for evmutil
* setup script for deploying directly to a network
* fix burn test for ERC20KavaWrappedNativeCoin
Co-authored-by: drklee3 <derrick@dlee.dev>
---------
Co-authored-by: drklee3 <derrick@dlee.dev>
* add proto for allowed sdk denoms -> evm conversion
* add validation for AllowedNativeCoinERC20Token
* add validation for AllowedNativeCoinERC20Tokens
* add AllowedNativeDenoms into params & genesis
* add evmutil Params.Validate() test
* fix eip712 ante test
* update changelog
* update internal testnet genesis.json
* update state & param specs
updates to the sections describing functionality will be updated once
that functionality actually exists... :)
* update field decimal -> decimals
field now matches erc20 spec
* add validation decimals will cast to uint8
* add v2 store migration for evmutil
* create & register evmutil migrations
* adds migrator to evmutil's keeper
* sets up Migrate1To2 migration
* registers migration in module
* updates GetParams to properly handle historic block queries
* add unit test for GetParams with historic store
* feat: add CommunityCDPRepayDebtPermission
When granted, the new permission allows a committee to submit a
CommunityCDPRepayDebtProposal to lower principal owed on a cdp
owned by the x/community module.
* update changelog
* update protonet genesis.json