Commit Graph

106 Commits

Author SHA1 Message Date
Pragmatic Software d1a3a89c33 IRCHandlers: restore missing space in departure messages 2021-07-01 21:07:27 -07:00
Pragmatic Software ecfac55745 IRCHandlers: er, strip leading - when ISUPPORT removes support 2021-06-25 09:35:19 -07:00
Pragmatic Software eaea0c970e IRCHandlers: fix minor typo in comment 2021-06-24 19:18:38 -07:00
Pragmatic Software 4e3e547ba7 IRCHandlers: handle RPL_NONONREG 2021-06-24 18:40:05 -07:00
Pragmatic Software f1c5b8c706 Progress on refactoring and polishing everything 2021-06-24 18:28:49 -07:00
Pragmatic Software fec192ca69 Progress on refactoring and polishing everything 2021-06-23 16:42:15 -07:00
Pragmatic Software 1a41f9aebb Refactor PBot::Timer into PBot::EventQueue
Make better use of PBot::IRC's select loop
Remove use of SIGALRM
2021-06-21 17:26:24 -07:00
Pragmatic Software 1c2b4da9ab Consolidate imports into PBot::Imports 2021-06-18 21:23:34 -07:00
Pragmatic Software 34d347de12 IRCHandlers: correct error message typo irc.password -> irc.identify_password 2021-06-12 10:26:52 -07:00
Pragmatic Software db8a7f1dd3 IRCHandlers: fix then/than typos in comments 2021-06-12 02:30:08 -07:00
Pragmatic Software d101789347 Improve IRCv3 support and add SASL support 2021-06-12 01:23:37 -07:00
Pragmatic Software 613890707a Progress on refactoring and polishing everything
More to come!
2021-06-06 19:12:14 -07:00
Pragmatic Software 976bfcb5e7 Refactor commands to begin with cmd_ and take a $context object
Move all command subroutines closer to top of source file
Do not send WHO to non-chanop channels
Minor misc bugfixes and improvements
2020-05-04 13:21:35 -07:00
Pragmatic Software ea19abad4f Refactor BanTracker into BanList; move stuff out off ChanOps 2020-04-28 21:33:49 -07:00
Pragmatic Software c815ccbc0d Use event queue for unban/unmute timeouts 2020-03-06 13:31:22 -08:00
Pragmatic Software 16ac6d95fb Give sensible names to various existing timers 2020-03-06 13:28:06 -08:00
Pragmatic Software a6b2f60175 Tidy things up 2020-02-16 08:41:45 -08:00
Pragmatic Software fe56b9f0db Tidy things up 2020-02-15 15:16:38 -08:00
Pragmatic Software 5c4e10a35c Tidy things up 2020-02-15 14:38:32 -08:00
Pragmatic Software 21c1eba0a0 No longer directly access DualIndexHashObject internals 2020-02-13 13:31:36 -08:00
Pragmatic Software c4b71347bf Whitelist is now a user-capability
Rework ban-whitelist to ban-exemptions
2020-02-09 16:20:58 -08:00
Pragmatic Software 02f93c8721 Significant refactor and clean-up of PBot class instantiation 2020-02-08 11:04:13 -08:00
Pragmatic Software 61f13f6b40 IRCHandlers: remove trailing space when setting mode without target 2020-02-05 01:41:09 -08:00
Pragmatic Software 2c9f805f4d IRCHandlers: cleaned up mode log output 2020-02-05 01:26:22 -08:00
Pragmatic Software 6267cc04d2 Finished replacing admin-levels with user-capabilities [FIN commit 2 of 2]; misc clean-ups 2020-02-03 17:19:04 -08:00
Pragmatic Software 866d802850 Replaced admin-levels with user-capabilities [WIP commit 1 of 2] 2020-02-03 09:50:38 -08:00
Pragmatic Software 5dd03f1c0c Massive refactor: added support for generic users!
Renamed data/admins to data/users
Moved Admins.pm to Users.pm
Moved various subroutines in AdminCommands.pm to more appropriate locations
Deleted AdminCommands.pm
Improvements to Users.pm
Added `my` command
2020-01-25 12:28:05 -08:00
Pragmatic Software a6040609b9 IRCHandlers: give send_who() a registry toggle 2020-01-22 16:51:14 -08:00
Pragmatic Software 02552081d5 Fix all potential case-sensitivity issues
Misc clean-ups and refactors
2020-01-14 18:10:53 -08:00
Pragmatic Software a400178204 IRCHandlers: handle channelcreate event; properly show timestamp for channel title 2020-01-04 11:59:41 -08:00
Pragmatic Software 77233e4328 IRCHandlers: fix WHO case-sensitivity 2020-01-04 00:21:19 -08:00
Pragmatic Software 45af37574f IRCHandlers: add handler for WHOREPLY 2019-12-30 16:44:41 -08:00
Pragmatic Software a255ea1b1b IRCHandlers: reinstate WHO-on-join; set NickList metadata based on WHO replies 2019-12-30 15:58:30 -08:00
Pragmatic Software 43093ee843 Services identification now customizable via registry 2019-12-27 19:28:51 -08:00
Pragmatic Software 2a805038a1 IRCHandlers: improve nickserv identify and autojoin 2019-12-21 19:44:22 -08:00
Pragmatic Software 20a7ff992d MessageHistory: now tracks channel mode changes on users 2019-07-23 12:19:34 -07:00
Pragmatic Software 3553692b5a Fix some more Unicode encoding issues 2019-07-10 18:40:53 -07:00
Pragmatic Software 5e2cb09744 Fix trailing whitespace throughout 2019-06-26 09:34:19 -07:00
Pragmatic Software 9243a40228 Track and remember channel modes and topicinfo 2018-08-05 22:47:38 -07:00
Pragmatic Software d6715fad8d Do not infinitely WHO empty/non-channels 2018-08-03 13:38:28 -07:00
Pragmatic Software 772ea03ddf NickList now tracks user modes as metadata 2018-08-03 12:31:45 -07:00
Pragmatic Software 55347ea463 Sort Dumper output by keys 2018-02-28 11:13:56 -08:00
Pragmatic Software 1b70de807b Change split / / to split /\s+/ throughout 2017-09-02 00:39:29 -07:00
Pragmatic Software b932fe73eb Move WHO stuff to IRCHandlers.pm 2017-08-01 21:35:56 -07:00
Pragmatic Software f3620ddd90 Normalize /session hostmasks 2017-06-19 18:21:47 -07:00
Pragmatic Software fa854c087f Normalize x-random hostmasks with user field to not pollute message database
Significant optimizations to message database structure and queries
2017-06-18 03:40:51 -07:00
Pragmatic Software 29f6510ec2 Check for existing temp ban before temp-banning 2017-05-23 17:05:25 -07:00
Pragmatic Software 2d85b14b2e Add ircd config mapping; automatically unban certain types of bans after 7 days 2017-05-21 02:20:44 -07:00
Tomasz Kramkowski b5d8f72254 License project under MPL2
This patch adds the file LICENSE which is the verbatim copy of the
Mozilla Public License Version 2.0 as retreived from
https://www.mozilla.org/media/MPL/2.0/index.815ca599c9df.txt on
2017-03-05.

