specs icon indicating copy to clipboard operation
specs copied to clipboard

Move IPFS addressing spec to ipfs/specs

Open lidel opened this issue 6 years ago • 6 comments

The best and up-to-date source of truth about IPFS addressing right now is in ADDRESSING.md memo.

As more and more people add IPFS support to their software, especially on the web, we should decrease noise and increase signal around addressing by adding proper technical spec doc to the ipfs/specs repo, as suggested in https://github.com/ipfs/specs/issues/138.

Timeline

TODO

  • [ ] create a new PR to ipfs/specs (consolidate technical content from Prior Art) (https://github.com/ipfs/specs/blob/master/DWEB_ADDRESSING.md, reuse https://github.com/ipfs/specs/pull/152)
    • [ ] PR should aim to close https://github.com/ipfs/specs/issues/138
    • [ ] close https://github.com/ipfs/specs/pull/139 and point at new PR
  • [ ] ensure it covers /ipns/ as well (https://github.com/ipfs/go-ipfs/issues/5287, https://github.com/ipfs/in-web-browsers/issues/118)
  • [ ] get it merged to ipfs/specs repo
  • [ ] update ADDRESSING.md to point at the doc in ipfs/specs
  • [ ] close remaining issues/PRs about addressing with comment pointing at document in specs repo (add links below so we don't forget)
    • [ ] https://github.com/ipfs/interface-js-ipfs-core/issues/287
    • [ ] https://github.com/ipfs/docs/issues/91
    • [ ] https://github.com/ipfs/go-ipfs/issues/1678
    • [ ] https://github.com/ipfs/in-web-browsers/issues/118
    • [ ] https://github.com/ipfs/specs/issues/138
    • [ ] https://github.com/ipfs/in-web-browsers/issues/6
  • [ ] identify remaining content from Prior Art that could be extracted into ipfs/blog post or less technical ipfs/docs

cc https://github.com/ipfs/in-web-browsers/issues/118 https://github.com/ipfs/in-web-browsers/issues/3 ipfs/ipfs#227 ipfs/in-web-browsers#4 ipfs/in-web-browsers#28 https://github.com/ipfs/specs/pull/139 @autonome

lidel avatar May 16 '19 11:05 lidel

ip[nf]s://<domain.name>/object

Retrieval would be processed as "DNS look up domain.name IN TXT, resolve resulting IPFS/IPNS identifier, retrieve object".

I was reading this, hoping to find just that. IPFS wants to get away from hosting locations for reasons of persistency, but IPNS is different. I love the idea of using DNS (and DNSSEC) and getting very powerful bookmarks:

  1. Stored domain name, for human reference where it once originated from
  2. Stored IPNS key, so we can lookup the names from anyone who pins them, along with new versions from the same origin
  3. Stored IPFS hash, so we can retrieve the version that we bookmarked for as long as it is pinned

I will add the spec to my reading list, it's useful stuff!

vanrein avatar May 18 '19 15:05 vanrein

@lidel: double-check that you want me to move this issue to /ipfs/specs/, correct?

hsanjuan avatar Apr 01 '20 14:04 hsanjuan

@hsanjuan correct

lidel avatar Apr 01 '20 15:04 lidel

Is this grammar a relevant resource? https://github.com/jonnycrunch/ipfs-uri-scheme/blob/master/application.md#3-uri-scheme-registration

jchris avatar Feb 18 '22 13:02 jchris

I believe this grammar was created with intent to get IANA registration, but in the end was not needed because rules changed and IANA request we used had different form: https://github.com/fred-wang/iana-uri-schemes-provisional-registration-requests/blob/master/ipfs.txt

lidel avatar Feb 18 '22 13:02 lidel

2022-03-01 discussion: we may add an issue for separating out the gateway tests that are in go-ipfs so have a "poor-mans" compliance test suite for gateway implementations.

BigLep avatar Mar 01 '22 17:03 BigLep