Commit Graph

3249 Commits

Author SHA1 Message Date
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
Daniel Folkinshteyn
d469108054 Topic: fix bug in invalid number error output.
Previously, when giving an invalid positive number, error would reference number-1 as being invalid.
2010-07-23 16:50:25 -04:00
Daniel Folkinshteyn
4aa876255c Filter: catch invalid input for unbinary command. 2010-07-21 12:57:18 -04:00
Daniel Folkinshteyn
920c37c314 Unix: add call command, giving owner ability to call any system command. 2010-07-21 12:48:46 -04:00
Daniel Folkinshteyn
76f109ce0d Google: in lucky --snippet, properly convert html to text, using utils.web.htmlToText. 2010-07-14 19:08:13 -04:00
Daniel Folkinshteyn
6905d22c2c Google: add --snippet option to lucky command, which shows the text snippet for the page. 2010-07-14 15:56:48 -04:00
brian c
edc4d8644e Unix: various enhancements to the ping command:
Fixed bug in 100% packet loss response.
Errors from ping are now sent to irc.error().
Added packet count, interval, ttl, and wait options.
Added additional test cases.

Also, Enabled threading for Unix plugin, and
for wtf, spell, and ping commands.

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-07-13 11:52:51 -04:00
James Vega
3a84faeb18 Include String plugin for Utilities' tests.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 3090cffe2c)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-07-11 23:06:03 -04:00
James Vega
6e33df49ab ShrinkUrl: Add serviceRotation config.
When configured, the outFilter and shrinkSnarfer use cycle through
serviceRotation's list of services.  Otherwise, the default service is used.

Closes: deb#539858

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 0bfa0d153c)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-07-11 23:05:39 -04:00
oevna@users.sourceforge.net
6df6d477f1 Unix: fixed uncaught OSError exception raised when executing ping fails.
Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-07-09 12:22:32 -04:00
Daniel Folkinshteyn
e178d04522 Unix: fix test for the ping command, call unix ping instead of the default misc ping. 2010-07-08 23:29:01 -04:00
oevna@users.sourceforge.net
a8e91a58a0 Added ping command to Unix plugin
Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-07-08 23:19:57 -04:00
Daniel Folkinshteyn
67a41f6626 Filter: add unbinary command, as counterpart to binary command. 2010-07-01 15:44:53 -04:00
James Vega
0781ff339e Services: Don't filter outgoing JOIN messages on disabled networks
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit acffde68ab)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-06-28 23:12:35 -04:00
James Vega
23cca935cb Use conf.registerGlobalValue to ensure generated values are properly setup.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 0c62204809)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-06-25 00:42:02 -04:00
James Vega
dbde5fc250 Elide ignored replies from nested command output.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit c10d964604)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-06-25 00:41:47 -04:00
James Vega
16dbd8917a Services: Properly register the NickServ.password group and child values.
Closes: Sf#3019174

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit d78f7b6ac5)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-06-22 00:13:13 -04:00
James Vega
9b9d009c43 Services: Fix conflict with callbacks.Commands.isDisabled
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit f926804f40)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-06-21 14:53:08 -04:00
James Vega
d21fc27e0c Services: Disable most of the plugin on networks in the disabled list.
Notify the user when trying to use the commands on a disabled network, ignore
noJoinsUntilIdentified, and don't try communicating with services.

Closes: Sf#3018464

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 9e73f4482c)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-06-21 14:52:42 -04:00
Daniel Folkinshteyn
1ce52f01f4 ChannelLogger: include in logs the reasons for parts and quits 2010-06-15 23:53:15 -04:00
Daniel Folkinshteyn
a91bc318dc Channel: nicks: add --count argument, which outputs only the count of nicks in channel.
also add tests for the nick command.
2010-06-13 02:36:18 -04:00
Daniel Folkinshteyn
80491fddb1 Conditional: allow empty string arguments in string-comparison functions 2010-06-03 17:03:39 -04:00
Daniel Folkinshteyn
5f2d2a9c5e Utilities: add countargs function, returns number of arguments supplied.
also add tests for it.
2010-06-03 16:08:25 -04:00
Daniel Folkinshteyn
52b36555f4 Utilities: add 'sample' command, a basic interface to random.sample()
Also add tests for it.
2010-06-03 13:06:28 -04:00
James Vega
db479731b1 Anonymous: Implement support for allowPrivateTarget config.
Closes: Sf#2991515

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 57e894de58)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-06-03 10:43:31 -04:00
Daniel Folkinshteyn
1a228b3e7d fix google calc to work when doing a currency conversion.
made the calcre more generic, so it finds stuff on both math and currency.
nothing a little exploration of google html page source couldn't solve.
2010-06-02 18:36:27 -04:00
Daniel Folkinshteyn
f25d1546bf restore the 'import re' to Topic plugin, which was for some reason taken out
two commits ago, in commit 51cabeea33
it is necessary for the operation of the plugin
(specifically, in the _checkManageCapabilities function)

the tests didn't catch that because it apparently imports re separately.
2010-05-13 00:52:58 -04:00
Štěpán Němec
f3af3ec282 Topic plugin: Restore topic automatically after join if not set.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 18ef6dadfc)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-05-12 13:20:32 -04:00
Štěpán Němec
51cabeea33 Topic plugin: Add persistence support.
Topics now persist between restarts.

