James Lu
d4fae02540
Irc: migrate functions to camel case
2017-06-02 23:17:14 -07:00
James Lu
8f82b92a6a
utils: add CamelCaseToSnakeCase class, which wraps missing attributes from camel case names to snake case
2017-06-02 23:16:51 -07:00
James Lu
ed33c8d580
utils: add a default to DeprecatedAttributesObject so that it works as is
2017-06-02 17:26:54 -07:00
James Lu
f97db31533
Irc: show the current encoding setting in fullVersion()
2017-06-02 08:46:55 -07:00
James Lu
f80c5df971
control: log the start and end of rehash to INFO
2017-06-02 08:46:27 -07:00
James Lu
60a0bcdc7a
Rename config option log:stdout -> log:console
...
Closes #386 .
2017-06-02 08:42:32 -07:00
James Lu
caade5a308
log: flush the log queue AFTER setting up file loggers
...
This makes sure that messages sent during the config phase are logged to files, not just the console.
TODO: We should actually be extending this to log to IRC too...
2017-06-02 08:39:49 -07:00
James Lu
6e8f618f80
control: don't duplicate config validation
2017-06-02 08:34:59 -07:00
James Lu
9ea9f66dd7
conf: actually pass the logger object to _log in validateConf
2017-06-02 08:34:43 -07:00
James Lu
1996b86e85
p10: acknowledge incoming KICKs with a PART
...
Per https://github.com/evilnet/nefarious2/blob/ed12d64/doc/p10.txt#L611-L616 . This fixes autorejoin-on-kick not working with prefix modes because the remote verifies whether the KICK has been acknowledged properly. Closes #465 .
2017-06-02 08:09:19 -07:00
James Lu
1ce1f7b3e5
ircs2s_common: don't clobber the case of prefixmsg prefixes on RFC1459 networks
...
Fixes #464 .
2017-06-02 07:56:33 -07:00
James Lu
6ef3bab0fc
unreal: remove handle_privmsg/handle_notice override
2017-06-02 07:56:22 -07:00
James Lu
a32d937b91
Merge branch 'wip/protocol-cleanup' into devel
2017-06-02 07:40:08 -07:00
James Lu
3a934ef5b8
Merge branch 'wip/configurable-encoding' into devel
2017-06-02 07:32:07 -07:00
James Lu
b9aee6ae85
Irc: only apply encoding settings on connect
...
Changing the encoding after a connection has been established is somewhat dangerous, because it's possible to corrupt channel/user state if characters in the old encoding are no longer valid.
Also, mark this option as experimental.
2017-06-02 07:31:49 -07:00
James Lu
1ff027152a
Irc: remove outdated cert/keyfile comment
2017-05-28 20:09:26 -07:00
James Lu
2737b6bbfc
Irc: simplify _send() code and replace unencodable characters
2017-05-27 02:21:12 -07:00
James Lu
1246edaf2c
Irc: initial work on encoding support ( #101 )
2017-05-27 01:27:09 -07:00
James Lu
9ec3cccaee
example-conf: minor tweaks to the pylink: block
...
- Make the "pylink:prefixes" deprecation notice more visible
2017-05-21 20:20:03 -07:00
James Lu
297087c620
example-conf: update plugins notes
...
- Remove obsolete note about opercmds permissions
- Reword and rewrap most other descriptions
2017-05-21 20:15:48 -07:00
James Lu
69cf21c04e
Merge ts6 and p10 handle_events, handle_privmsg into ircs2s_common
2017-05-20 19:41:19 -07:00
James Lu
76ecc60675
servprotect: only track kills and saves to PyLink clients
...
why wasn't this done before...
2017-05-20 15:02:04 -07:00
James Lu
ead20f5be9
Irc: log full tracebacks when disconnecting due to an error
2017-05-16 16:30:03 -07:00
James Lu
89f9b46ec0
relay: demote "PM from server" warnings to debug
...
InspIRCd's m_chanlog.so sends these on purpose, so it's best not to warn about this "feature" endlessly...
2017-05-15 21:32:41 -07:00
James Lu
b2643a0ac8
adv-relay-conf: add a missing $
2017-05-15 17:22:58 -07:00
James Lu
a5b3011ea4
networks: clear the 'remote command used' state and break if overriding account/reply target fails
2017-05-12 19:58:03 -07:00
James Lu
cfec70730f
clientbot: reinitialize PUID generators on connect
...
Closes #448 .
2017-05-12 19:57:24 -07:00
James Lu
fd3236ddb7
Irc: fix another CPU loop on 'disconnect'
2017-05-12 19:52:40 -07:00
James Lu
084f58b499
automode: remove extraneous +'s from mode lists
...
Closes #447 .
2017-05-12 19:41:55 -07:00
James Lu
04f88df385
Actually use 'irc' in main() and die() as a keyword argument (per docs)
2017-05-12 19:19:52 -07:00
James Lu
998beb51b5
control: move plugin shutdown & pidfile cleanup routines to atexit
...
It is possible for PyLink to shutdown indirectly by disconnecting all networks. In these cases, the shutdown routines never ran at all...
2017-05-12 19:13:02 -07:00
James Lu
7e51d3a7f5
service_support: fix service respawn on KILL
2017-05-12 18:45:27 -07:00
James Lu
457325024a
service_support: reuse existing internal clients for service bots if one exists
...
Potential fix for #458 .
2017-05-12 18:27:54 -07:00
James Lu
daa6593534
Irc: block when the queue is empty instead of needlessly polling it
...
Rework Irc.processQueue() to block when the queue is full, and abort if the item "None" is sent to it.
To make sure that the None isn't caught by a full queue or pushed back by other elements, this modifies queue.Queue's underlying deque instance directly.
Closes #459 .
2017-05-12 17:55:24 -07:00
James Lu
06d49f4433
Revert "Irc: only disconnect the write portion of the socket"
...
This reverts commit f4babc6f28
.
2017-05-12 17:19:16 -07:00
James Lu
1bd6149ee2
Merge branch 'devel+next' into devel
2017-05-12 16:57:32 -07:00
James Lu
7daef0000b
Irc: break out of processQueue properly when a network disconnects
2017-05-09 23:31:20 -07:00
James Lu
08c0082430
protocols: rename checkCollision -> check_nick_collision() ( #454 )
2017-05-09 20:44:48 -07:00
James Lu
8f14cb238b
p10: rename checkCloakChange -> check_cloak_change (consistency) ( #454 )
2017-05-09 20:36:43 -07:00
James Lu
c898da7378
p10: move command tokens dict into a class variable & drop _getCommand()
2017-05-09 20:15:23 -07:00
James Lu
701f01fa4f
Irc: reword error message from last commit to be more concise
2017-05-09 18:19:35 -07:00
James Lu
bac6dc36b4
Irc: log socket.send() errors with a proper traceback
2017-05-09 18:06:51 -07:00
James Lu
4ca8667669
Irc: fix 62aea23879
(lowercase queue)
2017-05-07 17:34:04 -07:00
James Lu
a3df47e88e
ServiceBot: fix ce77f2cbd4
2017-05-07 17:33:15 -07:00
James Lu
62aea23879
Irc: fix throttle_time not actually blocking for the defined amount of time
...
Passing the timeout to queue.Queue.get is invalid because it'll only block if there ISN'T any text to send.
2017-05-07 17:31:31 -07:00
James Lu
ce77f2cbd4
ServiceBot: minor fix of logging syntax
2017-05-07 17:11:51 -07:00
James Lu
24b5fd92ef
relay: don't error if the pylink service is gone (e.g. during shutdown)
2017-05-07 13:58:11 -07:00
James Lu
b83aba0b13
inspircd: stop ENDBURST timers when irc.aborted gets set
2017-05-07 13:56:55 -07:00
James Lu
15ed251ed7
Irc: refuse to queue send data if aborted is set
2017-05-07 13:46:25 -07:00
James Lu
de67fe0d37
Irc: log socket shutdown errors to debug
2017-05-07 13:46:15 -07:00