Commit Graph

3164 Commits

Author SHA1 Message Date
Valentin Lorentz
ced2e7b72d Implement seed, tell, and flush to AtomicFile. 2012-08-04 21:24:17 +02:00
Valentin Lorentz
7f0e1115b5 Make world.py py3k-friendly. 2012-08-04 18:06:49 +02:00
Valentin Lorentz
c4dfa55d65 Use HTMLParser instead of deprecated sgmllib in utils.web. 2012-08-04 18:02:45 +02:00
Valentin Lorentz
9ae90c3869 Make utils.structures.CacheDict subclass collections.MutableMapping instead of deprecated UserDict.DictMixin. 2012-08-04 17:46:28 +02:00
Valentin Lorentz
6514db9b3f Prevent name clashes in utils.structures. 2012-08-04 17:42:08 +02:00
Valentin Lorentz
452c706092 Make utils.str.perlRoToReplacer less ambiguous. 2012-08-04 17:36:15 +02:00
Valentin Lorentz
8af6761275 Use 'unicode_escape' in utils.str.dqrepr if running Python 3. 2012-08-04 17:33:17 +02:00
Valentin Lorentz
0a4a12243d Prevent name clash in utils.iter.startswith. 2012-08-04 17:26:59 +02:00
Valentin Lorentz
b8fe420ef3 Use 'ast' instead of 'compiler' in utils.gen.safeEval. 2012-08-04 17:24:08 +02:00
Valentin Lorentz
d3d93da602 utils.gen.saltHash: encode string before hashing it. 2012-08-04 17:12:23 +02:00
Valentin Lorentz
ab978a8c31 Remove utils/gen.py dependency on deprecated libraries (new and UserDict). 2012-08-04 17:09:32 +02:00
Valentin Lorentz
caaf290c9b utils/gen.py: Import imap from itertools instead of utils.iter. 2012-08-04 17:03:51 +02:00
Valentin Lorentz
9de7316f02 Change utils.file.AtomicFile into a wrapper instead of a subclass. 2012-08-04 17:01:36 +02:00
Valentin Lorentz
174a5a4b1f Encode strings before hashing them in utils.file.mktemp. 2012-08-04 16:39:33 +02:00
Valentin Lorentz
54917f581a Drop dependency on deprecated httplib.HTTP in test framework. 2012-08-04 16:32:15 +02:00
Valentin Lorentz
b5c99b1ce1 Fix capability checks. 2012-08-04 15:57:51 +02:00
Valentin Lorentz
8211aab92e Fix issue typo in schedule.removeEvent. 2012-08-04 15:57:47 +02:00
Valentin Lorentz
4bf39f773f Use the codecs module in src/registry.py. 2012-08-04 15:48:30 +02:00
Valentin Lorentz
69c18aed08 Make NonExistentRegistryEntry subclass AttributeError. 2012-08-04 15:11:45 +02:00
Valentin Lorentz
7d73a7dc0a src/questions.py: Don't use the 'is' operator to compare strings. 2012-08-04 15:05:04 +02:00
Valentin Lorentz
b338c54592 src/log.py: Support for Python 3 logging module. 2012-08-04 15:04:43 +02:00
Valentin Lorentz
fa8950b4a4 Make type checks in ircutils.safeArgument compatible with Python 3. 2012-08-04 14:52:17 +02:00
Valentin Lorentz
66e4243a14 Use 'future' division in src/ircutils.py. 2012-08-04 14:18:53 +02:00
Valentin Lorentz
df2d976818 Use utils.str.MultipleReplacer instead of str.maketrans. 2012-08-04 14:04:15 +02:00
Valentin Lorentz
602f1c7ecb utils/str.py: Use classes Multiple* instead of lambda functions.
As in Python 3, functions are bound to a class when assigned to an attribute,
lambda functions get two parameters, unless they are decorated with classmethod().
And there is no reason to ask plugin developpers use this decorator, while we
avoid them doing this (more over, it is not obvious to debug if they forgot it).
2012-08-04 13:52:02 +02:00
Valentin Lorentz
17eb6c497f ircmsgs: use classic comparisons instead of str.translate to ensure channel key validity. 2012-08-04 13:31:26 +02:00
Valentin Lorentz
e23fa611d6 Call other.__eq__ in irclib.Irc.__eq__ instead of using the == comparator.
Here, this operator is not reflexive, and Python 3 calls the second members resulting in a stack overflow.
2012-08-04 13:25:47 +02:00
Valentin Lorentz
1cb657ddb2 Import imap directly from itertools instead of utils.iter. 2012-08-04 13:21:37 +02:00
Valentin Lorentz
d52e501ae8 Use open() instead of file(). 2012-08-04 13:13:16 +02:00
Valentin Lorentz
505fd580f8 Use unicode in src/i18n.py 2012-08-04 12:09:11 +02:00
Valentin Lorentz
d28fa0cbdf Make Socket driver compatible with py3k. 2012-08-04 12:00:02 +02:00
Valentin Lorentz
139f5b4943 Make src/callbacks.py more py3k-friendly. 2012-08-04 11:38:12 +02:00
Valentin Lorentz
fa35a07941 Add utils.str.multipleRemover. 2012-08-04 11:27:50 +02:00
Valentin Lorentz
fffccb4600 Add utils.str.multipleReplacer. 2012-08-04 11:27:41 +02:00
Valentin Lorentz
21409af405 Revert "Add ° as a prefix character."
This reverts commit 0af7d791cc.
° is differently encoded in unicode and latin1.
2012-08-02 13:26:44 +00:00
Valentin Lorentz
0af7d791cc Add ° as a prefix character. 2012-08-02 13:15:50 +00:00
Valentin Lorentz
ef78c86974 Add configuration variable supybot.reply.format.url. 2012-07-31 13:12:33 +00:00
Valentin Lorentz
19a8df5b46 Fix typo in registry.close().
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-07-30 23:23:51 -04:00
James McCoy
d053a660b0 callbacks.py: Always error when capabilities aren't satisfied.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-07-30 23:21:26 -04:00
Valentin Lorentz
6ccfe95751 Prevent last string of a file from being untranslated if .po does not end with a blank like. 2012-07-30 14:33:22 +00:00
Valentin Lorentz
9a345cff40 Truly remove src/version.py from Git. 2012-07-30 13:18:05 +02:00
Valentin Lorentz
5033893e9c Merge branch 'testing' of github.com:ProgVal/Limnoria into testing 2012-07-30 11:36:39 +02:00
Valentin Lorentz
82fdc2dda3 core: Internationalize some strings & update l10n-fr & change translation for 'is not a valid %s'. 2012-07-30 11:35:44 +02:00
Valentin Lorentz
8bacf6734d Fix typo in registry.close(). 2012-07-30 11:18:02 +02:00
Guido Tabbernuk
169392e519 Messages shouldn't wrap links, set defaults for text wrapper. 2012-07-29 11:45:42 +02:00
Guido Tabbernuk
7e002ed2a2 Fix normalizeWhitespace to support Unicode. 2012-07-29 11:45:27 +02:00
Valentin Lorentz
18dd017e99 Merge remote-tracking branch 'supybot/maint/0.83.4' into testing
Conflicts:
	sandbox/release.py
