-
Notifications
You must be signed in to change notification settings - Fork 182
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use OffchainLabs/go-ethereum fork #2470
Conversation
Arbitrum Nitro requires to use their fork.
Looks like this PR is against @leszko Could this dependency update have any negative side effects for go-livepeer releases connecting to |
Similarly to @yondonfu's comment, do you know if they have any plans to merge their fork back into master? If not, then we'll be reliant on them rebasing off anything that comes into mainline |
If they merge it upstream, that would be the best for us. However, they currently don't know if it's going to be merged upstream. Here's the comment from the related Discord conversation:
Now, what we can do about it?
I'm leaning towards Point 1, because of the following reasons:
Apart from that, Arbitrum uses their fork, so I believe it may be actually even safer to use for the current Mainnet. Wdyt? @yondonfu @thomshutt |
👍 Makes sense and looks like they are keeping it reasonably up to date vs. the original go-ethereum. Happy for you two to make a call on this |
From glancing at the OffchainLabs/go-ethereum commit history, it looks like the last time it was synced with upstream ethereum/go-ethereum was for the v1.10.17 release OffchainLabs/go-ethereum@7dc8af1. From glancing at the ethereum/go-ethereum commit history since the v1.10.17 there are at least a few commits that are associated with the packages we use i.e.
I have not gone through the details of any of the commits to confirm that they include fixes or features that are important for us. However, I think it is worth noting the following:
Given the above considerations, I could see a scenario where we switch to the OffchainLabs fork, but then realize we want to pull in some of the upstream commits relevant to the packages we depend on. At that point, the best option would likely be to merge upstream/cherry-pick commits into our own fork based off of the OffchainLabs fork. Since Nitro is still under development and the timeline for Nitro mainnet is still TBD, I am inclined to not use the OffchainLabs fork right now to avoid introducing headaches around the above in the short term and instead letting development of Nitro proceed a bit and we can always switch to the OffchainLabs fork at a later point in time (we don't necessarily need to wait until the Nitro upgrade on mainnet - we could just wait until we get a little closer to then) and figure out the right strategy for combining more recent relevant commits from upstream with the required Arbitrum commits in the OffchainLabs fork. I believe this lines up with option 2 suggested by @leszko. |
Ok, then let's keep this PR (and the branch) open for now and see how it goes with the Arbitrum fork. Maybe they'll merge upstream. Or maybe they'll pull the current |
I checked again the current master of go-livepeer and it seems to work correctly on Arbitrum Testnet Nitro. That means that Arbitrum fixed the issue with the incompatible transaction format, and therefore we do not need to merge the OffchainLabs/go-ethereum PR. Closing this PR. |
What does this pull request do? Explain your changes. (required)
Arbitrum Nitro requires to use their fork of
go-ethereum
to run Arbitrum Nitro. Please check the related Discord discussion.Specific updates (required)
go-ethereum
dependency to useOffchainLabs
fork instead ofethereum/go-ethereum
.How did you test each of these updates (required)
Run
go-livepeer
in Arbitrum Nitro Devnet.Does this pull request close any open issues?
N/A
Checklist:
make
runs successfully./test.sh
passREADME and other documentation updated