Skip to content

deps(network): sync with upstream yamux#2030

Merged
shamardy merged 2 commits intodevfrom
get-yamux-improvements
Dec 14, 2023
Merged

deps(network): sync with upstream yamux#2030
shamardy merged 2 commits intodevfrom
get-yamux-improvements

Conversation

@onur-ozkan
Copy link
Copy Markdown

From https://github.com/KomodoPlatform/rust-libp2p/blob/port-from-old-impl/muxers/yamux/CHANGELOG.md

yamux v0.13 enables auto-tuning for the Yamux stream receive window. While preserving small buffers on low-latency and/or low-bandwidth connections, this change allows for high-latency and/or high-bandwidth connections to exhaust the available bandwidth on a single stream. Have libp2p-yamux use yamux v0.13 (new version) by default and fall back to yamux v0.12 (old version) when setting any configuration options. Thus default users benefit from the increased performance, while power users with custom configurations maintain the old behavior. libp2p-yamux will switch over to yamux v0.13 entirely with the next breaking release. See libp2p/rust-libp2p#4970.

Additionally, increases the backpressure buffer cap from 25 to 256.

This shouldn't cause any breaking change, but would be nice to release with #1968 and use this version in all seednodes.

Signed-off-by: onur-ozkan <work@onurozkan.dev>
Signed-off-by: onur-ozkan <work@onurozkan.dev>
Copy link
Copy Markdown
Collaborator

@shamardy shamardy left a comment

Choose a reason for hiding this comment

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

Thank you for the fast fix!

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
instant = "0.1.12"
libp2p = { git = "https://github.com/KomodoPlatform/rust-libp2p.git", tag = "k-0.52.1", default-features = false, features = ["dns", "identify", "floodsub", "gossipsub", "noise", "ping", "request-response", "secp256k1", "tcp", "tokio", "websocket", "macros", "yamux"] }
libp2p = { git = "https://github.com/KomodoPlatform/rust-libp2p.git", tag = "k-0.52.2", default-features = false, features = ["dns", "identify", "floodsub", "gossipsub", "noise", "ping", "request-response", "secp256k1", "tcp", "tokio", "websocket", "macros", "yamux"] }
Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Non-blocker but I am wondering why are we still using the fork!

@shamardy
Copy link
Copy Markdown
Collaborator

@Alrighttt @ca333 small dependency change in this PR where yamux 0.12.1 and yamux 0.13.1 are used with the reason described here #2030 (comment)

Copy link
Copy Markdown

@smk762 smk762 left a comment

Choose a reason for hiding this comment

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

No P2P request error: UnsupportedProtocols errors seen in logs since changes applied, noir after restarting.

Copy link
Copy Markdown

@cipig cipig left a comment

Choose a reason for hiding this comment

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

haven't seen any errors after update

