fix: Inability to default to the utp peer type #2805
Draft
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What is the purpose of this pull request? (put an "X" next to item)
What changes did you make? (Give an overview)
Currently, due to
host
only being defined whenclient.blocked
is truthy andclient.blocked
only being truthy whenopts.blocklist
is passed to the construction of the client, we could only successfully default to utp in edge cases.webtorrent/lib/torrent.js
Lines 843 to 870 in 45b3b1a
webtorrent/index.js
Lines 170 to 183 in 45b3b1a
In this PR, I make changes to ensures we always populate
host
, which allows the correct peer type to be defaulted.Note: Defaulting to uTP in WebTorrent's current implementation, if a peer only supports TCP, it would take >21 seconds to fall back to a TCP connection. Due to this, I would recommend holding off this for the moment.
Which issue (if any) does this pull request address?
Is there anything you'd like reviewers to focus on?