3
0
mirror of https://github.com/pragma-/pbot.git synced 2025-10-13 22:47:26 +02:00

4905 Commits

Author SHA1 Message Date
Pragmatic Software
a3c0f616fb
LagChecker: send another ping if no pong received after 15 minutes 2025-10-11 09:39:12 -07:00
Pragmatic Software
e035745860
Fix jaasolve factoid 2025-10-08 12:18:36 -07:00
Pragmatic Software
6e3813cb78
Remove absolute path reference to ~/pbot 2025-10-08 12:18:17 -07:00
Pragmatic Software
0c00585e4a
Update factoids 2025-10-05 06:34:27 -07:00
Pragmatic Software
7f2736a604
Plugin/FuncBuiltins: add length function 2025-10-05 06:34:04 -07:00
Pragmatic Software
483a782021
applets/pbot-vm: restore VSOCK functionality
- restore ability to execute VM commands concurrently via VSOCK
- add PID to log messages and truncate overly long messages
2025-10-05 06:22:44 -07:00
Pragmatic Software
891baed35f
Update qrpn submodule 2025-09-29 10:27:35 -07:00
Pragmatic Software
3606aa8cc5
applets/pbot-vm: Improve input to VM
- use JSONL encoding for input (use \n instead of 🔚)
- split VM input into 4k byte chunks to prevent truncation due to
  4096 byte line limitation
- produce error message instead of timing out when guest fails to
  parse input JSON
- minor refactoring of info/debug logging
2025-09-28 07:00:38 -07:00
Pragmatic Software
99c9c3b262
Update factoids 2025-09-25 15:39:09 -07:00
Pragmatic Software
f54efb0864
Improve LagChecker
- wait until fully connected (irc.welcome) before sending PING
- do not send another PING until PONG is received

These changes prevent the bot from sending multiple PINGs when the
ircd is heavily lagging. The multiple PINGs would queue up and then
get sent all at once when the ircd unlagged, potentially causing an
excess-flood disconnection.
2025-09-25 15:04:21 -07:00
Pragmatic Software
3219c3d008
Improve code-factoids
- now processes command substitutions, pipes, and splits
- indentation and newlines preserved
2025-09-25 01:14:10 -07:00
Pragmatic Software
8f1ac5b5ba
Factoids: variable expansions update ref-count and last-referenced 2025-09-25 01:03:17 -07:00
Pragmatic Software
bda93505f3
WebPaste: no longer split long lines 2025-09-24 10:56:32 -07:00
Pragmatic Software
49b926c372
Commands/Factoids: factchange handles newlines; factadd $0-data exempted from recursion limit 2025-09-24 10:54:40 -07:00
Pragmatic Software
fe31b630e9
applets/pbot-vm: Multiple improvements
- host/lib/SplitLine: preserve \t tabs
- host/lib/InteractiveEdit: encode history as JSON to preserve newlines
- host/lib/Languages/_default: strip joined space following newlines
2025-09-24 10:50:25 -07:00
Pragmatic Software
091f6b101e
Plugin/Wordle: hard now shows whether hard mode was already enabled/disabled 2025-09-14 07:57:45 -07:00
Pragmatic Software
2011275f27
Quotegrabs/Storage: remove unused import 2025-09-04 10:30:31 -07:00
Pragmatic Software
0fb4cd7fa7
Plugin/ActionTrigger: enable triggering on bot messages 2025-09-04 10:29:29 -07:00
Pragmatic Software
cdef9e5fe8
Core/IRC/Connection: dispatch pbot.public/pbot.caction events for bot messages 2025-09-04 10:27:57 -07:00
Pragmatic Software
6147a5afc7
Plugin/Wordle: add solved duration 2025-09-04 10:26:53 -07:00
Pragmatic Software
3d7a98b611
Plugin/AntiHello: remove initial ban warning 2025-09-04 10:26:02 -07:00
Pragmatic Software
9cf4b18538
Factoids: Restrict recursion depth for commands that modify factoids (factadd, factchange, etc) 2025-09-04 10:24:55 -07:00
Pragmatic Software
0ecdcc1bf5
Update factoids 2025-08-25 09:59:18 -07:00
Pragmatic Software
4e69444be0
Core/Interpreter: process cmd-pipes at correct stack-depth 2025-08-25 06:19:17 -07:00
Pragmatic Software
55831b3d4a
applets/trans: make Bing default engine; misc improvements 2025-08-25 04:36:02 -07:00
Pragmatic Software
8fdd51bc9a
Core/Interpreter: simplify ref_from 2025-07-30 15:51:09 -07:00
Pragmatic Software
d5aa7f9e41
Core/Interpreter: improve command splitting and substitutions 2025-07-29 13:39:11 -07:00
Pragmatic Software
27db494f85
applets/cdecl.pl: show usage when command is invalid 2025-07-20 07:39:20 -07:00
Pragmatic Software
675a723d57
applets/trans.pl: improve options parsing 2025-07-20 05:57:12 -07:00
Pragmatic Software
9d29336cb2
applets/qalc.pl: make qalc safe 2025-07-20 00:58:37 -07:00
Pragmatic Software
4582e225e5
applets/trans.pl: whitelist allowed options 2025-07-19 12:24:31 -07:00
Pragmatic Software
66ce01a0c3
applets/trans.pl: restrict allowed options 2025-07-19 09:18:45 -07:00
Pragmatic Software
cff8d5fe70
Plugin/Wordle: display hard-mode status in info 2025-07-19 08:55:21 -07:00
Pragmatic Software
8752349210
applets/trans.pl: disallow -pager 2025-07-19 08:54:38 -07:00
Pragmatic Software
4525cb95d1
Plugin/Worlde: track nonword and invalid guesses 2025-07-08 22:41:19 -07:00
ilmari-lauhakangas
fa36d8c480
FuncBuiltins: fix maybe-on usage instructions (#76) 2025-07-02 15:58:20 -07:00
Pragmatic Software
30ac705d99
Plugin/Wordle: fix hard mode minimum letter requirements; test hard mode validation before word existence check; replace "is not" with "can't be" 2025-07-02 14:45:25 -07:00
Pragmatic Software
b61dbe17c6
Plugin/Wordle: add toggleable hard mode 2025-06-26 23:21:48 -07:00
Pragmatic Software
5c24e5f17d
applets/gencstd: minor tweak to instructions 2024-12-14 15:12:14 -08:00
Pragmatic Software
411f0ebbd8
Update C23 to N3220
Closes #75
2024-12-14 14:58:10 -08:00
Pragmatic Software
722408d95e
Factoids: rename top20 to top50 and add "referenced" subcommand 2024-11-30 16:47:13 -08:00
Pragmatic Software
4162c06fe4
Commands/ChanOp: silly kick-message shenanigans 2024-11-30 16:40:33 -08:00
Pragmatic Software
f172563fdc
Utils/SQLiteLogger: update log() to use subroutine signatures 2024-11-30 16:26:52 -08:00
Pragmatic Software
0a81203cc9
Update factoids 2024-11-30 11:35:22 -08:00
Pragmatic Software
80bc79cfbc
Plugin/Wordle: always have last word/guess in info 2024-11-27 16:51:02 -08:00
Pragmatic Software
6ba8776c2c
Plugin/Wordle: keep game state after giveup 2024-11-27 16:15:09 -08:00
Pragmatic Software
001f2024c4
Factoids: add default value modifier
Uses POSIX shell parameter expansion syntax.

    <pragma-> !factadd cookie /me gives a cookie to ${args:-nobody. What a shame}!
       <PBot> cookie added to the global channel.

    <pragma-> !cookie Bob
            * PBot gives a cookie to Bob!

    <pragma-> !cookie
            * PBot gives a cookie to nobody. What a shame!

    <pragma-> !factadd sum /call calc $arg[0]:-1 + $arg[1]:-2
       <PBot> sum added to the global channel.

    <pragma-> !sum
       <PBot> 1 + 2 = 3

    <pragma-> !sum 3
       <PBot> 3 + 2 = 5

    <pragma-> !sum 4 6
       <PBot> 4 + 6 = 10
2024-11-27 12:17:45 -08:00
Pragmatic Software
917cae2ffb
Plugin/Spinach: fix players exit game on /part and /quit 2024-11-22 03:17:39 -08:00
Pragmatic Software
7a7730d039
Interpreter: improve processing of embedded and split commands 2024-11-21 20:31:28 -08:00
Pragmatic Software
bea5aa071b
Plugin/Spinach: improve lie count log 2024-11-21 20:28:50 -08:00