2012-07-06 11:09:34 +02:00
James McCoy
a42ab2e2d4 ircutils.FormatParser: Make getInt only get integers that are valid colors
If a colored message were wrapped just right (e.g., a colored number ending
the chunk), FormatParser would gobble up the color format code and the number
in the message, causing a KeyError when trying to look up the color in
mircColors.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-07-02 21:11:50 -04:00
Digital-Lemon
51ef07caf5 Added Irc objects creation time 2012-06-30 02:32:49 +02:00
Daniel Folkinshteyn
a31350f14a Consolidate the version string to reside in one central place to ease change making.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-06-17 10:42:44 -04:00
Valentin Lorentz
c39ad2f379 Fix KeyError when using colors in a message containing numbers. 2012-06-16 11:27:31 +00:00
Valentin Lorentz
6286558fa5 Replace tabulations in utils.str.normalizeWhitespace. Closes GH-372. 2012-06-12 19:37:49 +02:00
Valentin Lorentz
857632c762 Fix commit c310d74a19 (no more 'Error: error' message on 'Missing capability' error). 2012-06-09 18:54:10 +02:00
Valentin Lorentz
9723e14a4d Prevent possible race conditions in scheduler. 2012-06-09 16:54:19 +02:00
James McCoy
438b50dccc irclib: Modes aren't case insenstive
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-06-06 13:38:38 +02:00
James McCoy
6d1b957e07 irclib: Modes aren't case insenstive
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-06-06 06:00:48 -04:00
James McCoy
4c01cb93e0 registry: Use the correct variable name setName creates the child entry
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>

Conflicts:

	src/registry.py
2012-05-25 18:14:45 +02:00
James McCoy
edca443eed Just create schedule.schedule/drivers.Twisted.poller without any guard
These module-level variables had historically been created such that reloading
the module wouldn't redefine the variable.  However, none of our code reloads
the modules and the guard to prevent redefining the variable was broken so it
would've been redefined anyway.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>

Conflicts:

	src/schedule.py
2012-05-25 18:14:10 +02:00
Valentin Lorentz
a630cc34d8 Use ircutils.joinModes() instead of hacky str.join()s in ircmsgs.unbans.
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-05-23 01:52:10 -04:00
Valentin Lorentz
741599c947 Add the channel where a command has been called in the logs ('XXX called by XXX').
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-05-23 01:47:22 -04:00
Valentin Lorentz
b7bc11deea Prevent the 'hostmask' converter from returning '*!*@*' while 'foo!*@*' was given. 2012-05-22 23:10:40 -04:00
James McCoy
8ab33bccb4 registry: Use the correct variable name setName creates the child entry
Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-05-22 22:46:35 -04:00
James McCoy
97e71bd2cd Just create schedule.schedule/drivers.Twisted.poller without any guard
These module-level variables had historically been created such that reloading
the module wouldn't redefine the variable.  However, none of our code reloads
the modules and the guard to prevent redefining the variable was broken so it
would've been redefined anyway.

