Commit Graph

79 Commits

Author SHA1 Message Date
Daniel Folkinshteyn
a2985c37d6 Create a commands.process function which runs a function inside a separate process.
This is the only way to limit the execution time of a possibly long-running python statement.
Use this on String.re, due to the possibility of pathologically long re matching in python.
This allows us to remove the 'trusted-only' restriction on string.re.
In the future, this should probably be used in other places that take user-supplied regexps,
such as 'misc last --regexp', for example, as well as other potentially long-running tasks
that can block the bot.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:19:34 -04:00
James McCoy
cef93a6cfd Use relative imports for all packages under the supybot namespace
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-17 22:12:11 -04: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
a3e4fc5b1d Change the modeline to use softtabstop instead of tabstop. 2006-02-11 15:52:51 +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
0b848199b5 Fixed some style issues with logging calls. 2005-05-18 04:18:35 +00:00
James Vega
9971e991fe Fix the modelines. 2005-03-23 20:07:45 +00:00
Jeremy Fincher
0016b4ff21 Workaround for twisted stupidity. 2005-02-28 20:08:46 +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
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
Jeremy Fincher
d15e7e8d7f Removed an assert that isn't too important. 2005-01-12 21:07:42 +00:00
Jeremy Fincher
7c2e9f8990 Added getIrc. 2004-12-16 08:10:09 +00:00
Jeremy Fincher
76fc8b946e Removed some useless options from close. 2004-10-03 22:18:12 +00:00
Jeremy Fincher
69dce4761d Made sure to return our reply messages, changed some threading stuff, etc. 2004-09-30 04:13:08 +00:00
James Vega
50973a10fb Remove #! lines. 2004-09-20 03:01:50 +00:00
Jeremy Fincher
edbfd43281 Commented out something. 2004-09-17 03:32:33 +00:00
Jeremy Fincher
f496c804a2 Changed the way upkeep is scheduled. 2004-09-08 22:42:54 +00:00
Jeremy Fincher
d6e3f13513 Elucidating comment. 2004-08-29 04:32:07 +00:00
Jeremy Fincher
fbb348b6e7 Copyright updates. Again, more is left to be done, but this is my part. 2004-08-23 13:14:06 +00:00
Jeremy Fincher
0f598271dc Speeling fixes. 2004-08-18 23:15:27 +00:00
Jeremy Fincher
1290d2e3eb Added profiling information as well as the threads command. 2004-08-17 20:28:00 +00:00
Jeremy Fincher
cafd724d30 PyChecker fixes. 2004-08-11 13:51:15 +00:00
Jeremy Fincher
16c832bd62 Do we really need the timestamp here? 2004-08-07 00:58:45 +00:00
Jeremy Fincher
f9c61271ea w00, less path mungingEXCLAIMEXCLAIM 2004-07-24 05:18:26 +00:00
James Vega
1383da0f1a Prevent scheduled downloads from happening when we're generating
docs (hopfully), and fix a userdataFilename bug introduced in the
earlier fix.
2004-06-20 08:14:59 +00:00
Jeremy Fincher
f099a53374 Moved the gc.collect until the end. 2004-05-07 11:41:45 +00:00
Jeremy Fincher
e3b690f933 Added userdata registry. 2004-04-30 18:24:35 +00:00
Jeremy Fincher
418e14325a Told people who see garbage to file a bug. 2004-04-30 05:22:33 +00:00
Jeremy Fincher
dc1bc4ba55 Updated a ton of configuration variables. 2004-04-30 02:13:42 +00:00
Jeremy Fincher
ac67bb0cc0 Added more daemonization code. 2004-04-20 10:40:27 +00:00
Jeremy Fincher
69c7c76e3a Added another handler for daemonized...we're getting pretty close, we just need to actually daemonize :) 2004-04-20 09:42:20 +00:00
Jeremy Fincher
5b03c6d5b7 Just some extra logging in case a flusher fails. 2004-03-24 22:53:47 +00:00
Jeremy Fincher
e609d5dfd7 Fixed the problem of having multiple upkeeps scheduled. 2004-02-17 18:10:27 +00:00
Jeremy Fincher
c65dfd718e Made sure the failure of one flusher doesn't affect them all. 2004-02-12 06:48:22 +00:00
Jeremy Fincher
f364bb9705 Added world.starting to know that we shouldn't flush. 2004-02-12 00:49:41 +00:00
Jeremy Fincher
0c2de453f2 Threaded RSS's announcements and made reloading/flushing work properly. 2004-02-10 02:49:52 +00:00
Jeremy Fincher
a178492453 Made the interval between upkeeps configurable. 2004-02-08 10:49:08 +00:00
Jeremy Fincher
b51961b18a Added supybot.defaultSocketTimeout as a configurable. 2004-02-07 11:12:12 +00:00
Jeremy Fincher
4c8f3d5314 Made the registry dynamically reloadable as well as added a supybot.flush configuration variable. 2004-02-03 22:58:54 +00:00
Jeremy Fincher
18ce33a61d Shortened upkeep message slightly so it fits in a single line with the timestamp. 2004-02-03 16:19:43 +00:00
Jeremy Fincher
393a5b48f3 Cooler upkeep logging message. Again. 2004-02-03 05:38:39 +00:00
Jeremy Fincher
c0f3c7d9ba Cooler upkeep logging message. 2004-02-03 05:38:02 +00:00
Jeremy Fincher
dc87ed26aa Added log.timestamp. 2004-01-19 20:22:06 +00:00
Jeremy Fincher
6ca78924f3 HUUUUUUUUGE Configuration change. 2004-01-18 07:58:26 +00:00
Jeremy Fincher
a7ba5a0f25 Made world cleanup drivers, too. 2004-01-15 12:55:19 +00:00
Jeremy Fincher
d283985405 Removed tempvars. 2004-01-15 12:16:55 +00:00
Jeremy Fincher
2a60ba61c5 Clear exception info to make sure things get collected, just in case. 2004-01-15 11:54:41 +00:00
Jeremy Fincher
44aebd9536 Slight style update. 2004-01-02 22:29:03 +00:00