elixir-image/image

Plug is not optional

kwando opened this issue · 11 comments

I realize this is under development, I was just playing around with it and noticed it doesn't compile when plug is not installed. Even though mix.exs says it is optional.

Mix.install([:image])

==> image
Compiling 30 files (.ex)

== Compilation error in file lib/image.ex ==
** (CompileError) lib/image.ex:475: Plug.Conn.__struct__/0 is undefined, cannot expand struct Plug.Conn. Make sure the struct name is correct. If the struct name exists and is correct but it still cannot be found, you likely have cyclic module usage in your code
    lib/image.ex:475: (module)
could not compile dependency :image, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile image", update it with "mix deps.update image" or clean it with "mix deps.clean image"

Version 0.0.5 (from Hex)

$ elixir --version
Erlang/OTP 25 [erts-13.0.1] [source] [64-bit] [smp:10:10] [ds:10:10:10] [async-threads:1] [jit]

Elixir 1.13.4 (compiled with Erlang/OTP 25

I have published image version 0.6.0 to fix this issue. Thanks very much for the report, much appreciated. The changelog entry is:

Bug fixes

  • Don't attempt to compile code that refers to Plug.t if Plug is not configured. Thanks to @kwando. Closes #7.

Enhancements

  • Adds Image.dshash/1 to return a 512-bit image hash.

  • Adds Image.hamming_distance/2 to compare the similarity of two images or two image hashes.

  • Adds Image.radial_gradient/3 to great a radial gradient image. This could be used to composite over another image to add a vignette.

  • Adds Image.Math logical functions boolean_and/2, boolean_or/2, boolean_xor/2, boolean_lshift/2 and boolean_rshift/2. Also includes the ! versions.

  • Add operator use Image.Math overloads for image &&& (and), ||| (or), <<< (lshift) and >>> (rshift).

Wow, that was fast 😅 Thank you for your amazing work :)

Can't get it to work though 😕

$ elixir -e "Mix.install([:image], force: true)"
Resolving Hex dependencies...
Dependency resolution completed:
New:
  elixir_make 0.6.3
  image 0.6.0
  phoenix_html 3.2.0
  sweet_xml 0.7.3
  vix 0.11.0
* Getting image (Hex package)
* Getting phoenix_html (Hex package)
* Getting sweet_xml (Hex package)
* Getting vix (Hex package)
* Getting elixir_make (Hex package)
==> phoenix_html
Compiling 8 files (.ex)
Generated phoenix_html app
==> elixir_make
Compiling 1 file (.ex)
Generated elixir_make app
==> vix
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.c
cc /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.o -flat_namespace -undefined suppress -shared -L /Users/kwando/.asdf/installs/erlang/25.0.1/usr/lib `pkg-config vips --libs` -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/../priv/vix.so
Compiling 24 files (.ex)
Generated vix app
==> sweet_xml
Compiling 2 files (.ex)
Generated sweet_xml app
==> image
Compiling 31 files (.ex)

== Compilation error in file lib/image.ex ==
** (CompileError) lib/image.ex:493: Plug.Conn.__struct__/0 is undefined, cannot expand struct Plug.Conn. Make sure the struct name is correct. If the struct name exists and is correct but it still cannot be found, you likely have cyclic module usage in your code
    lib/image.ex:493: (module)
could not compile dependency :image, "mix compile" failed. Errors may have been logged above. You can recompile this dependency with "mix deps.compile image", update it with "mix deps.update image" or clean it with "mix deps.clean image"

Arrrggghhh, too much haste. I have republished, under the same release. So if you mix deps.clean image && mix deps.get && mix compile I think you should be ok now.

My apologies for the inconvenience.

No worries, it compiles fine without plug now 🎉

Some new warnings, but might be related to usage of Mix.install.

$ elixir -e "Mix.install([:image], force: true)"
Resolving Hex dependencies...
Dependency resolution completed:
New:
  elixir_make 0.6.3
  image 0.6.0
  phoenix_html 3.2.0
  sweet_xml 0.7.3
  vix 0.11.0
* Getting image (Hex package)
Checksum mismatch between registry and the cached package

Registry checksum: bf79d77e55ebd8b62472eef3c4d48b96c1a914d4df312f2794fbb6a3ea4e81ca
Package checksum:  aeb9abeb8c422dab0266f3ae4e9c649fd4466c38b92c0af236482f2d039ee110

