multiformats / multiformats/multiaddr

define how to handle `/` in component values when represented as a string

Open
#178 4 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
482
Forks
87
PR merge metrics
No merged PRs in 30d

Description

When a component value has a / in it, it becomes hard to round-trip a multiaddr from bytes to a string and back again, since it's unclear where the value ends and the next protocol component starts.

A growing list of where this is relevant:

Perhaps it's time to specify how to handle this character properly?

Represent it in the string version of a multiaddr as %2F?

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Review the existing /http-path URL-encoding solution, the proposed /unix solution, and the unknown-protocol case described in issue 155. Define a consistent representation for slashes in component values and specify the round-trip behavior, including how unknown protocols are handled.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
networking
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.