Commit Graph

2671 Commits

Author SHA1 Message Date
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
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
Jeremy Fincher
53d883710e Added unCommaThe function. 2003-08-23 07:57:04 +00:00
Jeremy Fincher
0743b3eb0a Moved commandArgs outside of __init__. 2003-08-23 06:05:01 +00:00
Jeremy Fincher
bdd66dbd5e Removed comments; removed zipiter (no one used it, and itertools.izip is available now). Added docstrings to all remaining non-docstringed functions. 2003-08-23 05:53:20 +00:00
Jeremy Fincher
f9413129a9 Satisfying PyChecker is my life's goal. 2003-08-23 05:14:16 +00:00
Jeremy Fincher
147d5cf6da Finally got the persistent configuration working with the Relay module (though don't try to reload it :)). 2003-08-23 04:42:04 +00:00
Jeremy Fincher
8e068ce8c0 Made configuration commands persistent, yay! 2003-08-22 23:15:29 +00:00
Jeremy Fincher
a11873a260 Must've missed some sliceIndices conversion. 2003-08-22 23:10:08 +00:00
James Vega
ab93b9072f Committing jemfinch's commaAndify fixes 2003-08-22 21:31:17 +00:00
Jeremy Fincher
f98d1f9db5 Small refactoring (the calm before the storm, so to speak) to start putting some more config stuff in conf.py. 2003-08-22 07:20:31 +00:00
Jeremy Fincher
94e25c6c17 Forgot to guard morehelp command against None __doc__s. 2003-08-22 07:00:07 +00:00
Jeremy Fincher
710dcd71c6 Added the capability to specify a mask for the whois helper. 2003-08-21 16:53:19 +00:00
Jeremy Fincher
6bfd991947 commaAndified timeElapsed. 2003-08-21 16:31:11 +00:00
Jeremy Fincher
4858770ee7 Ew, modified the original argument in utils.commaAndify. 2003-08-21 11:47:43 +00:00
Jeremy Fincher
ca646716b1 Removed spaces at the end of lines. 2003-08-20 16:26:23 +00:00
Jeremy Fincher
01eb6934ef Added function commaAndify to turn a list of strings into a proper English foo, bar, and baz string. 2003-08-20 09:24:57 +00:00
Jeremy Fincher
06c36d283a Change to satisfy PyChecker. 2003-08-20 07:19:56 +00:00
Jeremy Fincher
137f05b2e8 Made supybot report SyntaxError to the user. 2003-08-20 07:19:20 +00:00
Jeremy Fincher
3e58971fe6 Line shortened. 2003-08-19 19:02:59 +00:00
Jeremy Fincher
2e28200a41 Fixed extra [y/n] options in expect. 2003-08-19 13:36:14 +00:00
Jeremy Fincher
fb07813a55 Added docstring for PrivmsgCommandAndRegexp 2003-08-19 10:46:52 +00:00
Jeremy Fincher
230020ad5f Removed sliceIndices and replaced all uses with slice.indices. Yay 2.3 2003-08-19 10:41:19 +00:00
Jeremy Fincher
7fd35a1071 Made some changes to satisfy PyChecker. 2003-08-19 10:38:45 +00:00
Jeremy Fincher
ef4b6d94a8 Removed some apostrophes so syntax highlighting works in emacs. 2003-08-17 21:29:50 +00:00
Daniel DiPaolo
83c44eecab * added new utility, findBinaryInPath which searches the PATH for a specific binary
* removed getSpellBinary, and replaced with findBinaryInPath calls
2003-08-17 20:09:09 +00:00
Jeremy Fincher
62fbcccdf4 Removed enumerate. 2003-08-17 08:43:23 +00:00
Jeremy Fincher
e3364e0fdd string_escape is better than unicode_escape. 2003-08-17 06:28:05 +00:00
Jeremy Fincher
b299a564ce Added a noneFill parameter to group. 2003-08-17 06:24:58 +00:00
Jeremy Fincher
00290faca9 Fixed a possible bug in the ArgumentError handler and replaced my SyntaxError(Error) stupidity. 2003-08-17 06:24:17 +00:00
Jeremy Fincher
b78cabaed5 Wrote some more tests for FunCommands; found some bugs in the process. 2003-08-17 02:02:53 +00:00
Jeremy Fincher
1d9f7f331c Added a little del to the reload/unload stuff 2003-08-15 05:39:35 +00:00
Jeremy Fincher
9db6ace58b Added upkeep command. 2003-08-15 02:56:41 +00:00
Jeremy Fincher
46cf8bb6fd Tyop. 2003-08-14 18:53:22 +00:00
Jeremy Fincher
936c1fd85e Re-enabled ircutils.nick under a new name (IrcString) and for a different purpose (to make IrcDict and IrcSet work properly). 2003-08-14 14:15:07 +00:00
Jeremy Fincher
c4005a115a Made the reload and load commands also update linecache, so tracebacks are correctly line-numbered and whatnot. 2003-08-14 12:01:37 +00:00
Jeremy Fincher
622f96c8d4 Made the old callbacks die before the new callbacks are loaded. 2003-08-13 05:41:48 +00:00
Jeremy Fincher
2dd5a522d3 Changed nick/user/host of server hostmask to be the hostmask itself. Also disabled _ircmsg import for the time being. 2003-08-12 19:12:44 +00:00
Jeremy Fincher
2a4c2ea185 Nuked ircutils.nick. Good riddance. 2003-08-12 19:12:12 +00:00
Jeremy Fincher
199de7e71a Changed the signature of canonicalColor to return an (fg, bg) pair. Also accepts a shift parameter which is the number of bits to >> the hash of the string. Both are used in Relay.py. 2003-08-12 08:50:28 +00:00
Jeremy Fincher
39cce9c3af Changed from 's.find(x) != -1' to 'x in s' 2003-08-11 17:16:03 +00:00
Jeremy Fincher
2760c1bce0 Added group and test for group. 2003-08-11 07:12:41 +00:00
Jeremy Fincher
eb6fb90801 Removed the immutability checks in IrcMsg. 2003-08-11 06:57:17 +00:00
Jeremy Fincher
2c87c183b2 Optimized IrcMsg.__str__ slightly. 2003-08-11 05:08:33 +00:00
Jeremy Fincher
5f7656c781 Made throttling properly respect world.testing. 2003-08-11 05:07:07 +00:00
Jeremy Fincher
f203bca787 Added ability to define regexp callbacks in a mostly-Privmsg environment. 2003-08-11 03:34:54 +00:00
Jeremy Fincher
60fa81c268 Removed nick hack in IrcMsg; I never liked it anyway. 2003-08-10 11:25:03 +00:00
Jeremy Fincher
f9e6777f08 Added more docstrings. 2003-08-10 10:45:44 +00:00
Jeremy Fincher
031c81e937 Added ilen, a function to return the length of an iterator. 2003-08-07 06:13:11 +00:00
Jeremy Fincher
36996dd3cf Updated stuff for 2.3 to break 2.2 compatibility :) 2003-08-07 02:48:44 +00:00
Jeremy Fincher
29f0b638b2 Added some more documentation. 2003-08-02 16:48:43 +00:00
Jeremy Fincher
ade9514212 Added more documentation. 2003-08-02 06:22:13 +00:00
Jeremy Fincher
5ec5b997ca Made safeArgument handle colors correctly. 2003-08-01 23:48:02 +00:00
Jeremy Fincher
a4b6ee2028 Added caching for __str__, __repr__, and __len__. 2003-08-01 14:23:54 +00:00
Jeremy Fincher
3b5825ebe3 Removed use of eval from the tokenizer. 2003-07-31 06:45:03 +00:00
Jeremy Fincher
1cae9664a7 Upgraded to 2.3. 2003-07-31 06:20:58 +00:00
Jeremy Fincher
b7cb48b19b Added flip function. 2003-07-30 21:47:21 +00:00
Jeremy Fincher
ad3fb443a6 Bugfix in mircColor. 2003-07-30 11:04:59 +00:00
Jeremy Fincher
c6a8cebc2d Slight optimization in getCallback. 2003-07-30 11:04:29 +00:00
Jeremy Fincher
51ab17ad98 One line fix that's been in my code for awhile but not committed. 2003-07-29 00:58:57 +00:00
Jeremy Fincher
7a281d5e4b Fixed some mircColors indiscretions and added a test for the new (proper) behavior. 2003-07-25 04:00:38 +00:00
Jeremy Fincher
5644c8da57 Changed some mircColor stuff. 2003-07-23 15:24:05 +00:00
Jeremy Fincher
2a52871fcc Tweaked mircColor (yeah, I'm anal beyond all reason) 2003-07-23 15:13:30 +00:00
Daniel DiPaolo
0e16b70f8b * added mircColor() function to ircutils as well as mircColors dict
* added test cases for this function
* implemented nick coloring for Relay
2003-07-23 05:29:16 +00:00
Jeremy Fincher
ebc3533275 This file was hanging back on protocol since it's been less used. 2003-07-23 02:16:06 +00:00
Jeremy Fincher
c8fbb4581b Made the part command behave sensibly in the face of an empty argument list. 2003-07-23 02:12:17 +00:00
Jeremy Fincher
a7daba5eb7 Added some more documentation (though the work is probably not done). 2003-07-21 06:10:35 +00:00
Jeremy Fincher
e27f7e555c Had to make it handle -O and -p in the getopt jazz. 2003-06-18 18:44:16 +00:00
Jeremy Fincher
6ead5d2692 Added psyco option, -O 2003-06-18 18:39:40 +00:00
Jeremy Fincher
5f8c054805 TypoError 2003-06-18 18:37:52 +00:00
Jeremy Fincher
1928b2f70d Added psyco option, -O 2003-06-18 18:35:37 +00:00
Jeremy Fincher
725da854ce TyopError 2003-06-18 07:19:27 +00:00
Jeremy Fincher
5c0ae0ecbf Changed moduleof to use the canonicalName of the command. 2003-06-18 06:05:33 +00:00
Jeremy Fincher
a44ecb4aa0 Made the reliance on conf even less user-intensive. 2003-06-16 07:43:18 +00:00
Jeremy Fincher
f8a54c4872 Fixed irclib.Channel to use ircutils.nick on its stuff. 2003-06-16 04:56:06 +00:00
Jeremy Fincher
d9b994f6fe Fixed bug in Irc.reset. 2003-06-06 04:47:18 +00:00
Jeremy Fincher
51cb83d3e6 Made logging for rate limiting more informative. 2003-06-05 10:00:31 +00:00
Jeremy Fincher
4c6e33b72d Added rudimentary profiling support. 2003-06-04 05:23:55 +00:00
Jeremy Fincher
90409d0e19 Braino. 2003-06-04 04:48:49 +00:00
Jeremy Fincher
d810fe37b0 TypoError. 2003-06-04 04:45:46 +00:00
Jeremy Fincher
bbb46497b5 TypoError. 2003-06-04 04:44:19 +00:00
Jeremy Fincher
93df6be0c3 TypoError. 2003-06-04 04:42:32 +00:00
Jeremy Fincher
f2ae4b5f34 Finally found the underlying cause of the relaynames bug. 2003-06-04 03:56:59 +00:00
Jeremy Fincher
b1a1c85a17 Fixed bug in queue.__{get,set}item__. 2003-06-03 03:24:06 +00:00
Jeremy Fincher
a35bf21b4e Made sure utils.timeElapsed doesn't go all decimal on me. 2003-06-03 03:18:14 +00:00
Jeremy Fincher
f35c9e8d05 Had wrong channel argument in IrcStat.do332. 2003-06-02 07:27:43 +00:00
Jeremy Fincher
ec8011347c Fixed bug in Channel. 2003-06-02 07:21:08 +00:00
Jeremy Fincher
76539b36ef Made it so if IndexError is raised, the data structure isn't modified in __delitem__ 2003-06-02 06:47:53 +00:00
Jeremy Fincher
00d186cc42 Forgot underscore in isNick. 2003-06-02 05:31:13 +00:00
Jeremy Fincher
66497f1f4e Added __delitem__ (untested, though) 2003-05-29 17:06:04 +00:00
Jeremy Fincher
f40780156e Added IrcCommandDispatcher as base class for IrcCallback and IrcState. 2003-05-29 17:03:42 +00:00
Jeremy Fincher
db4495111c Changed a debug.printf to a debug.msg. 2003-05-29 16:37:03 +00:00
Jeremy Fincher
97ce807088 Fixed a slight ugliness, use dir() instead of __dict__. 2003-05-29 16:36:34 +00:00
Jeremy Fincher
328cdf2c0e Fixed bug in isNick that was causing the Relay.relaynames bug. 2003-05-28 21:32:36 +00:00
Jeremy Fincher
9b56122a8e Fixed quit function. 2003-05-27 20:07:58 +00:00
Jeremy Fincher
82c2a83c91 Fixed quit function. 2003-05-27 20:06:05 +00:00
Jeremy Fincher
1e910d3948 Added quit function. 2003-05-27 20:03:37 +00:00
Jeremy Fincher
c0c5101cd3 Changed to only strip \r\n from right side of last argument. 2003-05-21 17:52:23 +00:00
Jeremy Fincher
09340376cb Changed utils.timeElapsed to use just a seconds instead of a now/then argument. 2003-05-20 15:37:25 +00:00
Jeremy Fincher
345f819e7a Changed reload to not unload the module if there's an error in loading. 2003-05-19 13:47:19 +00:00
Jeremy Fincher
737f35c99d Removed rate limiting during testing. 2003-04-29 13:13:55 +00:00
Jeremy Fincher
26a457920e Added slice support to queue. 2003-04-29 13:00:43 +00:00
Jeremy Fincher
71bd193c16 Turned off superreload command. 2003-04-29 13:00:04 +00:00
Jeremy Fincher
54788a643a Some slightly new helper functions and stuff. 2003-04-29 07:37:54 +00:00
Jeremy Fincher
ce6b03d52f Added a few important helper methods. 2003-04-29 07:36:18 +00:00
Jeremy Fincher
6eacfb6c26 Changed IrcState.history to a RingBuffer instead of a MaxLengthQueue. 2003-04-22 11:18:57 +00:00
Jeremy Fincher
ff54eecefc Swapped implementation of MaxLengthQueue. 2003-04-22 11:16:03 +00:00
Jeremy Fincher
fe2f2c1ac0 Swapped implementation of MaxLengthQueue. 2003-04-22 11:15:15 +00:00
Jeremy Fincher
8fa7c95067 Somehow these didn't get updated when I moved queue to structures. 2003-04-22 11:13:03 +00:00
Jeremy Fincher
25daf96a9c Enabled __slots__ on RingBuffer. 2003-04-22 11:02:39 +00:00
Jeremy Fincher
45b4d95184 Moved data structures from fix to structures; changed implementation of MaxLengthQueue to a RingBuffer. 2003-04-22 11:00:28 +00:00
Jeremy Fincher
ca4ad3882f Initial import. 2003-04-22 08:27:11 +00:00
Jeremy Fincher
5aa9beacfb Forgot to import world. 2003-04-21 06:17:19 +00:00
Jeremy Fincher
545f675ae4 Forgot to add prefix to IrcMsg in two functions. 2003-04-21 06:12:57 +00:00
Jeremy Fincher
b8e3396d6b Added some (now commented out) debugging printfs. 2003-04-21 05:54:38 +00:00
Jeremy Fincher
35d0a3cb22 Decreased size of checkCapability by moving some duplicated code out to another function with no good name. 2003-04-21 05:38:13 +00:00
Jeremy Fincher
2456082661 New test-passing implementation of checkCapability with debug.printfs commented out. 2003-04-21 05:23:31 +00:00
Jeremy Fincher
67e072c746 Changed implementation of queue. 2003-04-21 05:17:06 +00:00
Jeremy Fincher
d9ca1637d7 Had to change PING/PONG handling to workaround non-RFC-compliant servers. 2003-04-21 04:37:35 +00:00
Jeremy Fincher
06fe786029 Added .reconnect() method to drivers. 2003-04-21 04:32:42 +00:00
Jeremy Fincher
e1e6b974d6 Had to add and \!owner and \!admin to conf.defaultCapabilities 2003-04-21 03:04:40 +00:00
Jeremy Fincher
96e2a67aa5 Added say command to OwnerCommands. 2003-04-21 01:58:04 +00:00
Jeremy Fincher
8b2ef2403e Removed comment. 2003-04-20 21:56:54 +00:00
Jeremy Fincher
83e8422a44 Whitespace change. 2003-04-20 21:56:41 +00:00
Jeremy Fincher
959459d063 Finally passes all tests. 2003-04-20 21:52:53 +00:00
Jeremy Fincher
9fee5f17a9 Again, run tests before committing. 2003-04-20 17:57:16 +00:00
Jeremy Fincher
df66715089 Oops...should run the tests before submitting new assertions :) 2003-04-20 17:28:26 +00:00
Jeremy Fincher
2227f5caae Fix for bug in Irc.removeCallback. 2003-04-20 17:18:34 +00:00
Jeremy Fincher
e1dfcbd390 Added partition to facilitate bugfix in irclib.Irc.removeCallback. 2003-04-20 17:17:50 +00:00
Jeremy Fincher
80e4dfbe63 Added world.threadsSpawned, logging of the number of threads spawned, and added the information to cpustats. 2003-04-20 16:15:35 +00:00
Jeremy Fincher
cc61041491 Removed commented out stuff, added help string to superreload. 2003-04-20 15:55:32 +00:00
Jeremy Fincher
b3e6c686a4 Changed nick class not to use __slots__. 2003-04-20 09:34:42 +00:00
Jeremy Fincher
30322c42b6 Changed nick class to use __slots__. 2003-04-20 09:33:41 +00:00
Jeremy Fincher
8bdfe2de97 Added docstrings to all the functions. 2003-04-20 09:32:52 +00:00
Jeremy Fincher
bacbf53386 Lowered the default values for limit on shrinkList and privmsgPayload. 2003-04-20 09:20:49 +00:00
Jeremy Fincher
3188810d21 Added returns after irc.errors. 2003-04-20 08:54:27 +00:00
Jeremy Fincher
674fe77386 Added some asserts to match RFC more. 2003-04-20 07:17:40 +00:00
Jeremy Fincher
c0d511c4f1 Added Driver module attribute. 2003-04-20 07:15:39 +00:00
Jeremy Fincher
29efc019df Added copyright. 2003-04-20 07:12:18 +00:00
Jeremy Fincher
f6392d4806 Added ignoring check in PrivmsgRegexp. Fixed stupid bug stupid stupid bug tyop bug.GRRRRR 2003-04-20 01:35:05 +00:00
Jeremy Fincher
92250ca055 Added ignoring check in PrivmsgRegexp. 2003-04-20 01:28:40 +00:00
Jeremy Fincher
f6488d6071 Prevented deprecation warning and added another logging feature. 2003-04-20 01:18:09 +00:00
Jeremy Fincher
a861941626 Fixed stupid bug. 2003-04-20 01:02:29 +00:00
Jeremy Fincher
0e505d89e1 Some more .__class__.__name__ -> name() conversions. 2003-04-20 00:47:04 +00:00
Jeremy Fincher
eb44d5cfed Added new driverModule attribute for driver independence. 2003-04-19 23:53:47 +00:00
Jeremy Fincher
77ac7c6b4e Added newDriver function for driver-module independence. 2003-04-19 23:52:34 +00:00
Jeremy Fincher
dc8b430754 Fixed reconnects. 2003-04-19 23:51:26 +00:00
Jeremy Fincher
ee74036505 Changed to be driver-module independent. 2003-04-19 23:51:11 +00:00
Jeremy Fincher
e4fd36ffef Fixed 'useless reply on bad arguments' in threaded commands; added/changed Combine class. 2003-04-19 21:42:55 +00:00
Jeremy Fincher
e4591e3d57 Changed list command to use cb.name() instead of cb.__class__.__name__. 2003-04-19 21:41:23 +00:00
Jeremy Fincher
4cb24f7aa4 Added robustness changes and manhole stuff. 2003-04-18 08:24:25 +00:00
Jeremy Fincher
1178536288 Added Combine, a callback to combine two Privmsg callbacks (most often Privmsg and PrivmsgRegexp) 2003-04-18 08:24:04 +00:00
Jeremy Fincher
5adbaf5be4 Made the join command not send the WHO command if the bot is already on the channel. 2003-04-18 08:22:02 +00:00
Jeremy Fincher
7fa59b0f35 Changed definition of notFunky to include extended characters that might not be printable in my locale. 2003-04-17 10:11:34 +00:00
Jeremy Fincher
73a5de98eb Scheduler implementation changes to be (hopefully) more efficient, to pop() rather than pop(0). 2003-04-17 10:08:32 +00:00
Jeremy Fincher
77154f2c34 Changed asyncorePoll to just 'poll' 2003-04-17 10:07:43 +00:00
Jeremy Fincher
ce27a25e7d Initial import. 2003-04-17 08:36:05 +00:00
Jeremy Fincher
15f7dfe430 Make Irc.removeCallback shorter and more readable. 2003-04-16 17:53:55 +00:00
Jeremy Fincher
8a18f03faa Comment changes. 2003-04-16 07:12:36 +00:00
Jeremy Fincher
a11f302c9d Added perlReToPythonRe and perlReToReplacer and associated tests. 2003-04-16 05:26:24 +00:00
Jeremy Fincher
5ef41fa445 Added IrcMsg parsing time logging. 2003-04-15 14:36:58 +00:00
Jeremy Fincher
8d6174aeaa Ugh. 2003-04-14 14:56:59 +00:00
Jeremy Fincher
71cec26d58 Stupid variable name. 2003-04-14 14:55:28 +00:00
Jeremy Fincher
a55386af5f Forgot stupid args to privmsgs.getArgs() 2003-04-14 14:54:40 +00:00
Jeremy Fincher
9ad27d4230 Added <filename> argument to logfilesize. 2003-04-14 14:53:58 +00:00
Jeremy Fincher
49b8982b3a Added keyword argument to recoverableException to determine the type of exception logged. 2003-04-14 07:18:42 +00:00
Jeremy Fincher
5c3cf2bc93 Made PrivmsgRegexp use isCommand. 2003-04-14 07:01:20 +00:00
Jeremy Fincher
2230149cf0 Fixed moduleof command. 2003-04-14 05:59:41 +00:00
Jeremy Fincher
d4ee42df5e Fixed moduleof command. 2003-04-14 05:58:43 +00:00
Jeremy Fincher
d53a1842df Fixed moduleof command. 2003-04-14 05:57:27 +00:00
Jeremy Fincher
a5e7a1980c Added superreload command. 2003-04-14 05:56:28 +00:00
Jeremy Fincher
f94c1a2260 Added moduleof command. 2003-04-14 05:54:33 +00:00
Jeremy Fincher
2148a6e704 Added proper ArgumentError handling for threaded callbacks. 2003-04-14 05:51:41 +00:00
Jeremy Fincher
e3e7ce4625 Made assertions more useful. 2003-04-14 05:13:21 +00:00
Jeremy Fincher
33f76608fa Fixed removal of leading whitespace on last argument in parsing messages. 2003-04-14 04:45:01 +00:00
Jeremy Fincher
6287d61d9e Added dqrepr. 2003-04-12 12:50:20 +00:00
Jeremy Fincher
7f90fdc712 Added log of PING-based disconnect. 2003-04-12 12:21:21 +00:00
Jeremy Fincher
4e14a85ea1 Added verbose logging of tokenize times. 2003-04-12 12:19:27 +00:00
Jeremy Fincher
d7fce630d5 Finally fixed looping bug. Really. I mean it this time. I fixed it. It's gone. 2003-04-12 12:04:47 +00:00
Jeremy Fincher
f1ee8b1bbd Typoed variable in class Irc. 2003-04-12 11:55:25 +00:00
Jeremy Fincher
e5c58089ce Must've forgotten to commit this earlier. 2003-04-11 21:10:17 +00:00
Jeremy Fincher
019a648617 Changed dictionaries in IrcState to use ircutils.IrcDict. 2003-04-11 20:46:23 +00:00
Jeremy Fincher
d596752a5f Fixed bug (no __delitem__) in IrcDict and added test. 2003-04-11 20:44:29 +00:00
Jeremy Fincher
6aa1e8a7ed Changed many dictionaries to the more appropriate ircutils.IrcDict. 2003-04-11 20:42:21 +00:00
Jeremy Fincher
5a8f0ce7fa Forgot to put backtick in validchars. 2003-04-11 20:30:02 +00:00
Jeremy Fincher
7828b73e1b Stupid variable name changes... 2003-04-11 20:26:49 +00:00
Jeremy Fincher
04855169e2 Security fix. 2003-04-11 20:17:35 +00:00
Jeremy Fincher
5764cbd1da Whitespace change. 2003-04-11 07:10:55 +00:00
Jeremy Fincher
4d4bb3ad77 Wrong variable in join command. 2003-04-11 07:10:21 +00:00
Jeremy Fincher
67cbd8327d Closed bug 715763, 'Several JOIN commands don't allow specification of a key' 2003-04-10 07:56:41 +00:00
Jeremy Fincher
227f6e1e53 Made isIP actually test properly and added tests. 2003-04-10 07:36:49 +00:00
Jeremy Fincher
c1dd8204f8 Fixed isNick to allow digits and added test. 2003-04-10 07:29:08 +00:00
Jeremy Fincher
f4d187b1f1 Added __getstate__ and __setstate__ to set and Channel. 2003-04-09 18:57:25 +00:00
Jeremy Fincher
5da85d4f2f Forgot to actually enqueue in MaxLengthQueue.enqueue. 2003-04-09 18:35:59 +00:00
Jeremy Fincher
a79df8d841 Stupid typo. 2003-04-09 18:18:14 +00:00
Jeremy Fincher
595821f6fd Forgot stupid __getstate__ and __setstate__. 2003-04-09 18:16:39 +00:00
Jeremy Fincher
c19bae2b34 Forgot stupid self. 2003-04-09 18:15:05 +00:00
Jeremy Fincher
79a1d351ad Added and started using MaxLengthQueue. 2003-04-09 18:12:38 +00:00
Jeremy Fincher
896ce38514 Added __getstate__ and __setstate__ to IrcState 2003-04-09 17:59:13 +00:00
Jeremy Fincher
59b6a7b67d Fixed stupid regexp. 2003-04-09 17:19:06 +00:00
Jeremy Fincher
091f2872b3 Fixed the unallowed dashes and underscores in command names. 2003-04-09 16:55:25 +00:00
Jeremy Fincher
c849eda6ce Minor changes. 2003-04-09 15:13:51 +00:00
Jeremy Fincher
8c9811ea05 Changed AsyncoreDriver to accept an irc as an argument, hopefully fixing the looping bug. 2003-04-09 15:07:23 +00:00
Jeremy Fincher
60169accb2 Raised 'too many exceptions raised in too little time' limit to 10 exceptions in .5 seconds. 2003-04-09 14:46:45 +00:00
Jeremy Fincher
f76dedd795 Fixed verbose logging of command times to only print once for threaded commands. 2003-04-08 18:42:10 +00:00
Jeremy Fincher
a5a1211f76 Added check to make sure a user's hostmask doesn't mask another's. 2003-04-08 07:28:45 +00:00
Jeremy Fincher
3c419192c8 Fixed length check to be 512, not 450. 2003-04-08 07:27:53 +00:00
Jeremy Fincher
705ec27a8f Fixed PyChecker complaint. 2003-04-08 07:23:56 +00:00
Jeremy Fincher
2047dd76b6 Added something(prompt). 2003-04-08 07:22:40 +00:00
Jeremy Fincher
822a12535b Added check of world.testing so nasty exceptions aren't printed during testing. 2003-04-08 07:21:38 +00:00
Jeremy Fincher
6f7a33ce5c Minor changes. 2003-04-08 07:20:42 +00:00
Jeremy Fincher
89fa7855da Added command timing to the verbose log. 2003-04-07 15:23:12 +00:00
Jeremy Fincher
6e0aff9fb2 Added more support for passworded servers. 2003-04-07 03:45:05 +00:00
Jeremy Fincher
16374c53d6 Fixed bug (and added test) in distance. 2003-04-06 15:10:14 +00:00
Jeremy Fincher
1b79a300f9 Added check for owner capability in IrcUser.checkCapability 2003-04-06 12:32:12 +00:00
Jeremy Fincher
02ba0176b2 Added joinModes function; docstring to bold; assert to separateModes. 2003-04-06 12:27:34 +00:00
Jeremy Fincher
584237d818 Added exception list support for ban and bans; changed the order of arguments in user; added password command 2003-04-06 12:26:35 +00:00
Jeremy Fincher
7d2a096e7a Added check for rateLimiting in Privmsg.doPrivmsg (didn't check before) 2003-04-06 12:23:35 +00:00
Jeremy Fincher
66236e1f34 Added support for PASS command on connect. 2003-04-06 12:22:34 +00:00
Jeremy Fincher
83dd73a643 Fixed bug #715340, nested commands not parsed correctly. 2003-04-06 10:36:31 +00:00
Jeremy Fincher
ec88721cb2 Made queue pickle-able. 2003-04-05 14:00:40 +00:00
Jeremy Fincher
6d3c060208 Made sure all authentication was removed on bot exit. 2003-04-05 13:54:12 +00:00
Jeremy Fincher
f078d7fe1b Changed IrcState.history to a queue(). 2003-04-05 13:46:44 +00:00
Jeremy Fincher
d9263c835d Initial import; pulled out of scripts/setup.py and put here for public use. 2003-04-05 13:38:48 +00:00
Jeremy Fincher
b6608b9643 Added flatten. 2003-04-05 13:35:25 +00:00
Jeremy Fincher
277a1a356d Changed conf.minHistory to conf.maxHistory. 2003-04-05 12:25:39 +00:00
Jeremy Fincher
e4715d4d3f Added length=0 handling to soundex to return the everything. 2003-04-05 11:29:29 +00:00
Jeremy Fincher
b8f2bbb1bb Another go at fixing the looping bug. 2003-04-05 11:25:38 +00:00
Jeremy Fincher
a50643c025 Added soundex to utils (along with a test) and to FunCommands. 2003-04-05 11:23:28 +00:00
Jeremy Fincher
d708a6f6d4 Re-enabled __slots__ and added __getstate__, __setstate__ 2003-04-05 10:40:36 +00:00
Jeremy Fincher
d6059ac71e Added proper ValueError raising when there's no command in IrcMsg.__init__. 2003-04-05 10:28:30 +00:00
Jeremy Fincher
cf8c5c01cf Changed Channel to make it more in-line with future sets.Set. 2003-04-05 10:27:02 +00:00
Jeremy Fincher
a3c4b9bc0b Lots of updates; most importantly, queue() and set() now take iterables as their single argument. Note that this will cause configuration file breakages. 2003-04-05 10:26:26 +00:00
Jeremy Fincher
e962cc1d77 Added test for abbrev and fixed a bug it found. 2003-04-04 16:14:58 +00:00
Jeremy Fincher
100d0fa016 Added levenshtein distance 2003-04-04 15:49:24 +00:00
Jeremy Fincher
ae18871f7f Fixed bug found in IrcChannel.checkCapability 2003-04-04 09:12:42 +00:00
Jeremy Fincher
061f2e0a78 Added __ne__ method to IrcMsg 2003-04-04 09:12:00 +00:00
Jeremy Fincher
a46ce6b109 Changed the way Irc handles unresponded-to PINGs. 2003-04-04 08:30:16 +00:00
Jeremy Fincher
29effdf8cc Made sure the bot responds with uneven quotations or brackets. 2003-04-04 08:29:13 +00:00
Jeremy Fincher
8d2ac8c359 Changed nickToLower to toLower (it works for channels too 2003-04-04 07:07:19 +00:00
Jeremy Fincher
40b8eb3956 Changed ircutils.reply to ircutils.replyTo 2003-04-04 06:59:39 +00:00
Jeremy Fincher
20032a089a Added __len__ to set. 2003-04-04 06:15:34 +00:00
Jeremy Fincher
ea787b8441 Fixed bug in printf 2003-04-04 06:08:57 +00:00
Jeremy Fincher
46eb87808f Changed validArgument to isValidArgument 2003-04-04 06:08:36 +00:00
Jeremy Fincher
771f07529f Fixed new bugs caused by assertions 2003-04-04 06:06:33 +00:00
Jeremy Fincher
ebdd969c7c Added docstrings and assertions. 2003-04-03 22:06:24 +00:00
Jeremy Fincher
33b4aa052c Changed debug.debugMsg to debug.msg. 2003-04-03 10:06:11 +00:00
Jeremy Fincher
e88a5a3ae0 Added logging line to scheduleReconnect 2003-04-03 10:00:29 +00:00
Jeremy Fincher
a30ee6cd0b Changed IrcMsgQueue a bit to make it even more smarter; Added reconnection on ERROR disconnect; Added reconnect on returned PINGs. 2003-04-03 09:59:57 +00:00
Jeremy Fincher
689f44028a Had safeArgument logic flipped 2003-04-03 09:17:19 +00:00
Jeremy Fincher
e186cd043d Changed drivers.close() to .die() 2003-04-03 09:17:03 +00:00
Jeremy Fincher
1eb088de21 Added timeElapsed and converted FunCommands to use it. 2003-04-03 09:11:57 +00:00
Jeremy Fincher
eb9e5c87f2 Changed drivers.close() to .die(). 2003-04-03 08:52:41 +00:00
Jeremy Fincher
d5c5e1240b Removed funkyArgument; now we use safeArgument which does the repr() itself. 2003-04-03 08:31:47 +00:00
Jeremy Fincher
10e8965f5d Fixed some bugs found by PyChecker 2003-04-03 08:30:28 +00:00
Jeremy Fincher
36f7c77132 Added needed import and change debug.printfs to debug.debugMsg. 2003-04-03 08:29:21 +00:00
Jeremy Fincher
1dc82ec02c Made set more in line with the sets that will be released in 2.3 2003-04-03 08:17:57 +00:00
Jeremy Fincher
981c21617d Added some asserts. 2003-04-03 08:17:21 +00:00
Jeremy Fincher
336c6fdff9 Added period (yeah, I'm anal) 2003-04-03 07:33:30 +00:00
Jeremy Fincher
16a16a0f85 Removed PyChecker warning 2003-04-03 07:00:51 +00:00
Jeremy Fincher
9e05519660 Changed driver.die() to driver.close() 2003-04-03 06:58:30 +00:00
Jeremy Fincher
f682f639c5 Made catch return and fixed __repr__ of queue. 2003-04-03 06:57:01 +00:00
Jeremy Fincher
a5fc83ef63 Finally fixed looping bug 2003-04-03 06:56:22 +00:00
Jeremy Fincher
c49bd6f88f Fixed handling of channel capabilities 2003-04-02 11:08:34 +00:00
Jeremy Fincher
818f01e206 Converted Irc.fastqueue to a fix.queue 2003-04-02 09:26:16 +00:00
Jeremy Fincher
5ef1d3eaaa Added keyword arg to htmlToText to determine how to replace HTML tags. 2003-04-02 09:20:49 +00:00
Jeremy Fincher
dcf7fa5924 Added some more functionality (__iter__, __eq__, __repr__) to queue. 2003-04-02 09:19:26 +00:00
Jeremy Fincher
d7e3b18046 Added more intelligence to IrcMsgQueue 2003-04-02 09:07:52 +00:00
Jeremy Fincher
b21071c382 Fixed bug in load and removed Sorry. 2003-04-02 08:18:20 +00:00
Jeremy Fincher
10a0fe9f93 Made uptime command not based on loading of FunCommands module. 2003-04-02 07:50:35 +00:00
Jeremy Fincher
c31167ed3f Stopped catching exceptions in the wrong place in callCommand. 2003-04-02 07:42:07 +00:00
Jeremy Fincher
806a45a936 Reverted back to non-exception-raising irc.error. 2003-04-02 07:27:32 +00:00
Jeremy Fincher
7e8aab6619 Added check for duplicate module loading in load command 2003-04-02 07:09:43 +00:00
Jeremy Fincher
f82170de74 Backed out previous change 2003-04-02 07:05:38 +00:00
Jeremy Fincher
f4d6ba0525 Changed 'too many exceptions raised' time to 0.20 seconds, not 0.05 seconds. 2003-04-02 07:05:05 +00:00
Jeremy Fincher
508ed5bcf1 Added queue implementation 2003-04-02 07:01:36 +00:00
Jeremy Fincher
798bac6d3c Found and fixed the bug that sucked up 100% cpu when the network got disconnected. 2003-04-01 09:33:32 +00:00
Jeremy Fincher
cd5781c81a Added flags class attribute to PrivmsgRegexp 2003-04-01 07:59:17 +00:00
Jeremy Fincher
b61539ad46 Oops, bad search/replace regexp put a privmsgs in the wrong place. 2003-04-01 05:43:20 +00:00
Jeremy Fincher
a54020ad59 Fixed bug #711056 2003-04-01 05:39:36 +00:00
Jeremy Fincher
46f3012f9a Changed privmsgs.getArgs to raise ArgumentError, and make the necessary changes in callbacks to Do The Right Thing 2003-03-31 22:22:59 +00:00
Jeremy Fincher
df77cfaccf Fixed minor bug in IrcMsgQueue and removed needless if statement 2003-03-31 22:21:42 +00:00
Jeremy Fincher
2ce7729916 Fixed minor style bug 2003-03-31 09:27:15 +00:00
Jeremy Fincher
aa9c867b14 Fixed spurious exception atexit. 2003-03-31 09:26:51 +00:00
Jeremy Fincher
c700f3c6e5 Straightened out some IrcState inconsistencies. 2003-03-31 09:23:32 +00:00
Jeremy Fincher
b147dfe1d3 Added some (now commented-out) debugging statements 2003-03-31 08:14:04 +00:00
Jeremy Fincher
e9f41a2f82 Fixed variable name typo 2003-03-31 08:13:23 +00:00
Jeremy Fincher
68440bd83a Added proper NICK handling to IrcState 2003-03-31 08:12:50 +00:00
Jeremy Fincher
2806ec0a69 Fixed double-reply on bracketed non-commands 2003-03-31 07:00:25 +00:00
Jeremy Fincher
8e32a7cef9 Fixed variable-name typo in funkyArgument 2003-03-31 06:57:28 +00:00
Jeremy Fincher
68dbb32d94 Added __future__ import 2003-03-31 06:55:34 +00:00
Jeremy Fincher
0f6fe97bf4 Fixed a single-quote bug in Tokenizer 2003-03-31 06:08:23 +00:00
Jeremy Fincher
817e967716 Made funkyArgument a bit more concise. 2003-03-31 06:06:21 +00:00
Jeremy Fincher
10a65f7399 Added abbrev 2003-03-31 05:14:21 +00:00
James Vega
50cb2887b2 Modified how entries are added to self.revcache 2003-03-31 02:53:07 +00:00
Jeremy Fincher
848ec442c6 Whitespace normalization 2003-03-28 17:29:48 +00:00
Jeremy Fincher
f7c409055e Initial import; going off Ofnibot's source to start with. 2003-03-28 09:07:21 +00:00
Jeremy Fincher
9e97a96c98 Added source command 2003-03-28 08:41:11 +00:00
Jeremy Fincher
ce03a98ae9 Fixed a few errors found by PyChecker 2003-03-28 07:55:21 +00:00
Jeremy Fincher
85e7e3ae05 Removed CHANGELOG and TODO, not very useful these days 2003-03-28 07:38:16 +00:00
Jeremy Fincher
471397616b Made list command sort its response. 2003-03-28 07:23:12 +00:00
Jeremy Fincher
4340162a48 Um, weird typo. 2003-03-28 07:16:38 +00:00
Jeremy Fincher
22490174f3 Made single quotes not quotes anymore. Now only double quotes and backticks work. 2003-03-28 07:02:44 +00:00
Jeremy Fincher
332c2cb2d4 Debugging messages commented out 2003-03-28 03:10:46 +00:00
Jeremy Fincher
0dbab5b0fc Fixed stupid nick-handling bugs 2003-03-28 03:01:14 +00:00
Jeremy Fincher
042f4555a0 Removed a useless if statement and changed the order of another 2003-03-28 02:34:03 +00:00
Jeremy Fincher
30591187ad A little better error reporting 2003-03-28 02:33:40 +00:00
Jeremy Fincher
fb150d0e5b Made configuration file parsing more flexible. 2003-03-28 02:29:05 +00:00
Jeremy Fincher
a4ae47d7b8 Made sure there can't be an unpack tuple of improper size or empty blocks in the config file. 2003-03-28 02:09:19 +00:00
Jeremy Fincher
cd350457b2 Fixed leftover debuging line and TypeError 2003-03-28 02:01:51 +00:00
Jeremy Fincher
f97ab0d0b9 Fixed IrcObjectProxy.finalEval to give help in the face of an empty Error exception (like that raised by privmsgs.getArgs) 2003-03-28 01:17:33 +00:00
Jeremy Fincher
406b263444 Fixed getArgs to raise an empty callbacks.Error on invalid arguments 2003-03-28 01:16:46 +00:00
Jeremy Fincher
551a68c4c3 Added @getprefixchar 2003-03-27 21:34:50 +00:00
Jeremy Fincher
41aa44ee78 Fixed bug in handling of outFilters returning None 2003-03-27 20:59:05 +00:00
Jeremy Fincher
954951e2d2 Added conf.detailedTracebacks to determine if cgitb should be used. 2003-03-27 20:40:58 +00:00
Jeremy Fincher
7d44088223 Fixed IndexError in Irc.removeCallback 2003-03-27 20:38:40 +00:00
Jeremy Fincher
ebd8cfd210 Fixed whitespace bug in HTML stripper. 2003-03-27 20:14:17 +00:00
Jeremy Fincher
fc20715427 Added utils.py, with a quality HTML stripper; removed stripHtml from other source files 2003-03-27 20:10:10 +00:00
Jeremy Fincher
3cd72723e4 Satisfied PyChecker 2003-03-27 11:33:05 +00:00
Jeremy Fincher
e3309c31cf Satisfied PyChecker 2003-03-27 11:32:01 +00:00
Jeremy Fincher
714de6bfae Irc.callbacks is always mutated, never replaced, helping the Relay module out. 2003-03-27 11:29:42 +00:00
Jeremy Fincher
b95095df38 Added cvsup command 2003-03-27 11:09:17 +00:00
Jeremy Fincher
15e26578fb Fixed funkyArgument to allow bolding. 2003-03-27 11:03:52 +00:00
Jeremy Fincher
5e785ba212 Added ability to override conf.py defaults with -c option 2003-03-27 09:45:39 +00:00
Jeremy Fincher
2719dcd8bd Changed default for telnetEnable to False, for obvious reasons 2003-03-27 09:36:44 +00:00
Jeremy Fincher
ca08509247 Split UserCommands out from privmsgs. 2003-03-27 07:57:27 +00:00
Jeremy Fincher
d1a5457080 Changed privmsgs.CapabilityChecker to privmsgs.CapabilityCheckingPrivmsg 2003-03-27 07:26:46 +00:00
Jeremy Fincher
f785d97167 Fixed users/channels instantiation to allow for non-existent files 2003-03-27 06:57:09 +00:00
Jeremy Fincher
6dc64ce230 Broke AdminCommands out of privmsgs. 2003-03-27 06:47:42 +00:00
Jeremy Fincher
5844a1440e Separated MiscCommands from privmsgs. 2003-03-27 06:34:48 +00:00
Jeremy Fincher
b040e855a8 Broke ChannelCommands out of privmsgs 2003-03-27 06:28:13 +00:00
Jeremy Fincher
979ed770d8 Re-enabled the old reloading method, we'll see if it comes in useful. 2003-03-27 06:06:56 +00:00
Jeremy Fincher
20c37dd96f Put setDaemon in its proper place. 2003-03-27 06:04:56 +00:00
Jeremy Fincher
ee6a33b7e7 Made making modules that rely on certain capabilities being preset much easier to to write (CapabilityChecker) 2003-03-27 06:02:37 +00:00
Jeremy Fincher
1f88cd4c03 PyChecker found unused imports 2003-03-26 10:09:06 +00:00
Jeremy Fincher
6c3e6d7b99 PyChecker found another non-selfed variable 2003-03-26 10:08:27 +00:00
Jeremy Fincher
a13c55a896 PyChecker found a non-selfed variable 2003-03-26 10:07:55 +00:00
Jeremy Fincher
587c33cc05 PyChecker found a typoed variable name 2003-03-26 10:06:26 +00:00
Jeremy Fincher
5fa489e826 Fixed bug in IrcObjectProxy.getRealIrc: issubclass->isinstance 2003-03-26 07:39:34 +00:00
Jeremy Fincher
56a204b453 Made isCommand checking more flexible. 2003-03-26 07:02:09 +00:00
Jeremy Fincher
8ab1e9834a Removed useless try/except block. 2003-03-26 07:01:13 +00:00
Jeremy Fincher
1623c594d7 Added __eq__ and __hash__ to the Irc class (necessary for the Relay module) 2003-03-26 06:56:02 +00:00
Jeremy Fincher
05b6303684 Added extra line before vim line at bottom. 2003-03-26 02:41:39 +00:00
Jeremy Fincher
db69351721 Do a msvcrt.heapmin() during upkeep on Windows 2003-03-26 02:31:13 +00:00
Jeremy Fincher
4d43fe11db Changed nature of threaded implementation to give more descriptive debug messages and to catch and report uncaught exceptions. 2003-03-26 02:30:05 +00:00
Jeremy Fincher
ead342c614 Changed defaultCapabilities to a set() instead of a list 2003-03-26 01:03:34 +00:00
Jeremy Fincher
f9b755e883 Removed auth from un-disable-able commands 2003-03-26 01:03:19 +00:00
Jeremy Fincher
73244ba170 Fixed a typo in the docstring of getArgs 2003-03-25 23:58:11 +00:00
Jeremy Fincher
17815fbeda Don't complain about not adding messages to the message queue when world.startup is in effect. 2003-03-25 23:44:22 +00:00
Jeremy Fincher
ff8a967647 Moved startup to world. 2003-03-25 23:42:37 +00:00
Jeremy Fincher
d07305b384 Stylistic bug 2003-03-25 23:19:03 +00:00
Jeremy Fincher
4469382089 Finally fixed unidentify 2003-03-25 23:18:21 +00:00
Jeremy Fincher
1ceab4306c Fixed bug in recent commit: msg -> self.msg in IrcObjectProxy 2003-03-25 23:16:10 +00:00
Jeremy Fincher
96b03bf6e7 Fixed checkCapability to handle anti capabilities during startup 2003-03-25 23:14:26 +00:00
Jeremy Fincher
90687f6d1d Fixed minor period-bug in a docstring help 2003-03-25 23:08:45 +00:00
Jeremy Fincher
423e066a19 Fixed unidentify to not require a name/password. 2003-03-25 23:07:34 +00:00
Jeremy Fincher
eabd3c8cf5 Removed auth/unauth aliases for identify/unidentify 2003-03-25 23:05:51 +00:00
Jeremy Fincher
657526b985 Fixed makeAntiCapability to Do The Right Thing in the face of channel-like capabilities 2003-03-25 22:47:58 +00:00
Jeremy Fincher
03c50ff7b4 Made a helper function tokenize(s) so it can be called instead of Tokenizer().tokenize(s) 2003-03-25 22:32:14 +00:00
Jeremy Fincher
57b2fffc0f Added itersplit 2003-03-25 20:21:12 +00:00
Jeremy Fincher
5651ae2190 Fixed a platform-dependence bug and rewrote some config file parsing to be cleaner. 2003-03-25 19:20:30 +00:00
James Vega
c803e5e9d8 Added vim:set ... : strings to source in order to keep file formatting
consistent between developers. Jeremy should be adding the equivalent
settings for emacs soon.
2003-03-24 08:41:19 +00:00
Jeremy Fincher
dd35f8f610 Fixed typo: reponse->response 2003-03-24 08:27:58 +00:00
Jeremy Fincher
c628d60b8b Fixed UnboundLocalError 2003-03-22 03:18:57 +00:00
Jeremy Fincher
089e6a400d Fixed a lot of RateLimiter problems; solved Forums.gameknot problem. Also made irc.error raise an exception (that's later handled) in non-threaded callbacks, so there's less a chance of error in not returning after irc.error. 2003-03-22 03:16:20 +00:00
Jeremy Fincher
27deaaa7b2 Fixed UnboundLocal bugs, caused by not returning after irc.error. 2003-03-22 01:49:33 +00:00
Jeremy Fincher
25d4f1238e Fixed lacking irc.error and irc.reply in PrivmsgRegexp; pulled reply functionality into its own function. 2003-03-15 11:09:52 +00:00
Jeremy Fincher
7801c84d84 Initial revision 2003-03-12 06:26:59 +00:00