Releases: squidowl/halloy
Releases Β· squidowl/halloy
2026.2
Added:
- Settings to disable (selectively, or for the entire server) confirmation of delivery for sent messages
- Setting to adjust inner spacing and outer padding for panes (
pane.gap.inner,pane.gap.outer) - Setting to style unread query buffers as highlights in the sidebar (
sidebar.unread_indicator.query_as_highlight) - Settings to configure card and image preview dimensions
- Support for transparent background.
Fixed:
- Buffer not showing history until resize
- Previews are fetched through the same proxy as the server (or default proxy) for HTTP/SOCKS5 proxies
- No longer highlight nickname mentions in sent messages in certain scenarios
- Filters applied to one server will no longer hide query panes for other servers
- Card preview description text is now limited in height to prevent excessive text display
Changed:
- No longer highlight matches in sent messages
- No longer show notifications for messages where the relevant buffer is open and Halloy is focused
Thanks:
- Contributions: @Hummer12007
- Bug reports: @e00E, @oooo-ps, @csmith, @bw1, @deepspaceaxolotl
2026.1.1
2026.1
Added:
- Added
Open URLentry to URL context menus - Setting to not hide consecutive if previous message was a image preview
- Channel discovery buffer to view all channels on a server (using LIST). Can be opened via sidebar button or command bar.
- Setting to hide server icons in sidemenu
- Setting to adjust buffer padding and server spacing in sidemenu
- Setting to adjust entry padding in context menus
- Support for configuring a regex-based allowlist of URL patterns for Preview
- Setting to open a new pane, replace current pane, or open a new window after
/join - Emoji, channel, and user completion can be used with commands
- Auto-completion (emoji/channel/user) will auto-complete at the text cursor (instead of the end of the current input)
- Insert-nickname will place the nickname at the text cursor (instead of end of the current input)
- Backlog separator can be customized with a custom color and text (with the ability to remove text from it)
- Setting to disable unread indicators for specified channels/servers
- Users and messages can be filtered using regular expressions
- Added ability to set default QUIT and PART reason
/connectcommand to temporarily connect to a server- Setting for the font size of messages that contain only emojis
Fixed:
- No longer any delay in showing a tooltip after hovering
- Ignored users will not be suggested by user auto-completion
- Channel auto-completion works with all channel prefixes specified by the server
- Number pad enter now sends messages instead of adding a new line
- Join & monitor commands sent automatically on connection respect TARGMAX limits specified by the server
/sysinfois cleared from input when sent, and is recorded to the buffer even if the server doesn't support echoes- Channel and user links in messages in the highlight buffer
- Remember fullscreen state across sessions
Changed:
- Keybindings for macOS default to Emacs-like by default, to match native text-input behavior
Thanks:
- Contributions: @csmith
- Bug reports: halloy3002, g00s, Eagle-1
- Feature requests: @tribly, @deepspaceaxolotl, @dieperdev, @Erroneuz, @lorenzosu, @Summertime, @WinnerWind, @vidje
2025.12
Added:
- Ability to exclude previews from specific server messages (e.g. topic, part, quit)
- Ability to expand & contract condensed messages via left-click
- Ability to hide nickname for consecutive messages from the same user
- Ability to hide the indicator when a new version of Halloy is available
- Ability to set Emacs-like keybindings for text input
- Ability to specify a distinct sound for each match highlight set
- Border radius on both image previews and cards displaying images through meta tags (configurable)
- Change-host and kick server messages messages can be condensed
- Context menu added to text input when right clicking
- Context menu item added to server-wide buffers to close all queries
- Exit application from user menu
- Fuzzy matching when searching in command bar
- Keyboard shortcuts can now be unset
- Messages that fail to send are dimmed and marked, and can be deleted or re-sent (for servers that support the
echo-messagecapability) - Per server custom proxy configuration option
- Reload Halloy by sending
SIGUSR1on Unix system - Setting to disable file transfers (DCC), removing it from the UI
- Setting to notify for every message in a channel
/plaincommand to send text with automatic formatting disabledWhowasinstead ofWhoisaction in context menu for offline nicknames
Fixed:
- Channels with the same name as servers now appear before servers when searching in command bar
- Flickering logo on Welcome screen
- Hide jitter in backlog divider caused by read marker updates when marking read on send
- Larger fonts (and font sizes) can be used without blanking out the input box
- NumLock status respected in input box & shortcuts
- Server messages reporting an inability to send to a nick/channel are routed to the relevant buffer
- Standard Exif rotation data is used when displaying images
Changed:
- Buffer context menu items in sidebar are sorted alphabetically
- By default the backlog separator is hidden when all messages in a pane have been marked as read (
buffer.backlog_separator.hide_when_all_read) - Unicode nicknames are now supported
- User menu configuration moved to
[sidebar.user_menu]section
2025.11
2025.10
Added:
/sysinfocommand to send system information to current buffer- Copy URLs from context menu by right-clicking on links
- Settings to condense multiple consecutive server messages into a single abbreviated message
/detachcommand to detach from channels (soju feature)- Support for USERINFO CTCP query
- Configurable anti-flood protection for servers that do not advertise SAFERATE
- Channel modes will be retrieved on joining a channel (to be shown in the pane title bar)
- Display own nickname next to text input field
- Server messages can be dimmed (enabled by default), to lessen their visual impact relative to user messages
- Context menu to timestamps that shows the message date, and will copy the timestamp to the clipboard when clicked
- Setting to open new buffers scrolled to the bottom (rather than scrolled to the last unread message, the default and current behavior)
- macOS: Ability to adjust content rendering to account for titlebar
- Setting to remove all window decorations
- New sounds: Zone, Bloop, Drop, Tweep.
Fixed:
- Enforce delay between notifications
- Larger fonts (and font sizes) can be used without blanking out the sidebar or pane title bar(s)
- The primary clipboard (with copy on selection & paste with middle click) is supported on Linux
- Sound effects are now properly reloaded when config file is refreshed from within the application
- Filters are applied only to the server they are specified for
- Filters are renormalized properly when ISUPPORT is updated
- Crash when typing
/bouncerinto the message box - Scroll state no longer changes rapidly when long previews for URL(s) are present in history
- Sidebar menu always takes one click to open (would sometimes require two clicks)
Changed:
- The logs pane will only contain log messages since the last of launch of Halloy (i.e. for the current session only)
- Always show version number in user menu
Thanks:
- Contributions: @Toby222, @Frikilinux, @4e554c4c, @apollo7321, @Bartkk0, @seraxis
- Bug reports: @Toby222, @deepspaceaxolotl, @zhelezov, @Erroneuz, @dgz0, @csmith, @otonoton, @mefistoso
- Feature requests: @j0lol, @xcfrg, ThePendulum, i_like_halloy
2025.9
Added:
- Added different unread icons for highlights vs regular unread messages
- Setting to change icons for unread messages and unread highlight messages
- Setting to change server icon size
- Setting to control spacing between messages in buffers
- Ability to specific multiple themes which then gets picked randomly at launch
- Notification indicator on sidebar menu for warning & error log messages
- Ability to mark as read on buffer close only if scrolled to the bottom of the buffer (new default behavior)
/part,/topic,/mode,/kick, and/ctcpcommands can have their target(s) argument skipped when it can be inferred from context (e.g./topicwill target the current channel by default when used in a channel buffer)/cleartopiccommand to remove a channel's topic (will target the current channel by default when used in a channel buffer)- Ability to hide and theme
kickserver messages - Setting to control whether or not to restore on launch the panes that were open when Halloy last closed
- Setting for split axis chosen as the shorter dimension of the focused pane (new default behavior)
- Setting for split axis chosen as the shorter dimension of the largest splittable pane
soju.im/bouncer-networkssupport- Setting to hide the backlog divider when all messages in the buffer have been read
- Setting to specify whether nickname highlighting is case sensitive
- Setting to hide topic changes
Fixed:
- Receiving files over DCC will no longer stall when sender stops accepting received receipts
- Attempting to navigate to the next/previous unread buffer, when there is no such buffer, will no longer clear the buffer
- Window position is now validated, preventing windows from opening on disconnected monitors
- When kicked from a channel the kick message will be broadcast in the server buffer (which remains open) as well as in the channel history (which is closed on kick)
- Preview images with large dimensions will not be displayed if larger than the allowed buffer size
- Do not activate the mark as read buffer when blocked/hidden messages are unread in the buffer
- Nickname highlighting is case insensitive by default (and uses the server's specified casemapping)
- Nickname changes properly broadcast in all channels user is in
- Page up/down behavior moves by consistent page length, and will no longer get stuck at the top of a buffer
file_transfer.save_directoryis now affected by path substitutions (tilde expansion & relative path prefixing)
Changed:
- Relative paths in configuration files are now prefixed with config dir
Thanks:
- Contributions: @Death916, @4e554c4c, @freakyy85, @hashcatHitman, @5GameMaker
- Bug reports: @privacyadmin, @rlndd, @wingedonezero, @Seishiin, @Erroneuz, @andar1an, freakyy85, ThinkT510, alexia, @darienm, quaff, @zhelezov
- Feature requests: @deepspaceaxolotl, @4e554c4c, @seraxis, RebeLLz, @cvengler, @barretgoat, @remexre, @dmd
2025.8
Added:
- Clear buffers with
/clearcommand - Notification indicator on sidebar menu for application updates and file transfers
Fixed:
- Nicknames in query was always shown as offline
- macOS now properly prioritizes XDG config directory
(~/.config/halloy) over user config directory (~/Library/Application Support/halloy)
2025.7
Added:
- Ability to ignore nicknames on server level or on a per-channel basis
- Ability to truncate nicknames in buffer
- New option to customize the appearance of offline nicknames
- Specify whether nicknames in buffers appear with the user's current status or status at time of sending the message
- Log level filtering for the log buffer (ctrl + l) and log file
- Per toast type setting for showing content in toasts
- Ability to hide
nickandmodechange server messages - Context menu item added to server-wide buffers to mark all messages as read
- Auto-accept file transfers, with support for nick and mask filtering
- Adjustable scrollbar sizing
Fixed:
- Sidebar menu is now drawn with the correct offset
- Prevent messages with previews from shifting position on hover
- Recognize registration completion on older servers without capability negotiation (i.e. send
on_connect,umodes, etc.)
Changed:
- Optimized message loading by implementing lazy loading: buffers now load only enough messages to fill the visible area instead of always loading 500+ messages.
- The
[buffer.away]section has been split into[buffer.channel.nicklist]and[buffer.nickname]for greater flexibility - Colorize the level text in log buffer based on theme
- Scrollbars now use a dedicated
scrollbarcolor instead ofhorizontal_rule - Tor is now an optional feature. Build with
--features torto enable Tor proxy support - Topic "set at" time is now shown with local timezone offset, instead of UTC's
Thanks:
- Contributions: @4e554c4c, @KE0VVT, @englut, @KaiKorla, @root-goblin
- Bug reports: @darienm, @mercster, @ChrisRenfrow, @glguy
- Feature requests: @rossburton, death916, @Celeo, @TehPeGaSuS, @gdluca, @darienm, @RealKindOne, @Tahomaru, @tribly
2025.6
Find full documentation at https://halloy.chat/
Added:
- New application icon
- Show channel mode in panel if available
- Configuration options for font weight and bold weight
/delay <seconds>command that can be used to control the timing of commands sent on connect- Configuration option for the ordering of servers in the sidebar
Fixed:
- Handling of RPL_NOWAWAY & RPL_UNAWAY to reflect user's own AWAY state
- Draft messages are saved while navigating message history (i.e. pressing β then β in the input box will restore an unsent message after displaying sent message history)
Thanks:
- Contributions: @englut, @KaiKorla, @kit-ty-kate, @mhegreberg, @ohhskar, Rune Seir
- Bug reports: @awbradle
- Feature requests: @darienm, @kasper93, @auronandace, @n-kalosha