ConnectOnionConnectOnion

ConnectOnion 1.9.3rc15 (release candidate)

Stable remains 1.9.2. This preview requires Python 3.11 or newer and retains the security fixes through rc14, including Pillow 13.0.0, pypdf 6.21.2, cryptography 50.0.2 and Paramiko 5.1.0 for the optional Synology extra. CI audits all extras. Intel macOS installations need the source build dependencies described in the rc13 notes.

Files keep their references through the inbox

Feishu and Lark messages now retain their actual message kind, typed sender IDs and a small list of attachment references. File and image messages, rich posts, external file lists and post titles survive normalization. Each resource carries its type, provider key and name when available. Folder shares remain folders, and a media cover image is not presented as the original file.

The default receive record still excludes the raw provider payload. Existing stored records remain readable; ordinary Host text input is unchanged. Feishu/Lark records may include optional typed sender IDs. Host input carries the normalized record for non-text messages and messages with attachments, rather than reducing those messages to their text placeholder. Existing sender permissions, requester identity and session routing are unchanged.

These references allow a consumer to retrieve originals using the provider's resource API. The inbox does not automatically download files, extract ZIPs or submit expenses; applications must implement and verify those steps separately.

Recovery covers the first interrupted journal write

Recovery includes conversations that the listener already remembered before its first message was journaled. This closes a crash window between those two writes. It does not discover unknown conversations or bypass recovery boundaries and checkpoints.

Validation

The inbox, CLI and Host regression suite passed 436 tests on Python 3.12. A private metadata replay of ten original message snapshots retained all 135 resource references, matched live and history normalization, and accepted no duplicate redeliveries. No customer fixtures are included in the package. Original downloads, archive extraction and the application's full business workflow require separate deployment acceptance.

The design journal explains where the file became a word.

Install after publication

python -m pip install --upgrade 'connectonion==1.9.3rc15'

Use the exact pin in a Python 3.11+ environment. A preview remains opt-in and does not change the stable installation recommendation.

View Markdown source