5 ms·
> I love Go, used it a lot for over 3 years. I love the simplicity, directness, the inline structs, but I still cannot get out of the package management mess.
by 0x8BADF00D 8y ago
> I love Go, used it a lot for over 3 years. I love the simplicity, directness, the inline structs, but I still cannot get out of the package management mess.
The problem is the package managers available are fragmented and fundamentally incompatible. You have dep which is the official “experiment” and 10 others that share no compatibility whatsoever. Until there is either an official package manager or at least a standardization of the package format, you will run into these issues.
- mseepgood 8y agoI think you missed the last 6 months of development regarding Go dependency management. It's even mentioned in the blog post: "Last spring, we published a draft design for Go modules, which provide an integrated mechanism for versioning and package distribution. The most recent Go release, Go 1.11, included preliminary support for modules."
- shakna 8y agoSo there's ten incompatible package managers and one incomplete one. The situation will improve in future, but isn't there yet for all use cases.
- Zach_the_Lizard 8y agoI think go modules are still experimental, and thus many companies and projects have not yet converted. This has been my experience anyways; I'm still using dep at work. Because go modules came later, it will take a while for the community to convert, and there will still be dark corners running on Glide for probably another year or two (or longer).
- weberc2 8y agoThey’re official in version 1.11.
- Zach_the_Lizard 8y agoFrom the Go wiki: >Go 1.11 includes preliminary support for versioned modules as proposed here. Modules are an experimental opt-in feature in Go 1.11, with the hope of incorporating feedback and finalizing the feature for Go 1.12. https://github.com/golang/go/wiki/Modules https://github.com/golang/go/wiki/Modules They are officially present and will be compatible in some way with future releases, but its still having the kinks worked out.
- weberc2 8y agoAh, my mistake. Thanks for correcting me.
- paulddraper 8y ago> Last spring > 6 months > preliminary support No, I didn't miss hearing about it, just like no one missed hearing the Python 3 release. You've got nine years of open-sourced Go...even in the best case scenario, it'll take more time that six months after a draft design for this to not be a common, massive pain point.