This may happen when the previously cached package got re-published.

Re-fetching...
* Getting phoenix_html (Hex package)
* Getting sweet_xml (Hex package)
* Getting vix (Hex package)
* Getting elixir_make (Hex package)
==> phoenix_html
Compiling 8 files (.ex)
Generated phoenix_html app
==> elixir_make
Compiling 1 file (.ex)
Generated elixir_make app
==> vix
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.c
cc /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.o -flat_namespace -undefined suppress -shared -L /Users/kwando/.asdf/installs/erlang/25.0.1/usr/lib `pkg-config vips --libs` -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/../priv/vix.so
Compiling 24 files (.ex)
Generated vix app
==> sweet_xml
Compiling 2 files (.ex)
Generated sweet_xml app
==> image
Compiling 31 files (.ex)
warning: :crypto.exor/2 defined in application :crypto is used by the current application but the current application does not depend on :crypto. To fix this, you must do one of:

  1. If :crypto is part of Erlang/Elixir, you must include it under :extra_applications inside "def application" in your mix.exs

  2. If :crypto is a dependency, make sure it is listed under "def deps" in your mix.exs

  3. In case you don't want to add a requirement to :crypto, you may optionally skip this warning by adding [xref: [exclude: [:crypto]]] to your "def project" in mix.exs

  lib/image.ex:2849: Image.hamming_distance/2

warning: Nx.transpose/2 is undefined (module Nx is not available or is yet to be defined)
  lib/image/nx.ex:11: Image.Nx.transpose/3

Generated image app

Nope, its another mess up by me. I have republished one more time. Thanks for your patience. I think we are good now. Once more install required ...

I wasn't quite ready for Release 0.6.0 as you can tell but I wanted to push out the fix for your report. As always, act in haste, repent at leisure.

I didn't mean to stress you :)

The Nx warning is gone but the one for :crypto remains.

warning: :crypto.exor/2 defined in application :crypto is used by the current application but the current application does not depend on :crypto. To fix this, you must do one of:

  1. If :crypto is part of Erlang/Elixir, you must include it under :extra_applications inside "def application" in your mix.exs

  2. If :crypto is a dependency, make sure it is listed under "def deps" in your mix.exs

  3. In case you don't want to add a requirement to :crypto, you may optionally skip this warning by adding [xref: [exclude: [:crypto]]] to your "def project" in mix.exs

  lib/image.ex:2849: Image.hamming_distance/2

I'm really messing you around! I have added :crypto to :extra_applications and republished one more time. I really hope that's the last!

Yes, that was the last one :) 🎉

$ elixir -e "Mix.install([:image], force: true)"
Resolving Hex dependencies...
Dependency resolution completed:
New:
  elixir_make 0.6.3
  image 0.6.0
  phoenix_html 3.2.0
  sweet_xml 0.7.3
  vix 0.11.0
* Getting image (Hex package)
* Getting phoenix_html (Hex package)
* Getting sweet_xml (Hex package)
* Getting vix (Hex package)
* Getting elixir_make (Hex package)
==> phoenix_html
Compiling 8 files (.ex)
Generated phoenix_html app
==> elixir_make
Compiling 1 file (.ex)
Generated elixir_make app
==> vix
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.c
cc -O3 -std=c11 -finline-functions -Wall -Werror -Wmissing-prototypes -D_POSIX_C_SOURCE=200809L -fPIC -I /Users/kwando/.asdf/installs/erlang/25.0.1/erts-13.0.1/include -I /Users/kwando/.asdf/installs/erlang/25.0.1/usr/include `pkg-config vips --cflags`  -c -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.c
cc /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/pipe.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vix.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_image.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/utils.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_interpolate.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_foreign.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_value.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_param_spec.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_object.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/g_object/g_type.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_boxed.o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/vips_operation.o -flat_namespace -undefined suppress -shared -L /Users/kwando/.asdf/installs/erlang/25.0.1/usr/lib `pkg-config vips --libs` -o /Users/kwando/Library/Caches/mix/installs/elixir-1.13.4-erts-13.0.1/0d02c070de968cfc3263b5b8b942bb23/deps/vix/c_src/../priv/vix.so
Compiling 24 files (.ex)
Generated vix app
==> sweet_xml
Compiling 2 files (.ex)
Generated sweet_xml app
==> image
Compiling 31 files (.ex)
Generated image app