3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-12-24 03:33:10 +01:00
Commit Graph

2267 Commits

Author SHA1 Message Date
James Lu
e84a2d1025 Modularize our import hacks, make Irc() take a conf object again 2015-09-28 19:12:45 -07:00
James Lu
9e07949730 relay: make spawning of subservers toggleable 2015-09-28 18:22:03 -07:00
James Lu
55b642ea30 Revert "relay: remove ENDBURST hook (is this needed anymore?)"
This reverts commit 4a9a29e095.
2015-09-28 18:15:56 -07:00
James Lu
630aa83084 core: add some rudimentary config file validation 2015-09-28 11:55:31 -07:00
James Lu
0d3a7a5ce0 exec: import world, for easier access to it 2015-09-27 12:15:10 -07:00
James Lu
5aeaac0394 commands: only allow loading plugins that aren't already loaded 2015-09-27 12:12:58 -07:00
James Lu
38a350a5f8 Revert "pylink: use sys.path instead of imp library hacks"
This reverts commit cf2ba4b492.
2015-09-27 12:11:59 -07:00
James Lu
4a9a29e095 relay: remove ENDBURST hook (is this needed anymore?) 2015-09-27 11:56:32 -07:00
James Lu
a14e8a7b8f relay: add (experimental) support for plugin reloading 2015-09-27 11:56:09 -07:00
James Lu
07fe7202aa commands: add plugin loading/unloading/reloading support
Closes #5.
2015-09-27 11:54:06 -07:00
James Lu
bbedd38703 world: rename command_hooks=>hooks, bot_commands=>commands 2015-09-27 10:53:25 -07:00
James Lu
cc171eb79a relay: abort connection when spawning a server fails 2015-09-27 10:45:08 -07:00
James Lu
cf2ba4b492 pylink: use sys.path instead of imp library hacks 2015-09-27 10:44:52 -07:00
James Lu
a903f97507 Make world.plugins a dict instead of a list 2015-09-27 10:27:32 -07:00
James Lu
a37d4b6f3c fantasy: only work when the main PyLink client is in the channel 2015-09-26 10:20:23 -07:00
James Lu
7470efc461 commands: add an echo command 2015-09-26 10:20:23 -07:00
James Lu
7d919e643a relay: forward messages from the main PyLink client too
This may or may not have nasty regressions - time will tell I guess.
2015-09-26 10:20:23 -07:00
James Lu
97a135a6f1 classes: add special PYLINK_SELF(PRIVMSG/NOTICE) hooks for command loopback 2015-09-26 10:20:23 -07:00
James Lu
034731ab1e core: log which plugin is being called when calling hooks 2015-09-26 10:20:23 -07:00
James Lu
0378fcca1d fantasy: don't allow internal clients to trigger 2015-09-26 10:20:23 -07:00
James Lu
8e444c5dbe plugins: support FANTASY (where reasonable) by using irc.msg(irc.called_by, ...) instead of irc.msg(source, ...) 2015-09-26 10:20:23 -07:00
James Lu
f55d227329 example conf: add fantasy.py to list and plugin descriptions 2015-09-26 10:20:23 -07:00
James Lu
4509e0757d FANTASY support plugin (Closes #111) 2015-09-26 10:20:23 -07:00
James Lu
822544e3cc core: keep track of where last command was called & make command calling a shared function
Prerequisite for FANTASY command implementation (#111).
2015-09-26 10:20:23 -07:00
James Lu
5afa621654 utils.parseModes: add missing string formatting 2015-09-25 20:25:41 -07:00
James Lu
da3251cce2 utils.parseModes: check to make sure target channel/user exists 2015-09-25 20:25:30 -07:00
James Lu
aaeeedadf2 start-cpulimit: pass command line options to ./pylink 2015-09-25 20:25:07 -07:00
James Lu
f884d71cf0 docs/pmodule-spec.md: formatting again 2015-09-24 18:39:33 -07:00
James Lu
86495db770 docs/pmodule-spec: formatting 2015-09-24 18:38:38 -07:00
James Lu
f015fe5e25 Documentation updates, finish off pmodule-spec.md (#113) 2015-09-24 18:36:54 -07:00
James Lu
3351aafc79 inspircd: fix wrong arguments in numericServer() stub 2015-09-24 18:13:11 -07:00
James Lu
c77d170765 Move parseArgs and removeClient into the base Protocol class
These aren't really TS6-specific, and can be useful anywhere.
2015-09-24 18:03:30 -07:00
James Lu
886994475d Merge branch 'master' into wip/unrealircd
Conflicts:
	classes.py
2015-09-23 18:59:17 -07:00
James Lu
e92f35018f TS6SIDGenerator: take an IRC object, and skip any SIDs that are currently in use 2015-09-20 18:32:43 -07:00
James Lu
7e12ec9e5e relay: don't prepend sender prefixes more than once (for servers and clients not on any relay networks) 2015-09-20 18:13:39 -07:00
James Lu
f2b6d1a3ad relay: use two locks (one for clients, one for servers) to prevent lock ups on start 2015-09-20 16:56:24 -07:00
James Lu
16d8a2212a coreplugin: protect the main PyLink client too, even though it's technically manipulatable 2015-09-20 16:55:04 -07:00
James Lu
f110ac15b0 coreplugin: Protect against forced deopers
Closes #67.
2015-09-20 13:21:04 -07:00
James Lu
7b2d1d8129 relay: use the network's full name in spawning servers 2015-09-20 12:11:41 -07:00
James Lu
4c45533ecb coreplugin: send the RIGHT server desc in WHOIS replies 2015-09-20 12:11:28 -07:00
James Lu
f4f8987873 example conf: add full "netname" in server configuration 2015-09-20 11:55:51 -07:00
James Lu
f38958995c Store opertypes with spaces instead of underscores, and only change them back when sending OPERTYPE
Another "Janus sucks" commit - it should be always using underscores when sending OPERTYPE, but it doesn't...
2015-09-20 11:25:45 -07:00
James Lu
82d129fed2 world: fix 0f26848 (we can't use log here) 2015-09-19 11:55:29 -07:00
James Lu
3c8da4934a pylink: always chdir to the PyLink root directory 2015-09-19 11:55:22 -07:00
James Lu
0f26848b16 Add a useful "version" command 2015-09-19 11:51:56 -07:00
James Lu
0d207f7d08 relay: better description for 'showuser' 2015-09-19 10:39:56 -07:00
James Lu
dfe09263b9 plugins/exec: add 'eval' command too 2015-09-19 10:39:05 -07:00
James Lu
2c23cbe01e relay: fix some logging peculiarities in handle_kick? 2015-09-19 10:32:45 -07:00
James Lu
19c4c2ce3f classes: split up run() into run() and runline()
This helps the debugging process, by allowing us to also inject lines directly into the protocol module.
2015-09-19 10:31:43 -07:00
James Lu
c77f92357a coreplugin: show real IP/host in WHOIS 2015-09-19 10:25:50 -07:00