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.

Difference between revisions of "ChangeLog/1.0"

From ZNC
Jump to: navigation, search
Line 12: Line 12:
 
* Timezones. TimezoneOffset is deprecated.
 
* Timezones. TimezoneOffset is deprecated.
 
* ZNC-Extra no more. Drop antiidle, fakeonline and motdfile. Rename away module to [[awaystore]] to better explain its meaning.
 
* ZNC-Extra no more. Drop antiidle, fakeonline and motdfile. Rename away module to [[awaystore]] to better explain its meaning.
 +
* server-time capability
  
 
== Fixes ==
 
== Fixes ==
Line 17: Line 18:
 
* Fix debug output of identfile. {{git|4e16e9f}}
 
* Fix debug output of identfile. {{git|4e16e9f}}
 
* Don't forward WHO replies with multi-prefix to unsupported clients
 
* Don't forward WHO replies with multi-prefix to unsupported clients
* The connect queue shouldn't be unpaused when ZNC starts
+
* Send nick changes to clients before we use call the OnNick module hook
 +
* Fix a busy loop with the connection queue
 +
* Fix help of admin module.
 +
* autoreply: Honor RFC 2812.
  
 
== Minor Stuff ==
 
== Minor Stuff ==
Line 36: Line 40:
 
* Add 381 to the buffer (You are now an IRC Operator)
 
* Add 381 to the buffer (You are now an IRC Operator)
 
* identfile: Pause the connection queue while we have a locked file
 
* identfile: Pause the connection queue while we have a locked file
* Display a 401 when a partyline user is not attached
+
* 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
 +
* Don't forward a 670 to a client
 +
* route_replies: Handle raw 482 ("You're not a channel operator")
 +
* Clear text colors before appending timestamps to buffer lines
  
 
== Internal Stuff ==
 
== Internal Stuff ==
Line 45: Line 57:
 
* Python: Override __eq__ to allow comparison of strings
 
* Python: Override __eq__ to allow comparison of strings
 
* python: Allow iterating over CModules
 
* 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()
  
 
== git short log ==
 
== git short log ==
* Send nick changes to clients before we use call the OnNick module hook {{git|5c844cf}}
 
* autoop: Check for autoops when we are opped ourself #120 {{git|b450fde}}
 
* Add methods to CModule to get the web path {{git|b1ed9c9}}
 
* Make the URL's for web modules include the module type (#121) {{git|b159323}}
 
* partyline: Use the clients nickname in the channel, not PREFIX+username {{git|2a901da}}
 
* Kick all clients who are in partyline channels when the module is unloaded {{git|7f21e73}}
 
* partyline: RemoveUser should use the clients nickmask {{git|89543ce}}
 
* Fix an Unrecoverable config error issue when reading from an old config. {{git|bb666b0}}
 
* Check that modules are in place on start. {{git|94f7859}}
 
* Depend on changes of headers too, not only sources. {{git|be81853}}
 
* Fix a busy loop with the connection queue {{git|95d6041}}
 
* Fix a stupid bug in CUser::~CUser() {{git|1d16d1c}}
 
* threaded DNS: Remove an unneeded function {{git|233897b}}
 
* Threaded DNS: Remove TDNS mutex {{git|94c7b04}}
 
* Mods are network mods by default. {{git|ae68a5a}}
 
* Fix help of admin module. {{git|b966204}}
 
* Show error from bootstrap.sh if pkg-config not found. {{git|6b2029f}}
 
* Describe how to use networks. {{git|b811ea8}}
 
* README: Explain that we need to run `./autogen.sh` if compiling from git {{git|991e7f2}}
 
* Make networks a bit less confusing. {{git|fa287ef}}
 
* Identfile: don't crash when ZNC is shutting down. {{git|e0f4fad}}
 
* Hide new compilation warnings of modperl... {{git|ea6993e}}
 
* Fix compilation of modperl... {{git|7b213ef}}
 
* Don't rebuild modules during make install. {{git|897806a}}
 
* Perl: fix several methods to return perl stuff instead of pointers. {{git|00e26c8}}
 
