To create new wiki account, please join us on #znc at freenode and ask admins to create a wiki account for you. You can say thanks to spambots for this inconvenience.


From ZNC
< ChangeLog
Revision as of 13:52, 3 September 2012 by DarthGandalf (talk) (Minor Stuff)
Jump to: navigation, search

Last update at 368d06679e3ba007284e52449ba2a90c4883a1f0

//TODO: need to reword almost every line here...

The Big News

//TODO: describe items of this section in many details.

  • Multinetwork.
  • Flood protection. Rate-limit.
  • Timezones. TimezoneOffset is deprecated.
  • ZNC-Extra no more. Drop antiidle, fakeonline and motdfile. Rename away module to awaystore to better explain its meaning.


  • Don't try IPv6 servers when IPv6 isn't available. Get rid of c-ares. Use threads for non-blocking DNS instead.
  • Fix debug output of identfile. Template:Git
  • Don't forward WHO replies with multi-prefix to unsupported clients
  • Send nick changes to clients before we use call the OnNick module hook
  • Fix help of admin module.
  • autoreply: Honor RFC 2812.
  • Don't connect to SSLed IRC servers when ZNC is not compiled with SSL
  • Fix check if compiler supports visibility

Minor Stuff

  • server-time capability, which allows clients supporting this capability to show timestamp from buffers where it usually shows timestamps. So no ugly doubled timestamps anymore
  • Modules can support several types now: a module can be loaded as user module, as network module and as global module, if the module supports these types.
  • starttls (manually for now)
  • Improvements to modperl, modpython, modtcl.
  • Add timestamp to znc --debug
  • Listeners editor in webadmin
  • Modules get a way to describe their arguments.
  • webadmin: allow edit bindhost without global list.
  • make web more strict (closer to XHTML)
  • Rewrite the JOIN channel logic, dropping MaxJoins Template:Git (need to revert it?)
  • Show link to from web as a link. It was plain text before.
  • Webadmin: use HTML5 numeric inputs for numbers.
  • Add SSL/IPv6/DNS info to znc --version
  • Clarify that only admins can load shell module.
  • Clear channel buffers when keep buffer is disabled if we're online
  • send_raw: Add a command to send a line to the current client
  • webadmin: Implement clone user
  • Add 381 to the buffer ("You are now an IRC Operator")
  • identfile: Pause the connection queue while we have a locked file
  • autoop: Check for autoops when we are opped ourself
  • Improvements to partyline module
  • Check that there're modules available on startup. Check if ZNC is installed or not.
  • Modified description field for bouncedcc module to explain what the module actually does.
  • nickserv: support also's and rusnet's nickserv requests.
  • send 422 event if MOTD buffer is empty
  • route_replies: Handle raw 482 ("You're not a channel operator")
  • Clear text colors before appending timestamps to buffer lines
  • webadmin: Add a "Disabled" checkbox for channels
  • Separate compilation and linking for modules.
  • Trim spaces from end of commands to autoattach.
  • nickserv: add ghost, recover and release
  • Warn if config was saved in too new version.
  • Backup znc.conf when upgrading ZNC.
  • Add ZNC systemd unit file for those distros that use systemd for their init Template:Git (do we need it?)

Internal Stuff

  • #include <znc/...h> instead of #include "...h"
  • Add string formatting function with named params.
  • Csock: able use non-int number of secs for timer. Template:Git (need to fix a conversion warning)
  • CString("off").ToBool() shouldn't be true
  • Python: Override __eq__ to allow comparison of strings
  • python: Allow iterating over CModules
  • Add methods to CModule to get the web path
  • Fix several issues in modpython.
  • Rework modperl to better integrate with perl.
  • Store all 005 values in a map.
  • Python: Use znc.Socket if no socket class is specified in CreateSocket()
  • CZNC::WriteConfig(): Better --debug output
  • Slight refactor of CBuffer & CBufLine.
  • Implemented a OnInvite hook
  • Allow a client to become "away"
  • Create a connection queue
  • Set default TrimPrefix to ":"
  • Add a config writer
  • Wrap MODULECALL macros in a do-while
  • Allow loading python modules with modpython (ex. modname/