* Add GetPredicateResults to BlockContext
* Serve predicate results from blockContext
* Allow extra data to extend past DynamicFeeWindow post DUpgrade
* Get vm warp unit tests working
* Bump ANR to intermediate version to fix incompatibility with AvalancheGo
* Add kc to EthKeyChain
* Bump avalanchego dep in scripts for CI
* Add block hash payload support
* Use gomocks for precompileconfig and predicater and re-write CheckPredicates with gomocks
* Use gomock for mock accessible state and block context
* Fix existing warp contract tests with mock block context
* Remove unused mockPredicater impl
* x/warp: add contract execution unit tests
* Update NewEVMBlockContext
* Add AppendExtra to syncervm to fix tests
* x/warp: add unit test for multiple predicate results
* core: add unit test for CheckPredicates insufficient gas
* Update receive warp message test to trace block and assert the expected result
* Fix lint
* Update warp solidity contracts
* Fix block context mocks for bench
* Update precompile/precompileconfig/config.go
Co-authored-by: Darioush Jalali <[email protected]>
Signed-off-by: aaronbuchwald <[email protected]>
* Cleanup
* precompile/results: Add predicate results tests + comments
* nits
* precompile/results: omit tx predicate results if empty
* core: add invariant comment to predicate check
* Address PR comments
* Fix unpackWarpMessage and add unit tests
* Rename OriginChainID -> SourceChainID to match ago warp message type
* nits
* x/warp: set public key in warp predicate unit tests
* Update payload format
* Clarify IWarpMessenger verified message return types
* core/state: improve statedb warp specific comments
* Update input param type to uint32 to avoid potential overflow on conversion
* Update GetPredicateStorageSlots arg type to uint32
* warp/payload: add README for payload serialization (#835)
* Fix merge
* add mocks for precompile tests
* Update compatibility
* Bump AvalancheGo dep to v1.10.9
* Bump ANR dep to be compatible with ago v1.10.9
* revert ConfigurationBlockContext changes
* Add warp contract implementation
* Cleanup predicate test
* Fix new function signature
* Replace invalid fuzz test with unit test
* Add chain config to enable warp API for warp e2e test
* remove unused var
* Add experimental warning and move warp precompile to x/ package
* fix warning label
* Fix warning
* vm test nits
* Improve sendWarpMessenger sol comment
* more vm warp test nits
* Move warp params into params package
* More vm warp test nits
* Address more PR comments
* Remove triggerTx2
* Add check for expected topics from sendWarpMessage log
* Fix config test
* Fix incorrect replace
* remove unnecessary echo
* Address comments
* Address comments
* Address PR comments
* Improve comments
* Convert [32]byte type to common.Hash
* Add base cost for getVerifiedWarpMessage
* fix require equal type check
* Fix updated awm message format
* Update warp message format
* Move IWarpMessenger.sol to interfaces/
* Add newline to warp genesis
* uncomment assertion
* Fix broken links in README
Use SynchronizedBeforeSuite to create the node and all the subnet that are
needed to run tests. Pass the blockchainID to each work processor and run the
tests in parallel to reduce runtime
* Refactor load simulator
* Cleanup
* simulator: support http as well as websocket endpoints
* simulator: move help err handling
* simulator: Fix distribute funds bug
* simulator: add metrics at the end of simulator run
* Support no timeout
* Address review comments
* Remove unused struct
* Update cmd/simulator/config/flags.go
* Update cmd/simulator/load/funder.go
* Remove . from simulator flags
* Add comment to scripts/run_simulator.sh
* Address PR comments
* Bump avalanchego to v1.10.0-fuji-rc.2
* Add comptibility version
* Bump avalanchego dep to v1.10.0 and update version to v0.5.0
* Fix interface changes from avalanchego
* Update compatibility in README
* Remove specified git version to avoid downgrades breaking docker build
* Add build docker image to unit test action
* Update to use current branch instead of commit for docker image build
* Update docker image script to push image if env var is set
* Add new line to build image script
* Update scripts/constants.sh
Co-authored-by: Sam Batschelet <[email protected]>
* Update docker login
* Update build image action
* Update gh action
* checkout for docker image build
* Set build image ID in gh action with github.ref_name
* Separate CI and release
* remove extra copy
* Update name
* Update variable used in build image id
* Update set var
* Update dockerhub repo
* Revert dockerhub repo name chnge and use Subnet-EVM in tag name
---------
Co-authored-by: Sam Batschelet <[email protected]>
* start v0.4.12 release cycle
* add setup action to lint ci for proper go version
* Bump version in plugin/evm/version.go
* Remove go version pin
* Revert "Remove go version pin"
This reverts commit e651bebbdcb51afab1291374ff5c20c4a14f20c5.
* bump golangci-lint-acion to @v3
* bump golangci lint
* try 1.48
* golangci-lint v1.51 and goimports leveldb file
* migrate linting changes from coreth
* goimports and fix diagram comments
* Fix bad goimports changes
---------
Co-authored-by: Darioush Jalali <[email protected]>
* Start coreth migration
* Bump version to v0.4.11 and avalanchego dep
* goimports core/blockchain.go
* Update compatibility.json
* Update compatibility in README
* Bump avalanchego dep to v1.9.10
* Simplify e2e tests
* Add TODOs
* WIP
* Replace GetSubnetIDF
* Bump avalanchego to v1.9.6-rc.0
* Working on tests
* Light client mode to unlock dynamic state sync
* revert version to pass ci (?)
* fix simulator go.mod
* Set env variable using os setenv
* Needed renames to run all solidity precompile tests
* Cleanup
* E2E test GH Action
* Remove simualtor from GH Actions
* Re-add simulator to GH Actions
* nits
* Modify run script to support running a network and running simulator
* Fix GH Actions file
* Bump avalanchego to v1.9.6-rc.2
* go mod tidy
* Fix run script
* Reduce ctx timeout for starting new subnet to 15s
* Set data dir from github action
* Update run script
* Create separate load test for ginkgo
* Refactor scripts
* Fix up env variables in run single node script
* WIP
* Add install_cli.sh script
* Create 1 script to start a non-staking network of nodes in a subshell
* Fix run script to run 5 node non-staking network and add simple load script
* Fix load test
* go mod update to ago v1.9.7
* Fix allowed geth imports for simulator
* Populate constants to fix blst warning
* load constants in run ginkgo
* Update run simulator name check
* Update data dir
* Add plugin dir env variable
* Update github action and env var used in install avago script
* Filter out both precompile and load test from unit test script
* Add comment about skipping load test in unit test script
* Fix lint geth allowed pkgs
* Address nits
* Remove unused DATA_DIRs var from run script
* Add TODO to update run script to allow running N nodes instead of just one
* Update READMEs
* Break down simulator
* Cleanup
* Update cmd/simulator/README.md
* Update cmd/simulator/README.md
* Update cmd/simulator/README.md
* Update contract-examples/README.md
* Address review comments
* Address PR comments
* Bump avalanchego to v1.9.5-rc.0
* go mod tidy simulator
* Bump avalanchego v1.9.5-rc.1
* Bump avalanchego
* bump avalanchego and bump sevm version
* go mod tidy simulator
* Add rpcchainvm protocol version to compatibility.json
* use generic set
* bump version
* nit
* update inner go mod
* Bump rpcchainvm version in compatibility.json
Co-authored-by: aaronbuchwald <[email protected]>
Co-authored-by: Stephen <[email protected]>
* *: fix e2e tests with ginkgo label selector, remove unused npx tests
Signed-off-by: Gyuho Lee <[email protected]>
* run.sh: remove --contracts-foundry-dir=./contracts-foundry
Signed-off-by: Gyuho Lee <[email protected]>
* *: add back solidity-with-npx tests
Signed-off-by: Gyuho Lee <[email protected]>
* *: remove avalanche-network-runner dependency
Signed-off-by: Gyuho Lee <[email protected]>
* Update scripts/run.sh
Co-authored-by: aaronbuchwald <[email protected]>
* run.sh: document "ping"
Signed-off-by: Gyuho Lee <[email protected]>
* regenerate go module
Signed-off-by: Gyuho Lee <[email protected]>
* README: fix run.sh docs
Signed-off-by: Gyuho Lee <[email protected]>
* fix run ginkgo
Signed-off-by: Gyuho Lee <[email protected]>
* e2e: fix
Signed-off-by: Gyuho Lee <[email protected]>
* e2e: update label
Signed-off-by: Gyuho Lee <[email protected]>
* e2e: use avalanchego env
Signed-off-by: Gyuho Lee <[email protected]>
* fix exec paths
Signed-off-by: Gyuho Lee <[email protected]>
* AVALANCHEGO_PATH to parser/main.go
Signed-off-by: Gyuho Lee <[email protected]>
* env
Signed-off-by: Gyuho Lee <[email protected]>
* hardcode endpoints
Signed-off-by: Gyuho Lee <[email protected]>
* Change genesis file to enable precompiles
* Added precompile to genesis and default gas on hardhat config
* Clean up run script
* More E2E tests are passing
* Fix Fee Manager Test - 1 more passes
* Comment out incorrect test
* Fix Minter tests
* Handle promises properly
* Cleanup
* Fix Deployer tests
* Clean up test suite :)
* clean up and revert
* Update suites from proper branch
* stop subnet after each test - experiment
* Final clean up
* Remove small .only
* Test new changes
* Stop network from starting before suite
* Remove set env
* Remove unneeded code from parse
r
* dont run main from parser
* Enable other precompiles in other genesises
* Fix simulator tests and e2e :)
* Fix simulator
* remove precompile enablement
* Revert suites and runner to original shape
* Remove old code from parser
* Remove default auto from hardhat config
* Revert all changes to tests and genesis files
* Add Tiny err message fix
* Cleanup
* Cleanup and clarity
* Cleaner return
* Cleaner
* Add comment explaining why we set path
* refactor before suite
* delete parser/main as it is unneccessary
* remove actual file
* fix lint
* remove parser directory
* change go version
* change node v
* revert ci changes
* Fix hardhat url in ci
* Add print
* wrong file name
* Address Aaron's comments part 1
* Set skip netowrk shutdown to false by default
Signed-off-by: Gyuho Lee <[email protected]>
Co-authored-by: aaronbuchwald <[email protected]>
Co-authored-by: Anusha Chillara <[email protected]>
Co-authored-by: Anusha <[email protected]>
* Added compatibility tracking
* Added version moved test
* Cleaned up test
* Bump avalanchego version and nits
* go mod tidy cmd/simulator
* Mark trie clean jouranl test as flaky
* Bump avalanchego to v1.9.2
* Bump anr version in scripts/versions.sh
* Bump anr version in go.mod
* go mod tidy cmd/simulator
Co-authored-by: Aaron Buchwald <[email protected]>
* use anr pid in e2e test yaml
* fix parser
* fix naming in simulator to not be confused as ANR output
* rename to SaveClusterInfo
Co-authored-by: aaronbuchwald <[email protected]>