diff --git a/source/dub/packagesupplier.d b/source/dub/packagesupplier.d index 27e4d23..13e35de 100644 --- a/source/dub/packagesupplier.d +++ b/source/dub/packagesupplier.d @@ -102,8 +102,10 @@ void retrievePackage(Path path, string packageId, Dependency dep, bool pre_release) { + import std.string : replace; Json best = getBestPackage(packageId, dep, pre_release); - auto url = m_registryUrl ~ Path(PackagesPath~"/"~packageId~"/"~best["version"].get!string~".zip"); + auto vers = replace(best["version"].get!string, "+", "%2B"); + auto url = m_registryUrl ~ Path(PackagesPath~"/"~packageId~"/"~vers~".zip"); logDiagnostic("Found download URL: '%s'", url); download(url, path); }