Investigating a package dependency issue

Hi, what is the recommended way to investigate a package dependency issue?

I’m asking a general question in the “teach to fish” spirit, but here are the specifics:

I can’t get SystemBenchmark.jl to run because of an issue with VideoIO. Unlike the reporter of that issue, running ]up didn’t solve it for me. Instead of updating to VideoIO 0.6.11 it downgraded me to 0.6.7 and now I’m stuck there.

Edit: the reporter fixed it by using VideoIO#master, this works for me too. The question remains: how to investigate what is holding VideoIO back?

(@v1.4) pkg> st
Status `~/.julia/environments/v1.4/Project.toml`
  [c52e3926] Atom v0.12.10
  [6e4b80f9] BenchmarkTools v0.5.0
  [a93c6f00] DataFrames v0.21.0
  [1313f7d8] DataFramesMeta v0.5.1
  [31c24e10] Distributions v0.23.2
  [c87230d0] FFMPEG v0.2.4
  [4c0ca9eb] Gtk v1.1.3
  [7073ff75] IJulia v1.21.2
  [e5e0dc1b] Juno v0.8.1
  [91a5bcdd] Plots v1.2.3
  [f27b6e38] Polynomials v1.0.4
  [1a8c2f83] Query v0.12.2
  [f3b207a7] StatsPlots v0.14.6
  [24249f21] SymPy v1.0.20
  [30cdaa97] SystemBenchmark v0.2.0 #master (https://github.com/ianshmean/SystemBenchmark.jl)
  [d6d074c3] VideoIO v0.6.10

(@v1.4) pkg> up
   Updating registry at `~/.julia/registries/General`
   Updating git-repo `https://github.com/JuliaRegistries/General.git`
   Updating git-repo `https://github.com/ianshmean/SystemBenchmark.jl`
   Updating `~/.julia/environments/v1.4/Project.toml`
  [c87230d0] ↑ FFMPEG v0.2.4 ⇒ v0.3.0
  [d6d074c3] ↓ VideoIO v0.6.10 ⇒ v0.6.7
   Updating `~/.julia/environments/v1.4/Manifest.toml`
  [c87230d0] ↑ FFMPEG v0.2.4 ⇒ v0.3.0
  [b22a6f82] + FFMPEG_jll v4.1.0+3
  [c1c5ebd0] + LAME_jll v3.100.0+1
  [dd192d2f] + LibVPX_jll v1.8.1+1
  [e7412a2a] + Ogg_jll v1.3.4+0
  [458c3c95] + OpenSSL_jll v1.1.1+2
  [91d4177d] + Opus_jll v1.3.1+1
  [d6d074c3] ↓ VideoIO v0.6.10 ⇒ v0.6.7
  [0ac62f75] + libass_jll v0.14.0+2
  [f638f0a6] + libfdk_aac_jll v0.1.6+2
  [f27f6e37] + libvorbis_jll v1.3.6+4
  [1270edf5] + x264_jll v2019.5.25+2
  [dfaa095f] + x265_jll v3.0.0+1

(@v1.4) pkg> st
Status `~/.julia/environments/v1.4/Project.toml`
  [c52e3926] Atom v0.12.10
  [6e4b80f9] BenchmarkTools v0.5.0
  [a93c6f00] DataFrames v0.21.0
  [1313f7d8] DataFramesMeta v0.5.1
  [31c24e10] Distributions v0.23.2
  [c87230d0] FFMPEG v0.3.0
  [4c0ca9eb] Gtk v1.1.3
  [7073ff75] IJulia v1.21.2
  [e5e0dc1b] Juno v0.8.1
  [91a5bcdd] Plots v1.2.3
  [f27b6e38] Polynomials v1.0.4
  [1a8c2f83] Query v0.12.2
  [f3b207a7] StatsPlots v0.14.6
  [24249f21] SymPy v1.0.20
  [30cdaa97] SystemBenchmark v0.2.0 #master (https://github.com/ianshmean/SystemBenchmark.jl)
  [d6d074c3] VideoIO v0.6.7

As a side question: is this kind of error expected in normal Julia operation? I think it’s the third time in a few months of use that I have a package failing to build, because one package was held back by another (last time I just removed my .julia directory). I don’t recall having this problem in other languages… Am I doing something wrong? As far as I can tell I’m using Pkg as documented on https://docs.julialang.org/en/v1/stdlib/Pkg/index.html.

You’re not doing anything wrong. Something is holding back VideoIO and it’s not clear what that is.

As a temporary fix, you can try ]add VideoIO#master

Ah thanks, somehow I missed that part in the GitHub issue. This fixes the problem.

I just released v0.7.0 which should be a proper fix

1 Like