<!DOCTYPE html> <html lang="en"> <head> <meta charset="utf-8"> <meta http-equiv="x-ua-compatible" content="ie=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="generator" content="ExDoc v0.19.1"> <title>API Reference – Mix v1.7.2</title> <link rel="stylesheet" href="dist/app-240d7fc7e5.css" /> <link rel="canonical" href="https://hexdocs.pm/mix/v1.7/api-reference.html" /> <script src="dist/sidebar_items-0c0044e6e4.js"></script> </head> <body data-type="extras"> <script>try { if(localStorage.getItem('night-mode')) document.body.className += ' night-mode'; } catch (e) { }</script> <div class="main"> <button class="sidebar-button sidebar-toggle"> <span class="icon-menu" aria-hidden="true"></span> <span class="sr-only">Toggle Sidebar</span> </button> <button class="sidebar-button night-mode-toggle"> <span class="icon-theme" aria-hidden="true"></span> <span class="sr-only">Toggle Theme</span> </button> <section class="sidebar"> <a href="http://elixir-lang.org/docs.html" class="sidebar-projectLink"> <div class="sidebar-projectDetails"> <h1 class="sidebar-projectName"> Mix </h1> <h2 class="sidebar-projectVersion"> v1.7.2 </h2> </div> <img src="assets/logo.png" alt="Mix" class="sidebar-projectImage"> </a> <form class="sidebar-search" action="search.html"> <button type="submit" class="search-button"> <span class="icon-search" aria-hidden="true"></span> </button> <input name="q" type="text" id="search-list" class="search-input" placeholder="Search" aria-label="Search" autocomplete="off" /> </form> <ul class="sidebar-listNav"> <li><a id="extras-list" href="#full-list">Pages</a></li> <li><a id="modules-list" href="#full-list">Modules</a></li> <li><a id="exceptions-list" href="#full-list">Exceptions</a></li> <li><a id="tasks-list" href="#full-list">Mix Tasks</a></li> </ul> <div class="gradient"></div> <ul id="full-list" class="sidebar-fullList"></ul> </section> <section class="content"> <div class="content-outer"> <div id="content" class="content-inner"> <h1> <small class="visible-xs">Mix v1.7.2</small> API Reference </h1> <section class="details-list"> <h2 id="modules" class="section-heading"> <a href="#modules" class="hover-link"><span class="icon-link" aria-hidden="true"></span></a> Modules </h2> <div class="summary"> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.html">Mix</a> </div> <div class="summary-synopsis"><p>Mix is a build tool that provides tasks for creating, compiling, and testing Elixir projects, managing its dependencies, and more</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Config.html">Mix.Config</a> </div> <div class="summary-synopsis"><p>Module for defining, reading and merging app configurations</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Generator.html">Mix.Generator</a> </div> <div class="summary-synopsis"><p>Conveniences for working with paths and generating content</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Project.html">Mix.Project</a> </div> <div class="summary-synopsis"><p>Defines and manipulates Mix projects</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.SCM.html">Mix.SCM</a> </div> <div class="summary-synopsis"><p>This module provides helper functions and defines the behaviour required by any source code manager (SCM) used by Mix</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Shell.html">Mix.Shell</a> </div> <div class="summary-synopsis"><p>Defines <a href="Mix.Shell.html#content"><code class="inline">Mix.Shell</code></a> contract</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Shell.IO.html">Mix.Shell.IO</a> </div> <div class="summary-synopsis"><p>This is Mix’s default shell</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Shell.Process.html">Mix.Shell.Process</a> </div> <div class="summary-synopsis"><p>Mix shell that uses the current process mailbox for communication</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Shell.Quiet.html">Mix.Shell.Quiet</a> </div> <div class="summary-synopsis"><p>This is Mix’s default shell when the <code class="inline">MIX_QUIET</code> environment variable is set</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Task.html">Mix.Task</a> </div> <div class="summary-synopsis"><p>A simple module that provides conveniences for creating, loading and manipulating tasks</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Task.Compiler.html">Mix.Task.Compiler</a> </div> <div class="summary-synopsis"><p>This module defines the behaviour for a Mix task that does compilation</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Task.Compiler.Diagnostic.html">Mix.Task.Compiler.Diagnostic</a> </div> <div class="summary-synopsis"><p>Diagnostic information such as a warning or compilation error</p> </div> </div> </div> </section> <section class="details-list"> <h2 id="exceptions" class="section-heading"> <a href="#exceptions" class="hover-link"><span class="icon-link" aria-hidden="true"></span></a> Exceptions </h2> <div class="summary"> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.ElixirVersionError.html">Mix.ElixirVersionError</a> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Error.html">Mix.Error</a> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.InvalidTaskError.html">Mix.InvalidTaskError</a> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.NoProjectError.html">Mix.NoProjectError</a> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.NoTaskError.html">Mix.NoTaskError</a> </div> </div> </div> </section> <section class="details-list"> <h2 id="mix-tasks" class="section-heading"> <a href="#mix-tasks" class="hover-link"><span class="icon-link" aria-hidden="true"></span></a> Mix Tasks </h2> <div class="summary"> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.App.Start.html">app.start</a> </div> <div class="summary-synopsis"><p>Starts all registered apps</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.App.Tree.html">app.tree</a> </div> <div class="summary-synopsis"><p>Prints the application tree</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Archive.html">archive</a> </div> <div class="summary-synopsis"><p>Lists all installed archives</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Archive.Build.html">archive.build</a> </div> <div class="summary-synopsis"><p>Builds an archive according to the specification of the <a href="http://www.erlang.org/doc/man/code.html">Erlang Archive Format</a></p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Archive.Check.html">archive.check</a> </div> <div class="summary-synopsis"><p>Checks all archives are available</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Archive.Install.html">archive.install</a> </div> <div class="summary-synopsis"><p>Installs an archive locally</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Archive.Uninstall.html">archive.uninstall</a> </div> <div class="summary-synopsis"><p>Uninstalls local archives</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Clean.html">clean</a> </div> <div class="summary-synopsis"><p>Deletes generated application files</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Cmd.html">cmd</a> </div> <div class="summary-synopsis"><p>Executes the given command</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.html">compile</a> </div> <div class="summary-synopsis"><p>A meta task that compiles source files</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.App.html">compile.app</a> </div> <div class="summary-synopsis"><p>Writes an .app file</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.Elixir.html">compile.elixir</a> </div> <div class="summary-synopsis"><p>Compiles Elixir source files</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.Erlang.html">compile.erlang</a> </div> <div class="summary-synopsis"><p>Compiles Erlang source files</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.Leex.html">compile.leex</a> </div> <div class="summary-synopsis"><p>Compiles Leex source files</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.Protocols.html">compile.protocols</a> </div> <div class="summary-synopsis"><p>Consolidates all protocols in all paths</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.Xref.html">compile.xref</a> </div> <div class="summary-synopsis"><p>Performs remote dispatch checking</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Compile.Yecc.html">compile.yecc</a> </div> <div class="summary-synopsis"><p>Compiles Yecc source files</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.html">deps</a> </div> <div class="summary-synopsis"><p>Lists all dependencies and their status</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Clean.html">deps.clean</a> </div> <div class="summary-synopsis"><p>Deletes the given dependencies’ files, including build artifacts and fetched sources</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Compile.html">deps.compile</a> </div> <div class="summary-synopsis"><p>Compiles dependencies</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Get.html">deps.get</a> </div> <div class="summary-synopsis"><p>Gets all out of date dependencies, i.e. dependencies that are not available or have an invalid lock</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Loadpaths.html">deps.loadpaths</a> </div> <div class="summary-synopsis"><p>Checks and loads all dependencies along the way</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Precompile.html">deps.precompile</a> </div> <div class="summary-synopsis"><p>Extension point for precompiling dependencies</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Tree.html">deps.tree</a> </div> <div class="summary-synopsis"><p>Prints the dependency tree</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Unlock.html">deps.unlock</a> </div> <div class="summary-synopsis"><p>Unlocks the given dependencies</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Deps.Update.html">deps.update</a> </div> <div class="summary-synopsis"><p>Updates the given dependencies</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Do.html">do</a> </div> <div class="summary-synopsis"><p>Executes the tasks separated by comma</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Escript.html">escript</a> </div> <div class="summary-synopsis"><p>Lists all installed escripts</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Escript.Build.html">escript.build</a> </div> <div class="summary-synopsis"><p>Builds an escript for the project</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Escript.Install.html">escript.install</a> </div> <div class="summary-synopsis"><p>Installs an escript locally</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Escript.Uninstall.html">escript.uninstall</a> </div> <div class="summary-synopsis"><p>Uninstalls local escripts</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Format.html">format</a> </div> <div class="summary-synopsis"><p>Formats the given files and patterns</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Help.html">help</a> </div> <div class="summary-synopsis"><p>Lists all tasks and aliases or prints the documentation for a given task or alias</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Iex.html">iex</a> </div> <div class="summary-synopsis"><p>A task that simply instructs users to run <code class="inline">iex -S mix</code></p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Loadconfig.html">loadconfig</a> </div> <div class="summary-synopsis"><p>Loads and persists the given configuration</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Loadpaths.html">loadpaths</a> </div> <div class="summary-synopsis"><p>Loads the application and its dependencies paths</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Local.html">local</a> </div> <div class="summary-synopsis"><p>Lists local tasks</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Local.Hex.html">local.hex</a> </div> <div class="summary-synopsis"><p>Installs Hex locally</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Local.PublicKeys.html">local.public_keys</a> </div> <div class="summary-synopsis"><p>Public keys are used by Mix to install packages like Rebar and Hex</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Local.Rebar.html">local.rebar</a> </div> <div class="summary-synopsis"><p>Fetches a copy of <code class="inline">rebar</code> or <code class="inline">rebar3</code> from the given path or URL</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.New.html">new</a> </div> <div class="summary-synopsis"><p>Creates a new Elixir project. It expects the path of the project as argument</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Profile.Cprof.html">profile.cprof</a> </div> <div class="summary-synopsis"><p>Profiles the given file or expression using Erlang’s <code class="inline">cprof</code> tool</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Profile.Eprof.html">profile.eprof</a> </div> <div class="summary-synopsis"><p>Profiles the given file or expression using Erlang’s <code class="inline">eprof</code> tool</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Profile.Fprof.html">profile.fprof</a> </div> <div class="summary-synopsis"><p>Profiles the given file or expression using Erlang’s <code class="inline">fprof</code> tool</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Run.html">run</a> </div> <div class="summary-synopsis"><p>Starts the current application and runs code</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Test.html">test</a> </div> <div class="summary-synopsis"><p>Runs the tests for a project</p> </div> </div> <div class="summary-row"> <div class="summary-signature"> <a href="Mix.Tasks.Xref.html">xref</a> </div> <div class="summary-synopsis"><p>Performs cross reference checks between modules</p> </div> </div> </div> </section> <footer class="footer"> <p> <span class="line"> Built using <a href="https://github.com/elixir-lang/ex_doc" title="ExDoc" target="_blank" rel="help noopener">ExDoc</a> (v0.19.1), </span> <span class="line"> designed by <a href="https://twitter.com/dignifiedquire" target="_blank" rel="noopener" title="@dignifiedquire">Friedel Ziegelmayer</a>. </span> </p> </footer> </div> </div> </section> </div> <script src="dist/app-a0c90688fa.js"></script> </body> </html>