02b3266b46 
							
						 
					 
					
						
						
							
							give MegaHAL priority 95 (which is low priority, which always confuses me)  
						
						
						
						
					 
					
						2011-01-07 11:24:38 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							b4f1c5facd 
							
						 
					 
					
						
						
							
							MegaHAL: docstring stuff  
						
						
						
						
					 
					
						2011-01-07 11:23:46 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							11dd04d4db 
							
						 
					 
					
						
						
							
							document a bug i keep forgetting about  
						
						
						
						
					 
					
						2011-01-07 09:59:10 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							4d6228b93a 
							
						 
					 
					
						
						
							
							move DrBotIRC into a separate file, since we will probably be hacking more on it soon  
						
						
						
						
					 
					
						2011-01-07 09:54:51 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							35419f9db9 
							
						 
					 
					
						
						
							
							to stop responding by default is too much power for one module to wield  
						
						
						
						
					 
					
						2011-01-07 09:19:19 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							b7ce4b6dcc 
							
						 
					 
					
						
						
							
							add Alias at priority 1 (so that it is handled first)  
						
						
						
						
					 
					
						2011-01-07 01:11:35 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							de3f9d9ae7 
							
						 
					 
					
						
						
							
							provide a priority (default 50) to add_global_handler  
						
						
						
						
					 
					
						2011-01-07 01:10:52 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							8bec2e62a1 
							
						 
					 
					
						
						
							
							make it possible for a module to respond and tell irclib to stop calling other handlers.  
						
						... 
						
						
						
						this works via Module.reply(). if it produces IRC output, it returns
"NO MORE", which is returned by do(), which is returned by the handler,
which instructs irclib to cease calling handlers. now all we need
is some priorities for the modules (also supported by irclib) and
we may be in business 
						
						
					 
					
						2011-01-07 00:44:31 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							a451eceef3 
							
						 
					 
					
						
						
							
							TODO: some crap i can't decide on or am too lazy to undertake on a whim  
						
						
						
						
					 
					
						2011-01-06 23:31:42 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							8bbda8b575 
							
						 
					 
					
						
						
							
							if we add the module to the autoload list on a load, we should remove it on unload  
						
						
						
						
					 
					
						2011-01-06 23:29:51 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							a3d30daacb 
							
						 
					 
					
						
						
							
							given how we load modules now, we don't need modules/__init__.py  
						
						
						
						
					 
					
						2011-01-06 23:27:52 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							acca8723b3 
							
						 
					 
					
						
						
							
							convert to/standardize docstrings a bit.  
						
						... 
						
						
						
						this got boring fast, so it's only half done 
						
						
					 
					
						2011-01-06 23:25:46 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							247719814e 
							
						 
					 
					
						
						
							
							magic 8-ball module.  
						
						... 
						
						
						
						this could have been done with Facts, but for people who aren't
loading that, here's an alternative 
						
						
					 
					
						2011-01-06 23:08:33 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							40888869b0 
							
						 
					 
					
						
						
							
							fix the cheap unicode escapes in GoogleTranslate  
						
						
						
						
					 
					
						2011-01-06 22:53:21 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							b487caf12d 
							
						 
					 
					
						
						
							
							make the config file argument optional.  
						
						... 
						
						
						
						this should probably be robustified (--config-file=foo) eventually 
						
						
					 
					
						2011-01-06 22:43:10 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							00d5502477 
							
						 
					 
					
						
						
							
							remove some stuff that's been commented out for a while now  
						
						
						
						
					 
					
						2011-01-06 22:40:45 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							2f90304a47 
							
						 
					 
					
						
						
							
							module loading/unloading looks pretty well implemented  
						
						
						
						
					 
					
						2011-01-06 22:33:24 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							85c5c69cb9 
							
						 
					 
					
						
						
							
							weird megahal corruption strikes again.  
						
						... 
						
						
						
						i should probably work this out one of these times rather than just
