Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Package Extraction Strategy #5304

Closed
whyrusleeping opened this issue Jul 29, 2018 · 5 comments
Closed

Package Extraction Strategy #5304

whyrusleeping opened this issue Jul 29, 2018 · 5 comments

Comments

@whyrusleeping
Copy link
Member

I'm currently extracting a few packages that will make building tooling on top of ipfs much simpler. things like iptb, ipget, car (not published yet), filecoin, and others currently depend on a bunch of stuff that means they have to import go-ipfs in its entirety. In addition, it means they are forced to deal with gx, which is currently pretty inconvenient for just hacking something together.

So things are getting pulled out into a bunch of separate repos.

However, i'm not overly happy with the packages that are being extracted. Some these packages should be combined together into a single larger package, and some should be torn apart, and/or have their functionality be provided by another package.

Some examples that i've been thinking about:

go-merkledag (previously go-ipfs/merkledag) should probably have a bunch of its code merged down into go-ipld-format, some of it should be moved to a package specific for the protobuf ipld node, and some of it should find a home as a general ipld traversal package (possibly as a subpackage of go-ipld-format).

go-verifcid should just be deprecated in favor of this logic moving into the go-cid package.

go-blockservice should get deprecated as a result of us unifying it with the 'blockstore' interface. The blockservice should just be a blockstore thats also partially backed by a 'block exchange'.

There are other packages that should get similar treatments too.

@whyrusleeping
Copy link
Member Author

@Stebalien @schomatis @magik6k I need to extract the importers and unixfs. I'm thinking of just making it all into one big go-unixfs package. Any objections?

@magik6k
Copy link
Member

magik6k commented Jul 30, 2018

Since importers and unixfs depend on each other, I guess it's fine.

@schomatis
Copy link
Contributor

SGTM.

@Stebalien
Copy link
Member

SGTM

@schomatis
Copy link
Contributor

Extraction completed! 🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants