Commit Graph

3267 Commits

Author SHA1 Message Date
Valentin Lorentz
e92b8a62f5 Merge supybot's master (will make future merges easier)
Conflicts:
	plugins/Misc/plugin.py
	plugins/String/plugin.py
	src/drivers/Socket.py
	src/irclib.py
	src/ircutils.py
2012-04-03 16:55:29 +02:00
Valentin Lorentz
590a992651 Add the channel where a command has been called in the logs ('XXX called by XXX'). 2012-03-18 20:45:17 +01:00
Mika Suomalainen
11417cea83 Core: Update l10n-fi. 2012-03-16 18:35:14 +01:00
skizzhg
aedfc07762 Update l10n-it. 2012-03-16 18:28:05 +01:00
Valentin Lorentz
a5e8f8ede8 Allow supybot.directories.backup to be /dev/null. 2012-03-15 20:22:46 +01:00
Valentin Lorentz
808ed5cd9b Update l10n-fr. 2012-03-15 13:44:43 +01:00
Valentin Lorentz
99ad2d193e BadWords: Fix commit 123c176637. 2012-02-25 14:02:02 +01:00
Valentin Lorentz
fcfa483efe Just update the version number. 2012-02-17 21:59:23 +00:00
Valentin Lorentz
570e30f1b7 Pass supybot.protocols.irc.strictRfc to ircutils.isNick in 'nick' converter. Closes GH-312. 2012-02-11 09:03:52 +01:00
Valentin Lorentz
957311ed2b Fix UTC use in sandbox/update-version. 2012-01-06 18:04:58 +01:00
nyuszika7h
6e699816d0 Channel: Make supybot.alwaysJoinOnInvite channel-specific. Closes GH-159. 2012-01-02 14:15:01 +01:00
nyuszika7h
c656abf096 irclib.py: Add network name to 'Outgoing message' debug log message 2011-12-28 11:37:10 +01:00
Valentin Lorentz
fc3d3e6c01 Prevent the 'hostmask' converter from returning '*!*@*' while 'foo!*@*' was given. 2011-12-27 11:55:50 +01:00
Daniel Folkinshteyn
43a3285f48 core: avoid casting data to string if it is already an instance of basestring, in irc.reply. 2011-12-18 12:39:05 +01:00
James McCoy
d9531d2d29 Fix parsing of 004 message for supported umodes/chanmodes
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-14 01:31:28 +08:00
Valentin Lorentz
5217f855b0 Fix previous merge (again). 2011-12-13 18:09:52 +01:00
Valentin Lorentz
332420bad9 Fix previous merge.
Conflicts:

	src/drivers/Socket.py
	src/version.py
2011-12-13 18:09:15 +01:00
James McCoy
7e05510faa Only use ircmsg.whois's mask argument if it's non-empty.
Closes: Sf#3121298
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-13 18:06:31 +01:00
James McCoy
b8c43dc5cc Perform all received* IrcMsg tagging in one spot.
This also fixes a long-standing failing Misc test since it was relying on the
receivedAt tag.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-13 18:06:26 +01:00
James McCoy
d1df9e8306 Use socket.inet_aton for isIPV4 since Windows doesn't (always?) have inet_pton
Closes: Sf#3430008
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>

Conflicts:

	src/utils/net.py
2011-12-13 18:05:14 +01:00
James McCoy
ca23cbb774 Merge branch 'maint/0.83.4' 2011-12-06 01:18:18 -05:00
James McCoy
998819da58 Bug fixes in src/ircmsgs.py
unbans did send the repr() of the ban list, and IrcMsg.__hash__ did try to hash a list.

Conflicts:

	src/version.py

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-06 00:22:40 -05:00
James McCoy
f6f9e654cb Only use ircmsg.whois's mask argument if it's non-empty.
Closes: Sf#3121298
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-06 00:08:01 -05:00
James McCoy
4ddfae427f Perform all received* IrcMsg tagging in one spot.
This also fixes a long-standing failing Misc test since it was relying on the
receivedAt tag.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-05 23:52:38 -05:00
James McCoy
360a2036ac Use socket.inet_aton for isIPV4 since Windows doesn't (always?) have inet_pton
Closes: Sf#3430008
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-12-05 22:48:09 -05:00
Valentin Lorentz
f1852f2e2b Seen: Fix error message ('You must be in') for @since. 2011-12-03 12:45:07 +01:00
Valentin Lorentz
0caf7dba5b Fix network registration (SASL password should not be set up on registration). 2011-12-03 12:36:16 +01:00
Daniel Folkinshteyn
a98b2df392 core: make sure owner is never ignored. also simplify the logic flow in ignore checking.
Thanks m4v for the patch!
2011-11-26 19:09:19 +01:00
skizzhg
6d1cf739ab Games: Update l10n-it. 2011-11-21 19:43:56 +01:00
James McCoy
8b73f78b3e Merge branch 'maint/0.83.4'
Conflicts:
	plugins/Misc/plugin.py
	src/ircutils.py

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-13 15:26:19 -05:00
James McCoy
4833976294 One last fix to umode filtering.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-13 15:10:16 -05:00
Valentin Lorentz
b5187ea31d Fix commit b23480b9 again. 2011-11-12 00:39:08 +01:00
Valentin Lorentz
efd158da58 Fix commit b23480b9. Closes GH-267. 2011-11-11 23:50:55 +01:00
Valentin Lorentz
348d1bd99c Fix typo (lamda => lambda). 2011-11-11 19:56:20 +01:00
skizzhg
a93750bad7 Admin: Update l10n-it. 2011-11-07 19:40:04 +01:00
James McCoy
d6336421e0 Fix IRC.do376's handling of supported state
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-07 05:58:48 -05:00
James McCoy
4232e40e26 Fix parsing of 004 message for supported umodes/chanmodes
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-07 05:58:27 -05:00
James McCoy
3bfda3cc7a Fix filtering of unsupported umodes
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-11-06 22:20:55 -05:00
Valentin Lorentz
74b98f5c2a Merge remote-tracking branch 'supybot/master' into testing 2011-10-31 22:07:48 +01:00
Valentin Lorentz
a231abce89 Admin: Internationalize docstring for clearq + l10n-fr. 2011-10-30 19:22:39 +01:00
Valentin Lorentz
c677077a31 Admin: Add clearq command. 2011-10-30 14:21:53 +01:00
James McCoy
92ff5f469a Merge branch 'check-umodes' into maint/0.83.4 2011-10-29 17:26:05 -04:00
James McCoy
02c0d0ce3c Merge branch 'check-umodes' 2011-10-29 17:25:57 -04:00
James McCoy
b23480b915 irclib: Filter out unsupported umodes before sending them to the server
Closes: Sf#3075891
Signed-off-by: James McCoy <vega.james@gmail.com>
2011-10-29 17:22:42 -04:00
James McCoy
c9e548bdd9 irclib: Add support for 004 messages from the server
At a minimum, the message gives us the server name, ircd version, supported
umodes, and supported channel modes.  Add the umodes and channel modes to
self.supported.

Some IRCds (e.g., hybrid and ircd-seven) have an extra arg which seems to be
the channel modes that require arguments.

Signed-off-by: James McCoy <vega.james@gmail.com>
2011-10-29 17:22:27 -04:00
Valentin Lorentz
69fe2e0562 Network: Keep the trailing # to channels, even if the user is voiced/halfoped/oped/whatever on it. 2011-10-29 19:43:53 +02:00
Valentin Lorentz
8b616d2f59 RSS: update l10n-de l10n-fi l10n-it. fix l10n-fr. 2011-10-29 17:10:58 +02:00
Valentin Lorentz
8add66511e Update l10n-fr. 2011-10-29 16:52:29 +02:00
Valentin Lorentz
7d1c2705cf Fix commit c0beda2422. 2011-10-29 15:23:39 +02:00
Valentin Lorentz
08405c6ec5 Fix Windows support (broken in 543e7882). 2011-10-29 14:46:35 +02:00
Valentin Lorentz
c0beda2422 Allow owner to kban ops. Closes GH-215. 2011-10-29 13:46:11 +02:00
Valentin Lorentz
61157f1a70 Remove buggy configuration variable help. 2011-10-29 12:23:19 +02:00
Valentin Lorentz
be438b45c2 Add configuration variable supybot.servers.http.robots. 2011-10-29 12:13:09 +02:00
Valentin Lorentz
4c05d97f4a Karma: Take profit of the return value of conf.registerPlugin().
(It breaks my documentation generator)
2011-10-28 22:44:10 +02:00
Valentin Lorentz
e253fe1543 Allow network-specific nicks. Closes GH-134. 2011-10-27 12:31:37 +02:00
Valentin Lorentz
ceabe070a0 Merge remote-tracking branch 'supybot/master' into testing
Conflicts:
	plugins/Channel/plugin.py
2011-10-27 11:56:13 +02:00
Valentin Lorentz
a87c096d69 Allow plugins to take over a subdirectory of the HTTP server. 2011-10-27 10:47:59 +02:00
skizzhg
51e02849ad Web: Fix l10n-it. 2011-10-27 10:47:25 +02:00
Daniel Folkinshteyn
8f7c4bdf7f Fix banmask creation. Thanks Progval for the patch!
fixes https://sourceforge.net/tracker/?func=detail&aid=3088559&group_id=58965&atid=489447

incorporating patch https://sourceforge.net/tracker/?func=detail&aid=3163843&group_id=58965&atid=489449

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-10-22 14:25:26 -04:00
Daniel Folkinshteyn
df5391dcf7 Socket driver: implement ssl connection support.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2011-10-22 14:09:06 -04:00
Valentin Lorentz
a46176e3b1 Fix URL to plugins and default page charset in HTTP server. 2011-10-02 12:11:30 +02:00
Valentin Lorentz
90ad25668e Misc: Fix order of replies of @tell, in order to fix issue with nesting.
Using @ignore [tell foo bar] was telling 'The operation succeeded' to foo, and ignore 'bar'.
2011-09-18 10:31:09 +02:00
Valentin Lorentz
e9697ffcf9 Merge pull request #213 from nyuszika7h/testing
Add SASL support to core.
2011-09-18 01:23:34 -07:00
nyuszika7h
25dcadfe68 conf.py: remove surrounding spaces around '=' for sasl_username. 2011-09-14 11:39:00 +02:00
nyuszika7h
e140fc76f5 conf.py: Change username to sasl_username and add it as last argument. 2011-09-13 19:55:31 +02:00
nyuszika7h
ca502c6814 irclib.py: Added network name to SASL authentication success/fail. 2011-09-13 19:55:01 +02:00
nyuszika7h
c8c2f125a1 conf.py: remove part about server-specific password for supybot.networks.<network>.sasl.password. 2011-09-13 17:01:18 +02:00
nyuszika7h
dcaefbdcf5 Add SASL support to core. 2011-09-13 11:07:52 +02:00
Valentin Lorentz
b80d6b27d6 Karma: Fix SQLite threading issue. Closes GH-206. 2011-09-11 20:13:20 +02:00
Valentin Lorentz
904503e67e Ctcp: Update CTCP-Source reply. Closes GH-203. 2011-09-11 16:43:21 +02:00
skizzhg
151c6a0738 ChannelStats: Update l10n-it. 2011-09-02 20:03:45 +00:00
Valentin Lorentz
2f6acdf42f Misc: Add --unloaded option. 2011-09-01 17:48:09 +00:00
skizzhg
2a3fc2a0f3 ChannelStats: Add l10n-it. 2011-08-30 17:21:39 +00:00
Valentin Lorentz
dda08e0648 RSS: Fix typo (fnor -> for). 2011-08-27 13:58:14 +00:00
Daniel Folkinshteyn
e98ac0f4c2 Some improvements to the commands.process function - better process naming and informational output.
Conflicts:

	plugins/String/plugin.py
	src/commands.py
2011-08-25 11:36:47 +02:00
Valentin Lorentz
be585ecea9 Merge remote-tracking branch 'supybot/maint/0.83.4' into testing
Conflicts:
	src/ircutils.py
