3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-12-25 20:22:45 +01:00
Commit Graph

3096 Commits

Author SHA1 Message Date
James Lu
28a62f629a automode: replace assert usage with proper exceptions 2018-01-22 08:17:20 -08:00
James Lu
09c8b03705 automode: fix handling of channels with multiple #'s in them 2018-01-22 08:15:04 -08:00
James Lu
5fd216c720 commands: fix 'showchan' displaying status prefixes in reverse 2018-01-22 08:10:55 -08:00
James Lu
d608661a33 permissions-reference: document perms for 'raw' plugin 2018-01-21 13:52:29 -08:00
James Lu
8000d51453 Split the 'raw' command into a new plugin
Closes #565.
2018-01-21 13:50:37 -08:00
James Lu
e446e0e27b control: continue handling SIGUSR1 as rehash for compat with older 2.0 versions 2018-01-21 13:36:29 -08:00
James Lu
44be5910e0 Revert "control: move rehash signal to SIGUSR1, and shutdown on SIGHUP (terminal close)"
This wasn't an incredibly popular decision because it broke a simple 'pylink &'

This reverts commit 883f9199ec.

Conflicts:
	coremods/control.py
2018-01-21 13:31:15 -08:00
James Lu
6bb2198710 inspircd: move _modsupport.clear() to a _post_disconnect override
Speculative fix for #567.
This may be caused by a race condition between post_connect and handle_capab, since the remote server can send its server data before we start sending ours.
2018-01-21 13:27:59 -08:00
James Lu
67dea6f748 classes: add docstrings to _pre_connect, _pre_disconnect, _post_disconnect 2018-01-21 13:20:42 -08:00
James Lu
31c96bd1ed hooks-reference: bump to 2.0-alpha2
- Replace `IrcChannel`, `IrcUser`, and `IrcServer` with their new class names (`classes.Channel`, `classes.User`, and `classes.Server`)
- Replace `irc.fullVersion()` with `irc.version()`
- Various minor wording tweaks.
2018-01-13 18:23:12 -08:00
James Lu
06ee01b7a7 hooks-reference: don't use the wrong terminology in example channel names 2018-01-13 18:23:12 -08:00
James Lu
7a51220309 relay: match P10 WALL* commands as notices 2018-01-08 20:56:06 -08:00
James Lu
ec9063b9e8 Revert "relay: differentiate between PRIVMSG vs. NOTICE via a blacklist"
This reverts commit d81a9cd5c3.
2018-01-08 20:56:06 -08:00
James Lu
bcb0fecfa8 PyLink 2.0-alpha2 2018-01-06 17:30:50 -08:00
James Lu
ce3b1152b2 modelists: fix page title for extbans table
[skip ci]
2018-01-05 18:46:08 -08:00
James Lu
f8abdd1244 RELNOTES: update for previous commit 2017-12-31 12:09:52 -08:00
James Lu
043a147b41 p10: fix hashed cloaks check reading from the wrong config variable 2017-12-31 12:09:36 -08:00
James Lu
3d661c9713 RELNOTES: update 2.0-alpha2 changes so far 2017-12-30 01:34:33 -08:00
James Lu
ba4e0aed85 example-conf: reword description for servers::<netname>::relay_forcetag_nicks 2017-12-30 01:33:14 -08:00
James Lu
60c05af9ed relay: allow defining server-specific nicks to always tags
Closes #564.
2017-12-30 01:22:24 -08:00
James Lu
56fa626605 inspircd: use clear() instead of replacing the _modsupport set
Maybe this will fix issues with _modsupport not being completely filled?
2017-12-27 11:48:00 -08:00
James Lu
7c0d279f61 inspircd: raise NotImplementedError instead of only warning when a CHG* module is missing 2017-12-22 12:41:48 -08:00
James Lu
92427201f1 inspircd: track module (un)loading
Closes #555.
2017-12-22 12:38:48 -08:00
James Lu
c62580d228 bots: don't allow 'spawnclient' on protocols where it is stubbed 2017-12-22 12:28:27 -08:00
James Lu
958bb351ca clientbot: log warnings if the bot cannot join a channel
Closes #533.

