Development resources at your finger tips
Build with the coolest Web3 projects
Recurring funding for Open Source
Learn about Web3 & earn rewards
Show appreciation for each other
Meet fellow developers, designers, futurists and more. Collaborate and BUIDL awesome projects together.
Discover great web3 organizations, work on meaningful projects and build relationships with like minded people. Browse Tribes
Meet the top hunters and contributors from our community.
In partnership with Protocol Labs, we’re excited to welcome builders from everywhere to APOLLO, your mission control to engage with the builder…
We’re excited to publically announce that Matic Network is partnering with Gitcoin to launch the Build-n-Earn Program – assisting dApps t…
Gitcoin is GDPR complaint. Learn more in
Gitcoin's Terms & Conditions.
Check out the Issue Explorer
Looking to fund some work? You can submit a new Funded Issue here.
## Problem Definition
If no `geth` binary is installed (or not on the `PATH`) on the user's system and no `RST_GETH_BINARY` env variable is defined `raiden smoketest` will fail with the following exception:
1/5] getting smoketest configuration
[2/5] starting ethereum
Traceback (most recent call last):
File "build/raiden/raiden-script.py", line 2, in
File "raiden/__main__.py", line 11, in main
File "click/core.py", line 722, in __call__
File "click/core.py", line 697, in main
File "click/core.py", line 1066, in invoke
File "click/core.py", line 895, in invoke
File "click/core.py", line 535, in invoke
File "click/decorators.py", line 17, in new_func
File "raiden/ui/cli.py", line 829, in smoketest
File "raiden/tests/utils/smoketest.py", line 315, in start_ethereum
File "string.py", line 130, in substitute
File "string.py", line 123, in convert
File "os.py", line 669, in __getitem__
The reason is that https://github.com/raiden-network/raiden/blob/86d19e6bed94043b0982e26b82264a0e55ab5c97/raiden/tests/utils/smoketest.py#L315 uses `os.environ` as the substitution dict and `DEFAULT_ETH_COMMAND` contains `$RST_GETH_BINARY` which won't be set if `distutils.spawn.find_executable()` returns `None`.
Verify that `geth` is available and if it isn't, inform the user with an actionable error message.
- [ ] Verify geth is available in smoketest
- [ ] Notify user and abort if it isn't
- [ ] Add a changelog entry.