2011-08-23 16:41:52 +02:00
James Vega
5ada9193b9 Honor supybot-test's timeout option and document the units
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2011-08-22 20:50:16 +02:00
James Vega
4661acb3a3 Honor supybot-test's timeout option and document the units
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2011-08-22 14:07:39 -04:00
Valentin Lorentz
fb66be5968 Revert "Utilities: Add l10n-it."
This reverts commit f37db99895.
2011-08-21 21:44:25 +02:00
skizzhg
f37db99895 Utilities: Add l10n-it. 2011-08-21 20:49:22 +02:00
Valentin Lorentz
cebf67fe89 Time: Fix redundant (and un-user-friendly) error message. 2011-08-18 11:07:26 +02:00
Valentin Lorentz
22eb147116 Channel: Really deny access to the nicks list. Closes GH-172. 2011-08-16 13:22:23 +02:00
Daniel Folkinshteyn
37597bfe94 Create a commands.process function which runs a function inside a separate process.
This is the only way to limit the execution time of a possibly long-running python statement.
Use this on String.re, due to the possibility of pathologically long re matching in python.
This allows us to remove the 'trusted-only' restriction on string.re.
In the future, this should probably be used in other places that take user-supplied regexps,
such as 'misc last --regexp', for example, as well as other potentially long-running tasks
that can block the bot.

Conflicts:

	plugins/String/plugin.py
	src/commands.py
2011-08-15 17:24:33 +02:00
Daniel Folkinshteyn
3fa45b3b5f Secure some more commands which take a regexp from untrusted user input.
Namely todo.search, note.search, dunno.search.

Conflicts:

	plugins/Note/plugin.py
	plugins/Todo/plugin.py
	src/version.py
2011-08-13 01:59:18 +02:00
Daniel Folkinshteyn
0e3002d1f8 String: set default re subprocess timeout to 0.1, since that should be quite enough.
Conflicts:

	plugins/String/config.py
2011-08-13 01:57:03 +02:00
Daniel Folkinshteyn
e11dc28025 Misc: fix potential ddos when misc.last command is fed a specially-crafted regexp.
Conflicts:

	plugins/Misc/plugin.py
2011-08-13 01:56:21 +02:00
Daniel Folkinshteyn
91ac1c2179 String: fix it up to work with the previously committed enhancement for subprocess timeout.
Conflicts:

	plugins/String/plugin.py
2011-08-13 01:55:25 +02:00
Daniel Folkinshteyn
3526d5dabf src/commands.py: make subprocesses raise an error on timeout, rather than return a string
Conflicts:

	src/commands.py
2011-08-13 01:53:58 +02:00
Valentin Lorentz
d85cbd256b Misc: Security fix to @last: time-consuming could freeze the bot. Closes GH-157. 2011-08-12 18:51:40 +02:00
Valentin Lorentz
8d6ce790e8 Time: Remove useless/bad/wrong error message from @tztime. 2011-08-12 13:07:40 +02:00
Valentin Lorentz
2caae4d043 Merge branch 'testing' of github.com:ProgVal/Limnoria into testing 2011-08-12 13:07:14 +02:00
Valentin Lorentz
1fa02674a0 Revert "In registry.py, test whether a requested configuration variable is a channel name before creating it automatically. Closes GH-63."
This reverts commit c6facc99f3.

Conflicts:

	src/version.py
2011-08-12 01:06:31 +02:00
skizzhg
54aef4f3d5 Later & Misc & Seen & Todo: Update l10n-it. 2011-08-10 17:23:59 +02:00
Daniel Folkinshteyn
6dca55deeb Services: fix problem with some channels being mixed up between networks on startup, when noJoinsUntilIdentified is true.
When noJoinsUntilIdentified config is true, the bot holds join messages in a 'waitingJoins' list, and processes them
once nickserv identification comes through. The problem was that when the bot is configured to join multiple networks,
join messages from different networks would get appended to the same list, without any differentiation by which message
belongs to which network. Thus, if there are messages waiting for multiple networks, it would often be the case that
whichever network got identification done first, would 'pick up' other network's join messages.