* CFile: Make sure errno is always set correctly {{git|29564f1}}
 
* TDNS: Fix a use-after-free-race-with-threads {{git|beacc01}}
 
* README: Display the writing module links more clearly {{git|6a2b5a2}}
 
* Make *raw a network module by default {{git|9a0af84}}
 
* Allow setting a network-specific settings the same as the user setting {{git|b447169}}
 
* CTCP's with no values should not be passed to the client {{git|f5dbe86}}
 
* TDNS: Fix few incompabilities with last Csocket. {{git|ff8065e}}
 
* Use @t=time instead of @time for server-time capability. {{git|0a7ef76}}
 
* "no" should be false in CString::ToBool() {{git|2d9a537}}
 
* *admin: SetChan takes the network as an argument {{git|c8f1a08}}
 
* Add outgoing lines to the buffer if we are "offline" {{git|13cfb16}}
 
* Update to Csocket 6da41d339f {{git|4bb365c}}
 
* CHTTPSock: Remove some useless member methods {{git|10ece5d}}
 
* Update Csocket to e00323f9f18 {{git|c87e7cf}}
 
* Make certs valid for 10 years {{git|02e4295}}
 
* JUMPNETWORK: Tell the user we have switched network before we do {{git|c231632}}
 
* Move IRCConnectEnabled to each network instead of a global user setting {{git|3d7d179}}
 
* Remove trailing whitespace {{git|4abf3fe}}
 
* Make bouncedcc's description a bit shorter to fit in small tables better in output of *status. {{git|1b7c9f4}}
 
* Modified description field for bouncedcc module to explain what the module actually does. {{git|9fdac9f}}
 
* nickserv: support also wenet.ru's nickserv request. {{git|8e558e8}}
 
* Fix python in README {{git|8ca1859}}
 
* Make autovoice a network module. {{git|9680b6a}}
 
* Add one more message for nickserv's request to auth. {{git|6274111}}
 
* Fix several issues in modpython. {{git|f374874}}
 
* Python and Perl should know that off_t is integer type. {{git|13bfec0}}
 
* Fix moddata path for python modules. {{git|78c6b1e}}
 
* Increase the version number to 0.205 {{git|87aad36}}
 
* Add missing dependency to modperl. {{git|7ca8aa9}}
 
* Support RusNet's NickServ. {{git|2cbf26f}}
 
* Unload all python modules when modpython is unloaded. {{git|c8a4668}}
 
* Show more debug info with --enable-debug {{git|0260558}}
 
* Welcome in 2012 {{git|73270ff}}
 
* Fix some invalid iterator uses {{git|01341cf}}
 
* Automatically load autoaway if away is requested {{git|cdc27e1}}
 
* Python modules are network mods by default. {{git|6443563}}
 
* Fix codestyle. {{git|57a51df}}
 
* Rework modperl to better integrate with perl. {{git|8bb7ea5}}
 
* Change c-ares to tdns in output of /znc version {{git|6bf0265}}
 
* Use threads for resolving DNS. {{git|717d059}}
 
* send 422 event if MOTD buffer is empty {{git|f4019b6}}
 
* Store all 005 values in a map. {{git|9e047a3}}
 
* autoreply: Honor RFC 2812. {{git|eb66e58}}
 
* Add a line to AUTHORS... Not with new names though. {{git|cecaf2c}}
 
* Remove notes on the GENERATE command in the cert module {{git|44a230c}}
 
* Print timestamps in front of debug messages. {{git|0f739de}}
 
* nickserv: Use CModCommands {{git|b945727}}
 
* Python: Use znc.Socket if no socket class is specified in CreateSocket() {{git|3fd0429}}
 
* Move delete networks out of looping over the clients in CUser::Clone {{git|3945d43}}
 
* Fix webadmin when editing a user {{git|01b15bf}}
 
* Clarify the last commit a bit using a comment. {{git|2ffcbed}}
 
* Properly handle CIRCNetwork's when we rehash {{git|0b57b7d}}
 
* Don't forward a 670 to a client {{git|812ec24}}
 
* Add {Add,Del,List}Network to *admin module {{git|a36d47c}}
 
