You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Server-synced nicknames (#5394). Nicknames now persist server-side so they follow you to new devices and browsers. They're still personal and private — only you see them. On first connect after this update, any nicknames already stored in your browser are pushed up automatically.
Per-channel default role (#5389). Channel Functions → "Default Role" picks a server role that gets auto-granted (channel-scoped) to every current member and to anyone who joins later. Setting it backfills all existing members in one transaction; clearing it leaves prior grants in place so admins can decide whether to revoke from the Roles UI. DMs are excluded.
Admin-adjustable max sticker file size (#5392). Admin Settings → Uploads & Limits now has a "Max Sticker File Size (KB)" input (256–10240 KB, default 1024). Bump it up if you want stickers to double as a GIF library.
/break slash command + persona compacting hard-stop (#5393). Different personas posted in quick succession used to visually compact into one block for other viewers. Now: the grouping check also compares persona username and the displayed username, a new break_chain column lets any message hard-stop compaction, and the new /break <message> slash command lets users manually force a fresh group.
Admin password reset (opt-in) backend (#5300). New admin_password_reset_enabled server setting (default off) lets admins reset a user's password to a one-time temp value. Bumps password_version to invalidate old JWTs and forces a password change on next login. Audit-logged. E2E warning surfaced in Admin Settings (the user's wrap key derives from the password, so old encrypted DM history becomes unrecoverable on their side, matching the recovery-codes flow). Backend by @Amnibro.
Channel auto-clear messages timer mode (#5390). New auto_delete_mode per channel (delete vs clear). Auto-clear wipes messages on the configured interval without deleting the channel itself. The channel badge shows hours plus a recurring glyph so it's visually distinct from one-shot expiry.
Fixed
Screen-share reshare: black screen and invisible tile (#5390).stopScreenShare now awaits per-peer renegotiation with Promise.allSettled (8 s safety cap) instead of racing a fixed 3 s timeout. Dead-track detection in the sameLiveTrack guard forces srcObject reassignment on reshare, and ontrack.onended skips tile teardown if a new screen-share is already registered.
Screen-share fullscreen exit ghost tile on transient track.onunmute (#5391). The reassignment is now skipped when the track is already attached and live, so brief unmute events no longer cause a freeze or blank tile.
Channels-list watchdog: HTTP validate + retry + reload on silence (#5391). Rare case where the socket appeared connected but channels-list never landed. The watchdog now HTTP-validates the session, retries the socket event on silence, and triggers a clean page reload if validation itself fails.
Landing-page emojis rendering as ? / ?? after edits. PowerShell's Set-Content without -Encoding utf8 was rewriting docs/index.html and website/index.html as Windows-1252. Restored correct UTF-8 BOM encoding and added .editorconfig + .gitattributes guardrails.