Commit Graph

3297 Commits

Author SHA1 Message Date
Daniel Folkinshteyn
47fdfe2e9a String: set default re subprocess timeout to 0.1, since that should be quite enough. 2011-08-12 16:38:36 -04:00
Daniel Folkinshteyn
57884bba57 Misc: fix potential ddos when misc.last command is fed a specially-crafted regexp. 2011-08-12 16:30:46 -04:00
Daniel Folkinshteyn
3e0375812a String: fix it up to work with the previously committed enhancement for subprocess timeout. 2011-08-12 16:30:09 -04:00
Daniel Folkinshteyn
08e676e8fe Misc: fix test for misc.last 2011-08-12 16:21:36 -04:00
Daniel Folkinshteyn
3a96f6735b Services: catch occasional error when removing waiting joins from list 2011-08-08 18:45:02 -04:00
Daniel Folkinshteyn
1e337bdfa9 Dict: Fix FSF address in included dictclient module
Taking fresh address from http://www.gnu.org/licenses/old-licenses/gpl-2.0.html#SEC4
2011-06-27 14:41:49 -04:00
Daniel Folkinshteyn
2b708f034b Web: add 'timeout' config for web fetch, default 5 sec.
Otherwise, when a site would take a long time to respond, the thread would hang for quite a while.

also needed to mod src/utils/web.py to take the timeout arg.
2011-06-13 16:42:57 -04:00
Daniel Folkinshteyn
1b74b8ddf6 Seen: fix tests so they pass. fix seen command so it properly accepts nick wildcards. 2011-04-04 16:30:52 -04:00
Valentin Lorentz
da5b2b35e2 Seen: Fix save Seen.any.db. (thanks to beo_ for the repport and the test)
Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2011-04-04 16:21:12 -04:00
Daniel Folkinshteyn
c25db0ecdf Services: fix problem with some channels being mixed up between networks on startup, when noJoinsUntilIdentified is true.
When noJoinsUntilIdentified config is true, the bot holds join messages in a 'waitingJoins' list, and processes them
once nickserv identification comes through. The problem was that when the bot is configured to join multiple networks,
join messages from different networks would get appended to the same list, without any differentiation by which message
belongs to which network. Thus, if there are messages waiting for multiple networks, it would often be the case that
whichever network got identification done first, would 'pick up' other network's join messages.

This fix stores the network name along with the join messages in the list, and has each network pick out only its own
join messages.
2011-03-13 14:21:46 -04:00
Daniel Folkinshteyn
831a2c3b9a Topic: get shouldn't require capabilities, since it's a read-only operation. 2011-01-25 01:26:42 -05:00
Daniel Folkinshteyn
3151d08e73 Filter: fix rainbow so it doesn't fail with numbers.
fixing this bug: https://sourceforge.net/tracker/?func=detail&aid=3140981&group_id=58965&atid=489447

Thanks to The Compiler for the report and the fix.
2011-01-24 16:18:01 -05:00
Daniel Folkinshteyn
fc1a3ab258 Services: add some more strings indicating identification success. 2011-01-18 13:51:34 -05:00
Daniel Folkinshteyn
42464d8180 Google: add some extra matching capability to google calc
now should be able to display any 'special' result from google.
2010-12-01 16:53:08 -05:00
James Vega
9183c96a13 Services: Correct formatting of "isn't registered" log.
Closes: Sf#3075937
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit cb48912db6)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:43:34 -04:00
Daniel Folkinshteyn
e78a754c69 Unix: Use converter to enforce "no spaces" for spell's argument.
Closes: Sf#3064304
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit ca56575eb5)
2010-10-10 17:42:26 -04:00
James Vega
771331232e Use the plugin name for Owner.defaultplugin's error message.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 074ded49e4)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:39:40 -04:00
James Vega
14a5f52b29 Games: Re-add some, much higher, upper limits to dice.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 154fbc30e9)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:39:08 -04:00
James Vega
fa7c17e24e Karma: Refer to plugins.Karma.rankingDisplay in Karma.karma's help.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 45abdc8248)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:38:44 -04:00
James Vega
8baf08b882 Handle changes to fnmatch.translate in Python 2.6
Define utils.python.glob2re based on the Python version being used.
Use glob2re in Todo and Note plugins.

Closes: Sf#3059292
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit b0575cec88)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:38:08 -04:00
James Vega
3177b3ac36 <text> -> <thing> in Karma.karma's help
Closes: Sf#3057517
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit fc2a84fb90)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:37:05 -04:00
James Vega
219832a0f9 Limiter: Fix "reduce limit" test case.
Closes: Sf#3058142
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit c0e24cef30)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:36:23 -04:00
James Vega
f68b6f709e Google: Remove Groups snarfer
The regular expressions were woefully out of date and since there's not a
stable API (or any for that matter), keeping things working is a losing
battle.