Signed-off-by: James McCoy <jamessan@users.sourceforge.net>
2012-05-22 22:38:44 -04:00
Valentin Lorentz
14609b3bb2 Add self as an argument to methos in src/dbi.py 2012-05-22 21:15:58 -04:00
Valentin Lorentz
1fe4cef61b Import os before using it. 2012-05-22 21:14:42 -04:00
Valentin Lorentz
90e511cad1 Drop src/version.py from the source and generate it with setup.py instead. Closes GH-358. 2012-05-11 18:43:23 +02:00
skizzhg
901a03407d PluginDownloader: update l10n-it. 2012-05-04 18:56:13 +02:00
Valentin Lorentz
96b0ae0e1e Merge branch 'testing' of github.com:ProgVal/Limnoria into testing 2012-05-02 21:33:12 +02:00
Valentin Lorentz
654b618fec Fix typo in src/test.py 2012-05-02 21:14:30 +02:00
Valentin Lorentz
a274f25bb8 Fix commit f4b81659. 2012-05-02 21:13:09 +02:00
Valentin Lorentz
c83481bd9c Use self instead of non-existing variable name. 2012-05-02 21:06:22 +02:00
Valentin Lorentz
9352322075 Fix typo in schedule. 2012-05-02 20:58:56 +02:00
Valentin Lorentz
446349357d Check globals() instead of catching NameError. 2012-05-02 20:58:36 +02:00
Valentin Lorentz
af460596d3 Add self as an argument to methos in src/dbi.py 2012-05-02 20:50:06 +02:00
Valentin Lorentz
776ce96d52 Import os before using it. 2012-05-02 20:48:49 +02:00
Valentin Lorentz
c310d74a19 Enfore capability checks when supybot.reply.error.noCapability is False. 2012-05-01 13:15:54 +00:00
Valentin Lorentz
124ca33f4e AutoMode & Unix: Update l10n-fr. 2012-04-27 18:14:29 +02:00
Valentin Lorentz
63f8c10eff core: update l10n-fr. 2012-04-27 18:11:18 +02:00
skizzhg
4261bcc65d Update core l10n-it and l10n-fi. 2012-04-23 21:55:53 +02:00
skizzhg
977f3f5110 Fix typoes in core. 2012-04-23 21:55:21 +02:00
skizzhg
418d1b921f AutoMode & Channel & Time & Unix: Update l10n-it. 2012-04-23 21:52:02 +02:00
Valentin Lorentz
87607667ec PluginDownloader: Add l10n-fr. 2012-04-19 21:45:49 +02:00
Valentin Lorentz
fe9197ee7c AutoMode: update messages.pot. 2012-04-19 21:39:10 +02:00
Valentin Lorentz
bd6ff971c9 Factoids & Format & Praise: fix l10n-fi and l10n-it. 2012-04-19 21:31:21 +02:00
Valentin Lorentz
92027d1046 Fix help for supybot.directories.backup. 2012-04-17 11:49:03 +02:00
Valentin Lorentz
9d6b132233 i18n: Fix issue with the bot sending the repr() of the string on IRC when translation has 'new line' characters in it. 2012-04-17 11:45:25 +02:00
Valentin Lorentz
70a1aced78 Add tests for Unix.sysuptime and Unix.sysuname. 2012-04-15 14:02:44 +02:00
robbe
7de277d052 Add commands Unix.sysuptime and Unix.sysuname. 2012-04-15 14:02:39 +02:00
Valentin Lorentz
cf073bbd73 Fix duplicated sentence in supybot.directories.backup's help. 2012-04-14 11:09:11 +00:00
Valentin Lorentz
e6032c68bc AutoMode: Add configurable delay. Closes GH-188. 2012-04-04 15:55:42 +02:00
Valentin Lorentz
8558640a00 schedule: Add parameters args and kwargs. 2012-04-04 15:55:08 +02:00
Valentin Lorentz
bad5364e28 Fix commit ed5f79c0. 2012-04-04 15:44:57 +02:00
Valentin Lorentz
113ddf8c69 Internet: Remove special handling for Verisign in @dns. 2012-04-04 15:13:39 +02:00
Valentin Lorentz
18b16d84ed Change the minimal number of non-wildcard characters in hostmask from 8 to 3. Closes GH-276. 2012-04-04 15:08:49 +02:00
Valentin Lorentz
dbf1640b38 Import ircmsgs.modes() from ubotufr. 2012-04-03 21:03:42 +02:00
Valentin Lorentz
ed5f79c053 Use ircutils.joinModes() instead of hacky str.join()s in ircmsgs.unbans. 2012-04-03 21:01:10 +02:00
Valentin Lorentz
2432df156d Fix SSL issues caused by redundant patches. 2012-04-03 17:14:07 +02:00
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