I recently migrated some of my project’s dependency management tools from dep to go module, and there are some cool things and some not so cool things about it, so here’s a brief overview of some of my personal opinions and feelings about the migration process.

First of all, as of the time of writing this article, the latest release of Go is 1.16.



pain points

go module



Contrast feelings

The only feature that makes me miss dep is the precise version specification. In go module, you can’t specify it precisely, and even if you do, it’s still considered the minimum required version “>=”, and it’s likely that the version of this package will be changed later because of other dependent Of course, occasionally it is possible to meet your specification and use the version you want.