github ancsemi/Haven v4.28.0
Haven 4.28.0

latest release: v4.29.0-beta.3
4 days ago

Added

  • Settings are split into a few pages, so each one is short: Appearance, Chat & media, Notifications and so on for you, and Server, People & roles, Safety, Content, Network & scale and Bots & data for admins. Longer explanations fold behind an ⓘ button (thanks Amnibro, #5838).
  • AutoMod Quarantine, an experimental plugin (thanks Amnibro, #5836): holds links in chat until they are checked, by an AI model on your own server or a cloud AI a moderator picks. Off unless a member turns the plugin on and, for the server parts, an admin turns on Settings > Safety > Auto-Mod > AI link checks. Only the link is ever sent to an AI, never the message. See docs/automod.md.
  • Send later takes files: attach them in the Send later window, and files already waiting in the message box come along.
  • Blocked file types under Settings > Admin > Content > Uploads & Limits (#5833): list types such as exe, bat or dll, and nobody can upload files of those types. Empty by default.
  • Listen Together plays Spotify playlists and albums: sharing one queues its songs in order, found on YouTube like single Spotify songs. It used to play one song named after the playlist.
  • What's new after an update: a popup with the release notes since the version you last saw. Settings > What's New picks which updates bring it up (every update, new features, big updates only, or never), with the parts of the version number that count underlined. The notes come from the server's own changelog.
  • A Copy button on code blocks (thanks Roolk, #5844).
  • Channel types: save a set of Channel Functions (text, pictures and files, reactions, read only, voice, screen share, music, soundboard) under a name and an icon, in Settings > Server > Channel Types. Right-click a channel and pick Channel Type to give it those functions; the sidebar then shows the type's icon instead of separate ones. Editing a type updates every channel that has it, and changing a function on one channel by hand takes it out of its type. Voice only, Text only and Announcements are there to start from.

Changed

  • One click on a voice-only channel joins its voice, like on Discord. A channel is voice-only when Channel Functions has text and media switched off and voice on; other channels still join on a double-click (thanks Keagan for the idea).
  • Login session length moved from Uploads & Limits to Settings > Admin > Safety > Security, where people look for it (#5834).

Fixed

  • Changing camera quality or device several times quickly could leave an older camera running or showing, and stopping the camera during a change could leave it on (thanks Roolk, #5843).
  • Installing the voice relay failed in Docker and Podman on a host with Linux kernel 7, such as a current Fedora, with "npm error command failed" (#5845). The relay's build for that kernel needs newer system libraries than the image has, so the install now falls back to the kernel 6 build, which runs fine there.
  • In a narrow window, the Get the Desktop App and Android App pills pushed the Join Voice button off the edge. They now shrink to their icons, then hide.
  • With a camera and a screen share on at the same time, the camera could show up as the screen share or the other way round, and people could disagree about which was which. Each one is now told apart by its own stream (thanks Roolk, #5841).
  • Changing camera quality left your own camera preview blank (thanks Roolk, #5842). People who join after the change also see the new camera now.
  • Ctrl+V with nothing focused (after clicking a message or the channel list) dropped the pasted picture. It now goes into the message box (thanks Amnibro, #5839).
  • Buttons labelled with a symbol, like the + for Add Server, the × that closes a window, or ‹ and ›, showed it a little below the middle. Fonts draw these symbols low, by a different amount in each font and theme, so they are now drawn as icons that sit exactly in the middle.
  • Skipping or replacing an uploaded file playing in Listen Together could pause the next track for everyone.
  • The check of the uploads folder after a start, and once a day, paused the whole server until it had looked at every file. On a big or slow disk that could freeze it for seconds. It now lets other work run as it goes.
  • A name in a reply preview had a different color from the same name on the message itself. It now uses the role color too.
  • A link inside single backticks still turned into a clickable link. Text in backticks now stays exactly as typed, which is the way to post a URL as plain text.
  • A file name in brackets, like [720p], no longer counts as posting a link (thanks Amnibro, #5832).
  • In a blog post's thread, the author's reply box said the wrong thing while answering a comment (thanks Amnibro, #5831).
  • Opening a bot's webhook link in a browser said only "Not found", which looked like a broken webhook. It now explains that webhooks take POST requests and points to the bot guide.
  • On a phone or tablet browser, Enter now starts a new line in the message box, thread replies, DM pop-outs and message edits, and the Send button sends, as in the mobile apps. Shift+Enter and Ctrl+Enter still work, and with a keyboard on a desktop or laptop Enter still sends. Turn on Hide the Send button and Enter sends everywhere.
  • An unread count on the channel you had open could stay stuck after you scrolled back down to the newest messages, until the window lost and regained focus. Reaching the bottom, or clicking or typing there, now clears it.
  • Bot (webhook) posts sent no push notifications, so phones, and browsers with push turned on, heard nothing when a bot posted.
  • Text typed in the message box followed you into the next channel or DM. Each one now keeps its own unsent message, also after a reload.
  • A temporary channel lasted until the server's date changed instead of the hours it was set for, so a 1 hour channel could stay up most of a day. Mutes made through the bot or HTTP API had the same problem.
  • The microphone could stay on after leaving a call, until Haven was closed: when changing the mic device overlapped with leaving, or when joining failed partway. Both let go of it now (#5850).
  • The Settings button that opens the Discord import read "Import Selected". It says Import from Discord again.

Security

  • Updated multer and body-parser, which read uploads and requests, for two advisories that let one bad request slow the server down.
  • Fixes from a full line-by-line review of recent contributions: AutoMod's link filter and the AI link checks plugin are tightened, links in end-to-end encrypted DMs are never sent for an AI check, and banned accounts can no longer use the AI check routes.

Don't miss a new Haven release

NewReleases is sending notifications on new releases.