This fix stores the network name along with the join messages in the list, and has each network pick out only its own
join messages.
2011-08-10 12:00:42 +02:00
skizzhg
cf436631d6 Admin & Anonymous & AutoMode & Channel & Misc & NickCapture & Seen & Todo & URL: Update l10n-it. 2011-08-10 11:48:07 +02:00
Valentin Lorentz
bc36debe2f ChannelLogger & Format & Karma & Later & Misc & Owner & Reply & Seen & Status & Todo & URL & Unix: Update messages.pot and l10n-fr. 2011-08-10 11:44:57 +02:00
skizzhg
6e5350def6 ChannelLogger & Format & Karma & Owner & Reply & Status & URL & Unix: Fix typoes. 2011-08-10 11:26:47 +02:00
Valentin Lorentz
f3b6b182aa Reply: Fix typo and update l10n-*. Closes GH-125. 2011-08-07 12:04:31 +02:00
Valentin Lorentz
52e0bc5ac0 NickCapture: Fix plugin help and l10n-fr. Closes GH-116. 2011-08-07 12:02:06 +02:00
Valentin Lorentz
2e0f33f655 User: Admins can now see capabilities of other users. Closes GH-106. 2011-08-07 11:59:19 +02:00
Valentin Lorentz
9cd2c31dd4 Misc: Notify the caller when @tell succeeded. Closes GH-97. 2011-08-07 11:30:51 +02:00
skizzhg
e2b598d5b7 Update core l10n-it. 2011-08-07 11:16:49 +02:00
skizzhg
7e88bb1ce3 Update l10n-it for many plugins. 2011-08-07 11:16:04 +02:00
Valentin Lorentz
fb278f42fc MessageParser: update internationalization. 2011-08-06 18:57:56 +02:00
skizzhg
a7c6a6337a MessageParser: fix typo. 2011-08-06 18:56:28 +02:00
skizzhg
1af08c27d7 Admin & Channel & Games & Math & MessageParser & Misc & MoobotFactoids & Network & Nickometer & Owner & Praise & Relay & Reply & Topic & Unix & Web: update/add l10n-it. 2011-08-06 18:55:38 +02:00
skizzhg
4ac82fb411 src/httpserver.py: fix typo. 2011-08-06 18:53:53 +02:00
skizzhg
7d8258f6a2 Core l10n-it. 2011-08-06 18:53:15 +02:00
skizzhg
94548c4dd6 src/conf.py: fix typos. 2011-08-06 18:51:46 +02:00
skizzhg
789e0f135c Utilities: fix l10n-it. 2011-07-22 02:02:11 +02:00
skizzhg
e37e292484 Channel & Factoids & Google & MessageParser & MoobotFactoids & Services & Topic & User: Add/update l10n-it. 2011-07-22 01:36:07 +02:00
Valentin Lorentz
a94b10e19b Channel: fix typo. 2011-07-22 01:34:31 +02:00
Valentin Lorentz
c571d0e007 Topic: fix typo in @unlock help. 2011-07-20 21:28:43 +02:00
Valentin Lorentz
547bf62dac Filter: Fix l10n-fr. 2011-07-19 23:49:34 +02:00
Valentin Lorentz
083815c6f7 Factoids: Fix typo. 2011-07-18 15:23:06 +02:00
skizzhg
a4c0a13b1d MessageParser: Fix typo (rexeps -> regexps). 2011-07-17 15:21:07 +02:00
Daniel Folkinshteyn
453f61da53 Dict: Fix FSF address in included dictclient module
Taking fresh address from http://www.gnu.org/licenses/old-licenses/gpl-2.0.html#SEC4
2011-07-16 14:27:52 +02:00
Valentin Lorentz
24aa0b6754 Later: add @undo command. Closes GH-76. 2011-07-16 13:59:49 +02:00
Valentin Lorentz
4e6d08c7ce Misc: Fix @source help. Closes GH-78. 2011-07-16 13:45:43 +02:00
Valentin Lorentz
03cc4c7ab7 supybot-wizard: Suggest most useful plugins when the user want to add plugins en masse. Closes GH-84. 2011-07-16 13:37:56 +02:00
Valentin Lorentz
83e55fbbbd PluginDownloader: Installing a plugin overrides the existing plugin with the same name, if any. 2011-07-14 17:34:27 +02:00
Valentin Lorentz
4edfed5ed7 AutoMode: fix previous commit. 2011-07-12 16:09:55 +02:00
Valentin Lorentz
fac7f9b379 AutoMode & Conditional & Misc & Network & Owner & Plugin & RSS & Relay & Services & String & Unix: Add l10n-it. 2011-07-12 15:04:13 +02:00
Valentin Lorentz
6b160def92 Misc: Update messages.pot and l10n-fr. 2011-07-10 19:00:12 +02:00
Valentin Lorentz
a83f2c9a07 Misc: Change URL in @source. 2011-07-10 17:08:20 +02:00
Valentin Lorentz
0dfdfa2d28 Channel: fix NameError: 'replyirc' -> 'replyIrc'. Closes GH-73. 2011-07-09 14:05:28 +02:00
Valentin Lorentz
f943fee5d5 Protector: unban user before inviting him. Closes GH-69. 2011-07-09 13:44:16 +02:00
Valentin Lorentz
a4653af792 Protector: Bug fix (demote can't use irc.queueMsg if irc is not given). 2011-07-09 13:43:24 +02:00
Valentin Lorentz
c06b86b13c Bug fixes in src/ircmsgs.py
unbans did send the repr() of the ban list, and IrcMsg.__hash__ did try to hash a list.
2011-07-09 13:42:34 +02:00
Valentin Lorentz
6831b75d72 Conditional: fix typo. 2011-07-08 10:41:36 +02:00
Daniel Folkinshteyn
48979a4db7 Scheduler: remove spammy debug output. 2011-07-07 13:33:30 +02:00
Daniel Folkinshteyn
4b1d2b49e4 Scheduler: don't immediately execute commands when restoring repeated events. 2011-07-07 13:31:50 +02:00
Valentin Lorentz
c6facc99f3 In registry.py, test whether a requested configuration variable is a channel name before creating it automatically. Closes GH-63. 2011-07-06 11:14:58 +02:00
Valentin Lorentz
0e61cf9837 Add assertNotHTTPResponse to HTTP unit tests. 2011-07-03 17:09:53 +02:00
Valentin Lorentz
f4b81659af Add unit tests to the HTTP server. 2011-07-03 16:16:19 +02:00
Valentin Lorentz
39b3784a12 First try for unit tests for the HTTP server. 2011-07-03 10:46:48 +02:00
Valentin Lorentz
8c1d10e8f3 MoobotFactoids: Use when opening the database. 2011-07-02 11:50:31 +02:00
Valentin Lorentz
9aa32da082 Fix typo in HTTP server. 2011-07-01 16:25:50 +02:00
Valentin Lorentz
5215aa1095 Move http server from src/utils/ to src/ 2011-07-01 16:15:04 +02:00
Valentin Lorentz
4ebcda024b Bug fix (I didn't test the previous commit correctly) 2011-07-01 16:11:37 +02:00
Valentin Lorentz
41514bafdd Core & Channel & Topic: Add the isGranted converter. Closes GH-39. 2011-07-01 15:58:39 +02:00
Valentin Lorentz
d4693ebb69 Add callback (mainly useful for plugins) for config edits. Closes GH-24. 2011-07-01 11:11:39 +02:00
Valentin Lorentz
efc30a4ed2 Fix traceback when sending POST requests to the 404 error handler. 2011-06-30 00:58:46 +02:00
Valentin Lorentz
1c366a2899 src/i18n.py: fix error when running @reloadlocale with a plugin loaded before but not available any longer. 2011-06-28 19:52:18 +02:00
Valentin Lorentz
509a6c1780 Forgot a debug print in httpserver.py 2011-06-25 16:28:49 +02:00
Valentin Lorentz
a7f6f6c3b3 Update the version string 2011-06-25 15:15:19 +02:00
Valentin Lorentz
4df4977a76 Internationalize strings in the HTTP server. Closes GH-29. 2011-06-25 14:27:44 +02:00
Valentin Lorentz
fc41fc6153 Add support for POST and HEAD requests to the HTTP server. 2011-06-25 11:37:10 +02:00
Valentin Lorentz
fa3fc7d20a Fix exception when stopping the HTTP server if already stopped. 2011-06-25 10:02:30 +02:00
Valentin Lorentz
ff2047997a Merge branch 'httpserver' into testing 2011-06-24 18:12:50 +02:00
Valentin Lorentz
952db3a6bd supybot.servers.http.keepAlive defaults to False. 2011-06-24 18:12:43 +02:00
Valentin Lorentz
a1b2e931b7 Merge branch 'httpserver' into testing 2011-06-24 16:37:54 +02:00
Valentin Lorentz
b9baa579fe Bug fix in HTTP server. 2011-06-24 16:26:32 +02:00
Valentin Lorentz
14393a6959 Merge branch 'httpserver' into testing 2011-06-24 15:41:03 +02:00
Valentin Lorentz
667d7c34b4 Bug fixes to the HTTP server 2011-06-24 15:32:22 +02:00
Valentin Lorentz
728587be58 Fix comment in src/__init__.py 2011-06-24 14:52:24 +02:00
Valentin Lorentz
ef5438e937 Add docstrings to the HTTP server callbacks 2011-06-24 14:52:01 +02:00
Valentin Lorentz
13e4f45e30 Add an embedded HTTP server to Supybot. 2011-06-24 14:31:29 +02:00
Valentin Lorentz
94f4d55734 Update version 2011-06-23 12:30:23 +02:00
Valentin Lorentz
693ba6aba0 Don't tell owner to contact an admin. Closes GH-20. 2011-06-22 21:37:34 +02:00
Valentin Lorentz
ebb3aae81c Raise an exception when plugin is not found instead of returning None in i18n.getPluginDir() 2011-06-17 15:36:38 +02:00
Valentin Lorentz
4f91a62f27 Update version 2011-06-16 19:08:48 +02:00
Valentin Lorentz
3e76a72e7c Use limnoria as a default ident (instead of supybot) 2011-06-13 11:25:19 +02:00
James Vega
543e78828b Add utils.net.isIPV4, with utils.net.isIP checking v4 or v6
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2011-06-06 21:44:15 -04:00
Valentin Lorentz
6c1699583b Misc: use Limnoria version string. 2011-06-05 20:30:32 +02:00
Daniel Folkinshteyn
ef6fe23e02 Seen: fix tests so they pass. fix seen command so it properly accepts nick wildcards.
Conflicts:

	src/version.py
2011-05-27 18:16:42 +02:00
Valentin Lorentz
8979475e13 Fix compatibility with Windows ('u' flag not supported by open()) 2011-05-07 09:12:03 +02:00
Valentin Lorentz
ce29bf8b5c Fix installation on a system that never had Supybot installed (fix commit 05c9482759) 2011-05-06 19:34:46 +02:00
Valentin Lorentz
d6cd8a5427 Fix email regexp to be RFC-compliant 2011-05-03 20:23:20 +02:00
Valentin Lorentz
58f115dde8 Add script to automatically update version with a datestamp upon commit. (Thanks nanotube) 2011-04-26 10:32:49 +02:00
Daniel Folkinshteyn
05c9482759 Consolidate the version string to reside in one central place to ease change making. 2011-04-26 10:23:18 +02:00
Valentin Lorentz
872e92eaff Merge branch 'testing' 2011-03-08 15:21:31 +01:00
Valentin Lorentz
39fa7e68d3 Fix syntax error 2011-03-05 09:51:05 +01:00
Valentin Lorentz
65d737873b Add another solution in error message about TypeErrors raised in plugins' __init__() 2011-03-05 09:44:40 +01:00
Valentin Lorentz
32b21cbc18 Add a clue in solving issue with wrapping wrapped commands 2011-03-01 08:47:53 +01:00
Valentin Lorentz
db849e21a0 Add a try/catch arround plugin directory determination (might be useful for some utilities...) 2011-02-28 16:02:17 +01:00
Valentin Lorentz
178d1aca00 Fix coding string of src/__init__.py 2011-02-27 13:08:51 +01:00
Valentin Lorentz
44458d4b57 Change version number to 0.83.4.1+git+fr3 2011-02-27 12:01:51 +01:00
James Vega
4af9d8735f 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 ef8bd817e8)

Signed-off-by: Daniel Folkinshteyn <nanotube@users.sourceforge.net>
2011-02-25 19:13:57 +01:00
Daniel Folkinshteyn
73e822ca56 Undo mtughan's bugfix from 7f9a113060, so i can merge jamessan's fix ef8bd817e8 2011-02-25 19:13:50 +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
4cd0d19be7 commit mtughan's bugfix for this bug:
https://sourceforge.net/tracker/?func=detail&aid=2985241&group_id=58965&atid=489447
2011-02-25 18:48:46 +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
Valentin Lorentz
9f5b3f635a Merge branch 'testing' 2011-02-14 18:22:18 +01:00
Valentin Lorentz
125e766d84 Remove gribble's version.py 2011-01-29 11:43:47 +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
Valentin Lorentz
0223e9c210 Change release number to 0.83.4.1+git+fr2 2011-01-29 10:29:05 +01:00
Valentin Lorentz
e8814fc07a Add checkCapabilityButIgnoreOwner converter 2011-01-27 19:32:43 +01:00
Valentin Lorentz
e705d3b5a9 Fix name conflict with _() 2011-01-26 10:01:58 +01:00
Valentin Lorentz
ad2ad80263 Fix forgotten merge 2011-01-26 09:56:04 +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
e4cced8364 Fix depluralize. 2011-01-22 10:28:27 +01:00
Valentin Lorentz
720b6d23eb Fix to global hostmask. Fix bug #SF3088559 and submitted as patch #SF3163843 2011-01-22 10:17:32 +01:00
Valentin Lorentz
4649188b96 Fix detection of .42 domains 2011-01-02 13:22:54 +01:00
Valentin Lorentz
5629b4585c Fix bolding for help strings (because of i18n) 2010-12-22 18:15:46 +01:00
Valentin Lorentz
83aca7c651 Merge branch 'testing' 2010-12-22 18:12:28 +01:00
Valentin Lorentz
49dfa69b91 Fix actually compatibility with non-ssl envirronments 2010-12-12 14:33:36 +01:00
Valentin Lorentz
a58e270516 Fix issue with Pypy 2010-12-12 14:22:44 +01:00
Valentin Lorentz
96ea659030 Add SSL support for Socket driver 2010-12-09 19:33:35 +01:00
Valentin Lorentz
f2a0b60e79 Fix unicode bug 2010-11-28 17:47:38 +01:00
Valentin Lorentz
3fafd31f51 Remove redundant spaces in src/i18n.py 2010-11-19 17:00:55 +01:00
Valentin Lorentz
3589f15278 Merge branch 'testing' 2010-11-14 14:36:21 +01:00
Valentin Lorentz
5300abbd5d Merge branch 'l10n-fr' into testing 2010-11-14 14:36:15 +01:00
Valentin Lorentz
e7cf7788be Merge branch 'i18n' into l10n-fr 2010-11-14 14:36:10 +01:00
Valentin Lorentz
0998c2a43f Fix bug in src/commands.py (forgotten comma) 2010-11-14 14:36:02 +01:00
Valentin Lorentz
211be44b9c Merge branch 'testing' 2010-11-11 12:03:12 +01:00
Valentin Lorentz
4ea359d503 Merge branch 'l10n-fr' into testing 2010-11-11 12:03:04 +01:00
Valentin Lorentz
827ff7df5b Merge branch 'i18n' into l10n-fr 2010-11-11 12:02:57 +01:00
Valentin Lorentz
323ffe1a1f i18n: Fix internationalization problems 2010-11-11 12:01:56 +01:00
Valentin Lorentz
713aae9017 Change the version suffix 2010-11-02 14:06:06 +01:00
Valentin Lorentz
43c105a6d3 Merge branch 'l10n-fr' into testing 2010-11-01 20:18:56 +01:00
Valentin Lorentz
04f25ce0de Merge branch 'i18n' into l10n-fr 2010-11-01 20:18:50 +01:00
Valentin Lorentz
02cb15d522 Remove the 'testInternationalization' 2010-11-01 20:18:44 +01:00
Valentin Lorentz
fbbfd683b4 Merge branch 'l10n-fr' into testing 2010-11-01 20:15:21 +01:00
Valentin Lorentz
589753fe9d Merge branch 'i18n' into l10n-fr 2010-11-01 20:15:16 +01:00
Valentin Lorentz
31d9d47751 Remove debug message 2010-11-01 20:15:02 +01:00
Valentin Lorentz
5679499c43 Merge branch 'l10n-fr' into testing 2010-11-01 19:57:27 +01:00
Valentin Lorentz
17fc98a3ee Merge branch 'i18n' into l10n-fr 2010-11-01 19:57:23 +01:00
Valentin Lorentz
c0ff3c3f92 Bug fix in i18n.py (decorated commands without docstring raise an error) 2010-11-01 19:57:18 +01:00
Valentin Lorentz
27ef96a78a Merge branch 'l10n-fr' into testing 2010-11-01 19:53:58 +01:00
Valentin Lorentz
249eace2cf Merge branch 'i18n' into l10n-fr
Conflicts:
	src/i18n.py
2010-11-01 19:52:56 +01:00
Valentin Lorentz
79930a7435 Bug fix in src/i18n.py 2010-11-01 19:48:45 +01:00
Valentin Lorentz
52b701526d Merge branch 'l10n-fr' into testing 2010-11-01 15:02:05 +01:00
Valentin Lorentz
22fa9f4098 Merge branch 'i18n' into l10n-fr 2010-11-01 15:01:57 +01:00
Valentin Lorentz
30a1ca06b2 Fix the @Misc help formatting
Stop removing the \n in the translated docstrings
2010-11-01 15:01:50 +01:00
Valentin Lorentz
e4256ff8c7 Merge branch 'l10n-fr' into testing 2010-11-01 14:35:17 +01:00
Valentin Lorentz
56f2c38137 Merge branch 'i18n' into l10n-fr
Conflicts:
	src/i18n.py
2010-11-01 14:34:57 +01:00
Valentin Lorentz
1f4b3b83e1 Make the src/i18n.py code cleaner 2010-11-01 14:33:43 +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
a2c8c613db Bug fix (didn't keep any beginning or ending space) 2010-11-01 11:47:19 +01:00
Valentin Lorentz
4dcd7f7fb4 Bug fixes (mainly the &config help internationalization) 2010-11-01 11:42:33 +01:00
Valentin Lorentz
51edf7325c Merge branch 'l10n-fr' into testing 2010-10-31 18:37:15 +01:00
Valentin Lorentz
198f8267eb Bug fixes 2010-10-31 18:36:33 +01:00
Valentin Lorentz
4c03aef9a6 Internationalize a string in conf.py 2010-10-31 13:41:36 +01:00
Valentin Lorentz
676c08ad8e Fix possible truncation of messages
Possible bug with languages which has a long translation for '(XX more messages)'.
2010-10-31 13:35:23 +01:00
Valentin Lorentz
6dfd334344 Merge branch 'l10n-fr' into testing 2010-10-31 11:32:00 +01:00
Valentin Lorentz
283a026449 Add the i18n test in src/test.py 2010-10-31 11:30:04 +01:00
Valentin Lorentz
27bb53b560 Merge branch 'l10n-fr' into testing 2010-10-30 21:41:44 +02:00
Valentin Lorentz
4a516c5f46 Makes the code of i18n.py cleaner
More comments; docstrings; remove the % auto-handling (useless).
2010-10-30 21:41:25 +02:00
Valentin Lorentz
3ea8115095 Internationalize src/utils/str.py and modify src/i18n.py to fit this changes 2010-10-30 21:10:49 +02:00
Valentin Lorentz
f3528c57d4 Merge branch 'l10n-fr' into testing 2010-10-30 12:49:57 +02:00
Valentin Lorentz
5150c4ef60 Now tests if a plugin has the _ object before using it 2010-10-30 12:49:43 +02:00
Valentin Lorentz
5f2699b2c0 Merge branch 'l10n-fr' into testing 2010-10-30 12:15:09 +02:00
Valentin Lorentz
b85d289bbb Fix wrong method name 2010-10-30 12:14:54 +02:00
Valentin Lorentz
5e09a9c887 Merge branch 'l10n-fr' into testing 2010-10-30 12:11:29 +02:00
Valentin Lorentz
6737424bc6 Shorten PluginInternationalisation.get* in src/i18n.py 2010-10-29 15:33:36 +02:00
Valentin Lorentz
ec6a267c09 Internationalize more functions in src/utils/str.py 2010-10-29 15:31:36 +02:00
Valentin Lorentz
e8bc966827 Add locale abitrary code
Add the capability for Supybot to load code depending on the locale
src/utils/str.py now imports pluralize and depluralize from this code
2010-10-28 17:28:27 +02:00
Valentin Lorentz
97f51ab08e Fix i18n bug for global Supybot 2010-10-28 16:42:52 +02:00
Valentin Lorentz
b7651b06a1 Merge branch 'l10n-fr' into testing 2010-10-28 15:45:51 +02:00
Valentin Lorentz
f3a579f3da Add the '<empty>' feature to nItems, and changed ChannelStats localization in order to use it as bug fixer 2010-10-28 15:18:06 +02:00
Valentin Lorentz
44c3eb1825 Changes version 2010-10-24 13:54:35 +02:00
Valentin Lorentz
8be4aaeff1 Merge branch 'readability' 2010-10-23 10:38:52 +02:00
Valentin Lorentz
5e2e858ac5 Removed debug information 2010-10-20 19:01:22 +02:00
Valentin Lorentz
da9a1bfb70 Internationalize questions.py 2010-10-20 18:33:39 +02:00
Valentin Lorentz
6b26861c23 Internationalize callbacks.py, commands.py, and conf.py ; and generated the messages.pot 2010-10-20 18:27:58 +02:00
Valentin Lorentz
df3d096ab1 Modified i18n.py, in order to handle internationalization before conf is loaded 2010-10-20 18:26:52 +02:00
Valentin Lorentz
f1d5d9d832 Fix a pygettext warning 2010-10-20 10:27:31 +02:00
Valentin Lorentz
77d0296054 Merge branch 'master' into readability 2010-10-20 09:49:59 +02:00
Valentin Lorentz
597cec5af7 Merge branch 'master' into i18n 2010-10-20 09:48:59 +02:00
Valentin Lorentz
386c8562ea Added myself in the author list 2010-10-20 09:48:49 +02:00
Valentin Lorentz
e556fbde2e Added %S to format() 2010-10-16 11:37:10 +02:00
Valentin Lorentz
4a5b98507f Revert 9a2eea4272 2010-10-10 16:54:46 +02:00
Valentin Lorentz
d156ae7474 Add the configuration variable help reloading 2010-10-10 16:46:55 +02:00
Valentin Lorentz
b44401dd1c Remove a forgotten debug print 2010-10-10 16:35:31 +02:00
Valentin Lorentz
9a2eea4272 Change the version name 2010-10-10 16:34:34 +02:00
Valentin Lorentz
a8319d3c6f Remove debug message and internationalize config.py in ChannelStats 2010-10-10 15:11:41 +02:00
Valentin Lorentz
a750fe6a2e Fix the internationalisation problem for the docstrings 2010-10-10 14:45:25 +02:00
Valentin Lorentz
50acd3d8d9 Creating the internationalization module and internationalize/localize ChannelStats into French 2010-10-09 11:36:22 +02:00
James Vega
26a458b9ec Merge branch 'maint/0.83.4' 2010-09-20 19:46:18 -04:00
James Vega
0fd6a84632 Use self.error() instead of raise for BooleanRequiredFalseOnWindows.
Closes: Sf#3070285
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-09-20 18:34:07 -04:00
James Vega
0abe22f5d1 Merge branch 'maint/0.83.4' 2010-09-08 23:50:35 -04:00
James Vega
b0575cec88 Handle changes to fnmatch.translate in Python 2.6
Define utils.python.glob2re based on the Python version being used.
Use glob2re in Todo and Note plugins.

Closes: Sf#3059292
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-09-08 23:31:01 -04:00
James Vega
e7ef97e529 Ensure channel-specific reply.whenNotAddressed works.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 166f32dcb0)
2010-08-24 19:52:59 -04:00
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 adc5d62bbf)
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 a278d17f2b)
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 f03a3f6c85)
2010-08-24 19:49:30 -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 ef8bd817e8)
2010-08-24 19:44:31 -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 4a9596608a)
2010-08-24 19:44:10 -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 3282e3407e.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 288d7c6e02)
2010-08-24 19:42:11 -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 07e283f450)
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 8a98653d3b)
2010-08-24 19:23:25 -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 25fc2de643)
2010-08-24 19:14:58 -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 e9a896c736)
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 459bc616b1)
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 260570bd4f)
2010-08-24 19:12:09 -04:00
Ricky Zhou
6299ef5c22 Account for negative times in timeElapsed.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit aa2337791a)
2010-08-24 19:02:16 -04:00
James Vega
024a77af48 Updated to 0.83.4.1+git.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
(cherry picked from commit 332a614eef)
2010-08-24 18:59:46 -04:00
James Vega
166f32dcb0 Ensure channel-specific reply.whenNotAddressed works.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-07-26 19:48:37 -04:00
James Vega
c10d964604 Elide ignored replies from nested command output.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2010-06-24 00:33:04 -04:00
James Vega
adc5d62bbf 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
2010-06-18 20:33:43 -04:00
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
Jeremy Fincher
6135a88741 Updates and tweaks to some ircutils functions. 2010-05-18 12:48:36 -05: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
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
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
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
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
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
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
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
56ba12aa4b Add support for UltimateIRCd's ! (protected) user mode.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-23 19:20:02 -04:00
James Vega
035a9f2459 Add registry.TemplatedString for config variables which use string.Template 2009-10-15 22:17:36 -04:00
James Vega
25fc2de643 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>
2009-10-15 22:16:38 -04:00
James Vega
f7cedae9ad Update ircutils.standardSubstitute to use string.Template
In the process, deprecate utils.str.perlVariableSubstitute.

