Pragmatic Software
66ceac3916
Update version
2015-12-13 13:58:13 -08:00
Pragmatic Software
e6e7f325fb
Add individual change-logs for factoid triggers
2015-12-13 13:58:01 -08:00
Pragmatic Software
31cd5d8388
Update version
2015-11-26 12:36:40 -08:00
Pragmatic Software
2962a44c12
No longer remove trailing punctuation from embedded factoid commands
2015-11-26 12:36:36 -08:00
Pragmatic Software
1f1631935b
Update version
2015-11-20 21:11:45 -08:00
Pragmatic Software
4cd1211684
Improve unbanme handling
...
Sometimes people might join the channel uncloaked and get join-flood banned
with their uncloaked hostmask, and then later attempt to join the channel while
cloaked but the network will prevent them from joining since it checks their IP
address against the banlist in addition to their cloak.
Attempts to use unbanme while cloaked will look for a ban matching the cloak
instead of the IP address and will not find their uncloaked join-flood ban.
To fix this, we now traverse all known aliases/hostmasks for an individual
requesting a join-flood unban and remove any and all bans matching any of the
hostmasks linked to this individual.
2015-11-20 21:08:30 -08:00
Pragmatic Software
742eb849e8
Remove duplicate blank line
2015-11-20 21:02:21 -08:00
Pragmatic Software
77d94af516
Update version
2015-10-25 04:01:48 -07:00
Pragmatic Software
aa749860c0
Look for module in global channel before falling back to local channel
2015-10-25 04:01:45 -07:00
Pragmatic Software
4f875f9c4c
Update version
2015-10-19 12:21:50 -07:00
Pragmatic Software
89eda8f0a9
Fix undefined variable warning in find_factoid
2015-10-19 12:21:42 -07:00
Pragmatic Software
b23f025a12
Update version
2015-10-10 06:07:30 -07:00
Pragmatic Software
43418c1bc6
Require curly braces or backticks around embedded commands
2015-10-10 06:07:24 -07:00
Pragmatic Software
8bb7dfece6
Update version
2015-10-10 04:27:39 -07:00
Pragmatic Software
930801a5fb
Require curly braces or backticks around embedded commands
2015-10-10 04:27:36 -07:00
Pragmatic Software
f364075bff
Update version
2015-10-06 17:35:28 -07:00
Pragmatic Software
0fb098ded1
Update version
2015-10-05 02:11:55 -07:00
Pragmatic Software
54b8750d1b
Allow adding channels as factoid adlib modifier
2015-10-05 02:11:52 -07:00
Pragmatic Software
2c59908ee8
Update version
2015-10-05 02:03:17 -07:00
Pragmatic Software
cf72a11658
Improve factoid expansions
2015-10-05 02:03:13 -07:00
Pragmatic Software
0f0797c0ee
Update version
2015-10-02 20:14:53 -07:00
Pragmatic Software
a5c700eec3
Correct encode_entities() in export_factoids() for URLs, etc
2015-10-02 20:14:48 -07:00
Pragmatic Software
52d437f0da
Update version
2015-10-02 20:06:28 -07:00
Pragmatic Software
dc2f372551
Add missing encode_entities() to export_factoids()
2015-10-02 20:06:25 -07:00
Pragmatic Software
f5c1846458
Update version
2015-09-30 09:51:06 -07:00
Pragmatic Software
01f543b3b7
Fix recall from /msg not ignoring the command itself
2015-09-30 09:51:04 -07:00
Pragmatic Software
a3df01bae3
Escape delim in factchange
command to allow delimiters such as the pipe character
2015-09-30 09:50:37 -07:00
Pragmatic Software
a562f79956
Update version
2015-09-19 20:02:16 -07:00
Pragmatic Software
43c0361354
Add botnick to "Why would I want to do that to myself?" condition
2015-09-19 20:02:11 -07:00
Pragmatic Software
5abf047602
Update version
2015-09-19 00:27:18 -07:00
Pragmatic Software
04aaeb5475
Fix handling of no factoid found from find_factoid()
2015-09-19 00:27:15 -07:00
Pragmatic Software
d4eb08856a
Fix recall logic for integer history
2015-09-18 17:45:25 -07:00
Pragmatic Software
8691e6d7bb
Update version
2015-09-17 22:18:22 -07:00
Pragmatic Software
43db8ab34e
Update version
2015-09-14 10:32:09 -07:00
Pragmatic Software
b5c5162ad0
Minor refactor of title
case of adlib modifier
2015-09-14 10:29:28 -07:00
Pragmatic Software
739c28125b
Remove extraneous whitespace
2015-09-14 10:25:16 -07:00
Pragmatic Software
e1d557e75f
Update version
2015-09-14 10:22:58 -07:00
Pragmatic Software
aed3f34c43
Add optional modifiers to factoid variables
...
Adlib list variables can now accept trailing modifier keywords prefixed with
a colon. These can be chained together to combine their effects.
:uc - uppercases the expansion
:lc - lowercases the expansion
:ucfirst - uppercases the first letter in the expansion
:title - lowercases the expansion and then uppercases the first letter
(effectively an alias for :lc:ucfirst)
Examples:
<pragma_> echo $colors:uc
<candide> RED
<pragma_> echo $colors:ucfirst
<candide> Blue
2015-09-14 10:22:55 -07:00
Pragmatic Software
d6319b27c5
Update version
2015-09-14 09:06:48 -07:00
Pragmatic Software
ebc7cb9579
Move enter-abuse logic to after chat flood logic to prevent enter-abuse warning and chat flood ban happening at the same time
2015-09-14 09:06:43 -07:00
Pragmatic Software
ecaa45b3dc
Expand factoid variables sooner so argument processing occurs on expanded action
2015-09-14 09:06:00 -07:00
Pragmatic Software
ddeb70f1e3
Update version
2015-09-12 01:52:47 -07:00
Pragmatic Software
50fa9ff706
Improve recall
error message when no history is found
...
`recall` now shows all channels a nick was seen in if they weren't seen in
the requested channel.
2015-09-12 01:52:45 -07:00
Pragmatic Software
dfcef63e5e
Update version
2015-09-10 01:51:31 -07:00
Pragmatic Software
70f091545b
Replace "me" in factoid arguments only during first interpretation pass
2015-09-10 01:51:24 -07:00
Pragmatic Software
d8183fc405
Update version
2015-09-09 05:24:18 -07:00
Pragmatic Software
7ce40fca4d
Correct use/package paths
2015-09-09 05:24:16 -07:00
Pragmatic Software
a158e4458f
Rename Plugins/_Readme to Plugins/README
2015-09-08 11:50:14 -07:00
Pragmatic Software
8e188b9013
Correct minor typos in description comment
2015-09-08 11:46:08 -07:00
Pragmatic Software
12cd20c072
Update version
2015-09-08 11:42:47 -07:00
Pragmatic Software
17e4cdb8b3
Move Quotegrabs to Plugins
2015-09-08 11:42:43 -07:00
Pragmatic Software
de2774ed00
Update version
2015-09-08 05:30:06 -07:00
Pragmatic Software
6d8b6532b6
Immediate leave UrlTitles if message doesn't contain a URL
2015-09-08 05:30:02 -07:00
Pragmatic Software
c9711e5fa4
Update version
2015-09-08 04:43:26 -07:00
Pragmatic Software
6c5c263ed2
Move URL titles conditional out of loop
2015-09-08 04:43:24 -07:00
Pragmatic Software
c57c9e2f13
Update version
2015-09-08 01:38:02 -07:00
Pragmatic Software
391cd91191
Add $event->{interpreted} example to _Example plugin
2015-09-08 01:37:59 -07:00
Pragmatic Software
e5097eee69
Move URL titles to UrlTitles.pm plugin
...
Add $event->{interpreted} field to events to notify other handlers
whether an event was successfully interpreted by the interpreter.
An $event->{interpreted} that is equal to or greater than 100 means the entire
message was consumed and handlers shouldn't do any further processing of it
that would generate any output to channels or users.
Otherwise, $event->{interpreted} is incremented by 1 for each referenced
command that was processed.
2015-09-08 01:37:34 -07:00
Pragmatic Software
fa2865fb10
Fix potential undefined variable warning
2015-09-08 01:30:08 -07:00
Pragmatic Software
d51d2367a1
Correct logic of login
command ignore check
2015-09-07 05:04:54 -07:00
Pragmatic Software
1582b35db9
Update version
2015-09-07 00:20:11 -07:00
Pragmatic Software
efcca90444
Revert unplug error message
2015-09-07 00:20:06 -07:00
Pragmatic Software
5c83ea62f3
Rename Pluggable to Plugins
2015-09-06 22:53:49 -07:00
Pragmatic Software
70a3a2a354
Update version
2015-09-06 22:52:43 -07:00
Pragmatic Software
adfdccfd27
Rename Pluggable to Plugins
2015-09-06 22:52:39 -07:00
Pragmatic Software
729728a458
Update version
2015-09-06 22:39:59 -07:00
Pragmatic Software
0b74dd070d
Pass PBot %conf to auto-loaded plugins
2015-09-06 22:39:40 -07:00
Pragmatic Software
8d666984dc
Move AntiAway and AntiKickAutoRejoin to Pluggable
2015-09-06 22:38:59 -07:00
Pragmatic Software
539aeb3e9f
Change "not found" to "failed to load"
2015-09-06 22:22:37 -07:00
Pragmatic Software
ce3a3d4b9b
Update version
2015-09-06 22:17:20 -07:00
Pragmatic Software
0d7f0bf184
Add loadable core plugins
...
These are different from the loadable factoid modules. The factoid modules
are external executable shell commands that take stdin as arguments and print
to stdout as a return value. As such, they are not integrated into the bot
and cannot make use of the bot's internal subroutines.
These plugins are loaded internally and integrated into the bot such that they
can interface with the bot's internal subroutines and state.
All files in the Pluggable directory not beginning with an underscore will be
automatically loaded at bot start-up.
Plugins (including those starting with an underscore) can be manually loaded
or unloaded with the `plug` and `unplug` commands. Use `pluglist` to list
loaded plugins.
2015-09-06 22:17:07 -07:00
Pragmatic Software
f8dba73d02
Correct name of file in error message
2015-09-06 22:04:46 -07:00
Pragmatic Software
16f467252b
Do not process server NOTICES as public messages
...
Add time-out to automatically unban ##fix_your_connection ban-forwards
2015-09-06 22:04:21 -07:00
Pragmatic Software
bff1aa34d7
Update version
2015-09-03 20:56:48 -07:00
Pragmatic Software
8c16fbd3e5
Allow factoids to be referenced from within messages
...
E.g.,
<pragma-> Userbob: You can learn more about candide by reading its !help page and checking out its !source
<candide> Userbob: To learn all about me, see http://www.iso-9899.info/wiki/Candide
<candide> Userbob: My guts can be browsed at https://github.com/pragma-/pbot
Only three triggers will be processed per message. (I should create a
registry entry to customize this.)
Messages that are addressed at a specific user that exists in the channel will
have that user's name prepended to the factoid output.
Factoid triggers that are referenced from within messages will not produce
error messages if the factoid is not found.
Factoids that have an $arg or $nick special variable will not be triggered as
a reference.
Factoids that have the `noembed` meta-data value set to a true value will not
be invoked as a reference.
2015-09-03 20:56:44 -07:00
Pragmatic Software
d570dd7dd4
Fix undefined variable warnings in recall
2015-09-03 20:50:07 -07:00
Pragmatic Software
675760289c
Allow wild-card in recall/grab text
...
Do not iterate through weak links when looking for also-known-as
2015-09-03 20:49:06 -07:00
Pragmatic Software
8e1f008f9b
Redirect NOTICEs as public messages (anti-flood, command parsing, etc)
2015-09-03 20:46:12 -07:00
Pragmatic Software
34a653b05a
Stop appending !*@* to $a:account banmasks
2015-09-03 20:44:33 -07:00
Pragmatic Software
97bbb298e4
Allow bot admins to factset factoids from /msg
...
Fix some channel/from discrepancies in factset, etc.
2015-09-03 20:43:16 -07:00
Pragmatic Software
b6f7dd87e5
Update version
2015-08-22 11:05:57 -07:00
Pragmatic Software
050714e359
Improve ban
command to accept nick as argument and determine an appropriate banmask
2015-08-22 11:05:53 -07:00
Pragmatic Software
d317f2a0c5
Update version
2015-08-19 22:26:32 -07:00
Pragmatic Software
eb8a49cc74
Improve unban
command to find all matching bans given a nick argument
...
Instead of only taking a hostmask argument, `unban` will now determine
if the argument is a nick, and if so it will then find all bans that
match various hostmasks used by that nick and unban them all.
2015-08-19 22:26:28 -07:00
Pragmatic Software
f5b23532ae
Update version
2015-08-16 05:21:02 -07:00
Pragmatic Software
3fa12c208e
Improve handling of word-boundaries in searches
2015-08-16 05:20:57 -07:00
Pragmatic Software
b15267c587
Update version
2015-08-08 12:40:12 -07:00
Pragmatic Software
260b1405a7
Enforce nick-change flood on Guest nicks
2015-08-08 12:40:06 -07:00
Pragmatic Software
499d91e07d
Do not exempt bot-admins lower than level 10 from ignore list
2015-08-08 12:39:17 -07:00
Pragmatic Software
89c1ad7efa
Update version
2015-08-05 12:29:10 -07:00
Pragmatic Software
35653cb996
Add word-boundaries around text searches
2015-08-05 12:28:15 -07:00
Pragmatic Software
2d875dc5fd
Update version
2015-07-28 17:50:09 -07:00
Pragmatic Software
025a8bfc38
Set ##stop_join_flood bans in $channel-floodbans to reduce channel noise
2015-07-28 17:50:06 -07:00
Pragmatic Software
028fe40a8b
Correct location of alias_type
2015-07-28 17:49:18 -07:00
Pragmatic Software
154b46194f
Use comma-separated list of channels when auto-joining to reduce IRC commands
2015-07-28 17:47:53 -07:00
Pragmatic Software
9cf59888c0
join_channel() can now take a comma-separated list of channels and issue them as one IRC command
2015-07-28 17:47:22 -07:00
Pragmatic Software
f6a99818f0
Update version
2015-07-23 17:47:19 -07:00
Pragmatic Software
dbfb8a6add
Remove unnecessary printing of ignored messages
2015-07-23 17:47:16 -07:00
Pragmatic Software
bded959ba4
Remove unnecessary logic
2015-07-23 17:46:33 -07:00
Pragmatic Software
cc9f4926ee
Make channel argument optional for factrem as well
2015-07-23 17:46:01 -07:00
Pragmatic Software
5305ac43a9
Update version
2015-07-21 15:07:58 -07:00
Pragmatic Software
ba87aef524
Improve factshow/factfind behavior
...
factshow's and factfind's channel argument is now optional.
The commands will now automatically determine the channel a factoid lives in
if it is the only factoid of that name.
If there are multiple factoids existing in different channels then the commands
will display a disambiguation message and require an explicit channel argument
to choose a specific channel's factoid.
2015-07-21 15:07:56 -07:00
Pragmatic Software
8cdad15207
Show enter-abuse warning message just before it would temp-ban
...
Fix address_to_mask regex
2015-07-21 13:44:42 -07:00
Pragmatic Software
9194f3e871
Update version
2015-07-18 08:13:23 -07:00
Pragmatic Software
1fed4d4de5
Update version
2015-07-17 00:33:09 -07:00
Pragmatic Software
454d305605
Update version
2015-07-15 00:18:59 -07:00
Pragmatic Software
850c8a0525
Add weak/strong also-known-as linking
...
PBot will now use weak links if the ip address portion of a hostmask
hasn't been seen in the last 48 hours in order to prevent false-positive
linking of dynamic ip addresses.
Weak links are excluded from ban-evasion logic.
Weak links can be manually upgraded to strong links with the `akalink`
command if a human confirms they are the same person through the `aka -w`
command.
Individuals with matching nicks or matching nickserv accounts, etc, will
automatically be strongly linked, as usual.
2015-07-15 00:18:57 -07:00
Pragmatic Software
6a6eff1150
Support nat cloaks for banmasks
2015-07-14 07:29:27 -07:00
Pragmatic Software
cbd4e182a6
Update version
2015-07-13 04:01:06 -07:00
Pragmatic Software
4b66f61552
Update version
2015-07-13 02:47:32 -07:00
Pragmatic Software
04f1672f19
Update some admin levels
2015-07-13 02:47:30 -07:00
Pragmatic Software
7e76a77b09
Update version
2015-07-12 02:54:28 -07:00
Pragmatic Software
120922d840
Update version
2015-07-09 23:25:37 -07:00
Pragmatic Software
9376c65b24
Allow optionally using name instead of hostmask in adminset/adminunset/adminrem commands
2015-07-09 23:25:31 -07:00
Pragmatic Software
e3eb698f27
Properly show/hide star for logged in admins in list admins
2015-07-09 23:24:39 -07:00
Pragmatic Software
241c30b4f4
Do not override special variables in expand_factoid_vars()
2015-07-09 23:24:00 -07:00
Pragmatic Software
adc5e39e2f
Update version
2015-07-09 07:15:41 -07:00
Pragmatic Software
d302587829
Enter-abuse anti-flood settings can now be overridden per-channel
2015-07-09 07:15:32 -07:00
Pragmatic Software
18b1900fbe
Update version
2015-07-08 14:06:05 -07:00
Pragmatic Software
7cc8b9c34d
Allow chat-flood antiflood settings to be overridable on a per-channel basis
2015-07-08 14:05:55 -07:00
Pragmatic Software
ed810dc9d9
Update version
2015-07-06 20:01:22 -07:00
Pragmatic Software
1179a7e1f1
Don't remove dollar-sign from unexpanded factoid vars
2015-07-06 20:01:17 -07:00
Pragmatic Software
ed63fb3766
Update version
2015-07-06 19:40:33 -07:00
Pragmatic Software
90b89941cf
Update version
2015-07-06 19:39:35 -07:00
Pragmatic Software
a0c798dd2a
Expand factoid variables in /call statements
...
This allows us to call random factoids.
E.g.:
factadd global fact1 is /say This is fact1.
factadd global fact2 is /say Fact2 is also a pretty neat fact.
factadd global fact3 is /say But don't forget about fact3!
factadd global facts is fact1 fact2 fact3
factadd global randomfact is /call $facts
Invoking the `randomfact` factoid will now randomy pick between
fact1, fact2 and fact3.
This was added to support the `randomkr` factoid.
2015-07-06 19:39:33 -07:00
Pragmatic Software
714f79fb2e
Update version
2015-07-05 17:49:21 -07:00
Pragmatic Software
6c9c9d285b
Revert chmod
2015-07-05 17:49:06 -07:00
Pragmatic Software
2c6209b578
Use set_default to set default Registry values
2015-07-05 17:48:27 -07:00
Pragmatic Software
d1f5c1b705
Add set_default to prevent saving Registry when setting default value
2015-07-05 17:47:12 -07:00
Pragmatic Software
f22f2ef12a
Update version
2015-07-01 15:21:12 -07:00
Pragmatic Software
83f84e261a
Minor bug-fixes
2015-07-01 15:21:08 -07:00
Pragmatic Software
e026b9ac42
NickList is_present() now returns canonical nick (proper typographical case)
2015-07-01 15:20:28 -07:00
Pragmatic Software
a00a9dfc6b
Add more default bad nick suffixes
2015-07-01 15:18:55 -07:00
Pragmatic Software
c5cb41e02c
Update version
2015-06-26 00:10:27 -07:00
Pragmatic Software
144c3ec63b
Fix apostrophe in expand action arguments, and fix regex
2015-06-26 00:10:23 -07:00
Pragmatic Software
7c19ebbd7b
Update version
2015-06-25 22:56:15 -07:00
Pragmatic Software
f10e1c1c89
Support factoid argument indexing/slicing ($arg[0], $arg[2:4], etc)
2015-06-25 22:56:10 -07:00
Pragmatic Software
8ed333ba96
Fix typo "has_unban_timeout" -> "has_ban_timeout"
2015-06-25 22:55:06 -07:00
Pragmatic Software
09c7437246
Use can_gain_ops/has_un[ban,mute]_timeout subroutines
2015-06-25 20:55:42 -07:00
Pragmatic Software
95a4be6cb0
Add can_gain_ops(), has_unban_timeout() and has_unmute_timeout() subroutines
2015-06-25 20:54:38 -07:00
Pragmatic Software
452ac7fc4c
Save registry entries immediately after using set/unset
2015-06-25 20:53:59 -07:00
Pragmatic Software
3b961e0f29
Update version
2015-06-20 17:48:53 -07:00
Pragmatic Software
6b544e9bf4
Stop processing ban evasions immediately after first ban is detected
2015-06-20 17:48:42 -07:00
Pragmatic Software
d431d70ac1
Reduce verbosity of factoid debug messages
2015-06-20 17:48:00 -07:00
Pragmatic Software
0d4c5c301f
Do not attempt to enforce antiaway/rejoin if not chanop
2015-06-20 07:24:13 -07:00
Pragmatic Software
fea56842d3
Update version
2015-06-20 00:20:26 -07:00
Pragmatic Software
b4539447a3
Improve check-ban logic
2015-06-20 00:20:23 -07:00
Pragmatic Software
0c1e573ef8
Do not invoke compilation for compile-blocks if nick-prefix is specified and does not exist in channel
2015-06-19 16:16:23 -07:00
Pragmatic Software
b8a768aa96
Update version
2015-06-18 23:36:55 -07:00
Pragmatic Software
497b713300
Add response messages for refresh
command
2015-06-18 23:36:51 -07:00
Pragmatic Software
594b79d0f5
Update version
2015-06-16 21:51:27 -07:00
Pragmatic Software
43f08b4cbc
Remove unused use feature 'switch'
2015-06-15 20:04:48 -07:00
Pragmatic Software
dd4796437b
Update version
2015-06-15 19:55:53 -07:00
Pragmatic Software
204f95cba7
Add "refresher" to allow PBot::Module subroutines to be reloaded during runtime
2015-06-15 19:55:46 -07:00
Pragmatic Software
2ae493f1c2
Add count
option to recall
command
2015-06-15 17:58:25 -07:00
Pragmatic Software
b4bffe9233
Update version
2015-06-13 16:09:02 -07:00
Pragmatic Software
4db125c3c2
Improve account-tracking and ban-evasion for Freenode irccloud.com web gateways
2015-06-13 16:08:57 -07:00
Pragmatic Software
8033213a7f
Add options to disable anti-flood per-channel, and to disable enforcement for logged-in admins
2015-06-13 16:08:06 -07:00
Pragmatic Software
a3d5dfb63e
Update version
2015-06-10 02:27:17 -07:00
Pragmatic Software
73c1c89b6a
Correct $length when no $channel or $length argument is provided
2015-06-10 02:27:13 -07:00
Pragmatic Software
dfbefee904
random_nick now returns nick with preserved typographical case
2015-06-10 02:26:14 -07:00
Pragmatic Software
edf2f0e5ee
Update version
2015-06-08 04:43:02 -07:00
Pragmatic Software
f2a8839707
Add $randomnick special factoid variable
2015-06-08 04:43:00 -07:00
Pragmatic Software
c81612c58c
Update version
2015-06-07 18:02:38 -07:00
Pragmatic Software
75655f5d81
Remove ban/mute from time-outs if using "forever"
2015-06-07 18:02:35 -07:00
Pragmatic Software
828bf2fa78
Update version
2015-06-05 22:28:04 -07:00
Pragmatic Software
4895aa5ed8
Don't show duplicate nicks regardless of id unless -h is used
2015-06-05 22:27:59 -07:00
Pragmatic Software
f415d73827
Anchor regex in find_admin
2015-06-05 22:27:21 -07:00
Pragmatic Software
bf45c6cdde
Improve ban evasion; show evaded ban in kick message
2015-06-05 22:26:55 -07:00
Pragmatic Software
62b8432be9
Factoid commands now check for admins in factoid's channel instead of channel command was used in
2015-06-05 22:26:02 -07:00
Pragmatic Software
21cd76e99e
Ignore surrounding whitespace for integers in parsedate
2015-05-27 16:11:16 -07:00
Pragmatic Software
277b363310
Update version
2015-05-27 11:26:26 -07:00
Pragmatic Software
b087324a37
Remove mute from mute-timeouts if -q is detected
2015-05-27 11:26:16 -07:00
Pragmatic Software
e835b8c667
Update version
2015-05-27 10:48:55 -07:00
Pragmatic Software
d0ebf98441
Automatically unmute +q'd offenders after mute_timeout (7 days)
2015-05-27 10:46:30 -07:00
Pragmatic Software
b98ef02b6f
Add timed mute/unmute commands
2015-05-27 10:45:43 -07:00
Pragmatic Software
3012297183
Do not require whitespace next to nick when triggering by bot-nick
2015-05-27 10:44:26 -07:00
Pragmatic Software
204c0dc0ce
Update version
2015-05-25 17:25:05 -07:00
Pragmatic Software
7607de79a0
Update version
2015-05-25 11:34:48 -07:00
Pragmatic Software
b1f3d304b3
Update version
2015-05-25 11:27:28 -07:00
Pragmatic Software
a466a0f02f
Update version
2015-05-24 13:26:47 -07:00
Pragmatic Software
bfe81a87b9
Update version
2015-05-24 06:19:09 -07:00
Pragmatic Software
22545d6249
Update version
2015-05-22 04:24:44 -07:00
Pragmatic Software
cdb84a8602
Link nick-changes to original nick's account instead of new nick's
2015-05-22 04:24:38 -07:00
Pragmatic Software
351385cb67
Properly recurse through all linked ids when getting AKAs; optimize Aliases table and AKA function
2015-05-22 04:23:51 -07:00
Pragmatic Software
72c29a9ed8
Update version
2015-05-22 04:03:44 -07:00
Pragmatic Software
5908a74570
Update version
2015-05-18 20:50:28 -07:00
Pragmatic Software
ab39220fd5
Update version
2015-05-15 17:53:15 -07:00
Pragmatic Software
0b1d5c29bf
Fall back to codepad if sprunge fails to paste
...
Refactor rate-ratelimiting.
2015-05-15 17:53:13 -07:00
Pragmatic Software
4510d83153
unbanme
now only works for the first offense
...
However, the 2nd offense now only earns a 1 hour ban to make up for this.
2015-05-15 17:51:50 -07:00
Pragmatic Software
f00405bbd3
Update version
2015-05-12 22:51:07 -07:00
Pragmatic Software
3892295bf1
Wait for nick-change to botnick before joining to prevent joining with random nick
2015-05-12 22:51:04 -07:00
Pragmatic Software
d8a721d48a
Update version
2015-05-12 21:46:44 -07:00
Pragmatic Software
d7d6083a25
Add ability to show alias relationships in aka
command
2015-05-12 21:46:40 -07:00
Pragmatic Software
5effcd57ac
Update version
2015-05-12 12:59:49 -07:00
Pragmatic Software
20aeeea634
Add akalink
and akaunlink
commands
2015-05-12 12:59:45 -07:00
Pragmatic Software
9031d97910
Remove left-over debug messages
2015-05-12 12:59:22 -07:00
Pragmatic Software
43806aa228
Update version
2015-05-11 21:28:39 -07:00
Pragmatic Software
5e94890c61
Increase bot's default admin level to 90
...
`rebuildaliases` command requires level 90 admin due to it's special
use-case.
2015-05-11 21:28:36 -07:00
Pragmatic Software
fa6dad12cd
Add Aliases
table to MessageHistory
...
Improve linking of known aliases for users by using an aliases table
to track the linkages.
Improve check-bans implementation to use new aliases table for
significant performance gains and reduced resource usage.
2015-05-11 21:27:22 -07:00
Pragmatic Software
3776bef88a
Reduce WHOIS queries when target joins multiple channels at once
2015-05-10 12:36:47 -07:00
Pragmatic Software
b39123813c
Update version
2015-05-08 05:11:09 -07:00
Pragmatic Software
745b1ffdc7
Update version
2015-05-08 05:03:00 -07:00
Pragmatic Software
d7f2eb0d45
Update version
2015-05-06 21:22:25 -07:00
Pragmatic Software
a997705ea4
Correct sprunge error message
2015-05-06 21:22:22 -07:00
Pragmatic Software
a245b338c0
Update version
2015-05-06 21:15:35 -07:00
Pragmatic Software
898aa18783
Add rate-limit to paste_sprunge function
...
Improve formatting of truncate/paste output when an error has occurred.
2015-05-06 21:15:25 -07:00
Pragmatic Software
b5c10b73d9
Add "forever" as valid parsedate option
...
`ban` command will not save ban to unban-timeouts if "forever" is used.
2015-05-06 21:13:39 -07:00
Pragmatic Software
3be6755a61
Do not ignore last-spoken nick if nick is logged in bot admin
...
Add debug_enter_abuse registry entry
2015-05-06 21:10:55 -07:00
Pragmatic Software
92b738e962
Update version
2015-04-26 16:05:08 -07:00
Pragmatic Software
715ff8ee78
Find factoids in proper channel namespace
2015-04-26 16:05:03 -07:00
Pragmatic Software
b9b4a0e2d3
Update version
2015-04-21 01:10:58 -07:00
Pragmatic Software
00203f1705
Update version
2015-04-20 21:33:17 -07:00
Pragmatic Software
3bb3407d37
Update version
2015-04-19 01:55:55 -07:00
Pragmatic Software
f20932b442
Allow setting channel-specific registry item no_url_titles
and no_compile_blocks
to prevent invoking these in those channels
...
Rename $mynick to $botnick throughout
2015-04-19 01:55:52 -07:00
Pragmatic Software
4bda217774
Use botnick instead of trigger for stdin commands
...
Since trigger can be set to be a regex or character-class, use
botnick instead to ensure that commands are properly interpreted.
2015-04-19 01:53:46 -07:00
Pragmatic Software
778933caad
Update version
2015-04-16 03:12:14 -07:00
Pragmatic Software
29b3d7e80f
Update version
2015-04-14 20:14:24 -07:00
Pragmatic Software
789a4bfe2d
Correct handling of tell
ing factoid aliases
2015-04-14 20:14:22 -07:00
Pragmatic Software
b38456e411
Update version
2015-04-13 15:43:22 -07:00
Pragmatic Software
a9df8351d3
Move English-to-seconds time duration parser to Utils::ParseDate
...
Update ban_user_timed() and ignore_user() to use Utils::ParseDate
2015-04-13 15:43:19 -07:00
Pragmatic Software
9ff76ad500
Reduce pseudo-AI typing delay
2015-04-13 15:41:11 -07:00
Pragmatic Software
b9b0a55b4e
Ensure banmask is a proper mask when doing nick bans
2015-04-13 15:40:43 -07:00
Pragmatic Software
990604e085
Update version
2015-04-11 16:00:40 -07:00
Pragmatic Software
111717c798
Improve ban
command to understand English time durations
...
You can now use sentences like "1 hour and 30 minutes" to ban for 5400 seconds.
Also, can now ban in channels from a /msg.
2015-04-11 16:00:20 -07:00
Pragmatic Software
a6bafb12a4
Update version
2015-04-10 14:59:20 -07:00
Pragmatic Software
59c29977e6
Improve handling of factoids
...
Fix adding factoid to local channel when a factoid of same name already exists for global channel
Fix calling factoid from another channel with `fact` command
Do not prepend nick argument to aliases (/call factoids)
2015-04-10 14:59:17 -07:00
Pragmatic Software
d89e05b759
Update version
2015-04-10 05:08:19 -07:00
Pragmatic Software
f5723d425e
Update version
2015-04-10 03:43:52 -07:00
Pragmatic Software
c4ec393153
Update version
2015-04-09 11:04:48 -07:00
Pragmatic Software
6642281b8a
Update version
2015-04-06 00:49:51 -07:00
Pragmatic Software
a15b343752
Update version
2015-04-05 02:32:18 -07:00
Pragmatic Software
fcdf24deb5
Update version
2015-04-03 15:33:24 -07:00
Pragmatic Software
17afac5908
Check commands table for keyword before searching regexs
2015-04-03 15:33:19 -07:00
Pragmatic Software
d8c12522ed
Update version
2015-04-03 13:06:29 -07:00
Pragmatic Software
d1341ab4bd
Use proper lookbehind to prevent expansion of escaped variables
...
Remove adlib recursion loop since using $action already enables
recursion since subsitution on $action resets the regex position
2015-04-03 13:06:24 -07:00
Pragmatic Software
d2711956d6
Update version
2015-04-03 12:33:42 -07:00
Pragmatic Software
ae3791815b
Allow recursive expansion of adlib variables
...
Rename $count to $depth to reflect recursion
2015-04-03 12:33:39 -07:00
Pragmatic Software
383c194966
Don't remove trailing punctuation from arguments
...
Rename $count to $depth to reflect recursion
2015-04-03 12:32:35 -07:00
Pragmatic Software
f3bf1f5e5b
Rename $count to $depth to reflect recursion
2015-04-03 12:31:46 -07:00
Pragmatic Software
e76592442c
Update version
2015-04-03 10:41:07 -07:00
Pragmatic Software
433f381bc9
Don't expand $1, $2, etc, as adlibs
2015-04-03 10:40:48 -07:00
Pragmatic Software
7cd174506f
Update version
2015-04-03 10:12:37 -07:00
Pragmatic Software
528f66bfed
Refactor Factoids.pm to allow expansion of variables in all factoid types
...
Variables like $args and adlib variables can now be expanded in modules
and other factoid types.
2015-04-03 10:11:21 -07:00
Pragmatic Software
060d3aee6a
Fix wrong channel for fact
command
...
The `fact` command was using $channel instead of $from, which
caused the result to be sent to the channel the factoid lives
in instead of the channel the command was invoked in.
2015-04-03 10:08:57 -07:00
Pragmatic Software
2a0912342e
Update version
2015-03-30 15:04:12 -07:00
Pragmatic Software
c73f8b6a01
Minor refactor
2015-03-30 15:04:08 -07:00
Pragmatic Software
b2714e2d16
Update version
2015-03-29 20:26:35 -07:00
Pragmatic Software
b6f842bafc
Rename some missed variables from previous name-change
2015-03-29 20:26:08 -07:00
Pragmatic Software
b36a4fb2c9
Improve message output queue
...
- Use distinct per-channel queues
- Use timestamp of last message in queue to add delay
- Increase typing speed from 4 characters per second to 7 cps
2015-03-29 20:24:36 -07:00
Pragmatic Software
3f62bfbd94
Update version
2015-03-28 17:52:42 -07:00
Pragmatic Software
e199f6309a
Factoids can now be set to use a delayed output queue instead of immediately responding
2015-03-28 17:50:43 -07:00
Pragmatic Software
6701ee67f9
find_factoid() can now be told to return found alias instead
2015-03-28 17:49:42 -07:00
Pragmatic Software
5457e129b0
Update version
2015-03-27 13:01:15 -07:00
Pragmatic Software
7599fb0c19
Correct handling of bot trigger in /msg since earlier commit allowing trigger to be a regex
2015-03-27 13:00:43 -07:00
Pragmatic Software
5117c601fb
Update version
2015-03-27 04:09:50 -07:00
Pragmatic Software
9140cbec07
Remove ancient obsoleted -1 check on Nickserv account
2015-03-27 04:09:39 -07:00
Pragmatic Software
7f87730de8
Improve handling of Nickserv accounts in check-bans and unbanme
2015-03-27 04:08:47 -07:00
Pragmatic Software
377cf99d35
Update version
2015-03-23 04:27:49 -07:00
Pragmatic Software
44bdf26ebc
Add support for per-channel bot trigger characters
2015-03-23 04:27:41 -07:00
Pragmatic Software
2e9f15b7e2
Support IPv6 banmasks
2015-03-23 04:18:33 -07:00
Pragmatic Software
0db12b82ae
Update version
2015-03-20 21:14:11 -07:00
Pragmatic Software
be47b2cbf2
Improve output of blacklist and ignorelist commands
2015-03-20 21:14:07 -07:00
Pragmatic Software
3e88db4505
Update version
2015-03-16 23:22:22 -07:00
Pragmatic Software
728e05e514
Correct minor logic error
2015-03-16 23:22:18 -07:00
Pragmatic Software
b45b707ec2
Update version
2015-03-16 21:10:12 -07:00
Pragmatic Software
9a52fffcdd
Rename ShitList to BlackList; minor refactor of IgnoreList
2015-03-16 21:08:25 -07:00
Pragmatic Software
d350affa93
Update version
2015-03-15 20:13:03 -07:00
Pragmatic Software
cb9ead7624
Incorporate custom workdir
field into URL for modules
2015-03-15 20:12:44 -07:00
Pragmatic Software
9abce1c102
Update version
2015-03-15 14:07:54 -07:00
Pragmatic Software
284f943c08
Fix typos
2015-03-15 14:07:38 -07:00
Pragmatic Software
e604767517
Add support for shitlisting hostmasks
2015-03-15 13:52:30 -07:00
Pragmatic Software
73ba1e7c19
Update version
2015-03-11 02:00:14 -07:00
Pragmatic Software
7970018777
Improve handling of nick-change flood
2015-03-11 02:00:10 -07:00
Pragmatic Software
9ec50d8f5d
Update version
2015-03-04 00:41:41 -08:00
Pragmatic Software
386e03c184
Add stayloggedin
field to admin accounts to prevent logging out when /parting or /quitting
2015-03-04 00:39:44 -08:00
Pragmatic Software
d5073be98f
Update version
2015-02-17 01:47:38 -08:00
Pragmatic Software
e0971e8158
Update version
2015-02-17 01:32:28 -08:00
Pragmatic Software
f06aa9dda6
Update version
2015-02-15 20:30:34 -08:00
Pragmatic Software
b23935b8dc
Create SQLite index for Messages table
...
This significantly speeds up certain SQL actions on
the Messages table that were done for anti-flood detection.
The bot should now be significantly more quicker to catch
floods promptly without delay.
(Also, comment out some logging messages. Perhaps revisit this
and wrap them with a debug registry variable instead.)
2015-02-15 20:30:28 -08:00
Pragmatic Software
19788eec47
Use 0 second timeout on SelectHandler's select
...
We do not need to wait for any timeout period in SelectHandler's
select since IRC.pm's select has a 1 second (by default) timeout.
Removing this unnecessary delay will increase the overall
responsiveness of the bot.
2015-02-15 20:23:07 -08:00
Pragmatic Software
1ffe857ba5
Print IRC debug messages to STDERR
2015-02-15 20:19:51 -08:00
Pragmatic Software
ec13cf14bc
Search all channels if target channel is not a valid channel (private message, for instance)
2015-02-15 20:18:46 -08:00
Pragmatic Software
04f47ba3a1
Show "global" if namespace is ".*"
2015-02-15 20:17:36 -08:00
Pragmatic Software
9f265a0f0e
Do not enforce anti-flood on logged in bot admins
2015-02-15 20:16:37 -08:00
Pragmatic Software
559b9ddde1
Use NickList instead of MessageHistory for target channels
2015-02-14 04:03:39 -08:00
Pragmatic Software
800b097a34
Use NickList instead of MessageHistory for target channels
2015-02-14 04:03:18 -08:00
Pragmatic Software
ad1ab83298
Update bad_actions with more matches
2015-02-14 04:02:13 -08:00
Pragmatic Software
9f23aef2d0
Random IRC nicks cannot start with a digit
2015-02-14 04:01:09 -08:00
Pragmatic Software
022f86c3e1
Update version
2015-02-13 15:37:55 -08:00
Pragmatic Software
2db21dd011
Update version
2015-02-13 14:39:27 -08:00
Pragmatic Software
2a63cced1d
Update version
2015-02-11 21:38:48 -08:00
Pragmatic Software
23ae41c2f2
Update version
2015-02-07 08:48:58 -08:00
Pragmatic Software
b693f96806
Update version
2015-01-29 01:40:00 -08:00
Pragmatic Software
972b542582
Update version
2015-01-29 01:25:09 -08:00
Pragmatic Software
12cd9cb8e0
Improve launching of modules
...
If a `workdir` factoid key is present, the launcher will chdir
to make the specified value the current working directory.
Redirect stderr output to a $modulename-stderr in the module's
current working directory.
2015-01-27 23:49:30 -08:00
Pragmatic Software
4b9e177aec
Update version
2015-01-24 08:05:58 -08:00
Pragmatic Software
74f717ad51
Update version
2015-01-23 13:50:17 -08:00
Pragmatic Software
f8b6b19398
Show only chat messages in recall
surrounding context (no joins/quits/etc)
2015-01-23 13:50:14 -08:00
Pragmatic Software
573a18e6ef
Update version
2015-01-23 12:33:06 -08:00
Pragmatic Software
5ab76e6e6c
Add -x/-context <nick> flag to limit recall -before/-after context to that nick
2015-01-23 11:44:38 -08:00
Pragmatic Software
90597350c5
Update version
2015-01-23 07:36:53 -08:00
Pragmatic Software
b806a473d2
Add ability to get surrounding message context in recall command
...
Add the -b/-before and -a/-after flags to the `recall` command to display
that many lines of surrounding context.
For example, `recall -c ##c -b 100` will show the last 100 messages in the ##c
channel.
Another example, `recall pragma- 50 -b 5 -a 5` will show the 5 messages before the 50th
most recent message spoken by pragma- and then show that 50th message and finally show
the 5 messages after it.
2015-01-23 07:36:39 -08:00
Pragmatic Software
8810605691
Show server:port when connecting
2015-01-23 05:35:06 -08:00
Pragmatic Software
659e61f1fb
Update version
2015-01-10 15:56:46 -08:00
Pragmatic Software
7243832cc3
Improve connecting/nicking logic
...
Randomize nick when connecting and change to botnick after identifying.
Identify after receiving connection welcome message.
Ghost existing nick if it is already in use and then attempt to regain it.
2015-01-10 15:56:43 -08:00
Pragmatic Software
28bd6f3611
Update version
2015-01-06 15:35:55 -08:00
Pragmatic Software
5d1412227f
Update version
2014-12-30 17:26:35 -08:00
Pragmatic Software
ebd47406ca
Update version
2014-12-29 23:56:49 -08:00
Pragmatic Software
7a1d37b51a
Update version
2014-12-29 23:25:31 -08:00
Pragmatic Software
f9e2c3fb49
CJeopardy improvements
...
- Reduce hint wait-period from 60 seconds to 30 seconds
- Improve ignoring of common leading words in answers
- Correct several grammar mistakes/typos in questions
2014-12-29 23:19:32 -08:00
Pragmatic Software
b289fd155e
Add repo_module to registry to customize source URL in factinfo command
2014-12-29 23:15:46 -08:00
Pragmatic Software
4c65df0529
Update update-version.pl from svn to git
2014-12-29 23:04:35 -08:00
Pragmatic Software
ecd2bad066
Add anti-kick-auto-rejoin module that temporarily kickbans offenders who immediately auto-rejoin after having been kicked
2014-12-28 00:44:15 +00:00
Pragmatic Software
0b9513ca2e
Reduce ban-tracker verbosity by putting "Getting baninfo" log messages in a debug block
2014-12-27 05:20:21 +00:00
Pragmatic Software
bb5c825aab
Correct handling of anti-away /me actions
2014-12-27 05:08:42 +00:00
Pragmatic Software
e5909965f7
Move anti-away stuff to its own AntiAway.pm module; add /me actions to anti-away detection
2014-12-27 04:53:42 +00:00
Pragmatic Software
ba59edb040
Update paren.py module to improve parentheses verbosity
2014-12-20 19:44:40 +00:00
Pragmatic Software
a09d3c1d63
Add permop
channel flag; when non-zero bot automatically ops itself when joining channel, otherwise bot ops itself only when needing to perform an op command and then deops itself after its deop timeout has elapsed
2014-12-18 08:46:13 +00:00
Pragmatic Software
598e2e4988
Add NickList module to track nicks present in channels; dispatch pbot.join/pbot.part events when bot joins/parts channels
2014-11-15 01:18:33 +00:00
Pragmatic Software
d1e7abc175
Add event dispatcher module to allow modules to dispatch events and
...
to register handlers to listen for events.
Update IRCHandlers module to use new event dispatcher to dispatch
irc.events. Update several modules to register with dispatcher
to listen for irc.events.
Improve handling of reconnection upon unexpected disconnection.
Todo: update more things to use new event dispatcher logic.
2014-11-01 00:15:21 +00:00
Pragmatic Software
bc604d3ce2
Insert additional events to IRC::Event::_names table so default handlers will pick them up
...
Fix up indentation of _names table
2014-11-01 00:08:21 +00:00
Pragmatic Software
5a63fbd705
Auto-kick people who change nicks to a nick matching $bad_away_nicks
2014-10-28 20:35:33 +00:00
Pragmatic Software
c979efcfa6
Ignore add_op_command() for channels bot is not registered or set as op
2014-10-28 20:34:48 +00:00
Pragmatic Software
f640ade74e
Fix regex factoids so that regular factoid keywords have priority over regex triggers
2014-10-28 20:33:11 +00:00
Pragmatic Software
f70e044a60
Update latest hostmask last_seen timestamp when linking accounts
2014-10-14 02:33:13 +00:00
Pragmatic Software
a679b0ff15
Improve handling of KICK events wrt to message history
2014-10-14 02:32:22 +00:00
Pragmatic Software
46fa0d52b3
Minor code formatting improvement
2014-10-14 02:30:57 +00:00
Pragmatic Software
4dbec8001e
Fix regex factoids in global namespace not being triggered
2014-10-14 02:30:14 +00:00
Pragmatic Software
750b78cb53
quotemeta doesn't escape underscores, whoops -- manually escape underscores for Message History SQL statements
2014-10-01 21:18:54 +00:00
Pragmatic Software
79796f9710
CGrammar: Add istrue to static assertion expression; add ability to customize istrue truthiness result, add isfalse
2014-09-19 04:17:37 +00:00
Pragmatic Software
9d3c8c0285
CGrammar: Correct translation of sizeof in static assertions
2014-09-19 03:54:13 +00:00
Pragmatic Software
b2e6d7e4c0
Update version
2014-09-11 13:37:57 +00:00
Pragmatic Software
2529d49aac
CGrammar: Remove excessive "result of the expression" for parenthesized expressions
2014-09-09 07:20:42 +00:00
Pragmatic Software
83af062376
Fix case-sensitivity to show QUIT messages properly
2014-09-09 07:19:10 +00:00
Pragmatic Software
d40361a2bf
Disallow ?, [, ], and ~~ in math.pl
2014-08-31 20:27:40 +00:00
Pragmatic Software
fa2e3e4b5d
Dump LWP error text if get_title.pl fails to fetch webpage
2014-08-31 20:26:24 +00:00
Pragmatic Software
838f232d68
Update C Jeopardy questions
2014-08-31 20:24:08 +00:00
Pragmatic Software
a5ede3307e
Update C facts module
2014-08-31 20:23:27 +00:00
Pragmatic Software
021401b538
C Jeopardy: Show correctness percentage when an answer is almost correct; recommend #cjeopardy channel when attempting to play via /msg
2014-08-31 20:21:09 +00:00
Pragmatic Software
34d9a2a6d9
Appropriately wildcard /gateway/ hostmask bans
2014-08-18 14:57:12 +00:00
Pragmatic Software
749fda0ff3
Add HHGTTG easter egg to math.pl
2014-08-13 16:55:04 +00:00
Pragmatic Software
654cce66a5
Improve check for ban-evasion when nick-change is detected
2014-08-12 05:51:21 +00:00
Pragmatic Software
068c6a0559
Add default handler for unhandled IRC events; ignore certain IRC events; improve handling of chan-op requests
2014-08-11 07:34:30 +00:00
Pragmatic Software
c40e34b3a1
Add newline to "also known as" output to improve formatting in pastes
2014-08-11 07:33:05 +00:00
Pragmatic Software
321fdc401c
Improve handling of white-space when splitting output on new-lines
2014-08-11 07:32:24 +00:00
Pragmatic Software
c03a1288b6
CGrammar: Fix a|an substitution to an|a
2014-08-10 05:31:29 +00:00
Pragmatic Software
527e8490a3
CGrammar: Add offsetof
2014-08-10 05:03:37 +00:00
Pragmatic Software
48382de916
Add ability to set maximum number of newlines allowed before truncating for preserve newlines
2014-08-05 23:15:11 +00:00
Pragmatic Software
dddc9c3be9
Paste remaining lines to paste site if truncated with more lines remaining when preserve newlines is in effect
2014-08-05 23:11:51 +00:00
Pragmatic Software
a8ffedc853
C Jeopardy commands now use preserve_whitespace
2014-08-04 22:51:09 +00:00
Pragmatic Software
ca37b4fd4e
Fix use of wrong sub name when saving registry entries in add/remove subs
2014-08-04 22:50:22 +00:00
Pragmatic Software
b15ab7f84f
Add ability to preserve newlines in output; require explicit factadd
to add factoids
2014-08-04 22:48:32 +00:00
Pragmatic Software
74cffe091c
C Jeopardy: More improvements to question database
2014-08-04 21:51:23 +00:00
Pragmatic Software
18d245cf10
C Jeopardy: Now says "Too slow!" if someone else also answers the correct answer within 15 seconds
2014-08-04 06:25:56 +00:00
Pragmatic Software
7d6e505d9f
C Jeopardy: Clean up some typoes in the questions
2014-08-04 05:20:28 +00:00
Pragmatic Software
bf9fe32682
C Jeopardy: Fix and clean-up some questions; fix substitution if "is" in answers
2014-08-04 00:35:41 +00:00
Pragmatic Software
4bf78bf978
C Jeopardy: Add tons of new questions; add support for supplemental tidbits; don't obscure dashes and underscors in hints
2014-08-03 22:20:54 +00:00
Pragmatic Software
55bdc5b930
Enforce CPU limit on expand_macro module
2014-08-03 22:02:36 +00:00
Pragmatic Software
bc871bf4b2
C facts: Improve generation of C facts; update cfacts.txt with new facts
2014-08-02 16:01:51 +00:00
Pragmatic Software
9651847165
C Jeopardy: Correct showing of text/answer in "close enough" output due to recent change in handling of typographical case
2014-07-29 20:21:06 +00:00
Pragmatic Software
236b4c1d06
C Jeopardy: Add time-limit to hints
2014-07-29 20:07:48 +00:00
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
Pragmatic Software
96c57d80e5
Minor updates to various modules
2014-04-26 15:22:46 +00:00
Pragmatic Software
db66a47257
Update quotegrabs and factoids data
2014-04-26 15:21:00 +00:00
Pragmatic Software
ba8dc5195a
Update PBot.html documentation
2014-04-26 15:20:38 +00:00
Pragmatic Software
f50fec1f90
Fix failed substitution of undefined variables
2014-04-26 15:19:55 +00:00
Pragmatic Software
76cd4965f1
compiler_vm: allow ()'s around function identifiers; e.g. int (main)(void) {}
2014-04-26 15:17:11 +00:00
Pragmatic Software
fc1e372908
Update C-Faq module to use latest questions and links
2014-04-22 15:10:10 +00:00
Pragmatic Software
6dabff19bb
Fix ban evasion kicking
2014-04-21 07:26:06 +00:00
Pragmatic Software
8cd59b25da
Fix chanop command execution, kick ban evaders
2014-04-19 10:38:16 +00:00
Pragmatic Software
b642460d84
Don't allow spaces in factoid keywords
2014-04-19 10:37:03 +00:00
Pragmatic Software
030fed38f2
Allow kicking from private message
2014-04-19 10:35:27 +00:00
Pragmatic Software
b3ab3bae8f
Remove extraneous debug logging statements
2014-04-19 10:34:21 +00:00
Pragmatic Software
f003ff1178
Add unquote_spaces
factoid module metadata to remove escaped quotes from quotemeta, and allow g modifier to modulelauncher_subpattern
2014-04-19 10:32:49 +00:00
Pragmatic Software
08e300bd54
compiler_vm: bump "Same output" length case to 22 to allow repetitions of "Success (no output)"
2014-04-07 07:24:14 +00:00
Pragmatic Software
f347c6d1e3
Update man.pl to use newer manpage, and minor formatting fixes
2014-04-07 05:12:00 +00:00
Pragmatic Software
7367e4f18c
Include action_with_args
in factoids export
2014-04-07 04:50:00 +00:00
Pragmatic Software
736056b586
compiler_vm: Don't display "Same output" unless length of output is greater than 10 characters
2014-04-03 07:54:35 +00:00
Pragmatic Software
8a7c539e0f
compiler_vm: print "Same output" only if same output is within 10 minutes of last snippet otherwise print actual output again
2014-04-03 07:47:19 +00:00
Pragmatic Software
b2544d9d5a
compiler_vm: remember last output per channel and print "Same output." if the current output matches the last output
2014-04-02 23:48:43 +00:00
Pragmatic Software
4e8aa560e8
Use proper letter-casing of nick in recall command results
2014-04-02 01:58:35 +00:00
Pragmatic Software
1ec463f021
compiler_vm: Remember last keyword when chaining together "and" statements in editor
...
This allows the more natural "replace 'a' with 'b' and 'c' with 'd'" syntax
rather than the previous syntax of "replace 'a' with 'b' and replace 'c' with 'd'"
2014-04-02 00:23:14 +00:00
Pragmatic Software
474f7ed168
Remove compiler_vm ability to execute .gdbinit commands
2014-03-24 15:37:54 +00:00
Pragmatic Software
f13adc1500
Fix derp in math.pl
2014-03-24 03:10:08 +00:00
Pragmatic Software
cb6d811ba2
Minor improvements to math.pl
2014-03-24 03:05:48 +00:00
Pragmatic Software
2a933bff87
Improve math.pl to support specific math functions (e.g., sqrt, etc)
2014-03-24 02:25:37 +00:00
Pragmatic Software
ee3fddf1eb
expand_macros.pl doesn't require a nick argument any longer, correct ARGV count
2014-03-22 18:52:54 +00:00
Pragmatic Software
8338b009d4
Properly handle preserve-whitespace; use modulelaucher_subpattern regex to correct whitespace
2014-03-18 14:55:34 +00:00
Pragmatic Software
e728276aca
Add remove_reader() to SelectHandler and remove unnecessary foreground check from StdinReader's initialize()
2014-03-16 01:47:16 +00:00
Pragmatic Software
edd507b2e0
Show channel in quotegrabs getq command
2014-03-15 08:12:52 +00:00
Pragmatic Software
2faeeb2de8
Add -nick/-channel/-text options to quotegrabs rq command (also retaining original syntax)
2014-03-15 08:07:05 +00:00
Pragmatic Software
f998f974c0
Truncate module launcher piped result
2014-03-15 01:53:33 +00:00
Pragmatic Software
36b7e1fa6f
Improve handling of interpreter result and module execution
2014-03-14 10:05:11 +00:00
Pragmatic Software
4a110848e9
Add SelectHandler class to register callbacks for selecting and reading handles; updating StdinReader to use SelectHandler
2014-03-14 05:51:15 +00:00
Pragmatic Software
1831d0775d
anti-flood: Enter abuse now requires 10 seconds or less between messages
2014-03-13 12:00:28 +00:00
Pragmatic Software
087c819069
anti-flood: Add enter-key abuse tracking; use duration() for displaying ban-lengths; save message history after prune
2014-03-12 22:13:05 +00:00
Pragmatic Software
f2c556e5c7
Add utility to view/analyze message_history off-line
2014-03-11 00:05:58 +00:00
Pragmatic Software
fe020443bb
anti-flood: Set hostmask to last known nickserv account when checking accounts until nick without account is found
2014-03-10 08:15:33 +00:00
Pragmatic Software
8afb73acc2
Fix "argument isn't numeric" warning
2014-03-10 06:39:30 +00:00
Pragmatic Software
bd3fa4dee3
anti-flood: Improve linking of accounts
2014-03-10 06:28:56 +00:00
Pragmatic Software
e808286f24
anti-flood: Now tracks if a user uses different NickServ accounts, and remembers each one for ban-evasion detection
2014-03-10 03:50:02 +00:00
Pragmatic Software
e6e02259e4
anti-flood: execute whois command more smartly
2014-03-09 07:15:50 +00:00
Pragmatic Software
3bd73c4866
Improvements to anti-flood message history storage and maintenance
2014-03-09 06:56:48 +00:00
Pragmatic Software
17ed2fb64a
Remove extranous ) typo in "Displaying text" string
2014-03-07 16:51:18 +00:00
Pragmatic Software
80a29256ed
Fix undefined variable $from when issuing commands from stdin
2014-03-07 16:50:35 +00:00
Pragmatic Software
4bcd485c2e
Anti-flood: remove some log messages to reduce noise; fix +q $a:account detection
2014-03-07 16:48:56 +00:00
Pragmatic Software
765e907aa7
Remove single-quotes from found-one-factoid keyword/action
2014-03-07 00:57:08 +00:00
Pragmatic Software
bff786666e
compiler_vm: Add more standard headers to default set of includes
2014-03-06 21:52:44 +00:00
Pragmatic Software
bc261e0965
compiler_vm: Add ability to show/diff/copy another channel's snippet
2014-03-05 19:58:46 +00:00
Pragmatic Software
8cecad56d2
Minor refactor of HashObject initialize sub
2014-03-05 19:30:37 +00:00
Pragmatic Software
21bec3b1e4
Update quotegrabs data
2014-03-05 14:42:44 +00:00
Pragmatic Software
e1c4c30743
Slight rewording of join-flood notification message to improve awareness of automatic unbanning
2014-03-05 14:32:24 +00:00
Pragmatic Software
d080a6ff89
factshow command now shows module action
2014-03-05 14:30:02 +00:00
Pragmatic Software
42c2554655
Add chanlist command to list channel data
2014-03-05 14:28:58 +00:00
Pragmatic Software
a5ae7478e1
compiler_vm: Add $channel argument to separate snippet history into per-channel/nick files
2014-03-04 21:40:51 +00:00
Pragmatic Software
921c9917a5
Add $channel special variable for factoids/modules that expands to $from parameter
2014-03-04 21:40:13 +00:00
Pragmatic Software
2a4c1bafd1
Don't ban if $a:account matches account
2014-03-04 10:50:12 +00:00
Pragmatic Software
c1f87bf177
Don't show regex escapes in factfind output
2014-03-04 10:48:08 +00:00
Pragmatic Software
ec6f146fa6
Don't show regex escapes in factfind output
2014-03-04 10:47:43 +00:00
Pragmatic Software
62c9477a73
Update factoids (use add_nick for prec/paren, etc)
2014-03-04 10:45:36 +00:00
Pragmatic Software
818ad29914
Remove need to pass nick as command-line parameter to expand/paren modules (use add_nick factoid metadata)
2014-03-04 10:43:28 +00:00
Pragmatic Software
9b2c374bbb
Use export_site properly in Quotegrabs.pm
2014-03-03 10:33:34 +00:00
Pragmatic Software
f6c75f2b4f
Factoids and Quotegrabs HTML exported tables can now be filtered
2014-03-03 09:24:33 +00:00
Pragmatic Software
f4275a4cc8
compiler_vm: more compiler output beautification
2014-03-01 20:25:42 +00:00
Pragmatic Software
4d0e23243b
compiler_vm: minor beautification of compiler diagnostic output
2014-03-01 14:42:08 +00:00
Pragmatic Software
80a7a82221
Remove extranous flushall from compiler watchdog
2014-02-28 07:52:28 +00:00
Pragmatic Software
e72a8c04a2
Remove use of compiler output merger
2014-02-28 07:48:27 +00:00
Pragmatic Software
7a99175bd7
compiler_vm updates
...
- make compiler_output_merger.pl more resistant to being killed
- support gcc 4.9.0's -fdiagnostics-show-caret
(disable in channel, enable in paste)
- force a newline to be added to program output to prevent output
from being buffered by output merger
2014-02-27 16:31:31 +00:00
Pragmatic Software
aa00540c8d
compiler_vm: Hack to ensure gdb and prog streams are output in the correct order
2014-02-25 11:49:21 +00:00
Pragmatic Software
d66d3d2a31
compiler_vm: Add constants to easily customize time-out and nographic options in compiler_server.pl
2014-02-25 11:47:57 +00:00
Pragmatic Software
0b2b18d93a
compiler_vm: separate program output and gdb output in watchdog to prevent crossing the streams
2014-02-25 05:40:44 +00:00
Pragmatic Software
91a9c69fa5
Interpreter: check for {} code command before regular commands
2014-02-25 03:47:12 +00:00
Pragmatic Software
f6edfce6b4
compiler_vm: Use random fortune instead of Ipsum for default input
2014-02-24 07:25:50 +00:00
Pragmatic Software
6e3dc6dba2
Add add_nick
metadata key to tell modules to prepend nick to resulting text; unquote all spaces in module arguments
2014-02-24 00:58:00 +00:00
Pragmatic Software
7388bf9cfc
Add heartbeat logic to compiler server to detect when vm is booted (prevents unnecessary vm restarts)
2014-02-23 00:56:51 +00:00
Pragmatic Software
38fb275234
Fix error message for bad search term within paragraph in c99std/c11std
2014-02-22 02:42:25 +00:00
Pragmatic Software
4c4bdd9188
Show nick before channel in rq
command when no quotes found
2014-02-10 18:07:34 +00:00
Pragmatic Software
6d8fac71fb
Improve output when no matching quotes found for rq
command
2014-02-10 18:04:05 +00:00
Pragmatic Software
29316b23ba
Update c2english with -f force option, and hide certain errors
2014-02-05 01:13:16 +00:00
Pragmatic Software
5a61f57f3c
Use Storable to save/load message history hash
...
Reuse config_dir/data_dir variable in pbot.pl
2014-02-05 01:10:56 +00:00
Pragmatic Software
0f2616a552
Update paren module to handle ternary conditional operator
2013-12-23 08:48:24 +00:00
Pragmatic Software
8adc766dc4
Improve paren/prec module
2013-12-01 13:36:21 +00:00
Pragmatic Software
9c1a077d2e
Allow expand_macros.pl to #include stuff to expand
2013-11-28 05:36:41 +00:00
Pragmatic Software
b042e073db
Remove #include from expand_macros.pl input
2013-11-28 05:25:54 +00:00
Pragmatic Software
d5d4d503b2
Update factoids (added expand)
2013-11-28 05:12:39 +00:00
Pragmatic Software
2323bb89bb
Add expand_macros.pl module
2013-11-28 05:11:54 +00:00
Pragmatic Software
de89ca61a2
Add n1256.out and n1570.out
2013-11-18 15:00:14 +00:00
Pragmatic Software
489ed21aa0
Add workaround to ensure $##stop_join_flood forwards are removed from unban_timeouts if non-existent
2013-11-17 17:06:54 +00:00
Pragmatic Software
ece84c23f8
Remove left-over nick/host lower-casing code
2013-11-17 17:05:20 +00:00
Pragmatic Software
ac6d913290
Update parens.py with edk's simplification of parentheses verbosity logic
2013-11-14 17:33:11 +00:00
Pragmatic Software
936d45e04e
Improve verbosity of parenthesized precedence in parens module
2013-11-14 15:21:52 +00:00
Pragmatic Software
f618b29282
Do not lowercase hostmask/nicks in message history (quotegrab now preserves nick case)
2013-11-14 06:35:40 +00:00
Pragmatic Software
d83fbf83db
Update factoids and quotegrabs
2013-11-14 06:34:20 +00:00
Pragmatic Software
805215ce81
Add paren.py module (shows precedence of expressions by adding parentheses)
...
TODO: Add 'show_nick' factoid/module key so nickname logic doesn't need to be
added to module sources
2013-11-14 06:29:22 +00:00
Pragmatic Software
a9adbcf498
Support +
in recall
command to recall multiple messages, similiar to grab
2013-10-27 07:34:00 +00:00
Pragmatic Software
97261637f1
Add recall
command
2013-10-26 23:22:25 +00:00
Pragmatic Software
274193bed7
Allow quote grabbers to delete their own grabs
2013-10-26 02:39:54 +00:00
Pragmatic Software
b7b9ce76ca
Fix potential infinite loop due to not restoring pos value after regex
2013-10-25 07:33:43 +00:00
Pragmatic Software
e1588491e3
Improve error messages for grab
command
2013-10-22 21:30:56 +00:00
Pragmatic Software
1155205f0e
Bot now keeps message history for itself -- can now be grabbed for quotegrabs
2013-10-22 18:57:08 +00:00
Pragmatic Software
111847340e
Make c2english output slightly more clean
2013-10-19 18:42:05 +00:00
Pragmatic Software
c6e67200c1
Run code through gcc for syntax checking before attempting to parse to english
2013-10-19 17:56:43 +00:00
Pragmatic Software
aeec4fb2f5
Restore missing "$keyword is $result" when triggering factoid without $ref_from
2013-10-14 17:22:06 +00:00
Pragmatic Software
a4def7d653
Fix potential race-condition check-ban issue where a server could send a message immediately after someone is banned, causing them to be falsely detected as evading a ban
2013-10-14 11:53:34 +00:00
Pragmatic Software
6bb3e86f33
Minor improvements to html export css so links aren't as ugly
2013-10-13 10:56:01 +00:00
Pragmatic Software
d374fdfc01
Skip channels without factoids in html export
2013-10-13 10:23:49 +00:00
Pragmatic Software
b6a09e50e3
Add table of contents to quotegrabs html export
2013-10-13 10:23:20 +00:00
Pragmatic Software
7cf8e91ab2
Fix export command factoids/quotegrabs argument
2013-10-13 10:14:20 +00:00
Pragmatic Software
32385ec691
Fix wrong quote-type for #include derp
2013-10-12 16:35:23 +00:00
Pragmatic Software
c91a8e5c3d
Fix /say substitution derp that allowed "/say /msg foo bar" to actually invoke /msg rather than saying "/msg foo bar"
2013-10-12 15:06:27 +00:00
Pragmatic Software
02ebf106a8
Add table of contents to factoids html export
2013-10-12 13:52:12 +00:00
Pragmatic Software
37dca64465
Add missing closing html tags to quotegrabs html export
2013-10-12 13:36:36 +00:00
Pragmatic Software
aab27f4797
Improve factoids export to use tablesorter
2013-10-12 13:35:57 +00:00
Pragmatic Software
fd12d228d8
Improve author(s) column in quotegrab html export
2013-10-12 11:00:29 +00:00
Pragmatic Software
3d233dcdfe
Add tablesorter javascript library and related css
2013-10-12 04:39:24 +00:00
Pragmatic Software
ba5042259f
Improve quotegrab export and touch-up database
2013-10-12 04:35:01 +00:00
Pragmatic Software
701e554ecf
Improve quotegrab html export with sortable columns
2013-10-11 18:17:07 +00:00
Pragmatic Software
174e7f71e4
Fix issues with quoted literals and #include statement
2013-10-11 14:50:29 +00:00
Pragmatic Software
272e13236f
Preserve empty lines in source
2013-10-07 05:03:03 +00:00
Pragmatic Software
bd9e53e77a
Split multi-context grabbed nicks to show first nick when displaying such quotegrabs
2013-10-04 22:14:16 +00:00
Pragmatic Software
2cb74ecf95
Add functionality to grab multiple nicks in one quotegrab
2013-10-04 04:55:45 +00:00
Pragmatic Software
dc1390fca2
Improve formatting
2013-09-16 10:35:32 +00:00
Pragmatic Software
7decfdf28a
Correct devalidation and QUIT event issues
2013-09-14 01:56:00 +00:00
Pragmatic Software
23d2e57527
Added ability to lock factoids to prevent editing; improved detection of ban-evasion by devalidating accounts on part/quit and devalidating existing accounts that match a banmask when a ban occurs
2013-09-13 21:48:19 +00:00
Pragmatic Software
d739415a29
Fix show/undo/replace/etc (need args stripped first); undo once again updates last-code record
2013-09-13 11:32:15 +00:00
Pragmatic Software
2720071dbd
compiler_vm:
...
Add compiler flags section to web-pasted output
Clean up output section in web-pasted output
Save cc-specific flags (-paste, -nomain, etc) to last-code
2013-09-13 11:03:50 +00:00
Pragmatic Software
8d882a4240
compiler_vm: -paste and -nomain arguments no longer need to be first arguments; fix issue with replace
command
2013-09-13 09:29:24 +00:00
Pragmatic Software
a6a3129171
Preserve comments in code/paste
2013-08-27 12:49:14 +00:00
Pragmatic Software
522b9770dd
compiler_vm:
...
Fix comment stripping logic regarding C89 comments versus C99 comments in code like `int i = 10 //**/ 2\n;`
Code history now includes argument flags
Improved regex parsing of diff tags
2013-08-27 00:42:17 +00:00
Pragmatic Software
4adedc2a90
Show "No difference." when code is the same in cc diff
2013-08-24 15:01:31 +00:00
Pragmatic Software
cb74a9be1e
Improved matching of tags in cc diff
to be less greedy
2013-08-23 22:26:32 +00:00
Pragmatic Software
e6ae49fd4f
Improve handling of spaces in cc diff
2013-08-23 18:26:43 +00:00
Pragmatic Software
36e48cb703
Added cc diff
command
2013-08-22 20:41:54 +00:00
Pragmatic Software
0e783365d1
Misc updates to modules/compiler_vm
2013-08-16 17:28:17 +00:00
Pragmatic Software
a6f608cda5
Don't remove ban_timeout on -q (only +b/-b are tracked); use wildcard host when banning for evasion instead of specific host
2013-08-06 19:56:28 +00:00
Pragmatic Software
2a332d6415
Improve ban-evasion detection
2013-08-03 17:26:49 +00:00
Pragmatic Software
edff4b6c4c
Update ref_user to use full hostmask instead of just nick; add edited_by/edited_on to factoid metadata levels hash
2013-07-31 13:48:50 +00:00
Pragmatic Software
d2d5695dda
Add edited_by/edited_on fields when changing factoids; Use full hostmasks instead of just nick for owner/edited_by fields when adding/editing factoids
2013-07-31 13:29:37 +00:00
Pragmatic Software
67e0833f93
Bug-fixes to recent commits
2013-07-30 13:12:21 +00:00
Pragmatic Software
2509bcec64
Fix splitting of IPv6 masks in modes in IRC/Connection.pm
...
Include channel in "Unbanning ..." message in unban_user
Set target_nickserv_account if accounts match in check_bans
2013-07-30 09:50:59 +00:00
Pragmatic Software
7f2cefea7a
Don't check for ban evasion on PARTs
2013-07-28 14:12:57 +00:00
Pragmatic Software
d170f75924
Improve ban evasion detection
2013-07-28 10:31:12 +00:00
Pragmatic Software
416115f12f
Ban timeouts hash converted to DualIndexHashObject to properly group masks by channels
2013-07-24 12:35:40 +00:00
Pragmatic Software
58d45480a5
Using grab
command without arguments now properly displays help text
2013-07-24 12:34:13 +00:00
Pragmatic Software
553eceeb77
Fix interpretation of /me commands
2013-07-24 12:33:19 +00:00
Pragmatic Software
2a62729fcc
Fix potential infinite loop in "replace all"; show line numbers in diagnostics if using "-paste"; other misc fixes
2013-06-17 22:25:05 +00:00
Pragmatic Software
8d6c2587a8
Show number of matching quotes only if more than one match
2013-06-09 00:04:20 +00:00
Pragmatic Software
0f234734b8
Prepend "/me" to ACTION messages; update Quotegrabs to recognize "/me" messages
2013-06-04 17:09:30 +00:00
Pragmatic Software
8586038f03
Misc updates
2013-06-03 17:04:24 +00:00
Pragmatic Software
dc52430044
Add SSL support, and other misc updates
2013-02-25 02:27:24 +00:00
Pragmatic Software
abd9fafb87
Update factoids and quotegrabs database
2013-02-13 07:23:01 +00:00
Pragmatic Software
57166ff734
compiler_vm: Handle --version flag
2013-02-05 11:14:19 +00:00
Pragmatic Software
3d492ed76b
Allow function argument list to be empty; e.g., int main() { code }
2013-02-01 23:35:11 +00:00
Pragmatic Software
e846f24716
Rename -naked to -nomain; fix issue with function prototypes
2012-12-30 08:14:27 +00:00
Pragmatic Software
9205736b3f
Don't add {}'s around single statements following if/for/etc; add -naked flag to prevent wrapping code with a main function
2012-12-29 16:19:51 +00:00
Pragmatic Software
e93ac26062
compiler_vm: Warn about #defines not terminated with \n
2012-11-21 19:01:10 +00:00
Pragmatic Software
d5e5f2c728
Reposition *
character in function regex to be consistent
2012-11-19 15:57:54 +00:00
Pragmatic Software
c8d77ed230
Replace A-Z0-9_
in function regex with \w
to slightly improve readability
2012-11-19 15:52:07 +00:00
Pragmatic Software
a6a2b3eeb3
Minor clean-up of previous commit to remove unnecessary substitutions
2012-11-19 15:45:13 +00:00
Pragmatic Software
1d7791d9a5
compiler_vm: Improve extraction of function parameters containing parentheses
2012-11-18 19:18:56 +00:00
Pragmatic Software
3f771df8bc
compiler_vm: added -paste flag to send formatted source/output to paste site and show link instead of output; e.g. cc -paste <code>
--> http://somepastesite.com
2012-11-14 18:36:04 +00:00
Pragmatic Software
39a38b58f8
Triggering non-existent factoids now attempts to factfind (for keywords and text) before trying a levenshtein closest match (of keywords)
2012-11-04 20:42:38 +00:00
Pragmatic Software
b8d2d0797e
compiler_vm: Show output from program when using paste
command
...
google search: Show "No results found" if no results found
c99std/c11std: Minor clean-up of output
2012-11-02 22:08:20 +00:00
Pragmatic Software
208f89837f
Improve handling of auto-op and op-commands on per-channel basis
...
Restore functionality to log out admins when they part/quit
Improve display of quit messages in log
2012-10-27 21:03:10 +00:00
Pragmatic Software
f16dedf680
compiler_vm: add script to mount/umount qcow2 for editing
2012-10-24 12:29:00 +00:00
Pragmatic Software
4602c3b732
compiler_vm: Pass host date to guest
...
Replace "Killed" with "[Killed]"
Don't print empty '' after unprintable char values
Set default language in compiler_client.pl to C11
2012-10-24 12:26:18 +00:00
Pragmatic Software
7f8b39d20a
compiler_vm: Limit cpu usage and kill processes using excess cpu
2012-10-07 17:48:18 +00:00
Pragmatic Software
f61bb61aeb
Channels: Properly check for arguments to chanadd/chanrem
...
HashObject: Fix potential divide by zero
compiler_vm: Limit cpu usage and kill processes using excess cpu
Unbuffer stdout
2012-10-05 01:59:04 +00:00
Pragmatic Software
65660625c2
Added dice_roll.pl module, and updated others
2012-09-18 01:32:07 +00:00
Pragmatic Software
bf91c67346
compiler_vm: improve parsing/function extraction
2012-09-17 07:12:16 +00:00
Pragmatic Software
2b5ff48a4c
Interpreter: tell <nick> about <command> now case-insensitive
...
AntiFlood: Correct use of ignore list
IgnoreList: Ignoring user without args now permanent instead of 5 mins
Save time when ignore expires instead of seconds remaining
Improve output of `ignore list` command for readability
2012-09-06 10:09:44 +00:00
Pragmatic Software
a0bcdfef2f
compiler_vm: improve parsing of cpp and functions (properly handle \n)
2012-09-03 18:48:47 +00:00
Pragmatic Software
7ed26f928e
compiler_vm: fix \n after #include directives
2012-09-03 07:02:17 +00:00
Pragmatic Software
a4cf4136ee
compiler_vm: Improve handling of \n in quoted literals
2012-09-01 05:20:01 +00:00
Pragmatic Software
ccf1d35a54
Improvements in interpreter; tell <nick> about <command>; etc
2012-08-23 22:50:07 +00:00
Pragmatic Software
09cb762c6f
compiler_vm: update client to remove duplicate warnings/infos; typeof('a') should be int; misc output clean-ups
2012-08-18 03:28:10 +00:00
Pragmatic Software
da3e05bc72
Prevent gcc from optimizing away gdb() call
2012-08-16 01:17:28 +00:00
Pragmatic Software
6b35dc210c
Skip message containing grab command when grabbing own nick; match brackets for compiler-block; etc
2012-08-12 16:41:38 +00:00
Pragmatic Software
cb770d81ac
Grab most recent quote by regex instead of oldest first
2012-08-01 11:06:01 +00:00
Pragmatic Software
876d9fb5c6
Improved grab command to accept regex for history
2012-08-01 09:57:43 +00:00
Pragmatic Software
52b23418e2
Updated factoids and quotegrabs data
2012-07-22 19:27:37 +00:00
Pragmatic Software
8a70c06096
Misc bug fixes and tweaks
2012-07-22 19:22:30 +00:00
Pragmatic Software
dad1bf978e
compiler_vm: improved function extraction (missed a spot)
2012-03-21 16:02:02 +00:00
Pragmatic Software
0e957ba414
compiler_vm: improved function extraction
2012-03-21 15:58:07 +00:00
Pragmatic Software
2fc11ea1fd
compiler_vm: disregard this commit
2012-03-21 15:54:43 +00:00
Pragmatic Software
5066f348a1
compiler_vm: added support for splint
2012-03-12 03:33:54 +00:00
Pragmatic Software
b30216d8ec
compiler_vm: restored stdin input, improved error output, reset vm only on timed-out for improved speed
2012-02-29 01:10:12 +00:00
Pragmatic Software
38166bd14d
compiler_vm: reset vm only on time-outs to improve response speed
2012-02-25 08:30:49 +00:00
Pragmatic Software
58a592c86f
compiler-vm: use astyle with file instead of stdin to avoid astyle bug; add lorem ipsum default -input text
2012-02-15 22:00:58 +00:00
Pragmatic Software
4e52d77f61
compiler_vm: improved macro parsing; replace newlines outside of quoted text
2012-02-11 05:05:49 +00:00
Pragmatic Software
a2e2d15fc7
compiler_vm: added libc fatal errors; trace program only on signal
2012-02-09 18:48:45 +00:00
Pragmatic Software
4efa96dbbe
docs: updated PBot.html
2012-02-05 18:27:04 +00:00
Pragmatic Software
11923967cf
compiler_vm: watchdog debug output includes commands sent to gdb, fflush stdout on breakpoints
2012-02-04 20:34:55 +00:00
Pragmatic Software
e3ec59322e
compiler_vm: watchdog wraps more gdb output with <>
2012-02-04 06:02:52 +00:00
Pragmatic Software
56bd0e9101
compiler_vm: added trace() macro to trace function calls
2012-02-03 17:54:52 +00:00
Pragmatic Software
e2e54079ae
compiler_vm: improved abormal signal handling
2012-02-02 18:28:24 +00:00
Pragmatic Software
fd1f18850a
compiler_vm: updates (needs refactoring, pronto)
2012-02-02 04:14:38 +00:00
Pragmatic Software
22b43f21bf
compiler_vm: updated gdb parsing (still needs refactoring)
2012-01-31 05:32:24 +00:00
Pragmatic Software
d56aaeebca
compiler_vm: updated to show local vars if no output, etc
2012-01-29 23:50:33 +00:00
Pragmatic Software
84f2f979a6
compiler_vm: rewrote watchdog to execute within gdb; added dump(), ptype(), watch() macros
2012-01-28 07:39:13 +00:00
Pragmatic Software
2830147338
Added missing encode_entities to c99/c11std generation
2012-01-23 22:33:13 +00:00
Pragmatic Software
59e100a44c
Updated c99std and c11std to index footnotes
2012-01-23 22:24:51 +00:00
Pragmatic Software
e5028eded6
Updated genstd.pl and n1256.txt/n1570.txt to improve parsing/detection of unparsed sections
2012-01-17 02:07:01 +00:00
Pragmatic Software
4e9774422b
Updated c11std and c99std to properly index appendices
2012-01-17 00:08:26 +00:00
Pragmatic Software
1ba8750e0b
Adding n1256.html and n1570.html
2012-01-16 15:40:30 +00:00
Pragmatic Software
0c8bc4f682
Added c99std and c11std commands. Now indexes FOREWORD, INTRODUCTION and appedices.
2012-01-16 15:34:32 +00:00
Pragmatic Software
0c9a9cccd2
google search module: decode HTML entities in result titles
2012-01-05 11:04:55 +00:00
Pragmatic Software
cf0fead036
compiler-vm: added -input flag for providing stdin input; added %b printf specifier to print base-2; bug-fixes
2011-12-30 23:20:29 +00:00
Pragmatic Software
dd7f84ceff
bantracker: track +q and +b separately to prevent loss of information
...
bantracker: do not ban someone if their hostmask matches their +q mask
bantracker: remove ban timeouts on -q/-b
antiflood: unbanme will not work if manual ban/quiet set in place
2011-12-17 11:43:21 +00:00
Pragmatic Software
1d691caeb9
factoids: don't show nick prefix if has action_with_args; updated factoids
...
interpreter: don't expand $nick in result for all commands
2011-12-17 00:30:44 +00:00
Pragmatic Software
d7dc16346c
ban-tracker: track whether ban is +q or +b; do not ban evaders of generic +b bans ending with !*@*
...
anti-flood: improved logic of catching ban evaders
2011-12-15 06:18:10 +00:00
Pragmatic Software
49561130e5
factoids: improved 8ball response, etc
2011-12-15 06:13:21 +00:00
Pragmatic Software
3d0f763253
factoids: added hugs/hugs_response; aliased pokes, pets, spanks, slaps, hugs, etc
2011-12-13 04:43:57 +00:00
Pragmatic Software
036ae7cdfb
antiflood: do not check accounts if no account
2011-12-12 23:33:39 +00:00
Pragmatic Software
fa01bdde6f
antiflood: fixed code indentation
2011-12-12 19:40:54 +00:00
Pragmatic Software
2fb0598a0e
ban evasion: fixed whitelist logic
2011-12-12 16:40:22 +00:00
Pragmatic Software
016aba76db
pbot.sh: strange behavior with &> -- using 2> instead
2011-12-12 06:01:51 +00:00
Pragmatic Software
acbed6810f
2011-12-12 05:39:38 +00:00
Pragmatic Software
3b0b04f6e1
Corrected inverted ternary herp
2011-12-12 04:21:59 +00:00
Pragmatic Software
6dee494ffd
bantracker: fixed derp
2011-12-12 04:17:03 +00:00
Pragmatic Software
e10d81b769
lagchecker: use immediate elasped duration instead of average when no pong has been received yet
2011-12-12 00:31:31 +00:00
Pragmatic Software
44bef4bdb3
anti-flood: check for ban evasion on nick changes
2011-12-12 00:19:34 +00:00
Pragmatic Software
242a0d5dfc
lagchecker: updated lagcheck bot command to use pong_received
2011-12-11 23:44:04 +00:00
Pragmatic Software
60ad02c9af
lagchecker: include elapsed time from last ping sent in average if no pong yet received
2011-12-11 23:33:01 +00:00
Pragmatic Software
44ba3001cb
Updated mode +q list tracking to updated freenode syntax; added ban whitelist (for evasion allowing)
2011-12-11 22:56:57 +00:00
Pragmatic Software
7ddf495f58
Updated version, removed -I from google search script shebang
2011-12-11 18:29:55 +00:00
Pragmatic Software
314eabaf3e
Quotegrabs: added more information to getq (grab owner and timestamp)
...
Interpreter: remove leading and trailing whitespace from text to improve parsing
AntiFlood: Remove some log output, improve some other log output
2011-12-04 01:13:21 +00:00
Pragmatic Software
df42b242e4
Fixed unban command; misc bug-fixes
2011-10-31 19:56:08 +00:00
Pragmatic Software
4a552e2935
ban-tracker: dump more information when nickserv account matches existing ban
2011-02-17 23:49:42 +00:00
Pragmatic Software
a57394c762
factoids: oops, broke global channel searching, fixed (exact_channel restored)
2011-02-14 08:09:50 +00:00
Pragmatic Software
bede029261
factoids: probably adds/remove upper/lowercase keywords
2011-02-14 07:25:15 +00:00
Pragmatic Software
438b62552f
anti-flood bantracker now more properly handles detection of proxying in multiple channels
2011-02-14 06:23:22 +00:00
Pragmatic Software
cb20ac607e
anti-flood bantracker now more properly handles detection of proxying in multiple channels
2011-02-13 23:44:05 +00:00
Pragmatic Software
cdaf433966
updating factoids and quotegrabs data
2011-02-13 10:37:28 +00:00
Pragmatic Software
a0c11ac1d4
irchandlers: remove dumping of event on mode change
2011-02-13 09:07:11 +00:00
Pragmatic Software
ea198bcab1
irchandlers: now handles multiple modes; e.g. -bbb-o
...
chanops: moved flushqueues to inside loop
anti-flood/bantracker: now tracks quiets as well as bans
anti-flood: should now ban proxied hosts using a banned nickserv account -- untested
2011-02-13 09:05:48 +00:00
Pragmatic Software
b16b5f6275
anti-flood: nick changes now linked to same account via reference
2011-02-13 08:02:27 +00:00
Pragmatic Software
3c6288920e
Added channel ban tracking
2011-02-13 05:07:02 +00:00
Pragmatic Software
b07306f530
IRC: wait for NickServ NOTICE before identifying
2011-02-12 05:30:44 +00:00
Pragmatic Software
9c17b4bc5a
anti-flood: made some log messages more terse and readable
2011-02-11 06:52:43 +00:00
Pragmatic Software
c4ed12b0cb
anti-flood, IRC, etc: added support for tracking NickServ accounts; refactored flood message history to be keyed on hostmask instead of nick; placed message history channels into its own sub-key
2011-02-11 02:46:35 +00:00
Pragmatic Software
1f4b6bba50
admin commands: added sl command to send raw commands to IRC server
2011-02-10 08:40:14 +00:00
Pragmatic Software
f76dcacca7
[module] c standard: improve output
2011-02-10 07:11:51 +00:00
Pragmatic Software
0655598d4a
interpreter: improved long message truncation semantics
2011-02-10 07:10:50 +00:00
Pragmatic Software
bb05ab5274
compiler_vm: do not extract potential functions from within string literals or comments, if no main function is provided
2011-02-08 01:24:12 +00:00
Pragmatic Software
d28903f05f
doc: updated PBot.html
2011-02-02 10:08:13 +00:00
Pragmatic Software
c8bc14183b
compiler_vm: updated to run properly on Linux; untested on Cygwin
2011-02-02 07:46:03 +00:00
Pragmatic Software
80b50559bb
compile_vm: added missing cc script
2011-02-01 02:47:16 +00:00
Pragmatic Software
346f291c29
doc: updated PBot.html documentation
2011-02-01 01:17:14 +00:00
Pragmatic Software
da8671a9bf
version: updated VERSION.pm
2011-02-01 00:59:10 +00:00
Pragmatic Software
cd8791a854
factoids: better handling of triggering factoids in other namesapces; actions_with_args fixed
2011-01-30 07:18:28 +00:00
Pragmatic Software
845dff008e
factoids: levenshtein search working again; rate-limit working again
2011-01-30 06:29:05 +00:00
Pragmatic Software
e4019895d3
factoids: added comments explaining namespace handling
2011-01-30 03:55:09 +00:00
Pragmatic Software
805832d977
pbot: allowed bot trigger to be customizable from pbot.pl; bot registry coming soon...
2011-01-30 03:22:00 +00:00
Pragmatic Software
cb2c17f636
factids: er, it is fact <location> <keyword> not fact <keyword> <location>, oops
2011-01-30 03:06:45 +00:00
Pragmatic Software
ffdecba6ee
factoids: be more clear about how to choose factoids from another channel if ambiguous keyword; find_factoid searches channel namespace better
2011-01-30 03:03:31 +00:00
Pragmatic Software
221a698ecb
factoids: if unknown keyword is triggered inadvertedly, .e.g. by referencing the bot by name, and the args dont look like a nick then do not spit out the levenshtein matches text
2011-01-30 02:44:56 +00:00
Pragmatic Software
514484a1e6
compiler_vm: do not automatically pull in #include prelude if #include detected in code
2011-01-29 20:50:44 +00:00
Pragmatic Software
3255bdcd93
factoids: updated database -- moved more POSIX factoids into ##posix namespace
2011-01-29 08:50:38 +00:00
Pragmatic Software
f92da35b34
factoids: updated database -- moved more factoids into more namespaces
2011-01-29 08:33:00 +00:00
Pragmatic Software
a6252da15a
factoids: updated factoids database -- moved C-related factoids to ##c namespace
2011-01-29 05:03:18 +00:00
Pragmatic Software
9336428ea2
factoids: improved handling of factoids belonging to other channels; significantly
2011-01-29 01:21:17 +00:00
Pragmatic Software
65920bbe33
registerable: removed unnecessary array size check
2011-01-28 23:16:50 +00:00
Pragmatic Software
8d524089db
anti-flood: added last offense timestamp; decrease offense counter once every 24 hours without offense
2011-01-27 06:17:39 +00:00
Pragmatic Software
31ae068202
factoid commands: removed unnecessary direct privmsg call
2011-01-27 01:51:16 +00:00
Pragmatic Software
5d0f2f5b98
updated VERSION.pm information
2011-01-27 01:23:47 +00:00
Pragmatic Software
bd3d69872e
factoids: updated database
2011-01-27 00:51:01 +00:00
Pragmatic Software
1e74e36dd7
factoid commands: updated top20 to work with new factoid structure
2011-01-27 00:49:36 +00:00
Pragmatic Software
3cb15235e5
factoids: removed some uninteresting factoids from database
2011-01-26 22:48:16 +00:00
Pragmatic Software
8983a53732
pbot: slightly improved readability/flow of PBot.pm
2011-01-26 10:13:06 +00:00
Pragmatic Software
aaa261b66e
pbot: correct default config directory
2011-01-26 10:04:55 +00:00
Pragmatic Software
d62e77c29d
factoids: updating factoids; added some more action_with_args entries to existing factoids
2011-01-26 09:41:25 +00:00
Pragmatic Software
e6e89023a0
pbot: made PBot.pm more readable and concise
2011-01-26 09:40:08 +00:00
Pragmatic Software
1fcd6d07c1
config: updated example in admins file
2011-01-26 02:34:55 +00:00
Pragmatic Software
93658e0f6f
modules: added compiler virtual machine scripts; use to set up your own environment for !cc/compiler_client.pl
2011-01-26 01:59:19 +00:00
Pragmatic Software
b2a1dec56c
updated Changes file for Net::IRC/PBot::IRC
2011-01-26 00:37:01 +00:00
Pragmatic Software
da84e6fd33
documentation: added doc folder, moved README to it, and copied Candide wiki page as PBot.html with some minor edits
2011-01-26 00:25:04 +00:00
Pragmatic Software
747392e23a
updated factoids database; !help with arguments now displays link to command ala !h
2011-01-25 23:52:55 +00:00
Pragmatic Software
44b737a8c3
factoids: allow factset/factunset by regular users; factset/factunset now has list of metadata levels, and does ownership checking; added action_with_args metadata field to be substituted for action if factoid triggered with arguments
2011-01-25 22:40:22 +00:00
Pragmatic Software
45a2a66d0f
Moved lag-checking code to LagChecker.pm; improved output of !lagcheck command
2011-01-24 23:56:55 +00:00
Pragmatic Software
a619f8fe9b
factoids: Dont break factoids if used from stdin
2011-01-24 23:46:07 +00:00
Pragmatic Software
ed797ca5cf
antiflood: change banfoward timeout first offense to start from 8 hours instead of 32 hours
2011-01-24 22:21:29 +00:00
Pragmatic Software
22c1673f3d
factoids: dont remove trailing colon and/or comma from keywords in interpreter
2011-01-24 01:30:19 +00:00
Pragmatic Software
c29a694359
antiflood: do not check flood if lag is uninitialized or is significant
2011-01-22 09:45:16 +00:00
Pragmatic Software
1f45da7615
antiflood: do not do anti-flood if lag is two seconds or greater
2011-01-22 09:39:39 +00:00
Pragmatic Software
b11b660929
antiflood/pbot: added basic support for lag detection
2011-01-22 09:26:04 +00:00
Pragmatic Software
e3655749fd
Added Net::IRC as PBot::IRC in order to support PONG events and possible future customisation
2011-01-22 08:35:31 +00:00
Pragmatic Software
c1439c5b7a
quotegrabs: updated table
2011-01-22 08:32:22 +00:00
Pragmatic Software
d5ba966c53
antiflood: corrected check against double-banning chat floods
2011-01-22 04:42:38 +00:00
Pragmatic Software
d2640f8bcb
antiflood: remove generate_random_number; ping timeouts/excess floods no longer treated aggressively, now treated same as other quit/parts
2011-01-22 04:17:35 +00:00