pike.git / CHANGES

version» Context lines:

pike.git/CHANGES:592:       - The module has been updated to work with Oracle 10.       - An approximation of the number of rows in a result object can be    queried from the new function num_rows().       - Return correct UNDEFINED instead of 0 values for NULL values in resultsets.      o Parser.HTML    -  FIXME -  Allow string and array as argument to _set_*_callback +  - Allow string and array as argument to _set_*_callback(). Those +  variants work just like a function only returning the string or +  array.      o Parser.Pike and Parser.C       - Parser.Pike and Parser.C have been rewritten in C for increased    performance.       - The #string directives should be handled correctly now.      o Parser.RCS   
pike.git/CHANGES:726:       - Many fixes for bugs in asynchronous mode.       - A query will not silently downgrade to http from https anymore if    there is no crypto support.       - Fixes for keep alive.      o Protocols.LDAP    -  Added more resilience to UTF-8 encode errors. A new flag -  Protocols.LDAP.SEARCH_RETURN_DECODE_ERRORS may be used to avoid -  throwing errors when this happens. +  - Enabled support for paged queries.    -  FIXME: Many changes +  - Added more resilience to UTF-8 encode errors. +  Locale.Charset.DecodeError is thrown for UTF-8 decode exceptions.    -  +  - Added a connection pool for connection reuse. It is used through +  get_connection() and return_connection(). +  +  - Added some schema handling and use it to fix the UTF-8 conversion +  to only affect attributes that actually are UTF-8 encoded. +  +  - Added client.read(), client.read_attr(), +  client.get_root_dse_attr(), client.get_basedn(), +  client.get_scope(), client.get_attr_type_descr(), +  get_constant_name(), and a bunch of constants for various object +  oids, attributes, well-known object guids and other things. +  +  - Rewrote the search filter parser to handle LDAPv3 extensible +  matches. It now also throw errors on all syntactic errors (using a +  new FilterError object), instead of sending a partial filter to +  the server. It is also possible to compile filters separately +  through make_filter(), and there is a very simple cache for +  compiled filters through get_cached_filter(). +  +  - Added ldap_encode_string(), ldap_decode_string(), +  encode_dn_value(), canonicalize_dn(), parse_ldap_url(), +  client.get_parsed_url(), and client.get_bound_dn(). +  +  - Added client.result.fetch_all(). +  +  - Added new flag field to client.search() to control various aspects +  of how results are returned: SEARCH_LOWER_ATTRS lowercases all +  attribute names. SEARCH_MULTIVAL_ARRAYS_ONLY uses arrays for +  attribute values only for attributes that might return more than +  one value. SEARCH_RETURN_DECODE_ERRORS may be used to avoid +  throwing exceptions on decode errors. +  +  - Added client.get_protocol_version(), +  client.get_supported_controls(), and the possibility to specify +  controls in client.search(). +  +  - Made the result iterator somewhat more convenient: next() now +  advances one step past the end so the next fetch() returns zero. +  +  - Added client.error_number(), client.error_string(), and +  client.server_error_string() to make it possible to query errors +  when no result object is returned. +    o Protocols.SNMP       The readmsg() method in the protocol object now takes an optional    timout argument.      o Protocols.XMLRPC       The new AsyncClient class implements an asynchronous XMLRPC client.      o Regexp.PCRE.Widestring