Commit Graph

616 Commits

Author SHA1 Message Date
Jeremy Fincher a765308cbd Extracted loadPlugin{Module,Class} behavior into separate functions that can be exported to all modules. 2003-09-18 05:47:42 +00:00
Jeremy Fincher 411289e625 Made privmsgs wrappers stackable. 2003-09-17 23:31:45 +00:00
Jeremy Fincher d227111b0c Added privmsgs.name, privmsgs.channel, and privmsgs.checkChannelCapability. Converted the Topic plugin to use some of them. 2003-09-17 22:38:03 +00:00
Jeremy Fincher 70b80f0622 Added configuration variable to determine whether pipe syntax is accepted. 2003-09-17 19:19:38 +00:00
Jeremy Fincher 41339e80e7 Added an exception for malformed IRC messages and a little more error checking to the string parsing for IrcMsgs. 2003-09-17 18:21:35 +00:00
Jeremy Fincher 5ace516fb1 Reworked some callCommand stuff to centralize some code. 2003-09-17 08:12:59 +00:00
Jeremy Fincher 457de48be4 Made sure no information is leaked with last being able to return private messages. 2003-09-17 08:07:24 +00:00
Jeremy Fincher 71bba5d28c I was setting the prefix for the message to be added to the IrcState object, but I don't know why. We'll find out soon enough. 2003-09-17 07:54:02 +00:00
Jeremy Fincher 288f6179d6 Fixed a bug in the handling of the msg keyword argument in IrcMsg. 2003-09-17 07:53:11 +00:00
Jeremy Fincher e02589c204 Added small optimization. 2003-09-17 07:32:02 +00:00
Jeremy Fincher bd800365ec Made sure to canonicalName the capabilities that are added. 2003-09-17 07:27:11 +00:00
Jeremy Fincher 3016b98ce5 setdefaultcapability and unsetdefaultcapability were behind the times. 2003-09-16 19:01:23 +00:00
Jeremy Fincher 66b64bd002 Oops, forgot to remove this before committing :) 2003-09-15 17:26:00 +00:00
Jeremy Fincher 1abddefa52 Added upgrade script to upgrade old botscripts to the new template. 2003-09-15 17:20:23 +00:00
Jeremy Fincher 35e7d409dd Reorgnized template in preparation for the upgrade script. 2003-09-15 17:08:24 +00:00
Jeremy Fincher feb85382af Made usernames case-insensitive. 2003-09-14 07:05:41 +00:00
Jeremy Fincher 2d0671b6f6 Changed delhostmask to removehostmask and fixed a bug. 2003-09-14 02:52:40 +00:00
Jeremy Fincher 0293a2ba0d Fixed bug in addhostmask. 2003-09-14 02:45:09 +00:00
Jeremy Fincher 36163997d2 Added documentation. 2003-09-13 17:29:56 +00:00
Jeremy Fincher 9e042c5701 Added reconf command. 2003-09-13 15:13:46 +00:00
Jeremy Fincher e31d2d8b85 Added unregister command. 2003-09-13 13:44:13 +00:00
Jeremy Fincher 5a15783e7a Made sure chanop capability supercedes everything else. 2003-09-13 12:59:22 +00:00
Jeremy Fincher 2e82a85e40 Added hostmask command. 2003-09-12 21:16:59 +00:00
Jeremy Fincher 92369c6fde Changed logging of ignorance in PrivmsgRegexp. 2003-09-12 20:20:18 +00:00
Jeremy Fincher 41d266f207 Updated ircdb to have persistent user ids. 2003-09-12 20:06:58 +00:00
Jeremy Fincher a0e0ca2c5f Forgot to check if conf.replyWhenNotCommand is True before deciding not to respond if there's a non-command in the dealio. 2003-09-12 19:15:33 +00:00
Jeremy Fincher 417c1f3ea4 Added a 'from fix import *' 2003-09-12 18:07:04 +00:00
James Vega fac234359a Switch whoami to use conf.replyNotRegistered 2003-09-12 17:08:09 +00:00
Jeremy Fincher 0aa448bfc7 Added keyword option And to commaAndify to allow specifying a word other than 'and' as the last separator. 2003-09-12 08:55:30 +00:00
Jeremy Fincher a169b64740 Registered upkeep with atexit. 2003-09-12 07:48:01 +00:00
Jeremy Fincher da8ee2a758 Fixed bug where the bot would respond with 'there is no such command' if it wasn't the canonical name. 2003-09-12 06:59:41 +00:00
Jeremy Fincher 407da29675 Made more help a little clearer. 2003-09-11 22:21:56 +00:00
Jeremy Fincher 00418143dc Forgot to handle the case where there wasn't any command in morehelp. 2003-09-11 20:18:58 +00:00
Jeremy Fincher 74a9964da2 Updated PrivmsgCommandAndRegexp to also sort its regexps by their method name. 2003-09-11 09:10:42 +00:00
Jeremy Fincher ab88ee0d25 Fixed bug where he'd reply that a command didn't match when regexp methods matched. 2003-09-11 05:31:01 +00:00
Jeremy Fincher 30bedebba3 Oops, broke something, and didn't fix anything. 2003-09-10 19:28:44 +00:00
Jeremy Fincher 7dfdef787a Made the bot not respond to himself when he gets something that's not a command. 2003-09-10 18:52:12 +00:00
Jeremy Fincher 335addc623 Had to move baseplugin.py to src/ for supporting multiple plugin directories. 2003-09-10 18:42:27 +00:00
Jeremy Fincher 176b9b30b6 Fix for RFE #801934: Response in case of non-commands. 2003-09-10 08:32:20 +00:00
Jeremy Fincher e0fae30f46 Now allow multiple plugin directories, RFE #802614. 2003-09-10 06:05:58 +00:00
Jeremy Fincher f95a804fe9 Changed asserts to show the repr() if they fail. 2003-09-09 20:44:58 +00:00
Jeremy Fincher 671648368a Added version check to the template. 2003-09-09 08:04:25 +00:00
Jeremy Fincher 071f3916f8 Most IrcMsg.__hash__ were returning 0, because I was using & instead of ^ 2003-09-08 20:29:02 +00:00
Jeremy Fincher 61a0142265 Added functionality to protect private commands from being @more <nicked>, and fixed the fact that it doesn't work across the Relay. 2003-09-08 19:43:33 +00:00
James Vega 6b3600c1e5 Added replyNotRegistered 2003-09-08 08:46:23 +00:00
Jeremy Fincher f818efa588 Added better logging of message times and prefixName option to IrcObjectProxy.reply. 2003-09-08 08:44:51 +00:00
Jeremy Fincher 6aa3e06402 Raise ValueError in the case of bad input. 2003-09-08 06:10:06 +00:00
Jeremy Fincher 6b72288bc2 A little more error-checking can't hurt. 2003-09-07 09:50:14 +00:00
Jeremy Fincher 315d8710dc Added pipe syntax. 2003-09-07 09:41:47 +00:00
Jeremy Fincher c2f73da997 Made @bug send an email to a private mailing list. 2003-09-07 07:41:56 +00:00
Jeremy Fincher 45044c525d Made it copy the list of messages when <nick> is used. 2003-09-07 06:48:42 +00:00
Jeremy Fincher 017ddb198d Added optional <nick> argument to more command. 2003-09-07 06:42:17 +00:00
Jeremy Fincher 8dc457961a Added a bit better diagnostic to IrcCallback.__call__ except clause. 2003-09-07 06:08:16 +00:00
Jeremy Fincher 757154313e Added first exception for pluralize. 2003-09-07 05:48:20 +00:00
Jeremy Fincher 01d71dc9a3 Changed maxHistory to 1000. 2003-09-07 05:27:24 +00:00
Jeremy Fincher 5ef3d7c5f5 Moved tell and last commands from FunCommands to MiscCommands. 2003-09-07 05:26:18 +00:00
Jeremy Fincher 5db67b0b2c Changed (more) to show the number of remaining messages. 2003-09-07 05:13:58 +00:00
Jeremy Fincher 92b745f42f Added bold to the (more) that gets appended. 2003-09-07 05:08:07 +00:00
Jeremy Fincher 723ff123e1 Fixed bug in more stuff. 2003-09-07 04:56:26 +00:00
Jeremy Fincher 3873b351f4 Added the more command. 2003-09-07 04:05:34 +00:00
Jeremy Fincher 2266faec5f Fixed enable and disable not to allow ValueError through their makeAntiCapability calls. 2003-09-06 18:37:22 +00:00
Jeremy Fincher 5296d51dc2 Changed some asserts to raise ValueError instead. 2003-09-06 18:32:10 +00:00
Jeremy Fincher 91de0b066c Fix bug that didn't allow commands without arguments in onStart. 2003-09-06 08:00:46 +00:00
Jeremy Fincher c0eb527117 Uh, why did I raise? I don't know. Anyway, handle write errors correctly in _sendIfMsgs. 2003-09-06 07:45:47 +00:00
Jeremy Fincher 7d01f9eeb3 Made IrcState handle empty TOPIC correctly. 2003-09-06 02:09:02 +00:00
Jeremy Fincher 3eb86b8869 Made PRIVMSG and NOTICE low-priority so TOPIC would happen before them. 2003-09-06 02:01:44 +00:00
Jeremy Fincher c45e38b537 Added ability to send empty topic messages to get the current topic. 2003-09-06 01:28:12 +00:00
Jeremy Fincher be45eb2e25 Reordered some statements. 2003-09-06 01:13:43 +00:00
Jeremy Fincher 15c115d028 Added a sanity guard to finalEval and changed a debug.printf to a debug.msg. 2003-09-06 01:07:08 +00:00
Jeremy Fincher da329a3196 Changed priority of OwnerCommands to make sure it's ***always*** first. 2003-09-06 01:05:52 +00:00
Jeremy Fincher 5bc445fd5d Added docstring for CapabilityCheckingPrivmsg 2003-09-06 00:37:28 +00:00
Jeremy Fincher 0719bdec92 Added priority stuff for RFE #799899 2003-09-05 19:28:04 +00:00
Jeremy Fincher dd6f5de32e Minor cosmetic changes. 2003-09-05 18:54:35 +00:00
Jeremy Fincher 57146b93cf Added tests for src/ modules. 2003-09-05 18:47:58 +00:00
Jeremy Fincher 7e80782452 Added a test to make sure JOINs happen before WHOs, and changed code to make that the case. 2003-09-05 18:16:51 +00:00
Jeremy Fincher 7b3a62eacf Fixed bug with empty [] in command. 2003-09-05 07:26:55 +00:00
Jeremy Fincher 15f4ad8e60 Converted timeElapsed to use nItems. 2003-09-05 06:50:06 +00:00
Jeremy Fincher bef838bf42 The setattr of the _exec function wasn't right. 2003-09-04 21:46:16 +00:00
Jeremy Fincher dd27e3ae23 Forgot to import utils. 2003-09-04 21:41:31 +00:00
Jeremy Fincher f65829b768 Moved several things from fix.py to utils.py. 2003-09-04 20:42:37 +00:00
Jeremy Fincher 708e8e553b Forget docstring and to remove the old regexp. 2003-09-04 17:33:04 +00:00
Jeremy Fincher 64459c93ec Fixed unColor to be right. 2003-09-04 17:32:27 +00:00
Jeremy Fincher bb91ade49e Updated world.upkeep to return the number of objects that have been collected and updated the upkeep command to return that number. 2003-09-03 17:27:08 +00:00
Jeremy Fincher 9256468885 Changed maxHistory to 300. 2003-09-03 17:17:36 +00:00
Jeremy Fincher f06a552b73 Fixed bug in socketDrivers and made it less likely to happen with a fix in drivers. 2003-09-03 11:06:02 +00:00
Jeremy Fincher 25aca81c9a Added warning about blocking in the morehelp for cvsup. 2003-09-03 09:57:30 +00:00
Jeremy Fincher 0a2d17396e Updated module docstring. 2003-09-03 09:50:04 +00:00
Jeremy Fincher f0816d56a7 Changed bold and mircColor to use the right ender \x0F. 2003-09-03 09:46:06 +00:00
Jeremy Fincher 4c980aeb3e Added nItems. 2003-09-03 09:40:26 +00:00
Jeremy Fincher 9a1959e04d Made _checkNotChannel return False if it's sent in a channel, and checked that return value in the resulting functions. 2003-09-03 09:22:59 +00:00
Jeremy Fincher a764de50ad Added sortBy, which uses the decorate/sort/undecorate pattern to sort by a certain criteria. 2003-09-03 08:51:45 +00:00
Jeremy Fincher 64c97a7c98 Added morehelps for some functions. 2003-09-02 19:55:53 +00:00
Jeremy Fincher 8f475fdcdd The command finder function (I forget the name) would find serendipitously named methods in PrivmsgRegexp, and that's bad. Fixed and added a test for the known case of it. 2003-09-02 07:30:35 +00:00
Jeremy Fincher 83707f81c1 Added normalizeWhitespace. 2003-09-01 18:39:27 +00:00
Jeremy Fincher ebc00fe4d7 Fixed logging of ignores to actually say who's being ignored. 2003-09-01 18:35:00 +00:00
Jeremy Fincher 5c92c85342 Changed socketDrivers to be the default Driver. 2003-09-01 17:35:09 +00:00
Jeremy Fincher 1d77fa5354 Added exponential (well, 0 -> 60 -> 300) reconnect backoff. 2003-09-01 17:31:24 +00:00
Jeremy Fincher 9600ada127 Oops, thought I tested, turns out I didn't. start -> started. 2003-09-01 16:54:43 +00:00
Jeremy Fincher a2d9e58c2a Changed format of reconnect scheduling log. 2003-09-01 16:50:56 +00:00
Jeremy Fincher 1cf1e022a2 Removed some debugging stuff (clearing msg.prefix before sending it) and added logging to match asyncoreDrivers and twistedDrivers. 2003-09-01 16:14:04 +00:00
Jeremy Fincher 2b6f989cb1 Removed useless line. 2003-09-01 15:53:29 +00:00
Jeremy Fincher 2bd4a88d76 Made it reset the IRC object before reconnection, and made it catch connect errors. 2003-09-01 15:46:10 +00:00
Jeremy Fincher 57b21b6394 Added line for socketDrivers. 2003-09-01 15:22:04 +00:00
Jeremy Fincher 35aff3f642 Added a sleep so we don\'t spin if we're the only driver. 2003-09-01 08:13:52 +00:00
Jeremy Fincher 38d1896da3 Changed to make sure every SocketDriver times out in a conf.poll length. 2003-09-01 08:11:24 +00:00
Jeremy Fincher 5313428ca7 Initial checkin. 2003-09-01 08:06:55 +00:00
Jeremy Fincher 78d32f1be9 Forgot the world.upkeep periodic event. 2003-09-01 07:15:18 +00:00
Jeremy Fincher 85caaf6696 Fixed bug in automatic canonicalNaming of non-commands. 2003-09-01 06:47:22 +00:00
Jeremy Fincher d1677d4192 Changed regexp in Privmsg to be more flexible. 2003-09-01 05:59:58 +00:00
Jeremy Fincher e6bfc72b77 Minor changes, added some (commented-out) debug.printfs. 2003-09-01 05:59:34 +00:00
Jeremy Fincher 30d3747f1d Added utils.pluralize. 2003-09-01 05:42:35 +00:00
Jeremy Fincher 7795e6bbf3 Fixed help to work with plugin names. 2003-08-30 19:52:56 +00:00
Jeremy Fincher 442392b5ba Guarded inserts into sys.path. 2003-08-30 19:20:08 +00:00
Jeremy Fincher 1cd7ccbfa4 Found bug in perlReToPythonRe and fixed it. 2003-08-30 18:39:19 +00:00
Jeremy Fincher 21879d0723 Turned off color if on a windows box. 2003-08-30 05:08:15 +00:00
Jeremy Fincher b2436f4a99 Changed %70 to %68 for safety and lining up reasons. 2003-08-30 04:54:35 +00:00
Jeremy Fincher f3b2ea905d Fixed our code that caused a bug in textwrap.py. 2003-08-30 02:52:35 +00:00
Jeremy Fincher 55384617d4 Converted schedule over to heapq from bisect. 2003-08-29 14:18:18 +00:00
Jeremy Fincher b29da50397 Hopefully got the prefix thing right. 2003-08-29 08:09:09 +00:00
Jeremy Fincher 900fa495f8 Changed default on allowEval to False, for safety reasons. 2003-08-29 07:23:14 +00:00
Jeremy Fincher 89a0d12cce Added tracking of how many commands have been processed. 2003-08-29 07:08:03 +00:00
Jeremy Fincher 376e4043f0 Added commandsOnStart to make PyChecker happy. 2003-08-29 00:34:05 +00:00
Jeremy Fincher 4763cb4daa Made expect even prettier. 2003-08-28 23:03:09 +00:00
Jeremy Fincher 3c8a7c2387 Used textwrap to make things prettier. 2003-08-28 22:55:22 +00:00
Jeremy Fincher c81c452306 Added expectWithDefault. 2003-08-28 17:55:47 +00:00
Jeremy Fincher a0bf562d7a Redid startup/configuration junk. 2003-08-28 16:33:45 +00:00
Jeremy Fincher aabd095239 Moved world.version to conf.version. 2003-08-28 13:59:07 +00:00
Jeremy Fincher b572562cb3 Added utils.wrapLines and wrapped the lines of each plugin's example. 2003-08-27 16:25:43 +00:00
Jeremy Fincher adbd4fd23b Guarded the sys.path.insert. 2003-08-27 07:46:19 +00:00
Jeremy Fincher 9550971042 Added ability for commands to raise callbacks.CannotNest if they are not nestable. 2003-08-27 07:45:48 +00:00
Jeremy Fincher 51a474dd14 Added verbose log for spawning CommandThreads. 2003-08-27 01:39:58 +00:00
Jeremy Fincher 8f4bc0c325 Fixed possible error (uncovered during test) in Irc.die. 2003-08-26 18:14:59 +00:00
Jeremy Fincher 58d444b571 More documentation. 2003-08-26 17:18:35 +00:00
Jeremy Fincher 09c77aa234 Can catch re.error instead of sre_constants.error. 2003-08-26 17:08:46 +00:00
Jeremy Fincher b1a392c691 Made the driver reset the Irc on disconnection, not connection. 2003-08-26 16:39:42 +00:00
Jeremy Fincher c38099550e Made IrcState keep history persistent through resets. 2003-08-26 16:39:23 +00:00
Jeremy Fincher b1e6cc53ac Added a reset method to RingBuffer and queue. 2003-08-26 16:38:28 +00:00
Jeremy Fincher ed92fcad2b Changed to make 'too long a message' error messages less inaccurate. 2003-08-26 15:03:34 +00:00
Jeremy Fincher ab562416bf Added getopt.GetoptError to exceptions to return help on. 2003-08-26 13:44:32 +00:00
Jeremy Fincher b8550ab31d Made the driver die in Irc.die. 2003-08-26 13:06:13 +00:00
Jeremy Fincher 28d81d656d Made it handle improper arguments correctly; I never noticed that it wasn't doing it already. 2003-08-26 12:44:49 +00:00
Jeremy Fincher 5289f6bc75 Renamed conf.timestampFormat to conf.logTimestampFormat and added conf.humanTimestampFormat. 2003-08-26 11:15:15 +00:00
Jeremy Fincher 79fe7d8014 Added thread, to make threaded commands in an unthreaded module. 2003-08-25 20:19:42 +00:00
Jeremy Fincher 5630782e85 Made CommandThread work with non-instancemethods. 2003-08-25 19:50:46 +00:00
Jeremy Fincher d73abebb36 Made @karma++ not return [karma++]. 2003-08-25 07:23:36 +00:00
Jeremy Fincher e18bc38676 Fixed asserts to use the new 'all' predicate in fix.py. 2003-08-23 12:11:46 +00:00
Jeremy Fincher a7826bdc34 Added any/all sequence predicates. 2003-08-23 12:08:14 +00:00
Jeremy Fincher 6c26e4e28f Made the response of the upkeep command more useful. 2003-08-23 11:41:25 +00:00
Jeremy Fincher 68b9b5f378 Guard against an error on exit. 2003-08-23 10:59:28 +00:00
Jeremy Fincher f0b533098c Added a return value to shrinkList, the number of things removed from the list. 2003-08-23 09:07:45 +00:00