Closed resession closed 10 months ago
this error is stemming from updates that has been made to https://github.com/webtorrent/node-bencode
this is an issue caused by ed25519-supercop
not DHT?...
this is an issue caused by
ed25519-supercop
not DHT?...
yes but it is because ed25519-supercop
expects either a string or buffer, but bittorrent-dht/bencode.encode() is returning a Uint8Array
https://github.com/webtorrent/bittorrent-dht/blob/master/client.js#L781C22-L781C22
check index.js, line 28 https://www.npmjs.com/package/ed25519-supercop?activeTab=code
else if (!Buffer.isBuffer(message)) {
throw new Error('message must be a buffer or a string')
}
its throwing the error because bittorrent-dht/bencode is returning a Uint8Array, Buffer.from(Uint8Array)
fixes it
once again, this should be fixed on ed25519-supercop
's end, not bittorrent-dht
's end, or you can simply wrap ed25519 using buffer.from like you said
uint8array is a perfectly valid way of storing uint8 data, and unlike buffer it's cross env compatible, and as we plan on implementing DHT in web one day, Buffer would end up being removed anyways
What version of this package are you using? 11.0.5
What operating system, Node.js, and npm version? ubuntu and windows
What happened? throw error
What did you expect to happen? return bep 44 data such as ih(infohash)
Are you willing to submit a pull request to fix this bug? if it is easier to fix, might need guidance
when putting/getting mutable BEP 44 data
the following
throws the following error, getting BEP 44 data is broken