v88 — Almost forever
12 Oct 2025

Features
Added table management, direct writes, and automatic downsampling to the timeseries database.
Configure photo resolution directly within the photo widget.
Introduced Docker Extensions to run custom code for your Apps, both in the cloud or on-premises. (Made the Industrial Blockchain, Process Simulations, and RAG AI Docker Extensions.
Added a single-command script for on-premise installation.
Released the Docker Agent, which lets you run connectors on any hardware that supports Docker.
The upload widget now directly supports uploading photos.
The barcode / QR widget now supports scanning multiple barcodes sequentially without closing the camera preview.
Fixes
Fixed multi-file upload behavior in the upload widget when utilizing buffer storage.
Resolved a positioning discrepancy between the App Builder preview and Production Apps when using the Top Bar or Top Bar and Bottom Tabs in the Page Explorer. Widgets in Production Apps no longer render too low on the y-axis.
Fixed a bug where the
fontSizeproperty on the button did not apply correctly.Duplicating canvas sections now correctly clears all pre-existing widget connections.
Fixed an issue where the
onJsonMessageandonStringMessageevents inside the MQTT Client connector failed to trigger correctly when registered multiple times.Resolved a dependency issue with serial data transfer that caused the Modbus connector to crash on startup.
Fixed a rendering bug in the Backend Builder flow interface where the connection arrow was missing when linking event handlers to function inputs.
Fixed an issue where the incorrect initial page loaded when an App used programmatic page switching.
Changes
Renamed the file widget to upload, and added new filtering categories including photo.
Configured backend event flows to only activate when running in test mode.
Breaking changes
If your App uses a top bar or top bar and bottom tabs navigation layout, you may need to adjust your widget positions to align with the new layout rendering (see Fixes).
The
readXlsxfunction in the File I/O connector no longer returns an object containing the sheet name as the sole key when processing a single sheet. It now returns the array of rows directly.
Last updated
Was this helpful?