Revision history for POE-Component-Server-IRC
1.62 Tue Dec 28 18:56:15 GMT 2021
- Add TLSv1_3 definition
1.61 Wed Mar 24 21:38:15 GMT 2021
- Defanged debug for bmask test
1.60 Tue Aug 25 21:30:09 BST 2020
- Fixed crypt() issues with OpenBSD
1.59 Thu Aug 20 16:58:31 BST 2020
- Fix a bug in peer TMODE handling
1.58 Tue Nov 26 20:51:37 GMT 2019
- Pod fixes
- capability tests tweaked to avoid race
conditions
- Added SSL test where client doesn't provide
a certificate
- BMASK slight refactor so it doesn't announce
masks that are already applied
1.57 Thu Aug 29 11:45:24 BST 2019
- Account for race conditions in two tests
1.56 Thu Aug 29 10:47:56 BST 2019
- Fix sprintf warnings
- Fix test failures due to OS differences
- Resolve issues with perl v5.10.1 (possibly others)
1.55 Thu Aug 22 10:54:19 BST 2019
- Added Net::CIDR support for netmasks
- Full IPv6 support for all connections/listeners
- Only supports TS6 protocol for server connections
- major internal refactoring to accomodate this
- Added TBURST for bursting channel topics
- Added AWAY burst for users' away messages
- Removed GLINE and added DLINE/UNDLINE, XLINE/UNXLINE
- RKLINE is now local only and not propagated
- Added UNRKLINE for removing RKLINEs
- Added IRCv3.x capability negotiations CAP cmd
- added 'away-notify', 'invite-notify' 'multi-prefix'
- added 'userhost-in-names', 'chghost', 'account-notify'
- added 'extended-join'
- Added bcrypt passwd support for OPER passwords
- Added bcrypt passwd support for auth passwords
- Fixed problem with pmkpasswd utility
- Updated the included x509 cert and key
- OPERWALL has been removed, replaced with GLOBOPS
- Refined LOCOPS for consistency with GLOBOPS
- Implemented WHOWAS command
- Added RESV/UNRESV for reserving nicknames/channels
- Added ENCAP peer command
- Implemented SVSJOIN, SVSHOST, SVSNICK, SVSTAG, SVSPART,
SVSMODE and SVSKILL services commands
- Added methods for defining services hosts
- Implemented KNOCK command with throttling
- Added account and nick registration support
- LIST command now supports SAFELIST and ELIST filters
- Implemented TRACE and ETRACE commands
- Implemented pseudo commands/service aliases
- NOTICEs sent for server operations with delivery to
OPERs based on umodes. New snotice event.
- Major overhaul of TLS/SSL. Server and oper certificate
fingerprint authentication added.
- Added channel modes +C, +O, +M, +N, +R, +S, +T +u and +L
- Implemented WATCH command
- Implemented CLOSE command
- Added daemon_server_join() for forcing channel joins
- Added daemon_server_realops() for sending server notices
- Added antispam features for exit messages and nick changes
- Added SET command for adjusting tunable settings
- Added HELP command
- Added +X umode See *LINE expiration notices (oper only)
- Start of hidden servers support (not feature complete)
1.54 Fri Nov 25 15:36:51 UTC 2011
- Resolve problem with remote (versus localhost) clients
- Fix shutdown on Win32
1.53 Fri Oct 7 15:35:27 UTC 2011
- Fix channel mode handling
- Some configuration options were not being accepted case-insensitively
- The SQUIT commands was not working
1.52 Thu Oct 6 11:50:38 UTC 2011
- Fix public messages for non-spoofed clients (thanks BinGOs!)
1.51 Sat Aug 27 04:32:12 GMT 2011
- Fix authentication for clients connecting from localhost
1.50 Thu Jun 2 02:53:21 GMT 2011
- Fix invalid method call in Auth plugin when there's no ident response
1.49 Wed May 25 06:23:32 GMT 2011
- Fixed a bug were unsuccessful client registration would leave the
client's nickname "already in use" when later clients request it.
- Backend.pm: Moved client authentication into an Auth plugin.
- Backend.pm: Be backwards-compatible by not doing "keys $hashref"
1.48 Sun May 22 17:12:03 GMT 2011
- Don't enable debug output if a plugin enables raw events
- Backend.pm: Fix issues with listening on the same port on multiple
addresses. Also don't emit an ircd_listener_add event when we fail to
add a listener.
- croak() instead of warn() when add_peer() is called wrong
- Document peer name argument to ircd_connected
- Depend on IRC::Utils 0.10 for an improved parse_mask()
- Add arguments to ircd_socketerr describing the error
- Fix broken chomping of output for ircd_raw_output
- IRC.pm: Emit ircd_daemon_error on failed peer registration
- Depend on PoCo-Client-DNS and PoCo-Client-Ident again, since most
people will want them, and authentication is enabled by default.
1.47 Sat May 21 00:14:59 GMT 2011
- Only load POE::Filter::Zlib::Stream when using ziplinks
- Backend.pm: Document create()'s plugin_debug and options parameters
- Add ircd_raw_(input|output) to the backend, and use them to implement
a 'debug' option for the frontend.
- IRC.pm: Only EAT events from clients, not plugins, for extensibility.
1.46 Fri May 20 12:12:08 GMT 2011
- Backend.pm: Document the 'idle', 'antiflood', and 'usessl' parameters
to add_listener()
- Depend on POE::Component::Syndicator 0.04 so that 'register' with no
arguments will work.
1.45 Fri May 20 09:23:17 GMT 2011
- Inherit from POE::Component::Syndicator
- Make the DNS/Ident dependencies optional, and die if their use is
requested when they are unavailable
- Turn the OperServ subclass into a plugin instead
- Vastly improved the layout of the documentation
1.44 Mon Apr 4 20:44:51 GMT 2011
- Fix to work with latest IRC::Utils
1.43 Sun Apr 3 02:57:40 GMT 2011
- Removed most of Common.pm in favor of IRC::Utils
- Use strftime() instead of Date::Format
1.42 Fri Nov 5 12:30:25 CET 2010
- Fix race condition in t/ts_02_multi.t
1.41 Sat Oct 30 22:25:55 GMT 2010
- Converted the Changes file to something human-writable (and more
human-readable)
- Removed the unused Pipeline.pm file
- Migrate distribution to Dist::Zilla
- Use Object::Pluggable instead of POE::Component::Pluggable
- Changed POE::Component::IRC to a test (instead of runtime) dependency
- Added some documentation to the distribution about the IRC server
protocols we implement
- The compress link test was getting skipped unconditionally. Fixed.
- The SSL test was not getting run. Enabled it.
- Remove POE::Component::Server::IRC::Test::Plugin and the associated
4_test_plugin.t test. That sort of testing is covered by
Object::Pluggable's test suite.
1.40 Fri Oct 23 16:03:38 CET 2009
- Don't send NICK messages more than once when we're in channels
- Updated Makefile.PL with newer Module::Install directives
1.38 Tue Jan 27 13:21:14 GMT 2009
- We are now using PoCo-Pluggable for plugin stuff
- Fixed a race condition where two connecting clients could obtain the
same nickname
1.36 Sat Jan 24 22:13:54 GMT 2009
- Fixed RT#42760 reported by Hinrik
- Added the LICENSE file
1.34 Wed Oct 1 11:46:50 GMT 2008
- Moved to full M::I Makefile.PL
- Fix and regression test for RT #39701 reported by Hinrik
1.32 FriMay 9 13:47:35 GMT 2008
- Moving author tests to xt/, updated prereqs list, indentation tidy to
OperServ.pm
- Removed MANIFEST.SKIP
- Updated and added LICENSE information
- Fixed some distribution problems
1.30 Tue Mar 11 12:32:17 GMT 2008
- Applied a patch to OperServ from eggzeck for enhancements.
1.28 Wed Feb 20 16:39:30 GMT 2008
- Added pmkpasswd utility
- Forgot to add prereq for Crypt::PasswdMD5
1.26 Sat Feb 16 13:50:36 GMT 2008
- Added crypt/md5 encryption for OPER passwords. New funcs in ::Common,
mkpasswd and chkpasswd. Updated common test. Thanks to nanonyme for
the suggestion.
1.24 Thu Nov 1 14:00:41 GMT 2007
- Update Module::Install to 0.68
1.22 Sun Sep 23 10:13:14 GMT 2007
- Added config option to enable oper only RPL_WHOISACTUALLY as
suggested by Kaitlyn Parkhurst
1.20 Thu Sep 20 17:56:26 GMT 2007
- Removed executable property from Makefile.PL
- Updated some of the prereqs in Makefile.PL
1.18 Sat Aug 25 18:01:14 GMT 2007
- Applied a patch from lunartear to fix PONG responses
1.16 Thu Aug 23 16:16:45 GMT 2007
- add_listener() was using BindAddr instead of BindAddress when calling
SocketFactory. Spotted by lunartear
1.14 Thu Aug 23 15:53:52 GMT 2007
- Updated the SSL certificate and key
- Added 'ircd_listener_failure' output event.
1.12 Fri Jun 29 10:28:37 GMT 2007
- Documentation fixes. Added state_(nicks|chans|peers) methods and
documented.
0.11 Tue Feb 13 15:57:17 GMT 2007
- Refactored the MagNET Oper hacks. Should all work as expected now.
1.10 Tue Feb 13 11:53:44 GMT 2007
- Added MagNET Oper hacks.
- Added new test, Test::Kwalitee
1.09 Mon Jan 29 14:52:17 GMT 2007
- Kwalitee fixes.
1.08 Tue Jan 23 09:58:13 GMT 2007
- Fixed a problem with the module on perl-5.6.1
1.07 Fri Dec 29 11:09:49 GMT 2006
- PoCo-IRC TOPIC bug caused problems with topic test. Raised poco-irc
prereq to 5.18.
1.06 Sat Dec 2 15:46:33 GMT 2006
- Automagic registration of parent sessions added, as per buu's
suggestion
1.05 Sun Nov 19 14:29:24 GMT 2006
- Fixed problem with LIST and topics. Fixed TOPIC command as well.
Added a test. Reported by eggzeck"
1.04 Thu Nov 16 09:25:31 GMT 2006
- Documentation fix for ::Pipeline, spotted by Martijn van Beers.
- Made the compresslink test skip on *bsd systems, which currently have
issues that test.
- Problem with 472 numeric response fixed. Reported by eggzeck.
1.03 Thu Oct 26 12:14:17 GMT 2006
- Ported parse_user() from PoCo-IRC-Common. Ported the new improved
shiny parse_mode_line() from the same source.
1.02 Fri Sep 29 08:57:44 GMT 2006
- Fixed RT #21769. Sppofed nicks now have a default ircname set.
Reported by David Serrano
1.01 Wed Sep 27 10:12:39 GMT 2006
- Ensured all modules had 'use strict'
1.00 Tue Sep 26 09:09:22 GMT 2006
- Removed Build.PL and bumped versions for release.
0.99_05 Sat Sep 16 15:43:54 GMT 2006
- Updated to use Module::Install
0.99_04 Wed Sep 6 17:43:39 GMT 2006
- Added OperServ subclass once again. New and improved and shiny. With
a test.
- Added documentation to OperServ and bumped the version numbers.
0.99_03 Sun Sep 3 17:16:55 GMT 2006
- Added pod and pod coverage tests. Fixed documentation accordingly.
0.99_02 Mon Aug 28 18:01:25 GMT 2006
- Fucking test was smurfed, still had PoCo-Server-IRC-OperServ in the
simple test. Fucktard.
0.99_01 Mon Aug 28 17:30:21 GMT 2006
- IRC.pm is now a subclass of Backend.
- Updated the documentation in Plugin.pm, removed references to USER
events as they aren't applicable.
- Added compressed links using POE::Filter::Zlib to ::Backend.
- Fixed a bug in the auth system by switching to using Ident::Agent.
- Added simpleclient.pl for testing purposes. Backend: now has
connection idle tracking. Daemon: implemented nearly all IRC client
commands, ( lacking STATS, LINKS, CONNECT, OPER, KILL, etc. ),
extended 2_pocosi.t to suit.
- Implemented OPER, KILL
- Server to server code written and debugged against Hybrid-7.0 \o/
- Added REMOVE command a la Freenode hyperion, which is a forced PART.
- Added test script for SSLify with associated key/cert combo
- We now generate multiple RPL_NAMES if the line length exceeds 510
characters.
- RPL_WHOISCHANNELS automagically splits on long lines now
- More documentation, including SYNOPSIS.
- Refactored INVITE code and added handler for peer INVITE messages
- Implemented GLINE, KLINE, RKLINE and UNKLINE peer and oper commands.
- Implemented spoofed SJOIN command, so spoofed nicks can reset
channels. All applicable commands should multiline if output lines >
510 chars now. Makefile.PL will detect previous poco-server-irc
installs and warn of API changes.
- Implemented MODES, the maximum number of non-simple chanmodes that
can be applied in one go. Numerous tweaks and fixes. Still haven't
got to the bottom of the chan desyncs with half-ops.
- Fixed a bug in SJOIN code. Tested using 60 flood bots. Favourable
results.
- Fixed SQUIT, it was working fine for a leaf-node, but not as a hub.
- Reimplemented PRIVMSG/NOTICE handling for both client and peer. Now
supports exactly the same syntax as Hybrid.
- Changes to UMODE code; Implemented LOCOPS, WALLOPS and OPERWALL
commands for client/peer; Added WALLOPS server API command;
- Implemented +D umode which is channel deafness, ho-hum.
- Added ACCEPT command as related to CALLERID.
- Implemented CALLERID (+Gg).
- Added a README
0.3 Thu Aug 25 14:06:01 GMT 2005
- Amended POD to link the ThreatNet web site.
- Added use strict and caught and fixed a lot of typos/scoping
problems.
0.02 Mon Jun 20 09:50:14 GMT 2005
- First CPAN release