Since string.Template doesn't support callable values though, we also
sub-class IrcDict and override __getitem__ to call the value if it is
callable.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-10-15 22:16:29 -04:00
James Vega
c5896ff6cb utils.web: Import urllib's urlencode into our namespace.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-09-29 19:54:07 -04:00
James Vega
56fbbe9f36 commands.py: Explain the odd userHostmask check in getOtherUser
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-09-23 18:29:49 -04:00
James Vega
de79e679f4 Add a data kwarg to getUrl(Fd) a la urllib2.Request.
This allows plugins to easily make POST requests using our getUrl(Fd)
functions.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-09-16 01:17:33 -04:00
James Vega
e9a896c736 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>
2009-09-11 18:09:38 -04:00
James Vega
459bc616b1 Reply with an error when getBanmask doesn't have a valid channel.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-09-02 07:40:33 -04:00
James Vega
260570bd4f Ensure getBanmask has a channel variable as per makeBanmask's requirement
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-09-01 23:29:42 -04:00
James Vega
eff20402ac Change canonize => normalize
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-08-27 16:41:34 -04:00
Štěpán Němec
a66034f852 Fix some typos/wordings.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-08-26 16:34:12 -04:00
Štěpán Němec
53cac5b078 callbacks.py: Remove duplicated getRealIrc() definition
NestedCommandsIrcProxy inherits the method from ReplyIrcProxy.
(Also fix some typos.)

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-08-20 11:23:12 -04:00
Štěpán Němec
2fa0f6dedc commands.py: Sort the items of the wrappers dictionary
(just to make it readable)

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-08-20 11:20:48 -04:00
Ricky Zhou
aa2337791a Account for negative times in timeElapsed.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-07-20 16:07:51 -04:00
Jeremy Fincher
43129239d6 Added Seen.since, which lets a user see messages which were sent since the last time he parted a channel. 2009-07-01 15:40:58 -05:00
Jeremy Fincher
b9d6277e30 Added supybot.abuse.flood.command.invalid.notify, a configuration variable determining whether the bot will notify infractors of their ignoring. 2009-06-09 10:40:05 -05:00
James Vega
332a614eef Updated to 0.83.4.1+git.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-25 13:38:22 -04:00
James Vega
27a4ef0ed3 Updated to 0.83.4.1.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-25 13:38:12 -04:00
James Vega
54dda880d4 Add a pluginCommands kwarg to Commands.listCommands.
Plugins which implement their own listCommands method should pass their
non-typically discoverable commands to Commands.listCommands via this
mechanism.  This means that the de-duplication of commands is performed in one
spot instead of having each plugin implement it on their on in their
listCommands method.

