JULIA 1.6.4 ERROR: Unable to automatically install 'OpenSpecFun'

Viewed 411

I am trying to add the package "Distributions" (and others):

(@v1.6) pkg> add Distributions

And I get:

ERROR: Unable to automatically install 'OpenSpecFun' from 'C:\Users\cescalac\.julia\packages\OpenSpecFun_jll\1Zaof\Artifacts.toml'
Stacktrace:
  [1] error(s::String)
    @ Base .\error.jl:33
  [2] ensure_artifact_installed(name::String, meta::Dict{String, Any}, artifacts_toml::String; platform::Base.BinaryPlatforms.Platform, verbose::Bool, quiet_download::Bool, io::Base.TTY)
    @ Pkg.Artifacts C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Artifacts.jl:445
  [3] ensure_all_artifacts_installed(artifacts_toml::String; platform::Base.BinaryPlatforms.Platform, pkg_uuid::Nothing, include_lazy::Bool, verbose::Bool, quiet_download::Bool, io::Base.TTY)
    @ Pkg.Artifacts C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Artifacts.jl:510
  [4] download_artifacts(ctx::Pkg.Types.Context, pkg_roots::Vector{String}; platform::Base.BinaryPlatforms.Platform, verbose::Bool, io::Base.TTY)
    @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:710
  [5] download_artifacts(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; platform::Base.BinaryPlatforms.Platform, julia_version::VersionNumber, verbose::Bool, io::Base.TTY)
    @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:687
  [6] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}, new_git::Vector{Base.UUID}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform)
    @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:1242
  [7] add(ctx::Pkg.Types.Context, pkgs::Vector{Pkg.Types.PackageSpec}; preserve::Pkg.Types.PreserveLevel, platform::Base.BinaryPlatforms.Platform, kwargs::Base.Iterators.Pairs{Symbol, Base.TTY, Tuple{Symbol}, NamedTuple{(:io,), Tuple{Base.TTY}}})
    @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:204
  [8] add(pkgs::Vector{Pkg.Types.PackageSpec}; io::Base.TTY, kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
    @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:80
  [9] add(pkgs::Vector{Pkg.Types.PackageSpec})
    @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:78
 [10] #add#23
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:76 [inlined]
 [11] add
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:76 [inlined]
 [12] #add#22
    @ C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:75 [inlined]
 [13] add(pkg::String)
    @ Pkg.API C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\API.jl:75
 [14] top-level scope
    @ REPL[1]:1

I uninstall everything, install again. The error persists. Thank you in advance if you can help me with the solution. Julia version 1.6.4.

With ENV["JULIA_DEBUG"]="all", I get

julia> Pkg.add("Distributions")
   Resolving package versions...
 Downloading artifact: OpenSpecFun
┌ Debug: download_artifact error
│   tree_hash = SHA1("3e683ec5ca945a5aca74c49e8cccdf37c19b84a3")
│   tarball_url = "https://pkg.julialang.org/artifact/3e683ec5ca945a5aca74c49e8cccdf37c19b84a3"
│   tarball_hash = nothing
│   err = HTTP/1.1 403 MediaTypeBlocked while requesting https://pkg.julialang.org/artifact/3e683ec5ca945a5aca74c49e8cccdf37c19b84a3
  Downloaded artifact: OpenSpecFun
 Downloading artifact: OpenSpecFun
┌ Debug: download_artifact error
│   tree_hash = SHA1("3e683ec5ca945a5aca74c49e8cccdf37c19b84a3")
│   tarball_url = "https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl/releases/download/OpenSpecFun-v0.5.5+0/OpenSpecFun.v0.5.5.x86_64-w64-mingw32-libgfortran5.tar.gz"
│   tarball_hash = "56018ef016338b838d407cd58ffb7033584dd78c31b9d1082cdae10556a902cd"
│   err = HTTP/1.1 403 MediaTypeBlocked while requesting https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl/releases/download/OpenSpecFun-v0.5.5+0/OpenSpecFun.v0.5.5.x86_64-w64-mingw32-libgfortran5.tar.gz
  Downloaded artifact: OpenSpecFun
1 Answers

(pasting my comments as an answer since this seems likely to be the issue.)

The output of ENV["JULIA_DEBUG"]="all" (which makes Artifacts print more detailed errors) indicates that it's a problem with downloading the artifact file.

│   err = HTTP/1.1 403 MediaTypeBlocked while requesting https://github.com/JuliaBinaryWrappers/OpenSpecFun_jll.jl/releases/download/OpenSpecFun-v0.5.5+0/OpenSpecFun.v0.5.5.x86_64-w64-mingw32-libgfortran5.tar.gz

MediaTypeBlocked in this case (since the link works for the rest of us) indicates that this is likely a firewall/proxy in your network that's blocking these files from being downloaded. You'll likely encounter the same error with any attempt to access these files, for eg. from a browser or with wget.

Changing the network config to allow these files would be the best course of action (and disallowing tar.gz files seems overly restrictive anyway). In case you're not able to do that, you can download the file from a different network and copy it to the place the artifacts mechanism would have placed it in, which would also allow this package installation to continue.

Related