And if you want the long story 1.6 vs 1.0: Julia 1.6: what has changed since Julia 1.0?
I’m getting errors during Pkg.update()
on 1.6.0-rc2:
┌ Warning: failed to extract archive downloaded from https://api.github.com/repos/JuliaFolds/InitialValues.jl/tarball/26c8832afd63ac558b98a823265856670d898b6c
└ @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:590
┌ Warning: failed to extract archive downloaded from https://api.github.com/repos/JuliaFolds/Transducers.jl/tarball/9550eba57ebc2f7677c4c946aaca56e149ca73ff
└ @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:590
┌ Warning: failed to extract archive downloaded from https://api.github.com/repos/JuliaPlots/AbstractPlotting.jl/tarball/a1c75127d5e08b29443ab458fc9150090305c105
└ @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:590
┌ Warning: failed to extract archive downloaded from https://api.github.com/repos/JuliaImages/ImageContrastAdjustment.jl/tarball/210f8fb370d4b97fa12d65322c62df06f3e5563b
└ @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:590
┌ Warning: failed to extract archive downloaded from https://pkg.julialang.org/package/bdcacae8-1622-11e9-2a5c-532679323890/e9f52dd5b33bba1b825bdb69b72844e81285c2c1
└ @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:590
┌ Warning: failed to extract archive downloaded from https://api.github.com/repos/JuliaSIMD/LoopVectorization.jl/tarball/e9f52dd5b33bba1b825bdb69b72844e81285c2c1
└ @ Pkg.Operations C:\buildbot\worker\package_win64\build\usr\share\julia\stdlib\v1.6\Pkg\src\Operations.jl:590
Packages are automatically being cloned instead, which is slower, but not show-stopping:
Cloning [f27f6e37-5d2b-51aa-960f-b287f2bc3b7a] libvorbis_jll from https://github.com/JuliaBinaryWrappers/libvorbis_jll.jl.git
Installed libvorbis_jll ──────────────── v1.3.6+6
Cloning [a51ab1cf-af8e-5615-a023-bc2c838bba6b] ICU_jll from https://github.com/JuliaBinaryWrappers/ICU_jll.jl.git
Installed ICU_jll ────────────────────── v67.1.0+3
Cloning [d25df0c9-e2be-5dd7-82c8-3ad0b3e990b9] Inflate from https://github.com/GunnarFarneback/Inflate.jl.git
Installed Inflate ────────────────────── v0.1.2
Cloning [a51aa0fd-4e3c-5386-b890-e753decda492] Xorg_libXi_jll from https://github.com/JuliaBinaryWrappers/Xorg_libXi_jll.jl.git
Installed Xorg_libXi_jll ─────────────── v1.7.10+4
Cloning [1019f520-868f-41f5-a6de-eb00f4b6a39c] JLFzf from https://github.com/Moelf/JLFzf.jl.git
Installed JLFzf ──────────────────────── v0.1.3
Cloning [90137ffa-7385-5640-81b9-e52037218182] StaticArrays from https://github.com/JuliaArrays/StaticArrays.jl.git
Installed StaticArrays ───────────────── v1.0.1
Cloning [647866c9-e3ac-4575-94e7-e3d426903924] PolygonOps from https://github.com/JuliaGeometry/PolygonOps.jl.git
Installed PolygonOps ─────────────────── v0.1.1
Looks similar to this (old, fixed) issue: failed to extract archive downloaded · Issue #33591 · JuliaLang/julia · GitHub
It has been fixed and the fix will be in RC-3.
As I see ready now
- https://hub.docker.com/_/julia?tab=tags&page=1&ordering=last_updated&name=1.5.4
- https://hub.docker.com/_/julia?tab=tags&page=1&ordering=last_updated&name=1.6.0-rc2
$ docker pull julia:1.6.0-rc2-buster
1.6.0-rc2-buster: Pulling from library/julia
6f28985ad184: Already exists
19fec5d00e16: Already exists
179c569be4e9: Pull complete
Digest: sha256:361940d288c9f9eba442dc424deaa1278c49c91d942f71a90d09a06d56cf7790
Status: Downloaded newer image for julia:1.6.0-rc2-buster
docker.io/library/julia:1.6.0-rc2-buster
$ docker run -it --rm julia:1.6.0-rc2-buster
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.6.0-rc2 (2021-03-11)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
|__/ |
julia>
I hate myself for asking the question, but do you have a sense for when the production-ready version 1.6.0 will be released?
We’re at the end stages of stabilization. There will be an RC3 imminently. Then another week or maybe two or three if any other show-stopper bugs are found.
I get similar problem with 1.6-rc3
> (@v1.6) pkg> add IJulia
> Updating registry at `~/.julia/registries/General`
> Resolving package versions...
> ┌ Warning: failed to extract archive downloaded from https://pkg.julialang.org/package/a9144af2-ca23-56d9-984f-0d03f7b5ccf8/7127f5f40332ccfa43ee07dcd0c4d81a27d9bb23
> └ @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:590
> ┌ Warning: failed to extract archive downloaded from https://api.github.com/repos/JuliaBinaryWrappers/libsodium_jll.jl/tarball/7127f5f40332ccfa43ee07dcd0c4d81a27d9bb23
> └ @ Pkg.Operations /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Operations.jl:590
> Installed libsodium_jll ─ v1.0.18+1
> Downloaded artifact: libsodium
> Downloaded artifact: libsodium
> ERROR: Unable to automatically install 'libsodium' from '/home/peter/.julia/packages/libsodium_jll/26d1m/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)
> @ Pkg.Artifacts /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Artifacts.jl:436
> [3] ensure_all_artifacts_installed(artifacts_toml::String; platform::Base.BinaryPlatforms.Platform, pkg_uuid::Nothing, include_lazy::Bool, verbose::Bool, quiet_download::Bool)
> @ Pkg.Artifacts /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/Artifacts.jl:501
> [4] download_artifacts(ctx::Pkg.Types.Context, pkg_roots::Vector{String}; platform::Base.BinaryPlatforms.Platform, verbose::Bool)
After removing everything in .julia
via ❯ rm -rf ~/.julia
I ended up with
> ❯ rm -rf ~/.julia
> ❯
> ❯ julia
> _
> _ _ _(_)_ | Documentation: https://docs.julialang.org
> (_) | (_) (_) |
> _ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
> | | | | | | |/ _` | |
> | | |_| | | | (_| | | Version 1.6.0-rc3 (2021-03-16)
> _/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
> |__/ |
>
> (@v1.6) pkg> update
> Installing known registries into `~/.julia`
> ERROR: could not download https://pkg.julialang.org/registry/23338594-aafe-5451-b93e-139f81909106/ef1248abc2cfaf09b2dd4ea41f94b89d424c491c
What if you do:
using Pkg
url = "https://pkg.julialang.org/registry/23338594-aafe-5451-b93e-139f81909106/ef1248abc2cfaf09b2dd4ea41f94b89d424c491c"
Pkg.PlatformEngines.download_verify_unpack(url, nothing, "testregistry"; verbose=true)
julia> using Pkg
julia> url = "https://pkg.julialang.org/registry/23338594-aafe-5451-b93e-139f81909106/ef1248abc2cfaf09b2dd4ea41f94b89d424c491c"
"https://pkg.julialang.org/registry/23338594-aafe-5451-b93e-139f81909106/ef1248abc2cfaf09b2dd4ea41f94b89d424c491c"
julia> Pkg.PlatformEngines.download_verify_unpack(url, nothing, "testregistry"; verbose=true)
[ Info: Unpacking /tmp/jl_j03LgV-download.gz into testregistry...
ERROR: IOError: could not spawn setenv(`7z x /tmp/jl_j03LgV-download.gz -so`,["P9K_SSH=1", "LSCOLORS=Gxfxcxdxbxegedabagacad", "PATH=:/home/peter/.local/bin:/home/peter/.cargo/bin:/home/peter/.allure:/home/peter/.cargo/bin:/home/peter/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/bin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl:/home/peter/.fzf/bin", "_P9K_TTY=/dev/pts/0", "LD_LIBRARY_PATH=/usr/bin/../lib/julia:/usr/bin/../lib", "DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/1000/bus", "XDG_SESSION_TYPE=tty", "USER=peter", "LC_TIME=en_US.UTF-8", "LC_MEASUREMENT=en_US.UTF-8", "LESS=-R", "FZF_DEFAULT_OPTS=--no-mouse --height 90% -1 --reverse --multi --inline-info --preview='[[ \$(file --mime {}) =~ binary ]] && echo {} is a binary file || (bat --style=numbers --color=always {} || cat {}) 2> /dev/null | head -300' --preview-window='right:hidden:wrap' --bind='f3:execute(bat --style=numbers --pager=less --paging=always {} ),f2:toggle-preview,ctrl-d:half-page-down,ctrl-u:half-page-up,ctrl-a:select-all+accept,ctrl-y:execute-silent(echo {+} | pbcopy)'", "FZF_ALT_C_COMMAND=fd --type d --follow --exclude .git --exclude node_modules --hidden", "SHELL=/usr/bin/zsh", "MOTD_SHOWN=pam", "GROFF_NO_SGR=1", "SSH_CLIENT=192.168.2.2 45442 22", "SSH_TTY=/dev/pts/0", "HOME=/home/peter", "TERM=xterm-256color", "FZF_CTRL_T_COMMAND=fd --follow --exclude .git --exclude node_modules --hidden", "LANG=en_US.UTF-8", "LOGNAME=peter", "XDG_RUNTIME_DIR=/run/user/1000", "SHLVL=1", "LC_MONETARY=en_US.UTF-8", "OLDPWD=/home/peter", "LC_PAPER=en_US.UTF-8", "LC_ADDRESS=en_US.UTF-8", "_=/usr/bin/julia", "PAGER=less", "ZSH=/home/peter/.oh-my-zsh", "XDG_SESSION_CLASS=user", "PWD=/home/peter/_AUR/julia-beta-bin", "SSH_CONNECTION=192.168.2.2 45442 192.168.2.173 22", "OPENBLAS_NUM_THREADS=8", "MAIL=/var/spool/mail/peter", "P9K_TTY=old", "XDG_SESSION_ID=1", "FZF_DEFAULT_COMMAND=git ls-files --cached --others --exclude-standard | fd --type f --type l --follow --exclude .git --exclude node_modules --hidden", "LS_COLORS=rs=0:di=01;34:ln=01;36:mh=00:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=40;31;01:mi=00:su=37;41:sg=30;43:ca=30;41:tw=30;42:ow=34;42:st=37;44:ex=01;32:*.tar=01;31:*.tgz=01;31:*.arc=01;31:*.arj=01;31:*.taz=01;31:*.lha=01;31:*.lz4=01;31:*.lzh=01;31:*.lzma=01;31:*.tlz=01;31:*.txz=01;31:*.tzo=01;31:*.t7z=01;31:*.zip=01;31:*.z=01;31:*.dz=01;31:*.gz=01;31:*.lrz=01;31:*.lz=01;31:*.lzo=01;31:*.xz=01;31:*.zst=01;31:*.tzst=01;31:*.bz2=01;31:*.bz=01;31:*.tbz=01;31:*.tbz2=01;31:*.tz=01;31:*.deb=01;31:*.rpm=01;31:*.jar=01;31:*.war=01;31:*.ear=01;31:*.sar=01;31:*.rar=01;31:*.alz=01;31:*.ace=01;31:*.zoo=01;31:*.cpio=01;31:*.7z=01;31:*.rz=01;31:*.cab=01;31:*.wim=01;31:*.swm=01;31:*.dwm=01;31:*.esd=01;31:*.jpg=01;35:*.jpeg=01;35:*.mjpg=01;35:*.mjpeg=01;35:*.gif=01;35:*.bmp=01;35:*.pbm=01;35:*.pgm=01;35:*.ppm=01;35:*.tga=01;35:*.xbm=01;35:*.xpm=01;35:*.tif=01;35:*.tiff=01;35:*.png=01;35:*.svg=01;35:*.svgz=01;35:*.mng=01;35:*.pcx=01;35:*.mov=01;35:*.mpg=01;35:*.mpeg=01;35:*.m2v=01;35:*.mkv=01;35:*.webm=01;35:*.webp=01;35:*.ogm=01;35:*.mp4=01;35:*.m4v=01;35:*.mp4v=01;35:*.vob=01;35:*.qt=01;35:*.nuv=01;35:*.wmv=01;35:*.asf=01;35:*.rm=01;35:*.rmvb=01;35:*.flc=01;35:*.avi=01;35:*.fli=01;35:*.flv=01;35:*.gl=01;35:*.dl=01;35:*.xcf=01;35:*.xwd=01;35:*.yuv=01;35:*.cgm=01;35:*.emf=01;35:*.ogv=01;35:*.ogx=01;35:*.aac=00;36:*.au=00;36:*.flac=00;36:*.m4a=00;36:*.mid=00;36:*.midi=00;36:*.mka=00;36:*.mp3=00;36:*.mpc=00;36:*.ogg=00;36:*.ra=00;36:*.wav=00;36:*.oga=00;36:*.opus=00;36:*.spx=00;36:*.xspf=00;36:", "OPENBLAS_MAIN_FREE=1", "LC_MESSAGES=en_US.UTF-8"]): no such file or directory (ENOENT)
Stacktrace:
[1] _spawn_primitive(file::String, cmd::Cmd, stdio::Vector{Any})
@ Base ./process.jl:99
[2] #637
@ ./process.jl:112 [inlined]
[3] setup_stdios(f::Base.var"#637#638"{Cmd}, stdios::Vector{Any})
@ Base ./process.jl:196
[4] _spawn
@ ./process.jl:111 [inlined]
[5] open(cmds::Cmd, stdio::Base.DevNull; write::Bool, read::Bool)
@ Base ./process.jl:370
[6] open (repeats 2 times)
@ ./process.jl:361 [inlined]
[7] open(::Pkg.PlatformEngines.var"#24#26"{String}, ::Cmd; kwargs::Base.Iterators.Pairs{Union{}, Union{}, Tuple{}, NamedTuple{(), Tuple{}}})
@ Base ./process.jl:391
[8] open
@ ./process.jl:391 [inlined]
[9] download_verify_unpack(url::String, hash::Nothing, dest::String; tarball_path::Nothing, ignore_existence::Bool, force::Bool, verbose::Bool, quiet_download::Bool)
@ Pkg.PlatformEngines /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/PlatformEngines.jl:509
[10] top-level scope
@ REPL[3]:1
After running sudo pacman -S p7zip
everything works like a charm. Looks like Julia 1.6 assumes that 7z is present while in fact it is missing…
Thanks for the useful advice!
Julia bundles its own 7z which it should use:
How did you install Julia 1.6-RC3?
I downloaded julia-beta-bin AUR script via yay -G julia-beta-bin
and then changed _pkgver
from 1.6.0-rc1
to 1.6.0-rc3
inside PKGBUILD file:
# Maintainer: Brenton Horne <brentonhorne77 at gmail dot com>
pkgname=julia-beta-bin
_pkgver=1.6.0-rc3
pkgver=$(echo $_pkgver | sed 's/-/./g')
pkgrel=1
arch=('x86_64')
pkgdesc='High-level, high-performance, dynamic programming language - official pre-release binaries'
provides=(julia)
conflicts=(julia julia-bin julia-git julia-nightly-bin)
depends=('gmp' 'suitesparse' 'hicolor-icon-theme' 'libssh2')
url='https://julialang.org/'
license=('MIT')
source=("https://julialang-s3.julialang.org/bin/linux/x64/${pkgver:0:3}/julia-${_pkgver}-linux-x86_64.tar.gz"
16x16.png::https://github.com/JuliaLang/julia/raw/master/contrib/mac/frameworkapp/JuliaLauncher/Assets.xcassets/AppIcon.appiconset/16.png
32x32.png::https://github.com/JuliaLang/julia/raw/master/contrib/mac/frameworkapp/JuliaLauncher/Assets.xcassets/AppIcon.appiconset/32.png
128x128.png::https://github.com/JuliaLang/julia/raw/master/contrib/mac/frameworkapp/JuliaLauncher/Assets.xcassets/AppIcon.appiconset/128.png
256x256.png::https://github.com/JuliaLang/julia/raw/master/contrib/mac/frameworkapp/JuliaLauncher/Assets.xcassets/AppIcon.appiconset/256.png
512x512.png::https://github.com/JuliaLang/julia/raw/master/contrib/mac/frameworkapp/JuliaLauncher/Assets.xcassets/AppIcon.appiconset/512.png)
sha256sums=('72847bd2b4d4db9d5970512f79fd5a7f76ad56cf0f2ea5a80eff032364b19c8b'
'85aff59221938dd83aa3808910fb455c64f3f0936604bfaad7b8d27c01e3a7ed'
'0310782968fe0ba2910e8a4fc3920ab58c0b8f91c66a66f6cff82cd0d6d31612'
'aab27b427cb21108d831f2d9ddc89ce0948f7e8cb82e4bb2dc1bc82c6676224f'
'001f5fe2478572c69ddcf135d460fab18fc851723e529b056fd9b9852b47f3a5'
'3994d4d59d46e2d226d59f372e5b68eb23e8dc074529e870796f1132f5df8a5b')
options=(!strip)
package() {
cd $srcdir/julia-${_pkgver}
mkdir -p ${pkgdir}/usr/share/licenses/${pkgname}
install -Dm644 LICENSE.md \
${pkgdir}/usr/share/licenses/${pkgname}/LICENSE.md
cp -r {bin,include,lib,share} ${pkgdir}/usr/
cp -r etc ${pkgdir}
rm -rf $pkgdir/usr/share/icons/hicolor/scalable
for i in 16 32 128 256 512
do
mkdir -p $pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/
install -Dm644 $srcdir/${i}x${i}.png $pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/julia.png
done
}
After that I’ve installed it via makepkg -i --skipinteg
Okay, the official way to download julia is via the download page at Download Julia. Other installation methods are hard to support since we don’t really control them.
This script downloads the package from https://julialang-s3.julialang.org/bin/linux/x64/1.6/julia-1.6.0-rc3-linux-x86_64.tar.gz which seems to be official (matches the link from the website).
Okay, so you get the same error if you download that release, uncompress it, and run Julia from it?
I’ve just deleted p7zip from the system, rm-ed ~/.julia, removed AUR and downloaded the tar.gz manually. Then unpacked it and ran julia
from the bin folder. The problem is not reproduced. Ok, you are right, AUR re-packing breaks something. Thanks!
@pgagarinov I’m happy to see another Archlinux user here, but regarding AUR, you should really know that:
- there are no “quality standards” for AUR packages
- you can report AUR packaging bugs on AUR in the comments
- if you want to report a bug upstream, you should first reproduce by building manually
Furthermore, regarding AUR helpers:
- again, no quality standards
- if you want to report a bug for AUR packaging, first reproduce without using an AUR helper. I.e., keep in mind that no AUR helper is standard, and you can’t rely on other people even knowing about the AUR helper you use, or the AUR helper being correct.
- IMO, for this reason it is offensive to even mention using an AUR helper in any bug report
EDIT: the wiki says this about AUR helpers:
Warning: AUR helpers are not supported by Arch Linux. You should become familiar with the manual build process in order to be prepared to troubleshoot problems.
What does
using Pkg.PlatformEngines
PlatformEngines.find7z()
return for you?
julia> using Pkg.PlatformEngines
julia> PlatformEngines.find7z()
ERROR: 7z binary not found
Stacktrace:
[1] error(s::String)
@ Base ./error.jl:33
[2] find7z()
@ Pkg.PlatformEngines /buildworker/worker/package_linux64/build/usr/share/julia/stdlib/v1.6/Pkg/src/PlatformEngines.jl:40
[3] top-level scope
@ REPL[6]:1
julia> exit()
❯ yay -S p7zip
resolving dependencies...
looking for conflicting packages...
Packages (1) p7zip-17.03-2
Total Installed Size: 11.16 MiB
:: Proceed with installation? [Y/n] y
(1/1) checking keys in keyring [#######################################################################################################################] 100%
(1/1) checking package integrity [#######################################################################################################################] 100%
(1/1) loading package files [#######################################################################################################################] 100%
(1/1) checking for file conflicts [#######################################################################################################################] 100%
(1/1) checking available disk space [#######################################################################################################################] 100%
:: Processing package changes...
(1/1) installing p7zip [#######################################################################################################################] 100%
:: Running post-transaction hooks...
(1/1) Arming ConditionNeedsUpdate...
❯ julia
_
_ _ _(_)_ | Documentation: https://docs.julialang.org
(_) | (_) (_) |
_ _ _| |_ __ _ | Type "?" for help, "]?" for Pkg help.
| | | | | | |/ _` | |
| | |_| | | | (_| | | Version 1.6.0-rc3 (2021-03-16)
_/ |\__'_|_|_|\__'_| | Official https://julialang.org/ release
|__/ |
julia> using Pkg.PlatformEngines
julia> PlatformEngines.find7z()
"/usr/bin/7z"
You should have 7z
in joinpath(dirname(Sys.BINDIR), "libexec")
, is it not there? What’s the output of
julia> readdir(joinpath(dirname(Sys.BINDIR), "libexec"))
1-element Vector{String}:
"7z"
for you?
I found the problem - “libexec” was missing in the list of packaged folders in PKGBUILD. This is how the fixed line should look like
cp -r {bin,include,lib,share,libexec} ${pkgdir}/usr/
AUR works just fine after the fix. Thanks for the tip!