doing random hacks to dodge it 
						
						
					 
					
						2011-01-06 22:26:24 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							c1c9908d5d 
							
						 
					 
					
						
						
							
							don't include metaopt meta.internal_only in lists (such as aliases)  
						
						
						
						
					 
					
						2011-01-06 22:17:46 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							bd95764f9f 
							
						 
					 
					
						
						
							
							cleanup the sentence feedback  
						
						
						
						
					 
					
						2011-01-06 22:12:19 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							5293e8dc24 
							
						 
					 
					
						
						
							
							add support for listing one alias via list, which shows the value  
						
						
						
						
					 
					
						2011-01-06 22:08:23 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							f5f7814515 
							
						 
					 
					
						
						
							
							reload/unload changes appear to have fixed a number of related bugs  
						
						
						
						
					 
					
						2011-01-06 20:00:26 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							5913e0b183 
							
						 
					 
					
						
						
							
							remove MegaHAL's nullifying of reload() since it's obsolete.  
						
						... 
						
						
						
						note that the new module appears to support unload properly via shutdown() 
						
						
					 
					
						2011-01-06 19:58:58 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							ea0fd9d509 
							
						 
					 
					
						
						
							
							small but significant unload/reload changes.  
						
						... 
						
						
						
						IrcAdmin:
* have sub_unload_module() call the module's shutdown() before deleting stuff
* sub_unload_module() needs to delete the sys.modules entry too
* slightly more verbose output in sub_unload_module()
* sub_reload_module() now does a self.sub_unload_module() + self.sub_load_module()
Module:
* remove reload() --- modules must now safely handle shutdown 
						
						
					 
					
						2011-01-06 19:54:16 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							99b474c85b 
							
						 
					 
					
						
						
							
							initial bug list - mostly load/reload/unload oddities, but also an annoying MegaHAL interaction  
						
						
						
						
					 
					
						2011-01-06 17:17:10 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							9c5d78891c 
							
						 
					 
					
						
						
							
							make a deep copy of the string to feed to mh_python.  
						
						... 
						
						
						
						we were passing the same string everything else uses for input (by
reference), and it appears mh_python does some uppercasing 
						
						
					 
					
						2011-01-06 17:15:57 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							0878c8809d 
							
						 
					 
					
						
						
							
							implement a save() for modules, use it in MegaHAL to sync brain to disk  
						
						
						
						
					 
					
						2011-01-06 00:28:50 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							5c0323fc26 
							
						 
					 
					
						
						
							
							Merge branch 'master' of ayu.incorporeal.org:dr.botzo  
						
						
						
						
					 
					
						2011-01-06 00:18:37 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							d81350d995 
							
						 
					 
					
						
						
							
							remove megahal.py from EXTERNALS  
						
						
						
						
					 
					
						2011-01-06 00:18:02 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							9732ed2f34 
							
						 
					 
					
						
						
							
							use a different megahal implementation, which seems to be better at saving the brain.  
						
						... 
						
						
						
						note that nothing megahal is shipped with the bot now, including
train files. this bot will expect a ./megahal.trn, and will write
to ./megahal.brn (in addition to a slew of other ./megahal.*
files).
implementation is from http://megahal.alioth.debian.org/  
						
						
					 
					
						2011-01-06 00:14:16 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							157d1145ea 
							
						 
					 
					
						
						
							
							specify ellipses continuation as a python string  
						
						
						
						
					 
					
						2011-01-05 09:34:19 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							4241071b7e 
							
						 
					 
					
						
						
							
							print tweet id when printing tweets.  
						
						... 
						
						
						
						will be necessary if we ever implement any kind of reply-to-id replying 
						
						
					 
					
						2011-01-03 00:31:23 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							b748d43bbd 
							
						 
					 
					
						
						
							
							have SIGINT handler call modules' shutdown()  
						
						
						
						
					 
					
						2010-12-24 13:46:48 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							63a85fba3f 
							
						 
					 
					
						
						
							
							Merge remote branch 'origin/mjb/fix_init'  
						
						
						
						
					 
					
						2010-12-24 13:27:33 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							0e7e2bf50c 
							
						 
					 
					
						
						
							
							add tweet subcommand to twitter, to send tweets.  
						
						... 
						
						
						
						needs admin, until i figure out if i want more authentication for it 
						
						
					 
					
						2010-12-24 13:19:50 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							d9b85f4364 
							
						 
					 
					
						
						
							
							track whether or not the twitter module has been authenticated  
						
						
						
						
					 
					
						2010-12-24 13:19:11 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							41a5c43284 
							
						 
					 
					
						
						
							
							use the right signature for Module.reload()  
						
						
						
						
					 
					
						2010-12-24 13:18:23 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							377d2145fa 
							
						 
					 
					
						
						
							
							catch all exceptions around self.do, and log to console  
						
						... 
						
						
						
						as much as i find this uncouth, it is handy, and also it seems