Rationale: Useful when reloading/restarting; previously the topics would
be just forgotten. Don't use database, as that would be an unnecessary
overkill and in any case not needed.

(Also, remove the unused `re' module import.)

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 6520d1f282)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-05-12 13:19:54 -04:00
James Vega
fc1a049d3c ChannelStats: Fix rank to work with selfStats
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 41fd218b8d)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2010-05-12 13:19:01 -04:00
Daniel Folkinshteyn
5d15bbf1b2 for Later plugin, add test for actual sending of notes to nicks upon their being seen. 2010-04-29 20:20:36 -04:00
Daniel Folkinshteyn
9c12f80285 Add Later note expiration period, 30 days by default.
This should prevent the accumulation of old unclaimed notes in the database,
which is possible due to notes left to misspelled nicks, to temporary nicks
used by regulars, or to one-time visitor nicks.
2010-04-29 20:04:51 -04:00
Daniel Folkinshteyn
e4c51ef517 Add --raw option to factoids.whatis, which disables variable substitution on the factoid.
also add test for this.
2010-04-28 15:27:08 -04:00
Daniel Folkinshteyn
976ad82d69 Use the ircutils.standardSubsitute function upon factoid output.
This allows inclusion of the usual standardSubstitute vars within factoids.

There is no config to disable this, since it is possible to escape the substitutions
by simply doubling the dollar signs, as per the python documentation:
http://docs.python.org/library/string.html#template-strings

Thus, if you want a factoid to output a literal "$channel", for example, all
you'd need to do is use "$$channel" in your factoid text, which will come out
as "$channel" when said by the bot.

Also added tests for this new behavior.
2010-04-28 00:10:48 -04:00
Daniel Folkinshteyn
71f88caa6b Clarify the on-error log message in MessageParser function caller. 2010-04-27 15:29:09 -04:00
Daniel Folkinshteyn
a819c5b496 make Misc.apropos return plugin name even if command is in only one plugin. 2010-04-27 12:46:22 -04:00
Daniel Folkinshteyn
2bb3ba9443 fix bug in RSS.announce.list:
Because the 'channel' argument was declared optional, calling announce.list
off-channel without a channel argument caused an error.
2010-04-26 19:50:08 -04:00
Daniel Folkinshteyn
f1517a7acc some enhancements Factoids.rank:
output options: plain key output, and alpha sorting for plain output.
allow an optional argument for how many ranked facts to show.
2010-04-25 02:58:43 -04:00
Daniel Folkinshteyn
55eeb4a57b Add some sanity checks to RSS plugin:
First: if an rss feed is called without the number of headlines argument,
we now have a default number of items it will output.
before, it tried to stuff the whole rss feed into the channel, which is quite
floody, if more than one 'mores' is set, or if oneToOne is false.

Second: when adding a new feed to announce, it again, tried to stuff the
whole rss feed into the channel, which ran into the same floody conditions
as above. now we have a default number of feeds to output when there's no
cached history.
2010-04-25 00:34:31 -04:00
Daniel Folkinshteyn
3005752c58 fix docstring for Plugin.plugin command so it actually says what the command will do.
also add a Plugin.plugins command, which always returns a list of all plugins containing a command.
add a test for it.
2010-04-21 16:38:25 -04:00
Daniel Folkinshteyn
9c5f05ab2d update quotegrabs to sqlite3 2010-04-21 01:24:13 -04:00
Daniel Folkinshteyn
022193b61b for Factoids: make approximate fuzzy key searches also when invoking whatis directly.
also add tests.
while there, remove useless config setting for replyinvalidcommand testing, since it is true by default.
2010-04-18 03:33:10 -04:00
Daniel Folkinshteyn
b5058cc5c2 update Karma plugin and test code to use sqlite3.
This involved also updating src/conf.py to look for sqlite3 and add it to supybot.conf.databases list,
since karma uses the plugins.DB() constructor for its database, which checks the available databases list.
2010-04-18 02:10:29 -04:00
Daniel Folkinshteyn
4890e2e80d for Alias, make doc string say "at least x args" if there are optional args in addition to required args.
yay for cosmetic improvements. :)
2010-04-14 10:56:39 -04:00
Daniel Folkinshteyn
aa634e6da1 fix alias bug https://sourceforge.net/tracker/?func=detail&aid=2987147&group_id=58965&atid=489447
add tests for appropriate behavior
2010-04-14 10:27:56 -04:00
Daniel Folkinshteyn
5e162a28f7 make google translate return detailed google error, instead of the unhelpful "we broke google". 2010-04-11 18:27:39 -04:00
Daniel Folkinshteyn
127b3cfabd for google translate, error if destination language is 'auto'. 2010-04-11 17:37:09 -04:00
Daniel Folkinshteyn
34d91284a5 in Later nick validation, use irc.isNick. now instead of forcing strictRfc to true, we are using the config. 2010-04-11 17:01:31 -04:00
Daniel Folkinshteyn
67ab067e6a take out getDb override from factoids, since i have changed it upstream, in plugins.__init__.py, to use proper sqlite3 syntax. 2010-04-11 16:40:59 -04:00