Commit Graph

7130 Commits

Author SHA1 Message Date
James McCoy 180508496f docs/USING_WRAP.rst: Add docs for missing converters
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 19:43:55 -04:00
James McCoy 6ab807be43 utils.net: Use _ipAddr and _domain from utils.web to define emailRe
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 19:43:11 -04:00
Valentin Lorentz db3746d122 Add support for authentication scheme.
This commit closes http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=690879

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 19:42:15 -04:00
Valentin Lorentz 7d87d422e1 Fix detection of .42 domains
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 19:15:05 -04:00
Daniel Folkinshteyn dfdfd00b04 core: make sure owner is never ignored. also simplify the logic flow in ignore checking.
Thanks m4v for the patch!

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 15:11:23 -04:00
Daniel Folkinshteyn 18ec61842c Secure some more commands which take a regexp from untrusted user input.
Namely todo.search, note.search, dunno.search.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 15:06:43 -04:00
Daniel Folkinshteyn ac500b059a String: set default re subprocess timeout to 0.1, since that should be quite enough.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 14:56:30 -04:00
Daniel Folkinshteyn 9356d0734f Misc: fix potential ddos when misc.last command is fed a specially-crafted regexp.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 14:56:11 -04:00
Daniel Folkinshteyn 72c5c8ec09 String: fix it up to work with the previously committed enhancement for subprocess timeout.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-20 14:47:16 -04:00
Daniel Folkinshteyn 6a9af819a3 src/commands.py: make subprocesses raise an error on timeout, rather than return a string
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:14:15 -04:00
Daniel Folkinshteyn f310350335 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.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:10:56 -04:00
Daniel Folkinshteyn ce9891368b Seen: fix tests so they pass. fix seen command so it properly accepts nick wildcards.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:09:34 -04:00
Valentin Lorentz 8ded033410 Seen: Fix save Seen.any.db. (thanks to beo_ for the repport and the test)
Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:06:49 -04:00
Daniel Folkinshteyn 854e086fa7 Topic: get shouldn't require capabilities, since it's a read-only operation.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:04:35 -04:00
Daniel Folkinshteyn 02b9431536 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.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:01:39 -04:00
Daniel Folkinshteyn 011d4dd676 Badwords: add plugin docstring, and fix/standardize some method docstrings.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 22:00:08 -04:00
Daniel Folkinshteyn a5ec33adeb Make plugin loading/reloading case-insensitive.
Since load/reload was the only place where case mattered for plugins, and it tripped up
a lot of new users, this should be a nice bit of usability improvement.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:51:00 -04:00
Daniel Folkinshteyn 92be7c255f String: make levenshtein command threaded, since it can take a nontrivial amount of time with longer inputs.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:49:15 -04:00
Daniel Folkinshteyn 34e5aedc45 String: make re timeout configurable.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:47:32 -04:00
Daniel Folkinshteyn 9fc7ec28b4 Fix error handling for subprocesses.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:44:04 -04:00
Daniel Folkinshteyn 7504c646b7 Status.processes: add output of currently active processes.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:35:26 -04:00
Daniel Folkinshteyn 141b120a9c commands.process: return immediately when terminating process, without having to deal with the queue.
otherwise, we have to block for $smalldelay between putting and getting the item, since queue putting is not instantaneous
and sometimes we would get 'nothing returned' instead of the timeout message.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:32:54 -04:00
Daniel Folkinshteyn 7f4a1be9f9 Status: add 'processes' command, the multiprocessing equivalent of the threads command.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:32:17 -04:00
Daniel Folkinshteyn 7f98aa7105 Some improvements to the commands.process function - better process naming and informational output.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 21:28:41 -04:00
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
Daniel Folkinshteyn d691a91636 Topic: fix bug in invalid number error output.
Previously, when giving an invalid positive number, error would reference number-1 as being invalid.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 20:52:27 -04:00
Daniel Folkinshteyn 84b878b10e Filter: catch invalid input for unbinary command.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 20:51:13 -04:00
Daniel Folkinshteyn 7feb50685a Filter: add unbinary command, as counterpart to binary command.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-15 20:47:30 -04:00
Daniel Folkinshteyn 6025f7364c core: force inet_aton argument to string to prevent occasional error on reconnect.
it /should/ always be a string anyway, but sometimes things break with
a TypeError that it is an int instead of the expected string and hangs
up the bot.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-14 12:21:56 -04:00
James McCoy aa4071fa68 RSS: Remove local/feedparser and add it to install_requires
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-14 12:13:00 -04:00
James McCoy 450be69710 Bootstrap setuptools if it isn't available.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-14 12:12:23 -04:00
James McCoy 0b81b170ca Indicate supybot.networks.$network.servers/channels are space-separated lists in their help
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-10-04 21:41:00 -04:00
Valentin Lorentz b8b79d063d Admin: Change message 'It's banned me' into 'I am banned.'. Closes GH-329.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-17 22:22:34 -04:00
James McCoy 198688eab4 Import external dateutil module
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-17 22:15:52 -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 McCoy b1552ced11 Ignore setuptools directories
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-17 21:31:49 -04:00
James McCoy 52e71edacc Time: Remove dateutil and add it to install_requires
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-10 22:28:34 -04:00
James McCoy 7203ac383d setup.py: Use setuptools instead of distutils
This will allow us to automatically install dependencies with easy_install
instead of shipping stale copies with Supybot

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-10 22:25:54 -04:00
James McCoy 6c7aec165f Remove a few more references to local.simplejson
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-10 20:54:08 -04:00
James McCoy 748b76404f Google: Use standard json module now that 2.6 is minimum Python version
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-10 20:07:43 -04:00
James McCoy 45329fbdce schedule: Allow arguments for scheduled functions, lock before modifying heap
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-08 16:02:30 -04:00
James McCoy 6f925e5f7a Google: Remove calc and phonebook commands
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-05 23:04:10 -04:00
James McCoy 304facd167 Google: Remove translate command since their API is gone
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-05 22:51:11 -04:00
James McCoy b7efbf409c Plugin: Fix failures in testPlugin
The tests were running into the ambiguity between nested commands and commands
with the same name as their plugin, so "plugin plugin" is treated as
specifying the plugin command from the plugin plugin.  This leads to it
displaying the help, since an argument is expected.

Since the Utilities plugin is already loaded by the test suite, use a command
from it as the argument to the plugin command.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-05 21:50:42 -04:00
James McCoy 124361d76d Ignore backup/
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-05 21:36:57 -04:00
James McCoy d73a801d8f Web: Remove/update non-functional tests
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-05 21:35:56 -04:00
Daniel Folkinshteyn 5bb6fdcd52 core: avoid casting data to string if it is already an instance of basestring, in irc.reply.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-05 20:11:53 -04:00
Mika Suomalainen bcfdcf09cf MoobotFactoids: fixed mistakes and added ACTION to README.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-04 22:50:44 -04:00
Mika Suomalainen d38cc2daab MoobotFactoids: improved readme file from default.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-04 22:50:44 -04:00
Mika Suomalainen 5166d840aa Internet: improved README.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-09-04 22:50:44 -04:00