James Lu
a385bc32d9
Revert "classes: replace threading.Timer with normal threads for schedulePing"
...
This reverts commit 64bb646d1e
.
2016-01-05 19:35:16 -08:00
James Lu
a7104dc01c
Revert "classes: actually, loop schedulePing only when connection_thread is alive"
...
This reverts commit 124100fcf5
.
2016-01-05 19:35:15 -08:00
James Lu
8fb76f96ff
changehost: whoops, numbers are allowed in hostnames too
2015-12-30 17:08:38 -08:00
James Lu
f74f67bc1a
example conf: rewrap everything to ~80 lines, add Changehost example block
2015-12-30 16:54:51 -08:00
James Lu
0c6a658317
New Changehost plugin, with flexible on-connect vHost settings using hostmask matches and substitution
2015-12-30 16:53:53 -08:00
James Lu
8b8895988d
ts6: map EUID hook to UID
2015-12-30 16:53:35 -08:00
James Lu
447ea0731d
README: simplify module installation text
2015-12-30 15:59:22 -08:00
James Lu
741fed9acd
protocols: allow changing remote users' hosts in updateClient
...
Closes #142 .
2015-12-30 15:54:09 -08:00
James Lu
f3d8c35219
ts6: fix sending wrong UID in handle_chghost hook payload
2015-12-30 15:53:31 -08:00
James Lu
add409789a
relay: fix incorrect logging in changing client fields
2015-12-30 15:53:05 -08:00
James Lu
124100fcf5
classes: actually, loop schedulePing only when connection_thread is alive
...
Related to #152 . Probably still not perfect, but shutdowns are somewhat faster than they were before.
2015-12-29 11:36:39 -08:00
James Lu
91f75e4d93
classes: Don't require self.connected to be set for "No data received" disconnects
...
Previously, this would've caused an infinite loop if a socket closed (e.g. from server shutdown) while PyLink was connecting.
2015-12-29 11:23:06 -08:00
James Lu
9556efae46
docs: pingServer is required in protocol modules
2015-12-29 11:18:15 -08:00
James Lu
d7fdeed19d
relay: remove use of sched in exportDB
...
We were using sched and threading together? How inefficient...
2015-12-29 11:14:19 -08:00
James Lu
cc79871eaf
exec: add some more default imports for convenience
2015-12-29 11:14:19 -08:00
James Lu
64bb646d1e
classes: replace threading.Timer with normal threads for schedulePing
...
Closes #152 .
2015-12-29 10:58:22 -08:00
James Lu
59c9b127a3
relay/world: remove need for world.schedulers
2015-12-26 17:06:28 -08:00
James Lu
270bdcc79a
Move autogen docs to separate folder, add them for conf, classes, log, and world
2015-12-26 16:55:59 -08:00
James Lu
bf2b256b84
docs: fix markdown formatting
2015-12-26 16:47:25 -08:00
James Lu
e4815a72e1
docs: add part of hooks-reference, mention topics and modes in protocol module spec, some more changes
...
ref: #113 .
2015-12-26 16:44:22 -08:00
James Lu
11b8821228
classes: log raw hook data for reference
2015-12-26 16:43:40 -08:00
James Lu
bf7522697a
Rename PYLINK_CLIENT_OPERED hook -> CLIENT_OPERED
...
To be consistent, any PYLINK_* hooks should internal hooks sent out by PyLink itself. CLIENT_OPERED, on the other hand, requires protocol modules to send it and thus, shouldn't be labeled as a PYLINK_* hook.
2015-12-26 15:41:22 -08:00
James Lu
04275d1dfa
relay: only show creator in LINKED if the value exists
2015-12-26 15:24:06 -08:00
James Lu
4529481556
docs/writing-plugins.md: also mention irc.reply()
2015-12-26 15:07:44 -08:00
James Lu
775df5a6c5
plugin_example.py: use irc.reply()
2015-12-26 15:02:23 -08:00
James Lu
01a4da5d3a
classes: Fix another missing docstring
2015-12-26 14:47:23 -08:00
James Lu
11adee9d78
Yet another documentation refresh ( #113 )
2015-12-26 14:45:28 -08:00
James Lu
9811df3dfc
Unbrick the tests
2015-12-26 14:30:14 -08:00
James Lu
3c51231ce8
inspircd: re-add RSQUIT handler ( closes #150 )
2015-12-24 19:52:52 -08:00
James Lu
3292ead034
README: formatting and minor content update
2015-12-24 19:52:33 -08:00
James Lu
b459b4d235
Merge branch 'master' into devel
2015-12-24 18:25:39 -08:00
James Lu
091bdc22da
Test suite updates (doesn't work yet)
2015-12-24 18:24:42 -08:00
James Lu
38672ab9f5
Drop test_proto_inspircd.py, it's broken and unmaintained
...
Eventually, I plan to replace these with a generic protocol module test suite, which can hot-swap protocol modules and test all of them in a loop of some sort.
2015-12-24 18:18:16 -08:00
James Lu
d958f65f7e
networks: call coreplugin and loaded plugins' main() functions on connect
...
I haven't really tested this very well, but it *should* not break anything......
2015-12-24 18:14:05 -08:00
James Lu
3f45450969
unreal: move setting irc.connected to AFTER protocol negotiation, and add missing EOS (ENDBURST) handler
...
The lack of the latter caused relay to *fail* to spawn users whenever an Unreal server reconnects, which should be fixed now.
2015-12-24 18:13:53 -08:00
James Lu
bd8aa4dc11
pylink: more consistent logging syntax
2015-12-24 18:08:00 -08:00
James Lu
9a81a2ba1f
Rename utils.getProtoModule => utils.getProtocolModule
2015-12-24 17:33:49 -08:00
James Lu
2391918deb
networks: add "remote" command, for running commands on remote networks
2015-12-22 10:58:58 -08:00
James Lu
4e7396b1ac
exec: add 'inject' and raw' commands ( Closes #148 )
2015-12-22 10:47:02 -08:00
James Lu
fbf33e15a6
classes: in Irc.runline(), return the parsed hook args after processing
2015-12-22 10:46:54 -08:00
James Lu
375dbe8427
exec: accept newlines and other backslash escapes (in only "exec")
...
This way, more complex code can be entered using newlines: e.g. "for x in range(3):\n irc.reply('hello world')"
2015-12-22 10:41:42 -08:00
James Lu
0c1bcf2bc5
example conf: add missing "sidrange" key in ts6net, rename "yournet" to "inspnet" and various tweaks
...
"sidrange" is required to be in the conf; otherwise, PyLink fails to start. Thanks @darksis for reporting.
2015-12-22 10:31:56 -08:00
James Lu
6330be8758
chancmds: add TOPIC command, fix help text of KICK (it is admin-only, not oper-only)
...
For #90 .
2015-12-18 22:08:52 -08:00
James Lu
349cff36e1
protocols: in TOPIC hooks, send the topic as keyword "text" instead of keyword "topic"
...
This is just to be more consistent, as other hooks usually use "text" for text fields.
2015-12-18 22:05:10 -08:00
James Lu
d0436b9f4d
Merge branch 'master' into devel
2015-12-18 21:44:15 -08:00
James Lu
f1adc90ac9
config.yml.example: mention new chancmds and opercmds plugins
2015-12-18 21:43:42 -08:00
James Lu
775933420a
Move MODE from bots.py into a new plugin, opercmds.py
2015-12-18 21:43:37 -08:00
James Lu
1f2b99ca26
Move "KICK" from bots.py to a new plugin, chancmds
...
Also, add more sanity checks to make sure the things we're kicking are actually valid.
2015-12-18 21:43:37 -08:00
James Lu
4d0f346340
coreplugin: code formatting, show AWAY statuses in WHOIS
...
Closes #143 .
2015-12-17 21:51:15 -08:00
James Lu
d60a48bb11
protocols: actually update away status in awayClient
...
"Oops, I forgot to do this."
2015-12-17 21:50:50 -08:00