This adds handlers for the following numerics:
* ERR_TOOMANYCHANNELS (405)
* ERR_CHANNELISFULL (471)
* ERR_INVITEONLYCHAN (473)
* ERR_BANNEDFROMCHAN (474)
* ERR_BADCHANNELKEY (475)
* ERR_BADCHANMASK (476)
* ERR_NEEDREGGEDNICK (477)
* ERR_BADCHANNAME (479)
* ERR_SECUREONLYCHAN / ERR_SSLONLYCHAN (489)
* ERR_DELAYREJOIN (495)
* ERR_OPERONLY (520)
2017-12-22 12:28:27 -08:00
James Lu
7afe193259 bots: fix KeyError when attempting to join a channel not in the index 2017-12-22 12:28:27 -08:00
James Lu
444d8c53bb RELNOTES: fix wacky line spacing
[skip ci]
2017-12-22 01:05:40 -08:00
James Lu
5b2fdc94e7 RELNOTES: add a list of changes since 2.0-alpha1 so far 2017-12-22 01:03:19 -08:00
James Lu
dbc9d1690d setup: update PyPI classifiers
- Declare Python 3.6 support
- Change development status to Production/Stable
2017-12-22 00:07:49 -08:00
James Lu
5f9365a521 relay, inspircd: add support for blockhighlight +V 2017-12-21 21:18:20 -08:00
James Lu
145a4677f6 ircs2s_common: add handling for nick@servername messages 2017-12-21 02:57:10 -08:00
James Lu
8dbbe65a1c ircs2s_common: remove useless statusmsg splitting code
We used to do this in order to lowercase the channel part of ~#channel messages correctly, but that is no longer needed as of 9702030bf5.
2017-12-21 02:11:28 -08:00
James Lu
d01b9aaa23 relay: improve fallback KNOCK notices
- Show the network that the /knock originated from (it is *not* obvious when we have a user with no relay client)
- Specifically hint that users with no relay client cannot be invited directly because there is no client to actually /invite!
- Prefer sending the notice to %#channel when halfops are available, as they usually have the power to /invite
2017-12-21 01:57:43 -08:00
James Lu
f64976b1ed p10: implement outgoing knock() as a wrapper over NOTICE 2017-12-21 01:53:41 -08:00
James Lu
2df608307d relay: block sending STATUSMSG messages to IRCds not supporting them 2017-12-21 01:41:01 -08:00
James Lu
16b491fdab ts6_common, p10: declare protocol cap has-statusmsg 2017-12-21 01:34:41 -08:00
James Lu
d81a9cd5c3 relay: differentiate between PRIVMSG vs. NOTICE via a blacklist
This is so that P10 WALL* commands are forwarded correctly as notices instead of privmsgs.
2017-12-21 01:27:34 -08:00
James Lu
20e730ba2b p10: add inbound handlers for WALLCHOPS/WALLHOPS/WALLVOICES
This essentially finishes off STATUSMSG support on P10.
2017-12-21 01:27:19 -08:00
James Lu
2cc1195ff9 p10: refactor message() to send @%+#channel messages correctly 2017-12-21 01:20:08 -08:00
James Lu
63f3cdaea8 relay: add knock forwarding support 2017-12-21 00:19:09 -08:00
James Lu
454539185e Move knock handling to ts6_common
This adds support for (reasonless) KNOCK on TS6.
2017-12-21 00:04:55 -08:00
James Lu
2245af1dba Revert "ts6: handle ChatIRCd ENCAP USERMODE"
This reverts commit 785fc8d2d2.

This feature isn't actually used yet and is relatively non-standard. Aside from that, the biggest issue so far is that ENCAP USERMODE doesn't give servers a way to explicitly acknowledge or reject(ignore) the mode change, which can lead to desyncs.
2017-12-18 17:20:37 -08:00
James Lu
ab91acb2f7 relay_clientbot: rename isRelayClient => is_relay_client() 2017-12-18 13:23:53 -08:00
James Lu
954f4f9886 relay: capitalize constants related to modes 2017-12-18 13:23:16 -08:00
James Lu
0104462782 relay: whitelist cmodes kicknorejoin, kicknorejoin_insp, repeat, repeat_insp
Closes #559.
2017-12-18 13:17:05 -08:00
James Lu
ec3b230eab inspircd: move definitions for cmodes +J and +E to kicknorejoin_insp and repeat_insp
These use InspIRCd specific arguments which don't map cleanly to other IRCds. #559
2017-12-18 13:10:48 -08:00
James Lu
6c65d5523e IRCNetwork: potentially fix queue thread shutdowns (#558)
Replace unreliable appendleft() usage with replacing the first element (or adding None if the queue is empty).
2017-12-17 01:01:21 -08:00
James Lu
9a5072824d relay: stop lowercasing modedelta args, as that can break things like unreal +f 2017-12-14 13:40:47 -08:00
James Lu
f908e407d4 relay: also ignore clientbot networks in modedelta
TODO: abstract all these checks out!
2017-12-14 13:26:43 -08:00
James Lu
923795719f relay: drop all list and prefix modes in modedelta 2017-12-14 13:07:00 -08:00