Commit Graph

7285 Commits

Author SHA1 Message Date
James Vega
a278d17f2b 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>
2010-05-24 23:36:29 -04:00
James Vega
f03a3f6c85 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>
2010-05-24 15:44:25 -04:00
James Vega
57e894de58 Anonymous: Implement support for allowPrivateTarget config.
Closes: Sf#2991515

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-05-24 15:21:58 -04:00
Daniel Folkinshteyn
40941e044a 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>
2010-05-24 14:46:04 -04:00
Jeremy Fincher
6135a88741 Updates and tweaks to some ircutils functions. 2010-05-18 12:48:36 -05:00
James Vega
5ccb242657 Re-add re import since capability-checking code relies on it.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-05-15 21:55:05 -04:00
Štěpán Němec
18ef6dadfc Topic plugin: Restore topic automatically after join if not set.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-05-11 18:23:33 -04:00
Štěpán Němec
6520d1f282 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>
2010-05-11 18:22:37 -04:00
James Vega
41fd218b8d ChannelStats: Fix rank to work with selfStats
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-05-11 17:50:43 -04:00
Daniel Folkinshteyn
79c7514f1a 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>
2010-04-26 18:56:59 -04:00
Daniel Folkinshteyn
814d89e200 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.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-04-14 22:57:01 -04:00
Daniel Folkinshteyn
063dd24677 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

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-04-14 22:56:52 -04:00
Daniel Folkinshteyn
f880037e41 for Alias, make doc string say "at least x args" if there are optional args in addition to required args.
yay for cosmetic improvements. :)

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-04-14 22:29:58 -04:00
Daniel Folkinshteyn
8d64d08645 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>
2010-04-14 22:25:40 -04:00
Daniel Folkinshteyn
51eac7da5b add standardsubstitute vars 'utc' and 'gmt' which output current time in UTC.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-04-11 17:01:11 -04:00
Daniel Folkinshteyn
2c9f325cf4 fix some time display issues in standardsubstitute:
first, use explicit time.strftime() instead of time.ctime, since ctime() leaves an extra space between month and date, if date is
single-digit.

second, use stftime('%Z') for timezone, old code was a bug which always displayed the daylight saving timezone name, even when it wasn't
in effect. time.daylight is not a dst flag, it is a flag for whether a dst timezone is /defined/, not if it is in effect.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-04-11 17:00:50 -04:00
James Vega
fe07ea1146 Fix the previous Factoids fix.
channel needs to be part of the args list.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-04-11 11:04:45 -04:00
James Vega
209facd242 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>
2010-04-11 10:36:55 -04:00
James Vega
ef8bd817e8 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>
2010-04-11 10:15:39 -04:00
James Vega
397cbbe0d3 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>
2010-03-03 08:33:44 -05:00
James Vega
4a9596608a Include hostmasks in JOIN, PART, QUIT logs.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-02-28 21:17:35 -05:00
James Vega
10f5a12b7e Factoids: Prevent empty key or value when adding a factoid.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-02-05 18:50:48 -05:00
James Vega
0540513387 Decode/encode as 'string_escape' when (de)serializing the registry.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-01-30 23:03:35 -05:00
James Vega
288d7c6e02 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 3282e3407e.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-01-28 08:14:44 -05:00
Jeremy Fincher
3282e3407e Don't bother snarfing URLs from non-Action CTCP messages. 2010-01-28 06:35:53 -06:00
Štěpán Němec
9e15d03375 Filter plugin: improve the `uniud' replacements.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-01-27 19:01:54 -05:00
Štěpán Němec
3a992ba78e Format plugin: Delete stray `configure' definition from plugin.py.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-01-15 21:57:07 -05:00
James Vega
67c8554864 Merge branch 'master' of git+ssh://supybot.git.sourceforge.net/gitroot/supybot/supybot 2010-01-10 20:20:21 -05:00
James Vega
408ab6f88a 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.
2010-01-10 20:17:10 -05:00
Jeremy Fincher
5f9d2bc4ce We had an issue with a command flooder, so we've tightened command flood detection to detect things on a per-host basis, rather than a per-user@host basis. 2009-12-28 12:26:33 -06:00
Jeremy Fincher
b774268498 Added network to debug "Incoming message" log. 2009-12-28 12:17:27 -06:00
James Vega
0806c0bbc3 PLUGIN_TUTORIAL: Remove references to the old website.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-12-10 08:09:11 -05:00
James Vega
3689460d0f Use 0 when no results are returned for Google.fight
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-11-28 21:21:00 -05:00
James Vega
a48cd109a3 Fix supybot-botchk's use of subprocess
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-11-28 17:48:24 -05:00
Jeremy Fincher
89a535e8c1 Until we can safely load Karma, this test is staying commented out. 2009-11-25 09:17:52 -06:00
Jeremy Fincher
52e96bff61 Remove some comments that are now irrelevant (and have been for some time). 2009-11-25 09:14:05 -06:00
James Vega
fbdc44ca52 Switch from using the various popen flavors to subprocess.Popen
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-11-22 14:31:58 -05:00
James Vega
07e283f450 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>
2009-11-18 20:02:53 -05:00
hairball
a594d0e95c Small typos and doc fixes.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-11-04 22:54:46 -05:00
James Vega
a453f56284 ShrinkUrl: Use tinyurl's api-create page to avoid screen-scraping.
Set snarfThrottle to 0 while testing since we know there's nothing other than
the test input that could be causing us to snarf.  Fixes some intermittent
test failures due to fast snarf responses.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-11-04 22:37:53 -05:00
James Vega
eda8ce3aa0 Remove supybot-wizard's direct import of sets.
This is deprecated in 2.6 and supybot.utils already handles adding sets.Set to
__builtins__ if we're running with Python < 2.4.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-11-02 19:11:58 -05:00
James Vega
082ee59d32 Change a couple tests so they fail for real reasons instead of fake.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-11-01 19:08:34 -05:00
James Vega
8a98653d3b 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>
2009-11-01 10:26:08 -05:00
James Vega
acaa9b1fd6 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>
2009-10-31 18:22:14 -04:00
James Vega
213d304e54 ChannelStats: Add tracking of max users for a channel.
Closes Sf #1032038

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-27 19:28:34 -04:00
James Vega
e393ea5917 Remove supybot-plugin-package from the set of installed files.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-25 09:20:45 -04:00
James Vega
899391e4dc 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>
2009-10-23 20:09:54 -04:00
James Vega
96aaf159f6 Use '2x' to reference Python version in README.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-23 20:07:48 -04:00
James Vega
dc3cdbd849 Re-word the private message FAQ since +E UMODE is no longer default.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-23 20:05:55 -04:00
James Vega
342ab23af8 Bump the minimum supported Python version to 2.4.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-23 19:35:24 -04:00