Commit the initial ChangeLog and RELNOTES for 0.83.0rc1. Open for comments, suggestions, inclusion of skipped over information.

This commit is contained in:
James Vega 2005-05-05 03:46:42 +00:00
parent e9389a0513
commit 5274eb08a8
2 changed files with 226 additions and 47 deletions

189
ChangeLog
View File

@ -1,3 +1,98 @@
2005-05-02 James Vega <jamessan@supybot.com>
* Version 0.83.0rc1!
* Added Web plugin.
* Added Reply plugin.
* Added Games plugin.
* Added String plugin.
* Added supybot-botchk script.
* Added Topic.fit, which removes leading topics (if needed) to make
room for the new topic.
* Added netsplit throttling to Herald.
* Added SSL server support for the Twisted driver.
* Added Seen.any, which reports the last time anything happened with a
user instead of just the last time they said something.
* Added conf.supybot.plugins.ShrinkUrl.bold, which specifies whether
the plugin should use bold in its responses.
* Added Web.fetch, which replies with the text of the given URL.
* Added Note.next to retrieve the next unread note (patch from Sune
Foldager).
* Added supybot-botchk script, useful for starting Supybot and keeping
it running.
* Added supybot-plugin-doc script, which generates documentation for a
plugin.
* Added various functions to supybot.utils.file (touch, writeLine,
readLines, chunks).
* Added conf.supybot.protocols.irc.queuing.rateLimit.join to throttle
how fast Supybot joins channels.
* Added unaddressedRegexps to callbacks.PluginRegexp as a complement
to addressedRegexps.
* Added supybot.plugins.Herald.requireCapability, which specifies the
capability a user needs to affect another user's herald.
* Changed the order of the arguments to utils.str.nItems.
* Changed Todo's db format to a single flatfile db per user.
* Renamed conf.supybot.plugins.Herald.throttleTime to
conf.supybot.plugins.Herald.throttle.
* Renamed conf.supybot.plugins.Herald.throttleTimeAfterPart to
conf.supybot.plugins.Herald.throttle.afterPart.
* Renamed the general log file (misc.log) to messages.log.
* Renamed Google.metagoogle to Google.meta.
* Renamed conf.supybot.protocols.irc.queueDuplicateMessages to
conf.supybot.protocols.irc.queuing.duplicates.
* Removed the extra argument to utils.str.pluralize which specified
whether or not to pluralize the string.
* Updated User.capabilities to always respond in private and prevent
people from retrieving other user's capabilities.
* Updated Alias.add so that alias names can coincide with plugin names.
* Updated Plugin.contributors to pull author/contributor information
from the plugin in addition to the authors already hard-coded in
Supybot.
* Updated Relay.{join,part} so the require the admin capability.
* Fixed a bug where the nickInChannel converter would add the channel
to the args list.
* Fixed some exceptions in RSS.
* Fixed a problem with RSS not properly escaping feed names.
* Fixed supybot.utils.str parsing of regular expression separators
other than / (patch from gcbirzan).
* Fixed Owner.enable so that commands can actually be re-enabled.
* Fixed Bug #1190350, incorrect extraction of a website's title.
2005-01-16 James Vega <jamessan@supybot.com>
* Version 0.80.0!
@ -104,52 +199,52 @@
2004-12-22 Jeremy Fincher <jemfinch@supybot.com>
* Version 0.80.0pre6!
* Added a Topic.separator command, which replaces the current
separator with a new separator, changing the topic to reflect the
change.
* Changed the supybot.user configuration variable so that if it
isn't configured, the user will stay up-to-date with the current
version of the bot. To take advantage of this, set your
supybot.user configuration variable to ""
* Removed the supybot.databases.users.hash configuration
variable, so all bots hash by default.
* Fixed a bug with AutoMode's auto-banning feature; a variable
was misspelled.
* Fixed a bug with ChannelValues picking up children that aren't
channels.
* Fixed Misc.apropos not to be case-sensitive.
* Fixed bug in User.register; it works now.
2004-12-20 Jeremy Fincher <jemfinch@supybot.com>
* Version 0.80.0pre5!
* Added a "shuffle" command to the Utilities plugin, which
shuffles its arguments. Useful in combination with
Utilities.last, which returns the last argument it's given, in
combination with Utilities.apply, in order to pick a random
string (think aliases).
* Added supybot.plugins.Relay.noticeNonPrivmsgs, for making the
relay plugin use NOTICEs rather than PRIVMSGs to relay
non-PRIVMSG messages to a channel. This often affects tab
coloring in IRC clients and thus makes it so that relay messages
color the tabs like the actual messages would have.
* Numerous bug fixes. Many, many bugs fixed. Oodles and oodles
of bugs have been fixed. Myriad bugs fixed. Get the idea? :)
2004-12-17 James Vega <jamessan@supybot.org>
* Version 0.80.0pre4!
@ -164,7 +259,7 @@
* Moved {eval,exec} from Owner.py to Debug.py in the sandbox.
* Numerous bug fixes.
2004-09-30 Jeremy Fincher <jemfinch@supybot.org>
@ -180,33 +275,33 @@
* Deprecated the Quotes plugin, since we don't know anyone who
seriously uses it. Let us know if you do use it, because it may
be removed in a future version.
* Added Karma.{dump,load} for dumping and subsequently loading
the Karma database.
* Changed the News database implementation to a flatfile
database.
* Removed the tinyurl shrinking code from the URL plugin and put
it in the ShrinkUrl plugin, and added the ability to use ln-s.net
as different URL shrinker as well.
* Added an outFilter to the ShrinkUrl plugin that will shrink any
outgoing URL that is longer than the minimum length.
* Added a Freenode plugin as proof-of-concept; the bot can now
use CAPAB IDENTIFY-MSG to ignore users that aren't identified.
* Added the ability for the Seen plugin to match nicks with
wildcards.
* Added a showLinks configuration option to the RSS plugin to
show links during announcements (and another such variable for
non-announcements).
* Added the spellit, hebrew, and shrink filters to the Filter
plugin.
* Added the ability to log to separate directories to
ChannelLogger.
@ -216,7 +311,7 @@
* Added "at" and "until" commands to the Time plugin; they're not
perfect, and they don't parse nearly enough times, but they're
somewhat tolerable for now.
* Added a Sourceforge.stats command.
* Added single-letter commands to the Words plugin when a hangman
@ -237,7 +332,7 @@
* Added supybot.databases.plugins.channelSpecific.channel,
specifying the "default channel" for non-channel-specific
databases to use.
* Moved the supybot.humanTimestampFormat configuration variable
to supybot.reply.format.time.
@ -257,28 +352,28 @@
* Added support for line-wrapping the registry configuration
file.
* Moved supybot.reply.{brackets,pipeSyntax} to
supybot.commands.nested.
* Fixed a longstanding bug with the bot "forgetting"
channel-specific configuration variables if they weren't
exercised during the duration of the bot's uptime.
* Fixed renames so they're finally persistent.
* Fixed a bug having to do with Note and unsent notes.
* Fixed several bugs in the interaction of Infobot with other
plugins.
* Added commands.wrap, the new method for wrapping commands and
handling type validation errors consistently throughout the bot.
* Upgraded many of the outside projects we include to their
newest versions.
2004-09-17 James Vega <jamessan@users.sf.net>
* Version 0.80.0pre2!
@ -290,7 +385,7 @@
* 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.
@ -308,7 +403,7 @@
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.
@ -331,7 +426,7 @@
* 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
@ -344,27 +439,27 @@
* 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).
@ -377,28 +472,28 @@
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!

