6839 Commits

Author SHA1 Message Date
James Vega
8d5e4ba624 Twisted: Send all available ircmsgs and reduce delay between checks
All ircmsgs that takeMsg will return should be processed each time
checkIrcForMsgs is called since there may be multiple available in the
fastqueue.

Reduced the time between calls of checkIrcForMsgs so the delay between
normally queued ircmsgs stays close to the configured throttleTime.

Closes: Sf#3018148
(cherry picked from commit adc5d62bbf6b89631ab25e9b5f5707bde0b06709)
2010-08-24 19:49:54 -04:00
James Vega
ff760d1c69 Socket: Ensure driver is flagged as disconnected after a socket error.
Users were occasionally hitting a situation where the socket had errored,
causing a reconnect, but the socket wasn't closed nor the driver marked as
disconnected.  This resulted in run() continuing to try and use the driver,
which would cause another error, schedule another reconnect, log an error, ad
infinitum.

Closes: Sf#2965530

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit a278d17f2bec3697987cbd403594393a4fb30021)
2010-08-24 19:49:38 -04:00
James Vega
a6857ce9bf utils/web.py: Only try catching socket.sslerror if built with SSL support
Closes: Sf#2998820

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit f03a3f6c8529c15042908d826235e46123cd29e2)
2010-08-24 19:49:30 -04:00
James Vega
246e09cc99 Anonymous: Implement support for allowPrivateTarget config.
Closes: Sf#2991515

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 57e894de589dcdf9c7a63f8279105420e0890674)
2010-08-24 19:49:14 -04:00
Daniel Folkinshteyn
e9d55d4bbd 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.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 40941e044acf5a79cc9d95f5bf49b742243fc410)
2010-08-24 19:48:42 -04:00
Daniel Folkinshteyn
4f2279fc92 Improve supybot-botchk documentation. Make a note that supybot.pidFile config must be set for it to work.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 79c7514f1a94b0f1792991a85a8b2fe907cffdb5)
2010-08-24 19:46:38 -04:00
Daniel Folkinshteyn
fb8d0d320a fix alias bug https://sourceforge.net/tracker/?func=detail&aid=2987147&group_id=58965&atid=489447
add tests for appropriate behavior

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 8d64d08645319e57f7bee8f9176cae63c67fe1f3)
2010-08-24 19:45:48 -04:00
James Vega
7869b962d1 Fix the previous Factoids fix.
channel needs to be part of the args list.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit fe07ea11465785db69e13f034ea8f2e219b5c64c)
2010-08-24 19:44:56 -04:00
James Vega
b2c45caa66 Factoids: Pass channel to whatis when being called from search
Thanks to Daniel Folkinshteyn for the fix.

Closes: Sf#2965589

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 209facd242ebcf0fc9974f01b87cf47a8e25098f)
2010-08-24 19:44:45 -04:00
James Vega
fa199022e1 Make registry.Regexp.error mimic registry.Value.error
Regexp.error can't directly call Value.error because it's providing extra
information, so it needs to build the InvalidRegistryValue exception itself
and raise it.

Closes: Sf#2985241

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit ef8bd817e8b62ede76aa7501a9a8d69af7408efc)
2010-08-24 19:44:31 -04:00
James Vega
be9128b3ec Internet: Use whois-servers.net for all whois lookups.
rs.internic.net seems to be broken and using $tld.whois-servers.net looks to
be working for everything.

Also need to update the line termination string to use '\r\n' instead of '\n'
since some servers are strict about receiving the former.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 397cbbe0d3d8ac2ae6ec17ff4f9bfd4fc3297912)
2010-08-24 19:44:18 -04:00
James Vega
8d94ff743c Include hostmasks in JOIN, PART, QUIT logs.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 4a9596608abfbacf75d46237b29fee18ec2e9205)
2010-08-24 19:44:10 -04:00
James Vega
0933621dab Factoids: Prevent empty key or value when adding a factoid.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 10f5a12b7e6b33000dc8616ba5e6b57e25ab9f08)
2010-08-24 19:43:56 -04:00
James Vega
e13d3d6943 Decode/encode as 'string_escape' when (de)serializing the registry.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-08-24 19:43:24 -04:00
James Vega
455b5631bc Update plugins to ignore all non-ACTION CTCP messages.
Also update commands.urlSnarfer to do the same, which allows us to revert
"Don't bother snarfing URLs from non-Action CTCP messages."

