* Move all scripts to a single directory
* Switch to cargo-make
* Remove the polkadot-sdk from the submodules
* WIP: update the CI
* Add other jobs to CI
* Overhaul the polkadot-sdk caching step
* Add a testing step
* Fix the CI
* Install clang and llvm dependencies
* Update the version of clang
* Install llvm on macos
* Fix ci
* Fix ci
* Use 1.90.0 version of rust for the polkadot-sdk
* Fix CI
* Fix CI
* Fix CI
* Fix CI
* Fix CI
* Allow warnings
* Update runners
* Update runners
* Simplify CI
* Update MacOS runner
* Fix zombienet tests
* Make cache step faster
* Remove references to kitchensink
* Update the ci for the revive-dev-node
* Update references to the substrate node
* Add the step path to the failure logs
* Update the CI
* fix machete
* Update tests
* Update the commit hash of the polkadot sdk
* Ignore the tx mine test
* Basic zombie node definition
* [WIP] - Impl EthereumNode for zombie node
* Remove unused imports
* [WIP] Support substrate node in zombienet network
* Impl zombie node resolver && node for zombie node
* Spawn eth-rpc on top of collator node
* Implement ZombienetPlatform and integrate zombie node with eth rpc
* Add wourkaround to run tests
* Add few comments
* fmt
* Replace default transaction request in test
* Merge - Fix conficts with main
* fmt
* Clippy fix
* Add polkadot and parachain node to ci
* CI - Fetch polkadot binaries from releases
* Fix unit test assertion
* Minor doc improvements
* Change names from ZombieNet to Zombienet and switch from Command to Process
* Refactor ZombieNode to cache provider using OnceCell
* CI: Cache polkadot binaries and use them if available
* Fix conficts with main
* Refactor shared_node to return static reference and add shared_state for context access
* fmt
* Rename ZombienetConfiguration to PolkadotParachainConfiguration and update related usage
* Add a lighthouse node implementation
* Implement production geth using kurtosis
* Connect the lighthouse node with the platforms
* Update the ci to include cargo fmt
* Add rustfmt to ci
* Add formatting component for macos
* Fix CI
* Add the cargo clippy component
* Install kurtosis in cli
* fix ci
* Skip lighthouse tests in MacOS in CI
* Increase the wait duration of kurtosis
* Allow for downloader to use version requirements.
We will soon add support for the compiler version requirement from the
metadata files to be honored. The compiler version is specified in the
solc modes section of the file and its specified as a `VersionReq` and
not as a version.
Therefore, we need to have the ability to honor this version requirement
and find the best version that satisfies the requirement.
* Request `VersionOrRequirement` in compiler interface
* Honor the compiler version requirement in metadata
This commit honors the compiler version requirement listed in the solc
modes of the metadata file. If this version requirement is provided then
it overrides what was passed in the CLI. Otherwise, the CLI version will
be used.
* Make compiler IO completely generic.
Before this commit, the types that were used for the compiler input and
output were the resolc compiler types which was a leaky abstraction as
we have traits to abstract the compilers away but we expose their
internal types out to other crates.
This commit did the following:
1. Made the compiler IO types fully generic so that all of the logic for
constructing the map of compiled contracts is all done by the
compiler implementation and not by the consuming code.
2. Changed the input types used for Solc to be the forge standard JSON
types for Solc instead of resolc.
* Fix machete
* Add resolc to CI
* Add resolc to CI
* Add resolc to CI
* Add resolc to CI
* pin the version of geth used in CI
* pin the version of geth used in CI
* temp: run on each push
* pin the version of geth used in CI
* Make geth installation arch dependent
* Remove temp run on push to branch
* Add a comment on the need for pre-built binaries