We're pleased to be publishing v2.10.0, a new stable release.
This release contains no changes to the config file format or database file format.
Many thanks to @csmith, @FiskFan1999, @Mikaela, @progval, and @thesamesam for contributing patches, and to @emersion, @eskimo, @FiskFan1999, @jigsy1, @Mikaela, @mogad0n, @progval, and @xnaas for reporting issues and helping test.
Config changes
- For better interoperability with Goguma, the recommended value of
history.chathistory-maxmessages
has been increased to1000
(previously100
) (#1919)
Changed
- Persistent voice (
AMODE +v
) in a channel is now treated as a permanent invite (i.e. overriding+i
on the channel) (#1901, thanks @eskimo!) - If you are
+R
, sending a direct message to an anonymous user allows them to send you replies (#1687, #1688, thanks @Mikaela and @progval!) 0
is no longer valid as a nickname or account name, with a grandfather exception if it was registered on a previous version of Ergo (#1896)- Implemented the ratified version of the bot mode spec; the tag name is now
bot
instead ofdraft/bot
(#1938) - Privileged WHOX on a user with multiclient shows an arbitrarily chosen client IP address, comparable to WHO (#1897)
SAREGISTER
is allowed even underDEFCON
levels 4 and lower (#1922)- Operators with the
history
capability are now exempted from time cutoff restrictions on history retrieval (#1593, #1955)
Added
- Added
draft/read-marker
capability, allowing server-side tracking of read messages for synchronization across multiple clients. (#1926, thanks @emersion!) INFO
now includes the server start time (#1895, thanks @xnaas!)- Added
ACCEPT
command modeled on Charybdis/Solanum, allowing+R
users to whitelist users who can DM them (#1688, thanks @Mikaela!) - Added
NS SAVERIFY
for operators to manually complete an account verification (#1924, #1952, thanks @tacerus!)
Fixed
- Having the
samode
operator capability made all uses of theKICK
command privileged (i.e. overriding normal channel privilege checks); this has been fixed (#1906, thanks @pcho!) - Fixed
LIST <n
always returning no results (#1934, thanks @progval and @mitchr!) - NickServ commands are now more clear about when a nickname is unavailable because it was previously registered and unregistered (#1886, thanks @Mikaela!)
- Fixed KLINE'd clients producing a
QUIT
snotice without a correspondingCONNECT
snotice (#1941, thanks @tacerus, @xnaas!) - Fixed incorrect handling of long/multiline
319 RPL_WHOISCHANNELS
responses (#1935, thanks @Mikaela!) - Fixed
LIST
returning403 ERR_NOSUCHCHANNEL
for a nonexistent channel; the correct response is an empty list (#1928, thanks @emersion!) - Fixed
+s
("secret") channels not appearing inLIST
even when the client is already a member (#1911, #1923, thanks @jigsy1 and @FiskFan1999!) - Fixed a spurious success message in
HISTSERV DELETE
by always requiring a consistent number of parameters (#1881, #1927, thanks @FiskFan1999!) - Sending the empty string as a nickname would not always produce the expected error numeric
431 ERR_NONICKNAMEGIVEN
; this has been fixed (#1933, #1936, thanks @kylef!) znc.in/playback
timestamps are now parsed as pairs of exact integers, not as floats (#1918)
Internal
- Upgraded to Go 1.18 (#1925)
- Upgraded Alpine version in official Docker image
- Fixed some issues in the example OpenRC init scripts (#1914, #1920, thanks @thesamesam!)