Pragmatic Software
88dc009ae7
C Jeopardy: Show correct typographical case for answers
2014-07-29 19:00:06 +00:00
Pragmatic Software
d49700d1e1
C Jeopardy: Add hint command to slowly reveal answer when stumped
2014-07-29 17:30:12 +00:00
Pragmatic Software
2d0a490ed2
C Jeopardy: Fix minor inconsequential typo
2014-07-28 16:28:11 +00:00
Pragmatic Software
00fd1eee89
C Jeopardy: Update question data with additional acceptable answers
2014-07-28 15:56:13 +00:00
Pragmatic Software
9978f0c793
C Jeopardy: Add shuffler to preventing repeating questions
2014-07-28 15:25:54 +00:00
Pragmatic Software
1f8445d3bc
C Jeopardy: Add time-limit to cjeopardy
command. The current question will be shown if within this time-limit, otherwise a new question is shown
2014-07-28 07:45:05 +00:00
Pragmatic Software
4b2abf316f
Add C Jeopardy module
2014-07-28 04:29:05 +00:00
Pragmatic Software
cf63d9d46a
compiler_vm: maintain original ordering of statements before, after and between functions instead of shoving everything to the top or into main
2014-07-23 21:27:09 +00:00
Pragmatic Software
491b4243ad
More clean-up of C facts
2014-07-23 20:16:10 +00:00
Pragmatic Software
d266e04284
More clean-up of C facts
2014-07-22 09:45:36 +00:00
Pragmatic Software
978c6b1f9d
Fix typo in C facts: simple
-> simply
2014-07-22 03:10:10 +00:00
Pragmatic Software
c04896aa32
Fix up a couple more C facts misparses
2014-07-22 03:08:56 +00:00
Pragmatic Software
d90c845a3b
Clean-up some misparsed C facts
2014-07-22 02:14:44 +00:00
Pragmatic Software
bcf76471c8
Add cfact
module
2014-07-22 01:46:16 +00:00
Pragmatic Software
da7a827c01
CGrammar: Add "result of the expression" to assignment expressions with spaces; remove extraneous trailing "Do nothing"
2014-07-21 21:27:22 +00:00
Pragmatic Software
de375e63a1
CGrammar: Add _Generic; fix issue with compound-literals
2014-07-21 07:11:11 +00:00
Pragmatic Software
fd89a4d0f4
CGrammar: Correct placement of "to" in conditional operator; restore "Begin block" and "End block" for nested compound statements
2014-07-18 03:52:16 +00:00
Pragmatic Software
3e47f6bc58
CGrammar: Emit "Do nothing" for empty case statements
2014-07-18 00:39:06 +00:00
Pragmatic Software
7f293450ef
CGrammar: Fix for loop init and break statement
2014-07-17 19:04:09 +00:00
Pragmatic Software
a59cc20128
CGrammar: Improve if/else in switch block, and improve "Fall through to next case"
2014-07-17 18:51:29 +00:00
Pragmatic Software
af8787797a
CGrammar: Improve translation of switch/case block
2014-07-17 18:36:09 +00:00
Pragmatic Software
46a0184791
CGrammar: Translate ' ' to "a space"; touch up translation of "the result of the expression the result of the function" to just "the result of the function"
2014-07-16 13:36:40 +00:00
Pragmatic Software
ed73046d6b
CGrammar: Limit "the result of the expression" to initializer expressions; improve grammar of bitwise assignments
2014-07-15 07:27:34 +00:00
Pragmatic Software
077978bfa1
Add -h option to aka
command to show full hostmasks
2014-07-13 07:06:04 +00:00
Pragmatic Software
2a8d9152f5
CGrammar: Improve handling of "the result of the expression"
2014-07-13 06:36:55 +00:00
Pragmatic Software
46b5b95d54
Escape undesired SQL wildcards in certain statements; add aka
command to list also-known-as entries
2014-07-11 12:57:18 +00:00
Pragmatic Software
65073e311d
Add support for nooverride
to prevent commands from being overridden in different namespaces
2014-07-11 12:56:17 +00:00
Pragmatic Software
23b725eeb8
Prevent warning about given/when; incorporate general offense counter in enter abuse offenses; decrement enter abuses once every 24 hours instead of once per hour
2014-07-11 12:54:56 +00:00
Pragmatic Software
b2114ca03f
CGrammar: Concatenate adjacent string literals
2014-07-11 11:30:05 +00:00
Pragmatic Software
69eca9a336
CGrammar: Change "Repeatedly never" to "Never repeatedly"
2014-07-10 13:13:57 +00:00
Pragmatic Software
bea4480cf3
CGrammar: Fix handling 0 as conditional in for loop
2014-07-10 13:11:13 +00:00
Pragmatic Software
38b6edf656
CGrammar: Fix passing 0 as argument to function
2014-07-10 12:35:33 +00:00
Pragmatic Software
5f9fb29e7e
CGrammar: Add some missing lowercasing specifiers
2014-07-10 12:24:29 +00:00
Pragmatic Software
fab1986a3e
CGrammar: Do not use "result of the expression" for single terms
2014-07-10 01:23:19 +00:00
Pragmatic Software
4520be1a2c
CGrammar: Improve translation of initializer expressions such as int i = 'a' > 'b';
2014-07-09 09:19:49 +00:00
Pragmatic Software
de3493f1ca
CGrammar: Do not use "an" for items beginning with 'y'; improve translation of array of array indices
2014-07-08 05:24:21 +00:00
Pragmatic Software
029cc1ec7a
CGrammar: Improve handling of space seperator in declaration initializers; fix issue with typedefs starting with a type specifier
2014-07-08 03:28:51 +00:00
Pragmatic Software
0c8078c6db
CGrammar: Don't pluralize "member" for structs with a single function pointer
2014-07-08 01:15:51 +00:00
Pragmatic Software
cc0957b060
CGrammar: Improve handling of declarations and initializers; improve translation of sizeof in statement context
2014-07-08 00:33:50 +00:00
Pragmatic Software
4a646f61c9
CGrammar: correct order of sizeof unary expressions
2014-07-07 10:24:15 +00:00
Pragmatic Software
6295b0f503
CGrammar: Add _Atomic
2014-07-07 09:15:46 +00:00
Pragmatic Software
d244af52d8
CGrammar: Improve _Static_assert translation
2014-07-07 08:39:06 +00:00
Pragmatic Software
b470359071
CGrammar: Add _Static_assert
2014-07-07 08:27:10 +00:00
Pragmatic Software
9623086310
CGrammar: Add C11's _Alignof
2014-07-07 06:45:50 +00:00
Pragmatic Software
162e264e82
CGrammar: Remove left-over debugging statements
2014-07-06 04:49:10 +00:00
Pragmatic Software
8de131b871
CGrammar: Support C11's _Alignas; improve handling of comments in declaration specifiers
2014-07-06 04:47:07 +00:00
Pragmatic Software
520d1a2c9c
CGrammar: Support flexible array struct members; fix up minor whitespace issue
2014-07-05 05:11:07 +00:00
Pragmatic Software
5b10d9769e
CGrammar: Correct order of pointer abstract declarator -- now parses int *[]
properly
2014-07-05 04:39:35 +00:00
Pragmatic Software
c638b2c993
CGrammar: Fix shebangs to use env to detect perl location
2014-07-05 00:04:15 +00:00
Pragmatic Software
e17c749ca7
CGrammar: Remove todo comments
2014-07-04 23:45:38 +00:00
Pragmatic Software
4583d85b50
CGrammar: Fix declarations without identifier
2014-07-04 23:41:54 +00:00
Pragmatic Software
9c5b307bef
compiler_vm: Fix #include parsing logic against mismatched #include <foo" tokens
2014-07-04 13:04:27 +00:00
Pragmatic Software
9b93a33acf
CGrammar improvements:
...
- show return type if _Noreturn function has type other than void
- improve translation of function body
- replace "Let `i` be an int" with "Declare `i` as an int"
2014-07-04 12:18:59 +00:00
Pragmatic Software
1f3533bf76
CGrammar: support inline and _Noreturn function specifiers
2014-07-04 11:09:58 +00:00
Pragmatic Software
e1ed0bb6b9
CGrammar: replace parameters
with arguments
where appropriate
2014-07-04 08:20:01 +00:00
Pragmatic Software
8b626cc81e
CGrammar: Wrap struct/union member declaration list with commas to disambiguate nested structs/unions
2014-07-04 02:58:55 +00:00
Pragmatic Software
8b72c03d34
CGrammar improvements:
...
- periods after "Call the function" and "Result of the function"
- conditional operator in assignment expression now says "otherwise the value"
- struct members now use "`identifer` as type" in declarations
- fix chained designated initializers, e.g. s.i[0] = x and [0][0] = x
- fix post/pre-incremented/decremented array elements
- correct positioning of "is nonzero" in multidimensional array locations
2014-07-03 21:33:20 +00:00
Pragmatic Software
df5fcbeaaa
CGrammar: Add C11 use of type-qualifiers and static in array declarators in function parameter lists
2014-07-02 20:55:50 +00:00
Pragmatic Software
d320d5e04a
Fix compliment module
2014-07-02 20:54:17 +00:00
Pragmatic Software
8d38af0d69
CGrammar: Include preprocessor and comments in block items
2014-07-02 18:04:22 +00:00
Pragmatic Software
469e16ce28
CGrammar: Update compound-statements to C11's block-item-list mixing declarations and statements
2014-07-02 17:54:21 +00:00
Pragmatic Software
07f9ef6120
CGrammar: Remove "the list" from initializer lists; restore skipping of whitespace to struct/union/enum specifier
2014-07-02 16:54:02 +00:00
Pragmatic Software
7b42e9220e
CGrammar: Fix case where intx
could be parsed as a declaration instead of an identifier
2014-07-02 16:36:22 +00:00
Pragmatic Software
5eee740cd7
CGrammar: Add designated initializers
2014-07-02 01:32:13 +00:00
Pragmatic Software
aca698374c
CGrammar: Correct beautification regex for "the a"
2014-07-01 19:07:44 +00:00
Pragmatic Software
73967e0721
CGrammar: Progress on C11 features -- added compound-literals
2014-07-01 18:57:02 +00:00
Pragmatic Software
34def4f9ad
CGrammar: Fix ordering of statement vs conditional/expression due to concatenated context
2014-07-01 17:03:07 +00:00
Pragmatic Software
d6c20bc051
CGrammar: Put space after if/while/for keywords
2014-07-01 16:21:52 +00:00
Pragmatic Software
b66e9502d7
CGrammar: Improve translation of structure postfix productions; concatenate contexts for multiple context
2014-07-01 16:16:40 +00:00
Pragmatic Software
f4fdd9f221
CGrammar: Begin adding C11 features; add for-loop init declaration; add C11 keywords to reserved list
2014-06-29 21:13:18 +00:00
Pragmatic Software
5d9b45661d
CGrammar: Correct handling of empty string literals during beautification
2014-06-28 14:49:59 +00:00
Pragmatic Software
086d5059b1
CGrammar: Move output beautification to c2eng.pl; white-out string literals before beautifying
2014-06-28 14:41:50 +00:00
Pragmatic Software
5730d56d54
CGrammar: Improvements to translation of comma operator
2014-06-28 10:18:28 +00:00
Pragmatic Software
99aea7fe63
CGrammar: Fix translation of multiple type specifiers, e.g. long double
no longer becomes double long
2014-06-27 11:38:54 +00:00
Pragmatic Software
3a3827fe40
CGrammar: Correct context for translation of "post-incremented" vs "increment by one"
2014-06-27 11:25:45 +00:00
Pragmatic Software
26e8f1552c
CGrammar: Improve translation of comma operator; remove redundant $arg{context}s
2014-06-26 07:35:11 +00:00
Pragmatic Software
682e6d2af3
CGrammar: Improve pluralization of arrays/pointers in declarations and improve translation of multiple identifiers in typedefs
2014-06-25 12:01:06 +00:00
Pragmatic Software
669e4e37c2
CGrammar: Fix typedefs
2014-06-25 10:15:12 +00:00
Pragmatic Software
b38c6c91c1
CGrammar: Add more types; improve translation of comma operator; track identifiers
2014-06-25 08:19:56 +00:00
Pragmatic Software
a232919dca
CGrammar: Add more lower-case markers
2014-06-24 08:47:29 +00:00
Pragmatic Software
a8320f52f9
CGrammar: Fix structure member access; add lower-case markers
2014-06-24 08:44:28 +00:00
Pragmatic Software
95949153e0
CGrammar: Change "is true" to "is nonzero"
2014-06-24 05:38:59 +00:00
Pragmatic Software
9abf8b6e44
CGrammar: Improve "is true" placement
2014-06-24 05:34:54 +00:00
Pragmatic Software
84ee56a15e
CGrammar: Remove under-construction warning and outdated todo list
2014-06-23 11:17:23 +00:00
Pragmatic Software
9bb70278b7
CGrammar: static local variables do not have internal linkage
2014-06-23 11:10:40 +00:00
Pragmatic Software
76faa3f2ca
CGrammar: Several fixes and improvements
2014-06-23 08:29:08 +00:00
Pragmatic Software
c1de5f6c97
CGrammar: Show bad parse error to users
2014-06-22 06:11:11 +00:00
Pragmatic Software
d97f8b2fd6
CGrammar: Return output instead of printing; improve error-handling of misparsed code
2014-06-22 06:08:01 +00:00
Pragmatic Software
e9b3d7e255
CGrammar: Fix bit-fields; remove under-construction/work-in-progress notice
2014-06-22 04:50:21 +00:00
Pragmatic Software
d4cda2bbc6
CGrammar: Fix some abstract declarators in parameter lists; remove some minor extra whitespace
2014-06-22 02:28:28 +00:00
Pragmatic Software
a388994d54
CGrammar: Fix anchoring of reserved
rule
2014-06-21 06:40:03 +00:00
Pragmatic Software
0b941bf771
CGrammar: Anchor reserved rule to prevent prefix matching
2014-06-21 02:01:38 +00:00
Pragmatic Software
1e2caf2bea
CGrammar: Er, *correctly* change parameter declarations from "int i
" to "i
as int"
2014-06-21 01:40:55 +00:00
Pragmatic Software
f137294429
CGrammar: Change parameter declarations from "int i
" to "i
as int"
2014-06-21 01:36:24 +00:00
Pragmatic Software
c18af75b63
CGrammar: Fix functions taking function pointer as parameter
2014-06-20 23:16:04 +00:00
Pragmatic Software
a501557d35
CGrammar: Support long long suffix on constants; add .0 to floating pointer constants when omitted
2014-06-20 09:12:56 +00:00
Pragmatic Software
d7197b6bf6
CGrammar: Replace "constant" with "const" since "constant" has a specific meaning in the C standard
2014-06-20 08:25:15 +00:00
Pragmatic Software
3f545cefdc
CGrammar: Fix arrays of function pointers and function pointers returning pointers
2014-06-20 08:05:36 +00:00
Pragmatic Software
476db3d6a9
CGrammar: Several improvements in declarations; progress on pointers to functions
2014-06-20 07:43:06 +00:00
Pragmatic Software
1272de61fa
CGrammar: Fix preproc conditionals
2014-06-19 05:16:46 +00:00
Pragmatic Software
f898580d33
CGrammar: Fix int const i
to translate to constant int i
instead of int constant i
2014-06-18 22:31:56 +00:00
Pragmatic Software
7590644422
CGrammar: Improve conditional operator translation
2014-06-18 01:08:19 +00:00
Pragmatic Software
8f5e4c9e88
CGrammar: change "pointer to a" to "pointer to"
2014-06-18 00:20:43 +00:00
Pragmatic Software
987de3f38c
CGrammar: Oops, pointers are read right-to-left -- fixed const pointers again
2014-06-18 00:14:16 +00:00
Pragmatic Software
861f095829
CGrammar: Fix const pointers
2014-06-17 23:51:55 +00:00
Pragmatic Software
dfb7ca0abd
CGrammar: Move bit-field to declarator so they can be declared in lists like int a[5], b:5
2014-06-17 23:33:34 +00:00
Pragmatic Software
b2a0963abb
CGrammar: Improve array translation and fix pointer pluralization
2014-06-17 23:12:02 +00:00
Pragmatic Software
77f1005e03
CGrammar: Fix struct member declarations, pluralize "pointers to" when applicable
2014-06-17 18:20:13 +00:00
Pragmatic Software
c40fd81bb0
CGrammar: Add dash between bitwise operators, .e.g. "bitwise ORed" becomes "bitwise-ORed"
2014-06-16 21:23:19 +00:00
Pragmatic Software
b0ce2d422e
CGrammar: Improve structures and constant literals
2014-06-16 21:13:30 +00:00
Pragmatic Software
c205d348e7
CGrammar: Significantly improve postfix expressions, remove basics objects
2014-06-16 02:31:13 +00:00
Pragmatic Software
78419de052
CGrammar: Improve logic of precompiling grammar
2014-06-15 15:42:20 +00:00
Pragmatic Software
7f84708a5e
CGrammar: add support for precompiling grammar
2014-06-15 04:28:54 +00:00
Pragmatic Software
9389edd2df
CGrammar: Optimize postfix_expression rule and fix function definitions
2014-06-15 03:57:27 +00:00
Pragmatic Software
2dba87f453
CGrammar: Optimize preproc rules
2014-06-15 01:09:06 +00:00
Pragmatic Software
632a9582d5
CGrammar: Improve and optimize conditional_expression rule; improve translation of parenthetical expressions
2014-06-15 00:46:49 +00:00
Pragmatic Software
bf9586b6a8
CGrammar: Improve labels and goto
2014-06-14 19:13:53 +00:00
Pragmatic Software
392cbfb5d1
CGrammar: Improve switch/case/break/label
2014-06-14 18:41:55 +00:00
Pragmatic Software
c2b4d5cb19
CGrammar: Now parses int *a[10] and int (*a)[10] and such
2014-06-14 17:54:20 +00:00
Pragmatic Software
9597833b32
CGrammar: Function prototypes can appear in delcaration section
2014-06-12 14:19:39 +00:00
Pragmatic Software
0f5dbeda7a
CGrammar: Improve chained assignment
2014-06-12 13:23:03 +00:00
Pragmatic Software
c6e893a4fa
CGrammar: Improve arrays and fix array initialization
2014-06-12 13:13:45 +00:00
Pragmatic Software
e29bd99b42
CGrammar: Improve casting, for/do loops and assignment from function result
2014-06-12 12:23:16 +00:00
Pragmatic Software
df1fa14b2a
CGrammar: Fix array translation text
2014-06-11 12:50:16 +00:00
Pragmatic Software
026db04e4a
CGrammar: Remove some redundant returns
2014-06-11 08:54:12 +00:00
Pragmatic Software
992dae043f
CGrammar: Fix /* comment */ regex, minor improvement to while loop, need to fix arrays
2014-06-11 08:29:58 +00:00
Pragmatic Software
5c8b845e6d
CGrammar: Fix character-literal and string-literal regexs; add more character-literal constants
2014-06-11 07:42:16 +00:00
Pragmatic Software
d8703faf0e
CGrammar: Fix #elif and function prototypes
2014-06-10 21:12:09 +00:00
Pragmatic Software
27dd491fe6
CGrammar: Improve initializations
2014-06-10 17:01:43 +00:00
Pragmatic Software
83d0d862f5
c2english.pl: Improve code parsing/function extraction
2014-06-10 14:29:16 +00:00
Pragmatic Software
929d9368fe
CGrammar: Fix function call results and improve character constants
2014-06-10 08:50:19 +00:00
Pragmatic Software
c4fd8a964f
CGrammar: Fix preprocessor and improve for-loops
2014-06-10 06:05:14 +00:00
Pragmatic Software
9992119b11
CGrammar: Improve enumeration translation
2014-06-09 10:18:26 +00:00
Pragmatic Software
ffab2c6f3b
CGrammar: fix enumerations, improve for-loops and comma operators
2014-06-09 10:00:13 +00:00
Pragmatic Software
ec1fd207a6
CGrammar: fix conditional statement, improve structures and do-while loop
2014-06-08 15:59:43 +00:00
Pragmatic Software
6641bc3cf2
More progress on CGrammar.pm
2014-06-08 13:51:29 +00:00
Pragmatic Software
ca91e34a25
CGrammar: Significantly improve indentation; minor textual improvements
2014-06-08 06:34:55 +00:00
Pragmatic Software
8e818baa52
Rename global_var_declaration to external_declaration
2014-06-07 13:02:50 +00:00
Pragmatic Software
730120be36
Rough-draft work-in-progress alpha of new C-to-English module
2014-06-07 13:00:07 +00:00
Pragmatic Software
6740522fae
Improve cdecl usage message
2014-06-05 21:45:25 +00:00
Pragmatic Software
a6b66cb351
Add rpn module
2014-06-04 00:21:48 +00:00
Pragmatic Software
2fd23c7222
Ghost nick through NickServ if already on server
2014-06-01 21:33:31 +00:00
Pragmatic Software
eec2433906
Move some responses from /msg to public
2014-06-01 21:32:32 +00:00
Pragmatic Software
33765c6d3a
Add -editby to factfind, move some responses from /msg to public
2014-06-01 21:31:54 +00:00
Pragmatic Software
2cb5d60b51
compiler_vm: Convert exit code from octal to decimal; add variables to easily change opening/closing brackets; experiment with using whitespace instead of <>
2014-05-31 16:36:37 +00:00
Pragmatic Software
0302a5328a
compiler_vm: Add Win32 named-pipe TCP proxy program
2014-05-31 01:24:22 +00:00
Pragmatic Software
62e11d0b5d
compiler_vm: add Win32 VirtualBox server; misc improvements
2014-05-31 01:20:31 +00:00
Pragmatic Software
0b728c9d37
Update docs -- added MODULES file for easy installation of Perl modules
2014-05-31 01:11:04 +00:00
Pragmatic Software
b9433127d1
Improve wildcard handling
2014-05-31 01:08:01 +00:00
Pragmatic Software
4696df7ea1
Add subroutines to release and identify nick if necessary
2014-05-31 01:07:29 +00:00
Pragmatic Software
60d8235999
Add registry entry to control max recursion depth for interpreter
2014-05-31 01:05:47 +00:00
Pragmatic Software
7b2fb432c0
Restrict factset add_nick to level 10
2014-05-31 01:04:26 +00:00
Pragmatic Software
f463852093
Add registry entry to toggle debugging of IRC module
2014-05-31 01:03:42 +00:00
Pragmatic Software
a81ba775fc
Restored load, unload, count and histogram commands.
...
Removed enable/disable commands; use factset instead.
Add default_rate_limit registry entry.
Add newlines to output of DualIndexHashable set() subroutine.
2014-05-24 12:01:59 +00:00
Pragmatic Software
02c0143634
Add factmove command to rename/move factoids between channels
2014-05-23 12:42:23 +00:00
Pragmatic Software
c2089562c5
Add registry entry for ChanServ ban timeout
2014-05-23 05:03:54 +00:00
Pragmatic Software
5904a3f1f4
Allow quoting/escaping spaces in grab arguments
2014-05-22 01:24:14 +00:00
Pragmatic Software
35e150d2b6
Optimize ban-evasion logic to significantly reduce number of SQLite queries; add registry entry for debugging ban-evasion
2014-05-21 04:52:17 +00:00
Pragmatic Software
5ba8ab0a4b
Do not ban nick-flood on non-channels
2014-05-20 22:24:58 +00:00
Pragmatic Software
5c14727fd1
Add SQLite logger and profiler functionality
2014-05-20 10:17:01 +00:00
Pragmatic Software
39c0cd3fb5
Add registry entry to enable/disable antiflood enforcement
2014-05-20 10:14:09 +00:00
Pragmatic Software
f5881de7a1
Improve regfind with better formating in pasted output, and add -showvalues argument. regshow/regfind now show private entry names with value redacted
2014-05-20 03:28:43 +00:00
Pragmatic Software
548b4681ac
Add %conf to all module creation; add deop timeout registry entry
2014-05-19 22:59:51 +00:00
Pragmatic Software
40b2393d05
Add registry values to manage showing url titles and compiling blocks
2014-05-19 21:34:24 +00:00
Pragmatic Software
ac45cf8036
Timer can now update timeout interval by timer id; add timer interval to registry for LagChecker and MessageHistory_SQLite
2014-05-19 10:30:25 +00:00
Pragmatic Software
710bbb76cc
Add registry get_array_value() subroutine
2014-05-19 09:55:47 +00:00
Pragmatic Software
349afd4ae0
Correct enter_abuse_punishment default value
2014-05-19 04:30:36 +00:00
Pragmatic Software
937282a114
Add more values to registry for antiflood and lagchecker
2014-05-19 02:42:18 +00:00
Pragmatic Software
020d512ee4
Minor indentation fix
2014-05-18 22:51:37 +00:00
Pragmatic Software
1cce945412
Remove unnecessary ${} around some objects from previous commit
2014-05-18 20:19:30 +00:00
Pragmatic Software
30e3c5ce35
Remove PBot getter/setters; move anti-flood registry defaults to AntiFlood.pm
2014-05-18 20:09:05 +00:00
Pragmatic Software
bf4920b866
Set default identify_password to "none" to avoid empty value in registry
2014-05-18 00:30:51 +00:00
Pragmatic Software
e07df35cbf
Move command modules out of PBot.pm and into their respective modules
...
E.g., FactoidCommands.pm is now loaded inside Factoids.pm, etc.
Misc reformatting/refactoring of PBot.pm
2014-05-18 00:27:57 +00:00
Pragmatic Software
d955bfa06c
Add centralized configuration registry module
...
Allows changing of bot configuration values without needing to restart
bot instance or needing to edit pbot.pl script.
Registry will initially be populated with default values from pbot.pl,
but if a registry file exists then the registry values will take
precedence over the pbot.pl values. For instance, if you regset the
bot trigger to '%' then the trigger will be '%' even if pbot.pl has '!'
or something else explicitly set.
Some registry items can have trigger hooks associated with them. For
instance, the irc->botnick registry entry has a change_botnick_trigger
associated with it which changes the IRC nick on the server when a new
value is set via regset/regadd.
Tons of other fixes and improvements throughout.
2014-05-17 20:08:19 +00:00
Pragmatic Software
d8d26b1cea
Add registerable atexit functionality and trap SIGINT
2014-05-16 22:11:31 +00:00
Pragmatic Software
b1cb9fa200
Reduce nick-flood limit to 3 within 30 minutes instead of within 1 hour
2014-05-16 22:10:55 +00:00
Pragmatic Software
2e2188532c
Correct logic for Guest nick-change allowance
2014-05-16 05:58:21 +00:00
Pragmatic Software
a7681c36cb
Don't enforce nick anti-flood for services-mandated changes to Guest nick
2014-05-16 05:53:39 +00:00
Pragmatic Software
591dbd70ab
Set generic default export websites in pbot.pl
2014-05-16 04:11:25 +00:00
Pragmatic Software
cd54dcb573
Track and handle nick-change events; add anti-nick-flood detection
2014-05-16 00:48:46 +00:00
Pragmatic Software
1f242aeec4
Detect and handle KICK events
2014-05-15 15:49:56 +00:00
Pragmatic Software
f8fc04f6e5
Distinct JOIN and DEPARTURE events to improve join-flood detection, etc
2014-05-15 01:39:33 +00:00
Pragmatic Software
92b4ef00cf
Improve recall
command with better capabilities
...
The nick field is now optional and Getopt::Long is used to accept targeted
options for channel/history, allowing recalls by text/channel for any nick
which is useful when you know what text the message contained but not who
said it.
2014-05-14 21:23:59 +00:00
Pragmatic Software
dad69fb0c8
Use AutoInactiveDestroy attribute to fix SQLite I/O error due to DBH handle being destroyed when forked process exits
2014-05-13 20:14:38 +00:00
Pragmatic Software
ae6f3a6b3d
Don't skip begin_work() if commit() fails
2014-05-13 15:18:33 +00:00
Pragmatic Software
11efde4d0d
Comment out some verbose debugging log statements
2014-05-13 15:09:29 +00:00
Pragmatic Software
54ac8ec0ef
Convert message history to use SQLite database instead of Perl hashtable
...
Added MessageHistory.pm and MessageHistory_SQLite.pm. May eventually port
and add MessageHistory_Hashtable.pm as was done with Quotegrabs, but this is
not particularly high on the todo list.
Antiflood.pm has been updated to use the new MessageHistory API.
The `recall` command has been moved from Quotegrabs into MessageHistory. It
also now has the ability to ignore messages containing the recall command
itself, for improved usability.
Likewise, the `grab` command will now ignore previous `grab` commands when
grabbing by regex in order to prevent accidentally grabbing previous grab
attempts.
The `join` and `part` commands have been improved to accept multiple channels,
and `part` will use the current channel if none is provided.
2014-05-13 10:15:52 +00:00
Pragmatic Software
ae1842e3db
compiler_vm: Improve a couple of output sanitization regexs
2014-05-08 13:07:24 +00:00
Pragmatic Software
62d93c76c3
Remove left-over debugging print statements
2014-05-06 05:17:31 +00:00
Pragmatic Software
239e3de8ea
Quotegrabs.pm now uses quotegrabs_db API for interfacing with storage backend
...
Two quotegrabs_db backends are now availble:
* Quotegrabs_Hashtable.pm: the original hashtable implementation
* Quotegrabs_SQLite.pm: the new SQLite implementation
Quotegrabs_SQLite.pm is now the default quotegrabs_db backend.
This was done to reduce the memory footprint of the bot by not needing to
keep the entire quotegrabs table in memory any longer.
A similiar change will be coming soon to the Factoids table as well as the
MessageHistory table.
2014-05-06 05:15:27 +00:00
Pragmatic Software
2c2b2c2e4b
Truncate all messages beyond MAX_NICK_MESSAGES
2014-05-05 05:18:59 +00:00
Pragmatic Software
af447c2614
More nickometer tweaks
2014-05-02 03:57:19 +00:00
Pragmatic Software
8e07eb300e
compiler_vm: add -Wshadow; support -include
2014-05-02 00:43:42 +00:00
Pragmatic Software
c1fa37f982
Tweaks to nickometer module
2014-05-01 23:20:15 +00:00
Pragmatic Software
a0b0cb8a74
Add nickometer module
2014-05-01 03:40:56 +00:00
Pragmatic Software
6de1023ee8
Use Getopt::Long to parse rq
options
2014-04-30 21:37:28 +00:00
Pragmatic Software
cebcafba70
Do not allow RE2 to fallback to PCRE
2014-04-29 17:00:51 +00:00
Pragmatic Software
7fa458ab34
Do not expand me
or remove trailing punctuation for factset/factchange
2014-04-29 04:05:20 +00:00
Pragmatic Software
595e6a34d2
Use DFA regex engine on user-supplied regexs to avoid potential denial-of-service attacks
2014-04-28 17:20:01 +00:00
Pragmatic Software
b35382109c
Show random quotegrab: if nick_search begins with "#", assume they meant to specify channel_search
2014-04-28 01:52:49 +00:00