lpil / mix-test.watch

🎠 Because TDD is awesome
Other
914 stars 77 forks source link

Failed to start Watcher #67

Closed alex88 closed 7 years ago

alex88 commented 7 years ago

I'm using mix test.watch in an umbrella project, I had to override the fs dependency to 2.11.0 due to https://github.com/synrc/fs/issues/40

When I try to run test.watch I get

11:27:59.314 [info]  Application mix_test_watch exited: MixTestWatch.start(:normal, []) returned an error: shutdown: failed to start child: MixTestWatch.Watcher
    ** (EXIT) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started
** (MatchError) no match of right hand side value: {:error, {{:shutdown, {:failed_to_start_child, MixTestWatch.Watcher, :noproc}}, {MixTestWatch, :start, [:normal, []]}}}
    (mix_test_watch) lib/mix_test_watch.ex:19: MixTestWatch.run/1
    (mix) lib/mix/task.ex:294: Mix.Task.run_task/3
    (mix) lib/mix/cli.ex:58: Mix.CLI.run_task/2
    (elixir) lib/code.ex:370: Code.require_file/2

any idea?

lpil commented 7 years ago

Nothing jumps out immediately I'm afraid. Could you share the project in question please? Or a reproduction?

I'd be interested in finding out why fs 2.12.0 doesn't compile for you, it works on this mac I have here.

alex88 commented 7 years ago

This is just by installing it regularly

➜  Desktop mix new test
* creating README.md
* creating .gitignore
* creating mix.exs
* creating config
* creating config/config.exs
* creating lib
* creating lib/test.ex
* creating test
* creating test/test_helper.exs
* creating test/test_test.exs

Your Mix project was created successfully.
You can use "mix" to compile it, test it, and more:

    cd test
    mix test

Run "mix help" for more commands.
➜  Desktop cd test
➜  test mix test
Compiling 1 file (.ex)
Generated test app
..

Finished in 0.02 seconds
2 tests, 0 failures

Randomized with seed 887721
➜  test iex --version
Erlang/OTP 19 [erts-8.2] [source] [64-bit] [smp:8:8] [async-threads:10] [hipe] [kernel-poll:false] [dtrace]

IEx 1.4.0
➜  test mix deps.get
Running dependency resolution...
Dependency resolution completed:
  fs 2.12.0
  mix_test_watch 0.3.2
* Getting mix_test_watch (Hex package)
  Checking package (https://repo.hex.pm/tarballs/mix_test_watch-0.3.2.tar)
  Fetched package
* Getting fs (Hex package)
  Checking package (https://repo.hex.pm/tarballs/fs-2.12.0.tar)
  Fetched package
➜  test DEBUG=1 mix deps.compile
===> Fetching pc ({pkg,<<"pc">>,<<"1.4.0">>})
===> Cached copy of https://s3.amazonaws.com:443/s3.hex.pm/tarballs/pc-1.4.0.tar? still valid
===> Version cached at /Users/alex/.cache/rebar3/hex/default/packages/pc-1.4.0.tar is up to date, reusing it
===> Moving checkout "/tmp/.tmp_dir631926048058" to "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc"
===> sh info:
    cwd: "/Users/alex/Desktop/test/deps/fs"
    cmd: mv /tmp/.tmp_dir631926048058 /Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc

===>    opts: [{use_stdout,false},abort_on_error]

===> Port Cmd: mv /tmp/.tmp_dir631926048058 /Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc
Port Opts: [exit_status,{line,16384},use_stdio,stderr_to_stdout,hide,eof]

===> Compiling pc
===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc", pre_hooks, compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc", pre_hooks, erlc_compile) -> no hooks defined

===> erlopts [debug_info,debug_info,inline_list_funcs,
              warn_deprecated_function,warn_export_all,warn_export_vars,
              warn_obsolete_guard,warn_shadow_vars,warn_untyped_record,
              warn_unused_function,warn_unused_import,warnings_as_errors]
===> files to compile ["/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_util.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_prv_compile.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_prv_clean.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_port_specs.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_port_env.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_compilation.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc.erl"]
===>      Compiled pc_util.erl
===>      Compiled pc_prv_compile.erl
===>      Compiled pc_prv_clean.erl
===>      Compiled pc_port_specs.erl
===>      Compiled pc_port_env.erl
===>      Compiled pc_compilation.erl
===>      Compiled pc.erl
===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc", post_hooks, erlc_compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc", pre_hooks, app_compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc", post_hooks, app_compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc", post_hooks, compile) -> no hooks defined

===> Fetching rebar3_hex ({pkg,<<"rebar3_hex">>,<<"3.0.0">>})
===> Cached copy of https://s3.amazonaws.com:443/s3.hex.pm/tarballs/rebar3_hex-3.0.0.tar? still valid
===> Version cached at /Users/alex/.cache/rebar3/hex/default/packages/rebar3_hex-3.0.0.tar is up to date, reusing it
===> Moving checkout "/tmp/.tmp_dir5572811376" to "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex"
===> sh info:
    cwd: "/Users/alex/Desktop/test/deps/fs"
    cmd: mv /tmp/.tmp_dir5572811376 /Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex

===>    opts: [{use_stdout,false},abort_on_error]

===> Port Cmd: mv /tmp/.tmp_dir5572811376 /Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex
Port Opts: [exit_status,{line,16384},use_stdio,stderr_to_stdout,hide,eof]

===> Compiling rebar3_hex
===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex", pre_hooks, compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex", pre_hooks, erlc_compile) -> no hooks defined

===> erlopts [debug_info,debug_info]
===> files to compile ["/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_utils.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_user.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_tar.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_search.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_pkg.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_owner.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_key.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_info.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_http.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_docs.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_cut.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex_config.erl",
                       "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex.erl"]
===>      Compiled rebar3_hex_utils.erl
===>      Compiled rebar3_hex_user.erl
===>      Compiled rebar3_hex_tar.erl
===>      Compiled rebar3_hex_search.erl
===>      Compiled rebar3_hex_pkg.erl
===>      Compiled rebar3_hex_owner.erl
===>      Compiled rebar3_hex_key.erl
===>      Compiled rebar3_hex_info.erl
===>      Compiled rebar3_hex_http.erl
===>      Compiled rebar3_hex_docs.erl
===>      Compiled rebar3_hex_cut.erl
===>      Compiled rebar3_hex_config.erl
===>      Compiled rebar3_hex.erl
===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex", post_hooks, erlc_compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex", pre_hooks, app_compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex", post_hooks, app_compile) -> no hooks defined

===> run_hooks("/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex", post_hooks, compile) -> no hooks defined

===> Expanded command sequence to be run: []
===> Expanded command sequence to be run: [{default,app_discovery},
                                           {bare,compile}]
===> Not adding provider pc compile from module pc_prv_compile because it already exists from module pc_prv_compile
===> Not adding provider pc clean from module pc_prv_clean because it already exists from module pc_prv_clean
===> Not adding provider hex user from module rebar3_hex_user because it already exists from module rebar3_hex_user
===> Not adding provider hex cut from module rebar3_hex_cut because it already exists from module rebar3_hex_cut
===> Not adding provider hex config from module rebar3_hex_config because it already exists from module rebar3_hex_config
===> Not adding provider hex key from module rebar3_hex_key because it already exists from module rebar3_hex_key
===> Not adding provider hex info from module rebar3_hex_info because it already exists from module rebar3_hex_info
===> Not adding provider hex owner from module rebar3_hex_owner because it already exists from module rebar3_hex_owner
===> Not adding provider hex docs from module rebar3_hex_docs because it already exists from module rebar3_hex_docs
===> Not adding provider hex search from module rebar3_hex_search because it already exists from module rebar3_hex_search
===> Not adding provider hex publish from module rebar3_hex_pkg because it already exists from module rebar3_hex_pkg
===> Not adding provider pc compile from module pc_prv_compile because it already exists from module pc_prv_compile
===> Not adding provider pc clean from module pc_prv_clean because it already exists from module pc_prv_clean
===> Not adding provider hex user from module rebar3_hex_user because it already exists from module rebar3_hex_user
===> Not adding provider hex cut from module rebar3_hex_cut because it already exists from module rebar3_hex_cut
===> Not adding provider hex config from module rebar3_hex_config because it already exists from module rebar3_hex_config
===> Not adding provider hex key from module rebar3_hex_key because it already exists from module rebar3_hex_key
===> Not adding provider hex info from module rebar3_hex_info because it already exists from module rebar3_hex_info
===> Not adding provider hex owner from module rebar3_hex_owner because it already exists from module rebar3_hex_owner
===> Not adding provider hex docs from module rebar3_hex_docs because it already exists from module rebar3_hex_docs
===> Not adding provider hex search from module rebar3_hex_search because it already exists from module rebar3_hex_search
===> Not adding provider hex publish from module rebar3_hex_pkg because it already exists from module rebar3_hex_pkg
===> Compiling fs
===> run_hooks("/Users/alex/Desktop/test/deps/fs", pre_hooks, {pc,compile}) -> no hooks defined

