Skip to content
This repository has been archived by the owner on Sep 30, 2024. It is now read-only.

Support up-to-date solidity version and geth version #94

Open
JohnGuilding opened this issue Sep 18, 2023 · 1 comment
Open

Support up-to-date solidity version and geth version #94

JohnGuilding opened this issue Sep 18, 2023 · 1 comment

Comments

@JohnGuilding
Copy link
Contributor

JohnGuilding commented Sep 18, 2023

We are currently targeting solidity version 0.8.12 and running geth v1.10.26 for our Safe integration tests.

We may want to target an up-to-date solidity version and geth node to ensure we're running an up-to-date testing environment.

One change we had to make to the FCL libraries for the webauthn signatures is we had to target solidity version ^0.8.12 instead of ^0.8.20 which is the original solidity version. So if we want to remove all changes to the FCL libs, we need to support this solidity version. The eth-infinitism bundler readme still mentions using geth v1.10.26 when running locally. Apparently the eth-infinitism bundler may be not be the best source of truth for bundlers so we may not want to go off this. Either way, I expect we'll need use an up-to-date testing environment at some point.

Initial attempt

I tried updating solidity to 0.8.20 but ran into an error deploying the contracts in script/start.sh. My current assumption is that solidity 0.8.20 targets the shanghai hardfork by default. The current geth node we're starting in script/start.sh is a version of geth that does not support shanghai. I was able to start the node and deploy contracts successfully when targeting a more recently version of geth (At the time of writing that appears to be Zakros (v1.13.1) when using the ethereum/client-go:stable docker image).

I then had two errors when using a more recent version of geth - so I had to remove both of the following flags from the start.sh script:
flag provided but not defined: -ignore-legacy-receipts
flag provided but not defined: -miner.threads

We should make sure we're happy with the flags used when starting the geth node given this update.

Once I had updated the solidity version, pulled a more recently version of geth, and removed those two flags, I then ran into two of the following error when running the integration tests (one with the SafeECDSAPlugin and the other with the SafeWebAuthnPlugin test):

Error: could not decode result data (value="0x", info={ "method": "proxyCreationCode", "signature": "proxyCreationCode()" }, code=BAD_DATA, version=6.6.7)

I'm didn't look into this error further. This is as far as I investigated before raising this issue

@JohnGuilding JohnGuilding converted this from a draft issue Sep 18, 2023
@JohnGuilding JohnGuilding changed the title Support up-to-date solidity version and geth node Support up-to-date solidity version and geth version Sep 18, 2023
@jacque006
Copy link
Contributor

@JohnGuilding I took care of the geth version bump in af09f03

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
Status: 📋 Backlog
Development

No branches or pull requests

2 participants