that the megahal brain gets corrupted/unusable when an exception
isn't caught and the bot dies. this should cover most of the
cases 
						
						
					 
					
						2010-12-24 13:16:09 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							f590daf5cd 
							
						 
					 
					
						
						
							
							have all modules run a shutdown() when quitting, use it to have MegaHAL close the brain  
						
						
						
						
					 
					
						2010-12-24 10:41:12 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							cb54abf2b8 
							
						 
					 
					
						
						
							
							use protocol 2 for pickling, which may help disk size of the brain a bit  
						
						
						
						
					 
					
						2010-12-24 10:36:57 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							0ff44e1a47 
							
						 
					 
					
						
						
							
							don't have megahal learn internal commands  
						
						
						
						
					 
					
						2010-12-24 09:48:04 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							9ed1586783 
							
						 
					 
					
						
						
							
							shouldn't need this unicode workaround anymore (fingers crossed)  
						
						
						
						
					 
					
						2010-12-24 09:42:49 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							c513a0bebc 
							
						 
					 
					
						
						
							
							extlib/megahal.py: don't crash when the input string ends in '  
						
						
						
						
					 
					
						2010-12-23 10:01:11 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							ae6eda2c6a 
							
						 
					 
					
						
						
							
							encode facts coming out of Facts to python string  
						
						
						
						
					 
					
						2010-12-20 22:22:37 -06:00 
						 
				 
			
				
					
						
							
							
								Mike Bloy 
							
						 
					 
					
						
						
						
						
							
						
						
							8ffcecdff0 
							
						 
					 
					
						
						
							
							hacked out loading of all modules from __init__  
						
						... 
						
						
						
						Discussion with bss implies that this is no longer needed, now that
the dynamic loader and unload is in place.
empirical testing seems to confirm this 
						
						
					 
					
						2010-12-17 22:52:53 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							107b754a0d 
							
						 
					 
					
						
						
							
							move recursion scan after alias setup, and do another after alias replace  
						
						
						
						
					 
					
						2010-12-17 16:12:45 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							1fe9575502 
							
						 
					 
					
						
						
							
							move recursion stuff out of Module.py and into modules/Alias.py  
						
						... 
						
						
						
						this comes with a recursion rewrite and simplification; it works
a bit more intuitively, now, but i still haven't figured out what
caused the bug that led me down this rabbit hole.
in any event, Alias now rules the roost when it comes to recursion,
which means it's a bit poorly named, but also means that there
won't (shouldn't) be multiple accidental runs for one output, caused
by multiple modules doing the recursion (despite only one really
having a legitimate reason to) --- a classic case of the intended
use of recursion (including the comment to only recurse when you
*know* the input is for you) being lost and forgotten with time
this also obsoletes meta.skip_recursion_scan. between this commit
and the last, people would be wise to revise their config files 
						
						
					 
					
						2010-12-16 23:43:16 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							d18b2e49ff 
							
						 
					 
					
						
						
							
							add 'meta.internal_only' option, defaulting to true  
						
						... 
						
						
						
						this allows for better control on recursion/alias type things, which
is an awful lot of what the bot does these days 
						
						
					 
					
						2010-12-16 21:06:20 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							bda1eb9560 
							
						 
					 
					
						
						
							
							add uppercase text transform  
						
						
						
						
					 
					
						2010-12-16 20:28:26 -06:00 
						 
				 
			
				
					
						
					 
					
						
						
						
						
							
						
						
							699f550ba3 
							
						 
					 
					
						
						
							
							change authentication to over IRC process  
						
						
						
						
					 
					
						2010-12-16 20:15:49 -06:00