Downloads
| Platform | File | Size |
|---|---|---|
| 🍎 macOS (Intel + Apple Silicon universal) | AMQPush_1.5.5_universal.dmg |
11.6 MB |
| 🪟 Windows x64 — NSIS installer | AMQPush_1.5.5_x64-setup.exe |
3.9 MB |
| 🪟 Windows x64 — MSI installer | AMQPush_1.5.5_x64_en-US.msi |
5.8 MB |
| 🐧 Linux x64 — Debian/Ubuntu | AMQPush_1.5.5_amd64.deb |
7.1 MB |
| 🐧 Linux x64 — RPM (Fedora/RHEL) | AMQPush-1.5.5-1.x86_64.rpm |
7.1 MB |
| 🐧 Linux x64 — portable | AMQPush_1.5.5_amd64.AppImage |
82 MB |
Binaries are not code-signed. macOS Gatekeeper / Windows SmartScreen will warn on first launch.
- macOS: right-click
AMQPush.app→ Open → confirm.- Windows: click "More info" → "Run anyway" on the SmartScreen dialog.
- Linux (
.AppImage):chmod +x AMQPush_*.AppImage && ./AMQPush_*.AppImage.
[1.5.5] — 2026-05-20
A minor-cycle bundle on top of 1.5.0 — eight features and a handful of QoL fixes that piled up over a week of dogfooding.
Highlights
- Quick-connect from URL — paste
amqp://user:pass@host:port/queue(oramqps:///ws:///wss://) into a modal, see a live preview of every parsed field, click Apply to fill the form. No saving yet, no surprises. - Import / Export profiles — round-trip the entire profile collection as JSON via the native file picker (
tauri-plugin-dialog). Useful for dotfile sharing across machines. Imports accept either the map shape AMQPush exports or a bare array. - Configurable publisher send retry — per-profile
max attempts+delay. Each user-visible send goes through up to N attempts on transient errors. Disconnect-recovery still happens automatically per attempt (doesn't count against the budget). - Saved JMS selectors — a named library reusable across sessions and queues. 📑 dropdown next to the Selector input lists saved entries; click to apply,
Save current as…to persist. Overwrite-by-name semantics, stored in localStorage. - Broker Clients host grouping — connections from the same host (different ephemeral ports) collapse under a header row with aggregate Cons / Sess / Age. Auto-collapsed on first sight, remembers user expands across polls via
useRef<Set>. - Property / value autocomplete from history — keys and per-key values mined from
history.jsonsurface in the Properties tab. Long_AMQ_*markers are a click away; a small caret next to each value field opens a per-key value picker. - Stats per-profile — every
track*InStatscall writes into a profile-scoped bucket. StatsView gets a profile selector at the top (visible once you've sent on more than one); pick a specific profile orAllfor a merged aggregate. Useful for prod-vs-staging side-by-side. - Chaos tab in Send — four poison-pill toggles for testing consumer error paths: oversized body (pad to N MB), override content-type, malformed JSON (strip last
}/]), strip application property. Applied last, after vars / pre-script. Combine freely.
Added — Connection view
- Overflow
⋮menu in the profile-picker row: Quick-connect from URL, Import profiles, Export profiles. - New Publisher send retry card in Advanced —
max attempts(1 = disabled) +delay between attempts(ms). Defaults1 / 250preserve pre-1.5.x behaviour.
Added — Receive view
- Saved selectors dropdown (📑) next to the Selector input.
- Sticky
Message ID / Date-Timecolumn header (already in 1.5.0, hardened against legacy-format-mixing via thefmtTimestampshim). - REC closure-bug fix —
recordingRef.currentis now updated synchronously intoggleRecording, so the buffer starts filling immediately after click instead of waiting for stale closure.
Added — Browser view
- Selective Purge / Shovel from multi-select selection bar (already in 1.5.0 — additional polish to checkbox alignment in 1.5.5).
Added — Send view
- Chaos tab — see Highlights.
- Properties key + value autocomplete from history.
- The
chaosActivedot on the Chaos tab makes it impossible to forget you've left a poison-pill toggle on.
Added — Broker Clients view
- Per-host grouping with collapsible headers.
- Aggregate stats in group header rows (sum of Cons / Sess, oldest creation_time → Age,
mixedfor User / Proto when group is heterogeneous).
Added — Stats view
- Profile selector in the top bar (
All+ every profile with non-empty stats). mergeStats(buckets)aggregates throughput / queues / kinds / sizes across profiles.
Added — Help
- New Highlight rules section in Receive with 9 rule pattern recipes (JSON field match, XML element match, application property, priority threshold, correlation-id, big bodies, whole-word match, etc.).
- New Chaos helpers section in Send.
- New Profile picker overflow menu section in Connection.
- Per-profile Stats paragraph.
- Newest-first ordering note in Receive.
Changed
- View titles:
Send→ Send Messages,Receive→ Receive Messages,Clients→ Broker Clients. - OS window title now reads
AMQPush <version>— picked up at runtime viagetVersion()/setTitle(). - Window opens maximised by default.
- Browser peek
Maxdropdown goes up to 5000 +All; changing the cap re-peeks immediately (no manual Refresh). - Browser + Receive both render full local
YYYY-MM-DD HH:MM:SStimestamps. Legacy persistedHH:MM:SSentries get today's date synthesised on display for column consistency. - Receive list reversed — newest at the top; underlying array stays chronological for persistence + diff.
- Per-message Stats counting in Batch / CSV — sentCount / size distribution / per-queue chart reflect actual throughput, not "one click".
- Mark ref → Ref (single-line label).
- Workspace combobox replaced the native
<datalist>(unreadable in WebKit); workspaces are now deletable with an inline confirm + automatic migration of profiles into Default.
Fixed
- REC capture buffer didn't fill until the listener closure was rebuilt (
recordingstate was captured by the long-livedlisten("message_received")callback at registration time). Fix routes through arecordingRefupdated synchronously intoggleRecording. - Duplicate Copy button in Receive — the header-level Copy was removed; the Body section's Copy is the canonical one.
- Browser peek-list checkbox alignment when row has 2 lines of content.
- ShovelModal Profile / Queue inputs heights mismatched due to WebKit
<select>rendering — fixed viaappearance-none+h-8 box-border+ customChevronDowncaret. - Receive Help docs about Replay — explainer banner inside the modal so first-time users see what speed / target queue / play actually do.
Backend
Profileschema gainedsend_retry_attempts+send_retry_delay_ms; defaults preserve pre-1.5.x behaviour.AmqpClient::send_messagewraps the per-attempt logic in a retry loop bounded by these knobs. Innertry_send_onceis the same as before; outer loop respectssend_retry_delay_msbetween failures.profiles::export_to(path)writes the entire collection as pretty JSON;import_from(path, overwrite)accepts map or array shape, runsmigrate_profileper entry, returns counts (added / overwritten / skipped / failed).- Tauri commands:
export_profiles,import_profiles. - New deps already pulled in 1.5.0 (
tauri-plugin-dialog,fe2o3-amqp-ws, etc.) — no new direct deps in 1.5.5.