The latest version of SOAP.py (a SOAP implementation in written in Python), was released today. We're moving the project from actzero to sourceforge. It now can be found at : http://sourceforge.net/projects/pywebsvcs/ Comments, feedback, patches, etc... very welcome. Changes since last announcement: VERSION 0.9.7 (6/27/01) - Fixed the un-named ordered parameters bug - Added the ability to specify a http_proxy - Added a patch provided by Tim MiddelKoop to allow printing of proxy objects - Added the contrib directory and included a medusa implementation of a SOAP.py server by Ng Pheng Siong VERSION 0.9.6 (6/08/01) - The date and time types now check their initial values when the type is created, not when the data is marshalled. - The date and time types are now parsed and returned as tuples (for multi-element types) or scalars (for single element types) in UTC and thus can represent the entire range of SOAP dates. - If an element doesn't have a type but has a name with a namespace, the name is tried as the type. - Untyped compound types with more than one element and all the elements the same name are turned into an array when parsing. - When parsing a structType, elements with the same name are placed in a list instead of saving just the last one. _getItemsAsList can be used to get an element of a structure as a list, whether there was one or many occurances of the item. - Added schemaNamespace, schemaNamespaceURI, and namespaceStyle configuration options. namespaceStyle takes one of 1999, 2000, or 2001, and sets typesNamespace, typesNamespaceURI, schemaNamespace, and schemaNamespaceURI. - Normalized the type class names, replacing Compound with compoundType, Struct with structType, Header with headerType, Body with bodyType, Array with arrayType, TypedArray with typedArrayType, Fault with faultType, and urType with anyType. - Attributes now appear on an element itself instead of the element's parent. For elements parsed to builtin python types, the attributes are stored in a dictionary keyed by the element's python id. The dictionary is in the Context object, can be returned from parseSOAP*, and can be returned from method calls if the returnAllAttrs configuration option is set. - isinstance is used to check for a class, so classes can be subtyped. - An encoding of None can be specified to not include encoding information. - Problems with the SOAPProxy URL are now reported when the SOAPProxy instance is created instead of when the first method call is made. - The Binary, Boolean and DateTime types have been removed in favor of binaryType, booleanType, and dateTimeType.