Commit Graph

3462 Commits

Author SHA1 Message Date
Daniel Folkinshteyn
da25be73d4 Channel: nicks: add --count argument, which outputs only the count of nicks in channel.
also add tests for the nick command.
2011-02-25 19:27:07 +01:00
Daniel Folkinshteyn
8e80e7b657 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.
2011-02-25 19:24:04 +01:00
Daniel Folkinshteyn
2925c45b51 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.
2011-02-25 19:22:56 +01:00
Daniel Folkinshteyn
9f26bb1420 for Later plugin, add test for actual sending of notes to nicks upon their being seen. 2011-02-25 19:21:00 +01:00
Daniel Folkinshteyn
a6d92a70e8 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.
2011-02-25 19:20:48 +01:00
Daniel Folkinshteyn
dfeb50de2d Add --raw option to factoids.whatis, which disables variable substitution on the factoid.
also add test for this.
2011-02-25 19:18:50 +01:00
Daniel Folkinshteyn
b12d8a8a04 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.
2011-02-25 19:18:02 +01:00
Daniel Folkinshteyn
8ed94257ba 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.
2011-02-25 19:16:48 +01:00
Daniel Folkinshteyn
7c3bc67c86 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.
2011-02-25 19:15:41 +01:00
Daniel Folkinshteyn
7505f839fc 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.
2011-02-25 19:14:35 +01:00
Daniel Folkinshteyn
92fc1e308f update quotegrabs to sqlite3 2011-02-25 19:14:06 +01:00
Daniel Folkinshteyn
d433bfc8f0 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.
2011-02-25 19:13:27 +01:00
Daniel Folkinshteyn
e939cfd124 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.
2011-02-25 19:11:58 +01:00
Daniel Folkinshteyn
bf6f0e2d18 make google translate return detailed google error, instead of the unhelpful "we broke google". 2011-02-25 18:56:56 +01:00
Daniel Folkinshteyn
8d45228642 for google translate, error if destination language is 'auto'. 2011-02-25 18:56:50 +01:00
Daniel Folkinshteyn
261a646451 in Later nick validation, use irc.isNick. now instead of forcing strictRfc to true, we are using the config. 2011-02-25 18:56:40 +01:00
Daniel Folkinshteyn
e46948400d take out getDb override from factoids, since i have changed it upstream, in plugins.__init__.py, to use proper sqlite3 syntax. 2011-02-25 18:54:51 +01:00
Daniel Folkinshteyn
1b0aa48368 make on-join telling for later configurable. 2011-02-25 18:54:30 +01:00
Daniel Folkinshteyn
e68704a0fc topic now checks for +t mode before denying topic changes, and also allows halfops in addition to ops.
default required capabilities for topic changes (if topic is +t and user is not an op or halfop), are chan,op and chan,halfop
thanks jemfinch for the suggestions.
2011-02-25 18:53:11 +01:00
Daniel Folkinshteyn
dae8dfd2e7 add replace function to format that takes varying-length strings to replace.
add test for it
add error test for format.translate for different length translate args.
2011-02-25 18:49:39 +01:00
Daniel Folkinshteyn
2d718d31bb Fix factoids bug ,Factoids.showFactoidIfOnlyOneMatch feature is broken when used off-channel:
https://sourceforge.net/tracker/?func=detail&aid=2965589&group_id=58965&atid=489447
2011-02-25 18:48:56 +01:00
Daniel Folkinshteyn
c0986e1122 change Topic to have a default required capability set, for all write operations.
by default, now only allows chanops, and users with admin or channel,op capability to change topics
2011-02-25 18:47:56 +01:00
Daniel Folkinshteyn
7ec1ca2070 make later plugin send waiting messages on user join also, not just on privmsg. 2011-02-25 18:38:14 +01:00
Daniel Folkinshteyn
fcaa7863fa add nick validation to later tell
this avoids plugging the later db with messages for bogus nicks
2011-02-25 18:37:22 +01:00
Daniel Folkinshteyn
a2da24d202 add a random-synonym getting function to Dict, add tests for it.
using the moby-thes database from dict.org.
2011-02-25 18:36:17 +01:00
Daniel Folkinshteyn
b306c5440f add damerau-levenshtein distance to supybot.utils.seq
use it in factoids invalid command to match possible typos
write tests for same.
2011-02-25 18:36:09 +01:00
Daniel Folkinshteyn
bdc8fd5285 fix some encoding error for non-ascii langs 2011-02-25 18:36:00 +01:00
Daniel Folkinshteyn
ca045128d7 add detected source language display for 'auto' google translate, add test for auto translate. 2011-02-25 18:35:53 +01:00
Daniel Folkinshteyn
6b324674a7 enable google translate to autodetect language with 'auto' fromlang. 2011-02-25 18:35:44 +01:00
Daniel Folkinshteyn
9b516480af add tests for factoids.alias 2011-02-25 18:35:37 +01:00
Daniel Folkinshteyn
50ac5a05e1 delete leftover debug-prints 2011-02-25 18:35:30 +01:00
Daniel Folkinshteyn
366c2b7c17 add factoids alias function, to link more keys to existing factoids. 2011-02-25 18:35:17 +01:00
Daniel Folkinshteyn
436d2bade8 mod factoids plugin to use a separate key-value relationship table
this avoids duplication, and allows one to set a bunch of aliases for a factoid, without creating duplicates of the same fact content.
2011-02-25 18:33:40 +01:00
Daniel Folkinshteyn
471921eab6 make 'factoids info' include usage count in output. add test for same. 2011-02-24 21:03:30 +01:00
nanotube
e71ee8fbb1 don't give up too easily with invalid command, instead search factoid keys with wildcard first. 2011-02-24 21:02:39 +01:00
nanotube
b922890b6f add rank test to factoids, update factoids test code to sqlite3 2011-02-24 21:01:19 +01:00
nanotube
5c0596f484 rename factrank to just rank for consistency 2011-02-24 21:01:08 +01:00
Daniel Folkinshteyn
2b5ffaa940 add replies function to reply plugin, which makes multiple replies, if supybot.reply.oneToOne is false. 2011-02-24 20:58:05 +01:00
Daniel Folkinshteyn
f71464adb3 This merges an old branch i had for sqlite3 factoids+moobotfactoids.
fix up moobotfactoids+factoids to use the sqlite text_factory=str,
also fixed up a test for factoid search, since it now sorts keys alphabetically.
2011-02-24 20:55:24 +01:00
Daniel Folkinshteyn
c0ebdddb47 start factoid rankings from 1 not from 0 2011-02-24 20:09:00 +01:00
Daniel Folkinshteyn
34f8557cfd remove rogue test-print 2011-02-24 20:06:35 +01:00
Daniel Folkinshteyn
7351ec1702 sort keys in factoid search output by alphabetically by key name. 2011-02-24 20:03:28 +01:00
Daniel Folkinshteyn
d2ac0e742a implement factoid usage counter 2011-02-24 20:03:03 +01:00
Daniel Folkinshteyn
957998f483 Utilities: add countargs function, returns number of arguments supplied.
also add tests for it.
2011-02-20 11:30:50 +01:00
Daniel Folkinshteyn
6381266cfd Utilities: add 'sample' command, a basic interface to random.sample()
Also add tests for it.
2011-02-20 11:29:08 +01:00
Valentin Lorentz
9d7287a436 Import MessageParser from gribble repo 2011-02-20 11:14:29 +01:00
Valentin Lorentz
f3a20df8f1 Import Conditional from gribble repo 2011-02-20 11:13:57 +01:00
Daniel Folkinshteyn
f6e3698c24 Scheduler: handle event persistence on plugin reload.
Write data to disk on unload; populate events dict with events which are
still scheduled on reload.
2011-02-20 10:43:02 +01:00
Daniel Folkinshteyn
42efc79ef1 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.
2011-02-20 10:41:52 +01:00
Valentin Lorentz
2d265f9d82 Google: update translation 2011-02-14 18:35:53 +01:00
Daniel Folkinshteyn
a6b9d5fe5f Google: fix encoding bug in lucky --snippet; need to pass encoded string to utils.web.htmlToText 2011-02-14 18:27:40 +01:00
Daniel Folkinshteyn
614e6c3f43 Google: in lucky --snippet, properly convert html to text, using utils.web.htmlToText. 2011-02-14 18:27:26 +01:00
Daniel Folkinshteyn
33c6eabf82 Google: add --snippet option to lucky command, which shows the text snippet for the page. 2011-02-14 18:26:50 +01:00
Valentin Lorentz
5395000e76 Change website supybot-fr.tk -> supybot.fr.cr 2011-02-09 17:16:26 +01:00
Valentin Lorentz
c456abd25c Later: fix french translation 2011-01-30 12:04:57 +01:00
Valentin Lorentz
bcc745b956 Update BadWord's .pot and fr.po 2011-01-29 11:52:14 +01:00
Daniel Folkinshteyn
817190ff6b 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.
2011-01-29 11:47:23 +01:00
Daniel Folkinshteyn
0e67977cdd Badwords: add plugin docstring, and fix/standardize some method docstrings. 2011-01-29 11:46:14 +01:00
Daniel Folkinshteyn
9665c178aa Scheduler: don't immediately execute commands when restoring repeated events. 2011-01-29 11:45:16 +01:00
Daniel Folkinshteyn
7c7b093b33 Google: add some extra matching capability to google calc
now should be able to display any 'special' result from google.
2011-01-29 11:39:59 +01:00
Daniel Folkinshteyn
b0bd346775 Services: add some more strings indicating identification success. 2011-01-29 11:36:48 +01:00
Daniel Folkinshteyn
60bbbc63ab Topic: get shouldn't require capabilities, since it's a read-only operation. 2011-01-29 11:34:10 +01:00
Valentin Lorentz
e8814fc07a Add checkCapabilityButIgnoreOwner converter 2011-01-27 19:32:43 +01:00
Valentin Lorentz
1cceeb7ad1 Fix @String decode utf8 issue 2011-01-26 08:30:20 +01:00
Valentin Lorentz
17248b5d2c Merge branch 'testing' into unit-tests
Conflicts:
	src/utils/str.py
