Habari STOMP Client 10.3 is not final yet, but it is approaching its first release candidate for ActiveMQ, Artemis, OpenMQ and RabbitMQ. Its main theme is IMessageListener: asynchronous receive is now a supported feature, with documented limits, in both the classic and the simplified API. IMessageListener is now a supported feature Until now, listener-based receive … Continue reading PREVIEW Habari STOMP Client 10.3: Asynchronous Receive Grows Up
Habari STOMP Client libraries 10.2 released
Version 10.2 of the Habari STOMP Client libraries for Delphi and Free Pascal is now available for ActiveMQ, Artemis, OpenMQ and RabbitMQ. It turns two compile-time options into run-time settings and fixes two defects that could stall or corrupt a connection. New Line-length limit at run time. Cast the connection to IMaxLineLength and set MaxLineLength before calling Start. This helps when … Continue reading Habari STOMP Client libraries 10.2 released
PREVIEW: What’s New in Habari STOMP Client 10.2
Version 10.2 of the Habari STOMP Client libraries moves two settings that used to require a recompile into ordinary properties on the connection, and fixes two defects that could stall or corrupt a connection at run time. As always, the same code works against all four supported brokers. New New: The maximum length of a STOMP … Continue reading PREVIEW: What’s New in Habari STOMP Client 10.2
PREVIEW: The timeout that wasn’t
Every read in the mORMot2 transport took a timeout parameter, and none of them honoured it. Here is why a Receive(1000) could wait forever, and what changed. Affects: mORMot2 comm adapter only Unaffected: Indy, Synapse Products: all Habari Client libraries (for ActiveMQ · Artemis · OpenMQ · RabbitMQ) Verified on: Delphi 2009, FPC 3.2.2 The symptom Select … Continue reading PREVIEW: The timeout that wasn’t
PREVIEW: Failover, configured from code
Connecting across a list of brokers no longer means recompiling the library. The failover: transport is now switched on at runtime, per connection, through a small interface on IConnection. Why the define had to go Habari has long understood a failover connection URL — failover:(stomp://a,stomp://b) — that tries each broker in turn and reconnects with backoff when a connection can … Continue reading PREVIEW: Failover, configured from code
PREVIEW: Setting the line‑length limit from code
A new MaxLineLength property on IConnection replaces the HABARI_X_MAXLINELENGTH compile‑time switch — so one application can raise the limit for one connection without rebuilding the library. Applies to The Indy transport. Synapse and mORMot2 accept the value and ignore it. New API IMaxLineLength in BTCommInterfaces, implemented by every IConnection. Supersedes HABARI_X_MAXLINELENGTH — still honoured, now with a deprecation warning. The problem Indy caps how long … Continue reading PREVIEW: Setting the line‑length limit from code
PREVIEW: Two runners, one executable
The unit tests used to need a window. Now the same Unittests program — Delphi's and Free Pascal's alike — runs headless the moment you hand it a parameter, and still comes up in its GUI runner when you don't. One set of test sources, compiled by two toolchains: Delphi runs them under DUnit, Free Pascal under … Continue reading PREVIEW: Two runners, one executable
Habari STOMP Clients Release 2026.02
Habarisoft released new versions of its Delphi and Free Pascal STOMP client libraries for integration with leading multi-protocol message brokers.
Messaging for Web and Mobile with Apache ActiveMQ Classic
The presentation covered challenges with HTTP messaging, advantages of STOMP and MQTT protocols, and examples of using STOMP over WebSocket for browser messaging and MQTT for mobile apps.
Habari STOMP Clients Release 2025.06
Habarisoft released new versions of its native STOMP client libraries for Delphi and Object Pascal