Age | Commit message (Collapse) | Author |
|
Use erlang:unique_integer([positive]) when generating unique node
names.
|
|
|
|
If the Config given to application_controller:change_application_data
included other config files, it was only expanded for already existing
(loaded) applications. If an upgrade added a new application which had
config data in an included config file, the new application did not
get correct config data.
This is now changed so config data will be expanded for all
applications.
|
|
This is just to clean up properly after the test case. If not,
code_SUITE:bit_boot_embedded might fail since it tries to include the
'deadlock' application in the boot file and fails when running
systools:make_script.
|
|
Could happen if get_child was called during terminate.
io (since it is a group_leader) also causes problems after
get_child was called.
Split up and do it async.
|
|
An environment key set with the persistent option will not
be overridden by the ones configured in the application resource
file on load. This means persistent values will stick after the
application is loaded and also on application reload.
|
|
This adds two new functions to the application module that will
recursively look for missing dependencies to start the entire dependency
chain of a given application, and then the application itself, if
possible.
Its entire behavior is based on the currently existing 'start/1-2'
functions, which will report dependencies that have not yet been started
and other problems encountered. 'ensure_all_started/1-2' will use this
information the way any programmer would manually do it to automate the
process.
This kind of functionality, while not OTP-ish (releases do this start
sequence for the user), is still useful for testing purposes, quick
demonstrations, and programmers who do not wish or know how to use OTP
releases.
The function returns '{ok, StartedApps}' for all started or already
started applications (already started are omitted from the list), and
will return '{error, {AppName, Reason}}' on a failure to allow users to
rapidly know why the function failed.
Note that no specific check is made for direct or indirect circular
dependencies between applications, and these will make the function go
in an infinite loop.
|
|
Refactor away ?line macro in application_SUITE
|
|
|
|
|
|
|
|
The new function provides a default value for a configuration
parameter.
|
|
|
|
Running Dialyzer on the test suites revealed a few type errors.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|