Commit Graph

756 Commits

Author SHA1 Message Date
41c1a46bb2 Weather: give hints when results are ambiguous 2012-09-17 16:47:41 -05:00
b17de69a93 logging.cfg: i really hate this config file format 2012-09-17 16:28:42 -05:00
97259eb6b3 Merge branch 'master' of git.incorporeal.org:dr.botzo 2012-09-17 16:27:00 -05:00
2699396dd8 Weather: rewrite to use weather underground
this is still a work in progress, but the basic support is there
2012-09-17 16:26:29 -05:00
ded2b9e96e drop pywapi
python-weather-api is of no interest now that google weather
has been shut down. switching to weather underground
2012-09-17 16:25:51 -05:00
73878cde5f logging.cfg: log weather at debug 2012-09-17 16:24:56 -05:00
02729377d8 Markov: more anti-stop bugfixes 2012-09-17 16:23:42 -05:00
bdba8e20f1 Karma: don't swallow potential commands
when matching patterns, !rank item++ would not get replied to
since the karma matcher would hit, increment item, and then return
(with no response). now it hits but lets processing continue.

doing !rank item++ of course still increments item, which is probably
not what you want to have happen, but i'm not sure how i feel about
fixing it yet, since even if it's not what you /want/ it's probably
what you /expect/.
2012-09-13 12:28:03 -05:00
e7a573bce1 Karma: allow multiple karma expressions per line 2012-09-13 12:16:25 -05:00
c064f6ebe1 Markov: check for start2-only lists correctly while working backwards
what i was doing before had practically no chance of working right,
so that's fun
2012-07-30 10:25:13 -05:00
e8e4354358 Markov: many working backwards bugfixes wrapped together 2012-07-29 22:36:11 -05:00
bf850592df Markov: bugfix in the anti-address chaining 2012-07-29 17:53:56 -05:00
b327bcab71 Markov: trivial code cleanup 2012-07-29 17:46:14 -05:00
14fd5721c1 Markov: trivial debugging fix 2012-07-29 15:44:43 -05:00
26ec854c67 Markov: try to avoid "nick:" starts to extra chaining
when starting another sentence because the main one is too short,
do a bit of work in an attempt to avoid "nick: blah" starts, since
they're fairly common. instead we just ignore nick: and start with
"blah blah"
2012-07-29 15:43:15 -05:00
ad1de23a7c Markov: remove inaccurate debug logging 2012-07-29 15:41:36 -05:00
0386603d93 Storycraft: more debugging output 2012-07-29 09:46:53 -05:00
b5d732cfd6 Pi: formatting cleanup, show database error 2012-07-29 09:45:19 -05:00
dbcd367d66 Countdown: catch parsing error exception 2012-07-29 09:44:23 -05:00
988fe8729a Markov: add punctuation between chains
when starting a second (or Nth) chain because the results so far
are too short, add punctuation to the end of the chain, just to
make things feel a bit more natural
2012-07-29 09:43:06 -05:00
390e925360 Markov: rewrite backwards/forwards chainer
this clarifies a bunch of sections and seems slightly faster

target_word (which would be randomly selected from the input every
time) is replaced with seed_words, a shuffled list from the input.
this is to eliminate accidental reuse of the target word, which
would result in chains like X X X X X X X X X X X X X because
it'd keep targeting X

the rest of this is mostly just debug cleanup, though to simplify
the backwards code it only tries to find one target word
2012-07-29 09:39:07 -05:00
9ca37c3990 Markov: clarify what's going on in _get_suitable_word_from_choices 2012-07-29 09:36:56 -05:00
f15238a37e Markov: abort new chain tack-on if even that's giving us __stop 2012-07-28 14:01:05 -05:00
a6f4827a41 Markov: start new chains if the existing one is too short 2012-07-28 13:55:54 -05:00
ced165cff4 Markov: debug logging 2012-07-28 13:32:58 -05:00
b1d2e06639 DrBotIRC: don't log XML-RPC requests 2012-07-28 09:55:54 -05:00
83039d4d46 logging.cfg: show example of nesting log rules
most at INFO, markov at DEBUG
2012-07-28 09:48:36 -05:00
ef47fd3914 Module: reload the logging config file every __init__()
this is to allow for changing a module's logging level by changing
the config and then unload,load it
2012-07-28 09:47:30 -05:00
f895867b86 Twitter: twitter_settings shouldn't have a primary key 2012-07-28 08:37:27 -05:00
8b2269c441 pyflakes cleanups 2012-07-27 20:38:45 -05:00
0a2aa21777 Storycraft: don't try to replace() on end_time when it's None 2012-07-27 17:42:12 -05:00
b48b016693 add pylint and pyflakes to requirements.txt 2012-07-27 17:22:28 -05:00
adccf69ede Storycraft: properly support/print timestamps 2012-07-27 16:51:57 -05:00
033631e5c2 no longer encode/decode UTF8 stuff when going to/from database
seems safe so far (famous last words)
2012-07-27 16:34:57 -05:00
e1356496eb Markov: don't encode('utf8') the stuff out of the database
it seems unnecessary now? i guess i have to change this in all
the modules now, including this one because i probably missed something
2012-07-27 15:24:56 -05:00
7bd5558f05 ENGINE=InnoDB CHARACTER SET utf8 COLLATE utf8_bin for case-sensitivity 2012-07-27 14:57:41 -05:00
8338799f1b Seen: nick alone is no longer a unique primary key 2012-07-27 11:37:29 -05:00
2163268a39 Twitter: standardize on #dr.botzo for settings 2012-07-27 02:23:30 -05:00
1a36becead convert to a MySQL backend
WARNING!
there's no going back now. this change is *huge* but it was overdue.
WARNING!

the database backend is now mysql. modules that should use a database
but don't yet were left untouched, they'll come later. scripts haven't
been converted yet, though i'm pretty sure i'll need to soon.

while i was going through everything, connection/cursor idioms were
cleaned up, as were a bunch of log messages and exception handling. this
change is so gross i'm happy things appear to be working, which is
the case --- all modules are lightly tested.
2012-07-27 02:18:01 -05:00
deedf330e3 Twitter: don't freak out about not being authed when checking if we're authed 2012-07-27 00:11:10 -05:00
f8674db4a9 DrBotIRC: log exceptions sanely 2012-07-26 21:20:26 -05:00
732c7229a8 dr.botzo.py: clarify the warning about missing module_list
(not modlist)
2012-07-26 21:18:07 -05:00
04369f95cf dr.botzo: only warn when config specifies no modules
this is still 100% wrong, but it's not an error, per se
2012-07-26 20:43:51 -05:00
257c9d446e dr.botzo: abort if the database isn't set
it's become pretty important, and is only going to get moreso
2012-07-26 20:43:21 -05:00
074ed8fd2f add requirements.txt for pip and virtualenv happiness 2012-07-26 20:34:47 -05:00
cac3c0216a Module: log as 'drbotzo.classname' rather than 'drbotzo' 2012-07-26 20:28:17 -05:00
d14ed69916 DrBotIRC: improve logging when failing to load a module 2012-07-26 20:25:55 -05:00
26596e5e00 add debug logging to irclib rather than the gross print()ing
note that with the default logging config, nothing is printed at INFO,
so irclib is silent. but this is better control over the debugging
2012-07-26 20:17:58 -05:00
2a0cd05cbc DrBotIRC: rename logger to drbotzo for clarity's sake 2012-07-26 20:13:05 -05:00
ad80d86a73 Module: logging module (un)loading at info rather than debug 2012-07-26 20:09:57 -05:00