The feature works correctly when ejabberd is compiled from source code using rebar3:
./autogen.sh
./configure \
--with-rebar=`which rebar3` \
--enable-all \
--disable-elixir
make
make relive
...
[webp,jpeg,png,gif]
{ok,<<137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,
4,0,0,0,3,4,8,2,0,...>>}
Also works when using mix to build an OTP release (like the containers do):
./autogen.sh
./configure --with-rebar=mix --enable-all
make deps
make rel
cp _build/prod/ejabberd-23.1.83.tar.gz /tmp
cd /tmp
mkdir ee
tar -xzvf ejabberd-23.1.83.tar.gz -C ee
cd ee
./bin/ejabberdctl live
...
[webp,jpeg,png,gif]
{ok,<<137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,
4,0,0,0,3,4,8,2,0,...>>}
The feature also works correctly using ecs container 20.07:
docker run -it ejabberd/ecs:20.07 live
...
[webp,jpeg,png,gif]
{ok,<<137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,
4,0,0,0,3,4,8,2,0,...>>}
However, in ecs container 20.12 and newer, and also in the alternate ejabberd container, it fails:
docker run -it ejabberd/ecs:20.12 live
...
[webp,jpeg,png,gif]
{error,unsupported_format}
When looking at the binary installers, that call fails with a different error message:
It seems image conversion (provided by eimp) is broken in the containers (both
ecs
andejabberd
) since the ejabberd 20.12.How to reproduce: start ejabberd in live mode, and run those calls in the erlang console. This is the desired output:
The feature works correctly when ejabberd is compiled from source code using rebar3:
Also works when using mix to build an OTP release (like the containers do):
The feature also works correctly using
ecs
container 20.07:However, in
ecs
container 20.12 and newer, and also in the alternateejabberd
container, it fails:When looking at the binary installers, that call fails with a different error message:
Looking at the changes in ejabberd source code between 20.07 and 20.12, maybe the relevant changes was the update from eimp 1.0.17 to 1.0.18, more specifically this commit https://github.com/processone/eimp/commit/37dcd22af9e03022417a7b340b567c6ad00cacbd