The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
0.6.5

	- Added leave_muc() method to Volity::Jabber.

	- Volity::Game::TicTacToe now returns the volity.not_your_turn
	  translaton token when it isn't your turn, instead of
	  game.not_your_turn. The former has recently been added as a core
	  Volity translation token.

	- If a parlor loses its connection to the Jabber server, it
          will attempt to reconnect, and if still not successful try
          again every few seconds.

	- There is now a logical separation between the the hostname of
	  the Jabber server that Volity entities connect to, and the host
	  part of their own JIDs. This allows proxying and such.

	- Multiple bot support now actually works as advertised.

	- Some endgame winner-list configurations would mysteriously break
          things; no longer.

	- The ref no longer allows non-seated players to suspend games.

	- Experimental bot factory support. A future release will feature
	  full support as well as a new framework for building your own
	  bot factories.

	- Removed our POE module forks, as the CPAN versions now work fine
	  with Frivolity.
	
0.6.4

	- Bugfix release. Volity::Game's current_seat method didn't work
	  exactly as advertised, not updating the internal turn queue and
	  therefore sometimes causing turn order to misbehave. This is
	  fixed. Thanks to Austin Henry for spotting the error.

0.6.3

	- Volity::Referee now submits W3C-format time strings in its game
          records.

	- Volity::GameRecord no longer dies when it can't parse a date
          string.

	- Volity::GameRecord massages the values of end_time and
    	  start_time to GMT.

	- Added support for the bot-discovery protocol to Volity::Server.

	- Added support for algorithm URIs to Volity::Bot.

	- Added a dependency for DateTime and DateTime::Format::W3CDTF to
	  Makefile.PL, and removed dependencies to other date formatting
	  and parsing modules. Props to Dave Rolsky and the DateTime team
	  for finally making a unified Perl module for handling all this
	  stuff.

0.6.2

	- (version 0.6.1 was sacrificed to the CPAN gods.)

	- Fixed a bug that would sometimes crash the parlor after a
          Volity::Game object went away.

	- Removed Tie::Exechash from dependency list.

0.6.0

	- Rewrote all the modules' perldocs, based on user feedback. A
	  newcomer to the system should be able to "perldoc Volity" and go
	  on from there with little difficulty.

	- Volity::Bot was rewritten to be actually useable by people
	  besides me. Additionally, Bot subclasses no longer define their
	  JIDs in their code; you now pass this info in when you run
	  volityd. Unfortunately it is not guaranteed to be backwards
	  compatible, but I have the sneaking suspicion that nobody else
	  had been using this module anyways.

	- volityd now supports config files, as well as Getopt::Long-style
	  command-line options.

	- Added support for admin.* RPCs, and some other methods that they
	  use. For the time being I just copied the admin RPCs that Andrew
	  Plotkin implemented for his own Python-based Volity libs.

	- Friv has been removed from the distribution.

0.5.3

	- Added our own fork of POE::Filter::XML::Node.

0.5.2
	- More bugfixes, and small tweaks to keep up with minor
          protocol changes.

	- Got rid of the Build::Install process, replacing it with
	  ExtUtils::MakeMaker and ExtUtils::AutoInstall. Made 
	  SpiderMonkey and other things that Friv needed optional,
          rather than required.

        - Changed the callback interface in Volity::Game for game state
          requests. It's quietly backwards-compatible with the previous
          interface. See that module's send_config_state_to_player and
          send_game_state_to_player methods.

0.5.1	

	- Various bugfixes throughout the modules.

	- Made the attemped-sexy accessors for array-based instance
	  variables in the Volity base class a little sexier.

	- Added Volity::WinnersList, which makes the creation of
	  end-of-game winners lists (for inclusion in game records) easier.
	
0.5.0

	- MAJOR changes all over the place, reflecting development with
	  the core Volity protocol between fall 2004 and summer 2005. This
	  includes implementatoin of several new concepts, including
	  readiness, table configuration, the game and UI finders, and
	  seats. See the Volity Wiki (http://volity.org/wiki) for more
	  information about any of these.
	
	- Bugfix: The "smart" array hander in Volity.pm's get() accessor
	  method was actually kind of dumb. It's less so now.

0.4.1

	- Bugfix: Wasn't requesting disco-info on multiple UI files
          properly. Now it is.

	- Started to implement player-to-player invitations. See the
	  "invite" and "accept" commands in Friv.

0.4.0

	- Expanded the Bot base class's usefulness.

 	- Made service disocvery support actually work. Friv now uses
	  uses it to discover game UI files, and automatically fetch
	  and install them (unless the user has manually loaded local UI
	  files).

	- Nice, configurable logging is now supported throughout the
	  modules. As a result, the module now requires the Log::Log4perl
	  module as an installation prerequisite.

	- The game server daemon program is now named volityd, not
      	  server.pl. And it's documented! And supports logging!

	- Improved Friv's documentation, including clarification of how
	  one actually plays a game with it.

	- Lots of bugfixes. Prior to this version, you could not
          successfully run a game server using the most recent version
          of the RPC::XML module... whoops.
	
0.3.0

	- Added support for bot invitations.

	- Greater support for forms in Volity::Jabber.
	
	- Added send_presence method to Volity::Jabber.

	- Volity::Server objects now listen for incoming presence
          subscriptions, and automatically approve of them.

	- Rewrote and renamed the text client. It's now 'Friv', under
          the executable 'friv'.

	- Added basic roster, service discovery support, and user
	  regsitration to Volity::Jabber.

	- Added (most of) the above to Friv, too.

	- Implemented support for ECMAScript throughout Friv and the
	  server modules. Friv now requires the JavaScript::SpiderMonnkey
	  module.

	- All RPC calls are now in either the 'volity.*' or 'game.*'
          namespaces.

	- Rewrote lots of low-level stuff in Volity::Jabber and
          elsewhere to cope with API change to the new (tentative v1.0)
          pre-release version of POE::Component::Jabber.

0.2.2

	- (distribution) Improved the test.pl script. It now more
          properly takes advantage of Test::More's abilities, and is
          easier to extend.

	- More cruft removal from Game.pm, Server.pm.

	- Fixed a bug in Volity::Jabber that prevented it from opening
          connections to remote servers correctly (!) (The call to
          POE::Component::Jabber's constructor lacked sufficient
          information.)

	- Eliminated dependency of my silly, non-CPAN Class::Accessor::Fields
	  module, and added dependency on CPAN's Class::Fields. This is better,
	  though it still means that pseudohashes are being used for now.

0.2.1
	- Servers now keep track of referees they create, and provide the
	  appropriate accessor methods. A server that receives a 'stop'
	  message will pass this along to its referees.

	- Added a 'stop' method to Server and Referee classes.

	- Added lots of POD docs throughout the package.

	- Added this Changes file to the package!

	- Added a test suite, which can be run through the 'test' command
       	  of the Build script.

	- Rubbed out various hardcoded settings in Server and Referee.

	- Changed messy debug print()s into debug() method calls.

	- Added (unfortunately) "no warnings(deprecated)" to suppress
	  whinging about bad pseudohashes. We'll eject phashes later.

	- Volity::Game now inherits from Class::Data::Inheritable, and is
	  now the place to set game configuration information such as the
	  game's URI and allowed player range.