Skip to content
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

maxPriorityFeePerGas broken on Harmony #2237

Closed
pikeas opened this issue Dec 6, 2021 · 7 comments
Closed

maxPriorityFeePerGas broken on Harmony #2237

pikeas opened this issue Dec 6, 2021 · 7 comments

Comments

@pikeas
Copy link

pikeas commented Dec 6, 2021

Working under 5.24, seems to be related to the changes introduced by #2205 in 5.25.

@kclowes
Copy link
Collaborator

kclowes commented Dec 6, 2021

Can you post the error you're seeing?

@pikeas
Copy link
Author

pikeas commented Dec 6, 2021

It should be reproducible with any call to [contract].functions.[function].transact() - this uses default values, and one of those defaults uses the priority fee RPC call, which fails.

@kclowes
Copy link
Collaborator

kclowes commented Dec 6, 2021

Got it. So Harmony doesn't support maxPriorityFeePerGas RPC endpoint?

@pikeas
Copy link
Author

pikeas commented Dec 6, 2021

Got it. So Harmony doesn't support maxPriorityFeePerGas RPC endpoint?

That does seem to be the case. I'm not an expert on Harmony, hopefully someone with more experience can chime in with a definitive answer.

@kclowes
Copy link
Collaborator

kclowes commented Dec 6, 2021

If they support EIP-1559 style transactions (a.k.a. dynamic fee transactions) but just not the maxPriorityFeeEndpoint, I would try sending in a value for maxPriorityFeePerGas to see if that works. Otherwise the workaround is to manually pass in legacy parameters.

@fselmo
Copy link
Collaborator

fselmo commented Dec 7, 2021

Harmony isn't expected to work with the eth module out of the box. From a quick glance it looks like using gasPrice is the way to go for Harmony transactions (and this will bypass any calls to max fee endpoints) though you are likely to still run into issues that may need to be built out in order to support Harmony.

We have some ideas in the works to import custom providers / modules in the future but, for now, support for Harmony is not guaranteed. I suggest finding a Harmony developer community or joining the Ethereum Python Community discord as there may be other users out there using Harmony who could help out.

Closing as this is does not look to be an issue with web3.py. Please re-open if you think closing this was in error. Best of luck.

@fselmo fselmo closed this as completed Dec 7, 2021
@guoyiteng
Copy link

Hi, I'd like to add that eth_maxPriorityFeePerGas isn't part of ETH JSON-RPC spec. It is an endpoint Geth added on its own. Clearly some ETH providers don't have a plan to add it NomicFoundation/hardhat#1664. Maybe using eth_feeHistory is a better idea since it's part of the spec?

Also, it would be great if this can be a built-in middleware so that users could choose between eth_maxPriorityFeePerGas (or eth_feeHistory) and eth_gasPrice based on the chain they want to use.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants