- Moved GenServerDependencySupervisor to own file.
- Created GenServerDependency hooks.
- Removed parse_opts/1 callback from GenServerDependency.
- Added system-wide registry.
- Added ExshomeDependency.dependency_module/1 function.
- Use SystemRegistry for TestRegistry.
- Add default timeout to the GenServerDependency call function. Running tests with a
--trace
flag will allow you to debug your code without interruptions. - Allow to set value for all variables.
- Add support for readonly variables.
- Implemented
Exshome.Variable.list/0
function. - Added VariableRegistry for automation.
- Allow to change dependencies during runtime.
- Added modal to show variable.
- Added Automation preview.
- Added lifecycle hook for variable readiness.
- Added datatypes for variables.
- Added a feature to render datatype.
- Implemented sending events by topics.
- Added ability to set a theme via URL
setTheme
search parameter. - Every app now uses dynamic routes.
- You can configure a condition to start an application via
ExshomeWeb.App.can_start?/0
callback. - Add
Exshome.DataStream
for list-like dependencies.
- Created database if it does not exist before migraions.
- Fixed manual track deletion.
- Created simple automation app.
- Allow to set secret_key_base and signing_salt via env variables.
- Run migrations before starting the app via launcher.
- Added ability to start launcher script with IEx via
System.no_halt/1
. - Stop the launcher if application crashes.
- Added installation guide for a Single Board Computer (SBC).
- Use timezone database in launcher script.
- Do not start MPV server if MPV is not installed.
- Add simple launcher script.
- Setup github action to release the application.
- Add migration scripts.
- Update package configuration.
- Simple player.
- Added docs generation.