Commit Graph

4741 Commits

Author SHA1 Message Date
Valentin Lorentz 40675ffdfa Merge remote-tracking branch 'supybot/master' into testing
Conflicts:
	plugins/Admin/plugin.py
	plugins/BadWords/config.py
	plugins/Filter/plugin.py
	plugins/Google/plugin.py
	plugins/Math/plugin.py
	plugins/Misc/plugin.py
	plugins/Note/plugin.py
	plugins/RSS/plugin.py
	plugins/Seen/test.py
	plugins/ShrinkUrl/config.py
	plugins/ShrinkUrl/plugin.py
	plugins/ShrinkUrl/test.py
	plugins/Status/plugin.py
	plugins/String/config.py
	plugins/String/plugin.py
	plugins/Time/plugin.py
	plugins/Todo/plugin.py
	plugins/Web/plugin.py
	plugins/__init__.py
	scripts/supybot-botchk
	setup.py
	src/__init__.py
	src/callbacks.py
	src/commands.py
	src/conf.py
	src/drivers/Socket.py
	src/ircdb.py
	src/irclib.py
	src/ircutils.py
	src/questions.py
	src/registry.py
	src/schedule.py
	src/test.py
	src/utils/file.py
	src/utils/gen.py
	src/utils/net.py
	src/utils/web.py
	src/world.py
2013-08-24 11:28:29 +02:00
James McCoy a483fef39d RSS: Ensure results is declared before trying to access it
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-24 00:04:29 -04:00
Arnout Engelen 58e7e61d69 Only reset the cached feed when the response actually contains headlines
Some feeds, such as those from sourceforge.net, will sometimes show an error
page rather than a feed. In this case the feed cache used to be cleared for
that feed, causing all 'old' headlines to be flooded to the channel as soon
as the feed came back online.

