Last update at 368d06679e3ba007284e52449ba2a90c4883a1f0
//TODO: need to reword almost every line here...
The Big News
//TODO: describe items of this section in many details.
- 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
- autoreply: Honor RFC 2812.
- Don't connect to SSLed IRC servers when ZNC is not compiled with SSL
- Fix check if compiler supports visibility
- 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
- Listeners editor in webadmin
- Modules get a way to describe their arguments.
- webadmin: allow edit bindhost without global list.
- Rewrite the JOIN channel logic, dropping MaxJoins Template:Git (need to revert it?)
- Show link to http://znc.in/ 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 wenet.ru'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?)
- #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/__init__.py)