8.0.0-alpha12
TopLogic Release
2026-10-30
TopLogic 8.0.0-alpha12 moves the engine to Java 21, completes the move of the React UI to the design system package, and brings action chains with named arguments, a consolidated access check for views and commands, and a new project setup without a TopLogic parent POM. The AI modules are now part of the engine.
Platform and build
- Java 21: the engine is built for and runs on Java 21; Jetty moves to the EE 11 environment.
- Projects without parent POM: applications and fragments can import the BOM
tl-bom, use the packagingstl-app/tl-fragmentoftl-maven-pluginand pick features through the starterstl-starter-*. - Archetype with React UI:
tl-archetype-appcreates a React application by default; the optionuiselectsreact,classicorboth. - AI modules in the engine:
tl-ai-*andtl-chat*are engine modules and are released with the engine version. - Build checks: JavaDoc references and unused imports are checked in the Maven build; a Git merge driver for the generated resource bundles avoids conflicts between parallel branches.
React UI (TL Views)
- Design system completed: all remaining controls (inputs, media, calendar, kanban, dashboard, editors) draw with the design system package;
tlReactControls.cssis removed. - Action chains with named arguments: triggers deliver several named values, scripts use them as variables without a lambda head, and follow-up actions of an action with a result go into
<with-result>. - Forms: actions
<enter-edit-mode/>/<leave-edit-mode/>, normalization of entered values, insertion suggestions computed by TL-Script, mentions (@/#) in the HTML editor, a select field that also takes a free value, multi-valued binary values as file chips with multi-upload (<file-list>is removed). - Tables and trees:
<tree-table>with Excel export, node display androw-class; unsortable columns; filter presets with counter and CSS class; faster row selection. - Further elements: floating action button and speed dial, multi-selection in
flow-diagram, slider ranges and time input with seconds from channels, select options in list order, browser tab title following the shown view. - Tile stack navigation:
<frame>declarations carry anidand are nested;<navigate-push>and display targets address a frame. - Service configuration: the service configuration can be viewed, edited and saved in the React UI, marked "restart required".
- Windows follow foreign commits: commits of other threads reach every window without configuration.
Security and access rights
- One access check definition: views, commands and TL-Script functions declare access checks the same way, as operations on the type of the shown object; custom operations are declared on the type.
- Discover right: model based security knows a right to discover an object (filtered object sources, masked form fields).
- Initial groups: every application gets the groups
user(default group of new accounts) andsuperuserwith matching roles. - Credentials without secrets in the configuration: named secret sources, token based authentication (Keycloak/OIDC, workload identity, Azure) and an API gateway.
Configuration and operation
- Input fields by annotation: configuration forms choose their editors through domain annotations (
@MultiLine,@Code,@Html,@Inline, …), equally in the classic and the React UI;@ControlProviderand@ConfigControlare removed. - Startup hooks: configurable hooks run after all services have started and replace several setup modules.
- Configuration references:
config:refaddresses an entry of a keyed list by a globally unique key; a view overlay addresses every element by itsid. - JSON Schema: typed configurations can be serialized against a generated JSON Schema 2020-12.
- XML import: reporting of unknown elements,
<set-translation>,<unless-known>and a partial<resolve-existing>for evolving external formats. - AI: LLM providers can be enabled through environment variables only; the model catalog has a view of its own.
- Mail server daemon: new mails are recognized by their IMAP UID; unknown mails stay in the inbox by default.
- Persistency: faster deletion on H2 and a single-branch configuration for applications without branches.
Bug fixes
- React UI: table rendering after reload and with large filtered row sets, panel heights in split panes, tabs and stacks, split-panel sizes in px, tab strips wider than their container, navigation targets painted without their selection, login logging out immediately.
- Security and model: derived attributes for users without Discover right, enumeration values not discoverable for non-administrators, groups and addresses not readable for superusers.
- Performance: quadratic set building, module lookup in
TLModelUtil, memory kept by windows without SSE connection. - Migration and build: application module migrations without stored version,
update-classinto another module, several unstable tests.
Migration
This release requires changes in applications: Java 21 for build and runtime, stylesheets addressing the removed tl* CSS classes of the React controls, scripts and actions in .view.xml files (named arguments, <with-result>, unique ids, tile stack frames), access checks of views and commands, the removed annotations @ControlProvider / @ConfigControl, setup modules replaced by startup hooks, secret configuration and the mail server daemon. The migration section of the release notes describes each step.