Interrupting the download task by scheduling an InterruptException on to it, like what we do here is not a good idea. It can lead to data race conditions and corruption.
We need to replace it with something that is safe. Ref JuliaLang/Downloads.jl#255