James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							1fcacd0d7c 
							
						 
					 
					
						
						
							
							relay: more compact "showuser" output  
						
						 
						
						
						
						
					 
					
						2015-09-12 16:03:59 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							1c97927b5d 
							
						 
					 
					
						
						
							
							relay: monitor SAVE floods by network, not by target nick  
						
						 
						
						
						
						
					 
					
						2015-09-12 16:03:47 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							95b70f3ebf 
							
						 
					 
					
						
						
							
							relay: spawn a server for every linked network ( Closes   #105 )  
						
						 
						
						
						
						
					 
					
						2015-09-12 12:08:02 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							7f526267ec 
							
						 
					 
					
						
						
							
							relay: minor typo in error message  
						
						 
						
						
						
						
					 
					
						2015-09-09 20:53:04 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							9e73af050c 
							
						 
					 
					
						
						
							
							relay: unpluralize "relayWhoisHandlers"  
						
						 
						
						... 
						
						
						
						There's only one handler, why did I make it plural? 
						
						
					 
					
						2015-09-06 22:39:40 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							9dc836d921 
							
						 
					 
					
						
						
							
							Merge remote-tracking branch 'origin/wip/document-everything' into devel  
						
						 
						
						
						
						
					 
					
						2015-09-06 22:31:41 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							62e7cc4fca 
							
						 
					 
					
						
						
							
							move utils.msg() => classes.Irc.msg()  
						
						 
						
						... 
						
						
						
						New function gets an extra (optional) "source" argument for specifying a sender UID. It's also shorter since no IRC object has to be passed to utils. 
						
						
					 
					
						2015-09-06 22:23:44 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							57da0aa3b3 
							
						 
					 
					
						
						
							
							Classify all our protocol modules - why didn't I do this earlier  
						
						 
						
						
						
						
					 
					
						2015-09-05 18:00:57 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							2777b88d33 
							
						 
					 
					
						
						
							
							commands: Add a shutdown command ( #82 )  
						
						 
						
						... 
						
						
						
						Sometimes exiting takes a little time, possibly from waiting for sockets to close? 
						
						
					 
					
						2015-09-02 23:46:59 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							0404801b18 
							
						 
					 
					
						
						
							
							plugins/admin.py -> plugins/bots.py  
						
						 
						
						... 
						
						
						
						- admin: Drop "showchan" command. It's not very useful, and doesn't handle long output strings at all.
- All the remaining commands are dedicated to spawning bots and playing with them anyways, so this new name fits better. 
						
						
					 
					
						2015-09-02 23:24:58 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							c0f5bedbd3 
							
						 
					 
					
						
						
							
							Add new "networks" plugin, for controlling connections to networks  
						
						 
						
						... 
						
						
						
						Daemonized threads are lovely; when all connections are closed, PyLink just exits :)
Closes  #82 . 
						
						
					 
					
						2015-09-02 23:08:04 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							320de2079a 
							
						 
					 
					
						
						
							
							relay: add INVITE support ( Closes   #94 )  
						
						 
						
						
						
						
					 
					
						2015-09-02 21:30:31 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							60dc3fe026 
							
						 
					 
					
						
						
							
							relay: use "Channel delinked." part message when delinking channels  
						
						 
						
						
						
						
					 
					
						2015-09-02 20:46:21 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							9a47ff87af 
							
						 
					 
					
						
						
							
							Merge branch 'master' into devel  
						
						 
						
						
						
						
					 
					
						2015-09-02 20:44:03 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							043fccf447 
							
						 
					 
					
						
						
							
							Fix previous commit ( Closes   #100 )  
						
						 
						
						
						
						
					 
					
						2015-09-02 18:56:53 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							ace0ddf28c 
							
						 
					 
					
						
						
							
							relay: use JOIN instead of SJOIN for non-burst joins  
						
						 
						
						... 
						
						
						
						Closes  #96 . 
						
						
					 
					
						2015-09-02 18:33:04 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							c2ee9ef808 
							
						 
					 
					
						
						
							
							Merge branch 'master' into devel  
						
						 
						
						
						
						
					 
					
						2015-09-02 18:15:34 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							708d949164 
							
						 
					 
					
						
						
							
							relay: join remote users before sending ours  
						
						 
						
						... 
						
						
						
						This fixes race conditions where modes can be set on our joining users (e.g. auto-op by ChanServ), but are promptly erased as relay joins remote users and resets the channel TS.
Also, move relayModes() calls back into relayJoins(), with an optional "burst" argument.
Closes  #102 . 
						
						
					 
					
						2015-09-02 18:08:39 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							19fa31d012 
							
						 
					 
					
						
						
							
							relay: fix incorrect logging in getSupportedUmodes()  
						
						 
						
						
						
						
					 
					
						2015-09-01 22:14:25 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							2f760c8c92 
							
						 
					 
					
						
						
							
							relay: Don't send empty user mode changes  
						
						 
						
						
						
						
					 
					
						2015-09-01 22:13:29 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							4f40faeaf0 
							
						 
					 
					
						
						
							
							relay: in logs, be a bit more specific why we're blocking KILLs and KICKs  
						
						 
						
						
						
						
					 
					
						2015-09-01 22:02:34 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							0b590d6ab3 
							
						 
					 
					
						
						
							
							relay/protocols: use utils.toLower() for channel names, respecting IRCd casemappings  
						
						 
						
						... 
						
						
						
						Closes  #102 . 
						
						
					 
					
						2015-09-01 22:01:22 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							8d44830d5c 
							
						 
					 
					
						
						
							
							relay.handle_kill: prevent yet another RuntimeError  
						
						 
						
						... 
						
						
						
						(cherry picked from commit 4525b8117ef2f872768d1b696484f3b55b133eb1)
Conflicts:
	plugins/relay.py 
						
						
					 
					
						2015-09-01 19:42:12 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							6d6606900e 
							
						 
					 
					
						
						
							
							relay: coerse "/" to "|" in nicks if "/" isn't present in the separator  
						
						 
						
						... 
						
						
						
						a.k.a. make J*anus* happy :) 
						
						
					 
					
						2015-09-01 09:56:28 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							4525b8117e 
							
						 
					 
					
						
						
							
							relay.handle_kill: prevent yet another RuntimeError  
						
						 
						
						
						
						
					 
					
						2015-08-31 15:04:06 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							26e102f01a 
							
						 
					 
					
						
						
							
							Show oper types on WHOIS  
						
						 
						
						
						
						
					 
					
						2015-08-31 14:52:56 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							8d19057118 
							
						 
					 
					
						
						
							
							relay: set umode +H (hideoper) on all remote opered clients  
						
						 
						
						
						
						
					 
					
						2015-08-31 14:23:42 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							f9b4457ced 
							
						 
					 
					
						
						
							
							Decorate relay clients, etc. with custom OPERTYPEs  
						
						 
						
						... 
						
						
						
						New PyLink internal hook: PYLINK_CLIENT_OPERED, called (supposedly) when a client opers up. 
						
						
					 
					
						2015-08-31 13:31:20 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							4a964b1595 
							
						 
					 
					
						
						
							
							Merge branch 'master' into devel  
						
						 
						
						
						
						
					 
					
						2015-08-31 10:58:47 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							9f0f4cb124 
							
						 
					 
					
						
						
							
							relay: burst the right set of modes  
						
						 
						
						... 
						
						
						
						It's moments like this where I wonder what I'm even doing with my life... 
						
						
					 
					
						2015-08-31 09:28:14 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							94f83eb33b 
							
						 
					 
					
						
						
							
							relay.showuser: show home network/nick, and relay nicks regardless of oper status  
						
						 
						
						
						
						
					 
					
						2015-08-29 19:49:37 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							5503477646 
							
						 
					 
					
						
						
							
							commands: distinguish commands with multiple binds in 'list'  
						
						 
						
						
						
						
					 
					
						2015-08-29 19:29:49 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							8976322273 
							
						 
					 
					
						
						
							
							Replace admin.showuser with prettier whois-style cmds in 'commands' and 'relay'  
						
						 
						
						
						
						
					 
					
						2015-08-29 19:29:05 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							e1e31f64ad 
							
						 
					 
					
						
						
							
							Allow multiple plugins to bind to one command name!  
						
						 
						
						... 
						
						
						
						They will get called in a list, one after the other. The "help" command is able to distinguish with this too. 
						
						
					 
					
						2015-08-29 19:25:07 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							973aba6de7 
							
						 
					 
					
						
						
							
							Move utils' global variables to world.py  
						
						 
						
						
						
						
					 
					
						2015-08-29 09:39:33 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							2fe9b624e7 
							
						 
					 
					
						
						
							
							Consistently capitalize errors and other messages  
						
						 
						
						
						
						
					 
					
						2015-08-25 20:55:39 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							bc7765b241 
							
						 
					 
					
						
						
							
							Let's use consistent "Unknown command" errors, right?  
						
						 
						
						
						
						
					 
					
						2015-08-25 20:51:13 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							d059bd4ff1 
							
						 
					 
					
						
						
							
							Move 'exec' command into its separate plugin  
						
						 
						
						
						
						
					 
					
						2015-08-25 20:47:21 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							3d621b00df 
							
						 
					 
					
						
						
							
							Move checkAuthenticated() to utils, and give it and isOper() toggles for allowing oper/PyLink logins  
						
						 
						
						
						
						
					 
					
						2015-08-25 20:47:21 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							51389b96e2 
							
						 
					 
					
						
						
							
							relay: LINKACL command ( Closes   #88 )  
						
						 
						
						
						
						
					 
					
						2015-08-25 20:18:14 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							0610783479 
							
						 
					 
					
						
						
							
							Merge branch 'devel' into wip/document-everything  
						
						 
						
						
						
						
					 
					
						2015-08-24 10:09:41 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							713ba1469b 
							
						 
					 
					
						
						
							
							relay: log blocked KILLs/KICKs ( Closes   #95 )  
						
						 
						
						
						
						
					 
					
						2015-08-22 21:43:25 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							20474dabac 
							
						 
					 
					
						
						
							
							relay: fix many bugs with nick collision handling, and add flood prevention for fixing nicks  
						
						 
						
						... 
						
						
						
						Closes  #85 . Nick collisions caused by internal clients are handled fine now, including the following cases:
- Abusing spawnClient to create a user with the same nick as a relay client, but with a lower TS.
- When both an UID (e.g. 42XAAAAAA) and a tagged UID (_42XAAAAAA) exist on the same network (the two will both try to take the same nick of _42XAAAAAA/net over the relay).
The case where changing NICK from a long cut-off nick to another long cut-off nick is also mitigated. somelongnick/net won't show nick changes to somelongnic//net if the old and new nicks have give the same normalized relay nick.
This introduces a new dependency, expiringdict, from https://pypi.python.org/pypi/expiringdict/1.1.2 , which is used as a cache for flood prevention. 
						
						
					 
					
						2015-08-22 21:01:51 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							c1d98838d7 
							
						 
					 
					
						
						
							
							plugins/admin: allow sending KICK from servers ( #90 )  
						
						 
						
						
						
						
					 
					
						2015-08-21 00:39:58 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							bd2bd55e89 
							
						 
					 
					
						
						
							
							relay: fix mode relaying when sender is a client but isn't in any shared channels  
						
						 
						
						
						
						
					 
					
						2015-08-20 22:13:28 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							834136e848 
							
						 
					 
					
						
						
							
							Merge branch 'devel' into wip/document-everything  
						
						 
						
						
						
						
					 
					
						2015-08-20 08:14:22 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							dde9539e77 
							
						 
					 
					
						
						
							
							relay: fix incorrect logging in normalizeNick  
						
						 
						
						
						
						
					 
					
						2015-08-20 03:04:40 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							821f546f12 
							
						 
					 
					
						
						
							
							Make sure the PyLink client rejoins all relay channels on KILL  
						
						 
						
						... 
						
						
						
						This adds a new internal hook, 'PYLINK_SPAWNMAIN', which is triggered whenever Irc().spawnMain() is called. 
						
						
					 
					
						2015-08-18 05:44:36 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							f93349ae1f 
							
						 
					 
					
						
						
							
							relay: when restoring a user after KICK, join them to the *right* channel  
						
						 
						
						
						
						
					 
					
						2015-08-18 02:59:56 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							5704fddfb4 
							
						 
					 
					
						
						
							
							relay: ignore internal clients for CLAIM checks  
						
						 
						
						
						
						
					 
					
						2015-08-18 02:57:40 -07:00