That still allows your deps to be stateful and out-of-band of the build. I'd prefer the build to be exclusively aware of version numbers in one place and let the code be version agnostic.
I'm not a Perl user, I don't consider running sed on my source code to be a "bonus".
There are a number of tools in Perl that will scan your code base and automatically generate a dependency list based on what it finds. The one I use is called Dist::Zilla (http://dzil.org/), and it automates the entire packaging and library release process. Again, this is how civilized languages work.
I'm not a Perl user, I don't consider running sed on my source code to be a "bonus".
Still better than Go though.