* route_replies: Handle raw 482 {{git|e5facdf}}
 
* Clear text colors before appending timestamps to buffer lines {{git|7cdf42d}}
 
 
* Fix a NULL pointer issue on CChan::SaveBuff {{git|74738a2}}
 
* Fix a NULL pointer issue on CChan::SaveBuff {{git|74738a2}}
 
* Don't forward a 670 to a client {{git|94ffcbe}}
 
* Don't forward a 670 to a client {{git|94ffcbe}}

Revision as of 19:03, 1 May 2012


Last update at 368d06679e3ba007284e52449ba2a90c4883a1f0

The Big News

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

  • Multinetwork.
  • Multitype modules. Web pages for them.
  • 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.
  • server-time capability

Fixes

  • Don't try IPv6 servers, if IPv6 isn't available. Get rid of c-ares.
  • 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 a busy loop with the connection queue
  • Fix help of admin module.
  • autoreply: Honor RFC 2812.

Minor Stuff

  • Improvements to modtcl module.
  • 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 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
  • Don't forward a 670 to a client
  • route_replies: Handle raw 482 ("You're not a channel operator")
  • Clear text colors before appending timestamps to buffer lines

Internal Stuff

  • #include <znc/...h> instead of #include "...h"
  • {} in strings
  • 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()