This reverts commit 3282e3407ede364acbc92b4e9a6319800d50d46a.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 288d7c6e0216baa6445cbd90bb819d1fd0f113c4)
2010-08-24 19:42:11 -04:00
Jeremy Fincher
e2cafb2e3d Don't bother snarfing URLs from non-Action CTCP messages.
(cherry picked from commit 3282e3407ede364acbc92b4e9a6319800d50d46a)
2010-08-24 19:41:49 -04:00
James Vega
f35e68cd65 Network: Properly parse WHOIS response
The 319 message that indicates which channel(s) a user is in prefix the
channel name with the modes (@, +, !, etc.) applied to that user.  These need
to be stripped from the channel name before we feed it to
irc.state.channels.get(), otherwise when irc.state.channels.get() returns None
we assume the channel can't be private and leak information.
(cherry picked from commit 408ab6f88a04f593f55ab38e33e558c5297d5d77)
2010-08-24 19:41:30 -04:00
James Vega
4de4717f43 PLUGIN_TUTORIAL: Remove references to the old website.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 0806c0bbc3b887c3d6b7210083504611a4e37b0c)
2010-08-24 19:41:04 -04:00
James Vega
afb4e1e07f Use 0 when no results are returned for Google.fight
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 3689460d0fa2e7ef8a6c95feda217b2fa6f4e73d)
2010-08-24 19:40:54 -04:00
James Vega
2a79c0cab9 Fix supybot-botchk's use of subprocess
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit a48cd109a37ce9d164cd20f96e9aef65d8355417)
2010-08-24 19:40:40 -04:00
James Vega
a7c924b466 Switch from using the various popen flavors to subprocess.Popen
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit fbdc44ca521acc45f26807b04b1ef1d84312501b)
2010-08-24 19:40:23 -04:00
James Vega
2a18d07a2e Default to strict RFC compliance.
It's better to force people to use an RFC nick and change it after they
connect than to let non-RFC nicks get used and not be able to connect to the
network.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 07e283f4502db87cac55217f4567ad4feb418d44)
2010-08-24 19:26:13 -04:00
James Vega
9ddf07ce97 Allow Banmask.makeBanmask to work when dynamic.channel is None.
This gives back the ability to generate a banmask based on the global banmask
settings instead of per-channel settings.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 8a98653d3bc9cc638a1739e3d134ebdea8aa0112)
2010-08-24 19:23:25 -04:00
James Vega
c53f8cd510 Rename Owner.log to Owner.logmark
Since every plugin has a log method (to do actual logging), the log command
was conflicting with that.  The attempted workaround was overly complicated
and broken.  Simply renaming the command to logmark simplifies everything.

Closes Sf #2889709

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit acaa9b1fd6cc9a137db9f97e446ff994c0499273)
2010-08-24 19:21:58 -04:00
James Vega
d95cdfec34 Remove supybot-plugin-package from the set of installed files.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit e393ea59178182a05d08c01534abcef80abab509)
2010-08-24 19:21:49 -04:00
James Vega
56d97e0eeb Remove supybot-plugin-package.
It was never fully fleshed out.  If someone wants to finish it, they can
rewrite it or dig it out of the history and finish it.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 899391e4dc589b1147f01e9e7ebc6314813caba9)
2010-08-24 19:16:20 -04:00
James Vega
c5df44204d Use '2x' to reference Python version in README.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 96aaf159f6e882129922ed0bf628856cd30db30b)
2010-08-24 19:16:10 -04:00
James Vega
2688467a31 Re-word the private message FAQ since +E UMODE is no longer default.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit dc3cdbd84980bff3b5087f89dee79d50be0aa62f)
2010-08-24 19:15:51 -04:00
James Vega
0bd9a8b6f4 Use the correct URLs for the PySqlite website.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 927c8c963a2ddbd43e2890c8cf254e7bc9922183)
2010-08-24 19:15:27 -04:00
James Vega
dcdbd5bea4 Update references to PySqlite URL
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit f475525237ad53a705d3e6e327b6ca19850c47e1)
2010-08-24 19:15:17 -04:00
James Vega
f0852a9e45 utils.web: Provide access to the raw httpUrlRe/urlRe strings
Using the compiled regexps for a PluginRegexp method's __doc__ doesn't work.