This patch hopefully fixes that by only resetting the cache when the returned
page actually contains headlines.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2013-08-23 23:13:28 -04:00
Valentin Lorentz f32f36fea4 Alias: Also allow exclamation marks, as they are allowed by the registry. 2013-08-22 14:03:37 +02:00
Valentin Lorentz ccafbf4847 Aka: Speed up commands listing by statically listing builtin commands instead of invoking parent's listCommands(). 2013-08-21 20:56:18 +02:00
Valentin Lorentz d2762d9fb9 Aka: Add explicit error message if sqlalchemy is not installed. 2013-08-21 18:04:16 +02:00
Valentin Lorentz 790bda4664 Web: Fix nesting of commands (bug introduced in d8a4ef8421). 2013-08-20 11:37:39 +02:00
Valentin Lorentz d14f5df76f ChannelLogger: Rewrite relayed nicks. Closes GH-507. 2013-08-19 17:22:56 +02:00
Valentin Lorentz 1724d6867b Conditional: Fix handling of exceptions. 2013-08-18 17:37:42 +02:00
Valentin Lorentz 43f1e5cd24 Topic: Fix previous commit. 2013-08-17 19:51:17 +00:00
Valentin Lorentz 410472c317 Topic: Change behavior of supybot.plugins.Topic.alwaysSetOnJoin to only apply if the actual topic differs from the default. 2013-08-17 19:30:28 +00:00
Valentin Lorentz b57be07f1c Topic: Add supybot.plugins.Topic.alwaysSetOnJoin. 2013-08-17 17:48:25 +00:00
Valentin Lorentz dfdc7f1cd1 Merge pull request #506 from kytvi2p/unicode2.x
Unicode fixes for python 2.x
2013-08-17 07:54:45 -07:00
Kill Your TV b46a0dd6a2 Unicode fixes for python 2.x
These changes have been tested with Python 3.2.3 and Python 2.7.5.
2013-08-17 14:12:10 +00:00
Valentin Lorentz e1d0ab2774 Aka: Fix support for non-ascii commands name with Python 2 (bug introduced in 64300b8a02). 2013-08-17 16:12:06 +02:00
Valentin Lorentz 921ff2ae07 Aka: Fix case-sensitivity. 2013-08-17 07:02:21 +00:00
Valentin Lorentz e120ab7eab User: Add custom error message for @gpg add arguments. 2013-08-16 16:23:08 +02:00
Kill Your TV 56c80e62f1 RSS: fix initialAnnounceHeadlines not being obeyed 2013-08-15 22:32:19 +00:00
Valentin Lorentz a2f115e09f Alias: Prevent @add from allowing invalid names. 2013-08-15 13:30:12 +02:00
Valentin Lorentz 73f63c25b9 Aka: Fix import of locked alias. 2013-08-15 10:55:57 +02:00
Valentin Lorentz 18cc1ff3bb Revert "Web: Disable @title and @doctype for non-HTML documents." (incompatible with Python 2)
This reverts commit 34b0e5faad.
2013-08-15 00:14:34 +00:00
Valentin Lorentz 13bf8c2915 Aka: Fix crash when logging (on Python 2). 2013-08-11 11:28:53 +00:00
Valentin Lorentz e5bac7e023 Aka: Fix previous commit. 2013-08-11 11:20:36 +00:00
Valentin Lorentz 50e3f2ab16 Aka: Use %q converter instead of %r for logging (escapes % in expression). 2013-08-11 11:10:17 +00:00
Valentin Lorentz 4e9bb2c241 Later: Use builtin support for '%s ago'. 2013-08-11 12:22:12 +02:00
Valentin Lorentz d6223eee9d Aka: Remove side effects in everythingReplace and fix crash when evaluating expressions where $* is in the nested command. 2013-08-11 12:02:00 +02:00
Valentin Lorentz 269f22a84b User: Make arguments handling of '@user hostmask remove' similar to '@user hostmask add' 's. Closes GH-101. 2013-08-10 16:01:25 +02:00
Valentin Lorentz 34b0e5faad Web: Disable @title and @doctype for non-HTML documents. 2013-08-09 18:03:02 +02:00
Valentin Lorentz d8a4ef8421 Web: Prevent memory bomb when calling commands with an URL to a page sending crafted requests. 2013-08-09 12:16:24 +02:00
Valentin Lorentz 33cc9bc6b8 MessageParser: Fix crash when using @messageparser add for global database. 2013-08-08 16:01:36 +00:00
Valentin Lorentz 23dfa23f31 Aka: Prevent infinite loop (+ memory bomb) when nesting Akas using $*. 2013-08-08 14:12:02 +02:00
Terje Hoås 36bce4d753 Seen: Change 'last left the #channelname' to 'last left #channelname' in the English error message. 2013-08-08 10:02:26 +02:00
Valentin Lorentz 58261e78c7 Dict: Fix lookup of some words (looks like dict.org does not follow RFC2229). Closes GH-494. 2013-08-07 15:41:08 +00:00
Valentin Lorentz 80b4e164ec Internet: Fix @whois. 2013-08-06 10:17:23 +00:00
Valentin Lorentz 1e8dddaa6a Conditional: Add --case-insensitive switch to @match. 2013-08-04 08:35:15 +02:00
Valentin Lorentz 4fcf4d426d Aka: Add a README (based on Alias'). 2013-08-02 15:33:45 +02:00
Valentin Lorentz 7f562e15c9 Aka: Fix conflict of test cases of they are run after Alias' tests. 2013-08-01 12:07:19 +02:00
Valentin Lorentz 7c30936ee1 Merge branch 'aka' into testing 2013-08-01 10:48:42 +02:00
Valentin Lorentz ba434b1896 Aka: Fix listCommands, which returned tuples instead of strings. 2013-08-01 10:44:19 +02:00
Valentin Lorentz b09245a1c6 Alias: Fix @remove for escaped aliases. 2013-07-31 19:28:18 +02:00
Valentin Lorentz 6cce96868e Aka: Add messages.pot. 2013-07-31 19:09:29 +02:00
Valentin Lorentz 41581dac2f Aka: Add @importAliasDatabase command. 2013-07-31 19:08:49 +02:00
Valentin Lorentz 33a236079f RSS: Fall back to decoding the headline with 'utf8' if 'ascii' failed. 2013-07-31 09:33:03 +00:00
Valentin Lorentz 53c7c9beaa Filter: Fix encoding issue on Python 3. 2013-07-30 17:35:45 +00:00
Valentin Lorentz 4d801a02c5 PluginDownloader: Fix @info for Python 3. 2013-07-30 10:53:58 +02:00
Valentin Lorentz 517ee1cde6 Time: Fix import on Python 3. 2013-07-27 11:39:30 +00:00
Valentin Lorentz 3341cd15ba Admin & Factoids & Google & Later & Misc & NickAuth & RSS & Seen & User & Web: Update messages.pot 2013-07-25 11:39:06 +02:00
Valentin Lorentz d5c0df39f3 Aka: Add recursivity test. 2013-07-24 18:23:51 +02:00
Valentin Lorentz e68e7f36de Aka: Edit help of @add to match new features related to arguments. 2013-07-24 18:23:33 +02:00
Valentin Lorentz 774285ef03 Aka: Allow optional arguments and $* together, and also multiple instances of $*. 2013-07-24 13:14:25 +02:00
Valentin Lorentz 30596ad79c Aka: Add support for names with spaces in them. 2013-07-24 12:16:02 +02:00
Valentin Lorentz 235854b284 Aka: Fix encoding for Akas with non-ascii characters in the name. 2013-07-24 11:28:55 +02:00
Valentin Lorentz d699ba18a7 Aka: Change required capability for (un)locking channel-specific Akas from admin to #channel,op. 2013-07-23 23:16:08 +02:00
Valentin Lorentz b2205bc66d Aka: Add test for locked Aka help + bug fixed related to locking and aka use in private. 2013-07-23 23:05:45 +02:00
Valentin Lorentz 201cb459d6 Aka: Remove test that tested a Alias feature that won't be implemented in Aka. 2013-07-23 22:48:38 +02:00
Valentin Lorentz c49e088879 Aka: Add lock support. 2013-07-23 22:47:50 +02:00
Valentin Lorentz b7a9569f72 Aka: Add some redundant constraints, just in case. 2013-07-23 21:21:21 +02:00
Valentin Lorentz e9cbb1f60b Add support for adding global or 'other-channel'-specific Akas. 2013-07-23 21:10:26 +02:00
Valentin Lorentz c2f039c60b Aka: First commit. 2013-07-23 21:02:06 +02:00
Valentin Lorentz 7479849767 MessageParser: Add support for notices. 2013-07-19 18:29:50 +00:00
Valentin Lorentz 2a8b8e78a0 Google: Fix URL quoting. 2013-07-19 09:11:08 +00:00
Andrew Hampe 75723e7e8c RSS: Remove b'' from around the RSS url. 2013-07-18 13:13:36 -05:00
Valentin Lorentz 071b61061a RSS: Honor configuration variable supybot.reply.format.url in announces. Closes GH-487. 2013-07-18 10:11:02 +00:00
Valentin Lorentz 910244ef68 String: Fix plugin for Python 3. 2013-07-16 20:13:26 +00:00
Valentin Lorentz cc56645cf9 Filter: Fix @unhexlify for Python 3. 2013-07-16 19:54:10 +00:00
Valentin Lorentz cf6084e402 Filter: Fix @uniud for Python 3. 2013-07-16 19:46:52 +00:00
Valentin Lorentz 21144f7c9c Don't send JOIN on connection if there is no channels to join. 2013-07-14 09:44:34 +02:00
Valentin Lorentz 8496cc2e6a Fix previous commit (38bab185a9). 2013-07-13 20:39:38 +02:00
Valentin Lorentz 38bab185a9 Remove Python2.4-specific code. 2013-07-13 17:28:21 +02:00
Valentin Lorentz 3bfa4ae35a Misc: Fix previous commit. 2013-07-13 11:54:44 +02:00
Valentin Lorentz 98f807c230 Misc: Fix typo in @more. 2013-07-13 11:41:00 +02:00
Valentin Lorentz 20ff06f3dd Network: Fix @whois for Python 3. 2013-07-12 17:21:35 +00:00
Valentin Lorentz baa4430291 NickAuth: Fix traceback if user calling @list is not identified. 2013-07-11 18:53:19 +02:00
Valentin Lorentz 4647ed81fd Factoids: Fix help of @random. 2013-07-11 06:58:46 +00:00
Valentin Lorentz b4402b28ed utils.web: Rename get_encoding to getEncoding for consistency. 2013-07-09 12:05:51 +00:00
Valentin Lorentz 820113344c Web: Use utils.web.get_encoding for guessing charset. 2013-07-09 12:02:43 +00:00
Valentin Lorentz dbedcbb6c9 Web: Disable testWhitelist if --no-network is given. 2013-07-09 09:18:33 +02:00
Valentin Lorentz 5f1535447c Web: Use @title's utf8 decoding in the snarfer. 2013-07-02 13:42:53 +02:00
Valentin Lorentz b3009085aa Fix @version in Python 3. 2013-07-01 08:34:58 +00:00
Valentin Lorentz d0476c9eb2 Factoids: Make sure _http_running is assigned before being used. 2013-06-29 12:24:52 +02:00
Valentin Lorentz 4b9992537b Merge branch 'testing' of github.com:ProgVal/Limnoria into testing 2013-06-27 07:14:25 +02:00
Daniel Folkinshteyn 944f9c3e3f Web: create a cofigurable url whitelist
Prevent various forms of abuse that result via the Web plugin, such as fetching or titling
malicious content, or revealing bot IP.

Conflicts:
	plugins/Web/plugin.py
	plugins/Web/test.py
2013-06-27 07:09:22 +02:00
Daniel Folkinshteyn c27070895b RSS: add option display headline timestamp.
Conflicts:
	plugins/RSS/config.py
	plugins/RSS/plugin.py
2013-06-27 07:06:23 +02:00
Daniel Folkinshteyn e4ddda4aeb RSS: add option to strip url redirects from headlines
Conflicts:
	plugins/RSS/config.py
2013-06-27 07:03:57 +02:00
Valentin Lorentz 20bef2dcd0 RSS: keep track of headlines over multiple feed fetches, with configurable expiration.
This is better at avoiding repeats than just keeping the last fetch, since some feeds
shuffle items around (like google news search).

Conflicts:
	plugins/RSS/config.py
2013-06-27 07:03:20 +02:00
Valentin Lorentz 76025f89bb Merge pull request #475 from Digital-Lemon/testing
@network uptime reset & ChanServ notice handling
2013-06-17 15:20:54 -07:00
Valentin Lorentz e5a2bb18b4 Alias: Fix encoding of test.py. 2013-06-17 22:12:25 +00:00
Milos Petkovic 0f3f6da843 Multiple channel types should be supported 2013-06-17 23:54:59 +02:00
Valentin Lorentz 34b8e53c38 travis.yml: Fix tests runner for Python 2. 2013-06-17 11:03:50 +00:00
Milos Petkovic b4a63fa89e Prevent entrymsgs from spamming warnings 2013-06-17 08:53:44 +02:00
Valentin Lorentz 8095f34250 Topic: @save can now be called even if the bot is not opped. 2013-06-09 13:03:35 +00:00
Valentin Lorentz 43563bcc1c core & Factoids: Allow commands to disable doc-availability checks for programmatically setting it. 2013-06-01 17:13:55 +02:00
Valentin Lorentz 427f01032b Factoids: Fix XHTML validation of the web interface. 2013-06-01 10:32:51 +02:00
Valentin Lorentz cefd91d4f1 Fix encoding issues with Alias containing non-ascii characters. 2013-05-31 15:42:57 +02:00
Valentin Lorentz b360871378 Google: Fix previous commit. 2013-05-30 13:16:36 +00:00
Valentin Lorentz 6e8b7be0f1 Google: Fix @calc. 2013-05-30 13:13:19 +02:00
Valentin Lorentz 863addd989 RSS: Add link to a patch to apply to feedparser. 2013-05-29 15:21:56 +02:00
Valentin Lorentz ad25f17639 RSS: Add Python 3 support. 2013-05-29 15:16:23 +02:00
Valentin Lorentz 6266d0f16f Google: Remove plugins/Google/local/simplejson/ since it is not used. 2013-05-29 14:48:20 +02:00
Valentin Lorentz f74d23b9c6 Alias: Try to fix UnicodeDecodeError issues. 2013-05-28 21:08:03 +02:00
Valentin Lorentz 5691ce58a5 Seen: Fix error if last message contained non-ascii characters. 2013-05-24 19:36:54 +02:00
Valentin Lorentz 2d4914bc99 Merge branch 'gpgauth' into testing
Conflicts:
	src/ircdb.py
2013-05-24 17:20:27 +02:00
Valentin Lorentz 0537166502 RSS: Fix formating if newline character in an entry title. Closes GH-395. 2013-05-22 14:03:38 +02:00
Valentin Lorentz 58befaee5c Admin: @nick only sets the nick on the current network. Closes GH-273. 2013-05-21 18:52:46 +02:00
Valentin Lorentz a15dea55db Google: Configurable base URL. Closes GH-64. 2013-05-21 18:40:38 +02:00
Valentin Lorentz efcf9d7837 Channel: Add hostmask of the user kicking the bot, in the logs. 2013-05-21 18:30:16 +02:00
Valentin Lorentz d0f50fb388 Channel: Log when the bot is kicked. 2013-05-21 17:19:21 +02:00
Valentin Lorentz 6783e5834b Later: Fix typo. 2013-05-19 08:46:24 +00:00
Valentin Lorentz a678bfc0d2 Alias: Fix encoding issue. 2013-05-18 17:59:26 +02:00
Valentin Lorentz 8bfea88e3f Factoids: Use supybot.plugins.Factoids.requireVoice for @forget too. 2013-05-18 14:47:38 +02:00
Valentin Lorentz 9e1cf727e3 Network: Add @whowas. Closes GH-227. 2013-05-18 14:46:58 +02:00
Valentin Lorentz 1090c4623f Factoids: Add supybot.plugins.Factoids.requireVoice. Closes GH-378. 2013-05-17 17:47:43 +02:00
Valentin Lorentz ed62c9efb1 commands.py: Rename 'isGranted' to 'haveHalfop+' and add 'haveVoice+'. 2013-05-17 17:36:11 +02:00
Valentin Lorentz 65afe65ae6 Factoids: Enforce order of approximate factoids. 2013-05-14 20:16:05 +02:00
Valentin Lorentz 6ffcf122a7 Remove code specific to Python 2.{3,4,5}. 2013-05-13 15:27:26 +02:00
Valentin Lorentz 93ecc2424f Google: Fix encoding issue. 2013-05-13 14:18:22 +02:00
Valentin Lorentz 8421300e14 String: Fix test. 2013-05-13 13:51:30 +02:00
Daniel Folkinshteyn 81c366a6be Web: create a cofigurable url whitelist
Prevent various forms of abuse that result via the Web plugin, such as fetching or titling
malicious content, or revealing bot IP.
2013-05-11 14:12:31 -04:00
Valentin Lorentz 3935152d65 Fix 'dictionary changed size during iteration'. 2013-05-10 23:55:48 +02:00
Valentin Lorentz 115f8001fe ChannelStats: Fix bug when conf.supybot.databases.plugins.channelSpecific is true (KeyError in channels list). 2013-05-09 12:47:53 +02:00
Valentin Lorentz 8f6063135e Add supybot.abuse.flood.interval. 2013-05-09 09:40:55 +02:00
Valentin Lorentz c0c479a77c Math: Fix load on Python 3. 2013-05-08 19:28:16 +00:00
Daniel Folkinshteyn af1931b3db RSS: add option display headline timestamp. 2013-05-05 11:23:15 -04:00
Daniel Folkinshteyn 78659113c1 RSS: add option to strip url redirects from headlines 2013-05-04 00:01:52 -04:00
Daniel Folkinshteyn 02a2a056a4 Owner: Reload module configuration in reload.
Pulled from Limnoria
2013-05-03 23:44:27 -04:00
Daniel Folkinshteyn 0b36a29977 Owner: Prevent use of uninitialized variable.
(pulled from Limnoria)
2013-05-03 23:43:17 -04:00
Daniel Folkinshteyn bc0d16a4e1 RSS: keep track of headlines over multiple feed fetches, with configurable expiration.
This is better at avoiding repeats than just keeping the last fetch, since some feeds
shuffle items around (like google news search).
2013-05-03 23:39:34 -04:00
Valentin Lorentz b9a46cef21 Factoids: Fix @lock and @unlock. 2013-05-04 01:01:11 +02:00
Valentin Lorentz da5fb34b11 Channel: Fix l10n-fr. 2013-04-30 18:32:39 +00:00
Valentin Lorentz d70138bf23 Dict: Use normal import (was broken in Python 3.3 for some reason). 2013-04-27 18:18:38 +02:00
Valentin Lorentz c25ccc4337 PluginDownloader: Obey --no-network in tests. 2013-04-27 10:19:43 +02:00
Valentin Lorentz 7253dee3ae User: Fix handling of --capability for unregistered users. 2013-04-27 10:10:11 +02:00
Valentin Lorentz fe540b3620 ChannelLogger: check for logChannelMessages before logging. 2013-04-26 17:52:18 +02:00
Valentin Lorentz 243cc0b998 Seen: Add supybot.plugins.Seen.showLastMessage. 2013-04-23 16:52:35 +00:00
George Miller bf761f52e4 Fixed the last fix in Anonymous which broke the ability to query via say 2013-04-22 23:42:42 +00:00
Valentin Lorentz 8701002ff9 Anonymous: Fix use of pipes. 2013-04-22 17:58:32 +00:00
Valentin Lorentz 96fae12fd2 Anonymous: Use assertEqual in tests instead of failUnless(... == ...). 2013-04-22 17:46:35 +00:00
Valentin Lorentz d8df5cc650 Misc: Fix ignoring of user flooding with invalid commands in private. 2013-04-20 08:19:16 +00:00
Richard Schwab 847563869c Use a real inexistent domain for DNS fail testing 2013-04-13 22:56:52 +02:00
Valentin Lorentz 0595489166 Karma: Fix tests. 2013-04-11 19:13:03 +02:00
Valentin Lorentz 7a71ecb9f9 Misc: Add supybot.plugins.Misc.mores. 2013-04-10 17:26:55 +02:00
Valentin Lorentz 61eb0fd3f8 RSS: add supybot.plugins.RSS.announcementSeparator. 2013-04-06 16:57:30 +00:00
George Miller 0150c79924 Added a way to have the urlsnarfer report exceptions (hotsnotnound, ...)
(Should be possible changed to only ioExceptions)
Enable/Disable via 'supybot.plugins.Web.snarferReportIOExceptions'
2013-04-05 10:05:00 +02:00
Valentin Lorentz 23e84cfff9 Join all channels in one message when connecting. 2013-03-27 16:55:45 +01:00
Valentin Lorentz 3137db859f Karma: Display the new karma when it is updated. 2013-03-25 18:07:21 +01:00
Valentin Lorentz 6524dfd8c9 Karma: Fix @dump. Closes GH-457. 2013-03-25 16:24:43 +01:00
Valentin Lorentz f4c643ad51 Factoids: Add the web interface. 2013-03-11 19:54:17 +01:00
Valentin Lorentz d714909576 Use non-sexist language in strings and comments. 2013-03-08 20:34:31 +01:00
Alexander Ralph Michael Minges 81f98611a4 Added German translation for NickAuth. 2013-03-08 17:57:48 +01:00
Valentin Lorentz 9ef83f70cf Web: Fix encoding in @title. 2013-03-06 12:11:46 +00:00