Closes: Sf#3057485
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit c9274606ce)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:35:31 -04:00
James Vega
961786f362 Games: Remove arbitrary upper limits on dice command.
Closes: Sf#3057255
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 7cf61ad046)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-10-10 17:34:56 -04:00
Daniel Folkinshteyn
246c73eed2 BadWords: improve help for requireWordBoundaries config.
Make a note that the plugin requires restart or the words set updating,
for changes to this setting to take effect.
2010-09-08 00:11:28 -04:00
Daniel Folkinshteyn
8d80fb9e88 Badwords: add plugin docstring, and fix/standardize some method docstrings. 2010-09-07 20:27:51 -04:00
Daniel Folkinshteyn
3c00d82579 Scheduler: don't immediately execute commands when restoring repeated events. 2010-09-04 01:25:57 -04:00
Daniel Folkinshteyn
0fe7912628 Misc: update version command to get latest version from gribble git.
Note: if this is ever merged into upstream supybot, should change url
to point at supybot gitweb, rather than gribble.
2010-09-02 18:31:42 -04:00
James Vega
bde37c2afe Channel: Correct specification of "#channel,op" capability.
Closes: Sf#3055991
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 8cc6320768)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:09:29 -04:00
James Vega
ee42f42fb4 Filter: Rename _(un)code to _(morse|unMorse)code
Closes: Sf#3056753
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 452c019b10)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:09:05 -04:00
James Vega
d6423cad67 Dict: Refer to the server config variable in Dict.dict's help.
Closes: Sf#3056621
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit bc98577fb1)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:08:43 -04:00
James Vega
828b82ea9c User: Handle DuplicateHostmask exception in hostmask.add.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 577294f489)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:08:21 -04:00
James Vega
1fbc28b376 User: Only require name for set.password when changing other user's password.
Closes: Sf#3055358
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit de726f90f3)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:07:35 -04:00
James Vega
5e72daa5f4 User: Require set.password to be sent in private.
Closes: Sf#3055365
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit f977a3a260)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:07:11 -04:00
James Vega
2c812cfd9e User: Specify changename must be used in private in its help.
Closes: Sf#3055353
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 07da8cab13)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:06:33 -04:00
James Vega
7613e4056a Model Admin's ignore help after Channel's.
Closes: Sf#3054919
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 25b987cc58)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-09-02 09:05:52 -04:00
Daniel Folkinshteyn
3a0e19bc22 Scheduler: remove spammy debug output. 2010-09-02 08:54:13 -04:00
Daniel Folkinshteyn
f9fc250a62 Scheduler: handle event persistence on plugin reload.
Write data to disk on unload; populate events dict with events which are
still scheduled on reload.
2010-09-01 16:37:55 -04:00
Daniel Folkinshteyn
e5e9cbba69 Scheduler: add scheduled task persistence.
The list of tasks scheduled with the Scheduler plugin is now saved
on exit, and restored upon restart.

Previously all scheduled tasks would be forgotten upon bot restart,
which was undesirable behavior.
2010-09-01 15:03:20 -04:00
quantumlemur
2c37d3e6a7 MessageParser: added configurable separator for the list command. 2010-08-19 20:12:07 -04:00
Daniel Folkinshteyn
4ea3761b4b String: make levenshtein command threaded, since it can take a nontrivial amount of time with longer inputs. 2010-08-08 01:46:05 -04:00
Daniel Folkinshteyn
2d9f61e66c String: make re timeout configurable. 2010-08-08 01:43:05 -04:00
Daniel Folkinshteyn
89fd19ed7d Status.processes: add output of currently active processes. 2010-08-06 14:48:21 -04:00
Daniel Folkinshteyn
e779b70609 Merge branch 'multiprocess' 2010-08-05 14:01:23 -04:00
Daniel Folkinshteyn
f55606cfb4 Status: add 'processes' command, the multiprocessing equivalent of the threads command. 2010-08-05 13:54:54 -04:00
Daniel Folkinshteyn
89cbc7efdf Some improvements to the commands.process function - better process naming and informational output. 2010-08-05 13:45:02 -04:00
Daniel Folkinshteyn
1b84e208ca Format.replace: replacement text is now allowed to be the empty string. 2010-08-05 01:27:38 -04:00
Daniel Folkinshteyn
0c300162d8 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.
2010-08-05 01:20:46 -04:00
Daniel Folkinshteyn
9398025088 MoobotFactoids: add check_same_thread=False to the sqlite3 connect calls, so it doesn't complain. (thanks malex!)
also fix up the code a bit so it doesn't fail the tests, and doesn't require presence of plain sqlite.
2010-08-02 17:51:17 -04:00
Daniel Folkinshteyn
3a181b6dd2 Google: fix encoding bug in lucky --snippet; need to pass encoded string to utils.web.htmlToText 2010-07-26 09:22:07 -04:00