JuliaIO / ImageMagick.jl

Thin Wrapper for the library ImageMagick
Other
53 stars 37 forks source link

Update to ImageMagick 7.1 #232

Open ViralBShah opened 3 months ago

ViralBShah commented 3 months ago

ImageMagick 7.1 is now in Yggdrasil. https://github.com/JuliaRegistries/General/pull/105903. Would be nice to get this package to upgrade. I imagine the upgrade may not be easy or straightforward, and hence opening this issue to see if someone might be interested in trying it out and seeing what it takes.

ViralBShah commented 3 months ago

Dup of #69. cc @musm.

ViralBShah commented 3 months ago

Keeping this one open instead of the older one, so that it is on top.

Just casually bumping the version number in Project.toml yields various issues. It seems that the ImageMagick 7 does not have the GetImageChannelDepth API any more:

        Info Packages marked with ⌃ and ⌅ have new versions available. Those with ⌃ may be upgradable, but those with ⌅ are restricted by compatibility constraints from upgrading.
Precompiling project...
  87 dependencies successfully precompiled in 43 seconds. 10 already precompiled.
  1 dependency had output during precompilation:
┌ ImageMagick
│  WARNING: using deprecated binding Colors.RGB1 in ImageCore.
│  , use XRGB instead.
│  WARNING: using deprecated binding Colors.RGB4 in ImageCore.
│  , use RGBX instead.
└  
     Testing Running tests...
Binary png: Error During Test at /home/viralbshah/.julia/dev/ImageMagick/test/constructed_images.jl:27
  Got exception outside of a @test
  could not load symbol "MagickGetImageChannelDepth":
  /home/viralbshah/.julia/artifacts/049f45ea8fb58e8e3a4bec857f50a240394776d3/lib/libMagickWand-7.Q16HDRI.so: undefined symbol: MagickGetImageChannelDepth
  Stacktrace:
    [1] getimagechanneldepth
      @ ~/.julia/dev/ImageMagick/src/libmagickwand.jl:430 [inlined]
    [2] _metadata(wand::MagickWand)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:85
    [3] load_(file::String, permute_horizontal::Bool; ImageType::Type, extraprop::String, extrapropertynames::Nothing, view::Bool)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:149
    [4] load_ (repeats 2 times)
      @ ~/.julia/dev/ImageMagick/src/ImageMagick.jl:138 [inlined]
    [5] load(::String)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:126
    [6] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:31 [inlined]
    [7] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
    [8] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:28 [inlined]
    [9] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
   [10] top-level scope
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:11
   [11] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [12] top-level scope
      @ ~/.julia/dev/ImageMagick/test/runtests.jl:6
   [13] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [14] top-level scope
      @ none:6
   [15] eval
      @ ./boot.jl:385 [inlined]
   [16] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:291
   [17] _start()
      @ Base ./client.jl:552
Gray png: Error During Test at /home/viralbshah/.julia/dev/ImageMagick/test/constructed_images.jl:59
  Got exception outside of a @test
  could not load symbol "MagickGetImageChannelDepth":
  /home/viralbshah/.julia/artifacts/049f45ea8fb58e8e3a4bec857f50a240394776d3/lib/libMagickWand-7.Q16HDRI.so: undefined symbol: MagickGetImageChannelDepth
  Stacktrace:
    [1] getimagechanneldepth
      @ ~/.julia/dev/ImageMagick/src/libmagickwand.jl:430 [inlined]
    [2] _metadata(wand::MagickWand)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:85
    [3] load_(file::String, permute_horizontal::Bool; ImageType::Type, extraprop::String, extrapropertynames::Nothing, view::Bool)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:149
    [4] load_ (repeats 2 times)
      @ ~/.julia/dev/ImageMagick/src/ImageMagick.jl:138 [inlined]
    [5] load(::String)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:126
    [6] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:64 [inlined]
    [7] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
    [8] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:60 [inlined]
    [9] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
   [10] top-level scope
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:11
   [11] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [12] top-level scope
      @ ~/.julia/dev/ImageMagick/test/runtests.jl:6
   [13] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [14] top-level scope
      @ none:6
   [15] eval
      @ ./boot.jl:385 [inlined]
   [16] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:291
   [17] _start()
      @ Base ./client.jl:552
Color: Error During Test at /home/viralbshah/.julia/dev/ImageMagick/test/constructed_images.jl:88
  Got exception outside of a @test
  Colorspace 23 not recognized
  Stacktrace:
    [1] error(::String, ::Int32, ::String)
      @ Base ./error.jl:44
    [2] getimagecolorspace
      @ ~/.julia/dev/ImageMagick/src/libmagickwand.jl:365 [inlined]
    [3] _metadata(wand::MagickWand)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:75
    [4] load_(file::String, permute_horizontal::Bool; ImageType::Type, extraprop::String, extrapropertynames::Nothing, view::Bool)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:149
    [5] load_ (repeats 2 times)
      @ ~/.julia/dev/ImageMagick/src/ImageMagick.jl:138 [inlined]
    [6] load(::String)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:126
    [7] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:95 [inlined]
    [8] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
    [9] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:89 [inlined]
   [10] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
   [11] top-level scope
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:11
   [12] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [13] top-level scope
      @ ~/.julia/dev/ImageMagick/test/runtests.jl:6
   [14] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [15] top-level scope
      @ none:6
   [16] eval
      @ ./boot.jl:385 [inlined]
   [17] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:291
   [18] _start()
      @ Base ./client.jl:552
Alpha: Error During Test at /home/viralbshah/.julia/dev/ImageMagick/test/constructed_images.jl:126
  Got exception outside of a @test
  Colorspace 23 not recognized
  Stacktrace:
    [1] error(::String, ::Int32, ::String)
      @ Base ./error.jl:44
    [2] getimagecolorspace
      @ ~/.julia/dev/ImageMagick/src/libmagickwand.jl:365 [inlined]
    [3] _metadata(wand::MagickWand)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:75
    [4] load_(file::String, permute_horizontal::Bool; ImageType::Type, extraprop::String, extrapropertynames::Nothing, view::Bool)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:149
    [5] load_ (repeats 2 times)
      @ ~/.julia/dev/ImageMagick/src/ImageMagick.jl:138 [inlined]
    [6] load(::String)
      @ ImageMagick ~/.julia/dev/ImageMagick/src/ImageMagick.jl:126
    [7] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:130 [inlined]
    [8] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
    [9] macro expansion
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:127 [inlined]
   [10] macro expansion
      @ ~/.julia/juliaup/julia-1.10.3+0.x64.linux.gnu/share/julia/stdlib/v1.10/Test/src/Test.jl:1577 [inlined]
   [11] top-level scope
      @ ~/.julia/dev/ImageMagick/test/constructed_images.jl:11
   [12] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [13] top-level scope
      @ ~/.julia/dev/ImageMagick/test/runtests.jl:6
   [14] include(fname::String)
      @ Base.MainInclude ./client.jl:489
   [15] top-level scope
      @ none:6
   [16] eval
      @ ./boot.jl:385 [inlined]
   [17] exec_options(opts::Base.JLOptions)
      @ Base ./client.jl:291
   [18] _start()
      @ Base ./client.jl:552