James Lu
11b65ee809
relay: rework nick normalization with optional unidecode support
...
This will attempt to translate UTF-8 nicks to ASCII ones instead of doing the ugly '||||' replace.
Also, the fallback character for disallowed nick characters is now "-" instead of "|".
TODO: document relay::use_unidecode
Closes #561 .
2019-02-12 00:58:20 -08:00
James Lu
cfbadb4539
Move _squit, _get_SID, _get_UID wrappers into PyLinkNCWUtils
...
ClientbotBaseProtocol requires these for the squit wrapper to work.
2019-02-12 00:38:37 -08:00
James Lu
11e7589304
relay_clientbot: fix previous commit
2019-02-10 14:35:34 -08:00
James Lu
76f534ce84
relay_clienbot: fix rpm when UIDs are ints
2019-02-10 14:22:18 -08:00
James Lu
873283e61e
clientbot: properly bounce kicks on networks not implementing them
2019-02-10 13:01:31 -08:00
James Lu
a9b8bfe94d
classes: allow _expandPUID() to work when UIDs are ints
2019-02-10 13:01:11 -08:00
James Lu
5731a301ce
classes: fix incorrect wrap_messages() stub
2019-02-10 13:00:53 -08:00
James Lu
d089b8d40e
clientbot: split wrapper stuff into a ClientbotBaseProtocol class
...
Closes #632 .
2019-02-10 12:40:02 -08:00
James Lu
5e1da09901
control: don't remove network objects with virtual_parent on rehash
2019-02-08 15:10:21 -08:00
James Lu
6e7c58ee36
PyLinkNCWithUtils: don't assume mode args are strings
2019-02-07 14:55:27 -08:00
James Lu
61c8677802
classes, relay_clientbot: more type safety for protocols/discord
2019-02-07 13:50:32 -08:00
James Lu
23cb7c173a
stats: hide login blocks not relevant to this network
2019-02-07 13:50:32 -08:00
James Lu
52f588c920
Track affected servers in SQUIT hooks
2018-12-27 12:09:40 -08:00
James Lu
82ce9aac6c
writing-plugins.md: mention that the default hook priority is 100
2018-12-27 12:08:36 -08:00
James Lu
cb7708e095
Bump VERSION to 2.1-dev
2018-12-27 12:08:17 -08:00
James Lu
852c257e88
relay: remove use of re-entrant locks
...
This shouldn't be necessary anymore.
2018-12-27 11:58:39 -08:00
James Lu
bf9eb8d4ea
relay: fix incorrect in-place changes of modedelta modes
...
This caused the database to be filled with extraneous "-modename" entries when removing modes from the previous modedelta.
2018-11-30 10:21:51 -08:00
James Lu
61d559926f
Bump VERSION to 2.0.2-dev
2018-11-10 23:22:07 -08:00
James Lu
d01a9fe9b4
antispam: more lookalike chars for o, \, #
2018-11-10 23:21:54 -08:00
James Lu
aa5412712a
antispam: more lookalike unicode chars
...
Courtesy of @nathan0
2018-11-10 10:20:41 -08:00
James Lu
32e9cc689e
antispam: filter away Unicode lookalike characters when processing
...
Based off 56b48e4e51
2018-11-07 16:16:46 -08:00
James Lu
6462ae3a3c
example-conf: minor rewording for show_unknown_commands
...
[skip ci]
2018-10-28 21:13:38 -07:00
James Lu
77febfe69f
Allow disabling dynamic channels via a new "join_empty_channels" option
2018-10-27 18:48:12 -07:00
James Lu
94a345423e
classes: allow callers to override the make_channel_ban() ban style
2018-10-20 12:34:11 -07:00
James Lu
eb231a2aad
classes: always raise an error if make_channel_ban creates something invalid
2018-10-20 12:33:42 -07:00
James Lu
31a65697a3
example-conf: document the ban_style option
2018-10-20 12:30:40 -07:00
James Lu
6ceaabe092
classes: use get_fields() in make_channel_ban() for more reliable substitutions
2018-10-20 12:30:09 -07:00
James Lu
5a482118b8
example-conf: describe more thoroughly how antispam handles unsupported punishments
2018-10-20 12:28:41 -07:00
James Lu
5c4fba653f
IRCNetwork: disable throttling by default
...
On large networks, this seems to slows down relay bursts to the point they're no longer usable.
2018-10-10 22:49:10 -07:00
James Lu
dac8410b63
relay: shortcut if the remote network is not ready
2018-10-10 22:49:10 -07:00
James Lu
12d1412cba
PyLinkNCWUtils: stop logging the entirety of prefixmodes
...
This creates a lot of spam on larger channels.
2018-10-10 22:49:04 -07:00
James Lu
60b7894cd6
IRCNetwork: try to abort immediately if the send queue is full
2018-10-08 16:26:29 -07:00
James Lu
0b3793380b
relay: remove TCONDITION_TIMEOUT
2018-10-08 14:59:01 -07:00
James Lu
1ee93d2cc4
relay: remove world.started check, this shouldn't be needed anymore
2018-10-08 14:44:37 -07:00
James Lu
767ff15200
relay: add an explicit forcetag command
...
We used to be able to just /kill to forcetag, but with PyLink 2.0 kills actually get relayed.
2018-10-08 12:42:38 -07:00
James Lu
57faa1443a
relay: rename nick_collide() to forcetag_nick()
2018-10-08 12:41:52 -07:00
James Lu
20b3a61cd6
relay: simplify is_relay_client()
2018-10-08 12:12:09 -07:00
James Lu
7fb4c8da04
automode: manage persistent channels on the right network
2018-10-06 23:46:49 -07:00
James Lu
724a71e1b2
PyLink 2.0.1
2018-10-06 00:39:12 -07:00
James Lu
97603fe169
Changelog for PyLink 2.0.1
...
[skip ci]
2018-10-06 00:35:30 -07:00
James Lu
4d39ad1c84
unreal: bump protocol version to 4200
...
Corresponding to UnrealIRCd 4.2.0.
2018-10-05 23:57:20 -07:00
James Lu
a3e18081a6
relay: don't relay as text modes being set on netburst ( #627 )
2018-09-21 21:53:34 -07:00
James Lu
2f4476eb0c
unreal: remove invalid comparison
...
(Regression from commit fac6fe506f
)
2018-09-21 21:40:56 -07:00
James Lu
667fa610ec
unreal: remove duplicate conversion
2018-09-16 11:29:25 -07:00
James Lu
e929fda293
unreal: Bump protocol version to 4019 (4.0.19-rc1)
2018-09-12 17:35:30 -07:00
James Lu
d5fd7b03f5
unreal: enable slash-in-hosts, it seems to work fine
2018-09-12 17:35:25 -07:00
James Lu
81170e8062
Try to fix Travis deployments
...
- Use unittest discover instead of 'cd' to run tests
- Disable cleanup before deploy (as our __init__.py is generated at build time)
2018-08-31 10:09:22 -07:00
James Lu
fac6fe506f
unreal: use SJOIN in join() to work around weird TS corrupting bugs
...
This seems to be what Unreal itself does anyways.
2018-08-25 18:50:51 -04:00
James Lu
119873a9ed
RELNOTES: fix some mistakes in the 2.0.0 changelog
...
[skip ci]
2018-08-24 23:46:52 -07:00
James Lu
298913200c
clientbot: properly handle cases when the bot is told to kick itself
...
- Treat kicks to the PyLink client as a real user kick instead of a virtual one
- Forward on kick hooks if the PyLink client is kick target - this allows things like autorejoin to work
Closes #377 .
2018-08-25 01:14:26 -04:00