Pragmatic Software
1b9e482396
Plugin/Wordle: refactor how wordlist is (not) reloaded
2024-08-13 00:07:13 -07:00
Pragmatic Software
ac8753f962
Plugin/Wordle: do not reload words from disk until wordlist changes; add british and urban to supp for English lists
2024-08-12 12:43:20 -07:00
Pragmatic Software
b31aa7a816
AntiAway/AntiHello: added "2nd offense" text to warning kick message
2024-08-10 14:02:58 -07:00
Pragmatic Software
de42067e28
Plugin/AntiHello: update greeting regex
2024-08-07 15:51:01 -07:00
Pragmatic Software
1986da2a4b
Plugin/AntiHello: update greeting regex
2024-08-07 15:29:17 -07:00
Pragmatic Software
dd4be2184c
Add Plugins/AntiHello to warn about stand-alone greetings in large channels
2024-08-07 14:48:05 -07:00
Pragmatic Software
e96e48562c
Plugin/WordMorph: improve start message
2024-08-03 00:00:07 -07:00
Pragmatic Software
58303f6b97
Plugin/AntiAway: unregister irc.public when unloading
2024-07-23 11:38:16 -07:00
Pragmatic Software
4cf8583a1e
Plugin/AntiAway: improve logic of temp-ban warning
2024-07-22 13:56:44 -07:00
Pragmatic Software
a0a61ff0d5
Plugin/AntiAway: monitor PRIVMSG for away nicks
2024-07-22 13:47:30 -07:00
Pragmatic Software
88518a21df
Update factoids
2024-07-11 13:54:40 -07:00
Pragmatic Software
6ac157d42d
applets/c2english: make some rules more aware of expressions
2024-07-10 12:46:56 -07:00
Pragmatic Software
c1847efc35
applets/wiktionary: remove pluralization of parts of speech
2024-06-29 12:04:37 -07:00
Pragmatic Software
ff31d71024
applets/wiktionary: add part of speech filter option
2024-06-29 11:33:11 -07:00
Pragmatic Software
dfd56aed57
Plugin/AntiRepeat: increase min length to allow "thanks"/"thank you"
2024-06-28 18:51:37 -07:00
Pragmatic Software
6722fd7f8d
Store user passwords as salted hash digests
...
This was way overdue. User passwords are no longer stored as cleartext.
When PBot is restarted after applying this commit, all stored passwords will
be converted to salted hash digests.
The `useradd`, `userset` and `my` commands will now hash passwords.
Why did it take me so long to finally get around to hashing passwords
properly, you might ask. The reason why this wasn't done sooner is because
all of my users used hostmask-based `autologin`. The passwords that PBot
randomly generated were ignored and never used.
I do regret that it took me so long to get around to this, for those of you
who might be using custom passwords instead of hostmask-based `autologin`.
2024-06-22 22:38:15 -07:00
Pragmatic Software
784c2508e5
c2english/CGrammar: fix translation of [static n]
in array parameters
2024-06-12 14:22:26 -07:00
Pragmatic Software
0786ee03a3
applets/wiktionary.pl: show disambiguation when word is not found
...
Requires latest version of https://github.com/pragma-/WiktionaryParser
2024-06-08 14:24:20 -07:00
Pragmatic Software
da75397b51
applets/wiktionary.pl: show list of languages when entry is not found
...
Requires latest version of https://github.com/pragma-/WiktionaryParser
2024-06-08 09:12:20 -07:00
Pragmatic Software
9b1687d46c
applets/wiktionary.pl: add error-checking
2024-06-08 07:24:50 -07:00
Pragmatic Software
04209e4b7e
Interpreter: restore preserve_escapes in make_args() to fix sed
...
Update factoids
2024-06-03 09:07:53 -07:00
Pragmatic Software
80f9ea1acd
Interpreter: escaped spaces behave better
2024-05-26 17:44:59 -07:00
Pragmatic Software
c6e1da1706
Plugin/Wordle: preserve correct letters in list; add american-uncommon
2024-05-16 13:33:10 -07:00
Pragmatic Software
c62b6b9a75
Functions: fix help
function signature
2024-05-09 16:10:06 -07:00
Pragmatic Software
40aa37bc7c
Plugin/Wordle: Wordle improvements
...
- refactor `wordlists` into structure with more details
- added `name` field for language names
- added `prompt` field for localized "Guess the word!" prompt
- added `supp` field for supplemental wordlists
(used to add words to list for guessing, e.g. urban with insane supplement
allows initial word selection from urban list and then adds words from
insane list for more options for guessing)
- moved accents into added `accents` field
- added `min_length` and `max_length` fields for lists that are different
from default lengths
- misc minor adjustments
2024-04-29 03:15:05 -07:00
Pragmatic Software
8e3652bc8e
pbot-vm: gdb() needs __asm__() instead of asm()
2024-04-17 00:37:36 -07:00
Pragmatic Software
ddeeb5da0f
pbot-vm: update de-optimization for gdb() function
2024-04-16 23:41:37 -07:00
Pragmatic Software
e4cb6ceff6
pbot-vm: simplify network
script slightly
2024-04-12 13:12:41 -07:00
Pragmatic Software
111f3bd2e7
pbot-vm: consolidate network enable/disable into one script
2024-04-12 13:07:27 -07:00
Pragmatic Software
cc1445be90
Update applets/cdecl.pl command and add cdecl to Dockerfile
2024-04-10 13:32:16 -07:00
Pragmatic Software
e25bde159f
pbot-vm: ignore -health and -revert used simultaneously to prevent double-revert
2024-04-10 12:53:37 -07:00
Pragmatic Software
17b69f04ff
pbot-vm: massive refactor
...
* replace heartbeat with health-check
* instead of steady stream of newlines every 5s, now awaits input
and responds with `vmstat` output
* more reliably use host/config/vm-exec.json to get libvirt domain name
for snapshot-revert, server address, serial ports, vagrant setting, etc
* use iptables/nftables to disable networking
* added guest/bin/disable-network-[iptables,nftables]
* added guest/bin/enable-network-[iptables,nftables]
* replace ugly ___OUTPUT___ texts in sh, bash, ksh, zsh languages
* documentation updates and tweaks
2024-04-10 01:21:18 -07:00
Pragmatic Software
5d3f188a09
Multiple bugfixes
...
* obtain bot nick from connection details instead of registry where appropriate
* irc.random_nick works again
* record own hostmask when connecting
* fix web-paste truncation by subtracting length of own hostmask from message length
* set irc.max_msg_len back to 510
* updated IRC numeric 378 to whoishost
* add sprunge.us to WebPaste
2024-04-07 20:55:04 -07:00
Pragmatic Software
2547f035a1
pbot-vm: add experimental Vagrant provisioning
2024-04-04 03:41:58 -07:00
Pragmatic Software
09aed30893
pbot-vm: add PBOTVM_ADDR env var to set address of vm-server
2024-03-31 17:36:36 -07:00
Pragmatic Software
4df50dc340
Docker/README.md: add section headers
2024-03-31 15:23:30 -07:00
Pragmatic Software
446857ffbf
pbot-vm: provision non-interactively
2024-03-30 20:48:45 -07:00
Pragmatic Software
0829265ef8
pbot-vm: setup-guest
auto-detects OS/distro and runs provisioning scripts
2024-03-30 19:41:50 -07:00
Pragmatic Software
91f8547aed
pbot-vm: add Tumbleweed orchestration script
...
Fix Java language missing `/bin/sh` in execute()
Update brainfck language to use `bff`
2024-03-30 16:49:09 -07:00
Pragmatic Software
f8a739a688
doc/VirtualMachine.md: fix typo
2024-03-27 14:35:21 -07:00
Pragmatic Software
59090b39e7
pbot-vm: update VirtualMachine.md with improved PTY console install instructions and misc tweaks
2024-03-27 14:21:32 -07:00
Pragmatic Software
5c185486e8
Plugin/Wordle: removed unidecode normalization; added Finnish
2024-03-17 21:08:50 -07:00
Pragmatic Software
51fb92bc39
Plugin/Wordle: add Polish wordlist
2024-03-17 18:39:09 -07:00
Pragmatic Software
8970978444
data/wordle: update German words to modern dialect
2024-03-16 19:43:50 -07:00
Pragmatic Software
a67a4078e4
Update cpanfile
2024-03-16 17:32:37 -07:00
Pragmatic Software
753773f06b
Plugin/Wordle: add accented words and German nouns
...
Accented words will be unidecoded to Latin letters so letter list remains A-Z.
German words will include proper nouns since I had no easy way to distinguish
them from regular nouns.
2024-03-16 17:29:09 -07:00
Pragmatic Software
348465b034
data/commands: add preserve_whitespace to wordle
...
Plugin/Wordle: remove debug message
2024-03-16 16:31:29 -07:00
Pragmatic Software
bde06990fe
Plugin/Wordle: colorize ouput and add wordlists
2024-03-16 16:14:07 -07:00
Pragmatic Software
c62b4d1c35
Imports: disable deprecation warnings
...
I will be monitoring deprecations and will update PBot as necessary.
2024-03-15 02:48:17 -07:00
Pragmatic Software
19f53cde10
applets/lookupbot.pl: remove -T taint mode (breaks local::lib)
2024-03-10 12:34:42 -07:00
Pragmatic Software
5d3507421e
Plugin/Wordle: fix not detecting duplicate letters
2024-03-09 20:29:25 -08:00
Pragmatic Software
26a2b36122
Plugin/UrlTitles: improve logic of show_url_titles
2024-03-09 19:37:17 -08:00
Pragmatic Software
fa29212bc3
Plugin/Wordle: add ability to start custom Wordles
2024-03-07 15:59:46 -08:00
Pragmatic Software
e251ccb7a1
Plugin/Wordle: misc improvements:
...
* remove initial "? ? ? ? ?" text after first guess
* show count of guesses when solved
* remove "Wordle: " text
2024-03-07 10:20:53 -08:00
Pragmatic Software
d8a67ae0c5
Plugin/Wordle: silence uninitialized warning
2024-03-07 09:09:59 -08:00
Pragmatic Software
440a72c71e
Plugin/Wordle: minor refactor
2024-03-07 08:59:41 -08:00
Pragmatic Software
435faaa18c
Add Wordle plugin; update games section of README
2024-03-07 03:17:07 -08:00
Pragmatic Software
7d3cd3f215
Plugin/Spinach: fix subroutine signatures
2024-03-06 15:07:09 -08:00
Pragmatic Software
1cb6a114b8
Plugin/Battleship: fix bomb input constraints
...
Players who have been removed or have lost can no longer attack.
Fix attack range checks.
2024-03-05 22:00:55 -08:00
Pragmatic Software
4b5e3d0d41
Plugin/Battleship: fix show_battlefield() sub signature
2024-03-05 21:01:32 -08:00
Pragmatic Software
d4880854db
Plugin/WordMorph: add search subcommand to find words by regex
2024-02-22 18:56:52 -08:00
Pragmatic Software
eb5b1540d5
Plugins/WordMorph: custom
optionally accepts number of steps instead of second word
2024-01-26 19:01:42 -08:00
Pragmatic Software
7347fef521
EventQueue: minor whitespace correction
2023-11-14 10:44:43 -08:00
Pragmatic Software
7b69980eff
Plugin/Plang: update output_value() to accept scope argument
2023-11-09 20:42:20 -08:00
Pragmatic Software
451c6ace2e
Plugin/Connect4: make send_message() delay argument optional
2023-09-28 13:28:23 -07:00
Pragmatic Software
2096df16d6
Factoids: process regex factoids when implicitly invoked
2023-09-24 11:24:20 -07:00
Pragmatic Software
5ffde32d46
Factoids: disregard error messages when not explicitly invoked
2023-09-23 13:52:10 -07:00
Pragmatic Software
53e990bd32
applets/c2english: correct order of pointers in direct abstract declarators
2023-09-21 17:33:33 -07:00
Pragmatic Software
eb301ea948
applets/c2english: fix switch case labels
2023-09-21 16:53:21 -07:00
Pragmatic Software
fe3e7c80cb
Interpreter: disallow /msg from vm-client
2023-08-19 16:36:26 -07:00
Pragmatic Software
64b4d8a53c
Handlers/Server: fix constant look-up (was previously moved from hash to constant)
2023-07-30 16:46:04 -07:00
Pragmatic Software
d4cc3bf7f2
Plugin/ActionTrigger: handle QUIT triggers per-channel
2023-07-19 00:23:54 -07:00
Pragmatic Software
58ac29c4db
Plugin/UrlTitles: add title to "ignored title" log message
2023-06-13 23:22:43 -07:00
Pragmatic Software
bfa08ee8d6
Plugin/UrlTitles: add logging to reveal why some URLs are disregarded
2023-06-13 23:19:21 -07:00
Pragmatic Software
f3ad345340
Core/Interpreter: require whitespace in front of bot name for suffix-trigger
2023-05-21 16:16:06 -07:00
Pragmatic Software
8934936658
Perform anti-flood checking on NOTICEs to channels
2023-05-14 15:56:17 -07:00
Pragmatic Software
48daaa91ca
Core/Handlers: Do not auto-reply to NOTICEs
2023-05-14 15:38:51 -07:00
Pragmatic Software
2b36286c22
Interpreter: extract_bracketed: missed a state change
2023-05-11 11:02:16 -07:00
Pragmatic Software
bc05915905
Interpreter: improve parsing of embedded commands
2023-05-11 08:08:38 -07:00
Pragmatic Software
bd6af472e8
Interpreter: remove left-over malformed section
2023-05-11 06:08:26 -07:00
Pragmatic Software
329c8db33c
Factoids: fix factrem
/forget
...
Somehow I missed the `remove()` subroutine when converting
to subroutine signatures...
2023-05-07 13:47:25 -07:00
Pragmatic Software
15d7abf5ec
Plugin/RunCommand: fix subroutine argument
2023-05-05 12:28:36 -07:00
Pragmatic Software
1bb5fe031d
Use quietlist when setting mutes
2023-05-04 16:30:35 -07:00
Pragmatic Software
b04c06f396
Refactor ban/unmute commands
2023-05-04 16:03:24 -07:00
Pragmatic Software
c9112ac809
applets/date.sh: posix directory no longer exists on current distro
2023-05-04 12:19:22 -07:00
Pragmatic Software
06650963a3
applets/pbot-vm: increase length to trigger "Same output"
2023-04-28 00:48:37 -07:00
Pragmatic Software
8555e8f00e
Core/BanList: correct ban_user() arguments
2023-04-28 00:46:22 -07:00
Pragmatic Software
2c3f8fb9fe
Fix some inconsistent arguments
2023-04-21 15:56:43 -07:00
Pragmatic Software
cfaa5cfd4e
Fix inconsistent argument
2023-04-17 13:04:10 -07:00
Pragmatic Software
860a6be156
Fix some inconsistent arguments
2023-04-17 10:33:02 -07:00
Pragmatic Software
7ddb32ea16
Update core to use subroutine signatures
2023-04-13 21:04:12 -07:00
Pragmatic Software
c6db4b1e6b
Update plugins to use subroutine signatures
2023-04-13 17:08:27 -07:00
Pragmatic Software
cd60ac9fc7
Update plugins to use subroutine signatures
2023-04-13 17:01:23 -07:00
Pragmatic Software
afd07bcd57
Bump minimum Perl version to 5.20 for signatures feature
2023-04-13 11:37:39 -07:00
Pragmatic Software
3180d11303
Plugin/Quotegrabs: polish Storage/SQLite.pm a bit
2023-04-13 11:21:30 -07:00
Pragmatic Software
cdbbf9c183
Plugin/Quotegrabs: minor clean-up of previous commit
2023-04-10 10:46:43 -07:00
Pragmatic Software
8bf243a9fd
Plugin/Quotegrabs: rq
now "shuffles" through quotes without repeats
2023-04-10 08:06:35 -07:00
Pragmatic Software
d8b19eff68
Plugin/Quotegrabs: rq
now properly searches multi-grabs
2023-03-30 06:33:33 -07:00
Pragmatic Software
640f866829
applets/unicode.pl: limit U+XXXX..U+XXXX
range to 100 characters
2023-03-23 18:20:22 -07:00
Pragmatic Software
3340589207
applets/unicode.pl: keep newlines for pasting; increase search limit
2023-03-23 17:56:40 -07:00