Skip to content
This repository has been archived by the owner on Jun 20, 2023. It is now read-only.

Improve go-namesys documentation #1

Merged
merged 4 commits into from
Feb 19, 2021
Merged

Improve go-namesys documentation #1

merged 4 commits into from
Feb 19, 2021

Conversation

hsanjuan
Copy link
Contributor

No description provided.

@hsanjuan hsanjuan self-assigned this Feb 19, 2021
publisher.go Outdated
// PutRecordToRouting publishes the given entry using the provided ValueStore,
// using the ID associated to the provided public key and embedding the public
// key in the IPNS entry when it cannot be extracted from the ID. In that
// case, it calls PublishPublicKey in addition to PublishEntry.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In that case, it calls PublishPublicKey in addition to PublishEntry.

This is true, although it's something we may drop as more of the IPFS DHT upgrades as it needlessly slows down publishes.

Unfortunately, the comment below about waiting for go-ipfs v0.4.16 to be widespread was overly optimistic as the code was still bugged and was only fixed in ipfs/kubo#7549 (go-ipfs v0.7.0). All this is just to say that no one should be relying on this behavior as part of the function contract.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should I change the godoc line and not mention the embedding part?

Copy link
Contributor

@aschmahmann aschmahmann Feb 19, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, IMO a library developer doesn't need to be aware of all the optimization details here (i.e. smaller Ed25519 keys will save a bunch of space compared with larger RSA keys). Continuing below where we can use GitHub suggestions (my bad for not referencing the whole block in my initial comment).

[![Travis CI](https://travis-ci.com/ipfs/go-namesys.svg?branch=master)](https://travis-ci.com/ipfs/go-namesys)


> go-namesys provides publish and resolution support for the /ipns/ namespace

go-namesys allows to publish and resolve IPNS records or dnslink domain names.
Package namesys defines `Resolver` and `Publisher` interfaces for IPNS paths, that is, paths in the form of `/ipns/<name_to_be_resolved>`. A "resolved" IPNS path becomes an `/ipfs/<cid>` path.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

SGTM.

Note: we probably want to allow access to partial resolutions (or returning the full resolution path), but that's later 😄

Copy link
Contributor

@aschmahmann aschmahmann left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Left a couple comments, but overall LGTM. Thank you 🙏

publisher.go Outdated Show resolved Hide resolved
Co-authored-by: Adin Schmahmann <[email protected]>
@hsanjuan hsanjuan merged commit 1340654 into master Feb 19, 2021
@hsanjuan hsanjuan deleted the feat/docs-linting branch February 19, 2021 22:53
guseggert pushed a commit to ipfs/boxo that referenced this pull request Dec 6, 2022
Improve go-namesys documentation

This commit was moved from ipfs/go-namesys@1340654
Jorropo pushed a commit to ipfs/go-libipfs-rapide that referenced this pull request Mar 23, 2023
Improve go-namesys documentation

This commit was moved from ipfs/go-namesys@1340654
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants