Commit Graph

  • ed3b582aad Matrix SDK isn't MIT anymore. projectmoon 2021-05-26 22:35:12 +0000
  • 49db0062a3 Various improvements to bot responses. - Do not display username pill with quoted HTML replies. - Do not attempt to create matrix.to link in plain text replies. - Move plain text formatting responsibility outside of matrix send_message function. projectmoon 2021-05-26 22:20:53 +0000
  • 4ae871224a Remove ExecutionError, as it is unnecessary. projectmoon 2021-05-26 21:25:32 +0000
  • 1ebd13e912 Change execution_allowed to a match for shorter reading. projectmoon 2021-05-26 21:12:21 +0000
  • 8f5b6f0636 Replace db query with simple in-memory check of if account already exists. projectmoon 2021-05-26 21:04:53 +0000
  • 5b3d174edc Separate registering and linking accounts. projectmoon 2021-05-26 15:28:59 +0000
  • 495df13fe6 Do not automatically create accounts; use enum to show this instead. projectmoon 2021-05-26 13:56:14 +0000
  • de92fc8488 Remove nested <p> tags in error messages. projectmoon 2021-05-26 07:06:00 +0000
  • b05129ad9f Localize all command parsing code into trait impls. projectmoon 2021-05-25 23:54:06 +0000
  • 5d002e5063 Add ability to store user active room, with skeleton accounts. - Adds a user_state table, currently only with active_room. - A user must have an account to take advantage of state. - Now, all users will get an 'account' even if they don't explicitly register. - Bonus: converts user queries to compile-time checked macros. projectmoon 2021-05-25 15:05:35 +0000
  • 849a1b6a14 Remove most of Room DB API state-revamp projectmoon 2021-05-24 22:25:20 +0000
  • 97be5d5ccb Add migration to remove room state management tables. projectmoon 2021-05-24 22:10:41 +0000
  • 395753e8a9 Remove room state mgmt; let matrix SDK do it on-demand instead. projectmoon 2021-05-24 21:32:00 +0000
  • df0248d99a More useful account registration message. projectmoon 2021-05-23 13:58:58 +0000
  • 76214bc790 Add an account deletion command. projectmoon 2021-05-22 23:12:17 +0000
  • 921c4cd644 Update sqlx offline json for user query. projectmoon 2021-05-22 22:53:01 +0000
  • 8c2a90e86b Tests for secure commands and user DB API. projectmoon 2021-05-22 22:48:47 +0000
  • 926dae57fb Add check password command. projectmoon 2021-05-22 22:25:00 +0000
  • 4557498ac6 Improved command logging, sensitive to secure commands. projectmoon 2021-05-22 22:17:33 +0000
  • ca34841d86 Functional user account registration. projectmoon 2021-05-22 14:52:32 +0000
  • c1ec7366e4 Add user accounts, registration command, secure command valiation. projectmoon 2021-05-21 22:33:49 +0000
  • a84d4fd869 Make command parsing case insensitive. projectmoon 2021-05-21 22:40:03 +0000
  • 34ee2c6e5d Consider command execution secure when proper conditions are met. - If the room is end-to-end encrypted. - If only the sending user and the bot are present in the room. projectmoon 2021-05-21 22:01:52 +0000
  • 9de74d05a9 Add an is_secure attribute for commands. projectmoon 2021-05-21 15:32:08 +0000
  • 5643677627 Consolidate dice and variable parsers under parser module. v0.11.0 projectmoon 2021-05-21 14:44:03 +0000
  • de63fd914e Move commands.rs to commands/mod.rs; move migrate_cli.rs. projectmoon 2021-05-21 14:35:56 +0000
  • e73ad118b2 Move some declaration-only modules to mod.rs files in folders. projectmoon 2021-05-21 14:30:46 +0000
  • 3d5cda39c8 Consolidate dice module into logic module. projectmoon 2021-05-21 14:26:58 +0000
  • 402f236ba7 Remove sled and all related crates from dependencies. projectmoon 2021-05-21 14:21:22 +0000
  • 059538b95d Remove remaining warnings. projectmoon 2021-05-21 14:14:03 +0000
  • 4de273db4a Remove sled code; promote sql to top level projectmoon 2021-05-21 14:05:25 +0000
  • a33367fada Update dependencies to fix matrix SDK list users bug. projectmoon 2021-05-20 15:40:52 +0000
  • 5630b4ed20 Add sled migration utility. sqlite projectmoon 2021-05-20 15:30:44 +0000
  • 6b6be06c89 Update sqlx offline json. projectmoon 2021-05-19 21:36:16 +0000
  • a3b39ee42c Use ON CONFLICT and transactions where appropriate. projectmoon 2021-05-19 21:34:11 +0000
  • 7eee16961e Add tests for dbstate. projectmoon 2021-05-19 21:16:39 +0000
  • 43d8f9574f Allow 'upserts' in insert_room_info. Add a few more room db tests. projectmoon 2021-05-19 21:06:28 +0000
  • 1c4cd3d139 Add tests for rooms db API projectmoon 2021-05-18 22:15:03 +0000
  • d1c04b8817 Tests for all of the variables DB api. projectmoon 2021-05-18 21:39:48 +0000
  • 5e899cd962 Return key not found error if value not found for user. projectmoon 2021-05-18 15:37:20 +0000
  • 257f3a066c Some user variable tests. projectmoon 2021-05-18 15:17:30 +0000
  • e539dcac1f Move migrations to sqlite directory. Remove in-memory temp db until refinery supports sqlx. projectmoon 2021-05-18 14:50:49 +0000
  • 9f97a6cb43 Implement variable count; fix listing all variables returning values for all users. projectmoon 2021-05-18 14:27:15 +0000
  • a665293268 Fix recording of room users, better logging. - Fix constraint violations when recording users in rooms (migration fix). - Switched to tracing_subscriber to get log events from matrix SDK. - Remove "Applying migration" messages, and rely on refinery to log instead. - Log when an outgoing error is encountered. projectmoon 2021-05-17 23:12:27 +0000
  • 66fb6e7cf8 Fix various issues with room events and related logic. - Processing events multiple times when re-joining rooms. - Always thinking we've not processed an event/constraint violations (arguments were reversed in record_event). - Not handling errors when fetchin users in a room, and instead just suppressing them. Now, we handle errors! - Also update dependencies (attempt to fix ID too big bug, but no fix). projectmoon 2021-05-16 22:22:06 +0000
  • bfc5609ab6 Add proper constraints to db tables. Report errors when listing users. projectmoon 2021-05-16 21:39:19 +0000
  • 9798821b7b Implement room and dbstate for sqlite. projectmoon 2021-05-16 14:17:03 +0000
  • cf9ce63892 Replace application-level database connectivity. - Some database methods not yet implemented. - Unit tests create temp files that are not cleaned up (but they should be). projectmoon 2021-05-15 23:45:26 +0000
  • 6b6e59da2e Initial SQLx implementation (variables). not yet wired up to bot. - Adds migrations for the necessary tables. - Implements the user variables database functions. - Adds sqlx metadata for 'offline' use so we can build without a database. projectmoon 2021-05-15 15:27:40 +0000
  • b1972e2850 Update dependencies. projectmoon 2021-05-14 22:53:10 +0000
  • 49d4ae3037 Update names and links in readme. projectmoon 2021-05-14 22:42:14 +0000
  • ffda24833e Fix build badge after rename. projectmoon 2021-05-14 22:39:53 +0000
  • 9446435843 Version 0.10.0. v0.10.0 projectmoon 2021-05-14 22:27:57 +0000
  • b894fb83db Update binary entrypoint crate imports after rename. projectmoon 2021-05-14 22:25:09 +0000
  • 30f800eb4a Relicense to AGPL, change project name. projectmoon 2021-05-14 22:07:16 +0000
  • e553472b7a Update readme for user variables regarding Call Of Cthulhu. projectmoon 2021-05-13 22:35:08 +0000
  • 2096af2512 Show username pill when executing multiple commands. projectmoon 2021-05-13 22:31:38 +0000
  • 490d17790a Add a few more aliases for cthulhu advancement rolls. projectmoon 2021-05-13 22:12:47 +0000
  • 38fbef4101 Update help; add call of cthulhu. projectmoon 2021-05-13 21:47:35 +0000
  • 0396911c56 Remove extraneous <p> tags in dice roll outputs. projectmoon 2021-05-13 21:29:44 +0000
  • c4e0393d99 Update variables on advancement rolls. projectmoon 2021-05-13 20:52:01 +0000
  • d67328ac6b Cthulhu dice only take one amount now projectmoon 2021-05-13 20:24:17 +0000
  • ec66bfa3d6 Add parse_single_amount projectmoon 2021-05-13 20:06:37 +0000
  • 8939d6debd Update dependencies. projectmoon 2021-05-13 19:48:29 +0000
  • 0f35c1932b Merge pull request 'Update to Rust 1.51' (#57) from rust-1.51 into master projectmoon 2021-04-24 19:42:31 +0000
  • 7a506bdc4f Update drone to 1.51 rust-1.51 projectmoon 2021-04-20 21:39:08 +0000
  • b62359c172 Update to rust 1.51 with rustup, for zeroconf 0.4 which requires const generics. projectmoon 2021-04-20 21:35:12 +0000
  • 8d1a1a5ca6 Update dependencies. projectmoon 2021-04-20 21:19:47 +0000
  • 119321e01a Update dependencies. projectmoon 2021-04-02 16:07:15 +0000
  • ba6a4c9679 Update matrix SDK to latest with Room enum 2.0 projectmoon 2021-03-22 15:01:49 +0000
  • e5431a587d Support complex expressions on CoC advancement rolls. (#55) projectmoon 2021-03-18 20:54:49 +0000
  • 5a8e40181e Remove todo, update some CoC command descriptions. cthulhu-advancement-variables projectmoon 2021-03-18 20:15:15 +0000
  • a0429d1116 Support complex expressions on CoC advancement rolls. projectmoon 2021-03-15 20:56:14 +0000
  • 0821cf2bf5 Change to OpenSSL from LibreSSL. projectmoon 2021-03-18 19:40:11 +0000
  • 85557c0382 Split handling of comand results from execution. projectmoon 2021-03-15 20:27:57 +0000
  • d30d39ff1e Only consume max allowed commands + 1 when dealing with multiple commands projectmoon 2021-03-15 20:13:27 +0000
  • 8e4eb574d2 Update to latest matrix SDK and other dependencies. projectmoon 2021-03-15 20:10:42 +0000
  • 67291e6deb Switch to Duration::from_secs, because we don't need nanos. projectmoon 2021-02-10 20:30:17 +0000
  • 7e23f80e42 Get user list: replace format! with direct string conversion. projectmoon 2021-02-10 20:18:47 +0000
  • d813198cb0 Reply with executed command as quote (single commands only). projectmoon 2021-02-09 22:22:09 +0000
  • 693167a581 Log when we are performing initial sync. projectmoon 2021-02-09 21:59:32 +0000
  • 9ab65b8943 Update env_logger, rand, phf, itertools to newer semvers. projectmoon 2021-02-09 21:55:24 +0000
  • 8817cae9da Update dependencies. Should partially address rate limiting. projectmoon 2021-02-09 21:27:11 +0000
  • ef4f1ef02f Small code cleanup in matrix.rs projectmoon 2021-02-08 20:14:11 +0000
  • d42e075c5c Update dependencies. projectmoon 2021-02-07 21:58:22 +0000
  • b0707dff05 bot: Move multi-failure response join() call into the format!(). projectmoon 2021-02-07 21:42:32 +0000
  • 304c91c69d Rename CommandResult to ExecutionResult projectmoon 2021-02-07 21:39:21 +0000
  • 94be4d2578 Avoid key clone when deleting variables. Minor db code cleanup. projectmoon 2021-02-07 21:16:58 +0000
  • 14f8bc8b39 Reuse device ID generated by matrix SDK after first login. projectmoon 2021-02-07 14:21:28 +0000
  • 7db639f16c Update cargo.lock for 0.9.0 projectmoon 2021-02-07 14:21:21 +0000
  • b3cd7266e4 Version 0.9.0. Bug fix release. - Properly reject large numbers outside bounds of i32 when rolling dice. - Avoid unnecessary clone of error message when calculating dice amounts. - Allow up to 50 commands to be executed per message. - Show failed commands with errors when executing multiple commands. - Properly format dice plurality when rolling CofD dice pools. - Use 'username pills' instead of raw user ID in response messages. - Update matrix SDK to latest. - General code reorganization for better maintainability. v0.9.0 projectmoon 2021-02-04 19:37:22 +0000
  • 12b7d355d2 Docker image is 'tiny', not 'glibc-tiny'. Update to 0.8.0. projectmoon 2021-02-04 18:56:15 +0000
  • 3c177dc304 Always point to glibc-tiny, not glibc. projectmoon 2021-02-03 23:33:59 +0000
  • f6099c657e Always point to glibc image for Docker build. projectmoon 2021-02-03 23:32:45 +0000
  • 932e06ad91 Fix database error name. Improve dice number conversion error message. projectmoon 2021-02-03 23:26:41 +0000
  • b7ccd4e7ad Refactor dice amount parser to reusable parsers. projectmoon 2021-02-03 23:21:37 +0000
  • b32b761f82 Update combine and dependencies. projectmoon 2021-02-03 23:05:11 +0000
  • 9a5a18268c Parsing huge numbers are now errors, not variables. projectmoon 2021-02-03 22:55:29 +0000
  • f5a8e16ce0 Slight refactor of calculate_dice_amount. Lazy error handling. projectmoon 2021-02-02 22:02:43 +0000
  • 7512ca0694 Allow up to 50 commands per message. projectmoon 2021-02-02 21:41:16 +0000