James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							92be421fad 
							
						 
					 
					
						
						
							
							relay: attempt to remove persistent channels on delink as well  
						
						 
						
						... 
						
						
						
						Also, wrap remove_persistent_channel calls with a try/except when they may fail. 
						
						
					 
					
						2018-05-05 12:57:17 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							8994811f54 
							
						 
					 
					
						
						
							
							relay: further fixes for persistent channels  
						
						 
						
						... 
						
						
						
						Also, merge the 'relay_local' and 'relay_remote' namespaces into one. 
						
						
					 
					
						2018-05-05 12:52:00 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							e9fe15bd7d 
							
						 
					 
					
						
						
							
							[WIP] Further revise the persistent channels implementation  
						
						 
						
						... 
						
						
						
						- Make dynamic_channels per plugin as well as per network to work around relay-service conflicts (#265 )
- Introduce ServiceBot.(add|remove)_persistent_channel() to add/remove persistent channels and optionally join/part them
- Introduce ServiceBot.part(), which checks remaining persistent channels list and parts a channel only if it is still not marked persistent
- Refactor automode to autojoin channels on ENDBURST instead of plugin load
- Refactor relay to manage persistent channels on join/part/(de)init, both locally (namespace 'relay_local') and remotely (namespace 'relay_remote') 
						
						
					 
					
						2018-05-04 22:52:26 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							b46ab844fe 
							
						 
					 
					
						
						
							
							classes: really fix KeyError crashes on duplicate QUIT  
						
						 
						
						
						
						
					 
					
						2018-04-30 11:11:14 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							8eba402a33 
							
						 
					 
					
						
						
							
							clientbot: drop pre-WHO join bursting with userhost-in-names, it's too unreliable  
						
						 
						
						... 
						
						
						
						Closes  #602 .
Closes  #551 . 
						
						
					 
					
						2018-04-24 12:39:29 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							e96081aa6e 
							
						 
					 
					
						
						
							
							PyLinkNetworkCore: make deletion from self.users non-fatal  
						
						 
						
						
						
						
					 
					
						2018-04-20 19:39:35 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							af744123e6 
							
						 
					 
					
						
						
							
							automode: join channels regardless of whether they're empty  
						
						 
						
						
						
						
					 
					
						2018-04-20 19:35:06 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							0ead868546 
							
						 
					 
					
						
						
							
							service_support: skip dynamic join/part hooks on bot-only servers  
						
						 
						
						
						
						
					 
					
						2018-04-20 19:35:06 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Ken Spencer 
							
						 
					 
					
						
						
						
						
							
						
						
							78d1d20856 
							
						 
					 
					
						
						
							
							adv-relay-config: fix colons so they match example-conf ( #598 )  
						
						 
						
						... 
						
						
						
						First part of #597 . 
						
						
					 
					
						2018-04-16 20:27:00 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							281ac7aa31 
							
						 
					 
					
						
						
							
							antispam: add a workaround for clientbot support ( #359 )  
						
						 
						
						
						
						
					 
					
						2018-04-14 11:40:19 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							47052a3bba 
							
						 
					 
					
						
						
							
							antispam: use kick+ban as default punishment  
						
						 
						
						
						
						
					 
					
						2018-04-13 22:18:41 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							3e07239db4 
							
						 
					 
					
						
						
							
							antispam: don't kill users if they quit after previous punishments  
						
						 
						
						
						
						
					 
					
						2018-04-13 22:18:03 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							dd8f9411b6 
							
						 
					 
					
						
						
							
							antispam: filter protection-triggering messages from reaching other plugins ( #359 )  
						
						 
						
						
						
						
					 
					
						2018-04-13 22:15:24 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							3825b93dee 
							
						 
					 
					
						
						
							
							Initial pass of a mass-highlight blocking plugin ( #359 )  
						
						 
						
						
						
						
					 
					
						2018-04-13 22:08:37 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							4d9fbc55ba 
							
						 
					 
					
						
						
							
							Merge branch 'wip/dynamic-services' into devel  
						
						 
						
						
						
						
					 
					
						2018-04-13 22:08:28 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							3c9dac7e6b 
							
						 
					 
					
						
						
							
							service_support: consistently rejoin all channels on kick and kill  
						
						 
						
						... 
						
						
						
						This is the cheap fix to part one of #265 : "When a services client is killed, it won't join any relay leaf channels" 
						
						
					 
					
						2018-04-13 20:34:26 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							4cdc19ac78 
							
						 
					 
					
						
						
							
							relay: fix is_internal_client call  
						
						 
						
						
						
						
					 
					
						2018-04-13 20:31:56 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							2f12a5b710 
							
						 
					 
					
						
						
							
							Initial work on dynamic service bot joining / parting ( #265 )  
						
						 
						
						
						
						
					 
					
						2018-04-12 12:45:33 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							2cb4a06e64 
							
						 
					 
					
						
						
							
							commands: report times in showuser, showchan in UTC  
						
						 
						
						... 
						
						
						
						XXX: we could perhaps use abstraction to this since we're repetitively chaining commands
XXX: 'ts' is not type-safe yet, some protocol modules are storing it as a string?! 
						
						
					 
					
						2018-04-12 10:58:09 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							25d24e9bb2 
							
						 
					 
					
						
						
							
							Use non-blocking sockets again, since Linux select() doesn't guarantee that recv() won't block  
						
						 
						
						
						
						
					 
					
						2018-04-12 10:58:09 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							bbc7a981ba 
							
						 
					 
					
						
						
							
							example-conf: tweak some more defaults for clarity  
						
						 
						
						... 
						
						
						
						(cherry picked from commit 66ec3d9755943bab7fe17a177c0873ecec4b32ad)
Conflicts:
	example-conf.yml 
						
						
					 
					
						2018-04-10 22:31:24 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							c82b12d9d6 
							
						 
					 
					
						
						
							
							example-conf: clarify nick/ident setting on clientbot  
						
						 
						
						... 
						
						
						
						(cherry picked from commit 170d793939bf64931f474e4977225101870ea7f0) 
						
						
					 
					
						2018-04-10 22:29:43 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							c7159b9cad 
							
						 
					 
					
						
						
							
							core: move clearing channels on kick/part to coremods/handlers  
						
						 
						
						... 
						
						
						
						This is for consistency with the rest of the state cleanup code. 
						
						
					 
					
						2018-04-07 22:44:00 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							16faac83eb 
							
						 
					 
					
						
						
							
							core: delete empty permanent channels when -P is set on them  
						
						 
						
						
						
						
					 
					
						2018-04-07 22:38:19 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							6bcf7d325f 
							
						 
					 
					
						
						
							
							PyLinkNetworkCore: add get_service_option()  
						
						 
						
						... 
						
						
						
						Closes  #574 . 
						
						
					 
					
						2018-04-07 22:20:35 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							138a52611e 
							
						 
					 
					
						
						
							
							classes: oops, actually tell the queue thread to abort before we wait for it to stop  
						
						 
						
						
						
						
					 
					
						2018-04-07 22:12:17 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							80cbd7a257 
							
						 
					 
					
						
						
							
							classes: make disconnections more synchronized  
						
						 
						
						... 
						
						
						
						- Make ping timer abort instantly if the network is dead
- Shut down the read and write parts of the socket separately, and only close the socket once both parts are done. 
						
						
					 
					
						2018-04-07 21:56:10 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							84dbca4bda 
							
						 
					 
					
						
						
							
							classes: thread socket connects once more since they block  
						
						 
						
						
						
						
					 
					
						2018-04-07 21:56:06 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							655221491c 
							
						 
					 
					
						
						
							
							ServiceBot: log access denials to warning -  closes   #593  
						
						 
						
						
						
						
					 
					
						2018-04-07 20:22:55 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							f75b1eb356 
							
						 
					 
					
						
						
							
							Rename servers::<netname>::server_suffix -> servers::<netname>::relay_server_suffix  
						
						 
						
						
						
						
					 
					
						2018-04-03 17:43:02 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							7586989763 
							
						 
					 
					
						
						
							
							classes: really quash duplicate disconnect calls as much as possible  
						
						 
						
						
						
						
					 
					
						2018-03-31 11:53:50 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							d6952f0361 
							
						 
					 
					
						
						
							
							handlers: fix names of state cleanup function  
						
						 
						
						... 
						
						
						
						Where did "stats cleanup" even come from?! 
						
						
					 
					
						2018-03-31 00:09:30 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							57d7a70933 
							
						 
					 
					
						
						
							
							launcher: mention that -c is explicitly kept as a no-op for PyLink <= 1.2.x  
						
						 
						
						... 
						
						
						
						(cherry picked from commit c0a061eff3c5e82ec9ed43aff1c8609d075d9d34)
Conflicts:
	launcher.py 
						
						
					 
					
						2018-03-30 23:52:19 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							7dec2d15db 
							
						 
					 
					
						
						
							
							launcher: daemonize and write PID file only after reading control options (-s/-R/-r)  
						
						 
						
						... 
						
						
						
						(cherry picked from commit b9a66244f04e12509271feadf5d30d7bce2e81c9) 
						
						
					 
					
						2018-03-30 23:24:41 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							9d21a5269f 
							
						 
					 
					
						
						
							
							relay: speed up shutdowns by not manually splitting off every relay server  
						
						 
						
						... 
						
						
						
						The connection will soon be gone anyways, so this is fairly pointless. 
						
						
					 
					
						2018-03-30 12:06:45 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							c978e1c52f 
							
						 
					 
					
						
						
							
							relay: fix a typo: CLIENTBOT_WHITELISTED_UMODES -> CLIENTBOT_WHITELISTED_CMODES  
						
						 
						
						
						
						
					 
					
						2018-03-30 12:01:38 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							310ad345a3 
							
						 
					 
					
						
						
							
							SECURITY: normalize account names before checking network / oper filters  
						
						 
						
						... 
						
						
						
						(cherry picked from commit a6c1beaad0f715a28495edab8b4ae0f53a8968a7) 
						
						
					 
					
						2018-03-30 11:59:29 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							22efe1384c 
							
						 
					 
					
						
						
							
							_login: tweak error message: opered up => opered  
						
						 
						
						... 
						
						
						
						(cherry picked from commit 557f1578bcd5b43b9be75b41ee887d659c49d3a9)
Conflicts:
	coremods/corecommands.py 
						
						
					 
					
						2018-03-30 11:58:50 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							f274088ea0 
							
						 
					 
					
						
						
							
							classes: more checks on _aborted to (hopefully) prevent duplicate disconnects triggered by _send  
						
						 
						
						
						
						
					 
					
						2018-03-30 10:47:34 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							93d590fdea 
							
						 
					 
					
						
						
							
							UserMapping: check for lower_nick rather than isinstance(userobj, User)  
						
						 
						
						... 
						
						
						
						This makes classes reload-safe again. 
						
						
					 
					
						2018-03-30 10:46:49 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								Jordy Zomer 
							
						 
					 
					
						
						
						
						
							
						
						
							be8e4be49d 
							
						 
					 
					
						
						
							
							Use yaml.safe_load instead of yaml.load to prevent executing arbitrary code ( #589 )  
						
						 
						
						
						
						
					 
					
						2018-03-29 14:10:33 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							335fb352ec 
							
						 
					 
					
						
						
							
							classes: ignore errors on duplicate selector.unregister()  
						
						 
						
						... 
						
						
						
						This should really be fixed more thoroughly: there are still some remaining issues after the port to select, with disconnect / reconnect being triggered twice. 
						
						
					 
					
						2018-03-29 14:04:58 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							29cda543e4 
							
						 
					 
					
						
						
							
							launcher: use a clearer description for --trace  
						
						 
						
						
						
						
					 
					
						2018-03-24 01:07:24 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							22b2410913 
							
						 
					 
					
						
						
							
							RELNOTES: mention new --trace arguments for 2.0-alpha3  
						
						 
						
						
						
						
					 
					
						2018-03-24 01:05:47 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							22f781189d 
							
						 
					 
					
						
						
							
							Refresh 2.0-alpha3 changelog with engine-rework batch 2 changes so far  
						
						 
						
						
						
						
					 
					
						2018-03-24 01:02:55 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							84187a07ec 
							
						 
					 
					
						
						
							
							Refresh 2.0-alpha3 changelog (up to 815535d76b0b2c150a250eea9d7372901e1586af)  
						
						 
						
						
						
						
					 
					
						2018-03-24 01:02:14 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							0bc24c94b2 
							
						 
					 
					
						
						
							
							relay: shortcut get_remote_user some more; only grab spawn lock if the user doesn't exist  
						
						 
						
						
						
						
					 
					
						2018-03-24 00:31:15 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							bbb36cd956 
							
						 
					 
					
						
						
							
							relay: reuse get_relay_server_sid output when bursting groups of users  
						
						 
						
						
						
						
					 
					
						2018-03-24 00:25:05 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							a085aed924 
							
						 
					 
					
						
						
							
							Rework irc.users and User() to transparently create a store of nicks -> UIDs  
						
						 
						
						... 
						
						
						
						- This turns IRCNetwork.users into a new UserMapping class, which stores User objects by UID (str) and provides a 'bynick' dict storing case-normalized nicks to lists of UIDs.
- Turn User.nick into a property, where the setter implicitly updates the 'bynick' index and computes a case-normalized version of the nick (User.lower_nick) 
						
						
					 
					
						2018-03-24 00:12:19 -07:00  
					
					
						 
						
							
							
							 
						
					 
				 
			
				
					
						
							
							
								 
								James Lu 
							
						 
					 
					
						
						
						
						
							
						
						
							815535d76b 
							
						 
					 
					
						
						
							
							IRCNetwork: fix autoconnect not applying when socket.connect() fails  
						
						 
						
						
						
						
					 
					
						2018-03-23 20:21:49 -07:00