Julia v1.5.4 and v1.6.0-rc2 have been released

And if you want the long story 1.6 vs 1.0: Julia 1.6: what has changed since Julia 1.0?

4 Likes

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

4 Likes

It has been fixed and the fix will be in RC-3.

10 Likes

As I see ready now

$ 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> 

1 Like

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?

1 Like

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.

9 Likes

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
1 Like

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!

2 Likes

Julia bundles its own 7z which it should use:

How did you install Julia 1.6-RC3?

3 Likes

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.

3 Likes

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!

4 Likes

@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.

2 Likes

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!