2011-01-22 10:29:22 +01:00
Valentin Lorentz
e6fc429701 Fix bug with rainbow when message contains numeric characters #SF3140981 2011-01-22 09:59:19 +01:00
Valentin Lorentz
d29ca0a227 Import Time plugin from Supybot-plugin repo 2011-01-22 09:54:53 +01:00
Valentin Lorentz
f13a2c7ee4 Fix translations 2011-01-08 13:35:43 +01:00
Valentin Lorentz
d273ac164e Fix Network localization 2011-01-05 17:22:34 +01:00
Valentin Lorentz
3582286658 Fix Factoids 2011-01-02 09:31:07 +01:00
Valentin Lorentz
6e6fd58ea7 Fix RSS encoding problem 2011-01-01 17:24:13 +01:00
Valentin Lorentz
f45e0b01ac Fix @help monologue french translation 2010-12-23 19:56:23 +01:00
Valentin Lorentz
d008f97383 Fix @Games monologue french translation 2010-12-23 15:51:06 +01:00
Valentin Lorentz
83f3fe1436 Merge branch 'l10n-fr' into testing 2010-12-12 15:05:08 +01:00
Valentin Lorentz
01018b902e Localize the two new strings of Config in French 2010-12-12 15:05:00 +01:00
Valentin Lorentz
59dad0501f Merge branch 'i18n' into l10n-fr 2010-12-12 15:03:22 +01:00
Valentin Lorentz
a739511b73 Internationalize two strings in Config 2010-12-12 15:03:13 +01:00
Valentin Lorentz
c5974046c6 Merge branch 'l10n-fr' into testing 2010-11-26 23:20:29 +01:00
Valentin Lorentz
50d887d67f Merge branch 'i18n' into l10n-fr 2010-11-26 23:19:57 +01:00
Valentin Lorentz
13b194a4fe Fix internationalisation bug in Config plugin 2010-11-26 23:19:05 +01:00
Valentin Lorentz
6629c8d48f Add @reloadlocale to Owner plugin 2010-11-19 17:10:47 +01:00
Valentin Lorentz
bd7f38604e Merge branch 'l10n-fr' into testing 2010-11-19 17:01:46 +01:00
Valentin Lorentz
05560299d9 Later: fix localisation problem 2010-11-17 21:40:11 +01:00
Valentin Lorentz
e5fd3b8a7d Merge branch 'l10n-fr' into testing 2010-11-17 16:50:56 +01:00
Valentin Lorentz
415f79d9a5 Later: fix localization problem 2010-11-17 16:44:34 +01:00
Valentin Lorentz
ad79ec4f7f Merge branch 'l10n-fr' into testing 2010-11-11 12:39:19 +01:00
Valentin Lorentz
4d957e858e Factoids: localize a string 2010-11-11 12:39:13 +01:00
Valentin Lorentz
9ca812c83d Merge branch 'i18n' into l10n-fr 2010-11-11 12:38:32 +01:00
Valentin Lorentz
11f7033ee0 Factoids: Internationalize a config variable 2010-11-11 12:37:21 +01:00
Valentin Lorentz
44c692bdc6 Merge branch 'l10n-fr' into testing 2010-11-03 19:12:06 +01:00
Valentin Lorentz
485c6161ee Plugin: fix a little localization error 2010-11-03 19:12:00 +01:00
Valentin Lorentz
fa336acbac Merge branch 'l10n-fr' into testing 2010-11-03 19:09:50 +01:00
Valentin Lorentz
9bd66a7e7c Plugin: fix two localization error 2010-11-03 19:09:42 +01:00
Valentin Lorentz
27ef96a78a Merge branch 'l10n-fr' into testing 2010-11-01 19:53:58 +01:00
Valentin Lorentz
382bad4a1d AutoMode: fix misspell in french locale 2010-11-01 19:52:28 +01:00
Valentin Lorentz
d2ccb876dd Remove Debian plugin 2010-11-01 15:53:01 +01:00
Valentin Lorentz
0410cf3d0d Merge branch 'l10n-fr' into testing 2010-11-01 11:49:11 +01:00
Valentin Lorentz
ddb3dd5a50 Merge branch 'i18n' into l18n-fr 2010-11-01 11:49:04 +01:00
Valentin Lorentz
4dcd7f7fb4 Bug fixes (mainly the &config help internationalization) 2010-11-01 11:42:33 +01:00
Valentin Lorentz
6dfd334344 Merge branch 'l10n-fr' into testing 2010-10-31 11:32:00 +01:00