Correct me if I'm wrong, but you appear to be downloading package source as tarballs rather than git clones, which defeats the purpose of Julia packages being active git repositories where you can easily branch, make changes, and submit pr's from them. And change versions with just a checkout (and maybe fetch first).
And you're relying on git tags existing within the package repository, which is a best practice but not strictly enforced for current metadata tags. This also distinctly does not look like it was designed to work cross platform.