3
0
mirror of https://github.com/jlu5/PyLink.git synced 2024-11-01 09:19:23 +01:00
Commit Graph

2515 Commits

Author SHA1 Message Date
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
5b73e0a691 service_support: fix service respawn on KILL
(cherry picked from commit 7e51d3a7f5)
2017-05-12 18:51:34 -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
James Lu
f4babc6f28 Irc: only disconnect the write portion of the socket
Per https://docs.python.org/3/howto/sockets.html#disconnecting
2017-05-07 13:46:06 -07:00
James Lu
59dd8d3bf8 control: print remaining threads on forced shutdowns as well 2017-05-07 13:39:46 -07:00
James Lu
5c7752a203 relay: stop execution if spawn lock acquire fails
Also, make the lock timeout a consistent, global variable.

(partial merge of commit e24bc54bbcefc40bf73a197de2dc24f7cd42cf79)
2017-05-04 21:18:02 -07:00
James Lu
fd15600d80 docs: split exttargets info into a new page 2017-05-04 20:05:57 -07:00
James Lu
5d629f7331 matchHost: extend negation via "!" to regular hostmasks as well as exttargets 2017-05-04 19:04:03 -07:00
James Lu
d51c399351 Revert "relay: add locks in db read/writes (thread safety)"
Unfortunately, this made relay prone to freezing the entire PyLink server.

This reverts commit 2b4943a780.
2017-05-04 18:53:07 -07:00
James Lu
1358fedca6 exttargets: add $and exttarget (#334) 2017-05-04 18:00:32 -07:00
James Lu
dbeacf9249 exttargets: add a $network target (#334) 2017-05-04 17:16:50 -07:00
James Lu
bab6a71a2e example-conf: fix reversed option description for password encryption
(cherry picked from commit e69e1f5f03)
2017-04-29 00:09:01 -07:00
James Lu
5cea0fa73a commands: remove extraneous private=True from showchan
(cherry picked from commit 79e2d20d9d)
2017-04-29 00:09:01 -07:00
James Lu
e69e1f5f03 example-conf: fix reversed option description for password encryption 2017-04-29 00:08:07 -07:00
James Lu
79e2d20d9d commands: remove extraneous private=True from showchan 2017-04-27 07:28:26 -07:00
James Lu
4205694a65 PyLink 1.2-alpha1 2017-04-20 13:25:18 -07:00
James Lu
94de51ad53 README: rewrap steps in "Installing from source" 2017-04-16 01:25:50 -07:00
James Lu
f6d97374c5 README: Update Charybdis link to GitHub
http://charybdis.io/ has been dead (NXDOMAIN) for a while now...
2017-04-16 01:22:28 -07:00
James Lu
18c13c735e Merge branch 'master' into devel
Conflicts:
	VERSION
2017-04-10 15:14:48 -07:00
James Lu
2feb93aaf0 clientbot: generate PUIDs/PSIDs with the nick or server name as prefix 2017-04-09 15:32:13 -07:00
James Lu
0e6d33a668 networks.remote: suppress errors if restoring remoteirc.pseudoclient.account
This should rarely happen, but can be purposely caused by causing the remote network to disconnect through 'remote'.
2017-04-09 15:21:19 -07:00
James Lu
3f6501fa88 clientbot: make sure incoming nicks don't clash with a PUID/PSID
This should really never happen, but it might break quite a few things if it does.
2017-04-09 15:12:52 -07:00
James Lu
cc9ffd47b1 clientbot: fix misleading comment 2017-04-09 15:01:49 -07:00
James Lu
709b1d2ead commands: show TS on networks without has-ts as well 2017-04-09 14:54:16 -07:00
James Lu
bf1d7812e2 clientbot: track channel modes and TS on join
Closes #345.
2017-04-09 14:49:19 -07:00
James Lu
6d96dd21ac updateTS: remove usage of mutable as function default argument
This may subtly break things: https://docs.quantifiedcode.com/python-anti-patterns/correctness/mutable_default_value_as_argument.html
2017-04-09 14:45:12 -07:00
James Lu
539ad668cf PyLink 1.1.2 2017-04-06 15:33:28 -07:00
James Lu
e2ae091723 .travis.yml: bring PyPI deployment to production 2017-04-06 15:30:46 -07:00