JuliaImages / Images.jl

An image library for Julia
http://juliaimages.org/
Other
526 stars 141 forks source link

Installing Images after Plots caused recompilation #1058

Open fonsp opened 2 months ago

fonsp commented 2 months ago

When you install Plots, precompile, and then install Images, Plots needs to precompile again. This is because Images forces a downgrade of ColorVectorSpaces from 0.10.0 (latest, used by Plots) to 0.9.10 (latest version compatible with Images). I'm not sure which dependency causes this.

Since these are two popular packages, this could lead to frustrating situations where precompilation happens too often.

Here is my terminal log showing the issue:

➜  ~ cd .julia
➜  .julia rm -rf compiled/v1.10; rm -rf packages/
➜  .julia julia
               _
   _       _ _(_)_     |  Documentation: https://docs.julialang.org
  (_)     | (_) (_)    |
   _ _   _| |_  __ _   |  Type "?" for help, "]?" for Pkg help.
  | | | | | | |/ _` |  |
  | | |_| | | | (_| |  |  Version 1.10.0 (2023-12-25)
 _/ |\__'_|_|_|\__'_|  |  Official https://julialang.org/ release
|__/                   |

julia> import Pkg

julia> # so that you can see which packages get precompiled
       Pkg.can_fancyprint(::IO) = false

julia> Pkg.activate(temp=true)
  Activating new project at `/var/folders/v_/fhpj9jn151d4p9c2fdw2gv780000gn/T/jl_fonR2N`

julia> Pkg.add("Plots")
   Resolving package versions...
   Installed GR_jll ─────────────────────── v0.73.5+0
   Installed x265_jll ───────────────────── v3.5.0+0
   Installed LERC_jll ───────────────────── v3.0.0+1
   Installed Libmount_jll ───────────────── v2.40.0+0
   Installed JpegTurbo_jll ──────────────── v3.0.2+0
   Installed libfdk_aac_jll ─────────────── v2.0.2+0
   Installed LoggingExtras ──────────────── v1.0.3
   Installed Preferences ────────────────── v1.4.3
   Installed Opus_jll ───────────────────── v1.3.2+0
   Installed Xorg_xkbcomp_jll ───────────── v1.4.6+0
   Installed Unitful ────────────────────── v1.19.0
   Installed Xorg_xcb_util_wm_jll ───────── v0.4.1+1
   Installed Measures ───────────────────── v0.3.2
   Installed Grisu ──────────────────────── v1.0.2
   Installed RelocatableFolders ─────────── v1.0.1
   Installed ConcurrentUtilities ────────── v2.4.1
   Installed Xorg_xcb_util_image_jll ────── v0.4.0+1
   Installed Xorg_libpthread_stubs_jll ──── v0.1.1+0
   Installed RecipesPipeline ────────────── v0.6.12
   Installed PlotUtils ──────────────────── v1.4.1
   Installed DelimitedFiles ─────────────── v1.9.1
   Installed OpenSSL ────────────────────── v1.4.3
   Installed Contour ────────────────────── v0.6.3
   Installed Xorg_libSM_jll ─────────────── v1.2.4+0
   Installed Fontconfig_jll ─────────────── v2.13.96+0
   Installed Cairo_jll ──────────────────── v1.18.0+1
   Installed Xorg_xcb_util_jll ──────────── v0.4.0+1
   Installed Libgpg_error_jll ───────────── v1.49.0+0
   Installed HTTP ───────────────────────── v1.10.6
   Installed EpollShim_jll ──────────────── v0.0.20230411+0
   Installed Xorg_libxkbfile_jll ────────── v1.1.2+0
   Installed Xorg_libXinerama_jll ───────── v1.1.4+4
   Installed Xorg_libXau_jll ────────────── v1.0.11+0
   Installed Missings ───────────────────── v1.2.0
   Installed FFMPEG ─────────────────────── v0.4.1
   Installed IrrationalConstants ────────── v0.2.2
   Installed Xorg_xcb_util_keysyms_jll ──── v0.4.0+1
   Installed xkbcommon_jll ──────────────── v1.4.1+1
   Installed Showoff ────────────────────── v1.0.3
   Installed Bzip2_jll ──────────────────── v1.0.8+1
   Installed Pipe ───────────────────────── v1.3.0
   Installed JSON ───────────────────────── v0.21.4
   Installed SimpleBufferStream ─────────── v1.1.0
   Installed HarfBuzz_jll ───────────────── v2.8.1+1
   Installed XZ_jll ─────────────────────── v5.4.6+0
   Installed LZO_jll ────────────────────── v2.10.2+0
   Installed NaNMath ────────────────────── v1.0.2
   Installed PlotThemes ─────────────────── v3.1.0
   Installed GR ─────────────────────────── v0.73.5
   Installed FriBidi_jll ────────────────── v1.0.14+0
   Installed fzf_jll ────────────────────── v0.43.0+0
   Installed GLFW_jll ───────────────────── v3.3.9+0
   Installed UnicodeFun ─────────────────── v0.4.1
   Installed MbedTLS ────────────────────── v1.1.9
   Installed TranscodingStreams ─────────── v0.10.8
   Installed ColorSchemes ───────────────── v3.24.0
   Installed x264_jll ───────────────────── v2021.5.5+0
   Installed FreeType2_jll ──────────────── v2.13.1+0
   Installed JLFzf ──────────────────────── v0.1.7
   Installed StatsAPI ───────────────────── v1.7.0
   Installed Compat ─────────────────────── v4.15.0
   Installed DataStructures ─────────────── v0.18.20
   Installed Colors ─────────────────────── v0.12.10
   Installed mtdev_jll ──────────────────── v1.1.6+0
   Installed Xorg_libxcb_jll ────────────── v1.15.0+0
   Installed libpng_jll ─────────────────── v1.6.43+1
   Installed libaom_jll ─────────────────── v3.4.0+0
   Installed ExceptionUnwrapping ────────── v0.1.10
   Installed CodecZlib ──────────────────── v0.7.4
   Installed StatsBase ──────────────────── v0.34.3
   Installed Scratch ────────────────────── v1.2.1
   Installed gperf_jll ──────────────────── v3.1.1+0
   Installed eudev_jll ──────────────────── v3.2.9+0
   Installed Xorg_xcb_util_cursor_jll ───── v0.1.4+0
   Installed ColorTypes ─────────────────── v0.11.5
   Installed Xorg_libXext_jll ───────────── v1.3.6+0
   Installed Zstd_jll ───────────────────── v1.5.6+0
   Installed TensorCore ─────────────────── v0.1.1
   Installed Expat_jll ──────────────────── v2.6.2+0
   Installed Plots ──────────────────────── v1.40.4
   Installed Libtiff_jll ────────────────── v4.5.1+1
   Installed Parsers ────────────────────── v2.8.1
   Installed Libffi_jll ─────────────────── v3.2.2+1
   Installed Xorg_libXrender_jll ────────── v0.9.11+0
   Installed Format ─────────────────────── v1.3.7
   Installed JLLWrappers ────────────────── v1.5.0
   Installed ColorVectorSpace ───────────── v0.10.0
   Installed OrderedCollections ─────────── v1.6.3
   Installed libevdev_jll ───────────────── v1.11.0+0
   Installed libinput_jll ───────────────── v1.18.0+0
   Installed Xorg_libXi_jll ─────────────── v1.7.10+4
   Installed XSLT_jll ───────────────────── v1.1.34+0
   Installed Vulkan_Loader_jll ──────────── v1.3.243+0
   Installed Ogg_jll ────────────────────── v1.3.5+1
   Installed Reexport ───────────────────── v1.2.2
   Installed LogExpFunctions ────────────── v0.3.27
   Installed MacroTools ─────────────────── v0.5.13
   Installed Xorg_libXcursor_jll ────────── v1.2.0+4
   Installed Xorg_xcb_util_renderutil_jll ─ v0.3.9+1
   Installed libass_jll ─────────────────── v0.15.1+0
   Installed Xorg_libICE_jll ────────────── v1.1.1+0
   Installed Libuuid_jll ────────────────── v2.40.0+0
   Installed Wayland_protocols_jll ──────── v1.31.0+0
   Installed Graphite2_jll ──────────────── v1.3.14+0
   Installed Pixman_jll ─────────────────── v0.42.2+0
   Installed DocStringExtensions ────────── v0.9.3
   Installed Xorg_xtrans_jll ────────────── v1.5.0+0
   Installed XML2_jll ───────────────────── v2.12.6+0
   Installed Wayland_jll ────────────────── v1.21.0+1
   Installed OpenSSL_jll ────────────────── v3.0.13+1
   Installed Gettext_jll ────────────────── v0.21.0+0
   Installed FFMPEG_jll ─────────────────── v4.4.4+1
   Installed BitFlags ───────────────────── v0.1.8
   Installed Latexify ───────────────────── v0.16.3
   Installed Xorg_xkeyboard_config_jll ──── v2.39.0+0
   Installed LLVMOpenMP_jll ─────────────── v15.0.7+0
   Installed Xorg_libXrandr_jll ─────────── v1.5.2+4
   Installed Xorg_libXfixes_jll ─────────── v5.0.3+4
   Installed DataAPI ────────────────────── v1.16.0
   Installed RecipesBase ────────────────── v1.3.4
   Installed Libgcrypt_jll ──────────────── v1.8.11+0
   Installed FixedPointNumbers ──────────── v0.8.4
   Installed LAME_jll ───────────────────── v3.100.2+0
   Installed Qt6Base_jll ────────────────── v6.5.3+1
   Installed Libiconv_jll ───────────────── v1.17.0+0
   Installed Glib_jll ───────────────────── v2.80.0+0
   Installed LaTeXStrings ───────────────── v1.3.1
   Installed libvorbis_jll ──────────────── v1.3.7+1
   Installed URIs ───────────────────────── v1.5.1
   Installed PrecompileTools ────────────── v1.2.1
   Installed Xorg_libXdmcp_jll ──────────── v1.1.4+0
   Installed Libglvnd_jll ───────────────── v1.6.0+0
   Installed Xorg_libX11_jll ────────────── v1.8.6+0
   Installed Unzip ──────────────────────── v0.2.0
   Installed Requires ───────────────────── v1.3.0
   Installed SortingAlgorithms ──────────── v1.2.1
   Installed UnitfulLatexify ────────────── v1.6.3
    Updating `/private/var/folders/v_/fhpj9jn151d4p9c2fdw2gv780000gn/T/jl_fonR2N/Project.toml`
  [91a5bcdd] + Plots v1.40.4
    Updating `/private/var/folders/v_/fhpj9jn151d4p9c2fdw2gv780000gn/T/jl_fonR2N/Manifest.toml`
  [d1d4a3ce] + BitFlags v0.1.8
  [944b1d66] + CodecZlib v0.7.4
  [35d6a980] + ColorSchemes v3.24.0
  [3da002f7] + ColorTypes v0.11.5
  [c3611d14] + ColorVectorSpace v0.10.0
  [5ae59095] + Colors v0.12.10
  [34da2185] + Compat v4.15.0
  [f0e56b4a] + ConcurrentUtilities v2.4.1
  [d38c429a] + Contour v0.6.3
  [9a962f9c] + DataAPI v1.16.0
  [864edb3b] + DataStructures v0.18.20
  [8bb1440f] + DelimitedFiles v1.9.1
  [ffbed154] + DocStringExtensions v0.9.3
  [460bff9d] + ExceptionUnwrapping v0.1.10
  [c87230d0] + FFMPEG v0.4.1
  [53c48c17] + FixedPointNumbers v0.8.4
  [1fa38f19] + Format v1.3.7
  [28b8d3ca] + GR v0.73.5
  [42e2da0e] + Grisu v1.0.2
  [cd3eb016] + HTTP v1.10.6
  [92d709cd] + IrrationalConstants v0.2.2
  [1019f520] + JLFzf v0.1.7
  [692b3bcd] + JLLWrappers v1.5.0
  [682c06a0] + JSON v0.21.4
  [b964fa9f] + LaTeXStrings v1.3.1
  [23fbe1c1] + Latexify v0.16.3
  [2ab3a3ac] + LogExpFunctions v0.3.27
  [e6f89c97] + LoggingExtras v1.0.3
  [1914dd2f] + MacroTools v0.5.13
  [739be429] + MbedTLS v1.1.9
  [442fdcdd] + Measures v0.3.2
  [e1d29d7a] + Missings v1.2.0
  [77ba4419] + NaNMath v1.0.2
  [4d8831e6] + OpenSSL v1.4.3
  [bac558e1] + OrderedCollections v1.6.3
  [69de0a69] + Parsers v2.8.1
  [b98c9c47] + Pipe v1.3.0
  [ccf2f8ad] + PlotThemes v3.1.0
  [995b91a9] + PlotUtils v1.4.1
  [91a5bcdd] + Plots v1.40.4
  [aea7be01] + PrecompileTools v1.2.1
  [21216c6a] + Preferences v1.4.3
  [3cdcf5f2] + RecipesBase v1.3.4
  [01d81517] + RecipesPipeline v0.6.12
  [189a3867] + Reexport v1.2.2
  [05181044] + RelocatableFolders v1.0.1
  [ae029012] + Requires v1.3.0
  [6c6a2e73] + Scratch v1.2.1
  [992d4aef] + Showoff v1.0.3
  [777ac1f9] + SimpleBufferStream v1.1.0
  [a2af1166] + SortingAlgorithms v1.2.1
  [82ae8749] + StatsAPI v1.7.0
  [2913bbd2] + StatsBase v0.34.3
  [62fd8b95] + TensorCore v0.1.1
  [3bb67fe8] + TranscodingStreams v0.10.8
  [5c2747f8] + URIs v1.5.1
  [1cfade01] + UnicodeFun v0.4.1
  [1986cc42] + Unitful v1.19.0
  [45397f5d] + UnitfulLatexify v1.6.3
  [41fe7b60] + Unzip v0.2.0
  [6e34b625] + Bzip2_jll v1.0.8+1
  [83423d85] + Cairo_jll v1.18.0+1
  [2702e6a9] + EpollShim_jll v0.0.20230411+0
  [2e619515] + Expat_jll v2.6.2+0
⌅ [b22a6f82] + FFMPEG_jll v4.4.4+1
  [a3f928ae] + Fontconfig_jll v2.13.96+0
  [d7e528f0] + FreeType2_jll v2.13.1+0
  [559328eb] + FriBidi_jll v1.0.14+0
  [0656b61e] + GLFW_jll v3.3.9+0
  [d2c73de3] + GR_jll v0.73.5+0
  [78b55507] + Gettext_jll v0.21.0+0
  [7746bdde] + Glib_jll v2.80.0+0
  [3b182d85] + Graphite2_jll v1.3.14+0
  [2e76f6c2] + HarfBuzz_jll v2.8.1+1
  [aacddb02] + JpegTurbo_jll v3.0.2+0
  [c1c5ebd0] + LAME_jll v3.100.2+0
⌅ [88015f11] + LERC_jll v3.0.0+1
  [1d63c593] + LLVMOpenMP_jll v15.0.7+0
  [dd4b983a] + LZO_jll v2.10.2+0
⌅ [e9f186c6] + Libffi_jll v3.2.2+1
  [d4300ac3] + Libgcrypt_jll v1.8.11+0
  [7e76a0d4] + Libglvnd_jll v1.6.0+0
  [7add5ba3] + Libgpg_error_jll v1.49.0+0
  [94ce4f54] + Libiconv_jll v1.17.0+0
  [4b2f31a3] + Libmount_jll v2.40.0+0
⌅ [89763e89] + Libtiff_jll v4.5.1+1
  [38a345b3] + Libuuid_jll v2.40.0+0
  [e7412a2a] + Ogg_jll v1.3.5+1
  [458c3c95] + OpenSSL_jll v3.0.13+1
  [91d4177d] + Opus_jll v1.3.2+0
  [30392449] + Pixman_jll v0.42.2+0
  [c0090381] + Qt6Base_jll v6.5.3+1
  [a44049a8] + Vulkan_Loader_jll v1.3.243+0
  [a2964d1f] + Wayland_jll v1.21.0+1
  [2381bf8a] + Wayland_protocols_jll v1.31.0+0
  [02c8fc9c] + XML2_jll v2.12.6+0
  [aed1982a] + XSLT_jll v1.1.34+0
  [ffd25f8a] + XZ_jll v5.4.6+0
  [f67eecfb] + Xorg_libICE_jll v1.1.1+0
  [c834827a] + Xorg_libSM_jll v1.2.4+0
  [4f6342f7] + Xorg_libX11_jll v1.8.6+0
  [0c0b7dd1] + Xorg_libXau_jll v1.0.11+0
  [935fb764] + Xorg_libXcursor_jll v1.2.0+4
  [a3789734] + Xorg_libXdmcp_jll v1.1.4+0
  [1082639a] + Xorg_libXext_jll v1.3.6+0
  [d091e8ba] + Xorg_libXfixes_jll v5.0.3+4
  [a51aa0fd] + Xorg_libXi_jll v1.7.10+4
  [d1454406] + Xorg_libXinerama_jll v1.1.4+4
  [ec84b674] + Xorg_libXrandr_jll v1.5.2+4
  [ea2f1a96] + Xorg_libXrender_jll v0.9.11+0
  [14d82f49] + Xorg_libpthread_stubs_jll v0.1.1+0
  [c7cfdc94] + Xorg_libxcb_jll v1.15.0+0
  [cc61e674] + Xorg_libxkbfile_jll v1.1.2+0
  [e920d4aa] + Xorg_xcb_util_cursor_jll v0.1.4+0
  [12413925] + Xorg_xcb_util_image_jll v0.4.0+1
  [2def613f] + Xorg_xcb_util_jll v0.4.0+1
  [975044d2] + Xorg_xcb_util_keysyms_jll v0.4.0+1
  [0d47668e] + Xorg_xcb_util_renderutil_jll v0.3.9+1
  [c22f9ab0] + Xorg_xcb_util_wm_jll v0.4.1+1
  [35661453] + Xorg_xkbcomp_jll v1.4.6+0
  [33bec58e] + Xorg_xkeyboard_config_jll v2.39.0+0
  [c5fb5394] + Xorg_xtrans_jll v1.5.0+0
  [3161d3a3] + Zstd_jll v1.5.6+0
  [35ca27e7] + eudev_jll v3.2.9+0
⌅ [214eeab7] + fzf_jll v0.43.0+0
  [1a1c6b14] + gperf_jll v3.1.1+0
  [a4ae2306] + libaom_jll v3.4.0+0
  [0ac62f75] + libass_jll v0.15.1+0
  [2db6ffa8] + libevdev_jll v1.11.0+0
  [f638f0a6] + libfdk_aac_jll v2.0.2+0
  [36db933b] + libinput_jll v1.18.0+0
  [b53b4c65] + libpng_jll v1.6.43+1
  [f27f6e37] + libvorbis_jll v1.3.7+1
  [009596ad] + mtdev_jll v1.1.6+0
  [1270edf5] + x264_jll v2021.5.5+0
  [dfaa095f] + x265_jll v3.5.0+0
  [d8fb68d0] + xkbcommon_jll v1.4.1+1
  [0dad84c5] + ArgTools v1.1.1
  [56f22d72] + Artifacts
  [2a0f44e3] + Base64
  [ade2ca70] + Dates
  [f43a241f] + Downloads v1.6.0
  [7b1f6079] + FileWatching
  [b77e0a4c] + InteractiveUtils
  [b27032c2] + LibCURL v0.6.4
  [76f85450] + LibGit2
  [8f399da3] + Libdl
  [37e2e46d] + LinearAlgebra
  [56ddb016] + Logging
  [d6f4376e] + Markdown
  [a63ad114] + Mmap
  [ca575930] + NetworkOptions v1.2.0
  [44cfe95a] + Pkg v1.10.0
  [de0858da] + Printf
  [3fa0cd96] + REPL
  [9a3f8284] + Random
  [ea8e919c] + SHA v0.7.0
  [9e88b42a] + Serialization
  [6462fe0b] + Sockets
  [2f01184e] + SparseArrays v1.10.0
  [10745b16] + Statistics v1.10.0
  [fa267f1f] + TOML v1.0.3
  [a4e569a6] + Tar v1.10.0
  [8dfed614] + Test
  [cf7118a7] + UUIDs
  [4ec0a83e] + Unicode
  [e66e0078] + CompilerSupportLibraries_jll v1.0.5+1
  [deac9b47] + LibCURL_jll v8.4.0+0
  [e37daf67] + LibGit2_jll v1.6.4+0
  [29816b5a] + LibSSH2_jll v1.11.0+1
  [c8ffd9c3] + MbedTLS_jll v2.28.2+1
  [14a3606d] + MozillaCACerts_jll v2023.1.10
  [4536629a] + OpenBLAS_jll v0.3.23+2
  [05823500] + OpenLibm_jll v0.8.1+2
  [efcefdf7] + PCRE2_jll v10.42.0+1
  [bea87d4a] + SuiteSparse_jll v7.2.1+1
  [83775a58] + Zlib_jll v1.2.13+1
  [8e850b90] + libblastrampoline_jll v5.8.0+1
  [8e850ede] + nghttp2_jll v1.52.0+1
  [3f19e933] + p7zip_jll v17.4.0+2
        Info Packages marked with ⌅ have new versions available but compatibility constraints restrict them from upgrading. To see why use `status --outdated -m`
Precompiling project...
  ✓ Compat
  ✓ Requires
  ✓ OrderedCollections
  ✓ MbedTLS
  ✓ Pipe
  ✓ Format
  ✓ LaTeXStrings
  ✓ DelimitedFiles
  ✓ Reexport
  ✓ Measures
  ✓ Unzip
  ✓ DocStringExtensions
  ✓ SimpleBufferStream
  ✓ IrrationalConstants
  ✓ TensorCore
  ✓ URIs
  ✓ DataAPI
  ✓ StatsAPI
  ✓ CompilerSupportLibraries_jll
  ✓ BitFlags
  ✓ Scratch
  ✓ Contour
  ✓ LoggingExtras
  ✓ ExceptionUnwrapping
  ✓ ConcurrentUtilities
  ✓ UnicodeFun
  ✓ Grisu
  ✓ MacroTools
  ✓ TranscodingStreams
  ✓ NaNMath
  ✓ Preferences
  ✓ Compat → CompatLinearAlgebraExt
  ✓ Statistics
  ✓ Showoff
  ✓ LogExpFunctions
  ✓ Missings
  ✓ RelocatableFolders
  ✓ TranscodingStreams → TestExt
  ✓ PrecompileTools
  ✓ JLLWrappers
  ✓ CodecZlib
  ✓ DataStructures
  ✓ Latexify
  ✓ FixedPointNumbers
  ✓ fzf_jll
  ✓ OpenSSL_jll
  ✓ RecipesBase
  ✓ Opus_jll
  ✓ Xorg_libICE_jll
  ✓ JpegTurbo_jll
  ✓ XZ_jll
  ✓ mtdev_jll
  ✓ gperf_jll
  ✓ Ogg_jll
  ✓ Xorg_libXau_jll
  ✓ Xorg_xtrans_jll
  ✓ Xorg_libXdmcp_jll
  ✓ libpng_jll
  ✓ libevdev_jll
  ✓ x265_jll
  ✓ libfdk_aac_jll
  ✓ x264_jll
  ✓ libaom_jll
  ✓ Graphite2_jll
  ✓ Libmount_jll
  ✓ Zstd_jll
  ✓ Libiconv_jll
  ✓ EpollShim_jll
  ✓ Libffi_jll
  ✓ LLVMOpenMP_jll
  ✓ Bzip2_jll
  ✓ Libgpg_error_jll
  ✓ Expat_jll
  ✓ Wayland_protocols_jll
  ✓ LZO_jll
  ✓ LAME_jll
  ✓ Xorg_libpthread_stubs_jll
  ✓ LERC_jll
  ✓ FriBidi_jll
  ✓ Libuuid_jll
  ✓ SortingAlgorithms
  ✓ JLFzf
  ✓ Xorg_libSM_jll
  ✓ eudev_jll
  ✓ ColorTypes
  ✓ OpenSSL
  ✓ libvorbis_jll
  ✓ XML2_jll
  ✓ Pixman_jll
  ✓ FreeType2_jll
  ✓ Libgcrypt_jll
  ✓ libinput_jll
  ✓ Libtiff_jll
  ✓ Unitful
  ✓ StatsBase
  ✓ Gettext_jll
  ✓ ColorVectorSpace
  ✓ Wayland_jll
  ✓ Fontconfig_jll
  ✓ XSLT_jll
  ✓ Colors
  ✓ Parsers
  ✓ Xorg_libxcb_jll
  ✓ Glib_jll
  ✓ HTTP
  ✓ Xorg_xcb_util_jll
  ✓ UnitfulLatexify
  ✓ Xorg_libX11_jll
  ✓ Xorg_xcb_util_image_jll
  ✓ JSON
  ✓ Xorg_xcb_util_renderutil_jll
  ✓ Xorg_xcb_util_keysyms_jll
  ✓ Xorg_xcb_util_wm_jll
  ✓ Xorg_libXfixes_jll
  ✓ Xorg_libxkbfile_jll
  ✓ Xorg_libXext_jll
  ✓ Xorg_libXrender_jll
  ✓ Xorg_xcb_util_cursor_jll
  ✓ Xorg_xkbcomp_jll
  ✓ Libglvnd_jll
  ✓ Xorg_libXinerama_jll
  ✓ Xorg_libXi_jll
  ✓ Xorg_libXcursor_jll
  ✓ Xorg_libXrandr_jll
  ✓ ColorSchemes
  ✓ Xorg_xkeyboard_config_jll
  ✓ GLFW_jll
  ✓ Cairo_jll
  ✓ xkbcommon_jll
  ✓ Vulkan_Loader_jll
  ✓ HarfBuzz_jll
  ✓ libass_jll
  ✓ Qt6Base_jll
  ✓ FFMPEG_jll
  ✓ FFMPEG
  ✓ GR_jll
  ✓ PlotUtils
  ✓ GR
  ✓ PlotThemes
  ✓ RecipesPipeline
  ✓ Plots
  ✓ Plots → UnitfulExt
  142 dependencies successfully precompiled in 81 seconds. 6 already precompiled.

julia> Pkg.add("Images")
   Resolving package versions...
   Installed ImageIO ────────────────────────── v0.6.7
   Installed TiledIteration ─────────────────── v0.5.0
   Installed OffsetArrays ───────────────────── v1.14.0
   Installed JpegTurbo ──────────────────────── v0.1.5
   Installed ImageSegmentation ──────────────── v1.8.1
   Installed PNGFiles ───────────────────────── v0.4.3
   Installed HistogramThresholding ──────────── v0.3.1
   Installed AxisArrays ─────────────────────── v0.4.7
   Installed FFTW ───────────────────────────── v1.8.0
   Installed ImageMagick ────────────────────── v1.2.1
   Installed Sixel ──────────────────────────── v0.1.3
   Installed ProgressMeter ──────────────────── v1.10.0
   Installed OpenEXR ────────────────────────── v0.3.2
   Installed TiffImages ─────────────────────── v0.6.8
   Installed Images ─────────────────────────── v0.26.1
   Installed RegionTrees ────────────────────── v0.3.2
   Installed CEnum ──────────────────────────── v0.5.0
   Installed StaticArrays ───────────────────── v1.9.3
   Installed IntelOpenMP_jll ────────────────── v2024.1.0+0
   Installed MetaGraphs ─────────────────────── v0.7.2
   Installed Netpbm ─────────────────────────── v1.1.1
   Installed NearestNeighbors ───────────────── v0.4.16
   Installed Static ─────────────────────────── v0.8.10
   Installed Polynomials ────────────────────── v3.2.13
   Installed SLEEFPirates ───────────────────── v0.6.42
   Installed Distances ──────────────────────── v0.10.11
   Installed RealDot ────────────────────────── v0.1.0
   Installed SIMDTypes ──────────────────────── v0.1.0
   Installed FileIO ─────────────────────────── v1.16.3
   Installed ArnoldiMethod ──────────────────── v0.4.0
   Installed JLD2 ───────────────────────────── v0.4.46
   Installed CpuId ──────────────────────────── v0.3.1
   Installed QOI ────────────────────────────── v1.0.0
   Installed IfElse ─────────────────────────── v0.1.1
   Installed SpecialFunctions ───────────────── v2.4.0
   Installed PkgVersion ─────────────────────── v0.3.3
   Installed StaticArraysCore ───────────────── v1.4.2
   Installed ThreadingUtilities ─────────────── v0.5.2
   Installed CustomUnitRanges ───────────────── v1.0.2
   Installed ManualMemory ───────────────────── v0.1.8
   Installed Graphics ───────────────────────── v1.1.2
   Installed ImageMetadata ──────────────────── v0.9.9
   Installed Ratios ─────────────────────────── v0.4.5
   Installed CatIndices ─────────────────────── v0.2.2
   Installed MappedArrays ───────────────────── v0.4.2
   Installed ComputationalResources ─────────── v0.3.2
   Installed ImageMagick_jll ────────────────── v6.9.13+0
   Installed Graphs ─────────────────────────── v1.11.0
   Installed PaddedViews ────────────────────── v0.5.12
   Installed StaticArrayInterface ───────────── v1.5.0
   Installed MosaicViews ────────────────────── v0.3.4
   Installed LazyModules ────────────────────── v0.3.1
   Installed ImageTransformations ───────────── v0.10.1
   Installed ImageCorners ───────────────────── v0.1.3
   Installed BitTwiddlingConvenienceFunctions ─ v0.1.5
   Installed oneTBB_jll ─────────────────────── v2021.12.0+0
   Installed LayoutPointers ─────────────────── v0.1.15
   Installed Inflate ────────────────────────── v0.1.4
   Installed ImageQualityIndexes ────────────── v0.3.7
   Installed ImageShow ──────────────────────── v0.3.8
   Installed Imath_jll ──────────────────────── v3.1.11+0
   Installed IntegralArrays ─────────────────── v0.1.5
   Installed MKL_jll ────────────────────────── v2024.1.0+0
   Installed AbstractFFTs ───────────────────── v1.5.0
   Installed ColorVectorSpace ───────────────── v0.9.10
   Installed ImageCore ──────────────────────── v0.9.4
   Installed CoordinateTransformations ──────── v0.6.3
   Installed LoopVectorization ──────────────── v0.12.170
   Installed ChainRulesCore ─────────────────── v1.23.0
   Installed Ghostscript_jll ────────────────── v9.55.0+4
   Installed PolyesterWeave ─────────────────── v0.2.1
   Installed ArrayInterface ─────────────────── v7.10.0
   Installed Quaternions ────────────────────── v0.7.6
   Installed LittleCMS_jll ──────────────────── v2.15.0+0
   Installed StackViews ─────────────────────── v0.1.1
   Installed CloseOpenIntervals ─────────────── v0.1.12
   Installed Rotations ──────────────────────── v1.7.0
   Installed Clustering ─────────────────────── v0.15.7
   Installed FFTW_jll ───────────────────────── v3.3.10+0
   Installed RangeArrays ────────────────────── v0.3.2
   Installed OpenSpecFun_jll ────────────────── v0.5.5+0
   Installed UnPack ─────────────────────────── v1.0.2
   Installed Interpolations ─────────────────── v0.15.1
   Installed OpenEXR_jll ────────────────────── v3.2.4+0
   Installed SimpleTraits ───────────────────── v0.9.4
   Installed Adapt ──────────────────────────── v4.0.4
   Installed ImageBase ──────────────────────── v0.1.5
   Installed VectorizationBase ──────────────── v0.21.67
   Installed IntervalSets ───────────────────── v0.7.10
   Installed IterTools ──────────────────────── v1.10.0
   Installed OpenJpeg_jll ───────────────────── v2.5.0+0
   Installed IndirectArrays ─────────────────── v1.0.0
   Installed SimpleWeightedGraphs ───────────── v1.4.0
   Installed CPUSummary ─────────────────────── v0.2.4
   Installed ImageDistances ─────────────────── v0.2.17
   Installed libsixel_jll ───────────────────── v1.10.3+0
   Installed AxisAlgorithms ─────────────────── v1.1.0
   Installed HostCPUFeatures ────────────────── v0.1.16
   Installed ImageBinarization ──────────────── v0.3.0
   Installed FFTViews ───────────────────────── v0.3.2
   Installed ImageAxes ──────────────────────── v0.6.11
   Installed WoodburyMatrices ───────────────── v1.0.0
   Installed Parameters ─────────────────────── v0.12.3
   Installed ImageMorphology ────────────────── v0.4.5
   Installed ImageFiltering ─────────────────── v0.7.6
   Installed ImageContrastAdjustment ────────── v0.3.12
    Updating `/private/var/folders/v_/fhpj9jn151d4p9c2fdw2gv780000gn/T/jl_fonR2N/Project.toml`
  [916415d5] + Images v0.26.1
    Updating `/private/var/folders/v_/fhpj9jn151d4p9c2fdw2gv780000gn/T/jl_fonR2N/Manifest.toml`
  [621f4979] + AbstractFFTs v1.5.0
  [79e6a3ab] + Adapt v4.0.4
  [ec485272] + ArnoldiMethod v0.4.0
  [4fba245c] + ArrayInterface v7.10.0
  [13072b0f] + AxisAlgorithms v1.1.0
  [39de3d68] + AxisArrays v0.4.7
  [62783981] + BitTwiddlingConvenienceFunctions v0.1.5
  [fa961155] + CEnum v0.5.0
  [2a0fbf3d] + CPUSummary v0.2.4
  [aafaddc9] + CatIndices v0.2.2
  [d360d2e6] + ChainRulesCore v1.23.0
  [fb6a15b2] + CloseOpenIntervals v0.1.12
  [aaaa29a8] + Clustering v0.15.7
⌅ [c3611d14] ↓ ColorVectorSpace v0.10.0 ⇒ v0.9.10
  [ed09eef8] + ComputationalResources v0.3.2
  [150eb455] + CoordinateTransformations v0.6.3
  [adafc99b] + CpuId v0.3.1
  [dc8bdbbb] + CustomUnitRanges v1.0.2
  [b4f34e82] + Distances v0.10.11
  [4f61f5a4] + FFTViews v0.3.2
  [7a1cc6ca] + FFTW v1.8.0
  [5789e2e9] + FileIO v1.16.3
  [a2bd30eb] + Graphics v1.1.2
  [86223c79] + Graphs v1.11.0
  [2c695a8d] + HistogramThresholding v0.3.1
  [3e5b6fbb] + HostCPUFeatures v0.1.16
  [615f187c] + IfElse v0.1.1
  [2803e5a7] + ImageAxes v0.6.11
⌃ [c817782e] + ImageBase v0.1.5
  [cbc4b850] + ImageBinarization v0.3.0
  [f332f351] + ImageContrastAdjustment v0.3.12
⌅ [a09fc81d] + ImageCore v0.9.4
  [89d5987c] + ImageCorners v0.1.3
  [51556ac3] + ImageDistances v0.2.17
⌃ [6a3955dd] + ImageFiltering v0.7.6
  [82e4d734] + ImageIO v0.6.7
⌃ [6218d12a] + ImageMagick v1.2.1
  [bc367c6b] + ImageMetadata v0.9.9
  [787d08f9] + ImageMorphology v0.4.5
  [2996bd0c] + ImageQualityIndexes v0.3.7
⌃ [80713f31] + ImageSegmentation v1.8.1
  [4e3cecfd] + ImageShow v0.3.8
  [02fcd773] + ImageTransformations v0.10.1
  [916415d5] + Images v0.26.1
  [9b13fd28] + IndirectArrays v1.0.0
  [d25df0c9] + Inflate v0.1.4
  [1d092043] + IntegralArrays v0.1.5
  [a98d9a8b] + Interpolations v0.15.1
  [8197267c] + IntervalSets v0.7.10
  [c8e1da08] + IterTools v1.10.0
  [033835bb] + JLD2 v0.4.46
  [b835a17e] + JpegTurbo v0.1.5
  [10f19ff3] + LayoutPointers v0.1.15
  [8cdb02fc] + LazyModules v0.3.1
  [bdcacae8] + LoopVectorization v0.12.170
  [d125e4d3] + ManualMemory v0.1.8
  [dbb5928d] + MappedArrays v0.4.2
  [626554b9] + MetaGraphs v0.7.2
  [e94cdb99] + MosaicViews v0.3.4
  [b8a86587] + NearestNeighbors v0.4.16
  [f09324ee] + Netpbm v1.1.1
  [6fe1bfb0] + OffsetArrays v1.14.0
  [52e1d378] + OpenEXR v0.3.2
  [f57f5aa1] + PNGFiles v0.4.3
  [5432bcbf] + PaddedViews v0.5.12
  [d96e819e] + Parameters v0.12.3
  [eebad327] + PkgVersion v0.3.3
  [1d0040c9] + PolyesterWeave v0.2.1
⌅ [f27b6e38] + Polynomials v3.2.13
  [92933f4c] + ProgressMeter v1.10.0
  [4b34888f] + QOI v1.0.0
  [94ee1d12] + Quaternions v0.7.6
  [b3c3ace0] + RangeArrays v0.3.2
  [c84ed2f1] + Ratios v0.4.5
  [c1ae055f] + RealDot v0.1.0
  [dee08c22] + RegionTrees v0.3.2
  [6038ab10] + Rotations v1.7.0
  [94e857df] + SIMDTypes v0.1.0
  [476501e8] + SLEEFPirates v0.6.42
  [699a6c99] + SimpleTraits v0.9.4
  [47aef6b3] + SimpleWeightedGraphs v1.4.0
  [45858cf5] + Sixel v0.1.3
  [276daf66] + SpecialFunctions v2.4.0
  [cae243ae] + StackViews v0.1.1
  [aedffcd0] + Static v0.8.10
  [0d7ed370] + StaticArrayInterface v1.5.0
  [90137ffa] + StaticArrays v1.9.3
  [1e83bf80] + StaticArraysCore v1.4.2
  [8290d209] + ThreadingUtilities v0.5.2
⌅ [731e570b] + TiffImages v0.6.8
  [06e1c1a7] + TiledIteration v0.5.0
  [3a884ed6] + UnPack v1.0.2
  [3d5dd08c] + VectorizationBase v0.21.67
  [efce3f68] + WoodburyMatrices v1.0.0
  [f5851436] + FFTW_jll v3.3.10+0
  [61579ee1] + Ghostscript_jll v9.55.0+4
⌅ [c73af94c] + ImageMagick_jll v6.9.13+0
  [905a6f67] + Imath_jll v3.1.11+0
  [1d5cc7b8] + IntelOpenMP_jll v2024.1.0+0
  [d3a379c0] + LittleCMS_jll v2.15.0+0
  [856f044c] + MKL_jll v2024.1.0+0
  [18a262bb] + OpenEXR_jll v3.2.4+0
  [643b3616] + OpenJpeg_jll v2.5.0+0
  [efe28fd5] + OpenSpecFun_jll v0.5.5+0
  [075b6546] + libsixel_jll v1.10.3+0
  [1317d2d5] + oneTBB_jll v2021.12.0+0
  [8ba89e20] + Distributed
  [4af54fe1] + LazyArtifacts
  [1a1011a3] + SharedArrays
  [4607b0f0] + SuiteSparse
        Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading. To see why use `status --outdated -m`
Precompiling project...
  ✓ RangeArrays
  ✓ IndirectArrays
  ✓ CEnum
  ✓ AbstractFFTs
  ✓ UnPack
  ✓ OffsetArrays
  ✓ PkgVersion
  ✓ IterTools
  ✓ ManualMemory
  ✓ RealDot
  ✓ SIMDTypes
  ✓ CustomUnitRanges
  ✓ IntervalSets
  ✓ ProgressMeter
  ✓ LazyModules
  ✓ Ratios
  ✓ IfElse
  ✓ CpuId
  ✓ Inflate
  ✓ Adapt
  ✓ ChainRulesCore
  ✓ StaticArraysCore
  ✓ ComputationalResources
  ✓ MappedArrays
  ✓ SimpleTraits
  ✓ SuiteSparse
  ✓ WoodburyMatrices
  ✓ Ghostscript_jll
  ✓ Imath_jll
  ✓ IntelOpenMP_jll
  ✓ oneTBB_jll
  ✓ FFTW_jll
  ✓ OpenSpecFun_jll
  ✓ libsixel_jll
  ✓ LittleCMS_jll
  ✓ Distances
  ✓ Graphics
  ✓ FileIO
  ✓ Parameters
  ✓ Quaternions
  ✓ ThreadingUtilities
  ✓ Ratios → RatiosFixedPointNumbersExt
  ✓ Static
  ✓ IntervalSets → IntervalSetsRecipesBaseExt
  ✓ OffsetArrays → OffsetArraysAdaptExt
  ✓ ChainRulesCore → ChainRulesCoreSparseArraysExt
  ✓ AbstractFFTs → AbstractFFTsChainRulesCoreExt
  ✓ AxisAlgorithms
  ✓ LogExpFunctions → LogExpFunctionsChainRulesCoreExt
  ✓ OpenEXR_jll
  ✓ MKL_jll
  ✓ OpenJpeg_jll
  ✓ Distances → DistancesSparseArraysExt
  ✓ QOI
  ✓ BitTwiddlingConvenienceFunctions
  ✓ IntervalSets → IntervalSetsRandomExt
  ✓ CPUSummary
  ✓ StackViews
  ✓ PaddedViews
  ✓ CatIndices
  ✓ AbstractFFTs → AbstractFFTsTestExt
  ✓ StaticArrays
  ✓ SpecialFunctions
  ✓ OpenEXR
  ✓ ImageMagick_jll
  ✓ Distances → DistancesChainRulesCoreExt
  ✓ HostCPUFeatures
  ✓ IntervalSets → IntervalSetsStatisticsExt
  ✓ PolyesterWeave
  ✓ MosaicViews
  ✓ StaticArrays → StaticArraysStatisticsExt
  ✓ Polynomials
  ✓ Adapt → AdaptStaticArraysExt
  ✓ IntegralArrays
  ✓ SpecialFunctions → SpecialFunctionsChainRulesCoreExt
  ✓ AxisArrays
  ✓ StaticArrays → StaticArraysChainRulesCoreExt
  ✓ Polynomials → PolynomialsChainRulesCoreExt
  ✓ ArrayInterface
  ✓ ArnoldiMethod
  ✓ FFTW
  ✓ CoordinateTransformations
  ✓ ColorVectorSpace
  ✓ JLD2
  ✓ RegionTrees
  ✓ ArrayInterface → ArrayInterfaceStaticArraysCoreExt
  ✓ Rotations
  ✓ NearestNeighbors
  ✓ FFTViews
  ✓ Interpolations
  ✓ StaticArrayInterface
  ✓ Rotations → RotationsRecipesBaseExt
  ✓ ColorSchemes
  ✓ Graphs
  ✓ Interpolations → InterpolationsUnitfulExt
  ✓ StaticArrayInterface → StaticArrayInterfaceStaticArraysExt
  ✓ Clustering
  ✓ SimpleWeightedGraphs
  ✓ MetaGraphs
  ✓ StaticArrayInterface → StaticArrayInterfaceOffsetArraysExt
  ✓ CloseOpenIntervals
  ✓ TiledIteration
  ✓ LayoutPointers
  ✓ PlotUtils
  ✓ TiffImages
  ✓ VectorizationBase
  ✓ PlotThemes
  ✓ RecipesPipeline
  ✓ SLEEFPirates
  ✓ ImageCore
  ✓ JpegTurbo
  ✓ ImageBase
  ✓ PNGFiles
  ✓ Sixel
  ✓ ImageMagick
  ✓ HistogramThresholding
  ✓ ImageAxes
  ✓ ImageTransformations
  ✓ ImageShow
  ✓ ImageBinarization
  ✓ ImageMetadata
  ✓ LoopVectorization
  ✓ ImageContrastAdjustment
  ✓ Netpbm
  ✓ LoopVectorization → SpecialFunctionsExt
  ✓ ImageIO
  ✓ ImageMorphology
  ✓ ImageDistances
  ✓ Plots
  ✓ Plots → FileIOExt
  ✓ Plots → UnitfulExt
  ✓ ImageFiltering
  ✓ ImageSegmentation
  ✓ ImageCorners
  ✓ ImageQualityIndexes
  ✓ Images
  136 dependencies successfully precompiled in 134 seconds. 144 already precompiled.
kimikage commented 1 month ago

I agree about this being disgusting. However, newness and stability are often trade-offs. In other words, to varying degrees, such a manifestation is destined to appear somewhere in the development process.

A more specific issue is ImageMagick. ImageMagick_jll depends on some binary packages and is prone to dependency issues. Also, ImageMagick itself has many bugs, and many of the fixes are not backported. Furthermore, there are some unfixed problems with ImageMagick.jl, i.e., julia-specific features.

Perhaps Images.jl or JuliaImages ecosystem should eliminate the hard dependency on ImageMagick.

cf. PR #948 cc: @johnnychen94

kimikage commented 1 month ago

I don't know about historical background, but TestImages has one BMP file, and so far ImageIO does not support BMP.

We may need to do some "market research”. https://discourse.julialang.org/t/what-image-formats-do-you-use-within-julia/114333