This patch also places license headers for the MPL2 type A variant of
the license header in the following files:

PBot/AntiFlood.pm
PBot/BanTracker.pm
PBot/BlackList.pm
PBot/BotAdminCommands.pm
PBot/BotAdmins.pm
PBot/ChanOpCommands.pm
PBot/ChanOps.pm
PBot/Channels.pm
PBot/Commands.pm
PBot/DualIndexHashObject.pm
PBot/EventDispatcher.pm
PBot/FactoidCommands.pm
PBot/FactoidModuleLauncher.pm
PBot/Factoids.pm
PBot/HashObject.pm
PBot/IRCHandlers.pm
PBot/IgnoreList.pm
PBot/IgnoreListCommands.pm
PBot/Interpreter.pm
PBot/LagChecker.pm
PBot/Logger.pm
PBot/MessageHistory.pm
PBot/MessageHistory_SQLite.pm
PBot/NickList.pm
PBot/PBot.pm
PBot/Plugins.pm
PBot/Plugins/AntiAway.pm
PBot/Plugins/AntiKickAutoRejoin.pm
PBot/Plugins/AntiRepeat.pm
PBot/Plugins/AntiTwitter.pm
PBot/Plugins/AutoRejoin.pm
PBot/Plugins/Counter.pm
PBot/Plugins/Quotegrabs.pm
PBot/Plugins/Quotegrabs/Quotegrabs_Hashtable.pm
PBot/Plugins/Quotegrabs/Quotegrabs_SQLite.pm
PBot/Plugins/UrlTitles.pm
PBot/Plugins/_Example.pm
PBot/Refresher.pm
PBot/Registerable.pm
PBot/Registry.pm
PBot/RegistryCommands.pm
PBot/SQLiteLogger.pm
PBot/SQLiteLoggerLayer.pm
PBot/SelectHandler.pm
PBot/StdinReader.pm
PBot/Timer.pm
PBot/Utils/ParseDate.pm
PBot/VERSION.pm
build/update-version.pl
modules/acronym.pl
modules/ago.pl
modules/c11std.pl
modules/c2english.pl
modules/c2english/CGrammar.pm
modules/c2english/c2eng.pl
modules/c99std.pl
modules/cdecl.pl
modules/cfaq.pl
modules/cjeopardy/IRCColors.pm
modules/cjeopardy/QStatskeeper.pm
modules/cjeopardy/Scorekeeper.pm
modules/cjeopardy/cjeopardy.pl
modules/cjeopardy/cjeopardy_answer.pl
modules/cjeopardy/cjeopardy_filter.pl
modules/cjeopardy/cjeopardy_hint.pl
modules/cjeopardy/cjeopardy_qstats.pl
modules/cjeopardy/cjeopardy_scores.pl
modules/cjeopardy/cjeopardy_show.pl
modules/codepad.pl
modules/compiler_block.pl
modules/compiler_client.pl
modules/compiler_vm/Diff.pm
modules/compiler_vm/cc
modules/compiler_vm/compiler_client.pl
modules/compiler_vm/compiler_server.pl
modules/compiler_vm/compiler_server_vbox_win32.pl
modules/compiler_vm/compiler_server_watchdog.pl
modules/compiler_vm/compiler_vm_client.pl
modules/compiler_vm/compiler_vm_server.pl
modules/compiler_vm/compiler_watchdog.pl
modules/compiler_vm/languages/_c_base.pm
modules/compiler_vm/languages/_default.pm
modules/compiler_vm/languages/bash.pm
modules/compiler_vm/languages/bc.pm
modules/compiler_vm/languages/bf.pm
modules/compiler_vm/languages/c11.pm
modules/compiler_vm/languages/c89.pm
modules/compiler_vm/languages/c99.pm
modules/compiler_vm/languages/clang.pm
modules/compiler_vm/languages/clang11.pm
modules/compiler_vm/languages/clang89.pm
modules/compiler_vm/languages/clang99.pm
modules/compiler_vm/languages/clangpp.pm
modules/compiler_vm/languages/clisp.pm
modules/compiler_vm/languages/cpp.pm
modules/compiler_vm/languages/freebasic.pm
modules/compiler_vm/languages/go.pm
modules/compiler_vm/languages/haskell.pm
modules/compiler_vm/languages/java.pm
modules/compiler_vm/languages/javascript.pm
modules/compiler_vm/languages/ksh.pm
modules/compiler_vm/languages/lua.pm
modules/compiler_vm/languages/perl.pm
modules/compiler_vm/languages/python.pm
modules/compiler_vm/languages/python3.pm
modules/compiler_vm/languages/qbasic.pm
modules/compiler_vm/languages/scheme.pm
modules/compiler_vm/languages/server/_c_base.pm
modules/compiler_vm/languages/server/_default.pm
modules/compiler_vm/languages/server/c11.pm
modules/compiler_vm/languages/server/c89.pm
modules/compiler_vm/languages/server/c99.pm
modules/compiler_vm/languages/server/clang.pm
modules/compiler_vm/languages/server/clang11.pm
modules/compiler_vm/languages/server/clang89.pm
modules/compiler_vm/languages/server/clang99.pm
modules/compiler_vm/languages/server/cpp.pm
modules/compiler_vm/languages/server/freebasic.pm
modules/compiler_vm/languages/server/haskell.pm
modules/compiler_vm/languages/server/java.pm
modules/compiler_vm/languages/server/qbasic.pm
modules/compiler_vm/languages/server/tendra.pm
modules/compiler_vm/languages/sh.pm
modules/compiler_vm/languages/tendra.pm
modules/compliment
modules/cstd.pl
modules/define.pl
modules/dice_roll.pl
modules/excuse.sh
modules/expand_macros.pl
modules/fnord.pl
modules/funnyish_quote.pl
modules/g.pl
modules/gdefine.pl
modules/gen_cfacts.pl
modules/gencstd.pl
modules/get_title.pl
modules/getcfact.pl
modules/google.pl
modules/gspy.pl
modules/gtop10.pl
modules/gtop15.pl
modules/headlines.pl
modules/horoscope
modules/horrorscope
modules/ideone.pl
modules/insult.pl
modules/love_quote.pl
modules/man.pl
modules/map.pl
modules/math.pl
modules/prototype.pl
modules/qalc.pl
modules/random_quote.pl
modules/seen.pl
modules/urban
modules/weather.pl
modules/wikipedia.pl
pbot.pl
pbot.sh

It is highly recommended that this list of files is reviewed to ensure
that all files are the copyright of the sole maintainer of the
repository. If any files with license headers contain the intellectual
property of anyone else, it is recommended that a request is made to
revise this patch or that the explicit permission of the co-author is
gained to allow for the license of the work to be changed.

I (Tomasz Kramkowski), the contributor, take no responsibility for any
legal action taken against the maintainer of this repository for
incorrectly claiming copyright to any work not owned by the maintainer
of this repository.
2017-03-06 00:31:15 +00:00
Pragmatic Software d47edc100b Improve robustness of message history tracking 2016-12-01 04:57:25 -08:00