3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-12-27 05:03:07 +01:00
Commit Graph

2484 Commits

Author SHA1 Message Date
James Lu
c8f945d40f writing-plugins.md: mention that IRCParser is a 1.2+ feature 2017-03-12 20:37:53 -07:00
James Lu
8c4a13fdf0 Merge pull request #431 from IotaSpencer/devel
Document utils.IRCParser() (closes #420)
2017-03-12 20:35:19 -07:00
Ken Spencer
d6d330bec6 Add docs/technical/using-ircparser.md guide. 2017-03-12 23:08:56 -04:00
Ken Spencer
ed7a117247 doc/technical/writing-plugins.md: mention and link to using-ircparser.md 2017-03-12 21:55:22 -04:00
James Lu
afc5cc26fa Irc: more compact __repr__ for IrcChannel/IrcServer/IrcUser 2017-03-11 22:49:48 -08:00
James Lu
716ac681b6 exec: add 'pieval' and 'peval' to evaluate expressions pretty-printed 2017-03-11 22:47:30 -08:00
James Lu
c67c0aa2e6 rehash: fix resetting the wrong autoconnect multiplier variable 2017-03-11 01:05:07 -08:00
James Lu
2028cab04c core: Grow autoconnect delays by a configurable factor whenever connections fail
Closes #348.
2017-03-11 00:21:30 -08:00
James Lu
9e50c5e69a Irc: try to make breaking out of autoconnect loops faster 2017-03-10 23:57:37 -08:00
James Lu
0526e96dc5 control: remove an extraneous, obsolete comment 2017-03-10 23:57:37 -08:00
James Lu
bf42109d81 Split fantasy prefix definitions into service-specific blocks
Closes #426.

This makes the pylink::prefix (aka bot::prefix) option only affect the main PyLink bot, and deprecates the pylink::prefixes::<...> options.
As the bot: config block is no longer checked, this commit depends on commit 45ed5b962e215763f7659631d1b98a5031dbab92 (ref #343) to alias it to conf::pylink.
2017-03-10 23:47:07 -08:00
James Lu
fb626c8a97 services_support: remove workarounds for the PyLink service nick & ident being in conf::bot (#343) 2017-03-10 23:47:07 -08:00
James Lu
dc298b3182 conf: join conf::bot and conf::pylink so that they mean the same thing (#343) 2017-03-10 23:47:07 -08:00
James Lu
3096c54bb8 Irc: return in msg() if the main client is missing and no explicit source is set 2017-03-10 23:47:07 -08:00
James Lu
b09565a723 bots, opercmds: add a "Done" reply to most commands as they finish 2017-03-09 20:50:14 -08:00
James Lu
ebd5b77576 relay: normalize channel case in 'link'
(regression from commit 93c9b6289c)

Reported by @koaxirc.
2017-03-09 20:42:38 -08:00
James Lu
b23a887edd login: remove all__vary_rounds setting (deprecated in Passlib 1.7) 2017-03-08 22:58:17 -08:00
James Lu
f6d9765f87 core: implement module loading from user-defined directories
Closes #350.
2017-03-08 22:31:57 -08:00
James Lu
805a0502d2 utils: add an alias (utils.IRCParser.REMAINDER) to argparse.REMAINDER
Reported by @IotaSpencer.
2017-03-08 10:02:46 -08:00
James Lu
225b0ac8b2 ServiceBot: catch InvalidArgumentsError for prettier error display on IRC 2017-03-06 16:30:43 -08:00
James Lu
ca93d1ad70 IRCParser: show an error when using "command --help" instead of silently outputting help text in the console 2017-03-06 16:30:43 -08:00
James Lu
76d74ab9bb SECURITY: prevent DoS when calling --help on commands using IRCParser
argparse's default behaviour is to exit after displaying --help and --version information. However, doing so freezes the current IRC listener and essentially allows for DoS via IRC...
This bug does not affect any released (stable) version of PyLInk - only commits after 93c9b6289c
2017-03-06 16:11:04 -08:00
James Lu
2d03ceebc8 Merge branch 'wip/attr-deprecations' into devel
Closes #273.
2017-03-05 00:15:03 -08:00
James Lu
9a9e0b2c20 Irc: deprecate the botdata field as well (#273) 2017-03-05 00:14:43 -08:00
James Lu
e8bf1d08bc handlers, fantasy: migrate away from irc.botdata (#273) 2017-03-05 00:10:33 -08:00
James Lu
d318fbac77 protocols: migrate away from irc.botdata (#273) 2017-03-05 00:09:01 -08:00
James Lu
b4f70bdece Irc: remove duplicate botdata assignment 2017-03-05 00:06:49 -08:00
James Lu
4284853a4a Irc: remove internal use of 'conf' and 'botdata' (#273) 2017-03-05 00:06:44 -08:00
James Lu
7f070448b7 utils, Irc: add abstraction to warn on deprecated attribute usage (#273) 2017-03-05 00:00:26 -08:00
James Lu
47f0b7626f clientbot: time out CAP/SASL after 5 seconds
Closes #424.
2017-03-04 23:54:16 -08:00
James Lu
733d7d7c87 exec: add ieval command using the isolated local scope 2017-03-04 22:05:03 -08:00
James Lu
42ba1775d7 exec: add irc, source, and args to isolated locals scopes
This allows basic things like irc.reply() to work in 'iexec'.
2017-03-04 21:59:42 -08:00
James Lu
9420f21680 clientbot: send CAP LS before NICK/USER so that it consistently gets a response before connect
Previously, SASL was failing on networks like freenode, as the connection completed before a CAP response was received.
2017-03-03 15:39:28 -08:00
James Lu
3281e1e8c2 pylink-contribdl: normalize exit codes 2017-02-27 07:28:37 -08:00
James Lu
8a773dea4e core: normalize exit codes 2017-02-27 07:26:29 -08:00
James Lu
7a1a4d9161 example-conf: document service-specific autojoin channels (from #423) 2017-02-26 18:16:15 -08:00
James Lu
21c0c617c1 Merge branch 'server-service-channels' of https://github.com/IotaSpencer/PyLink into devel
Closes #423.
2017-02-26 18:12:34 -08:00
James Lu
ae56ed6a32 services_support: fix service-specific key name 2017-02-26 18:11:20 -08:00
Ken Spencer
b3ec8a6790 service_support: allow server:service_channels for per service autojoin 2017-02-26 21:05:33 -05:00
James Lu
5fe277f90d Irc: mention CIDR matching (#411) and casemappings in matchHost() desc. 2017-02-25 22:26:37 -08:00
James Lu
4df8567fa6 Irc: move PYLINK_DISCONNECT firing and connected.clear() into disconnect() (#421)
This may prevent extra irc.connected.clear() calls from messing with the was_connected state.
2017-02-25 22:06:43 -08:00
James Lu
6fcb129ad6 hooks-reference: document the 'was_successful' key in PYLINK_DISCONNECT 2017-02-24 22:27:51 -08:00
James Lu
7c0cb92696 Irc: hack in CIDR support in matchHost() (#411) 2017-02-24 22:27:26 -08:00
James Lu
04fa0520a6 Irc: make was_successful check the last Irc.connected state 2017-02-24 22:09:41 -08:00
James Lu
cd65da75c6 relay: only announce disconnects if the last connection was successful 2017-02-24 21:42:58 -08:00
James Lu
b30d696e3a Irc: add "was_successful" data key to PYLINK_DISCONNECT
This stores whether the network was actually connected before this disconnect message fired (i.e. the disconnect wasn't caused by a configuration error, etc.)
2017-02-24 21:42:44 -08:00
James Lu
cd3d795296 relay: implement optional network disconnect announcements
Closes #421.
2017-02-24 21:15:40 -08:00
James Lu
0ebb52e64f conf: simplify newlogins checks & allow missing permissions blocks if an old login is also present 2017-02-24 21:07:28 -08:00
James Lu
c03f2d772c relay: allow dropping messages from user-less clients
This adds two new options, both defaulting to True:
- relay:accept_weird_senders (global)
- servers:<name>:relay_weird_senders (per-server)

Closes #404.
2017-02-24 19:16:01 -08:00
James Lu
3d9f69dba7 Irc: deprecate checkAuthenticated() 2017-02-24 18:42:58 -08:00