===> Uncaught error in rebar_core. Run with DEBUG=1 to see stacktrace
===> Uncaught error: undef
===> Stack trace to the error location: [{pc_port_specs,construct,
                                          [{state_t,
                                            "/Users/alex/Desktop/test/deps/fs",
                                            {dict,19,16,16,8,80,48,
                                             {[],[],[],[],[],[],[],[],[],[],
                                              [],[],[],[],[],[]},
                                             {{[],
                                               [[{deps,default}],
                                                [{plugins,default},
                                                 pc,rebar3_hex],
                                                [{project_plugins,default}]],
                                               [[caller|command_line],
                                                [base_dir,47,85,115,101,114,
                                                 115,47,97,108,101,120,47,68,
                                                 101,115,107,116,111,112,47,
                                                 116,101,115,116,47,100,101,
                                                 112,115,47,102,115,47,95,98,
                                                 117,105,108,100],
                                                [deps_dir,108,105,98]],
                                               [[port_specs,
                                                 {"darwin",
                                                  "priv/mac_listener",
                                                  ["c_src/mac/*.c"]},
                                                 {"freebsd","priv/kqueue",
                                                  ["c_src/bsd/*.c"]}],
                                                [plugins,pc,rebar3_hex],
                                                [provider_hooks,
                                                 {pre,
                                                  [{compile,{pc,compile}},
                                                   {clean,{pc,clean}}]}],
                                                [defines],
                                                [profiles,
                                                 {test,
                                                  [{erl_opts,[{d,'TEST'}]},
                                                   {extra_src_dirs,
                                                    ["test"]}]}],
                                                [overrides],
                                                [post_hooks],
                                                [pre_hooks],
                                                [artifacts]],
                                               [],
                                               [[vsn_cache|
                                                 {dict,0,16,16,8,80,48,
                                                  {[],[],[],[],[],[],[],[],[],
                                                   [],[],[],[],[],[],[]},
                                                  {{[],[],[],[],[],[],[],[],
                                                    [],[],[],[],[],[],[],
                                                    []}}}],
                                                [force,48]],
                                               [[port_env,
                                                 {"darwin","LDFLAGS",
                                                  "-framework CoreFoundation -framework CoreServices"},
                                                 {"darwin","CC","clang"},
                                                 {"darwin","CFLAGS",
                                                  "-Wno-deprecated-declarations"},
                                                 {"freebsd","LDFLAGS",[]},
                                                 {"freebsd","CC","cc"},
                                                 {"freebsd","CFLAGS",[]}]],
                                               [],[],[],[],
                                               [[task,104,101,108,112]],
                                               [],[],[],[]}}},
                                            {dict,2,16,16,8,80,48,
                                             {[],[],[],[],[],[],[],[],[],[],
                                              [],[],[],[],[],[]},
                                             {{[],[],[],
                                               [[all_plugin_deps,
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/ebin",
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/ebin",
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/ebin",
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/ebin",
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/ebin",
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/ebin"]],
                                               [[default,
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/ebin",
                                                 "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/ebin",
                                                 "/Users/alex/.mix/rebar3/ssl_verify_hostname/ebin",
                                                 "/Users/alex/.mix/rebar3/relx/ebin",
                                                 "/Users/alex/.mix/rebar3/rebar/ebin",
                                                 "/Users/alex/.mix/rebar3/providers/ebin",
                                                 "/Users/alex/.mix/rebar3/getopt/ebin",
                                                 "/Users/alex/.mix/rebar3/eunit_formatters/ebin",
                                                 "/Users/alex/.mix/rebar3/erlware_commons/ebin",
                                                 "/Users/alex/.mix/rebar3/cth_readable/ebin",
                                                 "/Users/alex/.mix/rebar3/cf/ebin",
                                                 "/Users/alex/.mix/rebar3/certifi/ebin",
                                                 "/Users/alex/.mix/rebar3/bbmustache/ebin",
                                                 "/Users/alex/.mix/rebar3",
                                                 ".",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/kernel-5.1.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/stdlib-3.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/xmerl-1.3.12/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/wx-1.8/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/typer-0.9.11/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/tools-2.9/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/syntax_tools-2.1.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/ssl-8.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/ssh-4.4/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/snmp-5.2.4/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/sasl-3.0.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/runtime_tools-1.11/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/reltool-0.7.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/public_key-1.3/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/percept-0.9/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/parsetools-2.1.4/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/otp_mibs-1.1.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/os_mon-2.4.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/orber-3.8.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/observer-2.3/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/mnesia-4.14.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/megaco-3.18.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/inets-6.3.4/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/ic-4.4.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/hipe-3.15.3/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/gs-1.6.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/eunit-2.3.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/et-1.6/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/erts-8.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/erl_interface-3.9.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/erl_docgen-0.6.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/eldap-1.2.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/edoc-0.8.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/diameter-1.12.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/dialyzer-3.0.3/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/debugger-4.2.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/crypto-3.7.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/cosTransactions-1.3.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/cosTime-1.2.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/cosProperty-1.2.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/cosNotification-1.2.2/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/cosFileTransfer-1.2.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/cosEventDomain-1.2.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/cosEvent-2.2.1/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/compiler-7.0.3/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/common_test-1.13/ebin",
                                                 "/usr/local/Cellar/erlang/19.2/lib/erlang/lib/asn1-4.0.4/ebin"]],
                                               [],[],[],[],[],[],[],[],[],[],
                                               []}}},
                                            {dict,16,16,16,8,80,48,
                                             {[],[],[],[],[],[],[],[],[],[],
                                              [],[],[],[],[],[]},
                                             {{[],
                                               [[{deps,default}],
                                                [{plugins,default},
                                                 pc,rebar3_hex],
                                                [{project_plugins,default}]],
                                               [[caller|command_line],
                                                [base_dir,47,85,115,101,114,
                                                 115,47,97,108,101,120,47,68,
                                                 101,115,107,116,111,112,47,
                                                 116,101,115,116,47,100,101,
                                                 112,115,47,102,115,47,95,98,
                                                 117,105,108,100],
                                                [deps_dir,108,105,98]],
                                               [[port_specs,
                                                 {"darwin",
                                                  "priv/mac_listener",
                                                  ["c_src/mac/*.c"]},
                                                 {"freebsd","priv/kqueue",
                                                  ["c_src/bsd/*.c"]}],
                                                [plugins,pc,rebar3_hex],
                                                [provider_hooks,
                                                 {pre,
                                                  [{compile,{pc,compile}},
                                                   {clean,{pc,clean}}]}],
                                                [defines],
                                                [profiles,
                                                 {test,
                                                  [{erl_opts,[{d,'TEST'}]},
                                                   {extra_src_dirs,
                                                    ["test"]}]}],
                                                [overrides]],
                                               [],
                                               [[vsn_cache|
                                                 {dict,0,16,16,8,80,48,
                                                  {[],[],[],[],[],[],[],[],[],
                                                   [],[],[],[],[],[],[]},
                                                  {{[],[],[],[],[],[],[],[],
                                                    [],[],[],[],[],[],[],
                                                    []}}}],
                                                [force,48]],
                                               [[port_env,
                                                 {"darwin","LDFLAGS",
                                                  "-framework CoreFoundation -framework CoreServices"},
                                                 {"darwin","CC","clang"},
                                                 {"darwin","CFLAGS",
                                                  "-Wno-deprecated-declarations"},
                                                 {"freebsd","LDFLAGS",[]},
                                                 {"freebsd","CC","cc"},
                                                 {"freebsd","CFLAGS",[]}]],
                                               [],[],[],[],
                                               [[task,104,101,108,112]],
                                               [],[],[],[]}}},
                                            "/Users/alex/.mix/rebar3",[],
                                            [default],
                                            bare,
                                            ["--paths",
                                             "/Users/alex/Desktop/test/_build/dev/lib/*/ebin"],
                                            {[{paths,
                                               "/Users/alex/Desktop/test/_build/dev/lib/*/ebin"}],
                                             []},
                                            {app_info_t,<<"fs">>,
                                             "/Users/alex/Desktop/test/deps/fs/src/fs.app.src",
                                             undefined,undefined,"2.12.0",
                                             root,
                                             [{description,"FS VXZ Listener"},
                                              {vsn,"2.12.0"},
                                              {registered,[]},
                                              {applications,[kernel,stdlib]},
                                              {mod,{fs_app,[]}},
                                              {env,
                                               [{backwards_compatible,true}]},
                                              {maintainers,
                                               ["Maxim Sokhatsky",
                                                "Vladimir Kirillov"]},
                                              {licenses,["ISCL"]},
                                              {links,
                                               [{"Github",
                                                 "https://github.com/synrc/fs"}]}],
                                             [kernel,stdlib],
                                             [],
                                             [default],
                                             {dict,19,16,16,8,80,48,
                                              {[],[],[],[],[],[],[],[],[],[],
                                               [],[],[],[],[],[]},
                                              {{[],
                                                [[{deps,default}],
                                                 [{plugins,default},
                                                  pc,rebar3_hex],
                                                 [{project_plugins,default}]],
                                                [[caller|command_line],
                                                 [base_dir,47,85,115,101,114,
                                                  115,47,97,108,101,120,47,68,
                                                  101,115,107,116,111,112,47,
                                                  116,101,115,116,47,100,101,
                                                  112,115,47,102,115,47,95,98,
                                                  117,105,108,100],
                                                 [deps_dir,108,105,98]],
                                                [[port_specs,
                                                  {"darwin",
                                                   "priv/mac_listener",
                                                   ["c_src/mac/*.c"]},
                                                  {"freebsd","priv/kqueue",
                                                   ["c_src/bsd/*.c"]}],
                                                 [plugins,pc,rebar3_hex],
                                                 [provider_hooks,
                                                  {pre,
                                                   [{compile,{pc,compile}},
                                                    {clean,{pc,clean}}]}],
                                                 [defines],
                                                 [profiles,
                                                  {test,
                                                   [{erl_opts,[{d,'TEST'}]},
                                                    {extra_src_dirs,
                                                     ["test"]}]}],
                                                 [overrides],
                                                 [post_hooks],
                                                 [pre_hooks],
                                                 [artifacts]],
                                                [],
                                                [[vsn_cache|
                                                  {dict,0,16,16,8,80,48,
                                                   {[],[],[],[],[],[],[],[],
                                                    [],[],[],[],[],[],[],[]},
                                                   {{[],[],[],[],[],[],[],[],
                                                     [],[],[],[],[],[],[],
                                                     []}}}],
                                                 [force,48]],
                                                [[port_env,
                                                  {"darwin","LDFLAGS",
                                                   "-framework CoreFoundation -framework CoreServices"},
                                                  {"darwin","CC","clang"},
                                                  {"darwin","CFLAGS",
                                                   "-Wno-deprecated-declarations"},
                                                  {"freebsd","LDFLAGS",[]},
                                                  {"freebsd","CC","cc"},
                                                  {"freebsd","CFLAGS",[]}]],
                                                [],[],[],[],
                                                [[task,104,101,108,112]],
                                                [],[],[],[]}}},
                                             {dict,19,16,16,8,80,48,
                                              {[],[],[],[],[],[],[],[],[],[],
                                               [],[],[],[],[],[]},
                                              {{[],
                                                [[{deps,default}],
                                                 [{plugins,default},
                                                  pc,rebar3_hex],
                                                 [{project_plugins,default}]],
                                                [[caller|command_line],
                                                 [base_dir,47,85,115,101,114,
                                                  115,47,97,108,101,120,47,68,
                                                  101,115,107,116,111,112,47,
                                                  116,101,115,116,47,100,101,
                                                  112,115,47,102,115,47,95,98,
                                                  117,105,108,100],
                                                 [deps_dir,108,105,98]],
                                                [[port_specs,
                                                  {"darwin",
                                                   "priv/mac_listener",
                                                   ["c_src/mac/*.c"]},
                                                  {"freebsd","priv/kqueue",
                                                   ["c_src/bsd/*.c"]}],
                                                 [plugins,pc,rebar3_hex],
                                                 [provider_hooks,
                                                  {pre,
                                                   [{compile,{pc,compile}},
                                                    {clean,{pc,clean}}]}],
                                                 [defines],
                                                 [profiles,
                                                  {test,
                                                   [{erl_opts,[{d,'TEST'}]},
                                                    {extra_src_dirs,
                                                     ["test"]}]}],
                                                 [overrides],
                                                 [post_hooks],
                                                 [pre_hooks],
                                                 [artifacts]],
                                                [],
                                                [[vsn_cache|
                                                  {dict,0,16,16,8,80,48,
                                                   {[],[],[],[],[],[],[],[],
                                                    [],[],[],[],[],[],[],[]},
                                                   {{[],[],[],[],[],[],[],[],
                                                     [],[],[],[],[],[],[],
                                                     []}}}],
                                                 [force,48]],
                                                [[port_env,
                                                  {"darwin","LDFLAGS",
                                                   "-framework CoreFoundation -framework CoreServices"},
                                                  {"darwin","CC","clang"},
                                                  {"darwin","CFLAGS",
                                                   "-Wno-deprecated-declarations"},
                                                  {"freebsd","LDFLAGS",[]},
                                                  {"freebsd","CC","cc"},
                                                  {"freebsd","CFLAGS",[]}]],
                                                [],[],[],[],
                                                [[task,104,101,108,112]],
                                                [],[],[],[]}}},
                                             0,
                                             "/Users/alex/Desktop/test/deps/fs",
                                             "/Users/alex/Desktop/test/deps/fs",
                                             undefined,undefined,false,false,
                                             false},
                                            [{app_info_t,<<"fs">>,
                                              "/Users/alex/Desktop/test/deps/fs/src/fs.app.src",
                                              undefined,undefined,"2.12.0",
                                              root,
                                              [{description,"FS VXZ Listener"},
                                               {vsn,"2.12.0"},
                                               {registered,[]},
                                               {applications,[kernel,stdlib]},
                                               {mod,{fs_app,[]}},
                                               {env,
                                                [{backwards_compatible,true}]},
                                               {maintainers,
                                                ["Maxim Sokhatsky",
                                                 "Vladimir Kirillov"]},
                                               {licenses,["ISCL"]},
                                               {links,
                                                [{"Github",
                                                  "https://github.com/synrc/fs"}]}],
                                              [kernel,stdlib],
                                              [],
                                              [default],
                                              {dict,19,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{deps,default}],
                                                  [{plugins,default},
                                                   pc,rebar3_hex],
                                                  [{project_plugins,default}]],
                                                 [[caller|command_line],
                                                  [base_dir,47,85,115,101,114,
                                                   115,47,97,108,101,120,47,
                                                   68,101,115,107,116,111,112,
                                                   47,116,101,115,116,47,100,
                                                   101,112,115,47,102,115,47,
                                                   95,98,117,105,108,100],
                                                  [deps_dir,108,105,98]],
                                                 [[port_specs,
                                                   {"darwin",
                                                    "priv/mac_listener",
                                                    ["c_src/mac/*.c"]},
                                                   {"freebsd","priv/kqueue",
                                                    ["c_src/bsd/*.c"]}],
                                                  [plugins,pc,rebar3_hex],
                                                  [provider_hooks,
                                                   {pre,
                                                    [{compile,{pc,compile}},
                                                     {clean,{pc,clean}}]}],
                                                  [defines],
                                                  [profiles,
                                                   {test,
                                                    [{erl_opts,[{d,'TEST'}]},
                                                     {extra_src_dirs,
                                                      ["test"]}]}],
                                                  [overrides],
                                                  [post_hooks],
                                                  [pre_hooks],
                                                  [artifacts]],
                                                 [],
                                                 [[vsn_cache|
                                                   {dict,0,16,16,8,80,48,
                                                    {[],[],[],[],[],[],[],[],
                                                     [],[],[],[],[],[],[],[]},
                                                    {{[],[],[],[],[],[],[],[],
                                                      [],[],[],[],[],[],[],
                                                      []}}}],
                                                  [force,48]],
                                                 [[port_env,
                                                   {"darwin","LDFLAGS",
                                                    "-framework CoreFoundation -framework CoreServices"},
                                                   {"darwin","CC","clang"},
                                                   {"darwin","CFLAGS",
                                                    "-Wno-deprecated-declarations"},
                                                   {"freebsd","LDFLAGS",[]},
                                                   {"freebsd","CC","cc"},
                                                   {"freebsd","CFLAGS",[]}]],
                                                 [],[],[],[],
                                                 [[task,104,101,108,112]],
                                                 [],[],[],[]}}},
                                              {dict,19,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{deps,default}],
                                                  [{plugins,default},
                                                   pc,rebar3_hex],
                                                  [{project_plugins,default}]],
                                                 [[caller|command_line],
                                                  [base_dir,47,85,115,101,114,
                                                   115,47,97,108,101,120,47,
                                                   68,101,115,107,116,111,112,
                                                   47,116,101,115,116,47,100,
                                                   101,112,115,47,102,115,47,
                                                   95,98,117,105,108,100],
                                                  [deps_dir,108,105,98]],
                                                 [[port_specs,
                                                   {"darwin",
                                                    "priv/mac_listener",
                                                    ["c_src/mac/*.c"]},
                                                   {"freebsd","priv/kqueue",
                                                    ["c_src/bsd/*.c"]}],
                                                  [plugins,pc,rebar3_hex],
                                                  [provider_hooks,
                                                   {pre,
                                                    [{compile,{pc,compile}},
                                                     {clean,{pc,clean}}]}],
                                                  [defines],
                                                  [profiles,
                                                   {test,
                                                    [{erl_opts,[{d,'TEST'}]},
                                                     {extra_src_dirs,
                                                      ["test"]}]}],
                                                  [overrides],
                                                  [post_hooks],
                                                  [pre_hooks],
                                                  [artifacts]],
                                                 [],
                                                 [[vsn_cache|
                                                   {dict,0,16,16,8,80,48,
                                                    {[],[],[],[],[],[],[],[],
                                                     [],[],[],[],[],[],[],[]},
                                                    {{[],[],[],[],[],[],[],[],
                                                      [],[],[],[],[],[],[],
                                                      []}}}],
                                                  [force,48]],
                                                 [[port_env,
                                                   {"darwin","LDFLAGS",
                                                    "-framework CoreFoundation -framework CoreServices"},
                                                   {"darwin","CC","clang"},
                                                   {"darwin","CFLAGS",
                                                    "-Wno-deprecated-declarations"},
                                                   {"freebsd","LDFLAGS",[]},
                                                   {"freebsd","CC","cc"},
                                                   {"freebsd","CFLAGS",[]}]],
                                                 [],[],[],[],
                                                 [[task,104,101,108,112]],
                                                 [],[],[],[]}}},
                                              0,
                                              "/Users/alex/Desktop/test/deps/fs",
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/lib/fs",
                                              undefined,undefined,false,false,
                                              false}],
                                            [],
                                            [{app_info_t,<<"pc">>,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc.app.src",
                                              undefined,undefined,"1.4.0",
                                              root,
                                              [{description,
                                                "a rebar3 port compiler for native code"},
                                               {vsn,"1.4.0"},
                                               {registered,[]},
                                               {applications,[kernel,stdlib]},
                                               {env,[]},
                                               {modules,[]},
                                               {maintainers,
                                                ["Brian L. Troutwine",
                                                 "Tristan Sloughter"]},
                                               {licenses,["MIT"]},
                                               {links,
                                                [{"Github",
                                                  "https://github.com/blt/port_compiler"}]}],
                                              [kernel,stdlib],
                                              [],
                                              [default,prod],
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info,
                                                   inline_list_funcs,
                                                   warn_deprecated_function,
                                                   warn_export_all,
                                                   warn_export_vars,
                                                   warn_obsolete_guard,
                                                   warn_shadow_vars,
                                                   warn_untyped_record,
                                                   warn_unused_function,
                                                   warn_unused_import,
                                                   warnings_as_errors],
                                                  [xref_checks,
                                                   undefined_function_calls,
                                                   undefined_functions,
                                                   locals_not_used,
                                                   deprecated_function_calls,
                                                   deprecated_functions],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info,
                                                   inline_list_funcs,
                                                   warn_deprecated_function,
                                                   warn_export_all,
                                                   warn_export_vars,
                                                   warn_obsolete_guard,
                                                   warn_shadow_vars,
                                                   warn_untyped_record,
                                                   warn_unused_function,
                                                   warn_unused_import,
                                                   warnings_as_errors],
                                                  [xref_checks,
                                                   undefined_function_calls,
                                                   undefined_functions,
                                                   locals_not_used,
                                                   deprecated_function_calls,
                                                   deprecated_functions],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              0,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc",
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc",
                                              pkg,
                                              {pkg,<<"pc">>,<<"1.4.0">>},
                                              false,false,false},
                                             {app_info_t,<<"rebar3_hex">>,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex.app.src",
                                              undefined,undefined,"3.0.0",
                                              root,
                                              [{description,
                                                "Hex.pm plugin for rebar3"},
                                               {vsn,"3.0.0"},
                                               {applications,[kernel,stdlib]},
                                               {maintainers,
                                                ["Tristan Sloughter"]},
                                               {licenses,["MIT"]},
                                               {links,
                                                [{"Github",
                                                  "https://github.com/tsloughter/rebar3_hex"}]}],
                                              [kernel,stdlib],
                                              [],
                                              [default,prod],
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info],
                                                  [deps],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info],
                                                  [deps],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              0,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex",
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex",
                                              pkg,
                                              {pkg,<<"rebar3_hex">>,
                                               <<"3.0.0">>},
                                              false,false,false},
                                             {app_info_t,<<"pc">>,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc.app.src",
                                              undefined,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/ebin/pc.app",
                                              "1.4.0",root,
                                              [{description,
                                                "a rebar3 port compiler for native code"},
                                               {vsn,"1.4.0"},
                                               {registered,[]},
                                               {applications,[kernel,stdlib]},
                                               {env,[]},
                                               {modules,
                                                [pc,pc_compilation,
                                                 pc_port_env,pc_port_specs,
                                                 pc_prv_clean,pc_prv_compile,
                                                 pc_util]},
                                               {maintainers,
                                                ["Brian L. Troutwine",
                                                 "Tristan Sloughter"]},
                                               {licenses,["MIT"]},
                                               {links,
                                                [{"Github",
                                                  "https://github.com/blt/port_compiler"}]}],
                                              [kernel,stdlib],
                                              [],
                                              [default,prod],
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info,
                                                   inline_list_funcs,
                                                   warn_deprecated_function,
                                                   warn_export_all,
                                                   warn_export_vars,
                                                   warn_obsolete_guard,
                                                   warn_shadow_vars,
                                                   warn_untyped_record,
                                                   warn_unused_function,
                                                   warn_unused_import,
                                                   warnings_as_errors],
                                                  [xref_checks,
                                                   deprecated_function_calls,
                                                   deprecated_functions,
                                                   locals_not_used,
                                                   undefined_function_calls,
                                                   undefined_functions],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info,
                                                   inline_list_funcs,
                                                   warn_deprecated_function,
                                                   warn_export_all,
                                                   warn_export_vars,
                                                   warn_obsolete_guard,
                                                   warn_shadow_vars,
                                                   warn_untyped_record,
                                                   warn_unused_function,
                                                   warn_unused_import,
                                                   warnings_as_errors],
                                                  [xref_checks,
                                                   deprecated_function_calls,
                                                   deprecated_functions,
                                                   locals_not_used,
                                                   undefined_function_calls,
                                                   undefined_functions],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              0,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc",
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc",
                                              pkg,
                                              {pkg,<<"pc">>,<<"1.4.0">>},
                                              false,false,true},
                                             {app_info_t,<<"rebar3_hex">>,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex.app.src",
                                              undefined,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/ebin/rebar3_hex.app",
                                              "3.0.0",root,
                                              [{registered,[]},
                                               {description,
                                                "Hex.pm plugin for rebar3"},
                                               {vsn,"3.0.0"},
                                               {applications,[kernel,stdlib]},
                                               {maintainers,
                                                ["Tristan Sloughter"]},
                                               {licenses,["MIT"]},
                                               {links,
                                                [{"Github",
                                                  "https://github.com/tsloughter/rebar3_hex"}]},
                                               {modules,
                                                [rebar3_hex,rebar3_hex_config,
                                                 rebar3_hex_cut,
                                                 rebar3_hex_docs,
                                                 rebar3_hex_http,
                                                 rebar3_hex_info,
                                                 rebar3_hex_key,
                                                 rebar3_hex_owner,
                                                 rebar3_hex_pkg,
                                                 rebar3_hex_search,
                                                 rebar3_hex_tar,
                                                 rebar3_hex_user,
                                                 rebar3_hex_utils]}],
                                              [kernel,stdlib],
                                              [],
                                              [default,prod],
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info],
                                                  [deps],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info],
                                                  [deps],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              0,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex",
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex",
                                              pkg,
                                              {pkg,<<"rebar3_hex">>,
                                               <<"3.0.0">>},
                                              false,false,true},
                                             {app_info_t,<<"pc">>,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc.app.src",
                                              undefined,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/ebin/pc.app",
                                              "1.4.0",root,
                                              [{description,
                                                "a rebar3 port compiler for native code"},
                                               {vsn,"1.4.0"},
                                               {registered,[]},
                                               {applications,[kernel,stdlib]},
                                               {env,[]},
                                               {modules,
                                                [pc,pc_compilation,
                                                 pc_port_env,pc_port_specs,
                                                 pc_prv_clean,pc_prv_compile,
                                                 pc_util]},
                                               {maintainers,
                                                ["Brian L. Troutwine",
                                                 "Tristan Sloughter"]},
                                               {licenses,["MIT"]},
                                               {links,
                                                [{"Github",
                                                  "https://github.com/blt/port_compiler"}]}],
                                              [kernel,stdlib],
                                              [],
                                              [default,prod],
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info,
                                                   inline_list_funcs,
                                                   warn_deprecated_function,
                                                   warn_export_all,
                                                   warn_export_vars,
                                                   warn_obsolete_guard,
                                                   warn_shadow_vars,
                                                   warn_untyped_record,
                                                   warn_unused_function,
                                                   warn_unused_import,
                                                   warnings_as_errors],
                                                  [xref_checks,
                                                   deprecated_function_calls,
                                                   deprecated_functions,
                                                   locals_not_used,
                                                   undefined_function_calls,
                                                   undefined_functions],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info,
                                                   inline_list_funcs,
                                                   warn_deprecated_function,
                                                   warn_export_all,
                                                   warn_export_vars,
                                                   warn_obsolete_guard,
                                                   warn_shadow_vars,
                                                   warn_untyped_record,
                                                   warn_unused_function,
                                                   warn_unused_import,
                                                   warnings_as_errors],
                                                  [xref_checks,
                                                   deprecated_function_calls,
                                                   deprecated_functions,
                                                   locals_not_used,
                                                   undefined_function_calls,
                                                   undefined_functions],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              0,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc",
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc",
                                              pkg,
                                              {pkg,<<"pc">>,<<"1.4.0">>},
                                              false,false,true},
                                             {app_info_t,<<"rebar3_hex">>,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/src/rebar3_hex.app.src",
                                              undefined,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex/ebin/rebar3_hex.app",
                                              "3.0.0",root,
                                              [{registered,[]},
                                               {description,
                                                "Hex.pm plugin for rebar3"},
                                               {vsn,"3.0.0"},
                                               {applications,[kernel,stdlib]},
                                               {maintainers,
                                                ["Tristan Sloughter"]},
                                               {licenses,["MIT"]},
                                               {links,
                                                [{"Github",
                                                  "https://github.com/tsloughter/rebar3_hex"}]},
                                               {modules,
                                                [rebar3_hex,rebar3_hex_config,
                                                 rebar3_hex_cut,
                                                 rebar3_hex_docs,
                                                 rebar3_hex_http,
                                                 rebar3_hex_info,
                                                 rebar3_hex_key,
                                                 rebar3_hex_owner,
                                                 rebar3_hex_pkg,
                                                 rebar3_hex_search,
                                                 rebar3_hex_tar,
                                                 rebar3_hex_user,
                                                 rebar3_hex_utils]}],
                                              [kernel,stdlib],
                                              [],
                                              [default,prod],
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info],
                                                  [deps],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              {dict,6,16,16,8,80,48,
                                               {[],[],[],[],[],[],[],[],[],[],
                                                [],[],[],[],[],[]},
                                               {{[],
                                                 [[{locks,default}],
                                                  [{deps,default}],
                                                  [{plugins,default}]],
                                                 [],
                                                 [[erl_opts,debug_info],
                                                  [deps],
                                                  [overrides]],
                                                 [],[],[],[],[],[],[],[],[],
                                                 [],[],[]}}},
                                              0,
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex",
                                              "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/rebar3_hex",
                                              pkg,
                                              {pkg,<<"rebar3_hex">>,
                                               <<"3.0.0">>},
                                              false,false,true}],
                                            [],
                                            [{git,rebar_git_resource},
                                             {pkg,rebar_pkg_resource},
                                             {hg,rebar_hg_resource}],
                                            [{provider,publish,
                                              rebar3_hex_pkg,
                                              {[],[]},
                                              true,
                                              [{default,lock}],
                                              [],
                                              "Publish a new version of your package and update the package",
                                              "rebar3 hex publish",
                                              [{revert,undefined,"revert",
                                                string,
                                                "Revert given version."}],
                                              [default],
                                              hex},
                                             {provider,search,
                                              rebar3_hex_search,
                                              {[],[]},
                                              true,[],[],
                                              "Display packages matching the given search query",
                                              "rebar3 hex search <term>",
                                              [{term,undefined,undefined,
                                                string,"Search term."}],
                                              [default],
                                              hex},
                                             {provider,docs,rebar3_hex_docs,
                                              {[],[]},
                                              true,
                                              [{default,edoc}],
                                              [],
                                              "Publish documentation for the current project and version",
                                              "rebar3 hex docs",
                                              [{revert,undefined,"revert",
                                                string,
                                                "Revert given version."}],
                                              [default],
                                              hex},
                                             {provider,owner,
                                              rebar3_hex_owner,
                                              {[],[]},
                                              true,[],[],
                                              "Add, remove or list package owners",
                                              "rebar3 hex owner",[],
                                              [default],
                                              hex},
                                             {provider,info,rebar3_hex_info,
                                              {[],[]},
                                              true,[],[],
                                              "Prints hex package or system information",
                                              "rebar3 hex user <command>",[],
                                              [default],
                                              hex},
                                             {provider,key,rebar3_hex_key,
                                              {[],[]},
                                              true,[],[],
                                              "Remove or list API keys associated with your account",
                                              "rebar3 hex key [list | remove <key>]",
                                              [],
                                              [default],
                                              hex},
                                             {provider,config,
                                              rebar3_hex_config,
                                              {[],[]},
                                              true,[],[],
                                              "Read or update hex configuration file",
                                              "rebar3 hex config <key> [<value>]",
                                              [],
                                              [default],
                                              hex},
                                             {provider,cut,rebar3_hex_cut,
                                              {[],[]},
                                              true,
                                              [{default,lock}],
                                              [],
                                              "Increment version number and publish package",
                                              "rebar3 hex cut",
                                              [{increment,105,"increment",
                                                string,
                                                "Type of semver increment: major, minor or patch"}],
                                              [default],
                                              hex},
                                             {provider,user,rebar3_hex_user,
                                              {[],[]},
                                              true,[],[],"Hex user tasks",
                                              "rebar3 hex user <command>",[],
                                              [default],
                                              hex},
                                             {provider,clean,pc_prv_clean,
                                              {[],[]},
                                              true,
                                              [{default,app_discovery}],
                                              [],
                                              "clean the results of port compilation",
                                              "rebar pc clean",[],
                                              [default],
                                              pc},
                                             {provider,compile,
                                              pc_prv_compile,
                                              {[],[]},
                                              true,
                                              [{default,compile}],
                                              [],"perform port compilation",
                                              "rebar pc compile",[],
                                              [default],
                                              pc},
                                             {provider,xref,rebar_prv_xref,
                                              {[],[]},
                                              true,
                                              [compile],
                                              ["Run cross reference analysis.",
                                               "\n","\n",86,97,108,105,100,32,
                                               114,101,98,97,114,46,99,111,
                                               110,102,105,103,32,111,112,116,
                                               105,111,110,115,58,"\n",32,32,
                                               [123,
                                                ["xref_warnings",44,"false"],
                                                125],
                                               "\n",32,32,
                                               [123,
                                                ["xref_extra_paths",44,"[]"],
                                                125],
                                               "\n",32,32,
                                               [123,
                                                ["xref_checks",44,
                                                 [91,
                                                  ["undefined_function_calls",
                                                   44,"undefined_functions",
                                                   44,"locals_not_used",44,10,
                                                   [32,
                                                    [32,
                                                     ["   ",32,32,32],
                                                     "   ",32,32,32],
                                                    32,32],
                                                   "exports_not_used",44,
                                                   "deprecated_function_calls",
                                                   44,10,
                                                   [32,
                                                    [32,
                                                     ["   ",32,32,32],
                                                     "   ",32,32,32],
                                                    32,32],
                                                   "deprecated_functions"],
                                                  93]],
                                                125],
                                               "\n",32,32,
                                               [123,
                                                ["xref_queries",44,
                                                 [91,
                                                  [[123,
                                                    ["\"(xc - uc) || (xu - x - b - (\\\"mod\\\":\\\".*foo\\\"/\\\"4\\\"))\"",
                                                     44,10,
                                                     [32,32,
                                                      [[32,"   ",32,32,32],
                                                       32,"   ",32,32,32],
                                                      32,32],
                                                     "[]"],
                                                    125]],
                                                  93]],
                                                125],
                                               "\n"],
                                              "Run cross reference analysis.",
                                              "rebar3 xref",[],
                                              [default],
                                              default},
                                             {provider,version,
                                              rebar_prv_version,
                                              {[],[]},
                                              true,[],
                                              "Print version for rebar and current Erlang.",
                                              "Print version for rebar and current Erlang.",
                                              "rebar3 version",[],
                                              [default],
                                              default},
                                             {provider,upgrade,
                                              rebar_prv_upgrade,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Upgrade project dependecies. Mentioning no application will upgrade all dependencies. To upgrade specific dependencies, their names can be listed in the command.",
                                              "Upgrade dependencies.",
                                              "rebar3 upgrade [cowboy[,ranch]]",
                                              [{package,undefined,undefined,
                                                string,
                                                "List of packages to upgrade. If not specified, all dependencies are upgraded."}],
                                              [default],
                                              default},
                                             {provider,update,
                                              rebar_prv_update,
                                              {[],[]},
                                              true,[],"Update package index.",
                                              "Update package index.",
                                              "rebar3 update",[],
                                              [default],
                                              default},
                                             {provider,unlock,
                                              rebar_prv_unlock,
                                              {[],[]},
                                              true,[],
                                              "Unlock project dependencies. Mentioning no application will unlock all dependencies. To unlock specific dependencies, their name can be listed in the command.",
                                              "Unlock dependencies.",[],
                                              [{package,undefined,undefined,
                                                string,
                                                "List of packages to unlock. If not specified, all dependencies are unlocked."}],
                                              [default],
                                              default},
                                             {provider,tar,rebar_prv_tar,
                                              {[],[]},
                                              true,
                                              [release],
                                              "Tar archive of release built of project.",
                                              "Tar archive of release built of project.",
                                              "rebar3 tar",
                                              [{relname,110,"relname",string,
                                                "Specify the name for the release that will be generated"},
                                               {relvsn,118,"relvsn",string,
                                                "Specify the version for the release"},
                                               {goal,103,"goal",string,
                                                "Specify a target constraint on the system. These are usually the OTP"},
                                               {upfrom,117,"upfrom",string,
                                                "Only valid with relup target, specify the release to upgrade from"},
                                               {output_dir,111,"output-dir",
                                                string,
                                                "The output directory for the release. This is `./` by default."},
                                               {help,104,"help",undefined,
                                                "Print usage"},
                                               {lib_dir,108,"lib-dir",string,
                                                "Additional dir that should be searched for OTP Apps"},
                                               {path,112,"path",string,
                                                "Additional dir to add to the code path"},
                                               {default_libs,undefined,
                                                "default-libs",boolean,
                                                "Whether to use the default system added lib dirs (means you must add them all manually). Default is true"},
                                               {log_level,86,"verbose",
                                                {integer,2},
                                                "Verbosity level, maybe between 0 and 3"},
                                               {dev_mode,100,"dev-mode",
                                                boolean,
                                                "Symlink the applications and configuration into the release instead of copying"},
                                               {include_erts,105,
                                                "include-erts",string,
                                                "If true include a copy of erts used to build with, if a path include erts at that path. If false, do not include erts"},
                                               {override,97,"override",
                                                string,
                                                "Provide an app name and a directory to override in the form <appname>:<app directory>"},
                                               {config,99,"config",
                                                {string,[]},
                                                "The path to a config file"},
                                               {overlay_vars,undefined,
                                                "overlay_vars",string,
                                                "Path to a file of overlay variables"},
                                               {vm_args,undefined,"vm_args",
                                                string,
                                                "Path to a file to use for vm.args"},
                                               {sys_config,undefined,
                                                "sys_config",string,
                                                "Path to a file to use for sys.config"},
                                               {system_libs,undefined,
                                                "system_libs",string,
                                                "Path to dir of Erlang system libs"},
                                               {version,undefined,"version",
                                                undefined,
                                                "Print relx version"},
                                               {root_dir,114,"root",string,
                                                "The project root directory"}],
                                              [default],
                                              default},
                                             {provider,state,rebar_prv_state,
                                              {[],[]},
                                              false,[],
                                              "Display rebar configuration for debugging purpose",
                                              "Print current configuration state",
                                              "rebar3 state",[],
                                              [default],
                                              default},
                                             {provider,shell,rebar_prv_shell,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Start a shell with project and deps preloaded similar to~n'erl -pa ebin -pa deps/*/ebin'.~n",
                                              "Run shell with project apps and deps in path.",
                                              "rebar3 shell",
                                              [{config,undefined,"config",
                                                string,
                                                "Path to the config file to use. Defaults to {shell, [{config, File}]} and then the relx sys.config file if not specified."},
                                               {name,undefined,"name",atom,
                                                "Gives a long name to the node."},
                                               {sname,undefined,"sname",atom,
                                                "Gives a short name to the node."},
                                               {setcookie,undefined,
                                                "setcookie",atom,
                                                "Sets the cookie if the node is distributed."},
                                               {script_file,undefined,
                                                "script",string,
                                                "Path to an escript file to run before starting the project apps. Defaults to rebar.config {shell, [{script_file, File}]} if not specified."},
                                               {apps,undefined,"apps",string,
                                                "A list of apps to boot before starting the shell. (E.g. --apps app1,app2,app3) Defaults to rebar.config {shell, [{apps, Apps}]} or relx apps if not specified."}],
                                              [default],
                                              default},
                                             {provider,report,
                                              rebar_prv_report,
                                              {[],[]},
                                              true,[],
                                              "Provide a crash report to be sent to the rebar3 issues page.",
                                              "Provide a crash report to be sent to the rebar3 issues page.",
                                              "rebar3 report \"<task>\"",
                                              [{task,undefined,undefined,
                                                string,
                                                "Task to print details for."}],
                                              [default],
                                              default},
                                             {provider,relup,rebar_prv_relup,
                                              {[],[]},
                                              true,
                                              [release],
                                              "Create relup of releases.",
                                              "Create relup of releases.",
                                              "rebar3 relup",
                                              [{relname,110,"relname",string,
                                                "Specify the name for the release that will be generated"},
                                               {relvsn,118,"relvsn",string,
                                                "Specify the version for the release"},
                                               {goal,103,"goal",string,
                                                "Specify a target constraint on the system. These are usually the OTP"},
                                               {upfrom,117,"upfrom",string,
                                                "Only valid with relup target, specify the release to upgrade from"},
                                               {output_dir,111,"output-dir",
                                                string,
                                                "The output directory for the release. This is `./` by default."},
                                               {help,104,"help",undefined,
                                                "Print usage"},
                                               {lib_dir,108,"lib-dir",string,
                                                "Additional dir that should be searched for OTP Apps"},
                                               {path,112,"path",string,
                                                "Additional dir to add to the code path"},
                                               {default_libs,undefined,
                                                "default-libs",boolean,
                                                "Whether to use the default system added lib dirs (means you must add them all manually). Default is true"},
                                               {log_level,86,"verbose",
                                                {integer,2},
                                                "Verbosity level, maybe between 0 and 3"},
                                               {dev_mode,100,"dev-mode",
                                                boolean,
                                                "Symlink the applications and configuration into the release instead of copying"},
                                               {include_erts,105,
                                                "include-erts",string,
                                                "If true include a copy of erts used to build with, if a path include erts at that path. If false, do not include erts"},
                                               {override,97,"override",
                                                string,
                                                "Provide an app name and a directory to override in the form <appname>:<app directory>"},
                                               {config,99,"config",
                                                {string,[]},
                                                "The path to a config file"},
                                               {overlay_vars,undefined,
                                                "overlay_vars",string,
                                                "Path to a file of overlay variables"},
                                               {vm_args,undefined,"vm_args",
                                                string,
                                                "Path to a file to use for vm.args"},
                                               {sys_config,undefined,
                                                "sys_config",string,
                                                "Path to a file to use for sys.config"},
                                               {system_libs,undefined,
                                                "system_libs",string,
                                                "Path to dir of Erlang system libs"},
                                               {version,undefined,"version",
                                                undefined,
                                                "Print relx version"},
                                               {root_dir,114,"root",string,
                                                "The project root directory"}],
                                              [default],
                                              default},
                                             {provider,release,
                                              rebar_prv_release,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Build release of project.",
                                              "Build release of project.",
                                              "rebar3 release",
                                              [{relname,110,"relname",string,
                                                "Specify the name for the release that will be generated"},
                                               {relvsn,118,"relvsn",string,
                                                "Specify the version for the release"},
                                               {goal,103,"goal",string,
                                                "Specify a target constraint on the system. These are usually the OTP"},
                                               {upfrom,117,"upfrom",string,
                                                "Only valid with relup target, specify the release to upgrade from"},
                                               {output_dir,111,"output-dir",
                                                string,
                                                "The output directory for the release. This is `./` by default."},
                                               {help,104,"help",undefined,
                                                "Print usage"},
                                               {lib_dir,108,"lib-dir",string,
                                                "Additional dir that should be searched for OTP Apps"},
                                               {path,112,"path",string,
                                                "Additional dir to add to the code path"},
                                               {default_libs,undefined,
                                                "default-libs",boolean,
                                                "Whether to use the default system added lib dirs (means you must add them all manually). Default is true"},
                                               {log_level,86,"verbose",
                                                {integer,2},
                                                "Verbosity level, maybe between 0 and 3"},
                                               {dev_mode,100,"dev-mode",
                                                boolean,
                                                "Symlink the applications and configuration into the release instead of copying"},
                                               {include_erts,105,
                                                "include-erts",string,
                                                "If true include a copy of erts used to build with, if a path include erts at that path. If false, do not include erts"},
                                               {override,97,"override",
                                                string,
                                                "Provide an app name and a directory to override in the form <appname>:<app directory>"},
                                               {config,99,"config",
                                                {string,[]},
                                                "The path to a config file"},
                                               {overlay_vars,undefined,
                                                "overlay_vars",string,
                                                "Path to a file of overlay variables"},
                                               {vm_args,undefined,"vm_args",
                                                string,
                                                "Path to a file to use for vm.args"},
                                               {sys_config,undefined,
                                                "sys_config",string,
                                                "Path to a file to use for sys.config"},
                                               {system_libs,undefined,
                                                "system_libs",string,
                                                "Path to dir of Erlang system libs"},
                                               {version,undefined,"version",
                                                undefined,
                                                "Print relx version"},
                                               {root_dir,114,"root",string,
                                                "The project root directory"}],
                                              [default],
                                              default},
                                             {provider,upgrade,
                                              rebar_prv_plugins_upgrade,
                                              {[],[]},
                                              true,[],
                                              "List or upgrade plugins",
                                              "Upgrade plugins",
                                              "rebar3 plugins upgrade <plugin>",
                                              [{plugin,undefined,undefined,
                                                string,"Plugin to upgrade"}],
                                              [default],
                                              plugins},
                                             {provider,list,
                                              rebar_prv_plugins,
                                              {[],[]},
                                              true,[],
                                              "List local and global plugins for this project",
                                              "List local and global plugins for this project",
                                              "rebar3 plugins list",[],
                                              [default],
                                              plugins},
                                             {provider,path,rebar_prv_path,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "Print paths to build dirs in current profile.",
                                              "Print paths to build dirs in current profile.",
                                              "rebar3 path",
                                              [{app,undefined,"app",string,
                                                "Comma seperated list of applications to return paths for."},
                                               {base,undefined,"base",
                                                boolean,
                                                "Return the `base' path of the current profile."},
                                               {bin,undefined,"bin",boolean,
                                                "Return the `bin' path of the current profile."},
                                               {ebin,undefined,"ebin",
                                                boolean,
                                                "Return all `ebin' paths of the current profile's applications."},
                                               {lib,undefined,"lib",boolean,
                                                "Return the `lib' path of the current profile."},
                                               {priv,undefined,"priv",
                                                boolean,
                                                "Return the `priv' path of the current profile's applications."},
                                               {separator,115,"separator",
                                                string,
                                                "In case of multiple return paths, the separator character to use to join them."},
                                               {src,undefined,"src",boolean,
                                                "Return the `src' path of the current profile's applications."},
                                               {rel,undefined,"rel",boolean,
                                                "Return the `rel' path of the current profile."}],
                                              [default],
                                              default},
                                             {provider,pkgs,
                                              rebar_prv_packages,
                                              {[],[]},
                                              true,[],
                                              ["List available packages",46,
                                               "\n"],
                                              "List available packages.",
                                              "rebar3 pkgs",[],
                                              [default],
                                              default},
                                             {provider,new,rebar_prv_new,
                                              {[],[]},
                                              true,[],
                                              [67,114,101,97,116,101,32,114,
                                               101,98,97,114,51,32,112,114,
                                               111,106,101,99,116,32,98,97,
                                               115,101,100,32,111,110,32,116,
                                               101,109,112,108,97,116,101,32,
                                               97,110,100,32,118,97,114,115,
                                               46,"\n","\n",86,97,108,105,100,
                                               32,99,111,109,109,97,110,100,
                                               32,108,105,110,101,32,111,112,
                                               116,105,111,110,115,58,"\n",32,
                                               32,60,116,101,109,112,108,97,
                                               116,101,62,32,91,118,97,114,61,
                                               102,111,111,44,46,46,46,93,
                                               "\n"],
                                              "Create new project from templates.",
                                              "rebar3 new <template>",
                                              [{force,102,"force",undefined,
                                                "overwrite existing files"}],
                                              [default],
                                              default},
                                             {provider,lock,rebar_prv_lock,
                                              {[],[]},
                                              false,
                                              [install_deps],
                                              "Locks dependencies",
                                              "Locks dependencies.",[],[],
                                              [default],
                                              default},
                                             {provider,upgrade,
                                              rebar_prv_local_upgrade,
                                              {[],[]},
                                              true,[],[],
                                              "Download latest rebar3 escript and extract.",
                                              "rebar3 unstable upgrade",[],
                                              [default],
                                              local},
                                             {provider,install,
                                              rebar_prv_local_install,
                                              {[],[]},
                                              true,[],[],
                                              "Extract libs from rebar3 escript along with a run script.",
                                              "rebar3 unstable install",[],
                                              [default],
                                              local},
                                             {provider,install_deps,
                                              rebar_prv_install_deps,
                                              {[],[]},
                                              false,
                                              [app_discovery],
                                              [],[],undefined,[],
                                              [default],
                                              default},
                                             {provider,help,rebar_prv_help,
                                              {[],[]},
                                              true,[],
                                              "Display a list of tasks or help for a given task or subtask.",
                                              "Display a list of tasks or help for a given task or subtask.",
                                              "rebar3 help <task>",
                                              [{help_task,undefined,
                                                undefined,string,
                                                "Task to print help for."}],
                                              [default],
                                              default},
                                             {provider,eunit,rebar_prv_eunit,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Run EUnit Tests.",
                                              "Run EUnit Tests.",
                                              "rebar3 eunit",
                                              [{app,undefined,"app",string,
                                                "Comma separated list of application test suites to run. Equivalent to `[{application, App}]`."},
                                               {application,undefined,
                                                "application",string,
                                                "Comma separated list of application test suites to run. Equivalent to `[{application, App}]`."},
                                               {cover,99,"cover",boolean,
                                                "Generate cover data. Defaults to false."},
                                               {dir,100,"dir",string,
                                                "Comma separated list of dirs to load tests from. Equivalent to `[{dir, Dir}]`."},
                                               {file,102,"file",string,
                                                "Comma separated list of files to load tests from. Equivalent to `[{file, File}]`."},
                                               {module,109,"module",string,
                                                "Comma separated list of modules to load tests from. Equivalent to `[{module, Module}]`."},
                                               {suite,115,"suite",string,
                                                "Comma separated list of modules to load tests from. Equivalent to `[{module, Module}]`."},
                                               {verbose,118,"verbose",
                                                boolean,
                                                "Verbose output. Defaults to false."}],
                                              [test],
                                              default},
                                             {provider,escriptize,
                                              rebar_prv_escriptize,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Generate an escript executable containing the project's and its dependencies' BEAM files.",
                                              "Generate escript archive.",
                                              "rebar3 escriptize",[],
                                              [default],
                                              default},
                                             {provider,edoc,rebar_prv_edoc,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Generate documentation using edoc.",
                                              "Generate documentation using edoc.",
                                              "rebar3 edoc",[],
                                              [docs],
                                              default},
                                             {provider,do,rebar_prv_do,
                                              {[],[]},
                                              true,[],
                                              "Higher order provider for running multiple tasks in a sequence.",
                                              "Higher order provider for running multiple tasks in a sequence.",
                                              "rebar3 do <task1>, <task2>, ...",
                                              [],
                                              [default],
                                              default},
                                             {provider,dialyzer,
                                              rebar_prv_dialyzer,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Run the Dialyzer analyzer on the project.\n\nThis command will build, and keep up-to-date, a suitable PLT and will use it to carry out success typing analysis on the current project.\n\nThe following (optional) configurations can be added to a `proplist` of options `dialyzer` in rebar.config:\n`warnings` - a list of dialyzer warnings\n`get_warnings` - display warnings when altering a PLT file (boolean)\n`plt_apps` - the strategy for determining the applications which included in the PLT file, `top_level_deps` to include just the direct dependencies or `all_deps` to include all nested dependencies*\n`plt_extra_apps` - a list of applications to include in the PLT file**\n`plt_location` - the location of the PLT file, `local` to store in the profile's base directory (default) or a custom directory.\n`plt_prefix` - the prefix to the PLT file, defaults to \"rebar3\"***\n`base_plt_apps` - a list of applications to include in the base PLT file****\n`base_plt_location` - the location of base PLT file, `global` to store in $HOME/.cache/rebar3 (default) or  a custom directory****\n`base_plt_prefix` - the prefix to the base PLT file, defaults to \"rebar3\"*** ****\n\nFor example, to warn on unmatched returns: \n{dialyzer, [{warnings, [unmatched_returns]}]}.\n\n*The direct dependent applications are listed in `applications` and `included_applications` of their .app files.\n**The applications in `base_plt_apps` will be added to the list. \n***PLT files are named \"<prefix>_<otp_release>_plt\".\n****The base PLT is a PLT containing the core applications often required for a project's PLT. One base PLT is created per OTP version and stored in `base_plt_location`. A base PLT is used to build project PLTs.\n",
                                              "Run the Dialyzer analyzer on the project.",
                                              "rebar3 dialyzer",
                                              [{update_plt,117,"update-plt",
                                                boolean,
                                                "Enable updating the PLT. Default: true"},
                                               {succ_typings,115,
                                                "succ-typings",boolean,
                                                "Enable success typing analysis. Default: true"}],
                                              [default],
                                              default},
                                             {provider,tree,
                                              rebar_prv_deps_tree,
                                              {[],[]},
                                              true,
                                              [lock],
                                              [],"Print dependency tree.",
                                              "rebar3 tree",
                                              [{verbose,118,"verbose",
                                                undefined,
                                                "Print repo and branch/tag/ref for git and hg deps"}],
                                              [default],
                                              default},
                                             {provider,deps,rebar_prv_deps,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "List dependencies. Those not matching lock files are followed by an asterisk (*).",
                                              "List dependencies",
                                              "rebar3 deps",[],
                                              [default],
                                              default},
                                             {provider,cover,rebar_prv_cover,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "Perform coverage analysis.",
                                              "Perform coverage analysis.",
                                              "rebar3 cover",
                                              [{reset,114,"reset",boolean,
                                                "Reset all coverdata."},
                                               {verbose,118,"verbose",
                                                boolean,
                                                "Print coverage analysis."}],
                                              [test],
                                              default},
                                             {provider,compile,
                                              rebar_prv_compile,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Compile apps .app.src and .erl files.",
                                              "Compile apps .app.src and .erl files.",
                                              "rebar3 compile",[],
                                              [default],
                                              default},
                                             {provider,ct,
                                              rebar_prv_common_test,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Run Common Tests.",
                                              "Run Common Tests.","rebar3 ct",
                                              [{dir,undefined,"dir",string,
                                                "List of additional directories containing test suites"},
                                               {suite,undefined,"suite",
                                                string,
                                                "List of test suites to run"},
                                               {group,undefined,"group",
                                                string,
                                                "List of test groups to run"},
                                               {testcase,undefined,"case",
                                                string,
                                                "List of test cases to run"},
                                               {label,undefined,"label",
                                                string,"Test label"},
                                               {config,undefined,"config",
                                                string,"List of config files"},
                                               {allow_user_terms,undefined,
                                                "allow_user_terms",boolean,
                                                "Allow user defined config values in config files"},
                                               {logdir,undefined,"logdir",
                                                string,"Log folder"},
                                               {logopts,undefined,"logopts",
                                                string,
                                                "Options for common test logging"},
                                               {verbosity,undefined,
                                                "verbosity",integer,
                                                "Verbosity"},
                                               {cover,99,"cover",
                                                {boolean,false},
                                                "Generate cover data"},
                                               {repeat,undefined,"repeat",
                                                integer,
                                                "How often to repeat tests"},
                                               {duration,undefined,
                                                "duration",string,
                                                "Max runtime (format: HHMMSS)"},
                                               {until,undefined,"until",
                                                string,
                                                "Run until (format: HHMMSS)"},
                                               {force_stop,undefined,
                                                "force_stop",string,
                                                "Force stop on test timeout (true | false | skip_rest)"},
                                               {basic_html,undefined,
                                                "basic_html",boolean,
                                                "Show basic HTML"},
                                               {stylesheet,undefined,
                                                "stylesheet",string,
                                                "CSS stylesheet to apply to html output"},
                                               {decrypt_key,undefined,
                                                "decrypt_key",string,
                                                "Path to key for decrypting config"},
                                               {decrypt_file,undefined,
                                                "decrypt_file",string,
                                                "Path to file containing key for decrypting config"},
                                               {abort_if_missing_suites,
                                                undefined,
                                                "abort_if_missing_suites",
                                                {boolean,true},
                                                "Abort if suites are missing"},
                                               {multiply_timetraps,undefined,
                                                "multiply_timetraps",integer,
                                                []},
                                               {scale_timetraps,undefined,
                                                "scale_timetraps",boolean,
                                                "Scale timetraps"},
                                               {create_priv_dir,undefined,
                                                "create_priv_dir",string,
                                                "Create priv dir (auto_per_run | auto_per_tc | manual_per_tc)"},
                                               {include,undefined,"include",
                                                string,
                                                "Directories containing additional include files"},
                                               {readable,undefined,
                                                "readable",boolean,
                                                "Shows test case names and only displays logs to shell on failures"},
                                               {verbose,118,"verbose",
                                                boolean,"Verbose output"}],
                                              [test],
                                              default},
                                             {provider,clean,rebar_prv_clean,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "Remove compiled beam files from apps.",
                                              "Remove compiled beam files from apps.",
                                              "rebar3 clean",
                                              [{all,97,"all",undefined,
                                                "Clean all apps include deps"},
                                               {profile,112,"profile",string,
                                                "Clean under profile. Equivalent to `rebar3 as <profile> clean`"}],
                                              [default],
                                              default},
                                             {provider,compile,
                                              rebar_prv_bare_compile,
                                              {[],[]},
                                              false,
                                              [{default,app_discovery}],
                                              [],[],[],
                                              [{paths,112,"paths",string,
                                                "Wildcard path of ebin directories to add to code path"}],
                                              [default],
                                              bare},
                                             {provider,as,rebar_prv_as,
                                              {[],[]},
                                              true,[],
                                              "Higher order provider for running multiple tasks in a sequence as a certain profiles.",
                                              "Higher order provider for running multiple tasks in a sequence as a certain profiles.",
                                              "rebar3 as <profile1>,<profile2>,... <task1>, <task2>, ...",
                                              [{profile,undefined,undefined,
                                                string,"Profiles to run as."}],
                                              [default],
                                              default},
                                             {provider,app_discovery,
                                              rebar_prv_app_discovery,
                                              {[],[]},
                                              false,[],[],[],[],[],
                                              [default],
                                              default},
                                             {provider,publish,
                                              rebar3_hex_pkg,
                                              {[],[]},
                                              true,
                                              [{default,lock}],
                                              [],
                                              "Publish a new version of your package and update the package",
                                              "rebar3 hex publish",
                                              [{revert,undefined,"revert",
                                                string,
                                                "Revert given version."}],
                                              [default],
                                              hex},
                                             {provider,search,
                                              rebar3_hex_search,
                                              {[],[]},
                                              true,[],[],
                                              "Display packages matching the given search query",
                                              "rebar3 hex search <term>",
                                              [{term,undefined,undefined,
                                                string,"Search term."}],
                                              [default],
                                              hex},
                                             {provider,docs,rebar3_hex_docs,
                                              {[],[]},
                                              true,
                                              [{default,edoc}],
                                              [],
                                              "Publish documentation for the current project and version",
                                              "rebar3 hex docs",
                                              [{revert,undefined,"revert",
                                                string,
                                                "Revert given version."}],
                                              [default],
                                              hex},
                                             {provider,owner,
                                              rebar3_hex_owner,
                                              {[],[]},
                                              true,[],[],
                                              "Add, remove or list package owners",
                                              "rebar3 hex owner",[],
                                              [default],
                                              hex},
                                             {provider,info,rebar3_hex_info,
                                              {[],[]},
                                              true,[],[],
                                              "Prints hex package or system information",
                                              "rebar3 hex user <command>",[],
                                              [default],
                                              hex},
                                             {provider,key,rebar3_hex_key,
                                              {[],[]},
                                              true,[],[],
                                              "Remove or list API keys associated with your account",
                                              "rebar3 hex key [list | remove <key>]",
                                              [],
                                              [default],
                                              hex},
                                             {provider,config,
                                              rebar3_hex_config,
                                              {[],[]},
                                              true,[],[],
                                              "Read or update hex configuration file",
                                              "rebar3 hex config <key> [<value>]",
                                              [],
                                              [default],
                                              hex},
                                             {provider,cut,rebar3_hex_cut,
                                              {[],[]},
                                              true,
                                              [{default,lock}],
                                              [],
                                              "Increment version number and publish package",
                                              "rebar3 hex cut",
                                              [{increment,105,"increment",
                                                string,
                                                "Type of semver increment: major, minor or patch"}],
                                              [default],
                                              hex},
                                             {provider,user,rebar3_hex_user,
                                              {[],[]},
                                              true,[],[],"Hex user tasks",
                                              "rebar3 hex user <command>",[],
                                              [default],
                                              hex},
                                             {provider,clean,pc_prv_clean,
                                              {[],[]},
                                              true,
                                              [{default,app_discovery}],
                                              [],
                                              "clean the results of port compilation",
                                              "rebar pc clean",[],
                                              [default],
                                              pc},
                                             {provider,compile,
                                              pc_prv_compile,
                                              {[],[]},
                                              true,
                                              [{default,compile}],
                                              [],"perform port compilation",
                                              "rebar pc compile",[],
                                              [default],
                                              pc},
                                             {provider,xref,rebar_prv_xref,
                                              {[],[]},
                                              true,
                                              [compile],
                                              ["Run cross reference analysis.",
                                               "\n","\n",86,97,108,105,100,32,
                                               114,101,98,97,114,46,99,111,
                                               110,102,105,103,32,111,112,116,
                                               105,111,110,115,58,"\n",32,32,
                                               [123,
                                                ["xref_warnings",44,"false"],
                                                125],
                                               "\n",32,32,
                                               [123,
                                                ["xref_extra_paths",44,"[]"],
                                                125],
                                               "\n",32,32,
                                               [123,
                                                ["xref_checks",44,
                                                 [91,
                                                  ["undefined_function_calls",
                                                   44,"undefined_functions",
                                                   44,"locals_not_used",44,10,
                                                   [32,
                                                    [32,
                                                     ["   ",32,32,32],
                                                     "   ",32,32,32],
                                                    32,32],
                                                   "exports_not_used",44,
                                                   "deprecated_function_calls",
                                                   44,10,
                                                   [32,
                                                    [32,
                                                     ["   ",32,32,32],
                                                     "   ",32,32,32],
                                                    32,32],
                                                   "deprecated_functions"],
                                                  93]],
                                                125],
                                               "\n",32,32,
                                               [123,
                                                ["xref_queries",44,
                                                 [91,
                                                  [[123,
                                                    ["\"(xc - uc) || (xu - x - b - (\\\"mod\\\":\\\".*foo\\\"/\\\"4\\\"))\"",
                                                     44,10,
                                                     [32,32,
                                                      [[32,"   ",32,32,32],
                                                       32,"   ",32,32,32],
                                                      32,32],
                                                     "[]"],
                                                    125]],
                                                  93]],
                                                125],
                                               "\n"],
                                              "Run cross reference analysis.",
                                              "rebar3 xref",[],
                                              [default],
                                              default},
                                             {provider,version,
                                              rebar_prv_version,
                                              {[],[]},
                                              true,[],
                                              "Print version for rebar and current Erlang.",
                                              "Print version for rebar and current Erlang.",
                                              "rebar3 version",[],
                                              [default],
                                              default},
                                             {provider,upgrade,
                                              rebar_prv_upgrade,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Upgrade project dependecies. Mentioning no application will upgrade all dependencies. To upgrade specific dependencies, their names can be listed in the command.",
                                              "Upgrade dependencies.",
                                              "rebar3 upgrade [cowboy[,ranch]]",
                                              [{package,undefined,undefined,
                                                string,
                                                "List of packages to upgrade. If not specified, all dependencies are upgraded."}],
                                              [default],
                                              default},
                                             {provider,update,
                                              rebar_prv_update,
                                              {[],[]},
                                              true,[],"Update package index.",
                                              "Update package index.",
                                              "rebar3 update",[],
                                              [default],
                                              default},
                                             {provider,unlock,
                                              rebar_prv_unlock,
                                              {[],[]},
                                              true,[],
                                              "Unlock project dependencies. Mentioning no application will unlock all dependencies. To unlock specific dependencies, their name can be listed in the command.",
                                              "Unlock dependencies.",[],
                                              [{package,undefined,undefined,
                                                string,
                                                "List of packages to unlock. If not specified, all dependencies are unlocked."}],
                                              [default],
                                              default},
                                             {provider,tar,rebar_prv_tar,
                                              {[],[]},
                                              true,
                                              [release],
                                              "Tar archive of release built of project.",
                                              "Tar archive of release built of project.",
                                              "rebar3 tar",
                                              [{relname,110,"relname",string,
                                                "Specify the name for the release that will be generated"},
                                               {relvsn,118,"relvsn",string,
                                                "Specify the version for the release"},
                                               {goal,103,"goal",string,
                                                "Specify a target constraint on the system. These are usually the OTP"},
                                               {upfrom,117,"upfrom",string,
                                                "Only valid with relup target, specify the release to upgrade from"},
                                               {output_dir,111,"output-dir",
                                                string,
                                                "The output directory for the release. This is `./` by default."},
                                               {help,104,"help",undefined,
                                                "Print usage"},
                                               {lib_dir,108,"lib-dir",string,
                                                "Additional dir that should be searched for OTP Apps"},
                                               {path,112,"path",string,
                                                "Additional dir to add to the code path"},
                                               {default_libs,undefined,
                                                "default-libs",boolean,
                                                "Whether to use the default system added lib dirs (means you must add them all manually). Default is true"},
                                               {log_level,86,"verbose",
                                                {integer,2},
                                                "Verbosity level, maybe between 0 and 3"},
                                               {dev_mode,100,"dev-mode",
                                                boolean,
                                                "Symlink the applications and configuration into the release instead of copying"},
                                               {include_erts,105,
                                                "include-erts",string,
                                                "If true include a copy of erts used to build with, if a path include erts at that path. If false, do not include erts"},
                                               {override,97,"override",
                                                string,
                                                "Provide an app name and a directory to override in the form <appname>:<app directory>"},
                                               {config,99,"config",
                                                {string,[]},
                                                "The path to a config file"},
                                               {overlay_vars,undefined,
                                                "overlay_vars",string,
                                                "Path to a file of overlay variables"},
                                               {vm_args,undefined,"vm_args",
                                                string,
                                                "Path to a file to use for vm.args"},
                                               {sys_config,undefined,
                                                "sys_config",string,
                                                "Path to a file to use for sys.config"},
                                               {system_libs,undefined,
                                                "system_libs",string,
                                                "Path to dir of Erlang system libs"},
                                               {version,undefined,"version",
                                                undefined,
                                                "Print relx version"},
                                               {root_dir,114,"root",string,
                                                "The project root directory"}],
                                              [default],
                                              default},
                                             {provider,state,rebar_prv_state,
                                              {[],[]},
                                              false,[],
                                              "Display rebar configuration for debugging purpose",
                                              "Print current configuration state",
                                              "rebar3 state",[],
                                              [default],
                                              default},
                                             {provider,shell,rebar_prv_shell,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Start a shell with project and deps preloaded similar to~n'erl -pa ebin -pa deps/*/ebin'.~n",
                                              "Run shell with project apps and deps in path.",
                                              "rebar3 shell",
                                              [{config,undefined,"config",
                                                string,
                                                "Path to the config file to use. Defaults to {shell, [{config, File}]} and then the relx sys.config file if not specified."},
                                               {name,undefined,"name",atom,
                                                "Gives a long name to the node."},
                                               {sname,undefined,"sname",atom,
                                                "Gives a short name to the node."},
                                               {setcookie,undefined,
                                                "setcookie",atom,
                                                "Sets the cookie if the node is distributed."},
                                               {script_file,undefined,
                                                "script",string,
                                                "Path to an escript file to run before starting the project apps. Defaults to rebar.config {shell, [{script_file, File}]} if not specified."},
                                               {apps,undefined,"apps",string,
                                                "A list of apps to boot before starting the shell. (E.g. --apps app1,app2,app3) Defaults to rebar.config {shell, [{apps, Apps}]} or relx apps if not specified."}],
                                              [default],
                                              default},
                                             {provider,report,
                                              rebar_prv_report,
                                              {[],[]},
                          ** (Mix) Could not compile dependency :fs, "/Users/alex/.mix/rebar3 bare compile --paths "/Users/alex/Desktop/test/_build/dev/lib/*/ebin"" command failed. You can recompile this dependency with "mix deps.compile fs", update it with "mix deps.update fs" or clean it with "mix deps.clean fs"
                    true,[],
                                              "Provide a crash report to be sent to the rebar3 issues page.",
                                              "Provide a crash report to be sent to the rebar3 issues page.",
                                              "rebar3 report \"<task>\"",
                                              [{task,undefined,undefined,
                                                string,
                                                "Task to print details for."}],
                                              [default],
                                              default},
                                             {provider,relup,rebar_prv_relup,
                                              {[],[]},
                                              true,
                                              [release],
                                              "Create relup of releases.",
                                              "Create relup of releases.",
                                              "rebar3 relup",
                                              [{relname,110,"relname",string,
                                                "Specify the name for the release that will be generated"},
                                               {relvsn,118,"relvsn",string,
                                                "Specify the version for the release"},
                                               {goal,103,"goal",string,
                                                "Specify a target constraint on the system. These are usually the OTP"},
                                               {upfrom,117,"upfrom",string,
                                                "Only valid with relup target, specify the release to upgrade from"},
                                               {output_dir,111,"output-dir",
                                                string,
                                                "The output directory for the release. This is `./` by default."},
                                               {help,104,"help",undefined,
                                                "Print usage"},
                                               {lib_dir,108,"lib-dir",string,
                                                "Additional dir that should be searched for OTP Apps"},
                                               {path,112,"path",string,
                                                "Additional dir to add to the code path"},
                                               {default_libs,undefined,
                                                "default-libs",boolean,
                                                "Whether to use the default system added lib dirs (means you must add them all manually). Default is true"},
                                               {log_level,86,"verbose",
                                                {integer,2},
                                                "Verbosity level, maybe between 0 and 3"},
                                               {dev_mode,100,"dev-mode",
                                                boolean,
                                                "Symlink the applications and configuration into the release instead of copying"},
                                               {include_erts,105,
                                                "include-erts",string,
                                                "If true include a copy of erts used to build with, if a path include erts at that path. If false, do not include erts"},
                                               {override,97,"override",
                                                string,
                                                "Provide an app name and a directory to override in the form <appname>:<app directory>"},
                                               {config,99,"config",
                                                {string,[]},
                                                "The path to a config file"},
                                               {overlay_vars,undefined,
                                                "overlay_vars",string,
                                                "Path to a file of overlay variables"},
                                               {vm_args,undefined,"vm_args",
                                                string,
                                                "Path to a file to use for vm.args"},
                                               {sys_config,undefined,
                                                "sys_config",string,
                                                "Path to a file to use for sys.config"},
                                               {system_libs,undefined,
                                                "system_libs",string,
                                                "Path to dir of Erlang system libs"},
                                               {version,undefined,"version",
                                                undefined,
                                                "Print relx version"},
                                               {root_dir,114,"root",string,
                                                "The project root directory"}],
                                              [default],
                                              default},
                                             {provider,release,
                                              rebar_prv_release,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Build release of project.",
                                              "Build release of project.",
                                              "rebar3 release",
                                              [{relname,110,"relname",string,
                                                "Specify the name for the release that will be generated"},
                                               {relvsn,118,"relvsn",string,
                                                "Specify the version for the release"},
                                               {goal,103,"goal",string,
                                                "Specify a target constraint on the system. These are usually the OTP"},
                                               {upfrom,117,"upfrom",string,
                                                "Only valid with relup target, specify the release to upgrade from"},
                                               {output_dir,111,"output-dir",
                                                string,
                                                "The output directory for the release. This is `./` by default."},
                                               {help,104,"help",undefined,
                                                "Print usage"},
                                               {lib_dir,108,"lib-dir",string,
                                                "Additional dir that should be searched for OTP Apps"},
                                               {path,112,"path",string,
                                                "Additional dir to add to the code path"},
                                               {default_libs,undefined,
                                                "default-libs",boolean,
                                                "Whether to use the default system added lib dirs (means you must add them all manually). Default is true"},
                                               {log_level,86,"verbose",
                                                {integer,2},
                                                "Verbosity level, maybe between 0 and 3"},
                                               {dev_mode,100,"dev-mode",
                                                boolean,
                                                "Symlink the applications and configuration into the release instead of copying"},
                                               {include_erts,105,
                                                "include-erts",string,
                                                "If true include a copy of erts used to build with, if a path include erts at that path. If false, do not include erts"},
                                               {override,97,"override",
                                                string,
                                                "Provide an app name and a directory to override in the form <appname>:<app directory>"},
                                               {config,99,"config",
                                                {string,[]},
                                                "The path to a config file"},
                                               {overlay_vars,undefined,
                                                "overlay_vars",string,
                                                "Path to a file of overlay variables"},
                                               {vm_args,undefined,"vm_args",
                                                string,
                                                "Path to a file to use for vm.args"},
                                               {sys_config,undefined,
                                                "sys_config",string,
                                                "Path to a file to use for sys.config"},
                                               {system_libs,undefined,
                                                "system_libs",string,
                                                "Path to dir of Erlang system libs"},
                                               {version,undefined,"version",
                                                undefined,
                                                "Print relx version"},
                                               {root_dir,114,"root",string,
                                                "The project root directory"}],
                                              [default],
                                              default},
                                             {provider,upgrade,
                                              rebar_prv_plugins_upgrade,
                                              {[],[]},
                                              true,[],
                                              "List or upgrade plugins",
                                              "Upgrade plugins",
                                              "rebar3 plugins upgrade <plugin>",
                                              [{plugin,undefined,undefined,
                                                string,"Plugin to upgrade"}],
                                              [default],
                                              plugins},
                                             {provider,list,
                                              rebar_prv_plugins,
                                              {[],[]},
                                              true,[],
                                              "List local and global plugins for this project",
                                              "List local and global plugins for this project",
                                              "rebar3 plugins list",[],
                                              [default],
                                              plugins},
                                             {provider,path,rebar_prv_path,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "Print paths to build dirs in current profile.",
                                              "Print paths to build dirs in current profile.",
                                              "rebar3 path",
                                              [{app,undefined,"app",string,
                                                "Comma seperated list of applications to return paths for."},
                                               {base,undefined,"base",
                                                boolean,
                                                "Return the `base' path of the current profile."},
                                               {bin,undefined,"bin",boolean,
                                                "Return the `bin' path of the current profile."},
                                               {ebin,undefined,"ebin",
                                                boolean,
                                                "Return all `ebin' paths of the current profile's applications."},
                                               {lib,undefined,"lib",boolean,
                                                "Return the `lib' path of the current profile."},
                                               {priv,undefined,"priv",
                                                boolean,
                                                "Return the `priv' path of the current profile's applications."},
                                               {separator,115,"separator",
                                                string,
                                                "In case of multiple return paths, the separator character to use to join them."},
                                               {src,undefined,"src",boolean,
                                                "Return the `src' path of the current profile's applications."},
                                               {rel,undefined,"rel",boolean,
                                                "Return the `rel' path of the current profile."}],
                                              [default],
                                              default},
                                             {provider,pkgs,
                                              rebar_prv_packages,
                                              {[],[]},
                                              true,[],
                                              ["List available packages",46,
                                               "\n"],
                                              "List available packages.",
                                              "rebar3 pkgs",[],
                                              [default],
                                              default},
                                             {provider,new,rebar_prv_new,
                                              {[],[]},
                                              true,[],
                                              [67,114,101,97,116,101,32,114,
                                               101,98,97,114,51,32,112,114,
                                               111,106,101,99,116,32,98,97,
                                               115,101,100,32,111,110,32,116,
                                               101,109,112,108,97,116,101,32,
                                               97,110,100,32,118,97,114,115,
                                               46,"\n","\n",86,97,108,105,100,
                                               32,99,111,109,109,97,110,100,
                                               32,108,105,110,101,32,111,112,
                                               116,105,111,110,115,58,"\n",32,
                                               32,60,116,101,109,112,108,97,
                                               116,101,62,32,91,118,97,114,61,
                                               102,111,111,44,46,46,46,93,
                                               "\n"],
                                              "Create new project from templates.",
                                              "rebar3 new <template>",
                                              [{force,102,"force",undefined,
                                                "overwrite existing files"}],
                                              [default],
                                              default},
                                             {provider,lock,rebar_prv_lock,
                                              {[],[]},
                                              false,
                                              [install_deps],
                                              "Locks dependencies",
                                              "Locks dependencies.",[],[],
                                              [default],
                                              default},
                                             {provider,upgrade,
                                              rebar_prv_local_upgrade,
                                              {[],[]},
                                              true,[],[],
                                              "Download latest rebar3 escript and extract.",
                                              "rebar3 unstable upgrade",[],
                                              [default],
                                              local},
                                             {provider,install,
                                              rebar_prv_local_install,
                                              {[],[]},
                                              true,[],[],
                                              "Extract libs from rebar3 escript along with a run script.",
                                              "rebar3 unstable install",[],
                                              [default],
                                              local},
                                             {provider,install_deps,
                                              rebar_prv_install_deps,
                                              {[],[]},
                                              false,
                                              [app_discovery],
                                              [],[],undefined,[],
                                              [default],
                                              default},
                                             {provider,help,rebar_prv_help,
                                              {[],[]},
                                              true,[],
                                              "Display a list of tasks or help for a given task or subtask.",
                                              "Display a list of tasks or help for a given task or subtask.",
                                              "rebar3 help <task>",
                                              [{help_task,undefined,
                                                undefined,string,
                                                "Task to print help for."}],
                                              [default],
                                              default},
                                             {provider,eunit,rebar_prv_eunit,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Run EUnit Tests.",
                                              "Run EUnit Tests.",
                                              "rebar3 eunit",
                                              [{app,undefined,"app",string,
                                                "Comma separated list of application test suites to run. Equivalent to `[{application, App}]`."},
                                               {application,undefined,
                                                "application",string,
                                                "Comma separated list of application test suites to run. Equivalent to `[{application, App}]`."},
                                               {cover,99,"cover",boolean,
                                                "Generate cover data. Defaults to false."},
                                               {dir,100,"dir",string,
                                                "Comma separated list of dirs to load tests from. Equivalent to `[{dir, Dir}]`."},
                                               {file,102,"file",string,
                                                "Comma separated list of files to load tests from. Equivalent to `[{file, File}]`."},
                                               {module,109,"module",string,
                                                "Comma separated list of modules to load tests from. Equivalent to `[{module, Module}]`."},
                                               {suite,115,"suite",string,
                                                "Comma separated list of modules to load tests from. Equivalent to `[{module, Module}]`."},
                                               {verbose,118,"verbose",
                                                boolean,
                                                "Verbose output. Defaults to false."}],
                                              [test],
                                              default},
                                             {provider,escriptize,
                                              rebar_prv_escriptize,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Generate an escript executable containing the project's and its dependencies' BEAM files.",
                                              "Generate escript archive.",
                                              "rebar3 escriptize",[],
                                              [default],
                                              default},
                                             {provider,edoc,rebar_prv_edoc,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Generate documentation using edoc.",
                                              "Generate documentation using edoc.",
                                              "rebar3 edoc",[],
                                              [docs],
                                              default},
                                             {provider,do,rebar_prv_do,
                                              {[],[]},
                                              true,[],
                                              "Higher order provider for running multiple tasks in a sequence.",
                                              "Higher order provider for running multiple tasks in a sequence.",
                                              "rebar3 do <task1>, <task2>, ...",
                                              [],
                                              [default],
                                              default},
                                             {provider,dialyzer,
                                              rebar_prv_dialyzer,
                                              {[],[]},
                                              true,
                                              [compile],
                                              "Run the Dialyzer analyzer on the project.\n\nThis command will build, and keep up-to-date, a suitable PLT and will use it to carry out success typing analysis on the current project.\n\nThe following (optional) configurations can be added to a `proplist` of options `dialyzer` in rebar.config:\n`warnings` - a list of dialyzer warnings\n`get_warnings` - display warnings when altering a PLT file (boolean)\n`plt_apps` - the strategy for determining the applications which included in the PLT file, `top_level_deps` to include just the direct dependencies or `all_deps` to include all nested dependencies*\n`plt_extra_apps` - a list of applications to include in the PLT file**\n`plt_location` - the location of the PLT file, `local` to store in the profile's base directory (default) or a custom directory.\n`plt_prefix` - the prefix to the PLT file, defaults to \"rebar3\"***\n`base_plt_apps` - a list of applications to include in the base PLT file****\n`base_plt_location` - the location of base PLT file, `global` to store in $HOME/.cache/rebar3 (default) or  a custom directory****\n`base_plt_prefix` - the prefix to the base PLT file, defaults to \"rebar3\"*** ****\n\nFor example, to warn on unmatched returns: \n{dialyzer, [{warnings, [unmatched_returns]}]}.\n\n*The direct dependent applications are listed in `applications` and `included_applications` of their .app files.\n**The applications in `base_plt_apps` will be added to the list. \n***PLT files are named \"<prefix>_<otp_release>_plt\".\n****The base PLT is a PLT containing the core applications often required for a project's PLT. One base PLT is created per OTP version and stored in `base_plt_location`. A base PLT is used to build project PLTs.\n",
                                              "Run the Dialyzer analyzer on the project.",
                                              "rebar3 dialyzer",
                                              [{update_plt,117,"update-plt",
                                                boolean,
                                                "Enable updating the PLT. Default: true"},
                                               {succ_typings,115,
                                                "succ-typings",boolean,
                                                "Enable success typing analysis. Default: true"}],
                                              [default],
                                              default},
                                             {provider,tree,
                                              rebar_prv_deps_tree,
                                              {[],[]},
                                              true,
                                              [lock],
                                              [],"Print dependency tree.",
                                              "rebar3 tree",
                                              [{verbose,118,"verbose",
                                                undefined,
                                                "Print repo and branch/tag/ref for git and hg deps"}],
                                              [default],
                                              default},
                                             {provider,deps,rebar_prv_deps,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "List dependencies. Those not matching lock files are followed by an asterisk (*).",
                                              "List dependencies",
                                              "rebar3 deps",[],
                                              [default],
                                              default},
                                             {provider,cover,rebar_prv_cover,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "Perform coverage analysis.",
                                              "Perform coverage analysis.",
                                              "rebar3 cover",
                                              [{reset,114,"reset",boolean,
                                                "Reset all coverdata."},
                                               {verbose,118,"verbose",
                                                boolean,
                                                "Print coverage analysis."}],
                                              [test],
                                              default},
                                             {provider,compile,
                                              rebar_prv_compile,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Compile apps .app.src and .erl files.",
                                              "Compile apps .app.src and .erl files.",
                                              "rebar3 compile",[],
                                              [default],
                                              default},
                                             {provider,ct,
                                              rebar_prv_common_test,
                                              {[],[]},
                                              true,
                                              [lock],
                                              "Run Common Tests.",
                                              "Run Common Tests.","rebar3 ct",
                                              [{dir,undefined,"dir",string,
                                                "List of additional directories containing test suites"},
                                               {suite,undefined,"suite",
                                                string,
                                                "List of test suites to run"},
                                               {group,undefined,"group",
                                                string,
                                                "List of test groups to run"},
                                               {testcase,undefined,"case",
                                                string,
                                                "List of test cases to run"},
                                               {label,undefined,"label",
                                                string,"Test label"},
                                               {config,undefined,"config",
                                                string,"List of config files"},
                                               {allow_user_terms,undefined,
                                                "allow_user_terms",boolean,
                                                "Allow user defined config values in config files"},
                                               {logdir,undefined,"logdir",
                                                string,"Log folder"},
                                               {logopts,undefined,"logopts",
                                                string,
                                                "Options for common test logging"},
                                               {verbosity,undefined,
                                                "verbosity",integer,
                                                "Verbosity"},
                                               {cover,99,"cover",
                                                {boolean,false},
                                                "Generate cover data"},
                                               {repeat,undefined,"repeat",
                                                integer,
                                                "How often to repeat tests"},
                                               {duration,undefined,
                                                "duration",string,
                                                "Max runtime (format: HHMMSS)"},
                                               {until,undefined,"until",
                                                string,
                                                "Run until (format: HHMMSS)"},
                                               {force_stop,undefined,
                                                "force_stop",string,
                                                "Force stop on test timeout (true | false | skip_rest)"},
                                               {basic_html,undefined,
                                                "basic_html",boolean,
                                                "Show basic HTML"},
                                               {stylesheet,undefined,
                                                "stylesheet",string,
                                                "CSS stylesheet to apply to html output"},
                                               {decrypt_key,undefined,
                                                "decrypt_key",string,
                                                "Path to key for decrypting config"},
                                               {decrypt_file,undefined,
                                                "decrypt_file",string,
                                                "Path to file containing key for decrypting config"},
                                               {abort_if_missing_suites,
                                                undefined,
                                                "abort_if_missing_suites",
                                                {boolean,true},
                                                "Abort if suites are missing"},
                                               {multiply_timetraps,undefined,
                                                "multiply_timetraps",integer,
                                                []},
                                               {scale_timetraps,undefined,
                                                "scale_timetraps",boolean,
                                                "Scale timetraps"},
                                               {create_priv_dir,undefined,
                                                "create_priv_dir",string,
                                                "Create priv dir (auto_per_run | auto_per_tc | manual_per_tc)"},
                                               {include,undefined,"include",
                                                string,
                                                "Directories containing additional include files"},
                                               {readable,undefined,
                                                "readable",boolean,
                                                "Shows test case names and only displays logs to shell on failures"},
                                               {verbose,118,"verbose",
                                                boolean,"Verbose output"}],
                                              [test],
                                              default},
                                             {provider,clean,rebar_prv_clean,
                                              {[],[]},
                                              true,
                                              [app_discovery],
                                              "Remove compiled beam files from apps.",
                                              "Remove compiled beam files from apps.",
                                              "rebar3 clean",
                                              [{all,97,"all",undefined,
                                                "Clean all apps include deps"},
                                               {profile,112,"profile",string,
                                                "Clean under profile. Equivalent to `rebar3 as <profile> clean`"}],
                                              [default],
                                              default},
                                             {provider,compile,
                                              rebar_prv_bare_compile,
                                              {[],[]},
                                              false,
                                              [{default,app_discovery}],
                                              [],[],[],
                                              [{paths,112,"paths",string,
                                                "Wildcard path of ebin directories to add to code path"}],
                                              [default],
                                              bare},
                                             {provider,as,rebar_prv_as,
                                              {[],[]},
                                              true,[],
                                              "Higher order provider for running multiple tasks in a sequence as a certain profiles.",
                                              "Higher order provider for running multiple tasks in a sequence as a certain profiles.",
                                              "rebar3 as <profile1>,<profile2>,... <task1>, <task2>, ...",
                                              [{profile,undefined,undefined,
                                                string,"Profiles to run as."}],
                                              [default],
                                              default},
                                             {provider,app_discovery,
                                              rebar_prv_app_discovery,
                                              {[],[]},
                                              false,[],[],[],[],[],
                                              [default],
                                              default}],
                                            false}],
                                          []},
                                         {pc_prv_compile,'-do/1-lc$^0/1-0-',
                                          2,
                                          [{file,
                                            "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_prv_compile.erl"},
                                           {line,52}]},
                                         {pc_prv_compile,do,1,
                                          [{file,
                                            "/Users/alex/Desktop/test/deps/fs/_build/default/plugins/pc/src/pc_prv_compile.erl"},
                                           {line,49}]},
                                         {rebar_core,do,2,
                                          [{file,
                                            "/home/travis/build/rebar/rebar3/_build/default/lib/rebar/src/rebar_core.erl"},
                                           {line,125}]},
                                         {rebar_hooks,run_provider_hooks_,6,
                                          [{file,
                                            "/home/travis/build/rebar/rebar3/_build/default/lib/rebar/src/rebar_hooks.erl"},
                                           {line,46}]},
                                         {rebar_hooks,run_all_hooks,6,
                                          [{file,
                                            "/home/travis/build/rebar/rebar3/_build/default/lib/rebar/src/rebar_hooks.erl"},
                                           {line,16}]},
                                         {rebar_prv_compile,compile,3,
                                          [{file,
                                            "/home/travis/build/rebar/rebar3/_build/default/lib/rebar/src/rebar_prv_compile.erl"},
                                           {line,119}]},
                                         {rebar_prv_bare_compile,do,1,
                                          [{file,
                                            "/home/travis/build/rebar/rebar3/_build/default/lib/rebar/src/rebar_prv_bare_compile.erl"},
                                           {line,47}]}]
===> When submitting a bug report, please include the output of `rebar3 report "your command"`

this after I use

defp deps do
    [{:mix_test_watch, "~> 0.3", only: :dev, runtime: false},
    {:fs, "2.11.0", override: true}]
  end
➜  test mix deps.update --all
Running dependency resolution...
Dependency resolution completed:
  fs 2.12.0
  mix_test_watch 0.3.2
➜  test mix deps.update --all
Running dependency resolution...
Dependency resolution completed:
  fs 2.11.0
  mix_test_watch 0.3.2
* Updating fs (Hex package)
  Checking package (https://repo.hex.pm/tarballs/fs-2.11.0.tar)
  Fetched package
➜  test mix test.watch
warning: variable "deps" does not exist and is being expanded to "deps()", please use parentheses to remove the ambiguity or change the variable name
  /Users/alex/Desktop/test/deps/fs/mix.exs:8

warning: variable "package" does not exist and is being expanded to "package()", please use parentheses to remove the ambiguity or change the variable name
  /Users/alex/Desktop/test/deps/fs/mix.exs:10

==> fs
Compiling 9 files (.erl)
Generated fs app
==> mix_test_watch
Compiling 12 files (.ex)
Generated mix_test_watch app

16:47:25.001 [info]  Application mix_test_watch exited: MixTestWatch.start(:normal, []) returned an error: shutdown: failed to start child: MixTestWatch.Watcher
    ** (EXIT) no process: the process is not alive or there's no process currently associated with the given name, possibly because its application isn't started
** (MatchError) no match of right hand side value: {:error, {{:shutdown, {:failed_to_start_child, MixTestWatch.Watcher, :noproc}}, {MixTestWatch, :start, [:normal, []]}}}
    (mix_test_watch) lib/mix_test_watch.ex:19: MixTestWatch.run/1
    (mix) lib/mix/task.ex:294: Mix.Task.run_task/3
    (mix) lib/mix/cli.ex:58: Mix.CLI.run_task/2
    (elixir) lib/code.ex:370: Code.require_file/2
alex88 commented 7 years ago

Which elixir/erlang version do you use?

lpil commented 7 years ago

The same as you it seems.

alex88 commented 7 years ago

@lpil the compile issue has been fixed https://github.com/synrc/fs/issues/40, however, I get

10:18:10.059 [info]  Application fs exited: :fs_app.start(:normal, []) returned an error: an exception was raised:
    ** (UndefinedFunctionError) function :mad_repl.load_file/1 is undefined (module :mad_repl is not available)
        :mad_repl.load_file('deps/fs/priv/mac_listener')
        (fs) /Users/alex/Sites/dpe-enterprise/deps/fs/src/fs.erl:43: :fs.mad_file/1
        (fs) /Users/alex/Sites/dpe-enterprise/deps/fs/src/fs_sup.erl:27: :fs_sup.has_executable/1
        (fs) /Users/alex/Sites/dpe-enterprise/deps/fs/src/fs_sup.erl:17: :fs_sup.init/1
        (stdlib) supervisor.erl:294: :supervisor.init/1
        (stdlib) gen_server.erl:328: :gen_server.init_it/6
        (stdlib) proc_lib.erl:247: :proc_lib.init_p_do_apply/3
** (MatchError) no match of right hand side value: {:error, {{:undef, [{:mad_repl, :load_file, ['deps/fs/priv/mac_listener'], []}, {:fs, :mad_file, 1, [file: '/Users/alex/Sites/dpe-enterprise/deps/fs/src/fs.erl', line: 43]}, {:fs_sup, :has_executable, 1, [file: '/Users/alex/Sites/dpe-enterprise/deps/fs/src/fs_sup.erl', line: 27]}, {:fs_sup, :init, 1, [file: '/Users/alex/Sites/dpe-enterprise/deps/fs/src/fs_sup.erl', line: 17]}, {:supervisor, :init, 1, [file: 'supervisor.erl', line: 294]}, {:gen_server, :init_it, 6, [file: 'gen_server.erl', line: 328]}, {:proc_lib, :init_p_do_apply, 3, [file: 'proc_lib.erl', line: 247]}]}, {:fs_app, :start, [:normal, []]}}}
    lib/mix_test_watch.ex:18: MixTestWatch.run/1
    (mix) lib/mix/task.ex:294: Mix.Task.run_task/3
    (mix) lib/mix/cli.ex:58: Mix.CLI.run_task/2
    (elixir) lib/code.ex:370: Code.require_file/2

which maybe needs this https://github.com/synrc/fs/issues/33#issuecomment-265485675 to be in deps file? I don't know if it's the way the dependency is imported or an issue with the package itself

duisbert commented 7 years ago

I think something weird, related to x-code command line tools, is happening here - did you upgrade Mac OS lately? It seems using an older version of gcc prevents deps/fs/priv/mac_listener from beeing created during compile time.

I fixed the problem by adding

{:mix_test_watch, "~> 0.3.3", runtime: false},
{:fs, github: "synrc/fs", manager: :rebar, override: true}

to the projects Mixfile as @alex88 suggested and then ran xcode-select --install to update the command line tools. Then

deps.clean --all
deps.get
mix test.watch

et voilà - it worked (for me...). Hope this helps.

alex88 commented 7 years ago

@malindhorst using that mixfile (maybe that was the issue) fixed it! thanks! I didn't upgraded Mac OS in a while tho

lpil commented 7 years ago

Excellent!