about summary refs log tree commit diff
path: root/database.h (unfollow)
Commit message (Collapse)Author
2019-12-28Don't insert self-messagesJune McEnroe
Even with NOTICEs litterbox would sometimes receive its own responses, which would create duplicates in the database, essentially.
2019-12-28Run PRAGMA optimize in dbCloseJune McEnroe
2019-12-28Call tls_close and dbClose in atexitJune McEnroe
2019-12-27Move querySearch code aroundJune McEnroe
2019-12-27Add nick coloring to search query resultsJune McEnroe
2019-12-27Reply to search queries with NOTICEJune McEnroe
When connected to pounce, it's possible to receive some of its own PMs, so it should respond with what can't be commands.
2019-12-27Add search query interfaceJune McEnroe
2019-12-26Use bsearch to find handlerJune McEnroe
The code is a bit cleaner this way I think, and performance would be better if the list of handlers ever got very long, and it was sorted anyway. However, I would prefer if there were a way to enforce the list being sorted at compile-time.
2019-12-26Handle ERRORJune McEnroe
2019-12-26Make sure context exists in handleReplyTopicJune McEnroe
2019-12-25Inline queries, move stuff aroundJune McEnroe
No idea now why I wanted to have network bound all the time. Ended up creating a copy of the string for each statement instead of just having one like this.
2019-12-25Treat topics like motdsJune McEnroe
It's more like a cache of existing topics. events is still meant to record actual topic events.
2019-12-25Insert MOTDs into the databaseJune McEnroe
2019-12-25Insert existing topics into the databaseJune McEnroe
Not sure how to handle the 333 reply that contains the user who set the topic and the timestamp of when it was set, since they're two separate messages that aren't really easily correlated since there's no guarantee that you're even going to get a 333 at all.
2019-12-25Handle SIGINT and SIGTERMJune McEnroe
2019-12-25Only send JOIN if there are channels to joinJune McEnroe
2019-12-25Broadcast nick to user and host if they're unsetJune McEnroe
2019-12-24Handle NAMES replyJune McEnroe
2019-12-24Handle topicJune McEnroe
2019-12-24Handle quitJune McEnroe
2019-12-24It's The Big RefactorJune McEnroe
2019-12-23Actually only use a transaction for handlers that need itJune McEnroe
How did I manage that?
2019-12-23Take optional explicit path in dbFindJune McEnroe
2019-12-23Factour out verbose, dbStep+resetJune McEnroe
2019-12-18Handle NICKJune McEnroe
2019-12-18Handle JOIN, PART and KICKJune McEnroe
2019-12-18Rearrange SQL and IRC codeJune McEnroe
2019-12-18Wrap handlers in transactionsJune McEnroe
2019-12-18Rewrite litterbox statements with functionsJune McEnroe
2019-12-18Use sqlite3_bind_intJune McEnroe
2019-12-17Insert events for PRIVMSG and NOTICEJune McEnroe
2019-12-17Separate dbBindText wrappers to allow for transientJune McEnroe
2019-12-17Use parameter names for all bindsJune McEnroe
2019-12-17Handle ISUPPORTJune McEnroe
2019-12-17Implement -j joinJune McEnroe
2019-12-17Implement basic IRC connection and message parsingJune McEnroe
2019-12-16Add server-time extension to STANDARDSJune McEnroe
2019-12-16Link litterbox with -ltlsJune McEnroe
2019-12-16Move ARRAY_LEN to database.hJune McEnroe
2019-12-13Style cleanupJune McEnroe
2019-12-13Compact matcher arrays a littleJune McEnroe
2019-12-13Index network, context, nick, user, target, message in FTSJune McEnroe
This way the FTS query syntax for column filtering can be used like "network:freenode" without having to separately build a WHERE clause. The names.host column is not included since it's mostly just noise.
2019-12-13Use a macro to write SQL as C tokens without quotesJune McEnroe
This switches to using :params rather than $params only because $ is allowed in identifiers as an extension, whereas : is always a separate preprocessor token. This has the advantage that # collapses excessive whitespace but otherwise preserves formatting, so the resulting SQL query strings look pretty normal.
2019-12-13Document context inferrence in unscoopJune McEnroe
2019-12-12Infer context from input pathsJune McEnroe
This could probably use some cleanup, but it's been in-progress for a week already. Also missing documentation and examples. But this did let me import 3.5 million events from Textual logs in about 6 minutes, so that's cool.
2019-12-08Match missing final parameters in irc formatJune McEnroe
2019-12-07Add irc formatJune McEnroe
2019-12-07Stop after the first matcher to matchJune McEnroe
2019-12-06Use named parameters in unscoop matchersJune McEnroe
2019-12-06Fold networks into contextsJune McEnroe