Skip to content

v0.3.0

Choose a tag to compare

@ChuYanLon ChuYanLon released this 26 May 01:35
· 555 commits to main since this release

What's Changed

Added

  • WebSocket auto-reconnect — exponential backoff (1s → 2s → 4s → ... → 30s max) on connection drop (#3)
  • Lua HTTP retry — http_get/http_post retry up to 3 times with backoff on transient failures (#6)
  • Test coverage — 13 new tests across core methods
  • updateChatAction handling — separate handler resolves sender_id (MessageSender) instead of missing user_id (#62)

Fixed

  • Blocking vim.wait — replaced with vim.defer_fn-based async polling in list_groups, no more UI freeze (#64)
  • getChat crash — non-group/unknown chat types no longer throw 500 on /chat endpoint (#63)
  • Member add display — messageChatAddMembers now shows "X added Y" instead of "X joined" when someone invites another member (#98)
  • Navigation direction — <C-h>/<C-l> now consistently go to groups/msg instead of toggling (#61)

Performance

  • Batch sender resolution — pre-resolve all unique senders before formatting bulk messages, eliminating redundant getUser calls (#5)
  • Break-early filter — getMessagesAfter stops iterating once messages ≤ afterId are reached (#9)

Styles

  • Consistent indentation — all Lua files reformatted with stylua to use tab indentation (#97)

Full Changelog: v0.2.1...v0.3.0