Uh oh!
There was an error while loading. Please reload this page.
Document MultiAddr codecs implemented by py-multiaddr - #101
Conversation
ntninja
commented
Oct 3, 2019
@Stebalien@lgierth: Bump. What trick would I have to use to realistically get some discussion/feedback on this with everybody being so busy? 🙃 |
ShadowJonathan
commented
Jan 10, 2020
Bump, I believe this is a useful addition to the repo. |
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
| Encodes a libp2p node address. | ||
| TBD: Is this really always a base58btc encoded string of at least 5 characters in length!? |
There was a problem hiding this comment.
It's anything that parses as a peer ID (the canonical encoding is now actually a libp2p key CID): https://github.com/libp2p/specs/blob/master/peer-ids/peer-ids.md.
There was a problem hiding this comment.
At least the go implementation does not follow that spec at all but just expects everything to be base58btc: https://github.com/multiformats/go-multiaddr/blob/master/transcoders.go#L293-L315
If your saying that is just a bug to be fixed, I'll be happy to update this text and py-multiaddr accordingly. 🙂
There was a problem hiding this comment.
That spec also fails to mention that some IDs are still encoded with 1 as first character, which is also CIDv0
There was a problem hiding this comment.
@Alexander255 correct (well, not a bug so much as something we need to implement).
@ShadowJonathan also correct. I'll take a stab at fixing the spec.
There was a problem hiding this comment.
@Stebalien: I just tried to implement that spec in Python and there is no guidance in there what to do with binary CIDv0 IDs. I assume they are detected (similar to their string format) using len(buf) == 34 and buf.startswith(b"\x12\x20")?
Uh oh!
There was an error while loading. Please reload this page.
…ecified and add wording about path delimiter conversion for Windows
ntninja
commented
Aug 14, 2020
@Stebalien: I've updated the description of |
Inspired by the Python code I wrote with lots of references to relevant specs.