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

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> 2005-01-16 James Vega <jamessan@supybot.com>
* Version 0.80.0! * Version 0.80.0!

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 Version 0.80.0
We *finally* hit 0.80.0! This release is completely compatible with We *finally* hit 0.80.0! This release is completely compatible with