git short log

  • Fix a NULL pointer issue on CChan::SaveBuff Template:Git
  • Don't forward a 670 to a client Template:Git
  • Add {Add,Del,List}Network to *admin module Template:Git
  • route_replies: Handle raw 482 Template:Git
  • Change the order of -I directives in Makefile. Template:Git
  • Clear text colors before appending timestamps to buffer lines Template:Git
  • Fix CZNC::Broadcast... Template:Git
  • Don't use "mkdir" during install Template:Git
  • Check for /usr/bin/swig2.0 too. Template:Git
  • webadmin: Add a "Disabled" checkbox for channels Template:Git
  • CZNC::WriteConfig(): Better --debug output Template:Git
  • Just some small comment explaing some craziness Template:Git
  • Disable some more warnings on mod{perl,python} Template:Git
  • Ups, forgot to change message for python compiler. Template:Git
  • Separate compilation and linking for modules. Template:Git
  • Be able to remove servers using webadmin. Template:Git
  • Working savebuff saving and loading. Template:Git
  • Store and format time in CBufLine. Template:Git
  • Slight refactor of CBuffer & CBufLine. Template:Git
  • Unify channel buffers and CBuffer. Template:Git
  • Rewrite Buffer to store a format string. Template:Git
  • Add string formatting function with named params. Template:Git
  • Add server time CAP and Client flag. Template:Git
  • Respond to 670 from the server by switching to TLS Template:Git
  • Update Csocket to d7206c6aa88bd7988f Template:Git
  • Macro NETWORKMODULECALL to IRCSOCKMODULECALL inside CIRCSock Template:Git
  • Its .co.uk not .co.u in the authors list Template:Git
  • Make the OnInvite hook return EModRet so we can ignore invites Template:Git
  • Pass the nick who send an invite with the OnInvite hook Template:Git
  • antiidle: Don't SIGABRT when receiving a line with less than 2 words Template:Git
  • Move me to the top of authors Template:Git
  • Make sure a IRCSock is authed before we use the nick Template:Git
  • Make UpdateModule reload the module for every module type Template:Git
  • Don't include Modules.h from User.h Template:Git
  • autoreply: check if the network is attached instead of the user Template:Git
  • simple_away: check if the network is attached instead of the user Template:Git
  • Only save a buffer in buffextras if no clients are "away" Template:Git
  • zncconfig.h has moved to include/znc Template:Git
  • Allow a client to become "away" Template:Git
  • bouncedcc should use PutUser() and not m_pUser->PutUser() Template:Git
  • Fix the OnUserCTCP() module hook Template:Git
  • Fix the "Connecting user/network" message Template:Git
  • Use time zone string instead of offset. Template:Git
  • Introduce time zone (string) setting. Template:Git
  • identfile: Improve the debug messages Template:Git
  • Improve admin module description. Template:Git
  • Don't connect to SSLed IRC servers when ZNC is not compiled with SSL Template:Git
  • Create a connection queue including all the networks we need to connect Template:Git
  • Fscking perl... This fixes modperl's compilation. Template:Git
  • Trim spaces from end of commands to autoattach. Template:Git
  • Fix shell module. It didn't send anything to user. Template:Git
  • Tell users to use user/network:pass in --makeconf Template:Git
  • Nick in 301 can start with : - it's IRC after all... Template:Git
  • Update to latest Csocket Template:Git
  • Fix visibility support Template:Git
  • Implemented a OnInvite hook Template:Git
  • Fix OnClientDisconnect() hook of network modules. Template:Git
  • This avoids your irc windows being filled with away stuff Template:Git
  • Added several new features to the nickserv module Template:Git
  • Fix CUser::IsUserAttached(). Template:Git
  • Move core .cpp files to src/ Template:Git
  • Move ZNC headers into own directory. Template:Git
  • Send a MODE request when JOINing Template:Git
  • Set default TrimPrefix to ":" Template:Git
  • Clean up CClient::ReadLine Template:Git
  • SHA256.cpp: Include some ZNC header first Template:Git
  • Fork the gl_visibility macro Template:Git
  • configure.ac: Redefine AC_PROG_CC to cause errors Template:Git
  • Bump version of master to 0.203 Template:Git
  • PutModule should try sending the line to all clients connected to the same network before the user clients Template:Git
  • Honor per-network nick in awaynick and keepnick. Template:Git
  • Compare floats as floats. Template:Git
  • Warn if config was saved in too new version. Template:Git
  • Backup znc.conf when upgrading ZNC. Template:Git
  • Fix CIRCNetwork::ExpandString() Template:Git
  • Backup znc.conf once when updating to networks Template:Git
  • Fix network module calls Template:Git
  • Move log out of extra Template:Git
  • Fix code style in Chan.cpp Template:Git
  • rename away to autoaway to help alleviate any ambiguity as to what it does Template:Git
  • rework SendBuffer fixing an issue where ClearBuffer() nuked the buffer after playing to the first client Template:Git
  • Better describe what does away module do. Template:Git
  • update module description with something more useful. Additionally added explanation at the top of the header. Template:Git
  • fixed a null reference to pClient in hooks 'OnChanBufferStarting,OnChanBufferStarting,OnChanBufferEnding,OnChanBufferEnding', such that when pClient is NULL the hooks are called on all clients associated to that user Template:Git
  • Partyline compiles again! Yay! Template:Git
  • CString should be const& in parameters. Template:Git
  • Anyone seen my brown paper bag? Template:Git
  • (Hopefully) fix all remaining module calls Template:Git
  • Add CIRCNetwork::ExpandString Template:Git
  • Support having a nickname per network Template:Git
  • Fix ALLMODULECALL() Template:Git
  • Fix a crash with OnClientLogin() Template:Git
  • Remove MODULECALL macro Template:Git
  • Only run NETWORKMODULECALL from MODULECALL if we have a network Template:Git
  • webadmin: Show a field for the network name when someone add's a network Template:Git
  • OnClientDisconnect() always needs a valid user Template:Git
  • Wrap MODULECALL macros in a do-while Template:Git
  • Add a missing semicolon Template:Git
  • assert that we have a user/network on module calls Template:Git
  • Make the debug output for raw query line up Template:Git
  • Make 1st parameter of CConfig::Write() a reference. Template:Git
  • Move CConfigEntry out of CConfig. Template:Git
  • modpython: We are modpython not modperl Template:Git
  • modpython: Supress "Nested struct not currently supported (ignored)." warnings from Template:Git
  • Destroy the CIRCSock for a network when the CIRCNetwork is destroyed Template:Git
  • Check we have a network before we try to get its modules (in /msg *status listavailmods) Template:Git
  • modpython: Show (module/__init__.py) in listavailmods Template:Git
  • Don't crash when loading python network modules. Template:Git
  • route_replies: Improve the timeout message Template:Git
  • Fix CChan::TrimBuffer() (#63) Template:Git
  • Upgrading to networks: Slightly rephrase a message Template:Git
  • autocycle: Only cycle once in 15 seconds Template:Git
  • Move autocycle module to extra. Template:Git
  • fix build error when compiling against uclibc(++) Template:Git
  • Change "znc" to "ZNC". Template:Git
  • Fix compilation after merge of 'redirects' branch. Template:Git
  • Add -r parameter of ZNC to man. Template:Git
  • admin: Fix getchan {inconfig,keepbuffer,detached} Template:Git
  • Drop @DEFS@ from the build system Template:Git
  • Install .py files along with .pyc Template:Git
  • Add a message sent to user in case of redirect. Template:Git
  • Allow loading python modules with modpython (ex. modname/__init__.py) Template:Git
  • Let a user filter the result of help CModule::HandleHelpCommand Template:Git
  • Don't timeout bouncedcc connections, inactive bounced DCC chat's would be dropped otherwise Template:Git
  • Unload user and network modules once all the clients are gone and we are disconencted from any IRC servers. Template:Git
  • Fix CALLMOD, m_pNetwork could be NULL, in this case CALLMOD would be passed a NULL network. But CALLMOD will try calling its modules anyway Template:Git
  • Fix modp{erl,ython}, these modules should set a "default" module type for its submodules Template:Git
  • Turn stickchan into a network module, this prevents a segfault Template:Git
  • Fix logging in with PASS after USER Template:Git
  • Remove some IMHO dangerous functions Template:Git
  • Partyline: Drop support for fixed channels Template:Git
  • Silence some wrong compiler warnings Template:Git
  • Add default types to modules Template:Git
  • Allow loading the log module as either user, network or global Template:Git
  • Allow the cert module to be loaded as a network module Template:Git
  • Perform is now a network module, but could also be loaded as a user module if the user desires Template:Git
  • Part the client from the channels they are in when they used /znc JumpNetwork Template:Git
  • Allow a user to add networks in `znc --makeconfig` Template:Git
  • Make modpython support network modules Template:Git
  • Turn modtcl into a network module Template:Git
  • Change the order that modules are looked up in /msg *module Template:Git
  • Make all the modules support networks Template:Git
  • Make the *webadmin module support IRC networks Template:Git
  • Support IRC networks in the *admin module Template:Git
  • Add support for network commands with *status Template:Git
  • Create network modules Template:Git
  • Make CNick network aware Template:Git
  • Make IRCSock network aware Template:Git
  • Make CClient network aware Template:Git
  • CChans should now work on IRC networks Template:Git
  • Add CIRCNetwork which now hold each IRC Connection. Template:Git
  • Don't forward server redirects to client. Template:Git
  • Don't send server redirects to client [TorrentialStorm] Template:Git
  • Save listeners as a section in znc.conf Template:Git
  • Add an easy way to read bools and ints from config. Template:Git
  • Fix doxycomment about global mobules. Template:Git
  • Fix modpython about renaming EModuleType. Template:Git
  • Save passwords as a section in znc.conf Template:Git
  • Fix up indentation in config writing Template:Git
  • Some more cleanup to module loading Template:Git
  • Remove GLOBALMODCONSTRUCTOR Template:Git
  • Fix compilation of modpython. Template:Git
  • Add new parameter of OnModuleLoading to doxygen. Template:Git
  • Move the EModuleType into CModInfo Template:Git
  • Fix some minor issues Template:Git
  • Add a config writer Template:Git
  • Make modpython support different module types Template:Git
  • Fix dependencies between modpython parts. Template:Git
  • Fix enum handling in modpython callbacks params. Template:Git
  • Add CModInfo::SupportsType(EModuleType) and supply a module type with CModules::LoadModule Template:Git
  • Fix global python modules. Template:Git
  • Unload modules in reverse order. Template:Git
  • Merge CGlobalModule(s) into CModule(s) Template:Git
  • Create EModuleType, creating SetType which replaces SetGlobal Template:Git
  • Increase the version number to 0.201 Template:Git
  • Add ZNC systemd unit file for those distros that use systemd for their init Template:Git