Skip to content

Bump bip324 to v0.10#909

Merged
Davidson-Souza merged 1 commit intogetfloresta:masterfrom
luisschwab:chore/bump-bip234-v0.10
Mar 27, 2026
Merged

Bump bip324 to v0.10#909
Davidson-Souza merged 1 commit intogetfloresta:masterfrom
luisschwab:chore/bump-bip234-v0.10

Conversation

@luisschwab
Copy link
Copy Markdown
Member

@luisschwab luisschwab commented Mar 19, 2026

Bumps bip324 to v0.10.

Changelog

- Bump `bip324` from v0.7.0 to v0.10
  - `AsyncProtocol` is moved to `futures::Protocol`
  - `ReadTransport::V2` and `WriteTransport::V2` now own the stream
  - `read_and_decrypt` is renamed to `read`
  - `encrypt_and_write` is renamed to `write`
  - Shutting down the V2 transport becomes a no-op, as each message is immediately flushed to the buffer

@luisschwab luisschwab self-assigned this Mar 19, 2026
@luisschwab luisschwab added the chore Cleaning, refactoring, reducing complexity label Mar 19, 2026
@github-project-automation github-project-automation bot moved this to Backlog in Floresta Mar 19, 2026
@luisschwab luisschwab added this to the Q2/2026 milestone Mar 19, 2026
@luisschwab luisschwab moved this from Backlog to Needs review in Floresta Mar 19, 2026
Copy link
Copy Markdown
Collaborator

@csgui csgui left a comment

Choose a reason for hiding this comment

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

Left a comment about the "absence" of shutdown in the new protocol API.

@luisschwab luisschwab requested a review from csgui March 20, 2026 18:35
@Davidson-Souza
Copy link
Copy Markdown
Member

Could you leave a brief changelog from v0.8 in the PR description?

@luisschwab
Copy link
Copy Markdown
Member Author

@Davidson-Souza done!

@luisschwab
Copy link
Copy Markdown
Member Author

We could move this to v0.9.0 as well.

@Davidson-Souza Davidson-Souza modified the milestones: Q2/2026, v0.9.0 Mar 23, 2026
@Davidson-Souza
Copy link
Copy Markdown
Member

I wonder if those changes will allow us to remove the ping hack from functional tests for V2 🤔. Something to try in a follow-up

@luisschwab
Copy link
Copy Markdown
Member Author

Ping hack?

Copy link
Copy Markdown
Member

@Davidson-Souza Davidson-Souza left a comment

Choose a reason for hiding this comment

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

ACK 5d21626; Finished IBD on signet with only V2 peers and it works fine!

@Davidson-Souza
Copy link
Copy Markdown
Member

Ping hack?

bip324 seems to take a while to figure out a peer disconnected. So we keep sending some pings until it realizes the other side died. I wonder if the more frequent flushing will fix this, but I doubt.

@luisschwab
Copy link
Copy Markdown
Member Author

Worth opening an issue there to let them know.

@luisschwab luisschwab force-pushed the chore/bump-bip234-v0.10 branch from 5d21626 to 79d18fd Compare March 25, 2026 15:26
@Davidson-Souza Davidson-Souza mentioned this pull request Mar 25, 2026
20 tasks
@luisschwab luisschwab force-pushed the chore/bump-bip234-v0.10 branch from 79d18fd to b6f5a09 Compare March 27, 2026 15:59
@luisschwab luisschwab requested a review from JoseSK999 March 27, 2026 15:59
@luisschwab
Copy link
Copy Markdown
Member Author

Aaaand shitty GH CI strikes once more!

@luisschwab luisschwab force-pushed the chore/bump-bip234-v0.10 branch from b6f5a09 to ddbe6a5 Compare March 27, 2026 16:13
Copy link
Copy Markdown
Member

@Davidson-Souza Davidson-Souza left a comment

Choose a reason for hiding this comment

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

re-ACK ddbe6a5

@JoseSK999
Copy link
Copy Markdown
Member

This means the peer doesn't support P2Pv2 no?

ERROR floresta_wire::p2p_wire::transport: Failed to establish a P2PV2 connection over SOCKS5 proxy=127.0.0.1:9050 with peer=Ipv4(95.217.198.121): Io(Custom { kind: UnexpectedEof, error: "early eof" }, RetryV1)

@Davidson-Souza
Copy link
Copy Markdown
Member

This means the peer doesn't support P2Pv2 no?

ERROR floresta_wire::p2p_wire::transport: Failed to establish a P2PV2 connection over SOCKS5 proxy=127.0.0.1:9050 with peer=Ipv4(95.217.198.121): Io(Custom { kind: UnexpectedEof, error: "early eof" }, RetryV1)

Or killed the connection for, eg., having too many connections already

@luisschwab luisschwab force-pushed the chore/bump-bip234-v0.10 branch from ddbe6a5 to 1ebc1c1 Compare March 27, 2026 18:50
@luisschwab
Copy link
Copy Markdown
Member Author

Pushed 1ebc1c1 fixing a nit in the proxy logs.

@JoseSK999
Copy link
Copy Markdown
Member

Then replace the second with -> and

@luisschwab luisschwab force-pushed the chore/bump-bip234-v0.10 branch from 1ebc1c1 to f9085be Compare March 27, 2026 19:04
@luisschwab
Copy link
Copy Markdown
Member Author

I think this is better:

Established a P2PV1 connection over SOCKS5 using proxy={proxy_addr:?} with peer={target_addr:?}

Copy link
Copy Markdown
Member

@JoseSK999 JoseSK999 left a comment

Choose a reason for hiding this comment

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

ACK f9085be

Copy link
Copy Markdown
Member

@Davidson-Souza Davidson-Souza left a comment

Choose a reason for hiding this comment

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

ACK f9085be

@Davidson-Souza Davidson-Souza merged commit 146e1b1 into getfloresta:master Mar 27, 2026
11 checks passed
@github-project-automation github-project-automation bot moved this from Needs review to Done in Floresta Mar 27, 2026
@luisschwab luisschwab deleted the chore/bump-bip234-v0.10 branch March 27, 2026 20:41
@0xB10C
Copy link
Copy Markdown

0xB10C commented Mar 28, 2026

Ping hack?

bip324 seems to take a while to figure out a peer disconnected. So we keep sending some pings until it realizes the other side died. I wonder if the more frequent flushing will fix this, but I doubt.

I think the read() side should be fixed with rust-bitcoin/bip324#160 (on master) but there's still something weird going on the write() side rust-bitcoin/bip324#164 (comment).

Just don't assume something you've written has actually reached the other side. Closing the connection on read() returning an error should be fine.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

chore Cleaning, refactoring, reducing complexity

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

5 participants