*0.6.2* (27th March, 2005)

  • Allow method declarations for direct dispatching to declare parameters as well. We treat an arity of < 0 or > 0 as an indication that we should send through parameters. Closes 939.

*0.6.1* (22th March, 2005)

  • Fix that method response QNames mismatched with that declared in the WSDL, makes SOAP::WSDLDriverFactory work against AWS again
  • Fix that @request.env was being modified, instead, dup the value gotten from env
  • Fix XML-RPC example to use :layered mode, so it works again
  • Support casting ‘0’ or 0 into false, and ‘1’ or 1 into true, when expecting a boolean value
  • Fix that SOAP fault response fault code values were not QName’s 804

*0.6.0* (7th March, 2005)

  • Add action_controller/test_invoke, used for integrating AWS with the Rails testing infrastructure
  • Allow passing through options to the SOAP RPC driver for the SOAP client
  • Make the SOAP WS marshaler use columns to decide which fields to marshal as well, avoids providing attributes brought in by associations
  • Add ActionWebService::API::Base.allow_active_record_expects option, with a default of false. Setting this to true will allow specifying ActiveRecord::Base model classes in :expects. API writers should take care to validate the received ActiveRecord model objects when turning it on, and/or have an authentication mechanism in place to reduce the security risk.
  • Improve error message reporting. Bugs in either AWS or the web service itself will send back a protocol-specific error report message if possible, otherwise, provide as much detail as possible.
  • Removed type checking of received parameters, and perform casting for XML-RPC if possible, but fallback to the received parameters if casting fails, closes 677
  • Refactored SOAP and XML-RPC marshaling and encoding into a small library devoted exclusively to protocol specifics, also cleaned up the SOAP marshaling approach, so that array and custom type marshaling should be a bit faster.
  • Add namespaced XML-RPC method name support, closes 678
  • Replace ’::’ with ’..’ in fully qualified type names for marshaling and WSDL. This improves interoperability with .NET, and closes 676.

*0.5.0* (24th February, 2005)

        * lib/action_service/dispatcher*: replace "router" fragments with
          one file for Action Controllers, moves dispatching work out of
          the container
        * lib/*,test/*,examples/*: rename project to
          ActionWebService. prefix all generic "service" type names with web_.
          update all using code as well as the RDoc.
        * lib/action_service/router/wsdl.rb: ensure that #wsdl is
          defined in the final container class, or the new ActionPack
          filtering will exclude it
        * lib/action_service/struct.rb,test/struct_test.rb: create a
          default #initialize on inherit that accepts a Hash containing
          the default member values
        * lib/action_service/api/action_controller.rb: add support and
          tests for #client_api in controller
        * test/router_wsdl_test.rb: add tests to ensure declared
          service names don't contain ':', as ':' causes interoperability
          issues
        * lib/*, test/*: rename "interface" concept to "api", and change all
          related uses to reflect this change. update all uses of Inflector
          to call the method on String instead.
        * test/api_test.rb: add test to ensure API definition not
          instantiatable
        * lib/action_service/invocation.rb: change @invocation_params to
          @method_params
        * lib/*: update RDoc
        * lib/action_service/struct.rb: update to support base types
        * lib/action_service/support/signature.rb: support the notion of
          "base types" in signatures, with well-known unambiguous names such as :int,
          :bool, etc, which map to the correct Ruby class. accept the same names
          used by ActiveRecord as well as longer versions of each, as aliases.
        * examples/*: update for seperate API definition updates
        * lib/action_service/*, test/*: extensive refactoring: define API methods in
          a seperate class, and specify it wherever used with 'service_api'.
          this makes writing a client API for accessing defined API methods
          with ActionWebService really easy.
        * lib/action_service/container.rb: fix a bug in default call
          handling for direct dispatching, and add ActionController filter
          support for direct dispatching.
        * test/router_action_controller_test.rb: add tests to ensure
          ActionController filters are actually called.
        * test/protocol_soap_test.rb: add more tests for direct dispatching.

0.3.0

        * First public release