Closes Sourceforge #2879862

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 25fc2de6430ca76b93054fc440f41e3cd93e67dd)
2010-08-24 19:14:58 -04:00
James Vega
bb4e09886a Use utils.web.httpUrlRe for the Web/ShrinkUrl snarfer regexes.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit ca917d352836ff623cf859ea51beea2242defc60)
2010-08-24 19:14:36 -04:00
Benjamin P. Burhans
750fb2ccdc Check for empty word list in BadWords plugin before filtering.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 6418b3d8c3395f90244b782ecd9553fb642a4d7e)
2010-08-24 19:13:09 -04:00
James Vega
3e984c71d0 Clarify databases.types.cdb.maximumModifications' help and use a proper type.
The code expects a float between 0 and 1 inclusive but was simply using
registry.Float.  registry.Probability matches the behavior we want.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit e9a896c736e8eac8402d6d94bce0c3962950ef62)
2010-08-24 19:12:44 -04:00
James Vega
5a0f96fc8e Reply with an error when getBanmask doesn't have a valid channel.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 459bc616b1c19b6d5f96a7a3ae5916777637f42f)
2010-08-24 19:12:21 -04:00
James Vega
bdf9e8836b Ensure getBanmask has a channel variable as per makeBanmask's requirement
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 260570bd4fccfb8bae470f49449592c229c235df)
2010-08-24 19:12:09 -04:00
Štěpán Němec
bc1c159d27 QuoteGrabs plugin: Add an `ungrab' command.
Also add a missing error check in the `list' db method.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit e92291856423fde6f5e949efceebba97e7566a4c)
2010-08-24 19:09:43 -04:00
Štěpán Němec
d7d5ccea50 scripts/supybot: Unify the `os.linesep' vs '\n' usage.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 2242b2602531ac7438138968ba3e771b136f5cb6)
2010-08-24 19:03:43 -04:00
Štěpán Němec
4cc8fdecdc Note plugin: Fix erroneous use of __contributors__.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit a693162059cd6c90634d8f6846d0168622fa558b)
2010-08-24 19:03:27 -04:00
James Vega
6bebc383b4 ChannelStats.rank now starts from 1 instead of 0
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 169aee3bc0ba39c5bea37c6798f62ab21e9b6b30)
2010-08-24 19:02:58 -04:00
James Vega
5b8bae5d5f Escape '-' where necessary in supybot.1
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit aa9db7ba23a400e0506711ef5171371cb070e290)
2010-08-24 19:02:43 -04:00
Ricky Zhou
6299ef5c22 Account for negative times in timeElapsed.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit aa2337791a75ea47f4a3a7838e177a2ef8c3b621)
2010-08-24 19:02:16 -04:00
James Vega
885d60a132 QuoteGrabs: QuoteGrabsRecord at arg needs to be an int.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit cbf68e53e35fe0281724674b0f3ce153334c87f9)
2010-08-24 19:02:05 -04:00
James Vega
d43d083f44 User: getHostmasks should always return a string
Since it was calling irc.reply() in one case, we had both that irc.reply being
sent and the irc.reply() of what getHostmasks returned (None in that case).
Bad!

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit dcb247494e4fd6433865e8c94cf56414fb253192)
2010-08-24 19:01:55 -04:00
James Vega
965f4e79b8 User: Fix hostmask.list to show the user's name not the repr user object
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 9dccada152fb3d3b3bcb9eaa1b71c680d6106403)
2010-08-24 19:01:44 -04:00
James Vega
7aeedea6f6 Updated ChannelIdDatabasePlugin's getCommandHelp signature
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit c9329303d3affdba1e73284cad5b70d023701516)
2010-08-24 19:01:26 -04:00
James Vega
26cefc78f4 Channel: alert should not require the caller to have op capability
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit ba29f0787c86d5cf19b545e9e9a31cbdca5e9a95)
2010-08-24 19:01:12 -04:00
James Vega
2b0b74dfe0 Google: Keep the list of supported languages in one place.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 461f943d9799f69b332cd07fdd8418a4dbad356e)
2010-08-24 19:01:00 -04:00
James Vega
65a180798f QuoteGrabs: Fix incorrect argument order to _grab
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 874508867fb98b6cdd9846136c681cae388a0741)
2010-08-24 19:00:34 -04:00
Ricky Zhou
4eb30069bf Try using simplejson instead if json-py is installed.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 416a6e8dd2ffed0320be02ee80e21f2e6910d573)
2010-08-24 19:00:14 -04:00