Go: all: dep still looks like the official package manager for Go

Created on 28 Nov 2019  ·  12Comments  ·  Source: golang/go

There is still people think dep is the official package manager (around social networks). The github pages looks like it is and they are under the umbrella of go team.
https://golang.github.io/dep/

Dependency management for Go
Copyright © 2018 The Go Authors

The "blog" doesn't speak about modules.
https://github.com/golang/dep/
doesn't mention modules, ask for funding...

It's fine if dep can continue to be improved to make smooth transition to modules or live by it's own, but it looks very ambiguous for newcomer or people not reading blog.golang.org

Documentation NeedsInvestigation

Most helpful comment

One thing we could do here is make this issue an official proposal (including the archiving of the repo). That way everyone will be clear on the process being followed, have the opportunity to raise concerns etc.

All 12 comments

FWIW, the README is pretty clear about it:

dep was the "official experiment." The Go toolchain, as of 1.11, has adopted an approach that sharply diverges from dep. As a result, we are continuing development of dep, but gearing work primarily towards the development of an alternative prototype for versioning behavior in the toolchain.

And the dep source files are under the standard Go BSD License

// Copyright 2016 The Go Authors. All rights reserved.
// Use of this source code is governed by a BSD-style
// license that can be found in the LICENSE file.

So I think the part about Copyright © 2018 The Go Authors is correct too.

From what it looks like, the dep folks plan to keep working on it. So it would be unfair to outright declare - "please don't use dep, use Go modules". But perhaps the wording can be made more clear.

In any case, I think this is something that you can raise with the dep team by opening an issue there.

/cc @kevinburke who seems to manage dep now.

@agnivade

FWIW, the README is pretty clear about it:

dep was the "official experiment." The Go toolchain, as of 1.11, has adopted an approach that sharply diverges from dep. As a result, we are continuing development of dep, but gearing work primarily towards the development of an alternative prototype for versioning behavior in the toolchain.

IMO this is not clear at all.

The Go toolchain [...] has adopted an approach that sharply diverges from dep

What approach? It's not mentioned, and there are no links to the module system announcement. There should be.

[gearing work primarily towards] the development of an alternative prototype

This statement is very outdated. What here is called "an alternative prototype" (the module system) is no longer a prototype, and it has been fully adopted by the project. A newcomer reading this will get a completely wrong idea about the status quo of package management in Go.

You are right, those parts need to be updated.

I agree that there's still too much confusion out there. Particularly for folks who only use Go sporadically - I've encountered multiple of those who simply tried to continue using dep, as the official site and docs didn't mention anything else that should be considered.

I personally think that, if dep is to continue under the Go organization, it should clearly point to modules. Not necessarily as "use modules instead", but at least as "the standard for publishing and using Go packages today is modules".

Honestly, the documentation for modules is VERY verbose and not altogether very helpful. For instance, I've been trying to convert my projects over to modules for several hours now, and can't (even with the help of the documentation) figure out what combination of folders/go.mod files I need to make it work. Dep at the very least was easy to use/figure out.

/cc @jayconrod @andybons

After someone reviews and merges @ALTree's PR on golang/dep#2233, it might be worth considering archiving the repo, to make it clear no more work is taking place on it. The issue tracker still sees relatively regular activity, but with no response from any of the (used to be) maintainers. That's not a great experience for people.

I think @daenney is right, and I'm saddened to see that @ALTree's PR hasn't gotten attention. I'm sure the maintainers are busy people, and I realise there are lots of open issues and PRs, but this isn't just another PR.

At this point I don't think dep has any maintainer at all. We'll have to wait for someone with admin rights on the Go organization (and thus on the dep repository) to push the button. I don't want to be too annoying pinging people for a review right now, since we're not in a happy historical moment, but once we are back to a relatively normal schedule I'll try writing an mail to golang-dev.

One thing we could do here is make this issue an official proposal (including the archiving of the repo). That way everyone will be clear on the process being followed, have the opportunity to raise concerns etc.

I've created https://github.com/golang/go/issues/38158 as a light proposal. Hopefully it'll get some eyeballs during the weekly proposal reviews and it'll move forward.

Closing as a duplicate of #38158.

Was this page helpful?
0 / 5 - 0 ratings