$Id: Changes,v 1.15 2008/06/21 12:44:49 joern Exp $

Revision history and release notes for Event::RPC:

1.00 Sat Jun 21, 2008, joern
    Notes:
    - Time for version 1.00 ;)

    Features:
    - load_modules option added to Event::RPC::Server.
    - timeout option added to Event::RPC::Client. Patch
      by Strzelecki Lukasz <strzelec AT rswsystems.pl>.

0.90 Sun Apr 23, 2006, joern
    Notes:
    - Just a change to the license, switched from LGPL
      to Perl Artistic + GPL. Thanks for the hint about
      the bad wording in the old license text to
      Gregor Herrmann.

0.89 Mon Mar 27, 2006, joern
    Features:
    - New class_map attribute for Event::RPC::Client to be
      able to use classes locally which are imported from the
      server as well, by giving the server classes a different
      name on the client.
    - Turn execptions of unregistered object access into
      warnings, which makes client / server communication
      more robust and debugging easier.

    Bugfixes:
    - Fixed crashing when a method declared as an object
      returner returned undef, which should be absolutely
      legal.
    - Fixed client side exceptions if server connection is
      unexpectedly interrupted during a remote method call.
    - Exceptions are now stringified before send to the
      client, otherwise Storable may complain on exception
      objects which can't be freezed e.g. due to embedded
      code refs.

0.88 Sat Dec 24, 2005, joern
    Bugfixes:
    - Use Storable::nfreeze() to pack network messages, so
      Event::RPC works with mixed endian architectures
      as well. Patch by Rolf Grossmann <rg AT PROGTECH.net>.

0.87 Sun Dec 18, 2005, joern
    Features:
    - Delegation of authentication resp. user/password check
      to an external module via Event::RPC::Server attribute
      "auth_module". Old passwd hash based model is implemented
      in Event::RPC::AuthPasswdHash.
    - Fixed a typo in Event::RPC::Looger manpage. Thanks to
      Sean <soso AT kol.co.nz> for the report.
    - Cleaned up examples/: server.pl and client.pl now both
      accept -h option for binding/connecting to a specific
      host, not just localhost.
    - Makefile.PL tuning: add detected optional modules to
      PREREQ_PM to get their version numbers added to CPAN
      Testers reports.

    Bugfixes:
    - ChangeLog entry 0.86 was wrong regarding the SSL stuff.

0.86 Sat Dec 17, 2005, joern
    Features:
    - added Event::RPC::Server->get_active_connection
    - documented Event::RPC::Connection->get_client_oids
    - added Event::RPC::Connection->get_client_object

    Bugfixes:
    - Added missing documentation for Event::RPC::Client's
      error_cb attribute, which was just mentioned in
      the SYNPOSIS.
    - Fixed an incompatability with IO::Socket::SSL 0.97,
      which doesn't return different sysread() states for
      error and eof anymore which confused Event::RPC.

0.85 Sun Aug 28, 2005, joern
    Bugfixes:
    - Make server more bullet proof: handle log connections
      even if no logger is set, but a log listener was started.
    - Event::RPC::Server->new didn't recognize the
      'connection_hook' parameter.
    - Try making the testsuite more stable with Win32.

0.84 Mon Jul 25, 2005, joern
    Bugfixes:
    - Buffering for big incoming RPC requests (> 64KB) didn't
      work properly

0.83 Fri Apr 15, 2005, joern
    Features:
    - Made more parts of the API public by documenting them.
    - New server option "connection_hook" for accessing
      Event::RPC::Connection objects during connecting and
      disconnecting.
    - New server option "auto_reload_modules" to control the
      server's auto reloading facility, which was activated
      by default up to now.
    - New server option "host" to bind the listener to a
      specific address. Default is to bind to all addresses.
    - Increased connect performance by reducing the number
      of messages exchanged between client and server.
    - Client may request a subset of exported server classes.
      Default is still to import all classes exported by the
      server.
    - Client checks Event::RPC version and used protocol version
      on connect and warns different software versions but dies
      on incompatible protocol versions. Naturally it's
      recommended to use the same Event::RPC version on server
      and client.
    - Methods for getting client and server (after connecting)
      software and protocol version numbers.

    Bugfixes:
    - Missed ReuseAddr on listener sockets.
    - Made testsuite more robust
    - Network logging clients could block the server by
      sending data to it.
    - Renamed client option 'server' to 'host', which is more
      adequate. 'server' is still allowed but deprecated and
      using it triggers a warning.

0.82 Sun Apr 10, 2005, joern
    Notes:
    - First public release. API is fairly stable.

    Features:
    - User/password based authentication added.
    - Full documentation added.
    - Test suite added which covers all connection
      types and the most important features.

0.81 Sun Mar 13, 2005, joern
    Notes:
    - Still an internal release, incomplete documentation, no
      test suite.

    Features:
    - Support for SSL encryption added using IO::Socket::SSL.
    - Event loop abstraction. Event::RPC now works with Event
      and Glib and can be easily extended for other event loop
      frameworks. Thanks to Rocco Caputo for the suggestion.

0.80 Sun Mar 13, 2005, joern
    Notes:
    - A non public release. Only announced on the perl-loop mailing
      list for the namespace request and to get comments. Module
      is fully working but API isn't documented yet very well.
      Security stuff (SSL encryption, some password authentication)
      is missing also a complete test suite.