Valentin Lorentz
11c10bb3f1
Add attribute IrcMsg.time.
2015-08-22 18:36:47 +02:00
Valentin Lorentz
33e8966e4b
ChannelLogger & core: Use IRCv3.2 extension invite-notify if available.
2015-08-22 18:24:32 +02:00
Valentin Lorentz
6ee24517cb
Fix 9c8f05bc16
.
2015-08-22 14:25:20 +02:00
Valentin Lorentz
a39238aba9
HTTP server: use two single-stack servers instead of a dual-stack one, and add a config variable to disable this behavior. Closes GH-945.
2015-08-22 13:10:03 +02:00
Valentin Lorentz
543732af3a
Fix f8328be5cb
so it actually does what it is supposed to do (lstrip removes characters).
2015-08-22 11:18:07 +02:00
Valentin Lorentz
9c8f05bc16
Use IRCv3.2 extension userhost-in-names if available.
2015-08-22 10:33:59 +02:00
Valentin Lorentz
9dd2811950
Split capabilities into a string, as it should be done.
2015-08-22 10:17:32 +02:00
Valentin Lorentz
5501b7cf63
Merge pull request #1156 from jacksonmj/italics
...
Add support for italic formatting
2015-08-22 09:25:54 +02:00
jacksonmj
8eb5d4f240
Add support for italics
...
New functions:
ircutils.italic to add
ircutils.stripItalic to remove
And remove italics in ircutils.stripFormatting.
2015-08-21 21:44:11 +00:00
Valentin Lorentz
21da27a846
Merge pull request #1155 from nyuszika7h/ipv4-mapped-addr-fix
...
httpserver: Strip IPv4-mapped IPv6 addresses
2015-08-21 22:41:33 +02:00
nyuszika7h
f8328be5cb
httpserver: Strip IPv4-mapped IPv6 addresses
2015-08-21 22:39:49 +02:00
Valentin Lorentz
f45e2904f5
Merge remote-tracking branch 'mlq/fix/httpserver-read-content-length' into testing
2015-08-17 22:35:40 +02:00
Moritz Lipp
52bebde9df
httpserver.py: Pass Content-Length to read call
...
If a POST request is sent to the built-in http server the handling function does
not terminate because the rfile.read() function blocks.
This patch passes the Content-Length value to the self.rfile.read() function
that is required for it to do not block the method.
Regarding RFC 2616
(http://www.w3.org/Protocols/rfc2616/rfc2616-sec4.html#sec4.4 ) the
Content-Length header is expected to be sent otherwise this patch assumes a zero
length.
2015-08-17 22:30:21 +02:00
Valentin Lorentz
d56539a0dd
Fix http tests on Python 3.
2015-08-15 14:07:01 +02:00
Valentin Lorentz
0254d7b84d
Add a decorator to retry tests that fail often.
2015-08-11 17:13:27 +02:00
Valentin Lorentz
c3a2c800f1
Remove need for 2to3.
2015-08-11 16:50:23 +02:00
Valentin Lorentz
f305ff3c02
Remove fix_basestring.
2015-08-10 20:24:11 +02:00
Valentin Lorentz
2c380a4c3a
Remove fix_xrange.
2015-08-10 19:36:07 +02:00
Valentin Lorentz
be6bc1a734
Remove need for fix_unicode.
2015-08-10 18:52:51 +02:00
Valentin Lorentz
34d384bd67
Remove need for fix_methodattrs.
2015-08-10 18:09:52 +02:00
Valentin Lorentz
c0ac84bb53
Remove need for fix_import, fix_types, and fix_urllib.
2015-08-10 17:55:25 +02:00
Valentin Lorentz
17bf893437
Fix imports.
2015-08-09 09:21:12 +02:00
Valentin Lorentz
216c5d213f
Replace sys.version_info[0] usages with minisix.PY{2,3}.
2015-08-09 00:23:03 +02:00
Valentin Lorentz
5a82cefd51
Remove use of fix_long fixer.
2015-08-08 23:08:49 +02:00
Valentin Lorentz
be118c3338
Remove use of fix_dict fixer.
2015-08-08 23:08:49 +02:00
Valentin Lorentz
ed9f9d0794
Merge pull request #1148 from GLolol/patch-1
...
ircutils.formatWhois: ignore channels that have +p set
2015-08-08 20:37:17 +02:00
James Lu
8b37e23594
ircutils: fix Python 2.6 compatibility
2015-08-08 18:42:25 +08:00
James Lu
d74e3148b4
ircutils.formatWhois: ignore channels that have +p set
2015-08-08 03:14:46 -07:00
Valentin Lorentz
451ec28163
Merge pull request #1131 from GLolol/allow-unregistered-db-add
...
Allow unregistered users to use 'add', 'remove', etc. in ChannelIdDatabasePlugin plugins
2015-06-28 23:54:22 +02:00
James Lu
8e51209c3f
Fixes to ChannelIdDatabasePlugin as pointed out by @ProgVal
...
- Quote: factorize tests
- Make supybot.databases.plugins channel specific
2015-06-28 14:36:27 -07:00
Valentin Lorentz
5dabb4539f
Merge pull request #1129 from GLolol/raise-peeksize
...
conf.py: raise protocols.http.peeksize to 8192
2015-06-21 01:36:09 +02:00
James Lu
cdfae05df3
conf.py: raise protocols.http.peeksize to 8192
...
YouTube has recently updated its site design again so the <title> element falls right out of the 4K mark. This commit raises the default peeksize to 8K, which allows title snarfing to work with YouTube links again.
2015-06-20 14:11:09 -07:00
James Lu
c3ddc585b4
irclib: fix error when SASL is supported but not enabled for a network
2015-06-12 18:07:27 -07:00
nyuszika7h
869c6ce30d
Fix capability negotiation
2015-06-12 15:08:45 +02:00
Valentin Lorentz
cf557b516a
Fix Python 2.6 support.
2015-05-24 12:29:11 +02:00
Valentin Lorentz
e2b3b917e5
Use CAP LS.
2015-05-24 12:25:42 +02:00
Valentin Lorentz
f85395d8b1
Revert ban description-related commits.
...
Squashed commit of the following:
commit ea4743caa8bdc7abba99635898ae09a9497c43d3
Author: Valentin Lorentz <progval@progval.net>
Date: Sun May 24 01:07:49 2015 +0200
Revert "Channel & core: Add support for ban descriptions. Closes GH-1092."
This reverts commit 6efea561a5
.
Conflicts:
src/ircdb.py
commit d43b9229fe926869852c4abda1da1b18a0093938
Author: Valentin Lorentz <progval@progval.net>
Date: Sun May 24 01:06:30 2015 +0200
Revert "Fix import of channel database."
This reverts commit 8ed5522da0
.
commit 6c453d9acb3dc37711cb4d51abd9fe216ca65c08
Author: Valentin Lorentz <progval@progval.net>
Date: Sun May 24 01:06:27 2015 +0200
Revert "Fix previous commit."
This reverts commit 394f1554f7
.
2015-05-24 01:08:54 +02:00
Valentin Lorentz
394f1554f7
Fix previous commit.
2015-05-23 21:18:50 +02:00
Valentin Lorentz
8ed5522da0
Fix import of channel database.
2015-05-23 21:00:05 +02:00
Valentin Lorentz
ecdd16c004
Deprecate Twisted.
2015-05-20 22:57:24 +02:00
Valentin Lorentz
721cb06dcd
registry: Add a header to the configuration file telling not to edit it.
2015-05-20 13:58:20 +02:00
Valentin Lorentz
dfb68be410
gpg: Confirmed that this error happens on UNIX too.
2015-05-19 16:40:15 +02:00
Valentin Lorentz
a2004b7150
Improve order of connect messages.
2015-05-17 12:31:14 +02:00
Valentin Lorentz
9cb967023e
gpg: Don't crash if python-gnupg cannot find the gnupg binary.
...
Reported traceback:
File D:python27libsite-packagessupybotgpg.py, line 45, in <module>
gnupg.GPG(gnupghome=None)
File D:python27libsite-packagesgnupg.py, line 680, in __init__
p = self._open_subprocess([--version])
File D:python27libsite-packagesgnupg.py, line 726, in _open_subprocess
return Popen(cmd, shell=False, stdin=PIPE, stdout=PIPE, stderr=PIPE)
File D:python27libsubprocess.py, line 710, in __init__
errread, errwrite)
File D:python27libsubprocess.py, line 958, in _execute_child
startupinfo)
WindowsError: [Error 2] The system cannot find the file specified
2015-05-17 12:10:11 +02:00
Valentin Lorentz
5bd0001d02
irclib: Faster connection. (At least 5 seconds less.)
2015-05-17 12:02:31 +02:00
Valentin Lorentz
7cc7ad886f
Merge pull request #1107 from GLolol/format-whois
...
formatWhois: fix errors and restore formatting changes lost in supybot merge
2015-05-16 12:44:49 +02:00
Valentin Lorentz
f1fae13b4a
core: Fix IrcChannel.preserve. Closes GH-1106.
2015-05-16 03:59:36 +02:00
James Lu
5190db39a4
formatWhois: Fix channel names having the # cut off
2015-05-15 18:46:28 -07:00
James Lu
c651bc5482
formatWhois: fix error and restore formatting changes lost in supybot merge
...
This reapplies content from commits 2b324203e7
, 2628dc03c4
, ef9fbc4a07
,
41effcea13
, and 5f23855d27
.
2015-05-15 18:40:55 -07:00
Valentin Lorentz
82b8bf801a
core: Fix merge of upstream's factorization of whois formatting.
2015-05-16 03:21:17 +02:00
Valentin Lorentz
eca7a036aa
Socket: Move line decoding to utils.str.
2015-05-16 00:30:20 +02:00
Valentin Lorentz
39d40ec617
Merge branch 'ircv3.2' into testing
2015-05-16 00:22:42 +02:00
Valentin Lorentz
33004696c0
core: Add dictionary of numerics.
2015-05-16 00:20:31 +02:00
Valentin Lorentz
b405f998a5
NickAuth: Add support for account-tag (not tested).
2015-05-15 20:46:18 +02:00
Valentin Lorentz
259457ae2f
core: Request capability metadata-notify so plugins can use it if they want.
2015-05-15 19:35:51 +02:00
Valentin Lorentz
59d542bb70
NickCapture & core: Add support for MONITOR. Closes GH-842.
2015-05-15 19:24:24 +02:00
Valentin Lorentz
ba495f5719
Add support for message tags.
2015-05-15 18:08:50 +02:00
Valentin Lorentz
ed37fb6646
String & core: Add support for G flag in matchers. Closes GH-1072.
2015-05-15 16:48:00 +02:00
Valentin Lorentz
487f8c8af5
Merge remote-tracking branch 'supybot/master' into testing
...
Conflicts:
.mailmap
README
docs/FAQ.rst
plugins/Ctcp/plugin.py
plugins/Misc/plugin.py
plugins/Network/plugin.py
plugins/QuoteGrabs/plugin.py
plugins/RSS/README.txt
plugins/Relay/plugin.py
plugins/ShrinkUrl/config.py
plugins/ShrinkUrl/plugin.py
plugins/ShrinkUrl/test.py
setup.py
src/callbacks.py
src/commands.py
src/conf.py
test/test_commands.py
2015-05-15 14:41:08 +02:00
Valentin Lorentz
6efea561a5
Channel & core: Add support for ban descriptions. Closes GH-1092.
2015-05-15 13:43:26 +02:00
Valentin Lorentz
7448c04760
Store the list of server capabilities in IrcState.
2015-05-15 13:01:26 +02:00
Valentin Lorentz
86d9f49aa5
callbacks: Allow Plugin.noIgnore to be a function instead of a boolean.
2015-05-15 12:39:30 +02:00
Valentin Lorentz
3f9118a1a6
utils.str.format: Add support for sets for %L + add test case. Closes GH-1104
2015-05-14 07:14:29 +00:00
Valentin Lorentz
bce47a8a8a
Revert "Recommend chardet instead of charade. Closes GH-1096."
...
This reverts commit 36a646661d
.
2015-04-29 10:07:13 +02:00
Valentin Lorentz
36a646661d
Recommend chardet instead of charade. Closes GH-1096.
2015-04-29 10:01:10 +02:00
James Lu
562fa14706
ChannelIdDatabasePlugin: allow unregistered users to use commands
...
This adds a new configuration variable, supybot.databases.plugins.requireRegistration, which defaults to True for maximum security.
2015-04-15 18:01:06 -07:00
James Lu
6add519765
callbacks.py: log plugin name in registryValue='text' errors
...
This can help with debugging to find what plugins are passing invalid things to registryValue().
2015-04-05 13:44:30 -07:00
Valentin Lorentz
6a134eb302
Update string comparison to a newer string.
...
Signed-off-by: James McCoy <vega.james@gmail.com>
2015-03-26 02:04:06 -04:00
Valentin Lorentz
b0846f914e
Fix crash for commands with ambiguous getopts shortcuts and no docstring.
...
Signed-off-by: James McCoy <vega.james@gmail.com>
2015-03-26 02:00:43 -04:00
James McCoy
cffbd959e8
Add handling of 437 (nick temporarily unavailable) errors
...
Servers bind a nick to a connection for a short window after it
disappears to try and avoid contention over nicks. This may cause a 437
during connection to a server (c.f. ProgVal/Limnoria#1033 ) or even
during normal nick changes, if the timing is lucky.
Add handling for this error to the startup code and the Admin plugin.
Signed-off-by: James McCoy <vega.james@gmail.com>
2015-03-26 01:33:04 -04:00
James McCoy
c3695c9419
ircutils: Add formatWhois function
...
Parsing through the various WHOIS replies to build a formatted string
isn't a trivial task, especially since there is some privacy related
information. Consolidate this handling into a single function so
there's one place to fix bugs.
Also fix an issue with people putting (unterminated) formatted text into
the "realname" field of their IRC client (c.f., ProgVal/Limnoria#1083 ).
Signed-off-by: James McCoy <vega.james@gmail.com>
2015-03-26 00:11:36 -04:00
Valentin Lorentz
4470805b5f
core: Remove useless imports.
2015-03-03 09:02:29 +01:00
Valentin Lorentz
72e71edb89
Update string comparison to a newer string.
2015-03-03 08:55:29 +01:00
Valentin Lorentz
6f9960d7a4
Fix crash for commands with ambiguous getopts shortcuts and no docstring.
2015-03-03 08:55:29 +01:00
James Lu
aba37ff951
conf.py: Remove reference to non-existent? "user configuration variable"
...
Closes #654 .
2015-02-28 00:13:06 -08:00
Valentin Lorentz
9076194009
Merge pull request #1041 from GLolol/admin/configurable-partmsg
...
Admin/Owner: substitute $version in quit and part messages (also make part messages configurable)
2015-02-27 13:15:25 +01:00
James McCoy
a8cd99f121
commands._getRe: Restore original args for any failure
...
String.re uses first('regexpMatcher', 'regexpReplacer'). If the args
provided to String.re are not a matcher and are longer than a single IRC
message (e.g., from a nested command), then regexpReplacer would never
be tried. A too long error should be handled the same as running out of
args while trying to find a valid regexp.
Signed-off-by: James McCoy <vega.james@gmail.com>
2015-02-18 22:09:38 -05:00
Valentin Lorentz
b99ff28e33
utils.web.getUrl: add the 'timeout' argument (and fix the doc of getUrlFd).
...
Signed-off-by: James McCoy <vega.james@gmail.com>
2015-02-18 19:53:42 -05:00
c675654b82
src/i18n.py: have languages in alphabetical order
...
It's probably not so important, but I don't like them being in any
strange random order. Of course having English first would make sense as
it's the default, but I still prefer alphabetical order.
2015-02-08 09:44:13 +02:00
James Lu
32de4e8270
Merge branch 'testing' into admin/configurable-partmsg
2015-02-07 10:00:48 -08:00
Valentin Lorentz
cb6669015e
Make ircutils.standardSubstitute accept None as irc and msg. (Preliminary for GH-1041.)
2015-02-07 08:15:42 +01:00
James Lu
5e4501d7d2
i18n.py: mention 'en' as supported lang & quote the language codes for less ambiguity.
...
Ref #1046 .
2015-02-06 15:40:44 -08:00
544befd2d0
src/i18n.py: mention supported languages
...
Closes #1046
I used Admin for sources of what languages are supported as it's usually
recommended to start translating from there (first plugins, then core).
2015-02-06 11:58:24 +02:00
James Lu
b243c83e41
Admin/Owner: Use standard substitution for part/quit messages
2015-02-05 20:26:14 -08:00
Valentin Lorentz
681bd5d85d
Count number of bytes instead of number of characters for truncating messages. Closes GH-1038.
2015-02-04 17:31:42 +01:00
James Lu
561085cbd1
irclib.py: fix an encoding error with Python 3 and SASL ECDSA-NIST256P-CHALLENGE
...
Closes ProgVal#1028.
2015-01-24 13:32:13 -05:00
nyuszika7h
5653e0c727
Fix commit 30a026a
...
Requesting multiple capabilities in one message will result in a NAK for
all of them if at least one is not supported by the server.
2015-01-19 18:12:39 +01:00
Valentin Lorentz
30a026a92a
Request multi-prefix capability. (GH-1017)
2015-01-19 17:15:25 +01:00
nyuszika7h
bf418756a9
Fix registration timeout when SASL is refused
...
https://github.com/ProgVal/Limnoria/issues/854#issuecomment-70414650
2015-01-18 21:31:03 +01:00
Valentin Lorentz
b0db845604
Merge pull request #1009 from ddan39/master
...
add usesendMsg=False to irc.reply() to use sendMsg() instead of queueMsg...
2015-01-17 09:58:26 +01:00
Dan
bd2d17a1c2
update irc.reply() change new arg name
2015-01-17 03:49:32 -05:00
ddan39
2fe84a3474
add usesendMsg=False to irc.reply() to use sendMsg() instead of queueMsg()
2015-01-17 07:13:30 +01:00
Mikaela Suomalainen
048b00b4a3
src/conf.py: update reply.time.format
...
I am not fully sure on this change, but T is the official separator
between date and time and `date -Is` uses it.
2015-01-05 20:56:41 +02:00
Max Teufel
ef0a2c1cb1
irclib: add support for SASL ECDSA-NIST256P-CHALLENGE
...
Closes #911
2014-12-29 11:47:57 +01:00
GLolol
1b3a7b2d3e
ircutils: also map zfill'd versions of integers in mircColors
2014-12-21 14:19:31 -05:00
James McCoy
4f489fad61
Move project pointers from Sourceforge to GitHub
...
Closes Supybot/Supybot#7
Signed-off-by: James McCoy <vega.james@gmail.com>
2014-12-18 21:31:59 -05:00
Mikaela Suomalainen
85e9935013
src/conf.py: clear hosts4 & make hosts6 ::0
...
Closes #756
Fixes #935
2014-12-13 11:07:14 +02:00
Valentin Lorentz
1650860032
RSS: Do no block commands calling while loading a feed.
2014-10-14 20:59:00 +00:00
Valentin Lorentz
e0b1796042
Merge pull request #853 from nyuszika7h/disable-log-wrap
...
Disable log.stdout.wrap by default
2014-10-09 16:06:01 +02:00
Mikaela Suomalainen
9816c8cccb
src/conf.py: disable strictRFC by default
...
strictRFC causes issues when nicks start with numbers and on some
network this happens too often. For example, if nick isn't RFC-compliant,
the bot cannot be used to kick user from channel. Ops cannot change this
so they must op themselves and kick the user by themselves or whatever
they are going to do.
Some IRCds also allow you to change your nick to your UID using `/nick
0` and on others it happens when there is nick collision after netsplit.
2014-09-20 00:50:12 +02:00