Sunteți pe pagina 1din 3

CPAINT changelog

//---- v2.0.3 (Released Feburary 8, 2006) -------------------------- PHP: nixed potential security hole with invalid response types
(Thanks to James Bercegay)
//---- v2.0.2 (Released January 20, 2006) -------------------------- JS: check HTTP response code and throw an error if request was
not accepted by server. (thanks gloomyandy)
- JS: allowing the underscore in node names.
- JS: added support for the passing of arrays and objects to the
backend.
- JS: added X-Powered-By request header.
- JS: node names, attribute names and -values from backend are now
expected to be valid ISO-8859-1.
- JS: fixed wrong initialization of the data property to int zero in
class cpaint_result_object.
- JS: removed unneccessary setter() methods from internal classes
to reduce size.
- JS: added debugging level cp.set_debug(-1) to suppress errors.
- JS: fixed type conversion issue where non-empty, pure whitespace
strings where interpreted as numbers.
- JS: fixed problem with callback being called twice.
(thanks to Lance Rushing)
- JS: fixed problem with URLs with existing GET parameters.
(thanks to Nelson Antunes)
- JS / PHP: added support for JSON as response type.
- JS / PHP: added support for E4X as response type.
- PHP: added cpaint::unregister()
- PHP: added cpaint::get_response_type();
- PHP: removed a bug in JSON library that prevented the generation of valid JSON
when including a leading zero character.
- PHP: Removed unneccessary unescaping of parameters in proxy script.
- PHP: added support for array and object parameters from JavaScript (JSON!).
- PHP: added X-Powered-By response header.
- PHP: removed encoding of node names, attribute names and attribute
values to UTF-8 if possible. those values must now be valid
ISO-8859-1.
- PHP: removed output buffer to make it possible to include backend
and frontend in the same file.
- PHP: fixed error output (a function was called...) when no
parameters where sent to CPAINT indicating a function call, thus
making it possible to include backend and frontend in the same file
(thanks S. Alexandre M. Lemaire)
- PHP: added backend debugger code to main source tree & documentation.
- PHP: secured proxy utility (see documentation).
- PHP: added backend configuration file (for proxy security and future use)
- ASP: removed from distribution to focus on PHP and other ports.
//---- v2.0.1 (Released September 5, 2005) -------------------------- JS: added the returning of plain-text response when using XML|OBJECT
response type as second parameter to user-defined callback function
(thanks Gunther)
- JS: added cpaint.capable property to determine AJAX-compatible
browsers
- JS: cleaned up CPAINT parameters when not using CPAINT API w/ proxy
- PHP: fixed callability of object methods (thanks Markus Wolf)
- PHP: fixed HTTP authentication in proxy file
- ASP: improved security regarding incoming function arguments

//---- v2.0 (Released August 20, 2005) ------------------------------ completely rewrote the JavaScript frontend.
- 100% OOP approach.
- completely configurable through setter methods.
- support for syncronized calls (SJAX?) ;-).
- automatic XML parsing into JavaScript document structure if
response_type='object'.
- support for arbitrary character sets, including non-printable
characters.
- automatic detection and conversion of numeric data into
integers / floats.
- unified use of call() for local and remote targets.
- can now use frontend to retrieve static files or backend
functions not implemented with CPAINT
- use of a single (persistent) connection for multiple calls.
- XML to JavaScript parser is able to parse any XML structure now.
- support for XML attributes.
- added find_item_by_type() to cpaint_result_object.
- added get_attribute(), set_attribute() to cpaint_result_object.
- improved debugging, added debuglevels 1, 2. see set_debug()
- completely rewrote the PHP and ASP backends.
- 100% OOP approach.
- protection against remote code-execution.
- support for object methods as callable functions.
- nested XML support through composite pattern.
- arbitrary XML structure creation support.
- support for arbitrary character sets.
- replaced remote code-execution blacklisting approach of v1.3-SP
with whitelisting through cpaint.register().
- changed XML name convention. Attributes and tagnames are send
as-is, not in uppercase.
- improved readability of the ASP and PHP proxy utilities.
- fixed GET requests.
- proxy now uses attributenames identical to the CPAINT backend
itself whenever possible.
- added support for target ports other than 80.
- added support for Basic Authentication.
- completely redesigned and rewritten documentation!
//---- v1.3-SP2 (Released August 16, 2005) -------------------------- improved the remote-code execution fix.
//---- v1.3-SP (Released August 15, 2005) --------------------------- fixed a remote code-execution vulnerability on the backend by
adding a blacklist test on the function name passed by the
frontend.
//---- v1.3 (Released July 10, 2005) -------------------------------- rewrote cpaint_parse_ajax_xml() to be able to parse arbitrary XML.
- added bugfix from v1.01 to cpaint_get_remote_file() as well.
//---- v1.2 (Released June 20, 2005) -------------------------------- added method cpaint_parse_ajax_xml() to the JavaScript frontend for
primitive XML to JavaScript transformation of response data.
//---- v1.01 (Released June 16, 2005) ------------------------------- bugfix regarding Unicode character encoding in cpaint_call().

//---- v1.0 (Released June 13, 2005) -------------------------------- added support for XML/DOM document object returns.
- added support for XML on the backend.
- added proxy files for accessing remote functions & data.
- greatly improved documentation & examples.
- code stablized
- development effort moved to SourceForge.Net
//---- v0.7
- v0.5
- v0.4
- v0.2
- v0.1

Pre-1.0 Releases and Dates ----------------------------------- released June 8, 2005


& 0.6 - released June 6, 2005
- released June 3, 2005
& 0.3 - released June 2, 2005
- released May 31, 2005 (first release)

S-ar putea să vă placă și