View File

@ -1,3 +1,87 @@
Version 0.83.0rc1
There have been some fairly significant changes since our last release.
First, plugins are now a directory of files rather than a single file.
This makes it much easier for an individual plugin to supply any
3rd-party modules it may depend on and resolves some bugs we had with
reloading plugins. supybot-plugin-create (nee supybot-newplugin) has
been updated to reflect this. A side effect of using a directory-based
plugin is that @load/@reload are now case-sensitive. "@load foo" is not
the same as "@load Foo".
As part of the conversion to the new plugin format, some plugins were
broken up into more focused plugins. Also, not all of the plugins that
we used to ship are part of this release. Some we moved to the
supybot-plugins package and some others (which would be candidates for
supybot-plugins) have yet to be converted to the new format.
Second, we've updated the scripts that ship with Supybot. As noted in
the previous section, supybot-newplugin is now named
supybot-plugin-create. We've also added the following scripts:
supybot-botchk - Handy script for starting the bot and keeping it
running. Ideal for having cron automatically start the
bot.
supybot-plugin-doc - Generates documentation for the specified
plugin(s). Currently, the documentation is
generated using Structured TeXt so that it can
easily be uploaded to our website.
supybot-plugin-package - The beginning of a script to make a plugin
package which can be uploaded to our website
for general consumption.
supybot-test - Runs a plugin's test suite.
Third, we've broken supybot.utils into focused sub-modules. There's no
longer a supybot.fix module and we now have the following modules:
supybot.utils.file - utilities for dealing with files (e.g. the old
supybot.utils.transactionalFile is now
supybot.utils.file.AtomicFile)
supybot.utils.iter - utilities for dealing with iterables (all, any,
partition, groupBy, choice, etc)
supybot.utils.gen - general purpose utilities which are imported into
the supybot.utils namespace
supybot.utils.net - utilities for dealing with the network
supybot.utils.python - utilities for dealing with Python
supybot.utils.seq - utilities for dealing with sequences
supybot.utils.str - utilities for dealing with strings (including our
new format() function)
supybot.utils.structures - general purpose structures used in Supybot
supybot.utils.web - utilities for dealing with the web (used to be
supybot.webutils)
Fourth, we've added source-nested plugins (using the class
callbacks.Commands). This allows you to group similar commands
together. Some examples are:
Channel.{ban add,ban list,ban remove}
User.{hostmask add,hostmask list,hostmask remove}
Fifth, we've removed the privmsgs module. All of the functionality
that was offered in that module is now available by using commands.wrap.
Use of this is documented at:
http://supybot.com/documentation/help/tutorial/wrap
Sixth, we've renamed some plugin-related API changes. Some classes had
their names changed. The old names are still available for
backwards-compatibility.
callbacks.Privmsg -> callbacks.Plugin
callbacks.PrivmsgCommandAndRegexp -> callbacks.PluginRegexp
callbacks.IrcObjectProxy -> callbacks.NestedCommandsIrcProxy
callbacks.PrivmsgRegexp was removed since its functionality is covered
by setting using PluginRegexp.
Also, the prototype for a plugin's __init__ method changed:
def __init__(self): -> def __init__(self, irc):
Remember to pass the irc object on when you call the parent class's
__init__ method.
Version 0.80.0
We *finally* hit 0.80.0! This release is completely compatible with