Mock Version: 1.4.21 Mock Version: 1.4.21 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target riscv64 --nodeps /builddir/build/SPECS/elixir.spec'], chrootPath='/var/lib/mock/f33-build-631755-67622/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'en_US.UTF-8'}shell=Falselogger=timeout=432000uid=987gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bs --target riscv64 --nodeps /builddir/build/SPECS/elixir.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'en_US.UTF-8'} and shell False Building target platforms: riscv64 Building for target riscv64 setting SOURCE_DATE_EPOCH=1613001600 Wrote: /builddir/build/SRPMS/elixir-1.11.3-1.fc33.src.rpm Child return code was: 0 ENTER ['do_with_status'](['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target riscv64 --nodeps /builddir/build/SPECS/elixir.spec'], chrootPath='/var/lib/mock/f33-build-631755-67622/root'env={'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'en_US.UTF-8'}shell=Falselogger=timeout=432000uid=987gid=135user='mockbuild'nspawn_args=[]unshare_net=TrueprintOutput=False) Executing command: ['bash', '--login', '-c', '/usr/bin/rpmbuild -bb --target riscv64 --nodeps /builddir/build/SPECS/elixir.spec'] with env {'TERM': 'vt100', 'SHELL': '/bin/bash', 'HOME': '/builddir', 'HOSTNAME': 'mock', 'PATH': '/usr/bin:/bin:/usr/sbin:/sbin', 'PROMPT_COMMAND': 'printf "\\033]0;\\007"', 'PS1': ' \\s-\\v\\$ ', 'LANG': 'en_US.UTF-8'} and shell False Building target platforms: riscv64 Building for target riscv64 setting SOURCE_DATE_EPOCH=1613001600 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.nK8sYM + umask 022 + cd /builddir/build/BUILD + cd /builddir/build/BUILD + rm -rf elixir-1.11.3/docs + /usr/bin/mkdir -p elixir-1.11.3/docs + cd elixir-1.11.3/docs + /usr/bin/unzip -qq /builddir/build/SOURCES/elixir-1.11.3-doc.zip + STATUS=0 + '[' 0 -ne 0 ']' + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + find -name .build -exec rm '{}' ';' + cd /builddir/build/BUILD + /usr/bin/gzip -dc /builddir/build/SOURCES/elixir-1.11.3.tar.gz + /usr/bin/tar -xof - + STATUS=0 + '[' 0 -ne 0 ']' + cd elixir-1.11.3 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + find -name '*.bat' -exec rm '{}' ';' + rm lib/elixir/test/elixir/io/ansi_test.exs + find . -name .gitignore -delete + find . -name .gitkeep -delete + sed -i '/^Q\s*:=/d' Makefile + rm -f ./lib/mix/test/fixtures/rebar ./lib/mix/test/fixtures/rebar3 + rm -f ./lib/mix/test/mix/rebar_test.exs + touch ./lib/mix/test/fixtures/rebar3 + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.hPGk4L + umask 022 + cd /builddir/build/BUILD + cd elixir-1.11.3 + export LANG=C.UTF-8 + LANG=C.UTF-8 + export REBAR=/usr/bin/rebar + REBAR=/usr/bin/rebar + export REBAR_DEPS_PREFER_LIBS=TRUE + REBAR_DEPS_PREFER_LIBS=TRUE + export ERL_LIBS=/usr/share/erlang/lib/ + ERL_LIBS=/usr/share/erlang/lib/ + make compile erlc -o lib/elixir/src/elixir_parser.erl +'{verbose,true}' +'{report,true}' lib/elixir/src/elixir_parser.yrl if [ ! -f lib/elixir/ebin/elixir.app ]; then erl -noshell -eval '{V,_} = string:to_integer(erlang:system_info(otp_release)), io:fwrite("~s", [is_integer(V) and (V >= 21)])' -s erlang halt | grep -q '^true'; if [ $? != 0 ]; then echo "At least Erlang/OTP 21.0 is required to build Elixir"; exit 1; fi; fi cd lib/elixir && mkdir -p ebin && if [ -n "" ]; then ERL_COMPILER_OPTIONS= erl -make; else erl -make; fi Recompile: src/elixir_utils Recompile: src/elixir_tokenizer Recompile: src/elixir_sup Recompile: src/elixir_rewrite Recompile: src/elixir_quote Recompile: src/elixir_parser Recompile: src/elixir_overridable Recompile: src/elixir_module Recompile: src/elixir_map Recompile: src/elixir_locals Recompile: src/elixir_lexical Recompile: src/elixir_interpolation Recompile: src/elixir_import Recompile: src/elixir_fn Recompile: src/elixir_expand Recompile: src/elixir_errors Recompile: src/elixir_erl_var Recompile: src/elixir_erl_try Recompile: src/elixir_erl_pass Recompile: src/elixir_erl_for Recompile: src/elixir_erl_compiler Recompile: src/elixir_erl_clauses Recompile: src/elixir_erl Recompile: src/elixir_env Recompile: src/elixir_dispatch Recompile: src/elixir_def Recompile: src/elixir_config Recompile: src/elixir_compiler Recompile: src/elixir_code_server Recompile: src/elixir_clauses Recompile: src/elixir_bootstrap Recompile: src/elixir_bitstring Recompile: src/elixir_aliases Recompile: src/elixir /builddir/build/BUILD/elixir-1.11.3/lib/elixir/generate_app.escript lib/elixir/src/elixir.app.src lib/elixir/ebin/elixir.app 1.11.3 Generated elixir app if [ ! -f lib/elixir/ebin/Elixir.Kernel.beam ]; then \ echo "==> bootstrap (compile)"; \ erl -I lib/elixir/include -noshell -pa lib/elixir/ebin -s elixir_compiler bootstrap -s erlang halt; \ fi ==> bootstrap (compile) Compiled lib/elixir/lib/kernel.ex Compiled lib/elixir/lib/macro/env.ex Compiled lib/elixir/lib/keyword.ex Compiled lib/elixir/lib/module.ex Compiled lib/elixir/lib/list.ex Compiled lib/elixir/lib/macro.ex Compiled lib/elixir/lib/kernel/typespec.ex Compiled lib/elixir/lib/kernel/utils.ex Compiled lib/elixir/lib/code.ex Compiled lib/elixir/lib/code/identifier.ex Compiled lib/elixir/lib/protocol.ex Compiled lib/elixir/lib/stream/reducers.ex Compiled lib/elixir/lib/enum.ex Compiled lib/elixir/lib/regex.ex Compiled lib/elixir/lib/inspect/algebra.ex Compiled lib/elixir/lib/inspect.ex Compiled lib/elixir/lib/string.ex Compiled lib/elixir/lib/string/chars.ex Compiled lib/elixir/lib/kernel.ex Compiled lib/elixir/lib/list/chars.ex Compiled lib/elixir/lib/module/locals_tracker.ex Compiled lib/elixir/lib/module/parallel_checker.ex Compiled lib/elixir/lib/module/types/helpers.ex Compiled lib/elixir/lib/module/types/unify.ex Compiled lib/elixir/lib/module/types/of.ex Compiled lib/elixir/lib/module/types/pattern.ex Compiled lib/elixir/lib/module/types/expr.ex Compiled lib/elixir/lib/module/types.ex Compiled lib/elixir/lib/exception.ex Compiled lib/elixir/lib/path.ex Compiled lib/elixir/lib/file.ex Compiled lib/elixir/lib/map.ex Compiled lib/elixir/lib/range.ex Compiled lib/elixir/lib/access.ex Compiled lib/elixir/lib/io.ex Compiled lib/elixir/lib/system.ex Compiled lib/elixir/lib/kernel/cli.ex Compiled lib/elixir/lib/kernel/error_handler.ex Compiled lib/elixir/lib/kernel/parallel_compiler.ex Compiled lib/elixir/lib/kernel/lexical_tracker.ex make unicode make[1]: Entering directory '/builddir/build/BUILD/elixir-1.11.3' ==> unicode (compile) bin/elixirc --ignore-module-conflict lib/elixir/unicode/unicode.ex -o lib/elixir/ebin; Compiling lib/elixir/unicode/unicode.ex (it's taking more than 10s) bin/elixirc --ignore-module-conflict lib/elixir/unicode/properties.ex -o lib/elixir/ebin; Compiling lib/elixir/unicode/properties.ex (it's taking more than 10s) bin/elixirc --ignore-module-conflict lib/elixir/unicode/tokenizer.ex -o lib/elixir/ebin; Compiling lib/elixir/unicode/tokenizer.ex (it's taking more than 10s) make[1]: Leaving directory '/builddir/build/BUILD/elixir-1.11.3' ==> elixir (compile) cd lib/elixir && ../../bin/elixirc --ignore-module-conflict "lib/**/*.ex" -o ebin; Compiling lib/calendar/iso.ex (it's taking more than 10s) Compiling lib/code/formatter.ex (it's taking more than 10s) Compiling lib/exception.ex (it's taking more than 10s) Compiling lib/enum.ex (it's taking more than 10s) Compiling lib/inspect.ex (it's taking more than 10s) Compiling lib/inspect/algebra.ex (it's taking more than 10s) Compiling lib/io/ansi/docs.ex (it's taking more than 10s) Compiling lib/kernel.ex (it's taking more than 10s) Compiling lib/kernel/typespec.ex (it's taking more than 10s) Compiling lib/macro.ex (it's taking more than 10s) Compiling lib/module.ex (it's taking more than 10s) Compiling lib/process.ex (it's taking more than 10s) Compiling lib/string.ex (it's taking more than 10s) Compiling lib/stream.ex (it's taking more than 10s) Compiling lib/base.ex (it's taking more than 10s) Compiling lib/version.ex (it's taking more than 10s) make app make[1]: Entering directory '/builddir/build/BUILD/elixir-1.11.3' /builddir/build/BUILD/elixir-1.11.3/lib/elixir/generate_app.escript lib/elixir/src/elixir.app.src lib/elixir/ebin/elixir.app 1.11.3 Generated elixir app make[1]: Leaving directory '/builddir/build/BUILD/elixir-1.11.3' ==> eex (compile) cd lib/eex && ../../bin/elixirc --ignore-module-conflict "lib/**/*.ex" -o ebin ==> mix (compile) cd lib/mix && ../../bin/elixirc --ignore-module-conflict "lib/**/*.ex" -o ebin cd lib/mix && ../../bin/elixir -e 'Mix.start(:permanent, [])' -r mix.exs -e 'Mix.Task.run("compile.app", ~w[--compile-path ebin])' Generated mix app ==> ex_unit (compile) cd lib/ex_unit && ../../bin/elixirc --ignore-module-conflict "lib/**/*.ex" -o ebin Compiling lib/ex_unit/assertions.ex (it's taking more than 10s) Compiling lib/ex_unit/diff.ex (it's taking more than 10s) cd lib/ex_unit && ../../bin/elixir -e 'Mix.start(:permanent, [])' -r mix.exs -e 'Mix.Task.run("compile.app", ~w[--compile-path ebin])' Generated ex_unit app ==> logger (compile) cd lib/logger && ../../bin/elixirc --ignore-module-conflict "lib/**/*.ex" -o ebin cd lib/logger && ../../bin/elixir -e 'Mix.start(:permanent, [])' -r mix.exs -e 'Mix.Task.run("compile.app", ~w[--compile-path ebin])' Generated logger app cd lib/eex && ../../bin/elixir -e 'Mix.start(:permanent, [])' -r mix.exs -e 'Mix.Task.run("compile.app", ~w[--compile-path ebin])' Generated eex app ==> iex (compile) cd lib/iex && ../../bin/elixirc --ignore-module-conflict "lib/**/*.ex" -o ebin Compiling lib/iex/info.ex (it's taking more than 10s) cd lib/iex && ../../bin/elixir -e 'Mix.start(:permanent, [])' -r mix.exs -e 'Mix.Task.run("compile.app", ~w[--compile-path ebin])' Generated iex app + make build_man cp man/iex.1.in man/iex.1 sed -i.bak "/{COMMON}/r man/common" man/iex.1 sed -i.bak "/{COMMON}/d" man/iex.1 rm -f man/iex.1.bak cp man/elixir.1.in man/elixir.1 sed -i.bak "/{COMMON}/r man/common" man/elixir.1 sed -i.bak "/{COMMON}/d" man/elixir.1 rm -f man/elixir.1.bak + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.4BsfbN + umask 022 + cd /builddir/build/BUILD + '[' /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64 '!=' / ']' + rm -rf /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64 ++ dirname /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64 + mkdir -p /builddir/build/BUILDROOT + mkdir /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64 + cd elixir-1.11.3 + mkdir -p /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64//usr/share/elixir/1.11.3 + cp -ra bin lib /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64//usr/share/elixir/1.11.3 + mkdir -p /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64//usr/bin + ln -s /usr/share/elixir/1.11.3/bin/elixir /usr/share/elixir/1.11.3/bin/elixirc /usr/share/elixir/1.11.3/bin/iex /usr/share/elixir/1.11.3/bin/mix /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64//usr/bin/ + mkdir -p /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64//usr/share/man/man1 + cp -a man/elixir.1 man/elixirc.1 man/iex.1 man/mix.1 /builddir/build/BUILDROOT/elixir-1.11.3-1.fc33.riscv64//usr/share/man/man1 + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 + /usr/lib/rpm/brp-python-hardlink + /usr/lib/rpm/redhat/brp-mangle-shebangs mangling shebang in /usr/share/elixir/1.11.3/bin/elixir from /bin/sh to #!/usr/bin/sh mangling shebang in /usr/share/elixir/1.11.3/bin/mix from /usr/bin/env elixir to #!/usr/bin/elixir mangling shebang in /usr/share/elixir/1.11.3/bin/iex from /bin/sh to #!/usr/bin/sh mangling shebang in /usr/share/elixir/1.11.3/bin/elixirc from /bin/sh to #!/usr/bin/sh mangling shebang in /usr/share/elixir/1.11.3/lib/elixir/generate_app.escript from /usr/bin/env escript to #!/usr/bin/escript Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.DtN5NL + umask 022 + cd /builddir/build/BUILD + cd elixir-1.11.3 + export LANG=C.UTF-8 + LANG=C.UTF-8 + export REBAR=/usr/bin/rebar + REBAR=/usr/bin/rebar + export REBAR_DEPS_PREFER_LIBS=TRUE + REBAR_DEPS_PREFER_LIBS=TRUE + export ERL_LIBS=/usr/share/erlang/lib/ + ERL_LIBS=/usr/share/erlang/lib/ + make test if [ ! -f lib/elixir/ebin/elixir.app ]; then erl -noshell -eval '{V,_} = string:to_integer(erlang:system_info(otp_release)), io:fwrite("~s", [is_integer(V) and (V >= 21)])' -s erlang halt | grep -q '^true'; if [ $? != 0 ]; then echo "At least Erlang/OTP 21.0 is required to build Elixir"; exit 1; fi; fi cd lib/elixir && mkdir -p ebin && if [ -n "" ]; then ERL_COMPILER_OPTIONS= erl -make; else erl -make; fi if [ "" = "Windows_NT" ]; then cmd //C call ./bin/mix.bat format --check-formatted; else bin/elixir bin/mix format --check-formatted; fi mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/atom_test.erl mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/control_test.erl mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/function_test.erl mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/match_test.erl mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/operators_test.erl mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/string_test.erl mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/test_helper.erl mkdir -p lib/elixir/test/ebin erlc -I lib/elixir/include -o lib/elixir/test/ebin lib/elixir/test/erlang/tokenizer_test.erl ==> elixir (eunit) erl -I lib/elixir/include -noshell -pa lib/elixir/ebin -pa lib/elixir/test/ebin -s test_helper test; All 191 tests passed. ==> elixir (ex_unit) exec epmd & exit if [ "" = "Windows_NT" ]; then \ cd lib/elixir && cmd //C call ../../bin/elixir.bat -r "test/elixir/test_helper.exs" -pr "test/elixir/**/"*_test.exs""; \ else \ cd lib/elixir && ../../bin/elixir -r "test/elixir/test_helper.exs" -pr "test/elixir/**/"*_test.exs""; \ fi Excluding tags: [windows: true] ...................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................... Finished in 652.4 seconds (399.5s on load, 252.9s on tests) 1648 doctests, 3535 tests, 0 failures, 9 excluded Randomized with seed 138631 ==> ex_unit (ex_unit) cd lib/ex_unit && ../../bin/elixir -r "test/test_helper.exs" -pr "test/**/"*_test.exs""; ................................................................................................................................................................................................................................................................................................................................................................................. Finished in 77.0 seconds (44.9s on load, 32.0s on tests) 42 doctests, 327 tests, 0 failures Randomized with seed 683706 ==> logger (ex_unit) cd lib/logger && ../../bin/elixir -r "test/test_helper.exs" -pr "test/**/"*_test.exs""; ......................................................................................................................................... Finished in 47.7 seconds (43.0s on load, 4.7s on tests) 3 doctests, 134 tests, 0 failures Randomized with seed 483975 ==> mix (ex_unit) cd lib/mix && ../../bin/elixir -r "test/test_helper.exs" -pr "test/**/"*_test.exs""; Excluding tags: [windows: true] .................................................................................................................................................................... 1) test --failed loads only files with failures and runs just the failures (Mix.Tasks.TestTest) /builddir/build/BUILD/elixir-1.11.3/lib/mix/test/mix/tasks/test_test.exs:184 ** (ExUnit.TimeoutError) test timed out after 60000ms. You can change the timeout: 1. per test by setting "@tag timeout: x" (accepts :infinity) 2. per test module by setting "@moduletag timeout: x" (accepts :infinity) 3. globally via "ExUnit.start(timeout: x)" configuration 4. by running "mix test --timeout x" which sets timeout 5. or by running "mix test --trace" which sets timeout to infinity (useful when using IEx.pry/0) where "x" is the timeout given as integer in milliseconds (defaults to 60_000). stacktrace: (elixir 1.11.3) lib/system.ex:840: System.do_cmd/3 (elixir 1.11.3) lib/system.ex:830: System.cmd/3 test/test_helper.exs:164: MixTest.Case.mix/2 test/mix/tasks/test_test.exs:217: anonymous fn/0 in Mix.Tasks.TestTest."test --failed loads only files with failures and runs just the failures"/1 (elixir 1.11.3) lib/file.ex:1553: File.cd!/2 test/test_helper.exs:126: MixTest.Case.in_fixture/3 test/mix/tasks/test_test.exs:185: (test) (ex_unit 1.11.3) lib/ex_unit/runner.ex:391: ExUnit.Runner.exec_test/1 (stdlib 3.14.1) timer.erl:166: :timer.tc/1 (ex_unit 1.11.3) lib/ex_unit/runner.ex:342: anonymous fn/4 in ExUnit.Runner.spawn_test_monitor/4 .............................................................................................................................warning: redefining module GitRepo (current version loaded from /builddir/build/BUILD/elixir-1.11.3/lib/mix/tmp/Mix.Tasks.DepsGitTest/test gets and updates many levels deep dependencies/_build/dev/lib/git_repo/ebin/Elixir.GitRepo.beam) lib/git_repo.ex:2 .................................................................................................................................................................................................................................................................................................................................................................... Finished in 2141.4 seconds (108.3s on load, 2033.0s on tests) 9 doctests, 637 tests, 1 failure Randomized with seed 884603 make: *** [Makefile:113: test_mix] Error 1 error: Bad exit status from /var/tmp/rpm-tmp.DtN5NL (%check) RPM build errors: Bad exit status from /var/tmp/rpm-tmp.DtN5NL (%check) Child pid '184904' is dead Child dead, killing orphans Child return code was: 1 EXCEPTION: [Error()] Traceback (most recent call last): File "/usr/lib/python3.8/site-packages/mockbuild/trace_decorator.py", line 95, in trace result = func(*args, **kw) File "/usr/lib/python3.8/site-packages/mockbuild/util.py", line 746, in do_with_status raise exception.Error("Command failed: \n # %s\n%s" % (command, output), child.returncode) mockbuild.exception.Error: Command failed: # bash --login -c /usr/bin/rpmbuild -bb --target riscv64 --nodeps /builddir/build/SPECS/elixir.spec