juliaup icon indicating copy to clipboard operation
juliaup copied to clipboard

failing on macOS: juliaup add 1.3

Open StefanKarpinski opened this issue 3 years ago • 14 comments

$ juliaup add 1.3
Installing Julia 1.3.1+0 (x64).
Error: Failed to download from url `https://julialang-s3.julialang.org/bin/mac/x64/1.3/julia-1.3.1-mac64.tar.gz`.

Caused by:
    https://julialang-s3.julialang.org/bin/mac/x64/1.3/julia-1.3.1-mac64.tar.gz: status code 404

Not sure if this is a known issue or not, but I couldn't find an issue so I figured I'd report it.

StefanKarpinski avatar Dec 01 '21 04:12 StefanKarpinski

Yeah, those tar.gz files just don't exist. I repacked all versions since 0.7 for Windows at some point so that all the tar.gz files for Windows exist in the S3 bucket, if we want to fix this for the other platforms someone will have to do the same thing.

davidanthoff avatar Dec 01 '21 07:12 davidanthoff

I think one question is whether we want to try to create all these tar.gz files for older versions, or just declare those as not supported? They do work on all other platforms. Presumably it would be fairly straightforward to write some shell script that simply downloads the existing dmg files, and then repackages them as tar.gz files? But I don't have access to a Mac at the moment, so this is difficult for me to do because I can't test anything...

davidanthoff avatar Jan 07 '22 21:01 davidanthoff

I'd like for these to work since I somewhat often have cause to want to try things in various older versions of Julia, so if no one else gets around to this, I may attempt the dmg => tgz repackaging required.

StefanKarpinski avatar Jan 14 '22 19:01 StefanKarpinski

Agreed. I think if this was automated, we could even add every version starting with 0.1? Completely useless, obviously, but for nostalgic reasons it might be fun :)

davidanthoff avatar Jan 14 '22 21:01 davidanthoff

Oh man, that would be fun but getting all of the old versions working might be a bit of a struggle...

StefanKarpinski avatar Jan 20 '22 16:01 StefanKarpinski

Bump, I'm wondering whether there is a chance that we can get all the Mac builds >=1.0.0 uploaded before Juliacon? I hope we will get a lot more use/traffic of juliaup after Juliacon, and it would be nice if we had these builds up there before that.

davidanthoff avatar Jul 17 '22 22:07 davidanthoff

Bump, ran into this issue on MacOS today after trying to test out juliaup.

jekyllstein avatar Jul 30 '22 23:07 jekyllstein

I think we have to make a decision to either add these missing archives soon, or remove the channels that error in this way at the moment for Mac builds, so that the error message at least just becomes "Unknown channel".

davidanthoff avatar Jul 30 '22 23:07 davidanthoff

Bump, I too ran into this issue on MacOS. For the decision, I hope that the missing archives can be added as opposed to just creating an error message.

URestrepo avatar Aug 01 '22 21:08 URestrepo

Since this issue is not specific to Julia 1.3, as long as Julia hosts the build, should we not have a channel for that build?

URestrepo avatar Aug 01 '22 22:08 URestrepo

The problem is that the normal Julia download servers only host the .dmg version of these older Julia versions, not a tar.gz file which we need...

davidanthoff avatar Aug 05 '22 17:08 davidanthoff

I'm running

function download_extract_tar_and_zip(v::VersionNumber)
    url = "https://julialang-s3.julialang.org/bin/mac/x64/$(v.major).$(v.minor)/julia-$v-mac64.dmg"
    download_file = "julia-$v.dmg"
    extract_file = "julia-$v"
    run(`curl $url -o $download_file`)
    run(`hdiutil attach $download_file`)
    volumes = filter(x->startswith(x, "Julia-$v"), readdir("/Volumes"))
    try
        folder = only(volumes)
        cp("/Volumes/$folder/Julia-$(v.major).$(v.minor).app/Contents/Resources/julia", extract_file)
    finally
        for volume in volumes
            run(`hdiutil detach /Volumes/$volume`)
        end
    end
    run(`tar -czf julia-$v.tar.gz julia-$v`)
end

versions() = [v"1.0.0", v"1.0.1", v"1.0.2", v"1.0.3", v"1.0.4", v"1.0.5", v"1.1.0",
              v"1.1.1", v"1.2.0", v"1.3.0", v"1.3.1", v"1.4.0", v"1.4.1", v"1.4.2"]

foreach(download_extract_tar_and_zip, versions())

I'll upload the results when it's done.

LilithHafner avatar Aug 11 '22 21:08 LilithHafner

Update: I have the files locally but I don't know how to share the results. I have 14 85MB .tar.gz files that seem reasonable.

LilithHafner avatar Aug 11 '22 21:08 LilithHafner

Update 2: here they are, courtesy of WeTransfer: https://we.tl/t-xR4fxZDDXf

LilithHafner avatar Aug 11 '22 23:08 LilithHafner

Note, even 1.5 doesn't work on mac. 1.4 did for me, but 1.3 and earlier did not. On linux, I was able to go all the way back to 0.7.

ViralBShah avatar Oct 10 '22 03:10 ViralBShah

This works now.

ViralBShah avatar Oct 13 '22 21:10 ViralBShah