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 20: Line 20:
 
* Don't forward WHO replies with multi-prefix to unsupported clients
 
* Don't forward WHO replies with multi-prefix to unsupported clients
 
* Send nick changes to clients before we use call the OnNick module hook
 
* 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.
 
* Fix help of admin module.
 
* autoreply: Honor RFC 2812.
 
* autoreply: Honor RFC 2812.
 
* Don't connect to SSLed IRC servers when ZNC is not compiled with SSL
 
* Don't connect to SSLed IRC servers when ZNC is not compiled with SSL
 +
* Fix check if compiler supports visibility
  
 
== Minor Stuff ==
 
== Minor Stuff ==
Line 52: Line 52:
 
* webadmin: Add a "Disabled" checkbox for channels
 
* webadmin: Add a "Disabled" checkbox for channels
 
* Separate compilation and linking for modules.
 
* 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.
  
 
== Internal Stuff ==
 
== Internal Stuff ==
Line 67: Line 71:
 
* CZNC::WriteConfig(): Better --debug output
 
* CZNC::WriteConfig(): Better --debug output
 
* Slight refactor of CBuffer & CBufLine.
 
* Slight refactor of CBuffer & CBufLine.
* Make the OnInvite hook return EModRet so we can ignore invites
+
* Implemented a OnInvite hook
* Pass the nick who send an invite with the OnInvite hook
+
* Allow a client to become "away"
* Allow a client to become "away" {{git|bce4e60}}
+
* Create a connection queue
 +
* Set default TrimPrefix to ":"
  
 
== git short log ==
 
== git short log ==
* Create a connection queue including all the networks we need to connect {{git|a4aedc9}}
 
* Fscking perl... This fixes modperl's compilation. {{git|0f0591b}}
 
* Trim spaces from end of commands to autoattach. {{git|c86a612}}
 
* Fix shell module. It didn't send anything to user. {{git|c646479}}
 
* Tell users to use user/network:pass in --makeconf {{git|59c6215}}
 
* Nick in 301 can start with : - it's IRC after all... {{git|187a05d}}
 
* Update to latest Csocket {{git|7f6a4fb}}
 
* Fix visibility support {{git|c0907f2}}
 
* Implemented a OnInvite hook {{git|23acbe4}}
 
* Fix OnClientDisconnect() hook of network modules. {{git|2dcb3ef}}
 
* This avoids your irc windows being filled with away stuff {{git|232d261}}
 
* Added several new features to the nickserv module {{git|5248987}}
 
* Fix CUser::IsUserAttached(). {{git|ceeebf7}}
 
* Move core .cpp files to src/ {{git|afeab4a}}
 
* Move ZNC headers into own directory. {{git|e354c24}}
 
* Send a MODE request when JOINing {{git|7683592}}
 
* Set default TrimPrefix to ":" {{git|4b1e714}}
 
* Clean up CClient::ReadLine {{git|523deaf}}
 
* SHA256.cpp: Include some ZNC header first {{git|4d4e6a6}}
 
* Fork the gl_visibility macro {{git|08cc624}}
 
* configure.ac: Redefine AC_PROG_CC to cause errors {{git|6f2335d}}
 
* Bump version of master to 0.203 {{git|ca476ef}}
 
* PutModule should try sending the line to all clients connected to the same network before the user clients {{git|9e3dc0b}}
 
* Honor per-network nick in awaynick and keepnick. {{git|cd1192e}}
 
* Compare floats as floats. {{git|f7919bb}}
 
* Warn if config was saved in too new version. {{git|b90bdf2}}
 
* Backup znc.conf when upgrading ZNC. {{git|689c330}}
 
* Fix CIRCNetwork::ExpandString() {{git|e029dde}}
 
* Backup znc.conf once when updating to networks {{git|b07f37b}}
 
* Fix network module calls {{git|f97a6a8}}
 
* Move log out of extra {{git|57c4ccf}}
 
* Fix code style in Chan.cpp {{git|425b6da}}
 
* rename away to autoaway to help alleviate any ambiguity as to what it does {{git|f604709}}
 
 
* rework SendBuffer fixing an issue where ClearBuffer() nuked the buffer after playing to the first client {{git|793c346}}
 
* rework SendBuffer fixing an issue where ClearBuffer() nuked the buffer after playing to the first client {{git|793c346}}
* Better describe what does away module do. {{git|c13148b}}
 
 
* update module description with something more useful. Additionally added explanation at the top of the header. {{git|4b1b346}}
 
* update module description with something more useful. Additionally added explanation at the top of the header. {{git|4b1b346}}
 
* 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 {{git|002b31d}}
 
* 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 {{git|002b31d}}
* Partyline compiles again! Yay! {{git|3947ea9}}
 
 
* CString should be const& in parameters. {{git|c25e240}}
 
* CString should be const& in parameters. {{git|c25e240}}
 
* Anyone seen my brown paper bag? {{git|a3226c2}}
 
* Anyone seen my brown paper bag? {{git|a3226c2}}
* (Hopefully) fix all remaining module calls {{git|bdf0d19}}
 
* Add CIRCNetwork::ExpandString {{git|fa7ec78}}
 
* Support having a nickname per network {{git|6686c0d}}
 
* Fix ALLMODULECALL() {{git|64ae6f3}}
 
* Fix a crash with OnClientLogin() {{git|3e9ad07}}
 
 
* Remove MODULECALL macro {{git|9e3019d}}
 
* Remove MODULECALL macro {{git|9e3019d}}
* Only run NETWORKMODULECALL from MODULECALL if we have a network {{git|895d766}}
 
* webadmin: Show a field for the network name when someone add's a network {{git|cb604a0}}
 
 
* OnClientDisconnect() always needs a valid user {{git|ff35970}}
 
* OnClientDisconnect() always needs a valid user {{git|ff35970}}
 
* Wrap MODULECALL macros in a do-while {{git|893a631}}
 
* Wrap MODULECALL macros in a do-while {{git|893a631}}

Revision as of 19:29, 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
  • starttls (manually for now)

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 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

  • 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
  • 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.

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 ":"

git short log

  • rework SendBuffer fixing an issue where ClearBuffer() nuked the buffer after playing to the first client 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
  • CString should be const& in parameters. Template:Git
  • Anyone seen my brown paper bag? Template:Git
  • Remove MODULECALL macro 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