Commit Graph

2922 Commits

Author SHA1 Message Date
James Vega
ecd2c63650 Make universalImport support 'from ModuleA import ModuleB'
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-03-11 15:55:08 -04:00
Jeremy Fincher
a86b4694d7 Added utils.python.universalImport to make the previous idiom cleaner. 2009-03-11 14:05:53 -04:00
James Vega
46a4076988 Add .gitignore
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-02-27 14:17:31 -05:00
James Vega
0c42ea111a Fix our RE parsing to handle multiple backslashes before the separator
This also adds support for using brace pairs ({}, [], (), <>) as the
separators for m//.
2009-03-11 13:37:27 -04:00
James Vega
0d4ff7f3dc ircdb.py: Use a more concise return statement 2009-03-11 13:37:27 -04:00
James Vega
db615f2c40 callbacks: Actually obey the to argument of reply() 2009-03-11 13:37:27 -04:00
James Vega
10342acd11 Re-fix IrcDriver, which actually does need the args to __init__ 2009-03-11 13:37:27 -04:00
James Vega
abb83d4863 Make getBanmask use protocols.irc.banmask.makeBanmask 2009-03-11 13:37:27 -04:00
James Vega
775fe6fd4c Move plugins.Channel.banmask to protocols.irc.banmask
Also add protocols.irc.banmask.makeBanmask as a common function for
getting a banmask from a hostmask.
2009-03-11 13:37:27 -04:00
James Vega
a84a0423ad Only import cdb if it's needed 2009-03-11 13:37:27 -04:00
James Vega
5fabe8f747 Do not pass arguments to object.__init__ in IrcDriver.__init__ 2009-03-11 13:37:27 -04:00
James Vega
c23c84a725 Twisted.py: Remove useless code 2009-03-11 13:37:27 -04:00
James Vega
0d5462f446 Remove "Twisted is used if detected" from supybot.drivers.module
This description is no longer accurate as the autodetection code has
been disabled for almost 3 years.
2009-03-11 13:37:27 -04:00
James Vega
768119d258 Directly call isCommandMethod from listCommands. 2009-03-11 13:37:27 -04:00
James Vega
0b6926826a Make sure getCommandMethod only returns a valid command method
In situations like an alias, simply using getattr(self, command[0]) may
return a class method instead of the alias (think "Alias add die ...").
2009-03-11 13:37:26 -04:00
James Vega
e787c7aa49 Clarify comment about timestamp() override 2009-03-11 13:37:26 -04:00
James Vega
eb6117da4f Embed formatArgumentError in Commands._callCommand.
This allows it to utilize getCommandHelp which means that plugins which define
their own getCommandHelp will no longer have broken help responses when
ArgumentError exceptions are raised.
2009-03-11 13:37:26 -04:00
James Vega
338a899782 Make getCommandHelp respect supybot.reply.showSimpleSyntax 2009-03-11 13:37:26 -04:00
James Vega
026a683dec Update cachingGetHelp to match callbacks.getHelp's prototype 2009-03-11 13:37:26 -04:00
James Vega
c936897488 Allow doc to be specified for getSyntax, similar to getHelp 2009-03-11 13:37:26 -04:00
James Vega
3d5c877f80 Finally fix the XXX we had for httpUrlRe and urlRe 2009-03-11 13:37:26 -04:00
James Vega
828d41e37d Add utils/crypt.py as a Python version-agnostic crypt module 2009-03-11 13:37:26 -04:00
James Vega
d72b696739 Do not pass arguments to object's __init__ 2009-03-11 13:37:26 -04:00
James Vega
73fb339b04 Only disable prefixNick if action is actually True 2009-03-11 13:37:26 -04:00
James Vega
a9d1830303 Do not prefixNick for actions 2009-03-11 13:37:26 -04:00
Jeremy Fincher
9f3bc9d355 IrcCallback's super() doesn't take any args. 2009-03-11 13:37:25 -04:00
Jeremy Fincher
d08eee8f13 Made httpUrl arg wrapper add http:// if that produces a valid http url. 2009-03-11 13:37:25 -04:00
Jeremy Fincher
526e71e104 Added test for firewall, fixed implementation so it actually works. 2009-03-11 13:37:25 -04:00
James Vega
2f15eb2418 getHaveOp needs to call getChannel if state.channel isn't set 2009-03-11 13:37:25 -04:00
James Vega
e31d352e57 Correct the logic in _handleSocketError 2009-03-11 13:37:25 -04:00
Jeremy Fincher
64d34792ca Added additional help for supybot.log.level. 2009-03-11 13:37:24 -04:00
James Vega
0278318ed9 Add +svn to the version 2009-03-11 13:37:24 -04:00
James Vega
7bb3b1ec60 Merge the changes from the python25compat branch into the trunk 2009-03-11 13:37:24 -04:00
James Vega
29778f5ada Fix the registry type for supybot.replies.possibleBug. 2007-05-09 01:03:28 +00:00
James Vega
680473b015 If we're using python2.5, import re in place of sre. 2007-04-25 16:12:21 +00:00
James Vega
2bf838f109 Include the proper string in assertAction's error message. 2006-11-13 20:32:45 +00:00
James Vega
6c13f55ab4 src/log.py: Seriously simplify the handling of different logging levels for log and log.stdout by setting the level on the different handlers ranther than the logging object itself. 2006-10-05 18:54:37 +00:00
James Vega
664f56a92f src/log.py: Collapse MultiLogger's methods into using __getattr__ to detect what's being called and return the proper function. 2006-10-05 18:06:12 +00:00
James Vega
2636a35b84 src/log.py: Support different logging levels for stdout and the logfile. 2006-10-05 13:35:45 +00:00
James Vega
f91318e8f1 src/conf.py: Don't use a NormalizedString for supybot.replies.possibleBug since it breaks up the URL. 2006-10-05 13:35:09 +00:00
James Vega
ea6000b407 src/callbacks.py: Methods whose name != their canonical name should not be considered command methods (and therefore won't be listed in the output from Misc.list). 2006-08-28 13:15:21 +00:00
James Vega
cd2b58a7d5 src/callbacks.py: Allow the docstring to be passed to getHelp() 2006-08-28 13:13:43 +00:00
James Vega
99630bc3f5 Bump versions to 0.83.2+darcs 2006-07-27 14:53:34 +00:00
James Vega
c3cacbce76 Munge Author's email in __str__ instead of relying on munging the results of Author.__str__ 2006-07-14 20:54:31 +00:00
James Vega
07be8cd2c0 src/ircutils.py: A nasty hack around mIRC's broken color code rules. Must specify a foreground color if a background color is being specified, so we'll default it to white. 2006-05-25 19:52:16 +00:00
James Vega
514ddbc74f src/log.py: Fix a NameError in a Windows specific section of the code. 2006-05-05 02:13:41 +00:00
James Vega
dc6ae3c7cc src/test.py: Update some documentation. 2006-05-03 17:34:35 +00:00
James Vega
48120bfdd2 src/callbacks.py: Update a debug statement so it prints the proper method name. 2006-05-01 17:08:44 +00:00
James Vega
67697d8245 src/registry.py: Update StringWithSpaceOnRight to accept the empty string as a valid value (instead of padding a space). 2006-05-01 16:50:02 +00:00
James Vega
adc53b11df src/registry.py: Update StringSurroundedBySpaces to only be one space if an empty value is set. 2006-05-01 16:49:23 +00:00
James Vega
9b79f112a0 src/drivers/__init__.py: Make Socket the default driver since Twisted has been causing so many problems lately. 2006-04-13 14:26:06 +00:00
James Vega
880cce5505 src/utils/str.format: Recognize digits before the '.' in %f formatting. 2006-04-06 04:01:11 +00:00
Ali Afshar
26c0adf768 added support for Twisted2.0 by preventing the twisted reactor from spawning threads for dns queries. 2006-02-14 23:45:51 +00:00
James Vega
a3e4fc5b1d Change the modeline to use softtabstop instead of tabstop. 2006-02-11 15:52:51 +00:00
James Vega
5b3ca9bd2d src/registry.py, test/test_registry.py: Better handling of backslashes in config values. 2006-01-18 00:19:31 +00:00
James Vega
84b1c7b59a src/conf.py: Update the help string for supybot.drivers.module. It no longer refers to asyncore and specifies that Twisted is used by default if detected. 2006-01-16 13:44:59 +00:00
Jeremy Fincher
6d45897278 Moved the disable method closer to its call site. 2006-01-12 19:17:09 +00:00
Jeremy Fincher
dca3a3c099 Minor style tweak. 2006-01-12 03:57:10 +00:00
James Vega
0af83d2e24 src/conf, plugins/Owner, plugins/Network: Add support for specifying an ssl connection via Network.connect. 2005-12-14 04:20:04 +00:00
James Vega
0b83f017d9 src/irclib.py: Document the protected/channel owner patch 2005-11-30 16:02:09 +00:00
Marius Rieder
cbb5b7aaa2 protect_and_chanowner_in_unrealircd
Add protectet users (&) und the channelowner (~) used in unrealircd to the ops list.
2005-11-01 04:49:23 +00:00
James Vega
9cb1669b5f src/utils/web: Add another "UNKNOWN_HOST" code to catch. 2005-10-14 12:59:47 +00:00
James Vega
9c34b231aa src/ircdb: checkPassword should return false when password is None instead of trying to continue with the check. 2005-10-14 12:58:41 +00:00
James Vega
fe72d703df +darcs 2005-09-02 02:23:49 +00:00
James Vega
0974d70ca4 Version 0.83.1 2005-09-02 02:13:51 +00:00
James Vega
92b7925fb0 +darcs 2005-08-31 00:04:54 +00:00
James Vega
b701d0f436 UNDO: +darcs 2005-08-30 23:43:51 +00:00
James Vega
b74c0e6200 +darcs 2005-08-30 23:43:51 +00:00
James Vega
2e38b5ed06 Version 0.83.0 2005-08-30 23:39:46 +00:00
James Vega
ef3e002db3 src/utils/net: Fix our method of determining whether an IPV6 or IP socket is needed. 2005-08-22 18:52:37 +00:00
Jeremy Fincher
603cab6b0a Loaded plugins during __init__ rather than do001. 2005-08-15 05:37:05 +00:00
Jeremy Fincher
27656e5fef Added a few more asserts and clarified an already existing one. 2005-08-15 05:36:23 +00:00
James Vega
a3149f0ec0 src/irclib: If the post-inFilter message differs from the pre-inFilter message, log it for debugging purposes. 2005-08-04 21:19:41 +00:00
Jeremy Fincher
cede4a4a97 Fixed bug in ircutils.isNick, which allowed nicks to start with dashes. 2005-08-02 02:47:42 +00:00
Jeremy Fincher
14acfcafe4 Forgot a .split() that was causing the channel-database parsing to fail on bans. 2005-08-01 21:08:21 +00:00
Jeremy Fincher
5582e69268 Fixed ircdb.py to give full exception traces when unexpected exceptions occur. 2005-08-01 21:01:46 +00:00
Jeremy Fincher
f8156cc9cc Removed TupleSubclass, which wasn't being used. 2005-07-21 18:32:41 +00:00
James Vega
17afef9c30 src/commands: Change the rest context so that it raises an IndexError when no arguments are available.
This fixes the problem in Dunno (and any other plugin that uses plugins.ChannelIdDatabasePlugin) where calling the search command using only the getopts and no additional arguments will cause the command to fail and the help to be displayed.
2005-07-27 21:57:17 +00:00
Jeremy Fincher
1aa73acd8d Removed Acquire, which I won't be using anymore. 2005-07-21 05:04:31 +00:00
Jeremy Fincher
77330d496a Moved an XXX and added a skeleton method. 2005-07-18 04:55:12 +00:00
Jeremy Fincher
fc87901a89 Added some more XXXes for dangerfan. 2005-07-18 04:46:41 +00:00
Jeremy Fincher
27ac845628 Moved some XXXes around, added some methods (so naming them isn't hard) and a new XXX about methods that return file objects. 2005-07-18 04:37:32 +00:00
Jeremy Fincher
91874dba2c Added some XXXes to transaction.py. 2005-07-16 05:09:49 +00:00
Jeremy Fincher
5b8400e158 Removed utils.iter.one, which was dumb, because iterators have a .next() method that does the same thing. 2005-07-08 09:14:45 +00:00
James Vega
6f8e3d37aa src/irclib: Let's not override the name for the set type. 2005-07-10 18:27:40 +00:00
Jeremy Fincher
a88f52bc7f Forgot to change the exception name in one of the spots it was raised in. 2005-07-06 03:59:46 +00:00
Jeremy Fincher
e9c52f6a5f Prefixed some non-public method names with an underscore. 2005-07-06 03:59:16 +00:00
Jeremy Fincher
612a8e1183 Added utils.{transaction,error} 2005-07-05 17:48:00 +00:00
Jeremy Fincher
b369039507 Added utils.iter.one, to grab one value from an iterable. 2005-06-12 04:54:15 +00:00
Jeremy Fincher
1a5e05ee8e NestedCommandsIrcProxy should set self.repliedTo if self.error is called. 2005-06-30 22:10:04 +00:00
Jeremy Fincher
830a5c5084 Commented out an overly verbose (even for DEBUG level) log message. 2005-06-30 22:04:59 +00:00
James Vega
bd31b7f596 src/irclib: Handle IRCds which use a MAXLIST-style value for the MAXBANS 005 key. 2005-06-29 14:20:54 +00:00
James Vega
464c1e3cb9 src/callbacks: Remove a duplicate except statement. 2005-06-28 20:57:32 +00:00
James Vega
e4c9381f7b src/commands: Update first so that state.errored will not prevent the bot from responding when the first converter fails. 2005-06-13 17:27:15 +00:00
Jeremy Fincher
3d66bc88e5 Let's ensure that self.repliedTo is False before calling invalidCommands. 2005-06-08 17:49:54 +00:00
Jeremy Fincher
dff2862bb1 Fixed jamessan's multiple-invalidCommand bug. 2005-06-08 17:45:58 +00:00
Jeremy Fincher
0d83dde909 Moved a comment to the appropriate place. 2005-06-08 16:24:54 +00:00
Jeremy Fincher
cc4c143176 Log the name of each spawned thread at the DEBUG level. 2005-06-08 03:53:00 +00:00
Jeremy Fincher
490fb0b140 Changed prefixName to prefixNick, which is more appropriate, and has always bothered me. Better now than later. 2005-06-01 21:08:30 +00:00
Jeremy Fincher
4da1f38235 Fixed the security issue nicktastic reported, and made sure that if, for some reason, an error doesn't raise an exception, it still stops the calling of the command function. 2005-06-01 20:13:33 +00:00
Jeremy Fincher
c1dcb47e3f Added another elucidating comment. 2005-05-30 19:20:17 +00:00
Jeremy Fincher
5815b3b348 Added some elucidating comments. 2005-05-30 19:19:43 +00:00
Jeremy Fincher
b5f1e2a3e7 Added utils.iter.limited, an iterable that limits the number of elements that can be taken from another iterable. 2005-05-30 19:19:11 +00:00
James Vega
c268aab9bd +darcs 2005-05-30 04:36:01 +00:00
James Vega
14752347e2 Initial changelog and version changes for 0.83.0rc3. 2005-05-30 04:28:24 +00:00
Jeremy Fincher
66076c0831 Removed a useless wrapper around a method that shouldn't exist. 2005-05-27 03:47:04 +00:00
Jeremy Fincher
660776f804 Fixed twisted.internet.ssl imports to work still if OpenSSL isn't installed. 2005-05-23 19:38:29 +00:00
Jeremy Fincher
4fb15198a0 Properly fixed bugs where plugins expected strings and got non-strings. 2005-05-23 11:51:22 +00:00
Jeremy Fincher
a1992b55ec Fixed the bug that caused "reply reply" to be necessary instead of just "reply". 2005-05-23 11:23:53 +00:00
Jeremy Fincher
ff2eb7daa9 Tried (again) to fix bug #1156765. This might resurrect some old bugs, such as the inability to quit via Ctrl-C or similar. It must be tested. 2005-05-20 16:29:17 +00:00
Jeremy Fincher
8730832e69 Refactored the Socket driver, hopefully to resolve the currently outstanding bugs (#1156765 and #1097217) with it. 2005-05-19 23:39:19 +00:00
Jeremy Fincher
6986bbad16 Changed the log message for trying SSL with Socket driver to point people in the direction of Twisted. 2005-05-19 23:38:55 +00:00
Jeremy Fincher
49e74670a4 Made the maxReconnectWait configurable. 2005-05-19 23:38:13 +00:00
Jeremy Fincher
4e4c23a781 Removed the "All channels synced ..." message since it's not entirely accurate with our new JOIN ratelimiting. 2005-05-18 14:35:57 +00:00
Jeremy Fincher
9aaba996b3 Changed log message for 433 to be more accurate when a 432 is encountered. 2005-05-18 05:23:38 +00:00
Jeremy Fincher
0b848199b5 Fixed some style issues with logging calls. 2005-05-18 04:18:35 +00:00
Jeremy Fincher
a1e707caa2 Changed Synchronized to make attributes (and changing the attributes' names) more maintainable. 2005-05-16 18:42:38 +00:00
James Vega
23c0d23a01 src/conf.py: addhostmask is now "hostmask add" 2005-05-18 02:38:41 +00:00
James Vega
994cff5c05 Update a couple missed changeFunctionName calls. 2005-05-16 03:25:43 +00:00
Jeremy Fincher
79fc5b5994 Fixed a bug in the way Synchronized was implemented. 2005-05-16 00:23:44 +00:00
Jeremy Fincher
ce74fa825e Synchronized Commands (basically, all command-based plugins). Should fix the issue with Karma causing crashes due to PySQLite's un-thread-friendliness. 2005-05-15 18:27:12 +00:00
Jeremy Fincher
cbf154b4ff Fixed Synchronized to allow synchronization of methods not defined in the current class. 2005-05-15 18:26:50 +00:00
Jeremy Fincher
4b0600a91a Added a Synchronized metaclass. 2005-05-15 17:41:07 +00:00
Jeremy Fincher
2394005cdd Moved utils.changeFunctionName to utils.python. 2005-05-15 17:17:26 +00:00
Jeremy Fincher
1d357dd470 Some more slight tweaks to the MetaFirewall implementation and stuff. 2005-05-15 17:08:02 +00:00
Jeremy Fincher
2861b5a334 Fixed some uselessness in log.MetaFirewall and removed an attribute that shouldn't be firewalled (it was vestigial). 2005-05-15 16:50:10 +00:00
Jeremy Fincher
00fc0584ed Put more useful information into the docstring for utils.seq.window. 2005-05-15 16:12:43 +00:00
James Vega
8693dbd5cc Update version numbers for 0.83.0rc2. 2005-05-12 15:59:02 +00:00
James Vega
7bfc9cbdd3 utils/str: Rename nth to ordinal and have it return the full string instead of just the ordinal ending. 2005-05-09 17:20:43 +00:00
Glen Mailer
7deadddbe8 utils.str.nth 2005-05-08 01:46:35 +00:00
James Vega
ae5b51fe97 Add +darcs to version. 2005-05-06 15:07:34 +00:00
James Vega
6666e25327 Forgot to update the version numbers. 2005-05-06 14:19:12 +00:00
James Vega
44ef2bd81a Add unaddressedRegexps to PluginRegexp. 2005-04-21 17:28:48 +00:00
James Vega
e7e72d4484 Unbreak invalidCommands. 2005-04-20 23:06:50 +00:00
Jeremy Fincher
b48ca7ab71 Added supybot.protocols.irc.queuing.rateLimit.join, to throttle joins. 2005-04-14 01:35:35 +00:00
Jeremy Fincher
73f639b55f Changed supybot.protocols.irc.refuseToQueueDuplicateMessages to supybot.protocols.irc.queuing.duplicates. 2005-04-14 00:56:26 +00:00
Jeremy Fincher
c621905d91 We now spawn a thread for invalidCommands when any of the plugins that will run invalidCommands are threaded. 2005-04-13 03:20:58 +00:00
Jeremy Fincher
e1d3c5e537 Changed the name of IrcObjectProxy to something more indicative of what it does. 2005-04-13 03:18:17 +00:00
Jeremy Fincher
c66e7b3e6e Added a utils.python module for python-esque things. 2005-04-09 17:04:27 +00:00
Jeremy Fincher
29fc5681d3 Added a touch function to the file utils module. 2005-04-04 06:01:17 +00:00
Jeremy Fincher
c8d114b9bc Added a few useful file functions. 2005-04-04 05:46:22 +00:00
James Vega
aea980ce41 Update ValidChannel exceptions to contain the invalid channel. 2005-04-04 03:05:52 +00:00
Jeremy Fincher
bc9cdc4927 Fixed the broken mores. 2005-03-28 13:29:55 +00:00
Jeremy Fincher
0773aa31e5 Made Proxy Irc objects map to the same dictionary slot, so we don't need to worry about calling getRealIrc all the time. 2005-03-28 13:00:37 +00:00
Jeremy Fincher
5ce2baa2d2 It should be possible to identify without flushing. 2005-03-27 09:59:44 +00:00
Jeremy Fincher
71830d0c84 Because super sucks, we need to assign to self.log before calling our parents' __init__s, because mixins might be before our parents. Ridiculous. Don't be surprised if we go on a super-excising rampage in the future. 2005-03-24 16:27:41 +00:00
James Vega
9971e991fe Fix the modelines. 2005-03-23 20:07:45 +00:00
James Vega
7c5463dd3e Add some more assertion messages. 2005-03-22 19:03:02 +00:00
James Vega
2c96a65704 asserts should have an associated message. 2005-03-22 14:45:21 +00:00
Ali Afshar
4404cdc51a dbi cdb mapping trying to use a non-existent variable. 2005-03-21 15:53:13 +00:00
George-Cristian Bîrzan
7aae5ae41e fix alternate separator with slash in first part of regexp 2005-03-17 19:51:24 +00:00
Jeremy Fincher
3d60b66ee2 Made the SimpleProxy interface a little more consistent with IrcObjectProxy. 2005-03-14 03:52:30 +00:00
Jeremy Fincher
c598e4cca9 Added a few more UNKNOWN_HOST types. 2005-03-14 02:32:48 +00:00
Jeremy Fincher
7445ed05b8 Let's give do* methods at least a SimpleProxy, if for no other reason than to stave off the questions and consternation resulting from *not* having an irc.reply available. 2005-03-12 22:27:23 +00:00
James Vega
aefcd594df Move structures to utils/ 2005-03-12 18:01:47 +00:00
Jeremy Fincher
36f6f1164f Line too long. 2005-03-11 23:27:17 +00:00
James Vega
24271c7b4e No need to issue a warning here *and* when we call connectSSL. 2005-03-11 21:29:33 +00:00
Ali Afshar
df2336505d dded code to Socket driver to make sure it refuses to connect when network.ssl is set to True 2005-03-11 18:37:02 +00:00
James Vega
eab237da47 Rename misc.log to messages.log 2005-03-11 18:06:18 +00:00
Jeremy Fincher
bd6aa8fda8 Fixed some bugs introduced in my earlier commit, uncovered by the Note tests. 2005-03-09 10:42:16 +00:00
Jeremy Fincher
0e68a44513 Fixed bug with nested plugins having the same name as themselves. 2005-03-09 08:05:24 +00:00
Jeremy Fincher
ecca13ec11 Simplified the implementation of structures.TimeoutQueue. 2005-03-09 07:28:09 +00:00
Ali Afshar
eb970c09d7 Added check for successful PyOpenSSL import in Twisted driver and increased log level 2005-03-04 15:47:22 +00:00
Ali Afshar
32e0b29fcd SSL server support for Twisted driver. 2005-03-04 14:36:17 +00:00
Ali Afshar
d13458726d Added getPluginHelp() method to return docstring for individual plugins. 2005-03-03 19:34:26 +00:00
Jeremy Fincher
0016b4ff21 Workaround for twisted stupidity. 2005-02-28 20:08:46 +00:00
Jeremy Fincher
51637b3b00 Forgot this from the nested plugins changes. 2005-02-28 07:59:46 +00:00
Jeremy Fincher
fc2a18bdb3 Added a name= keyword argument for commands.wrap, to override the name of the method being wrapped. 2005-02-28 07:58:46 +00:00
Jeremy Fincher
574e9509b7 Added support for source-nested plugins. 2005-02-24 12:49:08 +00:00
Jeremy Fincher
13e1f7ccb9 Added isSplit, a function for checking whether a given QUIT message is a split quit. 2005-02-25 09:59:39 +00:00
Jeremy Fincher
50d390ece4 Added a reset method, a couple more tests, and fixed a slight bug (IndexError being raised from the wrong place) 2005-02-25 09:44:51 +00:00
James Vega
b272bd7752 Goodbye debug log. 2005-02-25 04:58:40 +00:00
Jeremy Fincher
4648360a04 Added op, halfop, and voice converters, and converted Channel to use them. 2005-02-24 09:59:21 +00:00
Kevin Murphy
5e5e2f3336 Fixed some typos 2005-02-23 17:40:44 +00:00
James Vega
2408457221 Fix a bug with a missing argument for string formatting. 2005-02-23 16:40:21 +00:00
James Vega
181c623703 Make our error message for the Plugin.__init__ changes better and try to prevent spurious, invalid error messages. 2005-02-23 00:04:07 +00:00
Jeremy Fincher
07814fc808 Fix for bug in first.__repr__. 2005-02-21 01:04:45 +00:00
Jeremy Fincher
5985562a31 Put the monkey patch in the wrong place. 2005-02-18 23:53:11 +00:00
Jeremy Fincher
c9408a95f5 Re-added capability checking stuff. Boo. This needs refactored. 2005-02-18 23:44:38 +00:00
Jeremy Fincher
ff3b03973f Let's not try to call getCommand on callbacks that don't have it. 2005-02-18 23:01:41 +00:00
Jeremy Fincher
08b4359be0 Fix for bug #1143733. 2005-02-18 18:41:38 +00:00
Jeremy Fincher
b0df87ed7d Fixed addressedRegexps handling in PluginRegexp. 2005-02-18 16:19:44 +00:00
Jeremy Fincher
f50edbe008 Added our hacked shlex.py, prior to the 2.3 bastardization that made it unsuitable for our purposes. 2005-02-18 08:30:59 +00:00
Jeremy Fincher
e6645df9aa Removed the generated value, which is less than useful. 2005-02-18 08:30:35 +00:00
Jeremy Fincher
34e4891bbc Changed to use getattr again; getCommandMethod is pretty much reserved for, well, commands. 2005-02-18 08:26:28 +00:00
Jeremy Fincher
9327be4b59 Added an assert to make sure findCallbacksForArgs is used correctly. 2005-02-18 08:26:02 +00:00
Jeremy Fincher
6aca01bafb Made utils.file.mktemp a little more stochastic. 2005-02-18 07:04:48 +00:00
Jeremy Fincher
180291dd34 Cleaned up listCommands a bit. 2005-02-18 06:30:46 +00:00
Jeremy Fincher
2f928e9888 Added default-to-important-plugins behavior back. 2005-02-18 06:30:22 +00:00
Jeremy Fincher
2a75f4b83d Added a classModule attribute to plugins to have easy access to it (the new plugin format made that significantly harder for us; this is an easy workaround). 2005-02-18 06:14:17 +00:00
Jeremy Fincher
ed0b91c3df Tweaked some methods to fix some bugs (yes, it's ambiguous, I know). 2005-02-18 06:13:47 +00:00
Jeremy Fincher
c864836a2f Finally refactored to make commands be "lists of strings" rather than just strings. This is preliminary to allowing nested plugins. 2005-02-18 05:17:23 +00:00
Jeremy Fincher
4808a68f7d Added utils.iter.startswith. 2005-02-17 23:30:54 +00:00
Jeremy Fincher
4f99f41266 Removed a useless comment. 2005-02-18 00:23:53 +00:00
Jeremy Fincher
c1c46495b3 Added a canonicalName method to plugins. 2005-02-18 00:16:06 +00:00
Jeremy Fincher
c3e1d1daca Another elucidating comment. 2005-02-17 23:39:21 +00:00
Jeremy Fincher
e26d46f416 Added some elucidating comments and asserts. 2005-02-17 23:26:11 +00:00
Jeremy Fincher
849b12ec8b Removed getCommands, which isn't being used by anything. 2005-02-17 23:14:54 +00:00
Jeremy Fincher
156084c225 Fixed some bugs introduced with the latest refactoring of callCommand, etc. 2005-02-17 22:39:44 +00:00
Jeremy Fincher
2693d404b4 Refactored _callCommand to put it in its appropriate place. 2005-02-16 02:17:05 +00:00
Jeremy Fincher
7389f1757c Forgot an import which broke choice. 2005-02-16 02:15:51 +00:00
Jeremy Fincher
ada52c729d Needed to re-raise ArgumentError in order to prevent a spurious test failure. 2005-02-15 07:40:03 +00:00
James Vega
90c000793d utils.gen.* functions shouldn't explicitly be called since they're all in the utils namespace. 2005-02-15 13:57:57 +00:00
Jeremy Fincher
0ba3b076a5 Forgot to remove log.stat calls from drivers stuff. 2005-02-15 07:18:01 +00:00
Jeremy Fincher
e97f111042 Removed the checkCapabilities keyword argument because it wasn't used anywhere in our source code. 2005-02-15 06:56:24 +00:00
Jeremy Fincher
99d723802e Changed the name of getCommand to getCommandMethod in preparation for a major refactoring. 2005-02-15 06:53:30 +00:00
Jeremy Fincher
c09a7cace1 Removed log.stat, it was dumb. 2005-02-15 06:49:51 +00:00
James Vega
68ef3d86a4 Fix some grammar in the help string. 2005-02-10 03:16:54 +00:00
Jeremy Fincher
ad35c62568 Refactored to split up Plugin into Commands and PluginMixin. 2005-02-10 02:46:18 +00:00
Jeremy Fincher
181d0d59c6 Had the more and the messages reversed. 2005-02-10 01:28:38 +00:00
James Vega
f7917bce77 Update class names. 2005-02-09 21:50:12 +00:00
Jeremy Fincher
adff889c44 Added a skeletal Plugin plugin. 2005-02-09 07:07:11 +00:00
Jeremy Fincher
56ad1ead58 I don't know why this hunk of code was there, but it was causing problems for the Plugin plugin, so I removed it. 2005-02-09 07:06:05 +00:00
Jeremy Fincher
b0cb616709 Changed callbacks.Privmsg to be callbacks.Plugin, and callbacks.PrivmsgCommandAndRegexp to be callbacks.Plugin. 2005-02-09 07:04:04 +00:00
Jeremy Fincher
46225641bd Changed the implementation of IrcMsgQueue a bit. 2005-02-09 05:30:14 +00:00
Jeremy Fincher
3a7202bfbe More ignorance can never hurt.
Added supybot.plugins.Relay.ignores, a channel configuration variable that allows people to specify hostmasks that are ignored.
2005-02-09 00:39:11 +00:00
James Vega
d9e5b719b6 Explanatory error message about the change to callbacks.Privmsg*'s __init__ prototype. 2005-02-08 03:35:26 +00:00
Jeremy Fincher
70d1b1d5d0 Moved _mores to IrcObjectProxy, where it more rightfully belongs. 2005-02-07 06:28:52 +00:00
Jeremy Fincher
808db8153b Forgot this one last remnant of callbacks.PrivmsgRegexp. 2005-02-07 06:23:01 +00:00
Jeremy Fincher
972716069c Removed callbacks.Privmsg; if it is replaced at some later time, it'll be different. 2005-02-07 06:10:41 +00:00
Jeremy Fincher
476a620fe4 Fixed possible error when the returned message includes formatting characters. 2005-02-07 05:43:27 +00:00
Jeremy Fincher
e53e237818 Better error logging for when commands.wrap fails to provide the right number of arguments. 2005-02-07 01:04:33 +00:00
Jeremy Fincher
fdddefe129 Added a listCommands method to PrivmsgRegexp, to allow plugins to list their own commands. 2005-02-04 20:08:38 +00:00
Daniel DiPaolo
4125f97381 Updating version from 0.80.0 to 0.80.1+darcs 2005-02-04 02:17:18 +00:00
Jeremy Fincher
65f713df4b Removed log.verbose. I never liked it anyway. 2005-02-04 05:59:07 +00:00
Jeremy Fincher
6580fc535f 2.4 defines groupby, so there's no need to define our own. 2005-02-04 05:55:04 +00:00
Jeremy Fincher
566b273a97 Removed some imports. 2005-02-04 03:25:30 +00:00
Jeremy Fincher
571ff24155 Changed canonicalize to canonize -- thanks Skorobeus! 2005-02-04 03:19:05 +00:00
Jeremy Fincher
e6beec2989 Removed some more unused imports. 2005-02-04 03:11:02 +00:00
Jeremy Fincher
6b75be6e60 Changed supybot.protocols.irc.queueDuplicateMessages.
Changed supybot.protocols.irc.queueDuplicateMessages to
supybot.protocols.irc.refuseToQueueDuplicateMessages, and changed the default
to be to allow duplicate messages, rather than to reject them.
2005-02-03 20:13:49 +00:00
Jeremy Fincher
f930913b05 Removed the sets import from irclib.py. 2005-02-03 19:17:26 +00:00
Jeremy Fincher
5ca79f0f49 Hah, changed WebError to Error everywhere but the source :) 2005-02-02 14:07:20 +00:00
Jeremy Fincher
dbd9e9f16c Added a %r handler (repr, just like normal string formatting). 2005-02-02 13:09:14 +00:00
James Vega
68d3b830da Remove the use of format() in logger functions since they handle it natively. 2005-02-01 13:43:57 +00:00
Jeremy Fincher
f6e132dde4 Added test_format.py, added floating point formatting to format, and fixed a bug in the %t format. 2005-02-01 11:57:50 +00:00
Jeremy Fincher
2a62e79fab Fixed test failure in PositiveInteger. 2005-02-01 11:57:26 +00:00
Jeremy Fincher
cb05dc8484 Fixed a typo in a variable name. 2005-02-01 10:13:23 +00:00
Jeremy Fincher
f44be3b864 Allow timestamps in format to be None, indicating the current time. 2005-02-01 09:53:08 +00:00
Jeremy Fincher
74717061f2 Forgot to add u to the _formatRe. 2005-02-01 09:35:35 +00:00
Jeremy Fincher
4ac7bb4717 Added a %u specifier to format, for URLs. 2005-02-01 09:26:44 +00:00
Jeremy Fincher
304ad0868e Hacked out format into our logging calls. 2005-02-01 08:31:31 +00:00
Jeremy Fincher
8897e6458b Removed test/test_fix.py, moving its tests to test/test_utils.py, and fixed the resulting bugs that were discovered. 2005-02-01 07:08:30 +00:00
Jeremy Fincher
978cf65453 Added an email converter. 2005-02-01 07:08:13 +00:00
Jeremy Fincher
2b6994428e Fixed a bug that was introduced in nItems. 2005-02-01 07:06:36 +00:00
Jeremy Fincher
2840aeda1e Added tests for dynamicScope and fixed a bug that made it all but useless. 2005-02-01 07:05:42 +00:00
Jeremy Fincher
65893c8e3c Added emailRe to utils.net. 2005-02-01 06:34:58 +00:00
James Vega
afc3c3f94a Fix some calls to pluralize to not use the extra argument. Also updated the pluralize tests. 2005-01-31 15:59:44 +00:00
James Vega
4b4bfa0abe Update usage of utils.net functions. 2005-01-31 15:26:01 +00:00
James Vega
ec045afd9c Removed extraneous whitespace, unused imports, and converted some sets.Set() calls to set(). 2005-01-31 15:24:36 +00:00
James Vega
0fde2393e6 Update usage of utils.iter functions. 2005-01-31 15:22:48 +00:00
James Vega
4d32d36982 Update a few more places that use utils.str functions. 2005-01-31 15:21:22 +00:00
James Vega
de89bf0265 Update usage of utils.str functions. 2005-01-31 14:52:27 +00:00
James Vega
47aa4c0f7c Remove the extra argument to utils.str.pluralize.
We previously had a second argument to utils.str.pluralize which determined
whether we truly plurazlied a word or not.  This has been removed so that
the function does what it says it does.
2005-01-31 13:37:47 +00:00
James Vega
9099a1a934 Update utils.str.format to support specifying an 'and' string. 2005-01-31 13:29:28 +00:00
James Vega
28cb5abc65 Update usage of functions in utils.gen. 2005-01-31 13:06:43 +00:00
James Vega
0a89623b70 Update a couple more imports for the utils split up and fix.py removal. 2005-01-30 15:39:39 +00:00
James Vega
5a46ec4993 Remove the last supybot.fix imports. 2005-01-30 02:46:30 +00:00
Jeremy Fincher
70da904be2 States don't have a copy method. 2005-01-29 21:23:37 +00:00
Jeremy Fincher
381a42d863 Added an "irc" argument to callbacks.Privmsg.__init__, so now plugins get an Irc on instantiation. 2005-01-29 19:16:29 +00:00
James Vega
6f2aec352a Fix a bug where nickInChannel would add the channel to the args list. 2005-01-28 22:53:59 +00:00
James Vega
bc59e3ca64 Change the remaining utils.normalizeWhitespace calls to utils.str.normalizeWhitespace. 2005-01-28 16:10:53 +00:00
Jeremy Fincher
5c72ded4a8 Stupid spelling error in a docstring. 2005-01-28 15:30:15 +00:00
Jeremy Fincher
a19a979499 Robustified and improved utils.str.format a bit; added a simple test. 2005-01-28 15:23:18 +00:00
Jeremy Fincher
1f1d85f249 Removed an unused variable (_srcDir) 2005-01-28 15:22:59 +00:00
Jeremy Fincher
90e901702b Moved toBool to go before format in utils/str.py. 2005-01-28 15:21:03 +00:00
Jeremy Fincher
34f1fe6562 Swapped the argument order for nItems *again*. 2005-01-28 15:17:26 +00:00
Jeremy Fincher
e248012369 Added format to __builtins__. 2005-01-28 15:16:32 +00:00
Jeremy Fincher
e1fe232e9b Converted commands.py to use the new utils.web instead of webutils; fixed a bug in the httpUrl converter which rejected https protocols. 2005-01-28 14:51:25 +00:00
Jeremy Fincher
c08d435267 Fixed bug in irclib.IrcState's handling of KICK messages; they wouldn't remove the channel if the bot was kicked from it. 2005-01-28 13:58:59 +00:00
Jeremy Fincher
5fd6bbb52d Completely restructured our utils modules.
Tons of changes.  Here's the summary of things that matter most:

* There is no more supybot.fix.
* There is no more supybot.webutils; now there is supybot.utils.web.
  * It's no longer webutils.WebError, but just utils.web.Error.
* You shouldn't import itertools, ideally, but instead import utils.iter.
* No more using imap/ifilter in commands unless absolutely necessary.  It's
  premature optimization and annoying.
* utils.str.format isn't quite ready yet, but will be soon.  That'll be the
  next big thing to fix in our code.
2005-01-27 06:59:08 +00:00
Jeremy Fincher
e62585092d Moved dynamic scoping stuff out of fix.py and into its own module. 2005-01-27 07:10:32 +00:00
Jeremy Fincher
7fb3b21d94 Removed src/privmsgs.py and all the accompanying crap. 2005-01-27 05:42:36 +00:00
Jeremy Fincher
1ff2033dc0 Updated copyright date and removed the __revision__ string. 2005-01-26 21:44:12 +00:00
Jeremy Fincher
9712acf467 Removed wrapLines, which isn't used anywhere. 2005-01-26 14:48:21 +00:00
Jeremy Fincher
74b9a3c702 Moved eachSubstring to be a nested function; we don't use it anywhere else. 2005-01-26 14:41:42 +00:00
Jeremy Fincher
895cd3e48e Resurrected the test suite with the new supybot-test program and RCS. 2005-01-23 19:42:25 +00:00
Jeremy Fincher
f30fcebe41 MINOR removed some extraneous whitespace. 2005-01-21 18:41:17 +00:00
Jeremy Fincher
863c0e6ad2 Moved loadPlugin{Module,Class} to its own module in src/ 2005-01-19 23:22:35 +00:00
Jeremy Fincher
db722aa0ec Added supybot-test and supybot.test. 2005-01-19 23:12:50 +00:00
Jeremy Fincher
0a556f6d4d Forgot to add {src,plugins}/__init__.py 2005-01-19 23:24:27 +00:00
Jeremy Fincher
5019d10a1b Updated license years. 2005-01-19 13:33:05 +00:00
Jeremy Fincher
8ca625d339 Initial import. 2005-01-19 13:14:38 +00:00
James Vega
dbfec8afb9 Add supybot module 2007-04-22 20:10:26 +00:00
James Vega
88a906df84 Fix a bug where nickInChannel would append channel to the args list. 2005-01-28 22:59:27 +00:00
James Vega
0ea4c3c12a Updated to 0.80.1+CVS 2005-01-18 21:07:55 +00:00
James Vega
e68f1d26ba Updated to 0.80.1. 2005-01-18 19:46:13 +00:00
James Vega
c961614d98 Updated to 0.80.0. 2005-01-17 06:57:37 +00:00
James Vega
e7e557868d Updated to 0.80.0. 2005-01-17 04:54:17 +00:00
Jeremy Fincher
2b12472711 Changed _getSep to raise ValueError instead of asserting. 2005-01-15 16:09:37 +00:00
Jeremy Fincher
4624115909 No need to makeBackupIfSmaller in databases. That's more for configuration files. 2005-01-14 14:46:52 +00:00
James Vega
80f9f7d42a Let's make this error message a *tad* more useful. 2005-01-14 02:20:53 +00:00
Jeremy Fincher
fdeae5c022 Better error-checking. 2005-01-13 17:48:47 +00:00
James Vega
3f284f2ece Update to 0.80.0rc3+cvs 2005-01-13 02:59:38 +00:00
James Vega
b12c8697b7 Updated to 0.80.0rc3. 2005-01-13 02:52:21 +00:00
Jeremy Fincher
d15e7e8d7f Removed an assert that isn't too important. 2005-01-12 21:07:42 +00:00
Jeremy Fincher
a65c5e65dd I seem to recall seeing a 2 when supybot's host's DNS was down. 2005-01-12 21:06:36 +00:00
Jeremy Fincher
76a5e5988f Deprecation notes. 2005-01-12 21:05:55 +00:00
James Vega
c6b50e75f0 This makes channelSpecific *much* more useful, aka not broken. Closes Bug #1100919 2005-01-12 19:26:32 +00:00
Jeremy Fincher
59c4dab684 Extra help can't hurt. 2005-01-12 02:48:24 +00:00
James Vega
102c2d7af3 Updated to 0.80.0rc2 2005-01-11 14:45:12 +00:00
James Vega
534313a165 Updated to 0.80.0rc2. 2005-01-11 14:40:36 +00:00
James Vega
e54ef5d6df Make sure we don't try to access self.currentServer before it's there. Also,
return the new server from _getNextServer
2005-01-11 13:52:56 +00:00
Jeremy Fincher
f5bbd8cb51 WRong module. 2005-01-10 20:49:22 +00:00
Jeremy Fincher
f63fa6846f Elucidating comment, XXX, and hopefully a fix for the problems with using Network.disconnect while a socketDriver is reconnecting. 2005-01-10 20:41:23 +00:00
Jeremy Fincher
5ee8f5d9ed Added two XXXes. 2005-01-10 06:03:38 +00:00
Jeremy Fincher
8132f1db73 No need to be a CapabilityCheckingPrivmsg if our plugin name is the same as the capability we're checking. 2005-01-10 05:39:16 +00:00
Jeremy Fincher
141ddfec82 Updated to update reconnectWaitsIndex appropriately. 2005-01-10 05:34:30 +00:00
James Vega
225c565aee Add/update supybot.databases.plugins.channelSpecific{,.link{,.allow}}
channelSpecific.link replaces channelSpecific.channel
2005-01-08 07:22:46 +00:00
James Vega
0fe82001d5 Unify how are help conveys getopts that accept a value. 2005-01-08 06:51:55 +00:00
Jeremy Fincher
69f71d1850 Fixed a simple XXX. 2005-01-07 15:49:11 +00:00
James Vega
3d109b5f37 Add supybot.plugins.Channel.banmask, to set the default style banmask to use
in kban.
2005-01-07 07:35:11 +00:00
James Vega
9420d2a17a Fix some docstrings 2005-01-07 04:47:12 +00:00
James Vega
f2a34f78c8 We should assert after we call the callable. 2005-01-06 15:55:09 +00:00
James Vega
6061f49a48 *** empty log message *** 2005-01-06 04:01:16 +00:00
James Vega
3598a0ac28 Add a couple irc.noReply calls. Thanks to Infobot for spotting these. 2005-01-06 02:59:35 +00:00
James Vega
63dc27905b Move our waitReconnectIndex increment to a place where it will actually get
called.  If it also needs to be where I removed, someone re-add it.
2005-01-06 02:58:14 +00:00
Jeremy Fincher
3337d813cd Better error message. 2005-01-05 21:38:36 +00:00
James Vega
3d8a4e280c revert 2005-01-04 14:29:40 +00:00
James Vega
e48126028d Simpler to just alias the methods and prevents typos. ;) 2005-01-04 04:05:38 +00:00
Jeremy Fincher
aa73b5dd81 Added a warning log. 2005-01-04 03:49:39 +00:00
Jeremy Fincher
2a8f2d4a5f Extra unknown_host thingamajob. 2005-01-04 03:46:06 +00:00
Jeremy Fincher
1f90a8ae54 Extra backup for something I can't remember what now. 2005-01-04 03:45:24 +00:00
Jeremy Fincher
cedcad32e2 Add a warning log. 2005-01-04 03:44:33 +00:00
James Vega
d97a652182 Need to actually add the channel to state.args if getChannel throws an exception 2005-01-02 02:34:54 +00:00
Jeremy Fincher
ae48b426b4 Updated for the new _checkCapability name. 2004-12-30 21:17:56 +00:00
James Vega
69d98609fc Fix User.hostmasks so it correctly checks capability and doesn't display
the hostmasks as an IrcSet
2004-12-30 16:37:45 +00:00
James Vega
5aa41afdcd Add NICK handling to prettyPrint. Prepping for non-PRIVMSG Seen tracking 2004-12-30 02:43:21 +00:00
James Vega
ab0eff4eea Add Infobot.update, which allows updating the is/are dbs with external Infobot
"fact packs".  Need to add threading so the bot isn't blocked while updating.
2004-12-29 20:34:19 +00:00
James Vega
4cd15d053a Move the docstring for addressed 2004-12-29 19:22:37 +00:00
James Vega
7217b01cd2 Tag addressed messages with the results of callbacks._addressed. Also,
reorder the calling of addressedRes and res in PrivmsgCommandAndRegexp so
that addressedRes are run first.
2004-12-29 06:15:19 +00:00
Jeremy Fincher
6002089619 Changed some non-public checkCapability methods to be prefixed with an underscore. 2004-12-27 06:58:26 +00:00
Jeremy Fincher
dae2a02231 Updated to 0.80.0pre6. 2004-12-22 10:36:36 +00:00
Jeremy Fincher
5c97b25fe2 Better error message. 2004-12-22 09:05:38 +00:00
Jeremy Fincher
a82e806a2d Removed supybot.databases.users.hash. Now we always hash by default, though the configuration file still supports unhashed passwords (useful for allowing owners to change passwords by editing the file). 2004-12-20 19:47:53 +00:00
Jeremy Fincher
07435be632 That assert just plain wasn't working out. Also, changed how supybot.user works so it stays up-to-date with the current version of the bot. 2004-12-20 19:46:35 +00:00
Jeremy Fincher
6d9cc6855d Updated some docstrings. 2004-12-20 19:19:29 +00:00
Jeremy Fincher
d31ff4532a Added an assert. 2004-12-20 19:00:50 +00:00
Jeremy Fincher
8b563876ea We shouldn't try to get ChannelValues when not given a channel. 2004-12-20 18:58:07 +00:00
Jeremy Fincher
ca8100605c We shouldn't try to get ChannelValues when not given a channel. 2004-12-20 18:56:25 +00:00
Jeremy Fincher
40f63858b0 Make apropos not case-sensitive. 2004-12-20 18:51:05 +00:00
Jeremy Fincher
619b604cd0 Geez...this method is my bane. 2004-12-20 16:37:28 +00:00
Jeremy Fincher
7a61683d38 Grr. 2004-12-20 15:09:39 +00:00
Jeremy Fincher
38814a3da0 Updated to 0.80.0pre5. 2004-12-20 07:12:12 +00:00
Jeremy Fincher
f69f1cf652 Fix bug in Channel.addcapability. 2004-12-20 03:05:09 +00:00
Jeremy Fincher
15d73946f0 Better (more accurate) error message on 438. 2004-12-18 21:24:39 +00:00
Jeremy Fincher
b421c07671 Changed the help for register and removed the --hashed option. 2004-12-18 21:07:37 +00:00
Jeremy Fincher
bb4890c067 Now we don't try to send empty messages privately. 2004-12-18 14:00:27 +00:00
Jeremy Fincher
481752fddd Forgot to set the password to private, oops. 2004-12-18 13:52:38 +00:00
Jeremy Fincher
20924ed87e Added RFE #1031748, optional password for Network.connect. 2004-12-17 19:51:09 +00:00
James Vega
360cba9c63 Updated to 0.80.0pre4. 2004-12-17 07:33:21 +00:00