app_vsn() = binary() | string() | {git, short} | {git, long}
project_type() = rebar3 | mix | undefined
rebar_dict() = dict:dict()
t() = #app_info_t{name = binary() | undefined, app_file_src = file:filename_all() | undefined, app_file_src_script = file:filename_all() | undefined, app_file = file:filename_all() | undefined, original_vsn = app_vsn() | undefined, vsn = app_vsn() | undefined, parent = binary() | root, app_details = list(), applications = list(), included_applications = [atom()], optional_applications = [atom()], deps = list(), profiles = [atom()], default = rebar_dict(), opts = rebar_dict(), dep_level = integer(), fetch_dir = file:name(), dir = file:name(), out_dir = file:name(), ebin_dir = file:name(), source = string() | tuple() | checkout | undefined, is_lock = boolean(), is_checkout = boolean(), valid = boolean() | undefined, project_type = project_type(), is_available = boolean()}
| add_to_profile/3 | adds a new profile with its own config to the app data. |
| app_details/1 | returns the information stored in the app's app file, or if none, from the .app.src file. |
| app_details/2 | stores the information that would be returned from the
app file, when reading from app_details/1. |
| app_file/1 | finds the .app file for an app, if any. |
| app_file/2 | sets the .app file for an app. |
| app_file_src/1 | finds the .app.src file for an app, if any. |
| app_file_src/2 | sets the .app.src file for an app. |
| app_file_src_script/1 | finds the .app.src.script file for an app, if any. |
| app_file_src_script/2 | sets the .app.src.script file for an app. |
| app_to_map/1 | |
| applications/1 | returns the list of applications the app depends on. |
| applications/2 | sets the list of applications the app depends on. |
| apply_overrides/2 | given a set of override rules, modify the app info accordingly. |
| apply_profiles/2 | applies and merges the profile configuration in the specified order of profiles (or for a single profile) and returns an app info record with the resulting configuration. |
| default/1 | get the dictionary of options under the default profile. |
| default/2 | set the dictionary of options under the default profile. |
| dep_level/1 | returns the level the app has in the lock files or in the dep tree. |
| dep_level/2 | sets the level the app has in the lock files or in the dep tree. |
| deps/1 | returns the list of dependencies. |
| deps/2 | sets the list of dependencies. |
| dir/1 | returns the directory that contains the app. |
| dir/2 | sets the directory that contains the app. |
| discover/2 | discover a complete version of the app info with all fields set. |
| ebin_dir/1 | gets the directory where ebin files for the app should go. |
| ebin_dir/2 | sets the directory where beam files should go. |
| fetch_dir/1 | returns the directory to fetch the dep source to. |
| fetch_dir/2 | returns the directory to fetch the dep source to. |
| get/2 | look up a value in the dictionary of options; fails if the key for it does not exist. |
| get/3 | look up a value in the dictionary of options; returns
a Default value otherwise. |
| has_all_artifacts/1 | checks whether all the build artifacts for an app to be considered valid are present. |
| included_applications/1 | returns the list of included_applications the app depends on. |
| included_applications/2 | sets the list of applications the app depends on. |
| is_available/1 | returns whether the app source exists in the deps dir. |
| is_available/2 | sets whether the app's source is available only set if the app's source is found in the expected dep directory. |
| is_checkout/1 | returns whether the app is a checkout app or not. |
| is_checkout/2 | sets whether the app is a checkout app or not. |
| is_lock/1 | returns the lock status for the app. |
| is_lock/2 | sets the lock status for the app. |
| name/1 | get the name of the app. |
| name/2 | set the name of the app. |
| new/0 | Build a new, empty, app info value. |
| new/1 | Build a new app info value with only the app name set. |
| new/2 | Build a new app info value with only the name and version set. |
| new/3 | build a complete version of the app info with all fields set. |
| new/4 | build a complete version of the app info with all fields set. |
| new/5 | build a complete version of the app info with all fields set. |
| optional_applications/1 | returns the list of optional_applications the app depends on. |
| optional_applications/2 | sets the list of optional applications the app depends on. |
| opts/1 | get the dictionary of options for the app. |
| opts/2 | set the dictionary of options for the app. |
| original_vsn/1 | returns the original version of the app (unevaluated if asking for a semver). |
| original_vsn/2 | stores the original version of the app (unevaluated if asking for a semver). |
| out_dir/1 | returns the directory where build artifacts for the app should go. |
| out_dir/2 | sets the directory where build artifacts for the app should go. |
| parent/1 | returns the app's parent in the dep tree. |
| parent/2 | sets the app's parent. |
| priv_dir/1 | gets the directory where private files for the app should go. |
| profiles/1 | returns the list of active profiles. |
| profiles/2 | sets the list of active profiles. |
| project_type/1 | |
| project_type/2 | |
| set/3 | sets a given value in the dictionary of options for the app. |
| source/1 | finds the source specification for the app. |
| source/2 | sets the source specification for the app. |
| update_opts/2 | update current app info opts by merging in a new dict of opts. |
| update_opts/3 | update the opts based on the contents of a config file for the app. |
| update_opts_deps/2 | update the opts based on new deps, usually from an app's hex registry metadata. |
| valid/1 | returns whether the app is valid (built) or not. |
| valid/2 | sets whether the app is valid (built) or not. |
| verify_otp_vsn/1 | checks whether the app can be built with the current Erlang/OTP version. |
| vsn/1 | returns the version of the app after evaluation. |
| vsn/2 | sets the evaluated vsn of the app. |
adds a new profile with its own config to the app data
app_details(AppInfo::t()) -> list()
returns the information stored in the app's app file, or if none, from the .app.src file.
stores the information that would be returned from the
app file, when reading from app_details/1.
app_file(App_info_t::t()) -> file:filename_all() | undefined
finds the .app file for an app, if any.
app_file(AppInfo::t(), AppFile::file:filename_all() | undefined) -> t()
sets the .app file for an app.
app_file_src(App_info_t::t()) -> file:filename_all() | undefined
finds the .app.src file for an app, if any.
app_file_src(AppInfo::t(), AppFileSrc::file:filename_all() | undefined) -> t()
sets the .app.src file for an app. An app without such a file
can explicitly be set with undefined.
app_file_src_script(App_info_t::t()) -> file:filename_all() | undefined
finds the .app.src.script file for an app, if any.
app_file_src_script(AppInfo::t(), AppFileSrcScript::file:filename_all()) -> t()
sets the .app.src.script file for an app. An app without such a file
can explicitly be set with undefined.
app_to_map(App_info_t::t()) -> #{name := atom(), vsn := app_vsn(), applications := [atom()], included_applications := [atom()], optional_applications := [atom()], dir := file:name(), out_dir := file:name(), ebin_dir := file:name(), link := false}
applications(App_info_t::t()) -> list()
returns the list of applications the app depends on.
sets the list of applications the app depends on. Should be obtained from the app file.
given a set of override rules, modify the app info accordingly
applies and merges the profile configuration in the specified order of profiles (or for a single profile) and returns an app info record with the resulting configuration
default(App_info_t::t()) -> rebar_dict()
get the dictionary of options under the default profile. Represents a root set prior to applying other profiles.
default(AppInfo::t(), Default::rebar_dict()) -> t()
set the dictionary of options under the default profile. Useful when re-applying profile.
dep_level(App_info_t::t()) -> non_neg_integer()
returns the level the app has in the lock files or in the dep tree.
sets the level the app has in the lock files or in the dep tree.
deps(App_info_t::t()) -> list()
returns the list of dependencies
sets the list of dependencies.
dir(App_info_t::t()) -> file:name()
returns the directory that contains the app.
dir(AppInfo::t(), Dir::file:name()) -> t()
sets the directory that contains the app.
discover(Dir::file:filename_all(), State::rebar_state:t()) -> {ok, t()} | not_found
discover a complete version of the app info with all fields set.
ebin_dir(App_info_t::t()) -> file:name()
gets the directory where ebin files for the app should go
ebin_dir(AppInfo::t(), EbinDir::file:name()) -> t()
sets the directory where beam files should go
fetch_dir(App_info_t::t()) -> file:name()
returns the directory to fetch the dep source to
fetch_dir(AppInfo::t(), FetchDir::file:name()) -> t()
returns the directory to fetch the dep source to
get(AppInfo::t(), Key::term()) -> term()
look up a value in the dictionary of options; fails if the key for it does not exist.
get(AppInfo::t(), Key::term(), Default::term()) -> term()
look up a value in the dictionary of options; returns
a Default value otherwise.
has_all_artifacts(App_info_t::#app_info_t{name = binary() | undefined, app_file_src = file:filename_all() | undefined, app_file_src_script = file:filename_all() | undefined, app_file = file:filename_all() | undefined, original_vsn = app_vsn() | undefined, vsn = app_vsn() | undefined, parent = binary() | root, app_details = list(), applications = list(), included_applications = [atom()], optional_applications = [atom()], deps = list(), profiles = [atom()], default = rebar_dict(), opts = rebar_dict(), dep_level = integer(), fetch_dir = file:name(), dir = file:name(), out_dir = file:name(), ebin_dir = file:name(), source = string() | tuple() | checkout | undefined, is_lock = boolean(), is_checkout = boolean(), valid = boolean() | undefined, project_type = project_type(), is_available = boolean()}) -> true | {false, file:filename()}
checks whether all the build artifacts for an app to be considered valid are present.
included_applications(App_info_t::t()) -> list()
returns the list of included_applications the app depends on.
sets the list of applications the app depends on. Should be obtained from the app file.
is_available(App_info_t::t()) -> boolean()
returns whether the app source exists in the deps dir
sets whether the app's source is available only set if the app's source is found in the expected dep directory
is_checkout(App_info_t::t()) -> boolean()
returns whether the app is a checkout app or not
sets whether the app is a checkout app or not
is_lock(App_info_t::t()) -> boolean()
returns the lock status for the app
sets the lock status for the app
name(App_info_t::t()) -> binary()
get the name of the app.
set the name of the app.
new() -> t()
Build a new, empty, app info value. This is not of a lot of use and you probably won't be doing this much.
new(AppName::atom() | binary() | string()) -> {ok, t()}
Build a new app info value with only the app name set.
Build a new app info value with only the name and version set.
new(AppName::atom() | binary() | string(), Vsn::app_vsn(), Dir::file:name()) -> {ok, t()}
build a complete version of the app info with all fields set.
new(AppName::atom() | binary() | string(), Vsn::app_vsn(), Dir::file:name(), Deps::list()) -> {ok, t()}
build a complete version of the app info with all fields set.
new(Parent::atom() | binary(), AppName::atom() | binary() | string(), Vsn::app_vsn(), Dir::file:name(), Deps::list()) -> {ok, t()}
build a complete version of the app info with all fields set.
optional_applications(App_info_t::t()) -> list()
returns the list of optional_applications the app depends on.
sets the list of optional applications the app depends on. Should be obtained from the app file.
opts(App_info_t::t()) -> rebar_dict()
get the dictionary of options for the app.
opts(AppInfo::t(), Opts::rebar_dict()) -> t()
set the dictionary of options for the app.
returns the original version of the app (unevaluated if asking for a semver)
stores the original version of the app (unevaluated if asking for a semver)
out_dir(App_info_t::t()) -> file:name()
returns the directory where build artifacts for the app should go
out_dir(AppInfo::t(), OutDir::file:name()) -> t()
sets the directory where build artifacts for the app should go
parent(App_info_t::t()) -> root | binary()
returns the app's parent in the dep tree.
sets the app's parent.
priv_dir(App_info_t::t()) -> file:name()
gets the directory where private files for the app should go
profiles(App_info_t::t()) -> list()
returns the list of active profiles
sets the list of active profiles
project_type(App_info_t::t()) -> atom()
sets a given value in the dictionary of options for the app.
source(App_info_t::t()) -> string() | tuple() | checkout | undefined
finds the source specification for the app
sets the source specification for the app
update_opts(AppInfo::t(), Opts::rebar_dict()) -> t()
update current app info opts by merging in a new dict of opts
update_opts(AppInfo::t(), Opts::rebar_dict(), Config::[any()]) -> t()
update the opts based on the contents of a config file for the app
update the opts based on new deps, usually from an app's hex registry metadata
valid(AppInfo::t()) -> boolean()
returns whether the app is valid (built) or not
sets whether the app is valid (built) or not. If left unset,
rebar3 will do the detection of the status itself.
Explicitly setting the value to undefined can force a re-evaluation.
verify_otp_vsn(AppInfo::t()) -> ok | no_return()
checks whether the app can be built with the current Erlang/OTP version. If the check fails, the function raises an exception and displays an error.
returns the version of the app after evaluation
sets the evaluated vsn of the app
Generated by EDoc