Commit Graph

625 Commits

Author SHA1 Message Date
Jeremy Fincher
cae8905594 RFE #807340: OwnerCommands command for setting conf variables. 2003-09-22 08:36:12 +00:00
Jeremy Fincher
90d1a55f6c Had an addCapability where I should've had a removeCapability. 2003-09-22 02:14:40 +00:00
Jeremy Fincher
f13aa41e1b Added error reporting for unmet capability checks. 2003-09-19 06:24:38 +00:00
Jeremy Fincher
d6854355be Added error reporting for unmet capability checks. 2003-09-19 05:57:46 +00:00
Jeremy Fincher
1ad12d2fcf Fixed an oversight. 2003-09-18 10:25:20 +00:00
Jeremy Fincher
4ab9dc7718 Added changeusername command and fixed the framework so tests could run. 2003-09-18 07:52:34 +00:00
Jeremy Fincher
476ef32f47 Changed conf.py to remove some useless files (rawlogfile and ignoresfile weren't used) and changed ircdb to do the os.path.join itself. 2003-09-18 07:44:25 +00:00
Jeremy Fincher
3af8f1c790 Added private and action keywords to IrcObjectProxy.reply and converted FunDB to use them. 2003-09-18 07:26:21 +00:00
Jeremy Fincher
a16bb77cba Extracted loadPlugin{Module,Class} behavior into separate functions that can be exported to all modules. 2003-09-18 05:52:55 +00:00
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