The Perl Toolchain Summit needs more sponsors. If your company depends on Perl, please support this very important event.
0.65 
  - A JDK 6 java agent added for exporting the j4p protocol via
    HTTP/JSON.
  - Extended READ operation to support MBean patternames and multiple
    attributes with a single request
  - Renamed 'max_depth', 'max_list_size','max_objects' as processing 
    configuration parameters to 'maxDepth', 'maxCollectionSize' and
    'maxObjects' respectively for consistencies sake.
  - Bug fix: POST request respect these parameters as well now 
  - Added 'ignoreErrors' request option in order to allow a bulk read
    to succeed even if single read fails. In this case, the valu will
    be set to an appropriate error message.
  - 'search' returns properly escaped MBean Names if unsafe characters
    are used. 
  - For GET request, instead of pathinfo a query with parameter 'p'
    can be used as alternative. This works around certain issues with
    special path handling with certain app-servers (e.g. Tomcat). 
  - JMX::Jmx4Perl::Request and JMX::Jmx4Perl::Agent hardened in order
    to be more smart with unsafe MBean Names and detect automatically
    the most convenient HTTP Request method (if not explicitely set)
  - Added more unit and integration tests.
  - Added VERSION command to JMX::Jmx4Perl to get to agent and
    protocol version
  - Fixed error handling for bulk requests. Now each request object
    will return an associated response object even in the error case.
  - Fixed JMX::Jmx4Perl::info for IBM JVMs
  - Added JMX::Jmx4Perl->parse_name() for splitting up a given MBean
    object name into its parts

0.60  (2009-02-28)
  - OSGi bundle (including dependencies) for exposing JSON export via
    the OSGi HTTP-Service. It's in agent/modules/j4p-osgi.
  - Refined error handling
  - Removed legacy JDK 1.4 support. 0.36 is the one and only version
    for which the JDK 1.4 backport has been tested to some amount.
  - Added support for overloaded JMX operations for 'list' and 'exec'
  - 'read' operation can now be used without attribute name in which
    case the value of all attributes is returned. This can be used
    directly with JMX::Jmx4Perl and the frontend jmx4perl.
  - Support for Resin 3.1 added
  - 'exec' operation can now deal with simple array arguments. Within
    the perl modules, give an array ref for an array argument. This
    gets translated to a comma separated list of values in the
    string. For string array this works only with simle content
    (i.e. no element containing a ',')

0.51 (2009-12-30)
  - Quickfix for a badly packaged agent/j4p.war

0.50 (2009-12-24)
  - Protocol of j4p.war has been extended to enable proxy mode
  - Added '--target' to check_jmx4perl for using proxy mode
  - Added '--target' to jmx4perl
  - Added Mule agent. Use maven to build it in agent/modules/j4p-mule  
  - 'get_war' and 'get_mule_agent' as actions for Build.PL for
    fetching java artifacts from the labs.consol.de maven repository.
  - Cleaned up and updated Manual.pod

0.40 (2009-11-14)
  - Extended protocol to allow for JSON requests via POST in addition
    to pure URL based requests via GET
  - Implemented bulk requests: JMX::Jmx4Perl->request() can now take a
    list of JMX::Jmx4Perl::Request objects in which case it will
    return a list of JMX::Jmx4Perl::Response objects (instead of a
    single, scalar, response when used with a single request)
  - Support for Glassfish V3 Preview, Jonas 5.1 and Jetty 7.0.0

0.36 (2009-10-30)
  - Added <remote> to j4p-access.xml for restricting 
    access to certain hosts or subnets only.
  - Added support for a JDK 1.4 agent war. The feature base for 
    this agent is frozen. It might even vanish in the future.
    You need a JDK 1.4 agent for running within Weblogic 8.1
  - Cleaned up j4p agent with help of sonar and associated 
    metric checkers like PMD, check_style and FindBugs.
  - Added support for config files in jmx4perl and JMX::Jmx4Perl 
    which allows for shortcuts for agent URL as well as storing 
    user and credentials information.
  - Fixed some bugs

0.35 (2009-08-15)
  - Added example 'threadDump.pl'
  - Fixed bug when serializing floats and doubles.
  - check_jmx4perl: 
    * Added support for checking string and boolean values
    * Escaping performance data
    * Include units-of-measurement in the plugin output
    * Custom labeling of plugin output
    * Perfdata contains always absolute values, even when 
      used with --base

0.30 (2009-07-31)
  - Fixed permission issue while running 'Build dist'
  - Fixed URL generation for Websphere
  - Added support for generic Bean serialization
  - Added 'search' command to jmx4perl
  - Fixed bug when using pathes with multiple components
  - Added additional parameters 'max_depth', 'max_list_size' and
    'max_objects' to restrict the size of the JSON answer. Protocol
    has changed as well a bit.
  - jmx4perl: URL now as first argument for easier workflow when using
    bash history for repeated usage.
  - Added support for restricting MBean access via a policy file
    (j4p-access.xml)  

0.21 (2009-07-03)
  - Added '--proxy' for check_jmx4perl and jmx4perl
  - check_jmx4perl:
    + Refactored to work within the embedded Nagios Perl interpreter
      (ePN)  
    + use relative values in the range from 0 to 100%
      (for --critical and --warning) instead of [0..1]
    + Renamed '--base-value' to '--base' since it can take now
      absolute values (numbers) or "mbean/alias/path" tuples as an
      argument in addition to alias names.
    + Added '--operation' which allows for using return values of
      operations as check values
    + Added ~ 50 integration tests

0.20 (2009-06-28)
  - Support for writing attributes and executing operations 
  - Documentation fixes
  - Tested for WebLogic 9. New initial support for Websphere 6.1 and 
    7.0
  - New "version" command to j4p-agent
  - New "search" j4p-agent command for querying for MBean names
  - Added '--base-alias' to check_jmx4perl for using relative 
    thresholds
  - Added '--delta' to check_jmx4perl for using an incremental 
    mode
  - Cleaned up check_jmx4perl perfdata output
  - Added own j4p-agent MBean for configuration management 
    (history tracking and debugging info)
  - JMX::Jmx4Perl has new request short-cuts 'set_attribute' and 
    'execute'
  - Renamed j4p-agent.war to j4p.war
  - Started integration test suite below "it/" and "agent/modules/j4p-it"
    for installing some test beans
  - Cleaned up maven integration for the agent servlet
  - Moved repository to git://github.com/rhuss/jmx4perl.git

0.16
  - Switched off debugging in agent servlet
  - Fixed syntax error when using 'jmx4perl -v attributes'
  - Fixed Jetty Handler. 

0.15
  - Aliasing
  - Autodetection 
  - Command line tool "jmx4perl"
    * reading of attributes
    * listing of all availabel attributes and operations. 
    * listing of all attribute values
    * print server info
    * print all available aliases
  - Bug Fixes:
    * Correct URL encoding for request URL
    * Slash '/' needs to be custom encoded, since URI encoding doesn't 
      work for JBoss 4/5 due to a bug
  - Tested to work on JBoss 4 & 5, Oracle WebLogic 10, Jonas 4, Geronimo 2, 
    Glassfish 2, Tomcat 4-6 and Jetty 5 & 6 

0.1
  - Initial release
  - check_jmx4perl