-
Notifications
You must be signed in to change notification settings - Fork 1.1k
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
libp2p reuse #42
Comments
@mjgarton i've definitely thought about this, and the easy solution is to run To this end, making the convention for gx packages to be pushed up without their dependencies changed to the gx paths would be a good start. |
The obvious downside here is that if we make go-libp2p 'go getable' then anyone who doesnt use it with the gx vendored deps would be affected by upstream changes in any of the deps. |
True, but that's the expected (least surprising) behaviour in the golang world anyway. And people could use standard golang vendoring to achieve fixed versions. I tried
What did I do wrong? |
@martingartonft I think you'll have to install once in order for rewrite --undo to work. It seems to require the packages being present locally. |
I should do better with that error message... |
FWIW I was going to mess with libp2p today but upon seeing that I'll need to figure out gx I ended up deferring it to another day. Would be nice if gx was an optional bonus rather than a requirement. Some related conversation here: shazow/ssh-chat#140 (comment) |
I have to say, I've done the same for now (deferring) gx does seem a really nice tool, but to a newcomer and someone just looking for a nice core p2p library to go-get and use, it's possibly enough to put people off quickly, which is a shame. Once ipfs is everywhere it will make more sense (and for building ipfs itself it makes sense now) |
ask and you shall receive: #40 |
thanks @whyrusleeping I will let you know although i wont have more time to look at this for a couple of weeks or so. |
@whyrusleeping Trying it out but there are no real overarching docs or working examples (libp2p-examples is outdated). Any pointers? |
(I'm pretty sure it's currently broken without gx due to some changes being pushed through the stream muxer libraries) |
I really like this library. But sincerely I aborted using it in two projects because of the necessity of using gx to pull all required dependencies. |
Could you submit a bug report describing what you mean by "just breaks everything"? It's supposed to "just work" so that's a bit of a problem 🙁. Note: I do agree that gx has many problems (especially around updating dependencies) but it shouldn't, generally, break things. If you're running into a situation with conflicting dependencies, try running |
A small update here just in case readers haven't noticed, but you don't need to use gx to use libp2p at this point. It should be entirely go get'able (unless we're in the middle of an update, but thats expected since its go). Feel free to use your own method of saving all of your exact set of dependencies such as saving everything into your git repo with dep, or venturing forward and figuring out how vgo is supposed to work :) We will continue to use gx for 'official' dependency sets, and in the future are planning compatibility between gx and vgo, but gx should in no way get in your way while using go-libp2p. |
Blank host should support signed records
Use new constructor for insecure transport in tests
update to match new ExtractPublicKey API
include current limits in debug messages
* bring back plaintext 2.0.0 with new constructor * fix deprecation comment * rm unused context argument * only check remote id validity if we actually have keys * bring back msgio & simultaneous read/write
libp2p strikes me as an excellent package to have extracted out of ipfs for greater re-use in other projects. (which I believe was the plan!)
However, many other projects want the flexibility of being able to "go get" and of using standard go vendoring support for their dependencies. Do you think of gx here (and therefore a dependency on ipfs also) would put people off from re-using libp2p?
It's certainly made me think before using. I fully understand why you have done it, and I really like gx actually, but for a "core" library like this, I think better adoption would be achieved by working hard to minimise dependencies.
The text was updated successfully, but these errors were encountered: