Skip to content

Conversation

@f321x
Copy link
Member

@f321x f321x commented Jun 16, 2025

Adds the mempool.get_info rpc to fetch mempoolminfee, minrelaytxfee
and incrementalrelayfee from the daemons getmempoolinfo rpc.
Updates the relayfee comments as the fee returned by
blockchain.relayfee doesn't guarantee to get into the mempool as
previously stated in the docstrings.

Part of spesmilo/electrum-protocol#6

@f321x f321x force-pushed the mempoolminfee branch 2 times, most recently from 105ad84 to e5bae4d Compare June 17, 2025 08:44
@f321x f321x marked this pull request as ready for review June 17, 2025 08:44
@f321x f321x changed the title wip: implements mempoolminfee and clarifies comments of relayfee implements mempoolminfee and clarifies comments of relayfee Jun 17, 2025
@f321x f321x changed the title implements mempoolminfee and clarifies comments of relayfee implements mempool.get_info and clarifies comments of relayfee Oct 22, 2025
@cculianu
Copy link
Contributor

Leaving a note here that I can also add this to Fulcrum if ElectrumX gets this call merged in ; I’d add it just to make life easier for wallets.

Adds the `mempool.get_info` rpc to fetch mempoolminfee, minrelaytxfee
and incrementalrelayfee from the daemons getmempoolinfo rpc for protocol
version 1.6.
Updates the relayfee comments as the fee returned by
`blockchain.relayfee` doesn't guarantee to get into the mempool as
previously stated in the docstrings.
@cculianu
Copy link
Contributor

cculianu commented Oct 23, 2025

Are there other methods added for 1.6 that I should know about ?

where is the latest repo for the protocol methods docs maintained ?

I figure as long as I’m adding this and bumping it to 1.6 I should implement all of 1.6 for fulcrum

edit: never mind found it — you linked to it at top! Ha.

Comment on lines 1673 to 1677
if ptuple >= (1, 6, 0):
handlers['blockchain.transaction.broadcast_package'] = self.package_broadcast
handlers['mempool.get_info'] = self.mempool_info
else:
handlers['blockchain.relayfee'] = self.relayfee # removed in 1.6
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

self-note: the PR does not bump PROTOCOL_MAX, which is good, as that means protocol 1.6 is not exposed and we can merge this without implementing all of 1.6, or merge it before 1.6 is finalised.

PROTOCOL_MAX = (1, 4, 3)

@SomberNight SomberNight added this to the protocol 1.6 milestone Oct 23, 2025
Guards the new `blockchain.transaction.broadcast_package` and
`mempool.get_info` methods of protocol 1.6 behind this versions ptuple
in `set_request_handlers` so they are only exposed in protocol versions
>= 1.6. Also stops exposing the `blockchain.relayfee` endpoint for
version >= 1.6 as it got removed in 1.6.
@SomberNight SomberNight merged commit 2c41a23 into spesmilo:master Oct 23, 2025
3 checks passed
@SomberNight
Copy link
Member

Looks good. Thanks!

@f321x f321x deleted the mempoolminfee branch October 23, 2025 14:20
SomberNight added a commit that referenced this pull request Nov 7, 2025
This implements the remainder of the protocol 1.6 changes,
and it bumps PROTOCOL_MAX to "1.6".

Some of protocol 1.6 was merged previously, see e.g.:
- #288
- #302
- kyuupichan/electrumx#1001
- #325

ref spesmilo/electrum-protocol#6
ref #317
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

Successfully merging this pull request may close these issues.

3 participants