mirror of
https://github.com/Mikaela/Limnoria.git
synced 2024-11-30 06:49:24 +01:00
342 lines
13 KiB
Plaintext
342 lines
13 KiB
Plaintext
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
|
|
the last release candidate.
|
|
|
|
An update to Babelfish may cause an error message to be displayed in
|
|
the console when the bot is first run. The error message should be
|
|
gone when the bot is restarted.
|
|
|
|
We also have a new community website at http://www.supybot.com/ where
|
|
our users can submit their own plugins, view/download other people's
|
|
plugins and discuss all things Supybot-related.
|
|
|
|
|
|
Version 0.80.0rc3
|
|
|
|
Another bugfix release. This one was pretty important as it actually
|
|
makes supybot.database.plugins.channelSpecific work properly.
|
|
|
|
|
|
Version 0.80.0rc2
|
|
|
|
supybot.databases.plugins.channelSpecific.channel was renamed to
|
|
supybot.databases.plugins.channelSpecific.link.
|
|
|
|
supybot.databases.plugins.channelSpecific.link.allow was added, which
|
|
determines whether a channel will allow other channels to link to its
|
|
database.
|
|
|
|
Infobot is no longer deprecated and the following changes were made to
|
|
its config variables:
|
|
supybot.plugins.Infobot.answerUnaddressedQuestions was renamed to
|
|
supybot.plugins.Infobot.unaddressed.answerQuestions.
|
|
supybot.plugins.Infobot.snarfUnaddressedDefinitions was renamed to
|
|
supybot.plugins.Infobot.unaddressed.snarfDefinitions.
|
|
supybot.plugins.Infobot.unaddressed.replyExistingFactoid was added to
|
|
determine whether the bot will reply when someone attempts to create a
|
|
duplicate factoid.
|
|
|
|
|
|
Version 0.80.0pre6
|
|
|
|
Another bugfix release. No incompatibilities known. The only
|
|
registry change is that supybot.databases.users.hash has been
|
|
removed.
|
|
|
|
|
|
Version 0.80.0pre5
|
|
|
|
Completely bugfix release. No incompatibilies known.
|
|
|
|
|
|
Version 0.80.0pre4
|
|
|
|
Mainly a bug fix release. This will likely be the last release before
|
|
0.80.0final, but we're gonna let it stew for a couple weeks to attempt
|
|
to catch any lingering bugs.
|
|
|
|
ansycoreDrivers is now deprecated in favor of socketDrivers or
|
|
twistedDrivers.
|
|
|
|
supybot.databases.plugins.channelSpecific.channel is now a channelValue
|
|
so that you can link specific channels together (instead of all channels
|
|
being linked together).
|
|
|
|
For those of you that use eval and/or exec, they have been removed from
|
|
the Owner plugin and are now in sandbox/Debug.py (which you'll have to
|
|
grab from CVS).
|
|
|
|
|
|
Version 0.80.0pre3
|
|
|
|
The database format for the Note plugin has changed to a flatfile
|
|
format; use tools/noteConvert.py to convert it to the new format.
|
|
|
|
Ditto that for the URL database.
|
|
|
|
FunDB is deprecated and will be removed at the next major release;
|
|
use tools/fundbConvert.py to convert your old FunDB databases to Lart
|
|
and Praise databases.
|
|
|
|
If you had turned off supybot.databases.plugins.channelSpecific, your
|
|
non-channel-specific database files had gone directly into your data/
|
|
directory. We had some problems with poor interactions between that
|
|
configuration variable and channel capabilities, though, so we
|
|
changed the implementation so that non-channel-specific databases are
|
|
considered databases of a single (configurable) channel (defaulting
|
|
to "#"). This will also help others who are converting from
|
|
channel-specific to non-channel-specific databases, but for you
|
|
who've already made the switch, you'll need to move your database
|
|
files again, from data/ to data/# (or whatever channel you might
|
|
change that variable to).
|
|
|
|
supybot.channels doesn't exist anymore; now the only list of channels
|
|
to join is per-network, in supybot.networks.<network>.channels.
|
|
|
|
We weren't serializing supybot.replies.* properly in older versions.
|
|
Now we are, but the old, improperly serialized versions won't work
|
|
properly. Remove from your configuration file all variables
|
|
beginning with "supybot.replies" before you start the bot.
|
|
|
|
The URL database has been changed again, but it will use a different
|
|
filename so you shouldn't run into conflicts, just a newly-empty
|
|
database.
|
|
|
|
We upgraded the SOAP stuff in others; you may do well to do a
|
|
setup.py install --clean this time around.
|
|
|
|
|
|
Version 0.80.0pre2
|
|
|
|
Many more bugs have been fixed. A few more plugins have been updated
|
|
to use our new-style database abstraction. If it seems like your
|
|
databases are suddenly empty, look for a new database file named
|
|
Plugin.dbtype.db. We've also added a few more configuration variables.
|
|
|
|
|
|
Version 0.80.0pre1
|
|
|
|
Tons of bugs fixed, many features and plugins added. Everything
|
|
should be entirely compatible; many more configuration variables have
|
|
been added.
|
|
|
|
|
|
Version 0.79.9999
|
|
|
|
Some more bugs fixed, added a few features and a couple configuration
|
|
variabless. This should hopefully be the last release before 0.80.0,
|
|
which will finally bring us to pure Beta status.
|
|
|
|
|
|
Version 0.79.999
|
|
|
|
Some bugs fixed, but the ones that were fixed were pretty big. This
|
|
is, of course, completely compatible with the last release.
|
|
|
|
|
|
Version 0.79.99
|
|
|
|
Many bugs fixed, thanks to the users who reported them. We're
|
|
getting asymptotically closer to 0.80.0 -- maybe this'll be the last
|
|
one, maybe we'll have to release an 0.79.999 -- either way, we're
|
|
getting close :) Check out the ChangeLog for the fixes and a few new
|
|
features.
|
|
|
|
|
|
Version 0.79.9
|
|
|
|
We've changed so much stuff in this release that we've given up on
|
|
users upgrading their configuration files for the new release. So
|
|
do a clean install (python2.3 setup.py install --clean), run the
|
|
wizard again, and kick some butt.
|
|
|
|
(It's rumored that you can save most of your old configuration by
|
|
appending your new configuration at the end of your old configuration
|
|
and running supybot with that new configuration file. This, of
|
|
course, comes with no warranty or guarantee of utility -- try it if
|
|
you want, but backup your original configuration file!)
|
|
|
|
|
|
Version 0.77.2
|
|
|
|
This is a drop-in replacement for 0.77.1, with two exceptions. The
|
|
configuration variable formerly known as
|
|
"supybot.plugins.Services.password" is now known as
|
|
"supybot.plugins.Services.NickServ.password", due to the fact that
|
|
there might be different passwords for NickServ and ChanServ (and
|
|
ChanServ passwords are per-channel, whereas NickServ passwords are
|
|
global). If you're using the Services plugin, you'll need to make
|
|
this change in order to continue identifying with services. The
|
|
configuration variable formerly known as
|
|
"supybot.plugins.Babelfish.disabledLanguages" is now known as
|
|
"supybot.plugins.Babelfish.languages". The configuration variable now
|
|
accepts the languages that *will* be translated as opposed to ones
|
|
that are *not* translated.
|
|
|
|
Tests and the developer sandbox are not longer delivered with our
|
|
release tarballs. If you're a developer and you want these, you
|
|
should either check out CVS or download one of our weekly CVS
|
|
snapshots, available at http://supybot.sourceforge.net/snapshots/ .
|
|
|
|
|
|
Version 0.77.1
|
|
|
|
This is a drop-in replacement for 0.77.0 -- no incompatibilities, to
|
|
out knowledge. Simply install over your old installation and restart
|
|
your bot :)
|
|
|
|
|
|
Version 0.77.0
|
|
|
|
Setup.py will automatically remove your old installations for you, no
|
|
need to worry about that yourself.
|
|
|
|
Configuration has been *entirely* redone. Read the new
|
|
GETTING_STARTED document to see how to work with configuration
|
|
variables now. Your old botscripts from earlier versions *will not*
|
|
work with the new configuration method. We'd appreciate it if you'd
|
|
rerun the wizard in order for us to find any bugs that remain in it
|
|
before we officially declare ourselves Beta. Note also that because
|
|
of the new configuration method, the interface for plugins' configure
|
|
function has changed: there are no longer any onStart or afterConnect
|
|
arguments, so all configuration should be performed via the registry.
|
|
|
|
Channel capabilities have been changed; rather than being
|
|
#channel.capability, they're now #channel,capability. It's a bit
|
|
uglier, we know, but dots can be valid in channel names, and we
|
|
needed the dot for handling plugin.command capabilities.
|
|
tools/ircdbConvert.py should update this for you.
|
|
|
|
The on-disk format of the user/channel databases has changed to be far
|
|
more readable. A conversion utility is included, as mentioned before:
|
|
tools/ircdbConvert.py. Run this with no arguments to see the
|
|
directions for using it.
|
|
|
|
Uh, we were just kidding about the upgrade script in 0.76.0 :) It'll
|
|
be a little while longer. We do have several little upgrade scripts,
|
|
though.
|
|
|
|
|
|
Version 0.76.1
|
|
|
|
Almost entirely bugfixes, just some minor (and some less minor) bugs
|
|
that need to get in before we really start hacking on the next
|
|
version. Should be *entirely* compatible with 0.76.0.
|
|
|
|
|
|
Version 0.76.0
|
|
|
|
Major bugfix release. A great number of bugs fixed. This is the last
|
|
release without an upgrade script.
|
|
|
|
The only hiccup in the upgrade from 0.75.0 should be that you'll need
|
|
to update your botscript to reflect the removal of the debug module.
|
|
We'd rather you use supybot-wizard to generate a new botscript, of
|
|
course, but if you insist on modifying your existing botscript, take a
|
|
look at
|
|
<http://cvs.sourceforge.net/viewcvs.py/supybot/supybot/src/template.py?r1=1.20&r2=1.21>
|
|
to see what you need to do.
|
|
|
|
|
|
Version 0.75.0
|
|
|
|
Don't forget to reinstall (i.e., run "python setup.py install" as
|
|
root). Sometimes it even does good to remove the old installation;
|
|
$PYTHON/site-packages/supybot can be removed with no problems
|
|
whatsoever.
|
|
|
|
You will need to re-run supybot-wizard and generate a new botscript.
|
|
|
|
The Infobot plugin has been removed from this release; it's not ready
|
|
for prime time. If you're interested in getting it running (i.e., you
|
|
want full Infobot compatibility and aren't satisfied with either
|
|
MoobotFactoids or Factoids) then swing over to #supybot and we can
|
|
discuss the tests. We simply don't know enough about Infobot to make
|
|
sure our Infobot plugin is an exact replica, and need someone's help
|
|
with making the changes necessary for that.
|