mirror of
https://github.com/Mikaela/Limnoria.git
synced 2024-12-11 20:59:42 +01:00
1200 lines
42 KiB
Plaintext
1200 lines
42 KiB
Plaintext
2004-09-17 James Vega <jamessan@users.sf.net>
|
|
|
|
* Version 0.80.0pre2!
|
|
|
|
* Added supybot.plugins.Google.colorfulSnarfer, which determines
|
|
whether the word 'google' in the bot's output will be made colorful
|
|
(like Google's logo).
|
|
|
|
* Added the Time plugin, to hold all of our Time related commands.
|
|
|
|
* Added max() and min() to Math.calc.
|
|
|
|
* Added Unix.pid, which allows the Owner to retrieve the pid of the
|
|
bot's process.
|
|
|
|
* Added supybot.plugins.Sourceforge.enableSpecificTrackerCommands,
|
|
which enables the rfe, bug, and patch commands.
|
|
|
|
* Added Topic.topic, which returns the current topic of the channel.
|
|
|
|
* Updated conf.Databases to use a more sane database ordering and
|
|
include anydbm.
|
|
|
|
* Updated various plugins to use our new-style database abstraction.
|
|
Plugin databases using this new-style will be named Plugin.dbtype.db.
|
|
|
|
2004-09-12 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.80.0pre1!
|
|
|
|
* Added the facility to supporting several different database
|
|
implementations in a plugin, allowing the user to specify which
|
|
databases are supported as well as in what order of preference.
|
|
|
|
* Added the Insult plugin, for colorful, creative insults.
|
|
|
|
* Added the UrbanDict plugin, for defining words based on
|
|
UrbanDictionary.com.
|
|
|
|
* Added the Observer plugin, for watching a channel for regexps
|
|
and running commands when the bot sees such regexps.
|
|
|
|
* Moved Http.geekquote to a new Geekquote plugin, added a command
|
|
for using qdb.us, and added a snarfer.
|
|
|
|
* Added a SuperIgnore plugin, a good example of an inFilter and a
|
|
way to completely, totally ignore people.
|
|
|
|
* Changed the name of the Network plugin to Internet.
|
|
|
|
* Added a new Network plugin, and moved some commands from Owner,
|
|
Misc, and Relay to it.
|
|
|
|
* Added CTCP flood protection.
|
|
|
|
* Added a supybot.plugins.Karma.allowUnaddressedKarma
|
|
configuration variable, for allowing karma increments/decrements
|
|
similar to Infobot.
|
|
|
|
* Added supybot.reply.whenAddressedBy.nicks, to allow users to
|
|
specify a list of nicks to which the bot will respond as if they
|
|
were its own nick.
|
|
|
|
* Added the ability to support multiple-word karma
|
|
increments/decrements.
|
|
|
|
* Changed Owner.rename to be handled persistently; now renames
|
|
work across restarts of the bot or reloads of a plugin.
|
|
|
|
* Changed Misc.last to include a timestamp for when the message
|
|
was sent.
|
|
|
|
* Added the Channel.alert command, to send all currently
|
|
connected ops on a channel a message.
|
|
|
|
* Changed the MoobotFactoids plugin to allow commands to be
|
|
nested in factoids definitions and searches.
|
|
|
|
* Removed the futurama command in favor of adding a
|
|
futurama.supyfact file to supybot-data.
|
|
|
|
* Improved the Http.kernel command, showing more kernel types.
|
|
|
|
* Added a new contributors command and a way of storing
|
|
contributors and their contributions in a plugin.
|
|
|
|
* Changed the name of Anonymous.action to Anonymous.do, to be
|
|
more consistent with "say" and other bots (MozBot, iirc).
|
|
|
|
* Added the ability for channel bans and ignores and global
|
|
ignores to have expiration times.
|
|
|
|
* Added invalid command flood protection.
|
|
|
|
* Changed RSS' headlines output to bold the separators in order
|
|
to make it easier to distinguish the headlines.
|
|
|
|
* Added a --no-network option to supybot-wizard.
|
|
|
|
* Added several attributes to IrcMsg objects as they pass through
|
|
the bot; currently we tag them with receivedAt, receivedBy, and
|
|
receivedOn.
|
|
|
|
* Added RichReplyMethods.errorInvalid, a nice helper method for
|
|
sending errors about invalid values.
|
|
|
|
* Changed the --nonetwork and --noplugins options to test/test.py
|
|
to --no-network and --no-plugins.
|
|
|
|
* Changed plugins.makeChannelFilename, swapping the order of the
|
|
channel and filename arguments and making the channel optional.
|
|
|
|
* Changed the first argument to callbacks.Privmsg.callCommand to
|
|
be a name rather than a method, for greater justice.
|
|
|
|
* Added a new mechanism for ordering plugins (subclasses of
|
|
callbacks.Privmsg) which is much more flexible than a simple
|
|
priority system.
|
|
|
|
|
|
2004-09-06 James Vega <jamessan@users.sf.net>
|
|
|
|
* Version 0.79.9999!
|
|
|
|
* Added stripFormatting option to ChannelLogger plugin, which
|
|
determines whether non-printable formatting characters are logged.
|
|
|
|
* Added Sourceforge.patches command to complement the current bugs
|
|
and rfes commands.
|
|
|
|
* Added abs() to Math.calc.
|
|
|
|
* Improved the interface for Config.list. Now groups and values
|
|
are listed, with groups being denoted by a leading @.
|
|
|
|
* Improved Config.config such that the user can specify the entire
|
|
config variable name (conf.supybot....).
|
|
|
|
* Fixed a bug where ChannelLogger wouldn't log ignored nicks.
|
|
|
|
* Fixed an incorrect path in INSTALL.
|
|
|
|
* Fixed some missing imports in Unix's configure method.
|
|
|
|
* Fixed a bug where an owner could publically retrieve a private
|
|
configuration variable.
|
|
|
|
* Fixed an exception when trying to remove non-existent Heralds.
|
|
|
|
* Fixed an exception in RSS.getHeadlines.
|
|
|
|
* Fixed a couple bugs in Poll, when retrieving the Poll id.
|
|
|
|
* Fixed a problem with trying to use socket.inet_pton under
|
|
Windows; Python doesn't build their Win32 port with IPV6 support,
|
|
so we have to brute-force IPV6 detection.
|
|
|
|
* Fixed a few bugs with how Infobot handled the SQLite db.
|
|
|
|
* Fixed others/convertcore.py so that liter-based units are
|
|
properly capitalized (L not l) and use 1000 as the conversion rate
|
|
for MB, KB, etc. since MiB, KiB, etc. are also known units.
|
|
|
|
* Fixed a bug where Infobot would confirm an unaddressed factoid
|
|
definition.
|
|
|
|
* Fixed a problem where Google.stats didn't keep track of all
|
|
searches.
|
|
|
|
|
|
2004-08-31 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.79.999!
|
|
|
|
* Added the ability to send long fortunes line-by-line rather
|
|
than all in one (or several) messages; it will do this if
|
|
supybot.reply.oneToOne is set to False.
|
|
|
|
* Added many configuration variables to the Unix plugin, allowing
|
|
configurable commands and options to those commands.
|
|
|
|
* Changed the output of Config.list to show groups with a
|
|
preceding @, rather than use the --groups option.
|
|
|
|
* Changed the Google.stats (formerly Google.info) command to be
|
|
persistent, using the registry to record old values for the
|
|
number of searches made and the number of seconds Google has
|
|
spent searching for the bot.
|
|
|
|
* Added module __revision__ logging to our exception logs, for
|
|
more information in bug reports.
|
|
|
|
* Fixed a bug with asyncoreDrivers' handling of reconnects; it
|
|
would not reconnect when commanded to if it had reconnected
|
|
before.
|
|
|
|
* Fixed several bugs where the bot was testing nicks for
|
|
equivalence without first normalizing them, leading to some false
|
|
negatives.
|
|
|
|
* Fixed a bug with the handling of
|
|
supybot.reply.withNoticeWhenPrivate so all private messages
|
|
really are replied to with a notice.
|
|
|
|
* Fixed Http.geekquote to match the current bash.org layout.
|
|
Also, made sure all ids are valid ids before requesting a quote
|
|
(apparently bash.org is returning a certain quote for all invalid
|
|
ids).
|
|
|
|
* Fixed a bad regular expression in the Ebay plugin which could
|
|
cause the bot to suck up 100% CPU for a signficant (perhaps
|
|
practically infinite) amount of time.
|
|
|
|
* Fixed a bug where the bot would sometimes reconnect to a
|
|
network after being told to disconnect.
|
|
|
|
* Fixed an uncaught exception in Owner.connect when the user
|
|
forgets the network name
|
|
|
|
|
|
2004-08-30 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.79.99! We're getting asymptotically closer to
|
|
0.80.0!
|
|
|
|
* Added Anonymous.action, to anonymously perform actions in a
|
|
specified channel.
|
|
|
|
* Added a Karma.clear, so channel ops can clear the karma for a
|
|
given name.
|
|
|
|
* Added a Topic.redo, to redo the last undo.
|
|
|
|
* Added supybot.protocols.irc.umodes, to allow the bot to set
|
|
user modes upon connecting to a network.
|
|
|
|
* Fixed numerous bugs involved with disconnecting, reconnecting,
|
|
and using multiple networks.
|
|
|
|
* Fixed a bug that would prevent the bot from quitting except via
|
|
multiple Ctrl-Cs.
|
|
|
|
* Fixed some mis-interaction between the Karma plugin and the
|
|
Infobot plugin.
|
|
|
|
* Fixed RSS's announcements.
|
|
|
|
* Fixed bug in Later whereby no more than one message could be
|
|
queued for a nick.
|
|
|
|
* Fixed Services.configure, as well as several bugs in Services
|
|
which sometimes prevented the bot from identifying.
|
|
|
|
* Fixed bugs in the Poll module that caused the list and poll
|
|
commands not to work.
|
|
|
|
* Fixed the ebay snarfer.
|
|
|
|
* Fixed exception raised by some CTCP messages when the URL
|
|
plugin was loaded.
|
|
|
|
* Fixed Debian.version.
|
|
|
|
* Fixed Amazon's use of unicode.
|
|
|
|
|
|
2004-08-27 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.79.9!
|
|
|
|
* Added Infobot, a plugin to emulate Infobot.
|
|
|
|
* Added Anonymous, a plugin for anonymously saying things to a
|
|
channel.
|
|
|
|
* Added Tail, a plugin which will tail logfiles and send the
|
|
new lines to a configurable list of targets.
|
|
|
|
* Added NickCapture, a plugin which tries to recapture a nick
|
|
that's being used by someone else, both by watching for QUITs
|
|
with that nick and by checking via ISON for that nick.
|
|
|
|
* Changed the behavior of "seen" with the --user switch instead to
|
|
be a separated command, Seen.user.
|
|
|
|
* Changed the behavior of "seen" with no arguments instead to be
|
|
a separate command, Seen.last.
|
|
|
|
* Moved the connect and disconnect commands from the Relay plugin
|
|
to the Owner plugin, so a Supybot can be on multiple networks
|
|
without ever loading the Relay plugin.
|
|
|
|
* Added relay bot detection to the Relay plugin. Now, rather
|
|
than get involved in a loop with another relay bot, a Supybot
|
|
will (if it has ops) rain down its wrath upon the offender.
|
|
|
|
* Added supybot.plugins.Quotes.requireRegistration, which
|
|
determines whether a user need be registered to add Quotes to
|
|
the Quotes database.
|
|
|
|
* Added supybot.plugins.RSS.showLinks, which determines whether
|
|
the bot will show links to the RSS headlines along with the
|
|
normally displayed titles.
|
|
|
|
* Removed supybot.reply.withPrivateNotice and split it into two
|
|
separate configuration variables, supybot.reply.withNotice and
|
|
supybot.reply.inPrivate.
|
|
|
|
* Added supybot.log.stdout.wrap, to allow optional (defaulting to
|
|
True) wrapping of stdout logs.
|
|
|
|
* Added supybot.databases.plugins.channelSpecific, a value that
|
|
determines whether the database used for channel-based plugins
|
|
will be a channel-specific database or a global database. This
|
|
value, ironically enough, is channel-specific -- channels can
|
|
each individually decide to be "part of the Borg" or to "be their
|
|
own channel." The default, of course, is for databases to be
|
|
channel-specific.
|
|
|
|
* Changed the way channel databases are handled; instead of
|
|
generating #channel-<name> files, instead we create a subdirectory
|
|
of the data directory named #channel, and then stick all the files
|
|
in there. It's a much cleaner way to do things, in our opinion.
|
|
|
|
* Added several configuration variables to the Status plugin to
|
|
determine how verbose the cpu command is. These are, of course,
|
|
channel-specific.
|
|
|
|
* Added a configuration variable to the Dunno plugin,
|
|
supybot.plugins.Dunno.prefixNick, which determines whether the
|
|
bot will prefix the nick of the user giving an invalid command to
|
|
its "dunno" response. Formerly, it never would; the default for
|
|
this variable, however, is True, because that's how the rest of
|
|
Supybot works.
|
|
|
|
* Added Owner.rename, a command for renaming commands in other
|
|
plugins.
|
|
|
|
* Added Config.channel, for getting/setting channel configuration
|
|
variables.
|
|
|
|
* Fixed the problem with channels with dots or colons in them
|
|
raising exceptions whenever the registry was accessed.
|
|
|
|
* Changed Fun.eightball to provide a similar answer for a question
|
|
asked multiple times.
|
|
|
|
* Changed Fun.roulette to use a 6-barrel revolver.
|
|
|
|
* Changed Bugzilla to use the registry, rather than a custom
|
|
flatfile database format.
|
|
|
|
* Added the KeepAlive plugin, to send useless keepalive messages
|
|
to someone every some period. It's mostly just because we
|
|
noticed that MozBot had one, and we couldn't allow ourselves to
|
|
be outdone.
|
|
|
|
* Changed the URL plugin to use flatfiles rather than SQLite
|
|
database. Also reduced the functionality of the last command by
|
|
removing some options that no one ever really used, and removed
|
|
the random command (who uses that anyway?)
|
|
|
|
* Changed the Words plugin not to use SQLite. We lose the
|
|
anagram command, but crossword and hangman become much easier to
|
|
use, since all the user has to do is put a words file in
|
|
data/words.
|
|
|
|
* Changed the Relay plugin to rely only on the registry, allowing
|
|
it to start and join all networks and channels with no user/owner
|
|
interaction at all. Also, removed the Relay.say and
|
|
Relay.reconnect commands, since both can be accomplished easily
|
|
using the Relay.command command in combination with
|
|
Owner.reconnect and Anonymous.say commands.
|
|
|
|
* Added supybot.reply.withNoticeWhenPrivate, to make the bot
|
|
reply with a notice when it privately messages a user -- this
|
|
generally means that the user's client won't open a query window,
|
|
which may be nice. Do note that users can override this setting
|
|
via the user registry variable of the same name.
|
|
|
|
* Added supybot.nick.alternates, which allows a list of alternate
|
|
nicks to try, in order, if the primary nick (supybot.nick) is
|
|
taken. Also added a nick-perturbation function that will change
|
|
supybot.nick if there are no alternates or if they're all taken
|
|
as well. As a result, removed supybot.nickmods.
|
|
|
|
* Changed ChannelLogger to log channels to logs/ChannelLogger,
|
|
rather than simply logs.
|
|
|
|
* Added the ChannelRelay plugin, to relay messages between two
|
|
channels. This might be useful for people who want to forward
|
|
CVS update messages from one channel (such as #commits) to
|
|
another.
|
|
|
|
* Added Channel.mode, to set modes in the channel, Channel.limit,
|
|
to set the channel limit, Channel.moderate and
|
|
Channel.unmoderate, to set +m and -m, respectively, and
|
|
Channel.key to set or unset the channel keyword.
|
|
|
|
* Added a new plugin, Format, which offers several commands for
|
|
formatting strings on IRC. Moved several commands from to it
|
|
from the Utilities plugin.
|
|
|
|
* Improved the functionality of RSS.announce. Calling it with
|
|
no arguments now lists the currently announced feeds. Removing
|
|
feeds is done by specifying the --remove option.
|
|
|
|
* Added a reconnect command to the Owner plugin.
|
|
|
|
* Added aol and rainbow filters to the Filter plugin.
|
|
|
|
* Added Nickometer plugin, a translation of Infobot's Nickometer.
|
|
|
|
* Added multiple recipient support for notes.
|
|
|
|
* Added BadWords.list, to list the bad words currently being
|
|
censored by the bot.
|
|
|
|
* Changed Misc.help to allow plugins to specify their own help,
|
|
and added help for several of the more confusing plugins.
|
|
|
|
* Added Dunno.stats, to return the number of dunnos in the
|
|
database.
|
|
|
|
* Added the Currency plugin, to perform currency conversions.
|
|
|
|
* Added conf.supybot.plugins.Karma.allowSelfRating, which
|
|
determines whether users are allowed to adjust the karma of their
|
|
current nick.
|
|
|
|
* Added --nolimit option to Misc.last, which causes it to return
|
|
all matches that are in the history.
|
|
|
|
* Added conf.supybot.plugins.Herald.defaultHerald, which provides
|
|
a default herald to use for unregistered users. Herald.default
|
|
was also added as a friendly interface to managing the
|
|
defaultHerald.
|
|
|
|
* Added Weather.wunder, which uses wunderground.com to report the
|
|
current weather status.
|
|
|
|
* Changed supybot.defaultCapabilities to be a space-separated
|
|
list rather than a comma-separated list. Also added a check to
|
|
make sure -owner was in supybot.defaultCapabilities, and to
|
|
require a command-line option to allow it not to be present.
|
|
|
|
* Added Sourceforge.fight, which returns the list of specified
|
|
projects and their bug/rfe count in sorted order, least to most.
|
|
|
|
* Added Utilities.reply for replying to a person with text. Like
|
|
echo, but it prepends the nick like the bot normally does.
|
|
|
|
* Changed Utilities.success to accept an optional <text> argument
|
|
for text to be appended to the success message.
|
|
|
|
* Changed User.{addhostmask,removehostmask,register,unregister}
|
|
to allow owner users to do what they will with their users. You
|
|
can now add hostmasks, remove hostmasks, register users, and
|
|
unregister users willy-nilly.
|
|
|
|
* Changed and moved several configuration variables.
|
|
supybot.{throttleTime,maxHistoryLength,pingServer,pingInterval}
|
|
all moved to supybot.protocols.irc; supybot.httpPeekSize moved to
|
|
supybot.protocols.http; supybot.threadAllCommands moved to
|
|
supybot.debug.threadAllCommands, and probably a few others I
|
|
forgot to mention.
|
|
|
|
* Added Http.zipinfo, which returns a veritable plethora of
|
|
information about the supplied zip code.
|
|
|
|
* Added a configuration variable for every plugin, "public", that
|
|
determines whether the plugin is considered public (i.e., whether
|
|
it will show up in the list command when the list command isn't
|
|
given the --private option).
|
|
|
|
* Added Misc.author, a command for finding out which author
|
|
claims a particular plugin.
|
|
|
|
* Added Topic configuration supybot.plugins.Topic.format template
|
|
string allowing full customization of the Topic items.
|
|
|
|
* Added Topic.lock and Topic.unlock, for locking and unlocking
|
|
the topic (setting +t or -t, respectively)
|
|
|
|
* Added Topic.restore, for restoring the topic to the last-sent
|
|
topic. Useful for when people change your carefully crafted
|
|
topic by means other than the bot.
|
|
|
|
* Changed supybot.brackets so you can now provide the empty
|
|
string, which means you cannot do nesting of commands.
|
|
|
|
* Added Utilities.last, which replies with the last string
|
|
given to it. This is useful for sequencing commands and then
|
|
replying with the output of the last commnad.
|
|
|
|
* Updated RSS.info to accept a feed name as well as a url.
|
|
|
|
* Added a signal handler for SIGTERM, so you folks killing your
|
|
bots uncleanly won't have as many bugs :)
|
|
|
|
* Added a signal handler for SIGHUP that reloads the bot's
|
|
various configuration files.
|
|
|
|
* Added a new configuration variable, supybot.pidFile, which
|
|
determines what file the bot should write its PID to. The
|
|
default is not to write the PID file at all.
|
|
|
|
* Added a comma argument to utils.commaAndify, which specifies the
|
|
character to use in place of the comma.
|
|
|
|
|
|
2004-04-16 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.77.2!
|
|
|
|
* Fixed numerous bugs, high and low, big and small and
|
|
in-between. Definitely worthy of a release.
|
|
|
|
* Added supybot.plugins.ChannelLogger.includeNetworkName, so the
|
|
logs aren't strangified when relaying between channels.
|
|
|
|
* Added a --capability option to User.list, to allow people to
|
|
list all the users possessing a certain capability. The main
|
|
reason this was added is so jemfinch can tell who owns which
|
|
Supybots on #supybot :)
|
|
|
|
* Added Utilities.success, mostly for making aliases such that
|
|
they can respond with success if no errors were encountered in
|
|
any nested commands.
|
|
|
|
* Changed the name of the new filter, colorstrip, to be
|
|
stripcolor. Better now than after it was highly established :)
|
|
|
|
* Added configuration variables
|
|
supybot.plugins.Services.NickServ.password (which replaces the
|
|
old supybot.plugins.Services.password) for specifying the
|
|
NickServ password, as well as
|
|
supybot.plugins.Services.ChanServ.{op,halfop,voice}, which
|
|
determine what the bot should request of ChanServ when it
|
|
identifies or joins a channel. These latter variables are, of
|
|
course, channel variables.
|
|
|
|
* Added configuration variable
|
|
supybot.plugins.Babelfish.languages (which replaces the old
|
|
supybot.plugins.Babelfish.disabledLanguages) for specifying
|
|
which languages will be translated/spoken.
|
|
|
|
* Fixed bug #863601, plugin BadWords fails on color codes.
|
|
|
|
* Replaced Sourceforge.{rfe,bug} with Sourceforge.tracker, which
|
|
can query any tracker type (not just RFEs and bugs) and responds
|
|
with more information, a la trackerSnarfer.
|
|
|
|
* Added supybot.log.individualPluginLogfiles, which determines
|
|
whether plugin logs will be logged to their individual logfiles
|
|
in addition to the misc.log logfile.
|
|
|
|
* Added supybot.plugins.WordStats.ignoreQueries, which, when
|
|
true, makes the bot ignore queries (and not increment its word
|
|
statistics).
|
|
|
|
* Added the LogToIrc plugin, for sending logs to an IRC
|
|
channel or nick. Useful for traceback notification and whatnot.
|
|
|
|
* Changed supybot.log.timestampFormat to specially handle the
|
|
empty string -- if it's set to the empty string, it will log
|
|
times in seconds-since-epoch format.
|
|
|
|
* Added supybot.plugins.Weather.convert, which determines whether
|
|
or not Weather.{weather,cnn,ham} will convert temperature to the
|
|
configured temperatureUnit.
|
|
|
|
* Changed User.setpassword not to require the <old password> to
|
|
be correct if the requesting user has the owner capability (and
|
|
isn't the owner himself).
|
|
|
|
* Added ircutils.strip{Bold,Reverse,Underline,Formatting}, which
|
|
will remove the specified formatting or all forms of formatting
|
|
in the case of stripFormatting.
|
|
|
|
|
|
2004-04-09 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.77.1!
|
|
|
|
* Added supybot.reply.errorWithNotice to make the bot give its
|
|
error messages in a notice.
|
|
|
|
* Added Filter.colorstrip, an outfilter that strips all color
|
|
codes from messages.
|
|
|
|
* Added supybot.plugins.BadWords.{replaceMethod, nastyChars,
|
|
simpleReplacement, requireWordBoundaries}; see the associated
|
|
help strings to find out what they do.
|
|
|
|
* Added supybot.plugins.Babelfish.disabledLanguages, to disable
|
|
certain languages from being translated/spoken.
|
|
|
|
* Added supybot.reply.maximumMores, to give users the ability to
|
|
set the maximum number of "more" chunks replies will generate.
|
|
|
|
* Added supybot.reply.truncate, to turn off the normal chunking
|
|
of replies that later can be retrieved with the more command.
|
|
Setting this variable to On means that no chunks will ever be
|
|
created.
|
|
|
|
* Added supybot.plugins.Enforcer.takeRevengeOnOps, which makes
|
|
the bot even take revenge on #channel,ops who try to violate the
|
|
channel configuration. Of course, such people can change the
|
|
channel configuration to their bidding, but it's a decent
|
|
protection against errant botscripts or something.
|
|
|
|
* Added supybot.plugins.Channels.alwaysRejoin, to make the bot
|
|
always rejoin when it's kicked.
|
|
|
|
* Added supybot.databases.users.hash, allowing those running bots
|
|
to specify the default hashed/unhashed state of user passwords in
|
|
the config file.
|
|
|
|
* Added Debian.bug, which retrieve bug info from Debian's BTS.
|
|
|
|
* Changed Relay.names to Relay.nicks, to be consistent with
|
|
Channel.nicks.
|
|
|
|
* Added supybot.brackets, a configuration variable for specifying
|
|
which set of matching brackets to use for nested commands. Valid
|
|
values are [] (the default), {}, <>, and ().
|
|
|
|
* Added a configuration variable to ChannelLogger, timestamp,
|
|
which determines whether the bot will timestamp its logfiles.
|
|
This is a channel-specific variable, of course.
|
|
|
|
* Updated ChannelLogger not to log messages starting with
|
|
[nolog], in order to allow private information to remain private.
|
|
|
|
* Added a configuration variable to ChannelLogger,
|
|
flushImmediately, to cause all channel logs to be flushed every
|
|
time they're modified, for those people who like to read the logs
|
|
through tail -f or something similar.
|
|
|
|
* Updated WordStats to allow removing of tracked words.
|
|
|
|
* Updated Seen.seen to accept no arguments and return the last
|
|
message spoken by anyone.
|
|
|
|
* Updated the Herald plugin to use the standard substitute until
|
|
we get it updated to use commands as heralds instead of plain
|
|
strings.
|
|
|
|
* Updated echo to use the standard substitute on its reply.
|
|
|
|
* Updated Network.whois so that it can now retrieve
|
|
information on all domains.
|
|
|
|
* Updated the Weather plugin to be retrieve weather from either
|
|
hamweather.net or cnn.com. Also added
|
|
supybot.plugins.Weather.{command,temperatureUnit} so that you can
|
|
specify which command (Weather.cnn or Weather.ham) to use when
|
|
Weather.weather is called and in which unit (C, F, K) to report
|
|
the weather.
|
|
|
|
* Updated standard replies (such as supybot.replies.success, etc.)
|
|
to use the standard substitute (such as $nick, $who, $channel,
|
|
etc.) in their text.
|
|
|
|
* Fixed snarfers to respect lobotomies.
|
|
|
|
* Fixed Admin.join not to add the channel to the supybot.channels
|
|
registry entry if joining the channel wasn't successful.
|
|
|
|
2004-02-20 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.77.0!
|
|
|
|
* Changed the format of the user and channel databases to
|
|
something much more readable and user-editable. Be sure, if
|
|
you're upgrading, to run tools/ircdbConvert.py on your user and
|
|
channel databases *BEFORE* installing the new version.
|
|
|
|
* Updated almost every document we have, and added a
|
|
GETTING_STARTED document. Yay!
|
|
|
|
* Added several new options for Channel.kban: --exact, --nick,
|
|
--user, --host, for more flexibility in determining what the
|
|
banmask is.
|
|
|
|
* Added a Scheduler plugin for scheduling events to occur at
|
|
specific times.
|
|
|
|
* Added a Herald plugin for announcing to the channel the arrival
|
|
of certain users.
|
|
|
|
* Changed the reply method of the irc object given to plugins not
|
|
to require a msg object.
|
|
|
|
* Added inter-factoid references for MoobotFactoids. Simply
|
|
define a factoid as "see <factoid-key>" (and nothing else) and it
|
|
will automatically go pick up the value for that factoid and
|
|
display it in its place. Sort of a "symlink" for MoobotFactoids.
|
|
|
|
* Added the ability to reply to factoids without the "whatis" in
|
|
the Factoids plugin. Now, you can use "@foo" instead of "@whatis
|
|
foo".
|
|
|
|
* Added --{from,to} and --sent options to Note.sent.
|
|
|
|
* Changed Note.get to simply be "note". Instead of "note get
|
|
145", you should use "note 145".
|
|
|
|
* Changed channel capabilities to use a comma to separate the
|
|
channel from the capability instead of a period. This is because
|
|
channels can include periods (but not commas) and since we now
|
|
allow "plugin.command" capabilities, there's no way to know
|
|
whether a given dot is separating the channel from the capability
|
|
or the plugin from the command.
|
|
|
|
* Removed Admin.setprefixchar, since it's unneeded with the new
|
|
configuration.
|
|
|
|
* Removed Status.bestuptime, since it was buggy and no one felt
|
|
like maintaining it.
|
|
|
|
* Added Http.cyborg, a fun little command for getting cyborg
|
|
abbreviations for names.
|
|
|
|
* Added Sourceforge.totalbugs and Sourceforge.totalrfes
|
|
|
|
* Removed Owner.{set,unset} since they matter not.
|
|
|
|
* Made the smileys and frowns configurable in ChannelDB.
|
|
|
|
* Added a vast array of new configurables -- check out the various
|
|
config commands in Configurable plugins to see.
|
|
|
|
* Added better error reporting for Admin.join, explaining to the
|
|
user if the bot can't join the channel.
|
|
|
|
* Added a title-snarfer to the URL plugin.
|
|
|
|
* Added Relay.command, a command for sending commands to the bot
|
|
on a different network.
|
|
|
|
* Added Bugzilla.search, a new command for searching a bugzilla
|
|
installation
|
|
|
|
* Added an INVITE handler in Admin, allowing users with the admin
|
|
capability to INVITE the bot to a channel. There's also a config
|
|
variable, alwaysJoinOnInvite, that will cause the bot to join
|
|
a channel whenever someone invites it to a channel, not just users
|
|
with the admin capability.
|
|
|
|
* Added conf.requireChannelCommandsToBeSentInChannel for requiring
|
|
all channel-related commands to be sent in the channel.
|
|
|
|
* Added conf.followIdentificationThroughNickChanges for having the
|
|
bot update user's identified hostmask when they change nicks.
|
|
|
|
* Added conf.replyWhenNotAddressed, a configuration variable for
|
|
having the bot always attempt to parse a message as a command.
|
|
|
|
* Added conf.replyWhenAddressedByNick, a configuration variable
|
|
for having the bot *not* respond when addressed by his nick.
|
|
|
|
* Added conf.replyWithNickPrefix, a configuration variable for
|
|
having the bot not prefix the nick of the person giving a command
|
|
to the reply.
|
|
|
|
* Changed all "zegrep" stuff to "zgrep -e" stuff, since zegrep is
|
|
on fewer platforms than zgrep.
|
|
|
|
2003-12-12 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.76.1! The birthday release!
|
|
|
|
* Fixed a bug in irclib.py that could cause the bot to loop,
|
|
connecting and disconnecting from the server because it didn't
|
|
think the server responded to its PING.
|
|
|
|
* Fixed a bug in the Services implementation that could cause
|
|
the bot to continually loop, connecting and disconnecting from the
|
|
server.
|
|
|
|
* Fixed Misc.help to follow the same default plugin rules that the
|
|
rest of the bot follows.
|
|
|
|
* Added better error reporting to Admin.join, so the various error
|
|
conditions that might make the bot incapable of joining a channel
|
|
will be reported.
|
|
|
|
* Updated RootWarner to be configurable, offering each channel the
|
|
ability to define whether or not people who IRC as root will be
|
|
warned, what that warning will be, and whether or not they should
|
|
be kicked.
|
|
|
|
* Added a configurable 'topic-sync' to the Relay plugin to
|
|
determine whether the topics of the two channels should be kept
|
|
synchronized.
|
|
|
|
* Added Lookup.search for searching the various loaded lookups.
|
|
|
|
* Added Topic.reorder, a new command for reordering the topics in a
|
|
specific manner.
|
|
|
|
* Added Topic.list, a new command for listing the topics in a
|
|
channel (mostly in order to help out with Topic.reorder :))
|
|
|
|
* Added Http.extension, a new command to retrieve file extension
|
|
information from filext.com.
|
|
|
|
* Updated Todo.remove to allow removing multiple taskids
|
|
|
|
* Updated Relay.whois to include a user's away status and identified
|
|
state, if the server supports it.
|
|
|
|
* Added utils.sorted, which does what list.sorted will do when 2.4
|
|
is released.
|
|
|
|
* Added ircutils.isCtcp, for determining whether or not a message
|
|
is a CTCP message.
|
|
|
|
2003-12-6 Jeremy Fincher <jemfinch@supybot.org>
|
|
|
|
* Version 0.76.0!
|
|
|
|
* Added a "trusted" capability that defaults to off (-trusted) and
|
|
is required for Utilities.re (with which it's possible to DoS the
|
|
bot) and for the new Math.icalc (with which it is trivially
|
|
possible to DoS the bot).
|
|
|
|
* Added Math.icalc, a new command for doing integer arithmetic.
|
|
It requires the "trusted" capability.
|
|
|
|
* Added the Fun.ping command, because MozBot has it.
|
|
|
|
* Added Note.unsend command, to allow users to "unsend" notes
|
|
they've sent but whose recipient has not yet read.
|
|
|
|
* Added Channel.{deop,devoice,dehalfop,kick}.
|
|
|
|
* Added Http.size and Http.doctype and Http.headers to retrieve
|
|
various meta-information on URLs.
|
|
|
|
* Added a ranking to ChannelDB.wordstats.
|
|
|
|
* Added Karma.most for determining various "mosts" in the Karma
|
|
database.
|
|
|
|
* Added User.list command to list registered users.
|
|
|
|
* Added 'roulette' command to Fun plugin.
|
|
|
|
* Added a Channel.lobotomies command to list the channels in which
|
|
the bot is lobotomized.
|
|
|
|
* Added a swap function to Math.rpn.
|
|
|
|
* Changed the name of User.changeusername to User.changename.
|
|
|
|
* Changed the logging infrastructure significantly; each plugin
|
|
now has its own logger (and thus logfile), in addition to being
|
|
logged in the main logfile.
|
|
|
|
* Fixed bug in which the bot wouldn't rejoin channels after a
|
|
reconnect. Thank the Lord for tcpkill :)
|
|
|
|
* Fixed Http.freshmeat for projects with a space in their names.
|
|
|
|
* Changed RSS so RSS feed commands may be added while the bot is
|
|
running, and so added RSS feed commands are in the RSS plugin.
|
|
|
|
* Changed Lookup so added lookups are added in the Lookup plugin
|
|
itself so there's no dependency on Alias, and so loaded lookups
|
|
can be seen via 'list Lookup'.
|
|
|
|
* Fixed bug #850931 as well as several other minor bugs in
|
|
Utilities.re.
|
|
|
|
* Fixed bug #851254, Factoids.whatis didn't work on numeric keys.
|
|
|
|
* Added the ability to turn on/off the showing of ids in FunDB
|
|
excuse/insult/praise/lart.
|
|
|
|
* Added the to= keyword argument to the various reply functions to
|
|
you can specify a target to send the message to.
|
|
|
|
* Changed socketDrivers to allow more time (10x more, to be exact)
|
|
for connecting to the network than for the normal read.
|
|
|
|
* Fixed a bug in Http.weather that would cause an ugly error
|
|
message for a command like "weather hell".
|
|
|
|
* Added the number of strings to the Fun.object output.
|
|
|
|
* Fixed bug in RSS.configure; no aliases could be added.
|
|
|
|
* Changed Alias.freeze to Alias.lock.
|
|
|
|
* Fixed sorting in Status' uptime database.
|
|
|
|
* Updated the Gameknot tests for expired games, and updated the
|
|
Gameknot plugin to handle such links in its snarfer.
|
|
|
|
* Added a 'server' attribute to Irc objects to unify the way to
|
|
access such information.
|
|
|
|
* Added revision command for finding out the revision of the files
|
|
in a running bot; also added __revision__ strings so CVS would be
|
|
happy to keep such information for us :)
|
|
|
|
* Fixed bug #848475 -- bad error message from regexp-expecting
|
|
commands.
|
|
|
|
* Stopped listing the plugin dispatcher command in the list of
|
|
commands for that plugin.
|
|
|
|
* Fixed bug in Gameknot.gkstats when retrieving the stats for
|
|
users who haven't yet played a game.
|
|
|
|
* Added a numUsers() method to ircdb.UsersDB (ircdb.users).
|
|
|
|
2003-11-18 Jeremy Fincher <jemfinch@users.sf.net>
|
|
|
|
* Changed commands so that plugins no longer have to make sure
|
|
that their commands are unique within the bot. Ambiguous commands
|
|
will reply with an error message and instruct the user to
|
|
disambiguate the command by prefixing with the appropriate plugin
|
|
name.. Many commands that formerly contained the plugin name (or a
|
|
portion thereof) have had it removed, and many plugins have had
|
|
their names changed so prefixing a command with the plugin name is
|
|
less bulky. Rather than list each individual example, you can
|
|
read the plugin documentation posted at ***TODO***
|
|
|
|
* Renamed numerous plugins: OwnerCommands became Owner,
|
|
AdminCommands became Admin, ChannelCommands became Channel,
|
|
MiscCommands became Misc, UserCommands became User, URLSnarfer
|
|
became URL, Notes became Note, FunCommands became Fun, IMDB became
|
|
Movies, and Aliases became Alias.
|
|
|
|
* Made aliases persistent across reloads/bot restarts. You should
|
|
probably change your botscripts not to add the aliases onStart, but
|
|
(assuming those aliases don't change) it should still work fine.
|
|
|
|
* Added the ability for users to specify that their passwords
|
|
should be hashed on disk.
|
|
|
|
* Added MoobotFactoids plugin for moobot-style factoids (which are
|
|
meant to mimic blootbot-style factoids). People used to
|
|
traditional IRC bot factoids plugins will probably find this
|
|
plugin more to their taste than Factoids.
|
|
|
|
* Added Ebay plugin for snarfing eBay URLs as well as getting info on
|
|
certain auctions.
|
|
|
|
* Added monitoring of occurrences of certain words on a per-user
|
|
basis, adding two new commands to ChannelDB (addword and
|
|
wordstats).
|
|
|
|
* Added Bugzilla module for accessing various data in Bugzilla
|
|
pages.
|
|
|
|
* Added QuoteGrabs module which allows people to grab interesting
|
|
quotes from other people and store them in the bot for later retrieval
|
|
(also optionally have the bot randomly snarf quotes).
|
|
|
|
* Added a "change" command to change factoid values in the Factoids
|
|
plugin.
|
|
|
|
* Added Dunno plugin as an optional replacement for the boring 'no
|
|
such command' response.
|
|
|
|
* Changed FundB to allow accessing excuses, larts, and praises by
|
|
id.
|
|
|
|
* Added substitutions for 'me' and 'my' in insult/praise/lart.
|
|
|
|
* Added 'change' and 'old' commands for News.
|
|
|
|
* Added ASPN Python Cookbook URL snarfer.
|
|
|
|
* Moved karma out of ChannelDB and into its own Karma plugin.
|
|
|
|
* Moved uptime-related commands to from FunDB to the Status plugin.
|
|
|
|
* Renamed the Network.internic command to whois, since we can now fix
|
|
ambiguity by prefixing the plugin name.
|
|
|
|
* Removed the "googlesite" function.
|
|
|
|
* Removed "dictserver" command in favor of using the Configurable
|
|
framework with the Dict plugin instead.
|
|
|
|
* Removed TwistedCommands plugin to the sandbox; the one command
|
|
it provided (dict) is now better provided in the Dict plugin.
|
|
|
|
* Removed the Moobot plugin (the commands were moved to the Fun
|
|
plugin or dropped entirely).
|
|
|
|
* Removed all example strings from plugins. To be replaced with an
|
|
automated process later.
|
|
|
|
* Converted several plugins to the new Configurable plugin type
|
|
Plugins modified include Bugzilla, ChannelDB, Dict, Ebay,
|
|
Enforcer, Gameknot, Google, Python, Relay, and URL (formerly
|
|
URLSnarfer).
|
|
|
|
* Changed ChannelDB database to use integer user ids instead of text
|
|
usernames.
|
|
|
|
* Changed Http.geekquote to use multiline geekquotes (and removed
|
|
the option to do so, since it's now the default).
|
|
|
|
* Added a --id switch to geekquote to pick a specific geekquote.
|
|
|
|
* Changed most commands in News to require the 'news' capability.
|
|
|
|
* Changed Relay.names output to show (and sort by) status in the
|
|
channel.
|
|
|
|
* Removed 'relaycolor' command in favor of Configurable framework.
|
|
|
|
* Added total memory usage to 'cpustats' output for several *nix
|
|
platforms.
|
|
|
|
* Removed the total percentage of CPU time from 'cpustats'. Not
|
|
only was it inaccurate, but we needed the room for memory stats.
|
|
|
|
* Changed Topic.shuffle to ensure that the topic is actually
|
|
shuffled.
|
|
|
|
* Changed all commands which take an index (various Topic and
|
|
Factoids commands) to index from 1 instead of 0.
|
|
|
|
* Fixed several bugs in Unix.spell whereby the bot could be
|
|
frozen.
|
|
|
|
* Changed the name of the "bug" command in the AdminCommands
|
|
plugin to "reportbug" instead.
|
|
|
|
* Added QUIT stat-keeping to ChannelDB.
|
|
|
|
* Removed the OwnerCommands.say command; it wasn't useful enough,
|
|
and is so easily written that anyone can have it back if they want
|
|
it.
|
|
|
|
* Changed OwnerCommands.load (and reload) to be case-insensitive,
|
|
so "load funcommands" works just as well as "load FunCommands".
|
|
|
|
* Changed the keyword parameter "needed" to privmsgs.getArgs to be
|
|
"required" instead. It just sounds better, works with "optional"
|
|
better, and we won't get an opportunity later to change it.
|
|
|
|
* Updated IrcObjectProxy.reply to allow a "notice" boolean keyword
|
|
to determine whether or not to reply via a notice.
|
|
|
|
* Added privmsgs.urlSnarfer, a wrapper around snarfer methods that
|
|
handles both the threading and the limiting of replies so loops
|
|
between two snarfing bots can't happen.
|
|
|
|
* Added structures.PersistentDictionary for dictionaries that
|
|
should be saved to a file in repr()ed form.
|
|
|
|
* Added structures.TwoWayDictionary for dictionaries that should
|
|
map keys to values and vice versa.
|
|
|
|
* Added a curry function to fix.py for doing currying (if you
|
|
don't know what it is, don't worry about it :))
|
|
|
|
* Added utils.depluralize to do the opposite of utils.pluralize.
|
|
|
|
* Added utils.safeEval for safe evaluation of Python data
|
|
structures (lists, dictionaries, tuples, numbers, strings, etc.,
|
|
but no operations on them).
|
|
|
|
* Added utils.saltHash for handling the hashing of passwords with
|
|
a salt.
|
|
|
|
* Added plugins.standardSubstitute to do standard substitutions
|
|
for things like $who, $nick, $channel, etc.
|
|
|
|
* Added plugins.Configurable, a plugin mixin that allows easy
|
|
specification and persistence of configurable data on a global and
|
|
per-channel basis.
|
|
|
|
* Fixed plugins.ChannelDBHandler (and added plugins.DBHandler) to
|
|
be threadsafe, so threaded plugins could still use a database, and
|
|
non-threaded database-using plugins could still receive the
|
|
results of a threaded command.
|
|
|
|
* Removed ircutils.privmsgPayload and ircutils.shrinkList, both of
|
|
which existed prior to the addition of more, and aren't needed
|
|
anymore.
|
|
|
|
|
|
2003-10-12 Jeremy Fincher <jemfinch@users.sf.net>
|
|
|
|
* Version 0.73.1!
|
|
|
|
* Fixed a bug in Math.{calc,rpn} where certain functions
|
|
("degrees" in particular) that didn't like complex arguments would
|
|
fail on numbers on which they shouldn't.
|
|
|
|
* Added an optional "key" argument to ChannelCommands.cycle.
|
|
|
|
* Fixed bolding in supybot-wizard.py.
|
|
|
|
* Fixed handling of the secure flag by ircdb.IrcUser.setAuth;
|
|
previously it didn't prevent someone with an unmatched hostmask
|
|
from identifying.
|
|
|
|
* Fixed imports in the DCC plugin.
|
|
|
|
* Fixed a bug where the bot would not reply to nick-addressed
|
|
messages on a channel if his nick wasn't entirely lowercased.
|
|
|
|
* Fixed the Relay plugin to relay topic changes; an oversight not
|
|
caught earlier because supybot has for a long time managed our
|
|
topics.
|
|
|
|
* Fixed a bug in the Services plugin where the bot would ghost
|
|
himself if his nick didn't match in case the nick given.
|
|
|
|
* Added the ability for PrivmsgCommandAndRegexp to have regexps
|
|
that are called *after* callbacks.addressed has been called on the
|
|
message -- see ChannelDB.{increase,decrease}Karma for an example.
|
|
|
|
* Fixed bug in supybot-wizard.py where plugins without configure
|
|
functions would raise an uncaught exception.
|
|
|
|
* Fixed debincoming to work since the removal of baseplugin; it
|
|
was missing an import.
|
|
|
|
* Fixed MiscCommands.doPrivmsg to send an IrcObjectProxyRegexp to
|
|
the replyWhenNotCommand function.
|
|
|
|
* Fixed debversion to display the correct output when no matching
|
|
packages were found.
|
|
|
|
* Fixed ChannelDB to import conf; karma didn't work otherwise.
|
|
|
|
* Fixed a bug in the Enforcer plugin that would cause the bot to
|
|
ban everyone from the channel whenever ChanServ deopped someone.
|
|
|
|
* Changed the "whois" command in the Network plugin to "internic"
|
|
instead.
|
|
|
|
2003-10-05 Jeremy Fincher <jemfinch@users.sf.net>
|
|
|
|
* Version 0.73.0!
|
|
|
|
* Added the News plugin, news handling for channels.
|
|
|
|
* Changed the initial character of anti capabilities to '-'
|
|
instead of '!'. '!' can be the initial character in a channel
|
|
name, and so any command using getChannel and accepting a
|
|
capability as its first argument (several in ChannelCommands) will
|
|
have difficulties (the channel then *must* be specified since
|
|
getChannel will consider !capability to be a channel name). Note
|
|
that this means you'll need to either remove and re-create or edit
|
|
your config files to change ! to - in capabilities.
|
|
|
|
* Removed the "cvsup" command; it's been useless since we had a
|
|
global install, and can only serve to confuse.
|
|
|
|
* Added a "private" command to MiscCommands to allow users to
|
|
specify that a response should be made in private.
|
|
|
|
* Added a "secure" flag to user database records that *requires*
|
|
that one of the user's hostmasks match if the user is to be
|
|
recognized. This flag may be set with the "setsecure" command.
|
|
|
|
* Added a convert command to the Math plugin. More conversions
|
|
are necessary, if anyone's interested in doing it. The available
|
|
units are available via the "units" command.
|
|
|
|
* Fixed the pydoc command to allow access to standard Python
|
|
modules that are shared libraries rather than pure Python code.
|
|
|
|
* Added a "Python" plugin and moved FunCommands.{pydoc,zen} to
|
|
it.
|
|
|
|
* Fixed the supybot- scripts to use optparse so they now
|
|
accept many command line options (but most importantly, the --help
|
|
option :))
|
|
|
|
* Added a debincoming command to the Debian plugin; it searches
|
|
the available packages at http://incoming.debian.org/
|
|
|
|
* Moved the "bug" command from MiscCommands to AdminCommands in
|
|
order to prevent possible abuse.
|
|
|
|
* Changed ChannelDB.seen to default to using nicks; a --user
|
|
option can be passed to use the old behavior. Note that this
|
|
means you'll have to update your ChannelDB database; use this
|
|
SQL statement to do so:
|
|
CREATE TABLE nick_seen (
|
|
name TEXT UNIQUE ON CONFLICT REPLACE,
|
|
last_seen TIMESTAMP,
|
|
last_msg TEXT
|
|
);
|