Skip to content

v2.19.0

Choose a tag to compare

@github-actions github-actions released this 10 Jul 13:34

Server Discovery

Public servers can now be found and joined without an invite. Turn on Public
Server
in server settings to be listed.

New Features

  • discovery: browse public servers by category and join them without an invite
  • discovery: search servers by name and description (SQLite FTS5, trigram)
  • discovery: give servers a description, a banner image, and a category
  • discovery: verified and featured badges, assigned by platform admins from the
    server context menu
  • discovery: report a public server; platform admins review reports with their
    image attachments and can unlist a server from the directory
  • servers: join approval — a server can require owner approval before a new
    member joins. Requests appear in a sidebar queue for anyone with the Approve
    Members permission, and the requester sees an "awaiting approval" state
  • chat: touch devices get a real send button. Enter now inserts a newline on a
    soft keyboard, and the microphone turns into a send button as soon as there is
    text or an attachment. Message editing gained save and cancel buttons
  • feedback: paste or drag images into a feedback reply, not just into a new ticket
  • files: report and feedback attachments open in the in-app viewer instead of a
    new browser tab

Bug Fixes

  • ws: only show the "cannot connect" banner once reconnect attempts are actually
    exhausted. Previously every brief network blip painted it red for the whole backoff
    wait. Reconnect attempts now continue past that point instead of requiring a manual
    page reload
  • ws: detect a socket the server already dropped. readyState can read OPEN long
    after the connection is dead, which silently swallowed messages for up to 90 seconds
    after returning from the background
  • ws: ignore a close event from a socket that was already replaced — it could tear
    down the healthy connection that took its place
  • mobile: keep fixed overlays clear of the system bars on edge-to-edge phones. The
    connection banner's refresh button and the file viewer's controls were unreachable
  • mobile: the message search panel could trap the user. Its only close button sat
    under the status bar, the panel covered the menu button, and the Android back button
    minimized the app instead of closing the panel. Open panels now claim the back
    gesture, and the pinned-messages sheet closes when tapped outside
  • mobile: scroll a focused field out from under the Android keyboard. The feedback
    reply box and the sidebar rename input stayed hidden behind it
  • chat: the empty panel now says where the channel list is, and says something
    different on mobile, where the sidebar is a drawer with no visible left edge

Refactoring

  • servers: the dead invite_required flag is now is_public, the switch that
    lists a server in the discovery directory. All existing servers stay unlisted