v2.13 Alpha
Hexagonal Architecture Refactor
- This updates fundamentally changes the core functionality of the Udap core.
Motivations for changes
- Hexagon architecture forces all interactions between core modules to be done through channels and interfaces, leaving not a single direct function call, except between the repository, operator and service.
- Web-sockets (endpoints), plugin modules, and the internal neural network (withheld from GitHub releases) can all operate on the core modules without actually interacting with them.
- In the future, this architecture will provide a more robust and scalable platform to manage mission-critical systems. Systems that may result in catastrophic failure if handled improperly.
Caveats
- This update has breaking changes, but doesn't not warrant rewriting core modules or nexus implementations.
- All of the core modules need to be referenced by the package "domain" rather than "model" (already fixed in this pre-release)
- Nexus compatibility will be sparse until the full release.
- There are an overwhelming number of threads in this version when compared to the previous installation. (More channels need active listeners, etc)
Full Changelog: v2.10.1...v2.13-alpha