+-- charybdis-3.3.0
+
+server protocol
+- Add new BAN command, for propagated network-wide bans (K/X:lines and RESVs).
+ These will burst to new servers as they are introduced, and will stay in sync
+ across the whole network (new BAN capab).
+- Add new MLOCK command, to implement ircd-side channel mode locks. This allows
+ services to send out a list of mode letters for a given channel which may not
+ be changed, preventing mode fights between services and client bots (new MLOCK
+ capab).
+user
+- New RPL_QUIETLIST(728) and RPL_ENDOFQUIETLIST(729) numerics are used for the
+ quiet (+q) list, instead of overloading the ban list numerics.
+- Users may no longer change the topic of a -t channel if they cannot send to
+ it.
+- Add help for EXTBAN, describing the syntax of extended bans in general, as
+ well as the most common types.
+- Changed AWAY messages are now propagated to other servers. Previously, AWAY
+ was only propagated when the user was not already away.
+- Channel mode +c (and other places that disallow colour codes) now also strip
+ ASCII 29 (mIRC 7 italics).
+- Add auto-accept for user mode +g (callerid): Messaging a user while set +g
+ will automatically add them to your accept list.
+- Add target change for channels. It applies to unopped, unvoiced and unopered
+ users. This has the effect of stopping spambots which join, message and part
+ many channels at a time.
+- Show RPL_WHOISLOGGEDIN in /whowas as well as in /whois entries. This adds at
+ most an additional 0.5MB of memory usage.
+oper
+config
+- Add general::use_propagated_bans to switch the new BAN system on or off.
+- Add general::default_ident_timeout, to control the timeout for identd (auth)
+ connections.
+- Add channel::channel_target_change to switch the new channel target change limits
+ on or off.
+- Fix class::number_per_ident so that it also applies to connections without
+ identd.
+- Change the example sslport option to 6697, which is more standard than 9999.
+misc
+- The custom channel mode API has been rewritten, allowing these modules to work
+ correctly when reloaded, or loaded from the config file.
+- The EFNet RBL is now recommended, instead of DroneBL.
+- Remove the unsupported modules directory.
+- Numerous bug fixes and code cleanups.
+- In mkpasswd, default to MD5 crypt instead of insecure DES.
+
+-- charybdis-3.2.0
+
+server protocol
+- Apply +z to messages blocked by +b and +q as well. (new EOPMOD capab)
+- Add new topic command ETB, allowing services to set topic+setter+ts always.
+ (new EOPMOD capab)
+- The slash ('/') character is now allowed in spoofs.
+user
+- Add can_kick hook, based on the ircd-seven one.
+- Add cmode +C (no CTCP) from ircd-seven.
+- Flood checking has been reworked.
+- Fix op-moderate (cmode +z) for channel names with '@'.
+- Add CERTFP support, allowing users to connect with an SSL client
+ certificate and propagating the certificate fingerprint to other servers.
+ Services packages can use this to identify users based on client
+ certificates.
+- Maintain the list of recently used targets (for the target change
+ anti-spam system) in most-recently-used order, overwriting the least
+ recently used target with a new one. This should be friendlier to users
+ without giving spambots anything.
+- Do not require target change slots for replying to the last five users to
+ send a private message, notice or invite.
+- Apply target change restrictions to /invite.
+- Apply umode +g/+R restrictions to /invite, with the difference that
+ instead of sending "<user> is messaging you" the invite is let through
+ since that is just as noisy.
+oper
+- Add /rehash throttles to clear throttling.
+- Send all server notices resulting from a remote /rehash to the oper.
+- '\s' for space is now part of the matching, not a substitution at xline
+ time, fixing various issues with it.
+- Display o:line "nickname" in oper-up server notices.
+- Fix sendq exceeded snotes for servers.
+- SCAN UMODES: default list-max to 500, like a global WHO.
+- Ignore directory names in MODRELOAD to avoid crashing if it is a core
+ module and the path is incorrect.
+- Tweaks to spambot checks.
+config
+- Add channel::only_ascii_channels config option to restrict channel names
+ to printable ascii only.
+- Add channel::resv_forcepart, forcibly parts local users on channel RESV,
+ default enabled.
+misc
+- New mkpasswd from ircd-ratbox.
+- Check more system calls for errors and handle the errors.
+- Various ssld/libratbox bugfixes from ircd-ratbox. [some MERGED]
+- Fix fd passing on FreeBSD/amd64 and possibly Solaris/sparc. [MERGED]
+- Various documentation improvements. [some MERGED]
+- Fix some crash issues. [MERGED]
+- Add bandb from ircd-ratbox, which stores permanent dlines/klines/xlines/resvs
+ in an sqlite database instead of a flatfile and does the storage in a
+ helper process. Use bin/bantool -i to import your old bans into the
+ database.
+
+-- charybdis-3.1.0
+
+- Remove TS5 support. No TS5 servers are permitted in a network with
+ charybdis 3.1.0 or newer, except jupes.
+- Replace oper flags by privilege sets (privsets). This adds an extra
+ level of indirection between oper flags and operator blocks. /stats O
+ (capital O) shows the configured privsets.
+- Update libratbox and ssld from upstream and use it better.
+- Add auth_user to auth{}. This allows specifying a username:password instead
+ of just a password in PASS, so that a fixed user@host is not necessary
+ for a specific auth{} block.
+- Add need_ssl to auth{} and operator{}. This makes these blocks reject
+ the user if not connected via SSL.
+- Allow modules to provide simple channel modes without parameter.
+- Remove restrictions on CNAME in the resolver.
+- Make the resolver remember nonresponsive nameservers.
+- Move nick collision notices from +s to +k.
+- Add additional information to various server notices about server
+ connections.
+- Show throttle information in /stats t.
+- Show rejectcache and throttle information in /testline.
+- Show oper reason in /testline.
+- Allow opers to see other users' umodes with /mode <nick>.
+- SCAN UMODES GLOBAL NO-LIST MASK <mask> is no longer an operspy command.
+- Also apply floodcount to messages to remote clients (except services).
+- Remove user@server messages to local users. Sending such messages to
+ remote servers is still possible, for securely messaging pseudoservers
+ whether service{}'ed or not. The special oper-only syntax opers@server
+ remains as well.
+- Allow /list on a named +p channel. A full /list already included +p channels.
+- Add operspy /topic.
+- For remote rehashes, send error messages to the requesting oper as well.
+- Disable autoconnect for a server with excessive TS delta.
+- Disallow invites to juped channels.
+- Warn about certain duplicate and redundant auth blocks.
+- Make PRIVMSG/NOTICE behave as CPRIVMSG/CNOTICE automatically if possible.
+- Allow +z messages from outside if a channel is -n.
+- Allow coloured part reasons in -c channels.
+- Add ircu-like WHOX support. This allows requesting specific information
+ in /who and allows obtaining services login name for all users in a
+ channel. XChat/Conspire use WHOX to update away status more efficiently.
+- Allow opers and shide_exempt users to see hopcounts even if flatten_links
+ is on.
+- Rework ip_cloaking.
+- Add the IP address to userlog, as in ircd-ratbox 3.0.
+- Split cidr_bitlen into cidr_ipv4_bitlen and cidr_ipv6_bitlen.
+- Allow using ziplinks with SSL connections. This is not as efficient as
+ using OpenSSL's built in compression, but also works with older versions
+ of OpenSSL.
+- Fix an off by one error with zipstats processing, which could overwrite
+ a variable with NULL causing a crash on some systems.
+- Document some extensions in charybdis-oper-guide.
+- Add more server protocol documentation.
+- Add m_sendbans extension, SENDBANS command to propagate xlines and resvs
+ manually.
+- Add chm_sslonly extension, cmode +S for SSL/TLS only channels.
+- Add chm_operonly extension, cmode +O for IRCop only channels.
+- Add chm_adminonly extension, cmode +A for server admin only channels.
+- Various code cleanups.
+
+-- charybdis-3.0.4
+
+- Fix a crash on certain recent versions of Ubuntu.
+- Allow 127.x.y.z for DNSBL replies instead of just 127.0.0.x.
+- Various documentation improvements.
+
+-- charybdis-3.0.3
+
+- Fix IPv6 D:lines
+- Fix rejectcache and unknown_count.
+- Fix genssl.sh.
+- Fix ident for SSL/TLS connections.
+- Fix SSL/TLS bugs for servers with more than about 100 connections.
+- Small bugfixes.
+
+-- charybdis-3.0.2
+
+- Improve OLIST extension error messages.
+- Improve some kline error checking.
+- Avoid timing out clients if we are still waiting for a DNSBL lookup.
+- Fix resolver hangs with epoll.
+- Fix compilation without zlib.
+
+-- charybdis-3.0.1
+
+- Fix occasional hung clients with kqueue.
+- Fix a rare ssld crash.
+- Fix a bug that could cause incorrect connect failure reasons to be
+ reported.
+- Make the IRCd work on MacOS X again.
+