ipfs / ipfs/kubo

Missing/incorrect specification for how blocks are stored in the repo

Open
#8,739 0 comments 1 reaction 0 assignees View on GitHub
effort/hours exp/intermediate P2 topic/docs-ipfs
Dominant language
Go
Stars
17.1k
Forks
3.2k
Avg merge
3d 18h
Merged PRs (30d)
11

Description

### Checklist

- [X] I am reporting a documentation issue in this repo, not https://docs.ipfs.io.
- [X] I have searched on the [issue tracker](https://github.com/ipfs/go-ipfs/issues?q=is%3Aissue) for my issue.

### Location

_No response_

### Description

Currently the only documentation I'm aware of that explains the layout of the go-ipfs repo, and in particular the blockstore, is README that lives inside of FlatFS repos https://github.com/ipfs/go-ds-flatfs/blob/f0750204617b5b0cfb414c38ce486bf9f01963bb/readme.go.

Not only is that the wrong place to put that documentation (since some of it applies regardless of the backing datastore), but it's also incorrect post v0.12.0 and the CID -> multihash migration for the blockstore. We should put a doc in this repo that explains at the very least the blockstore layout if not more generally the repo.

Some of this information lives in ipfs/specs currently although that seems to be the wrong place as it is implementation specific. Examples include https://github.com/ipfs/specs/blob/master/REPO.md and https://github.com/ipfs/specs/blob/master/REPO_FS.md. These may also be very out of date.

Some repo behavior might belong in ipfs/specs (e.g. the API file and corresponding environment variables, or things like ipfs/go-ipfs#8847), but probably not all of it.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.