@shamardy shamardy merged commit da8a23b into dev Dec 14, 2023
@shamardy shamardy deleted the get-yamux-improvements branch December 14, 2023 11:21
dimxy pushed a commit to dimxy/komodo-defi-framework that referenced this pull request Dec 21, 2023
* dev: (22 commits)
  chore(config): remove vscode launchjson (GLEECBTC#2040)
  feat(trading-proto-upgrade): wasm DB, kickstart, refund states, v2 RPCs (GLEECBTC#2015)
  feat(UTXO): balance event streaming for Electrum clients (GLEECBTC#2013)
  feat(tx): add new sign_raw_transaction rpc for UTXO and EVM coins (GLEECBTC#1930)
  fix(p2p): handle encode_and_sign errors (GLEECBTC#2038)
  chore(release): add changelog entries for v2.0.0-beta (GLEECBTC#2037)
  chore(network): write network information to stdout (GLEECBTC#2034)
  fix(price_endpoints): add cached url (GLEECBTC#2032)
  deps(network): sync with upstream yamux (GLEECBTC#2030)
  fix(config): accept a string as rpcport value (GLEECBTC#2026)
  feat(nft): move db lock, add tx fee and confirmations (GLEECBTC#1989)
  chore(network): update seednodes for netid 8762 (GLEECBTC#2024)
  chore(network): add todo on peer storage behaviour (GLEECBTC#2025)
  chore(network): exclude `168.119.236.249` from the seednode list (GLEECBTC#2021)
  feat(network): deprecate 7777 network (GLEECBTC#2020)
  chore(release): bump mm2 version to 2.0.0-beta (GLEECBTC#2018)
  feat(UTXO swaps): kmd burn plan impl (GLEECBTC#2006)
  chore(docs): fix the link to simple market maker in README.md (GLEECBTC#2011)
  refactor(cli): cli dependency updates and warn on bad config perm (GLEECBTC#1956)
  chore(containers and docs): update docs and container images (GLEECBTC#2003)
  ...

# Conflicts:
#	mm2src/mm2_main/tests/mm2_tests/mm2_tests_inner.rs
#	mm2src/mm2_test_helpers/src/for_tests.rs
dimxy pushed a commit to dimxy/komodo-defi-framework that referenced this pull request Jan 23, 2024
* dev: (24 commits)
  chore(release): bump mm2 version to 2.1.0-beta (GLEECBTC#2044)
  feat(trezor): add segwit support for withdraw with trezor (GLEECBTC#1984)
  chore(config): remove vscode launchjson (GLEECBTC#2040)
  feat(trading-proto-upgrade): wasm DB, kickstart, refund states, v2 RPCs (GLEECBTC#2015)
  feat(UTXO): balance event streaming for Electrum clients (GLEECBTC#2013)
  feat(tx): add new sign_raw_transaction rpc for UTXO and EVM coins (GLEECBTC#1930)
  fix(p2p): handle encode_and_sign errors (GLEECBTC#2038)
  chore(release): add changelog entries for v2.0.0-beta (GLEECBTC#2037)
  chore(network): write network information to stdout (GLEECBTC#2034)
  fix(price_endpoints): add cached url (GLEECBTC#2032)
  deps(network): sync with upstream yamux (GLEECBTC#2030)
  fix(config): accept a string as rpcport value (GLEECBTC#2026)
  feat(nft): move db lock, add tx fee and confirmations (GLEECBTC#1989)
  chore(network): update seednodes for netid 8762 (GLEECBTC#2024)
  chore(network): add todo on peer storage behaviour (GLEECBTC#2025)
  chore(network): exclude `168.119.236.249` from the seednode list (GLEECBTC#2021)
  feat(network): deprecate 7777 network (GLEECBTC#2020)
  chore(release): bump mm2 version to 2.0.0-beta (GLEECBTC#2018)
  feat(UTXO swaps): kmd burn plan impl (GLEECBTC#2006)
  chore(docs): fix the link to simple market maker in README.md (GLEECBTC#2011)
  ...
dimxy pushed a commit to dimxy/komodo-defi-framework that referenced this pull request Feb 18, 2024
* evm-hd-wallet: (27 commits)
  Fix todo comments
  Fix HDAddressOps::Address trait bounds
  fix(indexeddb): fix IDB cursor.continue_() call after drop (GLEECBTC#2028)
  security bump for `h2` (GLEECBTC#2062)
  fix(makerbot): allow more than one prices url in makerbot (GLEECBTC#2027)
  fix(wasm worker env): refactor direct usage of `window` (GLEECBTC#1953)
  feat(nft): nft abi in withdraw_nft RPC, clear_nft_db RPC (GLEECBTC#2039)
  refactor(utxo): refactor utxo output script creation (GLEECBTC#1960)
  feat(ETH): balance event streaming for ETH (GLEECBTC#2041)
  chore(release): bump mm2 version to 2.1.0-beta (GLEECBTC#2044)
  feat(trezor): add segwit support for withdraw with trezor (GLEECBTC#1984)
  chore(config): remove vscode launchjson (GLEECBTC#2040)
  feat(trading-proto-upgrade): wasm DB, kickstart, refund states, v2 RPCs (GLEECBTC#2015)
  feat(UTXO): balance event streaming for Electrum clients (GLEECBTC#2013)
  feat(tx): add new sign_raw_transaction rpc for UTXO and EVM coins (GLEECBTC#1930)
  fix(p2p): handle encode_and_sign errors (GLEECBTC#2038)
  chore(release): add changelog entries for v2.0.0-beta (GLEECBTC#2037)
  chore(network): write network information to stdout (GLEECBTC#2034)
  fix(price_endpoints): add cached url (GLEECBTC#2032)
  deps(network): sync with upstream yamux (GLEECBTC#2030)
  ...
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.

5 participants