Folks, Please take this release candidate out for a test drive
http://cvs.apache.org/~joes/libapreq2-2.03-dev-rc3.tar.gz and report back your success/failure. I'd like to get this new developer release of libapreq2 on CPAN this weekend, but I need a few volunteers to test it and report back on their experience (please include platform and version numbers for perl, mp2, and apache2 in your response). ========== Changes with libapreq2-2.03-dev ========== - C API [joes] "Objectify" cookie/jar API: s/apreq_(make|serialize)_cookie/apreq_cookie_$1/ and reordering args so the cookie/jar object is always the first argument. Macros added to provide source-compatibility with the old names. - Perl API [joes] Added $upload->slurp($data), which reads the contents of the file upload "$upload" into the scalar "$data". - C API [joes, randyk] apreq_run_(hook|parser) are macros, so they are capitalized now. Fixed apreq_params_as_string() and added apreq_params_as_array(). Reworked definitions of APREQ_DECLARE_HOOK, APREQ_DECLARE_PARSER and apreq_(parser|hook)_t, hopefully to be more Win32 friendly. Also updated the documentation. - C API [joes] Compensate for a missing CRLF in empty file upload block, which actually complies with RFC 2046 Section 5.1.1. Konqueror (version unknown) and Mozilla 0.9.7 are known to emit such blocks. - Perl API [joes] $req->upload() in list context failed to filter out non-uploads. Also $req->upload("nonexistent-key-name") segfaults. - Perl test suite t/TEST.PL must run parent class' pre_configure to get the configuration right - C API [joes] apreq_brigade_concat() wasn't supplying the final EOS bucket to large brigades (>256K), which somtimes caused the prefetch loop in mod_apreq.c's apreq_filter() to hang. - Documentation [joes] CHANGES file reformatted, removing dates & other clutter as Stas suggests. - C API [joes] Rewrote cgi_read() in apreq_env.c and reworked mod_apreq.c to enforce apreq_env_max_body() settings. - C API [joes] Fixed bug in url_parser code- missing context brigade was needed to track key-value pairs which span multiple buckets. - C API [joes] API modifications: removed struct apreq_cfg_t, adding new apreq_env hooks max_body, max_brigade_len, and temp_dir. Folded apreq_parsers.h into apreq_params.h and modified the arguments to apreq_run_parser() and apreq_run_hook(). Renamed apreq_parser_t's content_type as enctype and apreq_copy_brigade() as apreq_brigade_copy(). These changes make libapreq2.so.2.0.5 incompatible with earlier versions. - Perl API [stas] Include ppport.h from blead-perl to support older perls. Add a proper support for ithreads. - C API [Swen Schillig, joes] Fixed bug in calculation of Netscape cookie expiration dates. apr_time_t is measured in microseconds, not seconds, which threw off the arithmetic; apr_time_from_sec was needed for the conversion. - C API [Max Kellermann] Fix segfault caused by invalid %-escape sequence in query string. ================================================== Thanks! -- Joe Schaefer -- Report problems: http://perl.apache.org/bugs/ Mail list info: http://perl.apache.org/maillist/modperl.html List etiquette: http://perl.apache.org/maillist/email-etiquette.html