This reverts commits 0ce829af6215b97e725f4d6d580d1151950be869 and
09fb0e6fc974445a3414fb03a94625f8538d4570.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-22 18:52:15 -04:00
Ricky Zhou
fa3a2dd23b Allow nItems to take longs as well.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-19 00:58:07 -04:00
James Vega
3535f6a702 Updated to 0.83.4+git.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-18 03:49:52 -04:00
James Vega
f32c886692 Updated to 0.83.4.
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-18 03:49:42 -04:00
James Vega
0d98118247 Allow getCommandHelp to be told whether to use simpleSyntax.
Use this to force Misc.help to ignore simpleSyntax since the user has
explicitly asked for the help.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-05-18 03:12:54 -04:00
James Vega
0615846ab3 Fix getCommandHelp's use of dynamic.msg
Default chan to None so we can still retrieve a config value if dynamic.msg
isn't valid (e.g., when running supybot-plugin-doc).

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-04-28 08:14:46 -04:00
James Vega
b3d97ea03e callbacks: Only use dynamic.msg if it's not None in getCommandHelp
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-04-28 00:33:03 -04:00
James Vega
84ca6f2ae3 callbacks: Update PluginRegexp docstring to reference (un)addressedRegexps
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-04-09 10:53:02 -04:00
James Vega
bb759259b8 Remove useless comments and fix a SyntaxError
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-04-03 10:04:39 -04:00
Jeremy Fincher
dd4bc64e32 Changed a few caches to use CacheDict to ensure no without-bound growth on caches. 2009-04-02 11:45:00 -05:00
Jeremy Fincher
757991afc9 Added basic CacheDict with simple test. 2009-04-02 11:28:57 -05:00
James Vega
6b6861f884 Don't specify globals as a kwarg; only in 2.5+
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-03-22 13:47:42 -04:00
James Vega
58d308b54d Fix perlReToReplacer when \ is used in the replacement
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-03-12 17:17:20 -04:00
James Vega
e00e161a73 Comments can't follow line continuations
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-03-12 17:16:56 -04:00
Jeremy Fincher
278da67295 Merge branch 'master' of ssh://jemfinch@supybot.git.sourceforge.net/gitroot/supybot 2009-03-12 14:05:36 -05:00
Jeremy Fincher
fa9a9cb04d Ensured logging of error messages with unrecognized numeric codes. Fixes SR #1859821, but nothing can rectify freenode's idiocy completely. 2009-03-12 14:04:55 -05:00
James Vega
7c8d85ac8e Merge branch 'master' of git+ssh://supybot.git.sourceforge.net/gitroot/supybot 2009-03-12 15:01:46 -04:00
Jeremy Fincher
bc70ab8aad Fixes SR #2233215. 2009-03-12 13:54:05 -05:00
James Vega
6986fc7abe Do not store the install directory in directories.plugins
We automatically determine the directory anyway, so there's no need to clutter
the config file with it.  Instead, simply include the directory when we
perform the search for the plugin.

Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-03-12 14:50:46 -04:00
James Vega
ecd2c63650 Make universalImport support 'from ModuleA import ModuleB'
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-03-11 15:55:08 -04:00
Jeremy Fincher
a86b4694d7 Added utils.python.universalImport to make the previous idiom cleaner. 2009-03-11 14:05:53 -04:00
James Vega
46a4076988 Add .gitignore
Signed-off-by: James Vega <jamessan@users.sourceforge.net>
2009-02-27 14:17:31 -05:00
James Vega
0c42ea111a Fix our RE parsing to handle multiple backslashes before the separator
This also adds support for using brace pairs ({}, [], (), <>) as the
separators for m//.
2009-03-11 13:37:27 -04:00
James Vega
0d4ff7f3dc ircdb.py: Use a more concise return statement 2009-03-11 13:37:27 -04:00