▲ 19 ▼ Cast: Dep, Cross-platform, and Getting Started with Carolyn Van Slyck
Carolyn Van Slyck joined the show to talk about dependency management, upping your cross-platform game, getting into Go, and other interesting Go projects and news.
Register to comment or vote on this story
. Could you please upvote this comment?
Will be great to see this integrated with the go toolchain eventually, it's something that people coming from other stacks get confused by all the time (particularly dynamic languages which tend to have their own package manager), and for a thriving open source ecosystem I think they need some way of pinning dependencies. It's been interesting for me though just how far you can get without worrying about pinning dependencies - both by restricting those you use, and because everyone has been forced to avoid too many breaking changes, I've run into problems with using the master branch only a few times in a few years of using Go, and it certainly discourages breaking changes if you know that you may well break anyone who depends on your code.
Wasn't sure about dep at first because of complex ui for something that feels like it should be simple but am starting to like it, and I like how open they've been about the development of it.
How is the dep UI complex? There's 4 subcommands and of those only 1, ensure, has an optional option (and just 1, -update) and optionally the package import path and version identifier.
I'd prefer something simper with one command if in the go tool - you should be able to just freeze your current dependencies, then edit the file by hand if require to set a specific version (most people won't). The trouble with dependencies is that there are all sorts of edge cases, but most people never hit them, so why make things complex (with 2 files for example)?
Agreed it's not that bad. Not sure why they need two config files though, I'm sure there are reasons, but why not just one file to specify requirements (target) along with the resolution chosen (lock).