--- parser3/ChangeLog 2016/04/08 22:49:23 1.103 +++ parser3/ChangeLog 2024/10/14 02:05:17 1.201 @@ -1,3 +1,4134 @@ +2024-10-13 moko + + * src/types/pa_varray.h: ^array.$i[arg] is rare, thus checking i + with is_index() before calling index() for better error reporting + in method name typo (was invalid number, not method not found + exception). + +2024-10-08 moko + + * src/types/pa_varray.C: Visual Studio compatibilty issues fixed + + * src/include/pa_array.h: warnings war + +2024-10-05 moko + + * src/classes/table.C: ^table.cells[] / ^table.cells(limit) added, + returns current row cells array (implements feature #1250) + + * tests/: 405.html, results/169.processed, results/405.processed: + tests updated after ^string.split[;a] implemented (related to + feature #1249) + + * src/classes/string.C: ^string.split[] - 'a' option added for + splitting into an array (implements feature #1249) + +2024-10-04 moko + + * tests/: 431.html, results/431.processed: final code coverage + array tests + + * src/: classes/array.C, include/pa_array.h, types/pa_varray.h: + array: confirm_all_used() added and used where possible, expand() + now expends faster + +2024-10-03 moko + + * tests/: 357.html, results/auto.p: max_recoursion -> max_recursion + + * tests/: 256.html, results/256.processed: test for + $.date[unix-timestamp] handling large dates + + * src/: classes/file.C, classes/op.C, classes/reflection.C, + classes/string.C, classes/table.C, include/pa_common.h, + main/pa_common.C, main/pa_http.C, main/pa_request.C, + types/pa_vdate.C, types/pa_vmethod_frame.h, types/pa_vtable.C: + format replaced with pa_uitoa where applicable, + $.date[unix-timestamp] fixed for handling large dates + + * tests/: 433.html, results/433.processed: more tests, including + test for possible endless recursion in ^o.GET[] + + * src/types/pa_vobject.C: bugfix: detecting possible endless + recursion in get_scalar_value inside ^o.GET[] + + * src/: classes/json.C, include/pa_request.h, main/execute.C, + main/pa_request.C, types/pa_value.h, types/pa_vmethod_frame.C: + Temp_recursion class added; spelling: $LIMITS.max_recoursion -> + $LIMITS.max_recursion + +2024-10-02 moko + + * tests/: 253.html, 287.html, 430.html, 431.html, 433.html, + results/253.processed, results/287.processed, + results/430.processed, results/433.processed: more tests for full + array and json code coverage + + * tests/: 433.html, results/433.processed: tests for hash functions + with array param + + * src/classes/: array.C, hash.C: ^hash::create[$array] optimized + + * tests/: 432.html, results/432.processed: modified ^hash.at tests + in 246.html used to test ^array.at, same result produced + + * tests/: 430.html, 431.html, results/430.processed, + results/431.processed: more array tests for 100% code coverage + (related to feature #930) + + * tests/: 427.html, 430.html, results/427.processed, + results/430.processed: first portion of array tests added + (related to feature #930) + + * src/classes/array.C: allow only whitespace string as argument for + add and join + + * src/classes/array.C: add behavour for array synced with hash + +2024-09-30 moko + + * tests/: 429-sql.html, results/429-sql.processed: code coverage + tests added + + * src/classes/array.C: $.distinct should not be used unless + $.sparse(true) + + * tests/: 429-sql.html, results/388-sql.processed, + results/429-sql.processed: tests for ^array::sql{}, including + multi_statements mode (related to feature #930) + +2024-09-29 moko + + * src/classes/array.C: synced ^array::sql multi_statements logic + with ^hash::sql new behavour + +2024-09-28 moko + + * tests/: 428-sql.html, results/388-sql.processed, + results/428-sql.processed: tests updated after column names were + fixed in multi_statements mode (related to feature #1197) + + * src/classes/hash.C: column names are fixed for most cases in + multi_statements mode (related to feature #1197) + + * tests/: 428-sql.html, results/195.processed, + results/224.processed, results/239.processed, + results/254.processed, results/261.processed, + results/306.processed, results/333.processed, + results/341.processed, results/343.processed, + results/344.processed, results/348.processed, + results/364.processed, results/389.processed, + results/390.processed, results/415.processed, + results/420.processed, results/421.processed: tests results + updated after error messages spelling minor fixes + + * src/types/: pa_value.h, pa_vstateless_class.h: a bit more + spelling + + * src/: classes/curl.C, classes/file.C, classes/hash.C, + classes/image.C, classes/math.C, classes/string.C, + classes/table.C, lib/memcached/pa_memcached.C, main/compile.y, + main/execute.C, main/pa_charset.C, main/pa_common.C, + main/pa_http.C, main/pa_request.C, main/pa_socks.C, + main/pa_sql_driver_manager.C, types/pa_value.C, types/pa_value.h, + types/pa_vmail.C, types/pa_vobject.C, + types/pa_vstateless_class.C, types/pa_vstateless_class.h, + types/pa_vxdoc.C: minor error messages spelling fixes + + * src/: classes/array.C, types/pa_varray.h: initial ^array::sql{} + implementation (related to feature #930) + + * tests/: 388-sql.html, results/388-sql.processed: test results + updated after rows number ^file::sql{} check added + + * src/classes/file.C: rows number now checked in ^file::sql{} + + * tests/: 428-sql.html, results/428-sql.processed: more tests + + * tests/: 428-sql.html, results/428-sql.processed: more + multi_statements testing before bugfix + + * tests/: 388-sql.html, 428-sql.html, results/388-sql.processed, + results/428-sql.processed: support for multiple sql test files + added + + * tests/: 388-sql.html, results/388-sql.processed: more sql testing + + * src/classes/hash.C: more accurate one_bool_column processing + + * tests/: 427.html, results/427.processed: Constructors as methods + behavour documented in test + + * src/classes/hash.C: HashStringValue::Iterator used for options + + * tests/: 388-sql.html, results/388-sql.processed: even more tests + + * tests/: 388-sql.html, results/388-sql.processed: a bit more + testing + + * tests/results/367-curl.processed: test result updated after + server charset changed + + * tests/results/347-curl.processed: error messages updated + + * tests/results/: 346-curl.processed, 379-curl.processed, + 394-curl.processed: tests results updated after Type -> Exception + type replacement + + * tests/results/388-sql.processed: tests result updated after Type + -> Exception type + +2024-09-27 moko + + * src/classes/hash.C: minor simplification + +2024-09-24 moko + + * src/main/pa_string.C: atoui error messages improved + + * tests/: 165.html, 312.html, results/165.processed, + results/312.processed, results/379.processed: tests updated after + default endless loop limit increased, atoi error messages + improved + + * src/classes/hash.C: VBool::get used, unification + +2024-09-22 moko + + * src/classes/array.C: minor simplification + + * src/classes/array.C: ^array.left(N), + ^array.right(N),^array.mid(P;N) added (related to feature #930) + + * src/: classes/array.C, include/pa_request.h, main/pa_request.C, + types/pa_varray.C, types/pa_varray.h: $MAIN:LIMITS.max_array_size + added, default 1000000 (related to feature #930) + + * tests/: 426.html, results/426.processed: test for negative limit + and offset processing for table options added + + * src/: classes/table.C, include/pa_array.h, main/pa_table.C: + bugfix: negative limit and offset processing for table options + fixed + +2024-09-21 moko + + * src/: classes/array.C, types/pa_varray.h: join supports hash; + ^for added that also iterates holes; ^remove added (related to + feature #930) + + * src/classes/array.C: ^array.join[$another_array; $.limit(N) + $.offset(M) ] added (related to feature #930) + +2024-09-20 moko + + * src/: classes/array.C, types/pa_varray.h: array: + +foreach[value]{code}, + add[hash with numeric keys] (related to + feature #930) + +2024-09-19 moko + + * src/: include/pa_opcode.h, main/compile.y, main/compile_tools.h, + main/execute.C, types/pa_varray.h: OP_CONSTRUCT_ARRAY added to + support $a[v1;v2;...] syntax (related to feature #930) + +2024-09-17 moko + + * src/: classes/reflection.C, include/pa_request.h, + main/compile_tools.h, main/pa_request.C: + ^reflection:class_alias[existing class name;alias class name] + added. The array class can now be redefined regardless of the + $.replace(bool) option value (related to feature #930) + + * src/main/: compile.y, compile_tools.h: class_add return value + inverted to add it to request class + + * src/: classes/array.C, include/pa_array.h, include/pa_request.h, + include/pa_stack.h, types/pa_varray.C, types/pa_varray.h, + types/pa_vmethod_frame.h: array: fused -> fsize, fit(index) to + resize if required. spared array - added fused, append. + +2024-09-16 moko + + * src/types/pa_varray.h: get moved to where it belongs + +2024-09-15 moko + + * src/: include/pa_array.h, types/pa_varray.h: more agressive + expansion to minimize reallocs: fallocated/32 -> fallocated/4 + + * tests/: 421.html, results/323.processed, results/421.processed: + tests updated after 'spared-array' class renamed to 'array' + following a discussion on the forum (related to feature #930) + + * src/: include/pa_array.h, types/pa_value.h, types/pa_varray.h, + types/pa_vmail.C: initial SparseArray separation from Array, + parser class now 'array' + +2024-09-14 moko + + * tests/: 030.html, results/030.processed: out of range expires + check added + + * src/types/pa_vcookie.C: VDate range is narrower than gmtime, thus + checking expires time using VDate + +2024-09-13 moko + + * src/: classes/array.C, classes/curl.C, classes/date.C, + classes/file.C, classes/hash.C, classes/image.C, classes/json.C, + classes/memcached.C, classes/op.C, classes/regex.C, + classes/string.C, classes/xdoc.C, classes/xnode.C, + main/execute.C, main/pa_http.C, main/pa_request.C, + types/pa_value.C, types/pa_value.h, types/pa_vclass.C, + types/pa_vclass.h, types/pa_vcookie.C, types/pa_vhashfile.C, + types/pa_vmail.C, types/pa_vobject.C, types/pa_vobject.h, + types/pa_vxdoc.C, types/pa_vxdoc.h: optimization: Value::as() + removed as dynamic_cast is faster, Value::is() is still required + for is operator. + +2024-09-12 moko + + * src/: classes/file.C, classes/image.C, classes/reflection.C, + classes/table.C, classes/xnode.C, include/pa_array.h, + include/pa_string.h, main/pa_common.C, main/pa_request.C, + main/pa_string.C, targets/cgi/pa_sapi_info.h, types/pa_vform.C, + types/pa_vhash.h, types/pa_vtable.C, types/pa_vxnode.C: faster + templated pa_itoa/pa_uitoa added to work with any integer type, + String::Body::Format removed + +2024-09-10 moko + + * src/classes/array.C: append and insert methods added to + sparse-array (related to feature #930) + + * tests/: 253.html, 255.html, 421.html, results/421.processed: + tests updated after sparse-array was added to avoid ^json:parse[] + using it in old tests (related to feature #930) + + * src/: classes/array.C, classes/json.C, types/pa_varray.C, + types/pa_varray.h: sparse-array class added (initial feature #930 + implementation) + + * src/: classes/Makefile.am, types/Makefile.am: Makefiles update + for sparse-array class files (related to feature #930) + + * src/: classes/json.C, include/pa_array.h, types/pa_value.h, + types/pa_vhash.h: VArray support functions without actual VArray + files (related to feature #930) + +2024-09-07 moko + + * src/: classes/curl.C, classes/string.C, classes/table.C, + include/pa_array.h, main/execute.C, main/pa_dictionary.C, + main/pa_http.C, main/pa_sql_driver_manager.C, + main/pa_stylesheet_manager.C, main/pa_table.C, types/pa_vclass.C, + types/pa_vmethod_frame.C, types/pa_vstateless_class.C, + types/pa_vtable.C, types/pa_wcontext.C: Array::Iterator unified + with Hash::Iterator, has_next() replaced with operator bool + (related to feature #930) + + * src/: classes/string.C, include/pa_array.h, main/pa_http.C, + main/pa_table.C, types/pa_vclass.C, types/pa_vmethod_frame.C, + types/pa_vstateless_class.C: Array class extended, + Array::Iterator added and used (related to feature #930) + +2024-08-26 moko + + * src/targets/cgi/parser3.C: under Windows back_slashes_to_slashes + should be used on argv[0] as well to match document root. + +2024-08-25 moko + + * src/main/pa_request.C: be more specific + + * src/targets/cgi/parser3.C: parser3 t.html now behaves identically + to /usr/bin/parser3 t.html in terms of /etc/parser3/auto.p load + (fixes bug #1244) + + * src/targets/cgi/parser3.C: avoid "parser allready configured" + exception when ./parser3.cgi is used; rsplit(..., '/') || + rsplit(..., '\\') is not correct when / and \ are mixed in path + + * src/targets/cgi/parser3.C: full_disk_path now uses pa_strcat() + +2024-07-24 moko + + * src/: include/pa_config_includes.h, lib/gd/gifio.C, + main/execute.C, main/pa_string.C: Warning war: clang changed + -Wdeprecated-register warning to -Wregister, it's easier to + remove all register vars then continue this fight. :) + + * src/main/: compile.y, compile.tab.C: warning war: register + removed + +2024-07-14 moko + + * src/targets/cgi/pa_sapi_info.h: When accessing $env:name, + checking the HTTP request environment; if the variable is not + present, checking the web server process environment (implements + feature #1242) + +2024-05-26 moko + + * tests/: 195.html, 229.html, results/096.processed, + results/097.processed, results/158.processed, + results/186.processed, results/273.processed, + results/293.processed, results/317.processed, + results/389.processed, results/402.processed: tests updated as + single quote now escaped with ' in HTML tainting mode + (related to feature #1241) + + * src/main/untaint.C: single quote now escaped with ' in HTML + tainting mode (implements feature #1241) + + * tests/results/: 020.processed, 021.processed, 026.processed, + 042.processed, 043.processed, 057.processed, 110.processed, + 115.processed, 116.processed, 117.processed, 118.processed, + 119.processed, 120.processed, 125.processed, 126.processed, + 128.processed, 130.processed, 131.processed, 132.processed, + 133.processed, 135.processed, 136.processed, 138.processed, + 139.processed, 140.processed, 145.processed, 150.processed, + 151.processed, 165.processed, 174.processed, 181.processed, + 182.processed, 192.processed, 193.processed, 201.processed, + 213.processed, 224.processed, 226.processed, 230.processed, + 239.processed, 240.processed, 244.processed, 253.processed, + 254.processed, 261.processed, 264.processed, 269.processed, + 274.processed, 275.processed, 288.processed, 294.processed, + 296.processed, 303.processed, 306.processed, 307.processed, + 308.processed, 311.processed, 312.processed, 314.processed, + 315.processed, 316.processed, 320.processed, 323.processed, + 324.processed, 325.processed, 328.processed, 330.processed, + 332.processed, 333.processed, 337.processed, 338.processed, + 341.processed, 342.processed, 343.processed, 344.processed, + 345.processed, 348.processed, 352.processed, 356.processed, + 357.processed, 363.processed, 364.processed, 368.processed, + 372.processed, 373.processed, 376.processed, 378.processed, + 379.processed, 385.processed, 386.processed, 387.processed, + 389.processed, 390.processed, 395.processed, 397.processed, + 398.processed, 399.processed, 404.processed, 406.processed, + 413.processed, 414.processed, 420.processed, 421.processed, + 424.processed, auto.p: Type -> Exception type for readability + + * tests/: 119.html, 165.html, 175.html, 192.html, 213.html, + 217.html, 230.html, 240.html, 298.html, 380.html, 415.html, + results/119.processed, results/165.processed, + results/175.processed, results/192.processed, + results/213.processed, results/217.processed, + results/230.processed, results/240.processed, + results/298.processed, results/380.processed, + results/415.processed: try-catch, try-catch-comment used + +2024-05-21 moko + + * tests/: 169.html, 180.html, 195.html, 224.html, 246.html, + results/180.processed, results/195.processed, + results/224.processed, results/auto.p: @try-catch-comment added + and used + + * tests/: 175.html, 256.html, 269.html, 283.html, 341.html, + 415.html, results/269.processed, results/283.processed, + results/auto.p: more tests are updated to prepare for apostrophe + escaping in HTML tainting + + * tests/results/: 181.processed, 294.processed, 296.processed, + 315.processed, 379.processed, 389.processed, auto.p: + $exception.comment printed as-is for whitespace reporting and to + prepare for apostrophe escaping in HTML mode + +2024-05-11 moko + + * tests/: 099.html, 100.html, results/099.processed, + results/100.processed: a test for non-UTF-8 filename* added + (related to feature #1240) + + * tests/: 293.html, results/293.processed: tainting modes tests + added + + * tests/results/: 099.processed, 100.processed, 205.processed, + 309.processed, 310.processed, 419.processed: tests results + updated after filename* added (related to feature #1240) + + * src/: include/pa_common.h, main/pa_request.C: The filename* + parameter was added to the Content-Disposition header to conform + with RFC 6266, with code provided by Sumo (implements feature + #1240) + +2024-05-10 moko + + * src/main/pa_http.C: Testing shows that TCP_NODELAY has no + positive performance effect in our case + +2024-03-27 moko + + * src/lib/pcre/pcre_internal.vcproj: pa_config_includes.h used + (related to feature #1236) + +2024-03-15 moko + + * tests/: 413.html, results/413.processed: test for object still + can be used as file parameter (related to bug #1218) + + * src/types/: pa_vobject.C, pa_vobject.h: regression fix: object + still can be used in file context (fixes bug #1218) + +2024-03-14 moko + + * src/include/pa_string.h: ArrayString get() null result assert + also added (related to bug #1238) + + * src/types/: pa_vstring.h, pa_vtable.C: VString() optimized; + VString::empty() used instead of new VString() + +2024-03-12 moko + + * tests/: 379-curl.html, 379.html, results/379-curl.processed, + results/379.processed: test added for cookie without value + (related to bug #1238) + + * src/include/pa_string.h: In assertions enabled mode, ArrayString + values are now required to be non-null (related to bug #1238) + + * src/main/pa_http.C: cookies without value are now parsed + correctly (fixed bug #1238) + +2024-03-11 moko + + * tests/run_parser.sh: for better error reporting + +2023-12-30 moko + + * tests/: 038.html, results/038.processed: test for atan2 added + +2023-12-29 moko + + * src/classes/math.C: atan2(y,x) math function added + +2023-12-14 moko + + * tests/212.html: pcre2 compatibility (related to feature #1236) + + * tests/: 425.html, results/425.processed: test for pcre/pcre2 + exceptions and behavour added (related to feature #1236) + +2023-12-13 moko + + * buildall: by default parser is now bundled with pcre2 10.42, + --without-pcre2 option added to build with pcre-8.45 (related to + feature #1236) + +2023-12-12 moko + + * configure.ac, src/include/pa_config_auto.h.in: pcre2 library + support added (implements feature #1236) + + * src/: include/pa_charset.h, include/pa_config_includes.h, + lib/pcre/pa_pcre_internal.h, lib/pcre/pa_pcre_valid_utf8.c, + main/pa_common.C, main/pa_globals.C, types/pa_vregex.C, + types/pa_vregex.h: Adopted patch from Yavor Doganov + to add pcre2 library support (implements feature + #1236) + +2023-11-28 moko + + * src/include/pa_config_includes.h: warnings war continues + + * src/include/pa_config_includes.h: warning war + + * tests/: 424.html, results/424.processed: tests for '+' and '-' + number strings, whitespace and sign in exception messages + (related to bug #1234) + +2023-11-26 moko + + * tests/: 274.html, results/224.processed, results/274.processed: + tests for date double, int, bool added (related to feature #1235) + + * src/: classes/date.C, types/pa_vdate.h: double,int,bool methods + added for date class (implements feature #1235) + +2023-11-23 moko + + * src/: classes/math.C, include/pa_string.h, main/pa_string.C: '+' + and '-' strings are no longer can be treated as number 0, + exception thrown (fixes bug #1234) + +2023-11-18 moko + + * src/include/pa_types.h: minor + + * src/include/pa_dir.h: MAXPATH in UTF-16 chars, not bytes + + * tests/: 389.html, results/389.processed: error messages for some + OS differs a bit, reducing failing tests for them + +2023-11-17 moko + + * tests/: 423.html, results/423.processed: test for optional + @auto[] inheritance added (related to feature #1233) + + * src/: include/pa_request.h, main/execute.C, main/pa_request.C, + types/pa_vstateless_class.C: optional @auto[] inheritance + implemented if defined with two args (path, class name) + (implements feature #1233) + + * src/: classes/double.C, classes/int.C, classes/math.C, + include/pa_random.h, include/pa_types.h, main/pa_common.C, + types/pa_vdouble.h, types/pa_vint.h: clip2int,clip2uint added to + sync double->int overflow behavour under different architectures + (fixes bug #1232) + + * tests/: 422.html, results/422.processed: int clipping added + +2023-11-16 moko + + * tests/: 422.html, results/422.processed: test for int and uint + overflow in ^n.format[d/u/x] + + * src/classes/math.C: bugfix: crc32 should not be negative (under + Apple M1 when negative double converts to uint the result is 0) + and crc32 should be 32 bits + + * src/main/pa_common.C: avoid (uint) conversion as + on Apple M1 it's 0 + + * src/classes/file.C: bugfix: crc32 should not be negative (under + Apple M1 when negative double converts to uint the result is 0) + and crc32 should be 32 bits + +2023-10-07 moko + + * src/: main/execute.C, types/pa_vdate.h: volatile added to sync + behavour with other OP_NUM_*, related to bug #1230 + +2023-10-06 moko + + * tests/: 338.html, results/338.processed: test for bug #1230 added + + * src/: main/execute.C, types/pa_vdate.h: force double operands to + be converted to double to avoid 80 bit operations in x87 mode + (fixes bug #1230) + +2023-10-05 moko + + * tests/420.html: add feature FEATURE_GET_ELEMENT4CALL disabled + compatibility + + * tests/337.html: 2work without FEATURE_GET_ELEMENT4CALL + + * tests/: 421.html, results/421.processed: test to cover all + classes and objects nonexistent method and field exceptions + (related to feature #1080 and #1227) + + * tests/results/: 182.processed, 324.processed: undefined method -> + method not found exception (related to feature #1080) + + * src/types/: pa_vbool.h, pa_vconsole.h, pa_vdouble.h, pa_vint.h, + pa_vregex.C, pa_vstateless_object.h: + VSimple_stateless_object, + "element can not be fetched from" for them, "field not found" for + all other types (related to bug #1227) + +2023-10-03 moko + + * src/types/pa_vstateless_class.h: "Source: , Comment: + method not found" exception now thrown for static calls + instead of "undefined method" without class name (related to + feature #1080) + +2023-10-02 moko + + * src/types/: pa_vdouble.h, pa_vhash.h, pa_vint.h, pa_vobject.C, + pa_vstateless_object.h, pa_vstring.h, pa_vtable.C: "Source: + , Comment: method not found" exception now + thrown for all dynamic objects instead of "undefined method" + without class name (implements feature #1080) + +2023-10-01 moko + + * src/classes/json.C: we don't have a dynamic json object. + +2023-09-28 moko + + * tests/: 420.html, results/261.processed, results/420.processed: + tests updated after bug #1228 fix reverted + + * src/types/pa_vstring.h: revering fix for bug #1228, as empty or + whitespace string is hash compatible, so we don't want $s.key to + return a junction + + * tests/: 261.html, 420.html, results/261.processed, + results/420.processed: test for bug #1227 added, test updated + after bug #1228 fixed + + * src/types/: pa_vdouble.h, pa_vint.h: $int.field and $double.field + now throws exception as $non-empty-string.field (fixes bug #1227) + + * src/types/pa_vstring.h: allow $string.method access (fixes bug + #1228) + +2023-09-26 moko + + * AUTHORS, aclocal.m4, configure, src/classes/bool.C, + src/classes/classes.C, src/classes/classes.awk, + src/classes/classes.h, src/classes/curl.C, src/classes/date.C, + src/classes/double.C, src/classes/file.C, src/classes/form.C, + src/classes/hash.C, src/classes/hashfile.C, src/classes/image.C, + src/classes/inet.C, src/classes/int.C, src/classes/json.C, + src/classes/mail.C, src/classes/math.C, src/classes/memcached.C, + src/classes/memory.C, src/classes/op.C, src/classes/reflection.C, + src/classes/regex.C, src/classes/response.C, + src/classes/string.C, src/classes/table.C, src/classes/void.C, + src/classes/xdoc.C, src/classes/xnode.C, src/classes/xnode.h, + src/include/pa_array.h, src/include/pa_base64.h, + src/include/pa_cache_managers.h, src/include/pa_charset.h, + src/include/pa_charsets.h, src/include/pa_common.h, + src/include/pa_config_fixed.h, src/include/pa_config_includes.h, + src/include/pa_dictionary.h, src/include/pa_dir.h, + src/include/pa_exception.h, src/include/pa_exec.h, + src/include/pa_globals.h, src/include/pa_hash.h, + src/include/pa_http.h, src/include/pa_memory.h, + src/include/pa_opcode.h, src/include/pa_operation.h, + src/include/pa_os.h, src/include/pa_pool.h, + src/include/pa_random.h, src/include/pa_request.h, + src/include/pa_request_charsets.h, src/include/pa_request_info.h, + src/include/pa_sapi.h, src/include/pa_socks.h, + src/include/pa_sql_connection.h, + src/include/pa_sql_driver_manager.h, src/include/pa_stack.h, + src/include/pa_string.h, src/include/pa_stylesheet_connection.h, + src/include/pa_stylesheet_manager.h, src/include/pa_symbols.h, + src/include/pa_table.h, src/include/pa_threads.h, + src/include/pa_types.h, src/include/pa_uue.h, + src/include/pa_xml_exception.h, src/include/pa_xml_io.h, + src/lib/gd/gif.C, src/lib/gd/gif.h, src/lib/gd/gifio.C, + src/lib/ltdl/configure, src/lib/md5/pa_md5.h, + src/lib/md5/pa_md5c.c, src/lib/memcached/pa_memcached.C, + src/lib/memcached/pa_memcached.h, src/lib/punycode/pa_idna.c, + src/lib/punycode/pa_idna.h, src/lib/sdbm/pa_file_io.C, + src/lib/sdbm/pa_strings.C, src/lib/smtp/comms.C, + src/lib/smtp/smtp.C, src/lib/smtp/smtp.h, src/main/compile.C, + src/main/compile.tab.C, src/main/compile.y, + src/main/compile_tools.C, src/main/compile_tools.h, + src/main/execute.C, src/main/pa_base64.C, + src/main/pa_cache_managers.C, src/main/pa_charset.C, + src/main/pa_charsets.C, src/main/pa_common.C, + src/main/pa_dictionary.C, src/main/pa_dir.C, + src/main/pa_exception.C, src/main/pa_exec.C, + src/main/pa_globals.C, src/main/pa_http.C, src/main/pa_memory.C, + src/main/pa_os.C, src/main/pa_pool.C, src/main/pa_random.C, + src/main/pa_request.C, src/main/pa_socks.C, + src/main/pa_sql_driver_manager.C, src/main/pa_string.C, + src/main/pa_stylesheet_connection.C, + src/main/pa_stylesheet_manager.C, src/main/pa_symbols.C, + src/main/pa_table.C, src/main/pa_threads.C, src/main/pa_uue.C, + src/main/pa_xml_exception.C, src/main/pa_xml_io.C, + src/main/untaint.C, src/main/helpers/simple_folding.pl, + src/sql/pa_sql_driver.h, src/targets/apache/mod_parser3.c, + src/targets/apache/mod_parser3_core.C, + src/targets/apache/pa_httpd.h, src/targets/cgi/parser3.C, + src/targets/isapi/parser3isapi.C, src/types/pa_junction.h, + src/types/pa_method.h, src/types/pa_property.h, + src/types/pa_value.C, src/types/pa_value.h, src/types/pa_vbool.h, + src/types/pa_vcaller_wrapper.h, src/types/pa_vclass.C, + src/types/pa_vclass.h, src/types/pa_vcode_frame.h, + src/types/pa_vconsole.h, src/types/pa_vcookie.C, + src/types/pa_vcookie.h, src/types/pa_vdate.C, + src/types/pa_vdate.h, src/types/pa_vdouble.h, + src/types/pa_venv.C, src/types/pa_venv.h, src/types/pa_vfile.C, + src/types/pa_vfile.h, src/types/pa_vform.C, src/types/pa_vform.h, + src/types/pa_vhash.C, src/types/pa_vhash.h, + src/types/pa_vhashfile.C, src/types/pa_vhashfile.h, + src/types/pa_vimage.C, src/types/pa_vimage.h, + src/types/pa_vint.h, src/types/pa_vjunction.C, + src/types/pa_vjunction.h, src/types/pa_vmail.C, + src/types/pa_vmail.h, src/types/pa_vmath.C, src/types/pa_vmath.h, + src/types/pa_vmemcached.C, src/types/pa_vmemcached.h, + src/types/pa_vmemory.h, src/types/pa_vmethod_frame.C, + src/types/pa_vmethod_frame.h, src/types/pa_vobject.C, + src/types/pa_vobject.h, src/types/pa_vregex.C, + src/types/pa_vregex.h, src/types/pa_vrequest.C, + src/types/pa_vrequest.h, src/types/pa_vresponse.C, + src/types/pa_vresponse.h, src/types/pa_vstateless_class.C, + src/types/pa_vstateless_class.h, + src/types/pa_vstateless_object.h, src/types/pa_vstatus.C, + src/types/pa_vstatus.h, src/types/pa_vstring.C, + src/types/pa_vstring.h, src/types/pa_vtable.C, + src/types/pa_vtable.h, src/types/pa_vvoid.C, + src/types/pa_vvoid.h, src/types/pa_vxdoc.C, src/types/pa_vxdoc.h, + src/types/pa_vxnode.C, src/types/pa_vxnode.h, + src/types/pa_wcontext.C, src/types/pa_wcontext.h, + src/types/pa_wwrapper.h: copyright, authors actualized + +2023-08-20 moko + + * tests/: 141.html, results/141.processed: test for ^math:uuid7[] + commited (related to feature #1219) + +2023-08-16 moko + + * src/main/pa_random.C: replaced clock precision with monotonicity + counter, good for Windows version with low clock frequency + (related to feature #1229) + +2023-08-15 moko + + * src/: main/pa_random.C, types/pa_vstatus.C: win32 compatibility + fixes related to feature #1229 + + * src/: classes/math.C, include/pa_random.h, main/pa_random.C, + types/pa_vstatus.C: ^math:uuid7 added, code provided by Sumo + (implements feature #1229) + +2023-08-02 moko + + * tests/: results/417.processed, 417.html: test for empty string + match after last char added (related to bug #1224) + + * src/main/pa_string.C: avoid prestart++ after last char on zero + length match (related to bug #1224) + +2022-11-22 moko + + * tests/: 419.html, results/419.processed: test for L_URI and path + removeal from filename added (related to bug #1204) + + * src/main/pa_request.C: bugfix: pa_filename was lost in 1.394 + commit (related to bug #1204), L_HTTP_HEADER is incorrect for + attribute value, L_URI should be used + +2022-09-21 moko + + * src/targets/cgi/parser3.C: more clear error messages + + * src/targets/cgi/parser3.C: only SAPI_Info_CGI can read POST, + SAPI_Info will return 0 in read_post and post_size != + content_length will be thrown + +2022-08-23 moko + + * src/types/pa_vmail.C: .tables addes as .raw contains only last + header value + +2022-08-22 moko + + * tests/: 418.html, results/418.processed: test for + ^hash_a.intersection[hash_b; $.order[self|arg] ] added (related + to #1225) + + * src/classes/hash.C: keep old behavoir by default + + * src/classes/hash.C: ^hash_a.intersection[hash_b; + $.order[self|arg] ] added (implements #1215) + +2022-03-21 moko + + * src/main/pa_charset.C: bugfix: +static xml_encoding_handlers as + xmlInitCharEncodingHandlers is called in libxml static + initializers before gc_substitute_memory_management_functions in + pa_globals and thus gc may not see reference to our + xmlCharEncodingHandler and free it. + +2022-01-26 moko + + * src/targets/cgi/parser3.C: argv[0] -> parser3_filespec + +2021-12-28 moko + + * tests/: 417.html, results/417.processed: test for empty string + match added (related to bug #1224) + + * src/main/pa_string.C: empty string match now works (fixes bug + #1224) + +2021-12-24 moko + + * tests/: 415_dir/29.p, results/415.processed: yet another test + +2021-12-23 moko + + * src/: classes/table.C, main/pa_request.C: warnings war + + * src/: include/pa_common.h, include/pa_http.h, main/pa_common.C, + main/pa_http.C, targets/cgi/parser3.C: MSVC SOCKET warnings war + +2021-12-21 moko + + * tests/: 416.html, results/416.processed: test for ^break[] in + ^hash/table.select[] (related to feature #1222) + + * src/classes/: hash.C, table.C: ^break[] support for + ^hash/table.select[] (implements feature #1222) + +2021-11-30 moko + + * src/targets/cgi/parser3.C: default sock_ready interval changed to + 0.5 sec + +2021-11-10 moko + + * tests/results/415.processed: more syntax errors tests added + + * tests/415_dir/: 20.p, 21.p, 22.p, 23.p, 24.p, 25.p, 26.p, 27.p, + 28.p: minor syntax error tests + + * src/main/pa_exception.C: pa_strdup added for compatibility + + * src/classes/curl.C: hint to call ^curl:options[ + $.library[correct.libcurl.so.name] ] added if default load fails. + +2021-11-09 moko + + * src/main/compile.y: error message can be on stack + + * src/main/pa_xml_io.C: strcat replaced with pa_strcat + + * src/main/pa_charset.C: memcpy is more correct and efficient in + this case then strncpy + + * src/: classes/image.C, types/pa_vrequest.C: pa_strdup used + instead of strcpy where possible + + * src/: classes/op.C, main/pa_exception.C: "%s" format now can be + used to avoid MAX_STRING limit in Exception comment + + * tests/results/415.processed: compiler exceptions are no longer + limited to MAX_STRING + + * src/main/: compile.y, compile_tools.h: Parse_control uses const + char * instead of fixed buffer + + * tests/: 415.html, 415_dir/01.p, 415_dir/02.p, 415_dir/03.p, + 415_dir/04.p, 415_dir/05.p, 415_dir/06.p, 415_dir/07.p, + 415_dir/08.p, 415_dir/09.p, 415_dir/10.p, 415_dir/11.p, + 415_dir/12.p, 415_dir/13.p, 415_dir/14.p, 415_dir/15.p, + results/415.processed: tests for parser.compile exceptions added + +2021-11-08 moko + + * src/: classes/math.C, include/pa_common.h, main/compile.y, + main/pa_common.C, main/pa_dir.C, main/pa_exec.C, main/pa_http.C, + targets/cgi/parser3.C, targets/isapi/parser3isapi.C, + types/pa_vdate.C: pa_strncpy added ans used to avoid strncpy + drawbacks + +2021-11-06 moko + + * src/classes/inet.C: ^inet:hostname[] added by sumo@ patch + (implements feature #1219) + + * tests/: 414.html, results/414.processed: test for + ^hash.rename[from;to] added (related to feature #1144) + +2021-11-05 moko + + * src/classes/hash.C: ^hash.rename[ $.from[to] ... ] support added + (related to feature #1144) + +2021-11-04 moko + + * src/: classes/hash.C, include/pa_hash.h: ^hash.rename[from;to] + added (implements feature #1144) + +2021-10-19 moko + + * tests/: 413.html, results/413.processed: test for hash no longer + is accepted as file parameter (related to bug #1218) + + * src/: classes/curl.C, classes/file.C, classes/image.C, + classes/math.C, classes/xdoc.C, types/pa_value.C, + types/pa_value.h, types/pa_vfile.h, types/pa_vmail.C: hash no + longer is accepted as file parameter (fixes bug #1218) + +2021-07-19 moko + + * src/targets/cgi/parser3.C: waitpid in file::exec returned "No + child processes" when SIGCHLD was SIG_IGN (fixes bug #1215) + +2021-04-16 moko + + * src/types/pa_vmail.C: message can be null when e-mail is broken, + processing it leads to assertions. + +2021-03-25 moko + + * tests/: 412.html, results/412.processed: test to demonstrate bug + #1213 + +2021-02-12 moko + + * tests/: 360.html, results/360.processed, results/363.processed: + parser method call in expression mode no longer differs from call + in string mode (related to feature #1211) + +2021-02-11 moko + + * src/types/pa_vmail.C: mail parsing with Windows line endings + fixed (bug #1212) + + * src/types/pa_vmethod_frame.h: no more difference inside @test[] + when called $v[^test[]] vs $v(^test[]), numbers are converted to + strings in both calls (implements feature #1211) + +2021-01-28 moko + + * buildall, etc/auto.p.in: to remove last patch in debian package + + * configure, configure.ac, src/include/pa_version.h: 3.4.6 -> + 3.4.7b + +2021-01-21 moko + + * src/main/pa_http.C: no alarm() in file::load when web server mode + is MULTITHREADED + +2021-01-20 moko + + * src/targets/apache/mod_parser3.c: it is more correct to recommend + 'a2enmod mpm_prefork' + + * src/targets/apache/mod_parser3.c: prefork name is now + 'libapache2-mpm-itk' + + * src/targets/apache/mod_parser3_core.C: last regular malloc + removed + + * src/targets/isapi/Makefile.am: -pa_threads.C + + * configure, configure.ac, src/include/pa_version.h: 3.4.6rc -> + 3.4.6 + + * etc/auto.p.in: post_max_size 10Mb -> 64Mb. It's 2021 year now. :) + + * etc/auto.p.in: @config[result] added to simplify $cfg change in + /httpd.p + + * etc/auto.p.in: httpd fine-tune: + @OPTIONS partial, + + ^use[/httpd.p] + optional ^preprocess[] (related to feature + #1203) + +2021-01-19 moko + + * buildall: --disable-parallel-mark added to avoid "number of + processors" threads creation for heap marking as it conflicts + with RLimitNProc in apache (on Linux setrlimit RLIMIT_NPROC + limits threads) + +2021-01-16 moko + + * src/: classes/memory.C, include/pa_memory.h, lib/gc/include/gc.h, + main/pa_globals.C, main/pa_memory.C, + targets/apache/mod_parser3_core.C, targets/isapi/parser3isapi.C, + types/pa_vhashfile.C: ^memory:auto-compact(N) added (implements + feature #1209) + +2021-01-15 moko + + * configure, configure.ac, src/include/pa_version.h: 3.4.6b -> + 3.4.6rc + + * src/classes/json.C: get_delim added for delimiter caching (10% + faster on large json) + +2021-01-14 moko + + * operators.txt: updated with 3.4.6 changes + + * tests/results/224.processed: test result modified after + today(shift) implemented + + * tests/: 407.html, results/407.processed: test for ^hash.select + option $.default(bool) added (related to feature #1172) + + * src/classes/hash.C: ^hash.select option $.default(bool) added + (related to feature #1172) + + * tests/: 141.html, results/141.processed: test modified for + feature #1185. + + * src/: classes/math.C, include/pa_random.h, main/pa_random.C: + ^math:uuid options $.lower(bool) $.solid(bool), ^math:uid64 + options $.lower(bool) (implements feature #1185) + +2021-01-11 moko + + * src/classes/date.C: ^date::today(N) by gz@ (implements feature + #1192) + + * tests/: 411.html, results/411.processed: test for ^date::today(N) + added (related to feature #1192) + +2021-01-05 moko + + * tests/: 270.html, results/270.processed: test modified to work + under Windows + + * tests/: 390.html, 395.html, results/395.processed: tests updated + 4 windows + + * tests/: 410.html, results/410.processed: test for + $CLASS-GETTER-PROTECTED(false) added + +2021-01-04 moko + + * tests/: 409.html, results/409.processed, results/auto.p: test for + $MAIN:LOCALS(true) added + +2021-01-03 moko + + * src/: main/pa_http.C, main/pa_request.C, types/pa_vclass.C, + types/pa_vclass.h, types/pa_vstateless_class.C, + types/pa_vstateless_class.h: @conf[] +CLASS-GETTER-PROTECTED, + +LOCALS. $main -> $MAIN in exception texts (implements feature + #1207) + +2021-01-02 moko + + * etc/auto.p.in: minor + + * src/main/pa_request.C: sending headers only after opening file to + allow error reporting if file was not opened (foreign group, + etc). + +2020-12-31 moko + + * src/: include/pa_request.h, main/pa_request.C, + targets/cgi/parser3.C: ^httpd-main[] -> ^httpd:main[] + + * src/: classes/reflection.C, include/pa_request.h, main/execute.C, + main/pa_request.C: get_class_ref added and used + + * etc/auto.p.in: @CLASS httpd added + + * etc/auto.p.in: @auto[] is now first + +2020-12-30 moko + + * tests/: 408.html, results/408.processed: test for bug #1166 + (windows only) added + + * src/main/pa_common.C: create_dir_for_file should not create dir + for trailing / (fixes bug #1166) + + * tests/: 341.html, results/341.processed: tests for + ^nameless_table.hash[] added (related to feature #1138) + + * src/classes/table.C: ^nameless_table.hash[0;1] now supported + (implements feature #1138), extra fields in named tables no + longer ignored (implements feature #1138) + + * tests/results/390.processed: updated after exception text change + +2020-12-29 moko + + * tests/: 407.html, results/407.processed: +$._default check + + * src/classes/hash.C: keep $_default in ^hash.reverse[] + + * tests/: 407.html, results/407.processed: test for ^hash.select[] + and ^hash.reverse[] added (releated to feature #1172) + + * src/classes/hash.C: + ^hash.select[key;value](bool-condition)[options hash] + + ^hash.reverse[] added (implements feature #1172) + + * src/types/pa_vtable.h: warning war + + * src/include/pa_config_fixed.h: win32 fix + +2020-12-27 moko + + * tests/: 406.html, results/406.processed: test results updated + + * src/: classes/table.C, main/pa_request.C, types/pa_vmail.C, + types/pa_vmemcached.C: fine tuning in ^table.rename[], minor + spelling + +2020-12-26 moko + + * tests/: 406.html, results/406.processed: tests for + ^table.rename[] added (related to feature #1148) + + * src/: classes/table.C, include/pa_table.h, main/pa_table.C: + ^table.rename[column name from;column name to], ^table.rename[ + $.[column name from][column name to] ... ] added (implements + feature #1148) + +2020-12-25 moko + + * src/: include/pa_request_info.h, targets/cgi/parser3.C: + request_info now on stack to avoid yet another THREAD_LOCAL + memory deallocation issue (now with cookies), explained in #1203 + + * src/types/pa_vcookie.C: fields should be inited + +2020-12-24 moko + + * src/include/pa_stylesheet_connection.h: looks like + xsltFreeStylesheet leads to memory double-free. If so, it's for + sure libxml bug, but we have GC anyway, so we just remove this + call and see... + + * thread #1, name = 'parser.parser3.cgi', stop reason = signal + SIGABRT * frame #0: 0x0000000801ab50fa libc.so.7`__sys_thr_kill + + 10 frame #2: 0x0000000801ab5039 libc.so.7`abort at + abort.c:65:8 frame #3: 0x00000000004da663 + parser.parser3.cgi`GC_freehblk(hbp=) at + allchblk.c:878:9 frame #4: 0x00000000004cb8c4 + parser.parser3.cgi`GC_free(p=0x0000000808b34000) at + malloc.c:617:9 frame #5: 0x0000000000577f0c + parser.parser3.cgi`xmlHashFree(table=0x0000000806991a80, + f=) at hash.c:356:2 frame #6: 0x000000000051a7c2 + parser.parser3.cgi`xsltFreeTemplateHashes + 50 frame #7: + 0x000000000050cfac parser.parser3.cgi`xsltFreeStylesheet + 124 + frame #8: 0x000000000050d35c + parser.parser3.cgi`xsltFreeStylesheetList + 44 frame #9: + 0x000000000050d1fa parser.parser3.cgi`xsltFreeStylesheet + 714 + frame #10: 0x00000000004436e5 + parser.parser3.cgi`Stylesheet_manager::maybe_expire_cache() + [inlined] + Stylesheet_connection::disconnect(this=0x0000000804676c80) at + pa_stylesheet_connection.h:62:3 + +2020-12-23 moko + + * src/classes/image.C: ^image::measure[; $.video() ] option added + + * tests/: 395.html, 395_dir/4.mp4, results/395.processed: test + ^image::measure[; $.video(true) ] added + + * src/main/pa_exec.C: not cleared automatically in multithreaded + httpd mode for unknown reasons + +2020-12-22 moko + + * src/targets/cgi/parser3.C: added by PAF in rev 201 to "write to + error_log uri of currently processed document", but never used + and conflicts with how libgc stops threads on FreeBSD (#define + SIG_SUSPEND SIGUSR1), thus removed. + +2020-12-21 moko + + * src/main/pa_request.C: +comment + +2020-12-20 moko + + * src/: include/pa_common.h, include/pa_memory.h, main/pa_common.C: + it is more safe to have versions of pa_strdup with one and two + arguments, as helper_length=0 not always mean that strlen() + should be called, but means zero. + + * src/targets/isapi/parser3isapi.C: minor + + * src/main/pa_http.C: +valid_http_method + + * src/: include/pa_http.h, main/pa_http.C, + targets/cgi/pa_sapi_info.h: SERVER_PORT now available + +2020-12-17 moko + + * tests/: 405.html, results/405.processed: test for split by regex + added (related to feature #1160) + + * src/classes/string.C: split by regex implemented (feature #1160) + + * src/classes/string.C: minor + + * tests/: 404.html, results/404.processed: test for whitespace + string is now OK for table argument (related to feature #1169) + + * src/: classes/image.C, classes/string.C, classes/table.C, + types/pa_vmethod_frame.C: whitespace string is now OK for table + argument (as with hash) (implements feature #1169) + + * src/classes/op.C: Exception.add_comment used to avoid MAX_LENGTH + limit for comment (fixes bug #1102) + + * src/targets/cgi/parser3.C: +HAVE_TLS check + + * src/main/pa_http.C: no HAVE_TLS -> no multithreads mode + + * src/include/pa_config_includes.h: HAVE_TLS used + + * configure.ac: +TLS check + + * src/main/pa_http.C: content logging added + + * src/targets/cgi/: pa_sapi_info.h, parser3.C: + clear_response_headers added + +2020-12-16 moko + + * buildall: as we now use threads, libatomic_ops still required for + some OS. + + * src/main/pa_request.C: whitespace + + * src/: include/pa_request.h, main/pa_request.C: + Request::Exception_trace::table extracted and used + + * src/main/pa_request.C: moving output_result call outside of try + as network exceptions should not be handled by parser code + + * src/: include/pa_http.h, main/pa_http.C: HTTPD_DEBUG added for + logging network exchange + + * src/targets/cgi/: pa_sapi_info.h, parser3.C: do not send error + via network if it was network write error. + + * src/targets/cgi/parser3.C: log -> pa_log + + * src/targets/cgi/parser3.C: pa_get_thread_id() used for logging + + * src/main/pa_threads.C: getpid() if no gettid() found + + * src/: include/pa_http.h, main/pa_http.C, targets/cgi/parser3.C: + we need to ignore "void" connections from browsers (browsers open + connections in advance and they will be empty if user does not + request more pages) + +2020-12-15 moko + + * src/targets/cgi/parser3.C: avoid previous uri in logs + + * src/targets/cgi/: pa_sapi_info.h, parser3.C: global ::request and + RequestController not needed in httpd mode + + * src/: classes/bool.C, classes/classes.C, classes/classes.awk, + classes/classes.h, classes/curl.C, classes/date.C, + classes/double.C, classes/file.C, classes/form.C, classes/hash.C, + classes/hashfile.C, classes/image.C, classes/inet.C, + classes/int.C, classes/json.C, classes/mail.C, classes/math.C, + classes/memcached.C, classes/memory.C, classes/op.C, + classes/reflection.C, classes/regex.C, classes/response.C, + classes/string.C, classes/table.C, classes/void.C, + classes/xdoc.C, classes/xnode.C, classes/xnode.h, + include/pa_array.h, include/pa_base64.h, + include/pa_cache_managers.h, include/pa_charset.h, + include/pa_charsets.h, include/pa_common.h, + include/pa_config_fixed.h, include/pa_config_includes.h, + include/pa_dictionary.h, include/pa_dir.h, + include/pa_exception.h, include/pa_exec.h, include/pa_globals.h, + include/pa_hash.h, include/pa_http.h, include/pa_memory.h, + include/pa_opcode.h, include/pa_operation.h, include/pa_os.h, + include/pa_pool.h, include/pa_random.h, include/pa_request.h, + include/pa_request_charsets.h, include/pa_request_info.h, + include/pa_sapi.h, include/pa_socks.h, + include/pa_sql_connection.h, include/pa_sql_driver_manager.h, + include/pa_stack.h, include/pa_string.h, + include/pa_stylesheet_connection.h, + include/pa_stylesheet_manager.h, include/pa_symbols.h, + include/pa_table.h, include/pa_threads.h, include/pa_types.h, + include/pa_uue.h, include/pa_xml_exception.h, + include/pa_xml_io.h, lib/gd/gif.C, lib/gd/gif.h, lib/gd/gifio.C, + lib/md5/pa_md5.h, lib/md5/pa_md5c.c, + lib/memcached/pa_memcached.C, lib/memcached/pa_memcached.h, + lib/punycode/pa_idna.c, lib/punycode/pa_idna.h, + lib/sdbm/pa_file_io.C, lib/sdbm/pa_strings.C, lib/smtp/comms.C, + lib/smtp/smtp.C, lib/smtp/smtp.h, main/compile.C, + main/compile.tab.C, main/compile.y, main/compile_tools.C, + main/compile_tools.h, main/execute.C, main/pa_base64.C, + main/pa_cache_managers.C, main/pa_charset.C, main/pa_charsets.C, + main/pa_common.C, main/pa_dictionary.C, main/pa_dir.C, + main/pa_exception.C, main/pa_exec.C, main/pa_globals.C, + main/pa_http.C, main/pa_memory.C, main/pa_os.C, main/pa_pool.C, + main/pa_random.C, main/pa_request.C, main/pa_socks.C, + main/pa_sql_driver_manager.C, main/pa_string.C, + main/pa_stylesheet_connection.C, main/pa_stylesheet_manager.C, + main/pa_symbols.C, main/pa_table.C, main/pa_threads.C, + main/pa_uue.C, main/pa_xml_exception.C, main/pa_xml_io.C, + main/untaint.C, sql/pa_sql_driver.h, + targets/apache/mod_parser3.c, targets/apache/mod_parser3_core.C, + targets/apache/pa_httpd.h, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C, types/pa_junction.h, + types/pa_method.h, types/pa_property.h, types/pa_value.C, + types/pa_value.h, types/pa_vbool.h, types/pa_vcaller_wrapper.h, + types/pa_vclass.C, types/pa_vclass.h, types/pa_vcode_frame.h, + types/pa_vconsole.h, types/pa_vcookie.C, types/pa_vcookie.h, + types/pa_vdate.C, types/pa_vdate.h, types/pa_vdouble.h, + types/pa_venv.C, types/pa_venv.h, types/pa_vfile.C, + types/pa_vfile.h, types/pa_vform.C, types/pa_vform.h, + types/pa_vhash.C, types/pa_vhash.h, types/pa_vhashfile.C, + types/pa_vhashfile.h, types/pa_vimage.C, types/pa_vimage.h, + types/pa_vint.h, types/pa_vjunction.C, types/pa_vjunction.h, + types/pa_vmail.C, types/pa_vmail.h, types/pa_vmath.C, + types/pa_vmath.h, types/pa_vmemcached.C, types/pa_vmemcached.h, + types/pa_vmemory.h, types/pa_vmethod_frame.C, + types/pa_vmethod_frame.h, types/pa_vobject.C, types/pa_vobject.h, + types/pa_vregex.C, types/pa_vregex.h, types/pa_vrequest.C, + types/pa_vrequest.h, types/pa_vresponse.C, types/pa_vresponse.h, + types/pa_vstateless_class.C, types/pa_vstateless_class.h, + types/pa_vstateless_object.h, types/pa_vstatus.C, + types/pa_vstatus.h, types/pa_vstring.C, types/pa_vstring.h, + types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.C, + types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h, + types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C, + types/pa_wcontext.h, types/pa_wwrapper.h: Copyright year updated + + * src/main/pa_request.C: old compilers support + + * tests/: 362.html, results/362.processed: test updated after + changes after upgrade to libxml2-2.9.9 were made (related to bug + #1108) + + * src/: classes/xdoc.C, types/pa_vxdoc.h: xsltStylesheet_auto_ptr + removed, as xsltFreeStylesheet has side effects on original doc. + compiled stylesheet no longer cached as with libxml2-2.9.9 it was + not updated after xdoc modification (part 3 of test 362). + (related to bug #1108) + + * src/targets/isapi/parser3isapi.C: +pa_strcat + + * src/: classes/memory.C, include/pa_memory.h, + targets/apache/mod_parser3_core.C, targets/isapi/parser3isapi.C: + PA_GC_GCOLLECT used + + * src/include/pa_memory.h: +PA_GC_COLLECT + + * src/targets/cgi/parser3.C: msvs support fixes + + * src/lib/gc/include/gc.h: more cleanup + + * src/: include/pa_threads.h, main/pa_threads.C: win32 fixes + + * src/: include/pa_http.h, main/pa_http.C, main/pa_request.C, + targets/cgi/parser3.C: $main:HTTPD.mode implemented + + * src/include/pa_config_includes.h: +HAVE_PTHREAD_H + + * configure.ac: pthread.h added to checked headers + + * src/classes/table.C: string stream is back :) + + * src/classes/memory.C: GC_generate_random_backtrace no longer + exists + + * src/main/pa_globals.C: GC_dont_gc replaced + + * src/lib/gc/include/gc.h: major cleanup, only used functions are + left to simplify adding new functions. depricated GC_dont_gc + replaced with GC_disable and GC_enable calls. + + * src/lib/cord/: cordxtra.c, include/cord.h: cleanup: + CORD_from_file* not used and thus removed + + * src/lib/gc/include/gc_allocator.h: minor cleanup + +2020-12-14 moko + + * src/classes/: curl.C, memory.C, table.C: every TLS should be + referenced elsewhere, or GC will collect it. + + * src/: include/pa_xml_io.h, main/pa_stylesheet_connection.C, + main/pa_xml_io.C: bugfix: TLS variables should be referenced + elsewhere, or GC will collect them (and we'll get GPF in + multithreaded enviroment). May be it can be also fixed by some + GC call, not sure. But this fix costs nothing (but hours of + debugging to find the issue :). + +2020-12-11 moko + + * configure.ac: gettid() check added + + * src/main/pa_threads.C: HAVE_GETTID used + + * src/include/pa_config_auto.h.in: +HAVE_GETTID + + * src/: include/pa_threads.h, main/pa_threads.C: now unified + version for isapi/cgi/apache + + * buildall: threads are now required. + + * src/: targets/apache/ApacheModuleParser3Core.vcproj, + targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj, + main/main.vcproj: pa_threads.C moved to main + + * src/targets/: apache/pa_threads.C, cgi/pa_threads.C, + isapi/pa_threads.C: pa_threads.C moved to main + + * src/: main/Makefile.am, targets/cgi/Makefile.am, + targets/apache/Makefile.am: pa_threads.C moved to main + + * src/classes/xdoc.C: Stylesheet_connection_ptr changed a bit + + * src/: include/pa_stylesheet_connection.h, + main/pa_stylesheet_manager.C: Stylesheet_connection_ptr simplfied + and weird GPF in multithreaded httpd is gone + + * src/include/: pa_stylesheet_connection.h, + pa_sql_driver_manager.h: whitespace + + * src/main/pa_sql_driver_manager.C: timeout 60 sec -> 10 sec + + * src/: include/pa_sql_connection.h, main/pa_sql_driver_manager.C, + main/pa_stylesheet_manager.C: whitespace, warning war + + * src/: include/pa_threads.h, targets/apache/pa_threads.C, + targets/cgi/pa_threads.C, targets/isapi/pa_threads.C: + parser_multithreaded never used + + * src/main/pa_http.C: no ALARM in MULTITHREADED httpd server mode + +2020-12-10 moko + + * src/: include/pa_config_includes.h, include/pa_http.h, + main/pa_http.C, targets/cgi/parser3.C: initial support for + MULTITHREADED and PARALLEL httpd server modes + + * src/main/pa_globals.C: GC_java_finalization is depricated + +2020-12-09 moko + + * etc/auto.p.in: + @httpd-main + + * src/: include/pa_common.h, main/pa_request.C, + targets/cgi/pa_sapi_info.h: Range Requests (rfc7233) now really + work + + * src/: include/pa_common.h, main/pa_common.C, main/pa_request.C: + slow file_read_binary no longer used, send_range added + +2020-12-08 moko + + * src/main/pa_request.C: >4Gb support + + * src/targets/cgi/parser3.C: msvc warning war + + * src/: include/pa_config_includes.h, main/pa_http.C, + main/pa_request.C: msvc warnings war + + * src/classes/image.C: warning war + + * src/classes/table.C: MSVC warning war + + * src/targets/cgi/parser3.C: msvc warnings war + + * src/targets/apache/mod_parser3_core.C: SYSTEM_CONFIG_FILE support + added + +2020-12-07 moko + + * configure.ac: SYSTEM_LOG_FILE no longer required as cheat used to + avoid logging beside system-wide auto.p + + * src/targets/cgi/parser3.C: SYSTEM_CONFIG_FILE used + + * configure, configure.ac, src/include/pa_config_auto.h.in: + configure options added: + + --with-system-cfg=FILE to specify system-wide auto.p + --with-system-log=FILE to specify system-wide parser3.log + + * Makefile.am: bin no longer exists + + * configure, configure.ac: auto.p moved to etc to simplify debian + package + + * buildall: auto.p and parser3.charsets moved to their default + location after install + + * etc/: Makefile.am, auto.p.in: auto.p moved to etc directory + + * aclocal.m4, configure: automake 1.15 -> 1.16.1 + + * src/targets/cgi/parser3.C: locate_config call returned to + original place as it requires pa_thread_request() under Windows + + * src/targets/cgi/parser3.C: renaming + +2020-12-06 moko + + * src/: main/pa_globals.C, targets/cgi/parser3.C: thread request + check added + +2020-12-04 moko + + * src/: classes/image.C, include/pa_common.h, main/pa_common.C, + main/pa_request.C: unified uint64_t lseek implemented to support + >4Gb files under x86, including Windows + +2020-12-02 moko + + * src/main/pa_common.C: minor bugfix: $.limit() should be checked + with max_file_size + + * src/: include/pa_common.h, main/pa_common.C, main/pa_request.C: + support for processing files sized >4Gb on 32 bit planforms + + * tests/399.html: file moved + + * src/: include/pa_string.h, main/pa_string.C: long long -> int64_t + + * src/targets/cgi/pa_sapi_info.h: warning war + + * src/: main/pa_http.C, targets/isapi/parser3isapi.C: windows + warning war + +2020-12-01 moko + + * src/classes/image.C: mp4 extended size (>4Gb) support added + + * src/classes/image.C: for "size not found" exception to be shown + if size not found until eof + + * src/classes/image.C: long -> off_t (which is 64 bits even on 32 + bit linux) + + * src/classes/image.C: ^image::measure[] now supports mp4 (feature + #1188) + +2020-11-30 moko + + * src/classes/image.C: definitions moved closer to code + + * tests/: 395.bmp, 395.html, 396.html, 396.tiff, 395_dir/1.bmp, + 395_dir/2.tiff, 395_dir/3_VP8.webp, 395_dir/3_VP8L.webp, + 395_dir/3_VP8X.webp, results/395.processed, + results/396.processed: tests for ^image::measure[] .webp support + added, all image files moved into one directory (related to + feature #1188) + + * src/classes/image.C: ^image::measure[] now supports webp (feature + #1188) + +2020-11-29 moko + + * src/main/pa_request.C: CONF_OPTION added to unify @conf options + processing, unnessesary defines removed + +2020-11-24 moko + + * tests/results/: 099.processed, 100.processed, 205.processed, + 309.processed, 310.processed: Content-Disposition: inline + returned + + * tests/: 099.html, 237.html, 403.html, outputs/403.processed, + results/auto.p: test for $response:body[ $.file[] $.name[] + ] added (related to bug #1204) + + * src/main/pa_request.C: $response:body[ $file[.ext] $.name[] + ] supported to avoid Content-Disposition: inline; + filename=".ext" but still set Content-Type for ext (related + to bug #1204) + +2020-11-22 moko + + * src/: include/pa_common.h, main/pa_common.C, main/pa_request.C, + types/pa_vfile.C: pa_filename added to avoid useless rsplit + + * src/main/pa_request.C: content_disposition_inline returned. + +2020-11-17 moko + + * src/main/pa_request.C: empty main method name support + + * src/: main/pa_common.C, targets/cgi/parser3.C: httpd + config_handler added, stdout flush added. + +2020-11-16 moko + + * src/targets/cgi/parser3.C: filespec_4log added, pa_strcat used. + + * tests/results/: 099.processed, 205.processed, 237.processed, + 309.processed, 310.processed: Content-Disposition: inline is not + required and should not contain filename="" + + * src/: include/pa_common.h, main/pa_common.C, main/pa_exception.C, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C: pa_strcat implemented and used + +2020-11-14 moko + + * src/targets/cgi/parser3.C: spelling + + * src/targets/cgi/parser3.C: renaming + + * src/targets/cgi/parser3.C: args_skip removed, locate_config + relocated + + * src/targets/cgi/parser3.C: execution_canceled was for sigpipe + before request processing, which is weired + +2020-11-13 moko + + * src/main/pa_http.C: pa_recv added with timeout support, thus read + copied in httpd. + +2020-11-12 moko + + * src/main/pa_http.C: ALARM code unified to be used in httpd + + * src/: include/pa_request.h, main/pa_request.C, + targets/cgi/pa_sapi_info.h: pa_httpd_timeout added + + * src/main/pa_http.C: URI validation added + + * src/targets/cgi/parser3.C: filespec_to_process now variable, + can't be empty but can be null. httpd-main is now main method + name for httpd mode + +2020-11-11 moko + + * src/main/pa_request.C: path_translated can be null in httpd mode + + * src/: classes/curl.C, classes/file.C, classes/hashfile.C, + classes/image.C, classes/op.C, classes/string.C, classes/table.C, + classes/xdoc.C, include/pa_request.h, main/execute.C, + main/pa_request.C: r.absolute -> r.full_disk_path + + * src/targets/cgi/parser3.C: if filename to process is not + specified, auto.p should be present. + +2020-11-03 moko + + * src/: classes/op.C, include/pa_request.h: unused argument removed + + * src/main/pa_request.C: content_disposition_inline is the default, + not required. + +2020-10-29 moko + + * src/: classes/op.C, include/pa_request.h, main/pa_request.C: + ^use[file; $.main(true) ] implemented for auto.p processing and + path_translated changing to correct relative files path + calculation in httpd mode + + * src/: include/pa_request.h, main/pa_request.C: + fail_on_read_problem removed, as it allways true, as if should + be. + + * src/: include/pa_request.h, main/pa_request.C, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C: clearing config_filespec when + config was not found, thus flag not required and removed. + +2020-10-28 moko + + * tests/: 402.html, results/402.processed: error reporting test + + * src/main/execute.C: better error reporting when + $result[^hash::create[]] in @main. + + * src/main/: execute.C, pa_request.C: frame.result() should be used + + minor optimization + + * src/: include/pa_request.h, main/execute.C, main/pa_request.C, + main/pa_xml_io.C: execute_*_method simplified and unified + +2020-10-27 moko + + * tests/: 306.html, results/306.processed: a bit more testing. :) + + * src/: main/execute.C, types/pa_value.h, types/pa_vclass.C, + types/pa_vclass.h, types/pa_vconsole.h, types/pa_vcookie.C, + types/pa_vdate.C, types/pa_venv.C, types/pa_vform.C, + types/pa_vhash.h, types/pa_vimage.C, types/pa_vmemcached.C, + types/pa_vmethod_frame.h, types/pa_vobject.C, + types/pa_vrequest.C, types/pa_vresponse.C, types/pa_vtable.C, + types/pa_vxnode.C: optimization: PUT_ELEMENT_REPLACED_ELEMENT no + longer used in object-prototype mode + + * src/: include/pa_sapi.h, targets/apache/mod_parser3_core.C, + targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C, types/pa_venv.C, types/pa_venv.h, + types/pa_vform.C, types/pa_vform.h: + $env:name[value] and + $form:name[value] features + +2020-10-18 moko + + * src/targets/cgi/Makefile.am: + pa_sapi_info.h + +2020-10-15 moko + + * src/main/pa_http.C: url no longer needed as + ALTER_EXCEPTION_SOURCE is used + + * src/: classes/curl.C, include/pa_common.h, main/pa_common.C, + main/pa_http.C: check_file_size filespec is now optional + + * src/: classes/curl.C, include/pa_exception.h, + main/pa_exception.C, main/pa_http.C: ALTER_EXCEPTION_SOURCE and + ALTER_EXCEPTION_COMMENT added for better error reporting + + * tests/: 379-curl.html, 379.html, results/223-curl.processed, + results/346-curl.processed, results/379-curl.processed, + results/379.processed: test results updated as load now provides + better error reporting + curl responses updated + +2020-10-14 moko + + * src/: classes/date.C, include/pa_string.h, main/pa_http.C, + main/pa_string.C, targets/apache/mod_parser3_core.C, + targets/cgi/parser3.C: pa_atoi / pa_atoui / pa_atoul usage + checked. 10 is now default base, no hex autodetect by default + + * src/: include/pa_http.h, main/pa_http.C, targets/cgi/parser3.C: + connection socket closing in destructor + accept exception + handling + + * src/targets/cgi/parser3.C: warning war + + * src/: include/pa_http.h, include/pa_sapi.h, main/pa_http.C, + main/pa_request.C, targets/apache/mod_parser3_core.C, + targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C: global try + exception handling unified + +2020-10-13 moko + + * src/targets/isapi/parser3isapi.C: reverted to atoi to avoid hex + autodetection + + * src/targets/apache/mod_parser3_core.C: reverted to atoi + + * src/: main/pa_http.C, targets/cgi/pa_sapi_info.h: warning war + + * src/main/pa_http.C: warning war + +2020-10-12 moko + + * src/: main/pa_request.C, targets/apache/mod_parser3_core.C, + targets/cgi/parser3.C, targets/isapi/parser3isapi.C: excaption in + unhandled exception code optimization + + * src/targets/cgi/parser3.C: request_info now global variable + + * src/main/pa_http.C: http_read_response moved to HTTP_response + class + + * src/: include/pa_http.h, main/pa_http.C, + targets/cgi/pa_sapi_info.h: read_post implemented + + * src/: include/pa_http.h, main/pa_http.C, targets/cgi/parser3.C: + [host:]port syntax support in httpd mode + + * src/: include/pa_http.h, targets/cgi/pa_sapi_info.h, + targets/cgi/parser3.C: populate_env added + + * src/include/pa_hash.h: to make get(char *) compiling in + HashStringString + +2020-10-10 moko + + * src/: classes/curl.C, include/pa_http.h, main/pa_http.C, + targets/cgi/pa_sapi_info.h: ResponseHeaders -> HTTP_Headers + + * src/: include/pa_http.h, include/pa_request_info.h, + main/pa_http.C, main/pa_string.C, + targets/apache/mod_parser3_core.C, targets/cgi/pa_sapi_info.h, + targets/cgi/parser3.C, targets/isapi/parser3isapi.C, + types/pa_vrequest.C: initial httpd mode implementation + +2020-10-04 moko + + * src/targets/cgi/parser3.C: options together + +2020-09-30 moko + + * src/main/pa_http.C: renamed + +2020-08-14 moko + + * configure, configure.ac, parser3.sln, src/lib/Makefile.am, + src/targets/cgi/Makefile.am: no httpd as separate library + +2020-08-13 moko + + * src/targets/cgi/parser3.C: SAPI::die used in exception in + unhandled exception handler to report 500 instead of 200 it was + before. + + * src/targets/apache/mod_parser3_core.C: minor cleanup + + * src/: include/pa_sapi.h, main/untaint.C, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C: SAPI::abort was used only once, + thus replaced with SAPI::die and removed + + * src/targets/: apache/mod_parser3_core.C, isapi/parser3isapi.C, + cgi/parser3.C: whitespace + + * src/targets/cgi/parser3.C: locate_config() extracted, whitespace. + +2020-08-12 moko + + * src/targets/cgi/parser3.C: duplicate info in signal logging + removed, whitespace was: SIGPIPE received while executing code. + uri=/_tmp.html, method=GET, cl=0 [uri=/_tmp.html, method=GET, + cl=0] + + * parser3.sln: + httpd.vcproj + +2020-08-11 moko + + * src/targets/cgi/Makefile.am: +libhttpd + + * configure.ac, src/lib/Makefile.am: +libhttpd + +2020-07-13 moko + + * tests/: 401.html, results/401.processed: test for hash key does + not keep language, but tainted in foreach. + +2020-07-01 moko + + * tests/: 235.html, results/235.processed: test result updated as + messages before attachments implemented (feature #1176) + +2020-06-27 moko + + * tests/: 400.html, results/400.processed: test updated to check + ^return{code} + + * src/classes/op.C: bugfix: ^return{code} or ^return(expre+ssion) + fixed + +2020-06-26 moko + + * tests/: 400.html, results/400.processed: test for OPTIMIZE_RESULT + added (related to https://www.parser.ru/forum/?id=85319) + + * src/types/pa_vmethod_frame.h: bugfix: OPTIMIZE_RESULT failed, + when $result assignment was last statement in the method + (https://www.parser.ru/forum/?id=85319) + +2020-05-23 moko + + * src/: classes/mail.C, types/pa_vmail.C, types/pa_vmail.h: + whitespace, unused level removed + +2020-05-19 moko + + * src/types/pa_vmail.C: whitespace + + * src/types/pa_vmail.C: files should be processed last (related to + feature #1176) + +2020-05-12 moko + + * src/include/pa_memory.h: no new/delete checks for for FreeBSD1X.X + due to https://bugs.llvm.org/show_bug.cgi?id=40161 bug + + * configure.ac: FreeBSD1X.X check added to avoid + https://bugs.llvm.org/show_bug.cgi?id=40161 bug. + +2020-02-26 moko + + * src/main/pa_common.C: entry_exists -> entry_ifdir to fix Windows + compilation issue (related to bug #1201) + + * src/main/pa_common.C: entry_readable -> entry_exists, + undocumented access(fname, R_OK) call removed (fixes bug #1201) + -f and -d now works under Windows in UTF-8 with Russian + filenames. + + * src/types/pa_vmail.C: g_mime_stream_pipe_new used by gmime author + advice (related to feature #1199) + +2020-02-25 moko + + * buildall: --silent removed + + * configure.ac: gmime-3.0 support + + * buildall: --with-system-mailreceive option added to build with + system libgmime + + * src/types/pa_vmail.C: avoiding + https://github.com/jstedfast/gmime/issues/83 "feature" (related + to feature #1199) + +2020-02-18 moko + + * src/classes/op.C: windows x64 debug mode compile fix + + * src/main/pa_globals.C: no longer required due to -MD -> -MT + change (releated to feature #1200) + + * src/: classes/classes.vcproj, lib/cord/cord.vcproj, + lib/gd/gd.vcproj, lib/json/json.vcproj, lib/ltdl/ltdl.vcproj, + lib/md5/md5.vcproj, lib/memcached/memcached.vcproj, + lib/pcre/pcre_internal.vcproj, lib/punycode/punycode.vcproj, + lib/sdbm/sdbm.vcproj, lib/smtp/smtp.vcproj, main/main.vcproj, + targets/apache/ApacheModuleParser3.vcproj, + targets/apache/ApacheModuleParser3Core.vcproj, + targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj, + types/types.vcproj: -MD -> -MT to remove msvcp71.dll/etc + dependency (related to feature #1200) + +2020-02-12 moko + + * src/types/pa_vmail.C: minimize diff + + * src/types/pa_vmail.C: libgmime 3.X support (implements feature + #1199) + +2020-01-18 moko + + * tests/: 388-sql.html, results/388-sql.processed: +postprocess + +2019-12-28 moko + + * src/targets/cgi/parser3.C: avoid empty ? + +2019-12-27 moko + + * src/targets/cgi/parser3.C: PATH_INFO check in reinventing + DOCUMENT_ROOT (related to feature #1164) + + * src/targets/cgi/parser3.C: IIS5 support removed to simplify + fcgiwrap setup (implements feature #1164) + + * src/targets/cgi/parser3.C: real_parser_handler logic simplified, + but no issues found (related to feature #1164) + + * src/targets/cgi/parser3.C: actualized + +2019-12-26 moko + + * src/targets/apache/ApacheModuleParser3.vcproj: apache stop/start + removed + + * src/targets/isapi/parser3isapi.vcproj: inetinfo stop/start + removed + + * src/: lib/gc/include/gc.h, main/pa_globals.C: As we log + allocation errors, we don't want default gc warnings (without + timestamp and URI). + + * src/: classes/memory.C, main/pa_globals.C, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C: GC_dont_gc=1 moved to + pa_globals_init + + * src/main/pa_globals.C: setup_hex_value() removed, static array + initialization used (optimization) + + * src/: main/pa_globals.C, targets/apache/mod_parser3_core.C, + targets/cgi/parser3.C, targets/isapi/parser3isapi.C: + pa_socks_init/pa_socks_done moved inside pa_globals_init + (optimization) + +2019-12-09 moko + + * src/include/pa_config_fixed.h: warning war + +2019-12-08 moko + + * src/main/main.vcproj: compile.y - ExcludedFromBuild, as we + process grammar under Unix. + +2019-12-07 moko + + * tests/389.html: For Windows XP. :) + + * tests/388-sql.html: Windows compatibility added + +2019-12-06 moko + + * src/targets/cgi/parser3.C: warning war + + * src/main/pa_string.C: + COMPILE_ASSERT(sizeof(String::Languages) + == sizeof(CORD)) to avoid aligning bugs in future + + * src/: include/pa_config_fixed.h, main/pa_globals.C: simplified to + XML_STATIC + + * src/include/pa_request.h: StackItem() not required + + * src/include/pa_stack.h: warning war + + * src/include/pa_config_includes.h: GCC warning silenced + + * src/include/pa_memory.h: warning war: the program should also + define 'void operator delete [](void*, std::size_t)' + [-Wsized-deallocation] + + * src/types/: pa_vregex.h, pa_vtable.h: warning war + + * src/classes/string.C: not reqired cast removed + + * src/classes/string.C: not reqired cast removed + +2019-12-05 moko + + * src/lib/sdbm/pa_file_io.C: warning war + + * src/include/pa_string.h: bugfix for Windows x64: enum Language -> + enum Language : size_t - required for VS2015+ to make + sizeof(Languages::opt) == sizeof(CORD), will be 16 byte under x64 + without it (related to feature #1198) + +2019-12-04 moko + + * src/main/pa_base64.C: unsigned char -> uchar + + * src/main/: main.vcproj, pa_globals.C: libpcre now linked same way + as other libs + + * src/include/pa_version.h: +amd64 + +2019-12-03 moko + + * src/: classes/classes.vcproj, types/types.vcproj: sync debug with + release + + * src/include/pa_config_includes.h: warning war + + * src/classes/image.C: warning war + + * src/main/pa_globals.C: x64 libs support + + * src/include/pa_config_includes.h: warning war + + * src/types/pa_method.h: warning war + +2019-11-28 moko + + * src/classes/math.C: vs2003 compatibility + warning war + + * buildall: libxslt-1.1.29 -> libxslt-1.1.34, libxml2-2.9.4 -> + libxml2-2.9.9 (related to feature #1136) + + * src/classes/xdoc.C: xmlHashScanner declaration changed, using + typecast for more compatibility (related to feature #1136) + + * buildall: --direct-download option added, gc-7.6.2 -> gc-8.0.4 + + libatomic no longer required, pcre-8.40 -> pcre-8.43 (related to + feature #1136) + +2019-11-26 moko + + * src/main/: compile_tools.C, compile_tools.h: invalid assert + removed (it was failing in $$var case), condition added + +2019-11-25 moko + + * tests/: 397.html, 399.html, results/141.processed, + results/399.processed: base64 options tested + + * src/: classes/math.C, main/pa_http.C: base64 options used + + * src/main/pa_base64.C: base64 encode rewritten, base64 options + implemented (feature #986) + + * src/main/pa_cache_managers.C: whitespace + + * tests/: 397.html, 399.html, results/399.processed: tests for + ^base64 encode options added (related to feature #986) + + * src/: classes/file.C, include/pa_base64.h, main/pa_base64.C: + pa_base64_encode(file) removed - more memory, but faster and less + code (related fo feature #986) + +2019-11-24 moko + + * tests/: 155.html, results/155.processed: limit and offset in + ^table::load[] now supported, thus test added + + * src/: classes/file.C, classes/table.C, include/pa_common.h, + main/pa_common.C: optimization: offset and limit options parsing + moved inside file_load. + +2019-11-23 moko + + * src/: classes/file.C, classes/op.C, include/pa_common.h, + main/pa_common.C, main/pa_request.C, types/pa_vform.C: + optimization: file_read replaced with simplified file_read_binary + + * src/: classes/op.C, main/pa_common.C, main/pa_request.C, + types/pa_vform.C: whitespace + + * src/: include/pa_common.h, main/pa_common.C: never used params + removed + +2019-11-21 moko + + * tests/: 193.html, results/193.processed, results/389.processed: + test results updated as now base64 does not discard tail without + padding (related to feature #986) + +2019-11-20 moko + + * src/: classes/file.C, classes/string.C, include/pa_base64.h, + main/pa_base64.C: optimization: void pa_base64_decode -> size_t + pa_base64_decode (related to feature #986) + + * tests/398.html: tests for base64 decode added (related to feature + #986) + + * src/main/pa_base64.C: base64_decode rewritten - padding option + support, padding inside base 64 supported (related to feature + #096) + +2019-11-19 moko + + * src/include/pa_memory.h: CHECK_DELETE_USAGE tested to work under + FreeBSD 12 + +2019-11-16 moko + + * src/main/pa_base64.C: base64_decode converted to C++, url-safe + support added, step support removed (related to #986) + +2019-11-15 moko + + * src/classes/math.C: using log since log2 is not present on + FreeBSD < 8.4 (related to feature #1177) + + * src/: include/pa_base64.h, main/pa_base64.C: whitespace, + pa_base64_size extracted and used for files as well (related to + feature 986) + +2019-11-14 moko + + * tests/: 397.html, results/397.processed: + content check + + * tests/: 141.html, results/141.processed: make test resuls more + readable + + * tests/: 397.html, results/193.processed, results/397.processed: + test results updated after \x00 character was disabled in + math:convert string mode (related to feature #1177) + + * src/classes/: math.C, string.C: \\x00 character disabled while + converting to string (as in base64, related to feature #1177) + + * src/classes/file.C: more correct arguments separation + + * src/: classes/file.C, classes/math.C, classes/string.C, + include/pa_base64.h, include/pa_common.h, main/pa_base64.C, + main/pa_http.C, types/pa_vfile.C, types/pa_vmail.C: base64 + options added, but not yet implemented (related to feature #986) + + * src/classes/math.C: whitespace + +2019-11-13 moko + + * tests/: 397.html, results/397.processed: +tainting test (related + to feature #1177) + + * src/classes/math.C: as we now produce not only digits, result + should be tainted (related to feature #1177) + + * src/main/pa_base64.C: whitespace + + * src/: include/Makefile.am, main/Makefile.am, main/main.vcproj, + include/pa_base64.h, include/pa_common.h, main/pa_base64.C, + main/pa_common.C: pa_base64.h and pa_base64.C added, base64 + implementation moved from pa_common.h and pa_common.C + +2019-11-12 moko + + * tests/: 275.html, results/275.processed: out of range test fixed, + as ^math:convert now supports arbitrary precision + +2019-11-11 moko + + * tests/results/389.processed: uctualized error message + + * tests/: 389.html, 397.html, results/397.processed: tests for + ^math:convert added (related to feature #1177) + + * src/classes/math.C: ^math:convert now supports arbitrary + precision, alphabet support added (implements feature #1177) + +2019-11-06 moko + + * tests/: 181.html, results/181.processed: entities usage added, + more entites load tests (related to bug #842 discussion) + +2019-11-05 moko + + * src/main/pa_xml_io.C: bugfix: no more extra http://localhost/ + call from xmlFileOpen if http://localhost/ was not found + (related to bug #842) + + * src/main/pa_xml_io.C: rename + + * src/main/pa_xml_io.C: +MemoryStream constructor + + * src/main/pa_xml_io.C: whitespace + +2019-10-31 moko + + * src/classes/xdoc.C: XML_PARSE_OPTIONS (XML_PARSE_DTDLOAD | + XML_PARSE_NOENT) added to fix entities load, (related to feature + #1181) + +2019-10-25 moko + + * tests/: 388-sql.html, results/388-sql.processed: more multiple + queries tests + +2019-10-24 moko + + * tests/: 388-sql.html, results/388-sql.processed: support for + pgsql driver test + + * tests/: 388-sql.html, results/388-sql.processed: + multi_statements=1 now tested, mysql test now supported + (connection must be specified in [parser3] section in .my.cnf) + related to issues #1195 and #1194 + +2019-09-11 moko + + * src/classes/int.C: whitespace + + * tests/: 388-sql.html, results/388-sql.processed: +duplicate key + exception test + + * tests/results/388-sql.processed: sql queries now shown (related + to feature #1196) + + * src/sql/pa_sql_driver.h: to keep new SQL drivers more compatible + with old parser versions. + + * src/: classes/file.C, classes/hash.C, classes/string.C, + classes/table.C, classes/void.C, include/pa_sql_connection.h, + main/pa_sql_driver_manager.C, sql/pa_sql_driver.h: Show query + instead of connect string in query_event_handlers exceptions + (implements feature #1196) + +2019-09-06 moko + + * tests/388-sql.html: mysql compat + + * src/: classes/hash.C, classes/string.C, classes/table.C, + classes/void.C, include/pa_common.h, main/pa_common.C: cleanup: + sql_ variables declaration moved to pa_common.h + +2019-01-15 moko + + * src/classes/curl.C: ^curl:info[] - OrderedHashString used, items + logically sorted + +2018-12-27 moko + + * src/include/pa_config_includes.h: warning war: + -Wdeprecated-register added for C++ 17 + +2018-10-15 moko + + * configure.ac: FreeBSD 11.2 can be build with ./configure + --with-gc=/usr/local/lib/ --with-pcre=/usr/local/ + --with-xml=/usr/local/ + +2018-09-24 moko + + * tests/: 396.html, 396.tiff, results/396.processed: test for + ^image::measure[] now supports tiff added (related to feature + #1188) + + * src/classes/image.C: ^image::measure[] now supports tiff + (implements feature #1188) + +2018-09-20 moko + + * tests/: 395.bmp, 395.html, results/395.processed: test for bmp + files measure added (related to ticket #1188) + + * src/classes/image.C: measure of bmp files implemented (related to + ticket #1188) + +2018-09-18 moko + + * tests/: 394-curl.html, results/394-curl.processed, + results/auto.p: test for bug #1187 (max_file_size check for head + requests) added + +2018-08-24 moko + + * src/classes/curl.C: CURLOPT_NOBODY value used to check if + response content-length check is required (fixes bug #1187) + +2018-05-11 moko + + * tests/: 157.html, results/157.processed: test for ^file:copy[..; + $.append(bool) ] option added (related to feature #919) + + * src/classes/file.C: ^file:copy[..; $.append(bool) ] option added + from misha@ patch (implements feature #919) + +2018-03-22 moko + + * src/main/pa_request.C: $response:download[ $.file[file.namef] ] + worked rather slow (about 1mb/sec) with 10kb buffer, replaced it + with 128kb buffer. Now works at least 12 times faster. :) May be + Windows-only problem. + + * src/lib/cord/cord.vcproj: Profile * complete cleanup (VS 2003 + build fix) + +2018-02-03 moko + + * src/main/execute.C: removes irrelevant lines from exception stack + trace when exceptions occurs in assigment (fixes bug #1165) + + * tests/: 393.html, results/393.processed: test for behavour after + "Property can not be created, already exists field with that + name" exception removed (related to feature #1183) + + * src/types/pa_vclass.C: "Property can not be created, already + exists field with that name" exception removed (implements + feature #1183) + +2018-01-19 moko + + * src/classes/string.C: whitespace + + * src/classes/string.C: whitespace + + * tests/: 392.html, results/392.processed: test for + ^regex::create[$regex] added (related to feature #1135) + + * src/: classes/regex.C, types/pa_vregex.C, types/pa_vregex.h: + ^regex::create[$regex] added (implements feature #1135) + + * src/types/: pa_vclass.C, pa_vclass.h: CLASS_GETTER_UNPROTECTED + commented define added (related to feature #1157) + +2018-01-17 moko + + * buildall: gc 7.6.0 -> 7.6.2 (related to feature #1136) + +2018-01-15 moko + + * tests/: 390.html, results/390.processed: real path replaced by + stub + + * tests/: 391.html, results/391.processed: test for feature #1181 + (XML_PARSE_HUGE exception) added + +2018-01-11 moko + + * src/classes/xdoc.C: xmlReadMemory/xmlReadFile now used with + XML_PARSE_HUGE option passed by default (implements feature + #1181) + + * src/classes/string.C: whitespace + +2017-12-10 moko + + * tests/: 389.html, 390.html, results/389.processed, + results/390.processed: image code coverage tests added (related + to feature #1125) + +2017-12-08 moko + + * tests/: 346-curl.html, 388-sql.html, 389.html, + results/346-curl.processed, results/388-sql.processed, + results/389.processed: more code coverage tests + + * tests/: 264.html, results/264.processed: code coverage for + ^file::exec[] + +2017-12-07 moko + + * tests/: 174.html, 388-sql.html, 389.html, + results/388-sql.processed, results/389.processed, + results/174.processed: more coverage tests + + * src/classes/math.C: exception text actualized + +2017-12-06 moko + + * tests/388-sql.html: $SQL can be here + + * tests/results/auto.p: $SQL not required here + + * tests/: 388-sql.html, 389.html, Makefile, + results/388-sql.processed, results/389.processed, results/auto.p: + code coverage tests for sql (using sqlite) and int/double/bool + added (related to feature #1125) + + * src/: classes/classes.vcproj, lib/cord/cord.vcproj, + lib/json/json.vcproj, lib/md5/md5.vcproj, + lib/memcached/memcached.vcproj, lib/punycode/punycode.vcproj, + lib/sdbm/sdbm.vcproj, lib/smtp/smtp.vcproj, main/main.vcproj, + targets/apache/ApacheModuleParser3Core.vcproj, + targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj, + types/types.vcproj: gc\include no longer required + + * src/lib/: cord/cord.vcproj, gd/gd.vcproj: gc\include no longer + required + + * src/: classes/Makefile.am, classes/table.C, + include/pa_config_includes.h, include/pa_string.h, + lib/cord/Makefile.am, lib/cord/cordbscs.c, lib/cord/cordxtra.c, + lib/gd/Makefile.am, lib/json/Makefile.am, lib/sdbm/Makefile.am, + lib/smtp/Makefile.am, main/Makefile.am, main/untaint.C, + targets/apache/Makefile.am, targets/cgi/Makefile.am, + types/Makefile.am: to be sure that our version of gc.h/cord.h is + used, we now include it directly + +2017-12-04 moko + + * src/lib/: gd/gd.vcproj, md5/md5.vcproj, + memcached/memcached.vcproj, punycode/punycode.vcproj, + sdbm/sdbm.vcproj, smtp/smtp.vcproj: includes unified, gc added + where required + + * src/: classes/memory.C, include/pa_config_includes.h: GC_DEBUG + now can be used to trace memory allocations + + * src/: classes/table.C, include/pa_config_includes.h, + include/pa_memory.h, lib/cord/cordbscs.c, lib/cord/cordxtra.c, + main/pa_globals.C: PA_DEBUG_DISABLE_GC works again, pa_gc_* + method removes, libcord also can work without libgc + + * src/classes/json.C: pa_gc_malloc_atomic should not be used + +2017-11-29 moko + + * src/classes/curl.C: no exception if some of ^curl:info[] elements + are not present (related to feature #1173) + + * tests/346-curl.html: test updated to test curl content-length bug + (related to feature #1173) + + * tests/results/346-curl.processed: more test for content-length + curl bug (related to feature #1173) + + * tests/results/346-curl.processed: test results updated after + #1173 implemented + +2017-11-28 moko + + * src/classes/curl.C: another libcurl Content-length bug walkaround + (related to feature #1173) + +2017-11-27 moko + + * src/: classes/curl.C, lib/curl/curl.h: ^curl:options + $.http_version[version string] added (implements feature #1173), + CURLOPT_POSTFIELDSIZE is set to 0 now only for old versions, + where $post(true) bug existed. + +2017-11-18 moko + + * src/include/pa_memory.h: warning war (related to feature #1170) + + * src/include/pa_pool.h: RedHat 7.3 compatibility fixed (related to + feature #1170) + +2017-11-17 moko + + * src/include/pa_memory.h: CHECK_DELETE_USAGE define added as + std::basic_stringstream used in ^table.csv-string[] is compatible + with delete usage check only under Debian 9 (related to feature + #1170) + +2017-11-16 moko + + * src/: classes/curl.C, classes/hash.C, classes/json.C, + classes/table.C, classes/xdoc.C, include/pa_config_includes.h, + include/pa_hash.h, include/pa_memory.h, include/pa_pool.h, + main/pa_charset.C, main/pa_memory.C, main/pa_xml_io.C, + sql/pa_sql_driver.h, types/pa_value.h, types/pa_vmemcached.C, + types/pa_vxdoc.h: regular new/delete no longer used in our code, + stubs defend from accidental use (implements feature #1170) + +2017-06-24 moko + + * configure.ac: minor fix: thanks to alx@ + +2017-05-29 moko + + * src/types/pa_vmail.C: mail headers are now correctly truncated - + MAX_CHARS_IN_HEADER_LINE value fixed, mail_header_utf8_substring + added to avoid cutting of UTF-8 chars (fixed bug #123) + + * src/main/untaint.C: as in case of =?UTF-8?Q?= space is + ignored, =?UTF-8?Q?= should start in case of leading space + (related to bug #123) + + * buildall: echo -n -> printf for OS X. :) + +2017-05-25 moko + + * tests/: 288.html, results/288.processed: test updated afted + setting $o.prop without setter exception removed (related to + feature #1157) + + * src/types/pa_vclass.C: no more "this property has no setter + method" when setting $o.prop without setter (implements feature + #1157) + + * buildall: echo \c -> echo -n for FreeBSD + + * configure, configure.ac, src/include/pa_config_auto.h.in, + src/types/pa_vdouble.h: isfinite now checked in configure + + * compile, config.guess, config.sub, depcomp, install-sh, missing: + upgraded to automake 1.15 + +2017-05-23 moko + + * src/types/pa_vdouble.h: finite returned where isfinite not + defined + +2017-05-22 moko + + * buildall: gc-7.6.0 USE_LIBC_PRIVATES allready defined warning war + + * buildall: extern CFLAGS setting support + + * src/types/pa_vdouble.h: warning war: finine() -> isfinite() 4OSX + + * buildall: http -> https + + * buildall: gc-7.2f -> gc-7.6.0 + +2017-05-20 moko + + * buildall: https, pcre, xml, xslt updated to current versions + (related to feature #1136) + +2017-05-19 moko + + * tests/097.html: after parser.ru moved to https + +2017-05-17 moko + + * tests/results/: 175.processed, 372.processed: tests resuls + updated after lintian spelling typos fixed (related to bug #1156) + + * src/: classes/file.C, classes/hash.C, classes/reflection.C, + classes/string.C, classes/table.C, main/pa_charset.C, + main/pa_common.C, main/pa_http.C, types/pa_vimage.h, + types/pa_vmail.C, types/pa_vxdoc.h: fixed spelling typos from + lintian reported by Sergey B Kirpichev (fixes bug #1156) + + * tests/results/096.processed: +XMP + + * tests/: 096.html, 096_dir/188.jpg: ^image::measure[] $.exif(true) + $.xmp(true) options tested (test for feature #1154) + + * src/classes/image.C: ^image:measure[] options $.exif(false) + $.xmp(false) $.xmp-charset[UTF-8] implemened. exif no longer + fetched by default! (implements feature #1154) + +2017-05-16 moko + + * tests/: 256.html, results/256.processed: ^json:string[$image] now + allowed (related to feature #1154) + + * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h: + initial XMP implementation - without options and transcode + (related to feature #1154) + +2017-05-12 moko + + * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h: + image: exif moved to ffields, skipped in ^image.html[] where + iterators now used (preparation for feature #1154) + +2017-05-05 moko + + * tests/: 387.html, 387_dir/A.p, 387_dir/B.p, + results/387.processed: test for circular class inheritance check + added (related to bug #1150) + + * src/types/pa_vstateless_class.C: circular class inheritance check + added (fixes endless add_derived bug #1150) + +2017-05-04 moko + + * tests/: 386.html, results/386.processed: test for + $table.value(number) added (related to feature #1152) + + * src/types/pa_vtable.C: table put_element: column value must be + string - > column value must be string compatible to allow + $t.value(1) (implements feature #1152) + +2017-05-03 moko + + * src/main/pa_request.C: $use[$method] is not possible, reverting + (related to feature #1151) + + * tests/: 386.html, 386.p, results/386.processed: $use[$method] is + not possible, removing test (related to feature #1151) + + * src/: main/pa_request.C, types/pa_vstateless_class.h: + get_element_method added and used to allow $use[$method] and + $autouse[$method] (implements feature 1151) + + * tests/: 386.html, 386.p, results/386.processed: test for @use in + variable added (related to feature #1151) + + * tests/results/226.processed: actualized after ^try-catch used + + * tests/: 226.html, 385.html, results/385.processed: test for + @autouse in variable added + + * configure.ac, src/include/pa_version.h: 3.4.5 -> 3.4.6b + +2017-02-27 moko + + * configure.ac, src/include/pa_version.h: 3.4.5rc -> 3.4.5 + +2017-02-20 moko + + * operators.txt: actualization + beauty + +2017-02-16 moko + + * tests/: 384.html, results/384.processed: test for + ^reflection:mixin[; $.name[] ] option added (related to feature + #1089) + + * tests/: 384.html, results/384.processed: test for + ^reflection:mixin[] added (related to feature #1089) + + * src/types/pa_value.h: warning war: virtual ~Value() added + +2017-02-15 moko + + * src/include/pa_hash.h: compilation without HASH_CODE_CACHING + fixed + + * tests/: 320.html, results/320.processed: $.reverse(true/false) + test added (related to feature #1069) + + * src/: classes/reflection.C, types/pa_vstateless_class.h: + compilation without HASH_ORDER fixed + + * src/: classes/reflection.C, include/pa_hash.h: + $.reverse(true/false) added to ^reflection:methods[] (related to + feature #1069) + +2017-02-14 moko + + * tests/: 152.html, results/152.processed: test for $._default hash + added (related to bug #1131) + + * tests/: 277.html, results/277.processed: test for hash with only + $._default is now defined (related to bug #1131) + + * src/types/pa_vhash.h: hash with only $._default is now defined + (fixed bug #1131) + +2017-02-13 moko + + * tests/cat-windows.sh: cat-windows added (cygwin required) + + * tests/: 171.html, 264.html, 286.html, 370.html, + results/320.processed, results/375.processed, results/auto.p: + cat-windows.sh support added + + * tests/375.html: Windows support + + * tests/270.html: documented + + * tests/: 270.html, run_parser.cmd: bugfix: PATH_INFO has slashes + (not backslashes) even under Windows (broke test 270) + +2017-02-12 moko + + * tests/: descript.ion, todo.txt: cleanup + +2017-02-09 moko + + * tests/: 253.html, 255.html, 275.html, 347-curl.html, + run_tests.cmd: Windows compatibility + + * tests/make_tests.cmd: removed as test can't be passed - TZ is set + incorrectly (GMT) if parser is called from cygwin + +2017-02-08 moko + + * operators.txt: actualization 15% completed + + * operators.txt: cp1251 -> utf-8 + + * NEWS, README: minor update + + * src/include/pa_config_includes.h: warning war continues + + * src/: include/pa_config_includes.h, include/pa_memory.h, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C, types/pa_vdouble.h: warning war: + gcc 6.x issues fixed + + * src/: classes/bool.C, classes/classes.C, classes/classes.awk, + classes/classes.h, classes/curl.C, classes/date.C, + classes/double.C, classes/file.C, classes/form.C, classes/hash.C, + classes/hashfile.C, classes/image.C, classes/inet.C, + classes/int.C, classes/json.C, classes/mail.C, classes/math.C, + classes/memcached.C, classes/memory.C, classes/op.C, + classes/reflection.C, classes/regex.C, classes/response.C, + classes/string.C, classes/table.C, classes/void.C, + classes/xdoc.C, classes/xnode.C, classes/xnode.h, + include/pa_array.h, include/pa_cache_managers.h, + include/pa_charset.h, include/pa_charsets.h, include/pa_common.h, + include/pa_config_fixed.h, include/pa_config_includes.h, + include/pa_dictionary.h, include/pa_dir.h, + include/pa_exception.h, include/pa_exec.h, include/pa_globals.h, + include/pa_hash.h, include/pa_http.h, include/pa_memory.h, + include/pa_opcode.h, include/pa_operation.h, include/pa_os.h, + include/pa_pool.h, include/pa_random.h, include/pa_request.h, + include/pa_request_charsets.h, include/pa_request_info.h, + include/pa_sapi.h, include/pa_socks.h, + include/pa_sql_connection.h, include/pa_sql_driver_manager.h, + include/pa_stack.h, include/pa_string.h, + include/pa_stylesheet_connection.h, + include/pa_stylesheet_manager.h, include/pa_symbols.h, + include/pa_table.h, include/pa_threads.h, include/pa_types.h, + include/pa_uue.h, include/pa_xml_exception.h, + include/pa_xml_io.h, lib/gd/gif.C, lib/gd/gif.h, lib/gd/gifio.C, + lib/md5/pa_md5.h, lib/md5/pa_md5c.c, + lib/memcached/pa_memcached.C, lib/memcached/pa_memcached.h, + lib/punycode/pa_idna.c, lib/punycode/pa_idna.h, + lib/sdbm/pa_file_io.C, lib/sdbm/pa_strings.C, lib/smtp/comms.C, + lib/smtp/smtp.C, lib/smtp/smtp.h, main/compile.C, + main/compile.tab.C, main/compile.y, main/compile_tools.C, + main/compile_tools.h, main/execute.C, main/pa_cache_managers.C, + main/pa_charset.C, main/pa_charsets.C, main/pa_common.C, + main/pa_dictionary.C, main/pa_dir.C, main/pa_exception.C, + main/pa_exec.C, main/pa_globals.C, main/pa_http.C, + main/pa_memory.C, main/pa_os.C, main/pa_pool.C, main/pa_random.C, + main/pa_request.C, main/pa_socks.C, main/pa_sql_driver_manager.C, + main/pa_string.C, main/pa_stylesheet_connection.C, + main/pa_stylesheet_manager.C, main/pa_symbols.C, main/pa_table.C, + main/pa_uue.C, main/pa_xml_exception.C, main/pa_xml_io.C, + main/untaint.C, sql/pa_sql_driver.h, + targets/apache/mod_parser3.c, targets/apache/mod_parser3_core.C, + targets/apache/pa_httpd.h, targets/apache/pa_threads.C, + targets/cgi/pa_threads.C, targets/cgi/parser3.C, + targets/isapi/pa_threads.C, targets/isapi/parser3isapi.C, + types/pa_junction.h, types/pa_method.h, types/pa_property.h, + types/pa_value.C, types/pa_value.h, types/pa_vbool.h, + types/pa_vcaller_wrapper.h, types/pa_vclass.C, types/pa_vclass.h, + types/pa_vcode_frame.h, types/pa_vconsole.h, types/pa_vcookie.C, + types/pa_vcookie.h, types/pa_vdate.C, types/pa_vdate.h, + types/pa_vdouble.h, types/pa_venv.C, types/pa_venv.h, + types/pa_vfile.C, types/pa_vfile.h, types/pa_vform.C, + types/pa_vform.h, types/pa_vhash.C, types/pa_vhash.h, + types/pa_vhashfile.C, types/pa_vhashfile.h, types/pa_vimage.C, + types/pa_vimage.h, types/pa_vint.h, types/pa_vjunction.C, + types/pa_vjunction.h, types/pa_vmail.C, types/pa_vmail.h, + types/pa_vmath.C, types/pa_vmath.h, types/pa_vmemcached.C, + types/pa_vmemcached.h, types/pa_vmemory.h, + types/pa_vmethod_frame.C, types/pa_vmethod_frame.h, + types/pa_vobject.C, types/pa_vobject.h, types/pa_vregex.C, + types/pa_vregex.h, types/pa_vrequest.C, types/pa_vrequest.h, + types/pa_vresponse.C, types/pa_vresponse.h, + types/pa_vstateless_class.C, types/pa_vstateless_class.h, + types/pa_vstateless_object.h, types/pa_vstatus.C, + types/pa_vstatus.h, types/pa_vstring.C, types/pa_vstring.h, + types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.C, + types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h, + types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C, + types/pa_wcontext.h, types/pa_wwrapper.h: Copyright year: + 2015->2017 + +2017-02-07 moko + + * configure.ac, src/include/pa_version.h: 3.4.5b -> 3.4.5rc + +2017-02-06 moko + + * src/main/pa_common.C: minor fixes, whitespace + + * src/: classes/curl.C, classes/file.C, classes/image.C, + include/pa_common.h, include/pa_dir.h, main/pa_common.C, + main/pa_dir.C, main/pa_exec.C: wchar filenames API under Windows + now used (implements feature #1081) + + * src/: types/pa_vcookie.C, main/pa_charset.C: cleanup + +2017-02-01 moko + + * src/include/pa_request.h: cleanup + +2017-01-30 moko + + * src/main/pa_request.C: file_lock_wait_limit -> lock_wait_timeout + +2017-01-29 moko + + * tests/: 383.html, results/383.processed: test for + ^reflection:stack[] added (related to feature #1052) + + * src/classes/reflection.C: else added + + * src/: include/pa_os.h, main/pa_os.C, main/pa_request.C: + $.max_file_lock_wait added (implements feature #1128) + +2017-01-28 moko + + * tests/: 379-curl.html, results/379-curl.processed: curl empty + body and other cases tests added (related to featue #1014) + + * src/classes/curl.C: bug if response is empty fixed (related to + feature #1014) + +2017-01-27 moko + + * src/: classes/json.C, classes/reflection.C, include/pa_request.h, + main/execute.C, types/pa_vmethod_frame.h: ^reflection:stack[] + added (implements feature #1052) + +2017-01-25 moko + + * tests/: 382.html, results/382.processed: @GET_DEFAULT returning + method test added + +2017-01-23 moko + + * src/classes/reflection.C: optimization: options->get replaced by + hash iterator + + * tests/: 381.html, results/381.processed: now -> fixed date + + * src/main/pa_request.C: warning war + + * src/targets/cgi/parser3.vcproj: Stack size increased from 2Mb to + 5Mb (fixes bug #1058) + + * src/classes/curl.C: warning war + + * tests/: 381.html, results/381.processed: tests for ^json:string + $.one-line(true) option added (related to feature #1124) + + * src/: classes/json.C, types/pa_value.h: $json-string + $.one-line(true|false) options is now supported (implements + feature #1124) + + * tests/: 380.html, results/380.processed: test for modified + $.max_file_size added (related to bug #1014) + + * tests/: 379.html, results/auto.p: tests for rewritten http file + load added (related to bug #1014) + + * src/: classes/curl.C, include/pa_common.h, include/pa_http.h, + main/pa_common.C, main/pa_http.C: check_file_size added and used + in curl / file load from disk and http, http file load rewritten + (related to bug #1014) + +2017-01-18 moko + + * tests/: 378.html, results/378.processed: tests for ^result[] + added (related to feature #66) + + * src/: classes/op.C, include/pa_request.h: ^return[] can't be + Method::CO_WITHOUT_FRAME as frame still added in expression + (related to feature #66) + +2017-01-17 moko + + * tests/: 377.html, results/377.processed: test for different + combinations of breaks in body and delimiter (related to bug + #1077) + + * tests/: 376.html, results/376.processed: many ^break[] tests + added (related to bug #1077) + + * src/types/pa_vmethod_frame.C: "break is not allowed in expression + passed to native method" exception added to avoid bugs due to + WRITE_EXPR_RESULT skipped and native methods execution continues + after ^break[] (related to bug #1077) + +2017-01-14 moko + + * tests/: 330.html, results/330.processed: test results updated + after ^break[] bugs where fixed (related to bug #1077) + + * tests/: 329.html, results/329.processed: test results updated + after ^break[] bugs where fixed (related to bug #1077) + + * tests/results/320.processed: ^return[] added + +2017-01-13 moko + + * src/: classes/hash.C, classes/hashfile.C, classes/op.C, + classes/table.C, include/pa_request.h, main/execute.C, + main/pa_request.C, targets/cgi/parser3.C, + types/pa_vmethod_frame.C: Request::SKIP_INTERRUPTED, + Request::SKIP_RETURN added and implemented, Request::SKIP_* now + checked after each possible process/execute call (fixes bug + #1077) + +2016-12-29 moko + + * src/main/pa_common.C: warning war + + * src/: classes/math.C, include/pa_random.h, include/pa_request.h, + include/pa_types.h, main/pa_request.C, main/pa_string.C: + pa_file_size_limit added, ^math:random fixed for upper limit and + limits more then 0x7FFFFFFF, limits now declared in pa_types.h + (related to feature #1014) + + * src/: classes/curl.C, classes/file.C, include/pa_common.h, + main/pa_common.C, main/pa_dir.C, main/pa_exec.C: stat -> pa_stat + (related to feature #1014) + +2016-12-28 moko + + * src/: classes/file.C, main/pa_request.C, main/pa_string.C: VS2003 + warning war + +2016-12-26 moko + + * tests/: 341.html, results/341.processed: test for + ^table.hash[id;;$.type[string]] added (related to feature #1057) + + * src/classes/table.C: ^table.hash[id;;$.type[string]] support fix + (related to feature #1057) + + * src/types/pa_vdate.C: warning war continues... + + * src/: classes/date.C, classes/image.C, classes/table.C, + include/pa_config_includes.h, types/pa_vfile.C: warning war + + * src/lib/gd/gifio.C: warning war / cleanup + + * src/lib/json/pa_json.C: warning war + + * src/classes/hash.C: warning war + + * src/types/pa_vfile.C: warning war + + * src/: classes/hash.C, include/pa_common.h, types/pa_vcookie.C: + -Wall warning war continues + + * configure.ac: --with-build-warnings actualized + +2016-12-25 moko + + * src/main/pa_exec.C: -wAll warning war + + * src/: types/pa_vform.C, types/pa_vrequest.C, main/pa_common.C: + -wAll warning war + + * src/: include/pa_common.h, include/pa_sapi.h, + types/pa_junction.h, types/pa_method.h, types/pa_value.h, + types/pa_vdate.C, types/pa_vstateless_class.h, types/pa_vxdoc.h: + -wAll warning war + +2016-12-23 moko + + * src/lib/ltdl/Makefile.am: extra dist added + + * tests/results/344.processed: test result updated after $file.text + prefetched in ^hash::create[$file] (related to feature #1075) + + * src/types/: pa_vfile.C, pa_vfile.h: $file.text prefetched in + ^hash::create[$file] (related to feature #1075) + +2016-12-22 moko + + * src/: classes/file.C, include/pa_common.h, main/pa_common.C, + main/pa_request.C, main/pa_stylesheet_connection.C, + types/pa_vfile.C: file_stat now return 64-bit size (implements + #1014 under 32-bit unix versions) + +2016-12-21 moko + + * tests/: 375.html, results/375.processed: test for exec returning + stated file added (related to feature #1119) + + * src/classes/file.C: load should not return file with null body + (fixes bug #1119) + +2016-12-14 moko + + * tests/: 374.html, results/374.processed: test for $method.name + added (related to feature #1117) plus method returning junction + test + +2016-12-13 moko + + * src/: include/pa_symbols.h, main/pa_symbols.C, + types/pa_vjunction.C, types/pa_vjunction.h: $method.name added + (implements feature #1117) + + * src/: types/pa_vform.C, include/pa_request_info.h: now only GET, + HEAD and TRACE can't have body (implements feature #1116) + +2016-12-09 moko + + * tests/: 373.html, results/373.processed: tests for + ^reflection:tainting added (related to feature #1098) + + * src/classes/reflection.C: ^reflection:tainting arguments order + change (related to feature #1098) + +2016-12-06 moko + + * src/: classes/reflection.C, include/pa_string.h, + main/pa_string.C: ^reflection:tainting[$string] added (implements + feature #1098) + +2016-12-05 moko + + * src/types/pa_vdouble.h: negative zero (-0) now converted to 0 + (fixes bug #1114) + +2016-12-04 moko + + * tests/: 206.html, results/206.processed: negative zero (0/-1) + check added + +2016-12-03 moko + + * tests/: 346-curl.html, results/346-curl.processed: test modified + to test value.as_hash() usage + + * src/classes/curl.C: value.as_hash() used for correct hash + processing + + * src/classes/reflection.C: exceptions texts fixes + +2016-12-02 moko + + * tests/: 372.html, results/372.processed: tests for + ^reflection:create[ $.class[name] $.constructor[name] + $.arguments[ $.1[param1] $.2[param2] ... ] ] added (related to + feature #1094) + + * src/types/pa_vmethod_frame.h: comment added: params should be + declared outside of *_FRAME_ACTION as MethodParams destructor + will be called in ~VNativeMethodFrame + + * src/classes/reflection.C: ^reflection:create[ $.arguments[ ... ] + ] minor fix + + * src/: classes/reflection.C, types/pa_value.C, types/pa_value.h, + types/pa_vmethod_frame.C: ^reflection:create[ $.class[name] + $.constructor[name] $.arguments[ $.1[param1] $.2[param2] ... ] ] + now supported (implements feature #1094) value::as_hash added + (and should be used everywhere) + + * src/classes/reflection.C: cleanup + +2016-12-01 moko + + * tests/: 356.html, results/356.processed: test for method + junctions class name added to the resulting hash added (related + to feature #1068) + + * src/classes/reflection.C: for method junctions class name added + to the resulting hash (related to feature #1068) + +2016-11-30 moko + + * src/types/: pa_vhashfile.C, pa_vhashfile.h: file_name included in + exception (related to bug #1113) + + * src/types/pa_vhashfile.C: whitespace + + * src/main/pa_os.C: errno now returned as it should (fixes bug + #1113) + + * tests/results/: 175.processed, 192.processed, 224.processed, + 229.processed, 239.processed, 244.processed, 246.processed, + 314.processed, 352.processed: tests results updated after method + call exceptions improved as method now keeps its name + + * src/: classes/reflection.C, main/execute.C, types/pa_value.C, + types/pa_vmethod_frame.h: method call exceptions improved as + method now keeps its name + + * tests/: 224.html, 239.html, results/224.processed, + results/239.processed: tests and tests results updated after + Request::construct exception changed + + * src/: classes/reflection.C, main/execute.C: Request::construct + exception optimized + + * tests/: 371.html, results/371.processed: test for + WWrapper.get_element call in $.name.key[value] code added + (related to feature #1091) + + * src/types/pa_wwrapper.h: WWrapper.get_element returned, as used + in $.name.key[value] code (related to feature #1091) + +2016-11-29 moko + + * src/classes/op.C: VS warning war + + * src/types/: pa_vmethod_frame.h, pa_wcontext.h: VS warning war: + C4239: nonstandard extension used : 'return' : conversion from + 'Value' to 'Value &' (related to feature #1020) + + * src/: main/execute.C, types/pa_vmethod_frame.h, + types/pa_wcontext.h: VS warning war: C4239: nonstandard extension + used : 'return' : conversion from 'Value' to 'Value &' (related + to feature #1020) + + * src/main/execute.C: VS warning war + + * src/targets/cgi/parser3.C: VS compatibility fix + + * src/include/pa_request.h: VS warning war + + * tests/: 370.html, results/370.processed: test for ^file::exec[ + ... $.stdin[$binary_file] ] added (related to bug #1044) + + * src/: classes/file.C, classes/mail.C, include/pa_exec.h, + include/pa_string.h, main/pa_exec.C: pa_exec now supports + $.stdin[$binary_file] (fixes bug #1044) + +2016-11-28 moko + + * src/main/pa_exec.C: whitespace + + * src/main/pa_request.C: whitespace + + * tests/: 369.html, results/369.processed: test for + $response:status usage added (related to feature #1099) + + * src/targets/cgi/parser3.C: HTTP response code used as exit status + if < 100 (implements feature #1099) + + * src/targets/cgi/parser3.C: whitespace + + * src/targets/cgi/parser3.C: whitespace + + * tests/: 368.html, results/368.processed: test updated after + ^reflection:filename[$method] added (related to feature #1053) + + * src/: classes/op.C, classes/reflection.C, include/pa_request.h, + main/compile.y, main/execute.C, main/pa_request.C, + types/pa_vclass.h: filename -> filespec, + ^reflection:filename[$method] added (related to feature #1053) + +2016-11-27 moko + + * tests/: 368.html, results/368.processed: test for + reflection:filename[$class or object] added (related to feature + #1053) + + * src/: classes/reflection.C, main/compile.y, types/pa_vclass.h, + types/pa_vstateless_class.h: ^reflection:filename[$class or + object] added (implements feature #1053) + +2016-11-26 moko + + * src/: include/pa_request_info.h, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C: + remove_absolute_uri -> strip_absolute_uri + +2016-11-25 moko + + * src/: include/pa_request_info.h, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C: + request_info.remove_absolute_uri added to remove possible + http://site.name/ from $request:uri (implements feature #1112) + +2016-11-24 moko + + * tests/: 367-curl.html, results/367-curl.processed: test for + previous request headers clearing after redirect added (related + to bug #1109) + + * src/: classes/curl.C, include/pa_array.h, include/pa_http.h: + response headers from previous requests are now cleared, only + last request headers are collected (fixes bug #1109) + + * tests/results/: 266.processed, 321.processed, 356.processed: + tests results updated as method name now added to the resulting + hash for new syntax only (Imp1 compatimility fixed, related to + feature #1068) + + * src/classes/reflection.C: method name now added to the resulting + hash for new syntax only (Imp1 compatimility fixed, related to + feature #1068) + + * tests/results/366.processed: test for native and parser + implementation of ^use[] logic (related to feature #1074) + + * tests/: 366.html, 366_dir/test-duplicate.p, 366_dir/test.p: test + for native and parser implementation of ^use[] logic (related to + feature #1074) + +2016-11-23 moko + + * src/: classes/op.C, include/pa_request.h, main/compile.y, + main/pa_request.C: @USE file now implemented as ^use[file; + $.origin[origin_file] ] (implements feature #1074) + +2016-11-21 moko + + * tests/: 365.html, results/365.processed: test for $caller bugs in + 3.4.4 and $caller.method now tested (related to feature #1110) + + * tests/: 364.html, results/364.processed: $caller usage in + different contexts now tested (related to feature #1110) + + * src/types/types.vcproj: +pa_vcaller_wrapper.h + + * src/types/Makefile.am: pa_vcaller_wrapper.h added + + * src/: include/pa_symbols.h, main/pa_symbols.C, types/pa_method.h, + types/pa_vcaller_wrapper.h, types/pa_vmethod_frame.C, + types/pa_vmethod_frame.h: redesign: VCallerWrapper added and + used (implements feature #1110) + +2016-11-20 moko + + * src/types/pa_vdouble.h: whitespace + +2016-11-11 moko + + * tests/: 363.html, results/363.processed: more tests for feature + #1091 (how parser methods work in expression context) + + * src/: include/pa_request.h, types/pa_vmethod_frame.h: in + expressions strings are now written as strings, not values by + write_as_string (related to feature #1091) + + * src/classes/op.C: to make more correct behavour in expression + context + +2016-11-07 moko + + * tests/: 362.html, results/362.processed: test for + xsltParseStylesheetDoc caching as xsl modification after it added + (related to bug #1108) + + * src/: classes/xdoc.C, types/pa_vxdoc.h: xsltParseStylesheetDoc + result now cached as xdoc is modified after it (fixes bug #1108) + +2016-11-06 moko + + * src/types/pa_vxdoc.h: whitespace + +2016-11-05 moko + + * src/types/pa_vmethod_frame.h: cleanup + +2016-11-03 moko + + * tests/results/244.processed: more correct exception after method + frames separation + + * src/types/pa_vmethod_frame.h: minor optimizaion + + * src/types/pa_method.h: optimization: params_count added + + * src/: classes/json.C, classes/op.C, classes/reflection.C, + include/pa_request.h, main/execute.C, main/pa_request.C, + types/pa_value.C, types/pa_vmethod_frame.C, + types/pa_vmethod_frame.h, types/pa_vobject.C: Optimization: + VMethodFrame now divided into VNativeMethodFrame, + VParserMethodFrame, VLocalParserMethodFrame; METHOD_FRAME_ACTION, + EXPRESSION_FRAME_ACTION, CONSTRUCTOR_FRAME_ACTION defines added + and used (related to feature #1104) + +2016-11-02 moko + + * src/: classes/bool.C, classes/curl.C, classes/date.C, + classes/double.C, classes/file.C, classes/hash.C, + classes/hashfile.C, classes/image.C, classes/inet.C, + classes/int.C, classes/json.C, classes/mail.C, classes/math.C, + classes/memcached.C, classes/op.C, classes/reflection.C, + classes/regex.C, classes/string.C, classes/table.C, + classes/xdoc.C, classes/xnode.C, include/pa_request.h, + main/execute.C: cleanup: r.write_pass_lang, r.write_no_lang -> + r.write (implements feature #1091) + + * src/main/execute.C: cleanup (related to feature #1104) + + * src/: include/pa_request.h, main/execute.C, + types/pa_vmethod_frame.h, types/pa_wcontext.h: VExpressionFrame + added, in_expression removed (implements feature #1104) + +2016-10-31 moko + + * src/types/pa_value.C: whitespace + +2016-10-28 moko + + * tests/results/244.processed: updated after error reporting fixed + in pa_wcontext.C + + * src/types/pa_wcontext.C: error reporting fixed + + * src/types/pa_wcontext.h: whitespace + + * src/classes/image.C: not fully readed entries are no longer + processed (fixes bug #1106) + +2016-10-26 moko + + * src/classes/image.C: whitespace + + * src/: include/pa_request.h, include/pa_string.h, main/untaint.C, + types/pa_vmail.C, types/pa_vmethod_frame.h, types/pa_wcontext.h, + types/pa_wwrapper.h: optimization: L_PASS_APPENDED removed as no + longer required (related to feature #1091) + + * tests/results/: 264.processed, 350.processed: test results update + reverted (whitespace optimization) after write_no_lang removed :) + (related to feature #1091) + + * src/: classes/file.C, classes/hash.C, classes/op.C, + classes/string.C, classes/table.C, classes/void.C, + classes/xdoc.C, include/pa_request.h, main/pa_xml_io.C, + types/pa_vmail.C: Temp_lang removed, write_no_lang now almost + equal write_pass_lang (related to feature #1091) + + * tests/results/: 264.processed, 350.processed: test results + updated (whitespace optimization) after write_assign_lang removed + (related to feature #1091) + + * tests/: 361.html, results/361.processed: test for non-string + ^untaint added (related to feature #1091) + + * src/: classes/curl.C, classes/date.C, classes/file.C, + classes/hash.C, classes/op.C, classes/string.C, + include/pa_request.h, main/execute.C: optimization: + write_assign_lang removed as not required (first part of feature + #1091 implementation) + +2016-10-12 moko + + * tests/: 360.html, results/360.processed: more test code (related + to feature #1104) + + * src/: classes/op.C, classes/reflection.C, include/pa_opcode.h, + include/pa_request.h, main/compile.y, main/execute.C: opcode + OP_PREPARE_TO_EXPRESSION removed as not required, optimized + WContext is next task (implements feature #1104) + + * src/types/pa_method.h: more detailed comment for CO_WITHOUT_FRAME + / CO_WITHOUT_WCONTEXT + + * tests/: 360.html, results/360.processed: test for in expression + state (related to feature #1104) + +2016-10-11 moko + + * src/main/execute.C: compilation without OPTIMIZE_CALL fixed + + * src/classes/op.C: default value removed from initializer + + * src/types/pa_vmemcached.C: FreeBSD 11 warning war + + * src/types/pa_vmethod_frame.h: FreeBSD 11 warning war + +2016-10-10 moko + + * tests/results/auto.p: test updated adter $RECOURSION_LIMIT, + $LOOP_LIMIT -> $LIMITS[ $.max_recoursion, $.max_loop ] (related + to feature #42) + + * src/main/pa_request.C: $RECOURSION_LIMIT, $LOOP_LIMIT -> + $LIMITS[ $.max_recoursion, $.max_loop ] (related to feature #42) + +2016-10-08 moko + + * src/classes/double.C: whitespace + +2016-10-07 moko + + * src/types/pa_vmethod_frame.h: reorder + +2016-10-06 moko + + * src/classes/date.C: typo + + * src/types/pa_vmethod_frame.h: whitespace + cleanup + + * src/: classes/hash.C, classes/hashfile.C, classes/json.C, + classes/op.C, classes/reflection.C, types/pa_vmethod_frame.C, + types/pa_vmethod_frame.h: params.get now returns Value&, not + Value* + + * src/types/pa_vmethod_frame.C: params.get should return Value&. + + * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: get_as + removed; first as_* code rewrite + +2016-10-05 moko + + * src/include/pa_request.h: whitespace + + * tests/: 359.html, results/359.processed: test for VCodeFrame and + intercept_string added (related to feature #1097) + + * src/: classes/image.C, classes/op.C, classes/table.C, + include/pa_request.h, main/execute.C, types/pa_vmethod_frame.C: + optimization: intercept_string removed (implements feature #1097) + + * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: whitespace + + * src/types/: pa_vcode_frame.h, pa_wwrapper.h: get_element removed + from VCodeFrame and WWrapper as not required + +2016-10-04 moko + + * src/: classes/curl.C, classes/date.C, classes/double.C, + classes/file.C, classes/hash.C, classes/image.C, classes/inet.C, + classes/int.C, classes/json.C, classes/op.C, + classes/reflection.C, classes/string.C, classes/table.C, + include/pa_request.h, main/execute.C, types/pa_vmethod_frame.C: + proces_to_value -> process after StringOrValue removed (related + to feature #1020) + + * src/classes/form.C: whitespace + + * src/main/execute.C: VALUE__GET_BASE_CLASS added to opcode_names + + * tests/: 357.html, 358.html, results/357.processed, + results/358.processed, results/auto.p: test for @conf + $RECOURSION_LIMIT and $LOOP_LIMIT added (related to feature #42) + +2016-10-03 moko + + * src/: classes/op.C, include/pa_request.h, main/pa_request.C, + types/pa_vtable.C: @conf $RECOURSION_LIMIT and $LOOP_LIMIT now + supported (implements feature #42) + + * src/types/pa_vregex.h: no reason for VRegex to be + is_evaluated_expr + + * src/classes/curl.C: CURL_OPT(CURL_INT, SSLVERSION) added + (implements feature #1095) + +2016-10-01 moko + + * src/classes/reflection.C: $.overwrite in ^reflection:mixin is now + false by default (related to feature #1089) + +2016-09-30 moko + + * src/types/pa_wcontext.h: cleanup + +2016-09-29 moko + + * src/main/execute.C: whitespace + + * src/include/pa_request.h: whitespace + + * src/: classes/hash.C, classes/hashfile.C, classes/json.C, + classes/op.C, classes/table.C, include/pa_request.h, + main/execute.C, main/pa_request.C, types/pa_vmethod_frame.h, + types/pa_vobject.C, types/pa_wcontext.h: optimization: + StringOrValue removed as it just slows down and adds complexity + (implements feature #1020) + +2016-09-28 moko + + * tests/: 356.html, results/266.processed, results/321.processed, + results/356.processed: tests updated after name was added to + method_info hash, test for ^reflection:method_info[junction] + added (related to feature #1068) + + * src/classes/reflection.C: ^reflection:method_info[junction] now + supported, method name added to the resulting hash (implements + feature #1068) + + * tests/: 276.html, results/276.processed: more tests for + ^reflection:delete[] + + * src/classes/reflection.C: fixed bug then ^reflection:delete + didn't work on class and could damage native objects (like file) + +2016-09-26 moko + + * tests/: 345.html, 346-curl.html, 347-curl.html, 348.html, + results/345.processed, results/346-curl.processed, + results/347-curl.processed, results/348.processed: numbers added + to simplify diff analysis + + * tests/: 352.html, results/352.processed: test result updated as + method name used + + * src/classes/reflection.C: method name used + + * src/types/: pa_method.h, pa_vstateless_class.C: method now keeps + its name + + * src/types/pa_method.h: whitespace + + * src/classes/reflection.C: both method and field with one name can + exist. + + * src/classes/reflection.C: ^reflection:mixin added (implements + feature #1089) + + * tests/: 355.html, results/355.processed: property appears in + derived class if added in base test added + + * src/types/pa_vstateless_class.h: get_method declaration + + whitespace + + * tests/: 354.html, results/354.processed: nice test from method + and property with one name in class added + +2016-09-23 moko + + * src/classes/reflection.C: ^reflection:method usage documented + +2016-09-22 moko + + * src/: classes/classes.vcproj, types/types.vcproj: we need RTTI as + we use 'dynamic_cast' on polymorphic type 'Value'. Without it + compile warning and GPF occures on VS2003 (related to feature + #1087) + + * tests/: 350.html, results/350.processed: test added for + $.encloser[] support in ^table::create (related to feature #11) + + * src/classes/table.C: another minor fix (related to feature #11) + +2016-09-21 moko + + * src/include/pa_config_fixed.h: vs2015 compilation fixes + + * src/: classes/curl.C, classes/file.C, classes/hash.C, + classes/json.C, classes/string.C, classes/table.C, + classes/xdoc.C, include/pa_charsets.h, main/pa_charsets.C, + main/pa_common.C, main/pa_http.C, main/pa_request.C, + main/pa_sql_driver_manager.C, types/pa_vfile.C, types/pa_vmail.C, + types/pa_vrequest.C, types/pa_vresponse.C: charsets -> + pa_charsets, vs2015 warning war + + * src/classes/table.C: vs2015 warning war + + * src/types/pa_vdate.C: vs2015 warning war + + * src/main/: pa_common.C, pa_globals.C: vs2015 compilation fixes + + * src/targets/cgi/parser3.vcproj: wsock32 -> ws2_32.lib (winsock 1 + -> winsock 2) for vs2015 compatibility (getaddrinfo functions) + + * src/main/pa_common.C: vs2015 compilation fixes + + * src/: include/pa_common.h, lib/smtp/smtp.C, main/pa_common.C: + vs2015 compilation fixes + + * src/main/pa_charset.C: vs2015 warning war + + * src/: classes/file.C, types/pa_wwrapper.h: vs2015 warning war + + * src/main/pa_charset.C: vs2015 warning war + + * src/types/: pa_wcontext.h, pa_vmethod_frame.h: vs2015 warning war + + * src/types/pa_vdate.C: vs2015 compilation fix + + * src/: include/pa_memory.h, main/pa_memory.C: VS2015 warning war + + * src/: lib/json/pa_json.C, classes/mail.C, classes/string.C: + VS2015 compilation fixes + + * src/classes/table.C: minor fix (related to feature #11) + + * tests/results/282.processed: no longer skipping extra enclosers + (related to feature #11) + + * src/classes/table.C: minor fix + no longer skipping extra + enclosers (related to feature #11) + + * src/classes/table.C: minor optimization (related to feature #11) + + * src/classes/table.C: minor fix and optimization (related to + feature #11) + +2016-09-20 moko + + * tests/: 353.html, results/353.processed: test for + PC.cclass->is_vars_local() check in one_big_piece in ^process[] + added (related to bug #1090) + + * src/main/compile.y: PC.cclass->is_vars_local() check added for + one_big_piece (fixes bug #1090) + + * tests/: 229.html, results/229.processed: code coverage tests + + * src/classes/op.C: bugfix: no more GPF if ^process[$context] (no + body) was called + + * src/classes/op.C: whitespace + + * tests/: 323.html, results/323.processed: test for code junction + should not be returned by ^reflection:class, ^reflection:base + + * src/classes/reflection.C: bugfix: code junction should not be + returned by ^reflection:class, ^reflection:base + + * tests/: 323.html, 352.html, results/352.processed: no more + exception for ^reflection:method[class;no-such-method] (related + to feature #1087) + + * src/classes/reflection.C: + ^reflection:method[class;no-such-method] : exception -> void + (related to feature #1087) + + * src/include/pa_request.h: request::write_value added to allow + write value without convertion (related to issue #1091) + +2016-09-19 moko + + * src/main/pa_random.C: windows build fix + + * src/types/pa_vhash.h: warning war + +2016-09-14 moko + + * tests/: 352.html, 552.html, results/352.processed, + results/552.processed: test for ^reflection:method[] extension + added (related to feature #1087) + + * tests/: 552.html, results/552.processed: test for + ^reflection:method[] extension added (related to feature #1087) + + * src/classes/reflection.C: compatibility issue fixed, VClass + dynamic_cast check added (related to feature #1087) + + * tests/: 351.html, results/351.processed: test for @auto[] + inheritance bug diring ^process[] added (related to bug #1088) + + * src/: classes/op.C, main/pa_request.C, + types/pa_vstateless_class.C: set_method now checks for @auto[] to + disable it inheritance during ^process (fixes bug #1088) + + * src/classes/reflection.C: ^reflection:method[$class:method;$self] + added (implements feature #1087) + +2016-09-13 moko + + * tests/: 349.html, results/auto.p: test for objects prototyping + added and $OBJECT-PROTOTYPE(false) is used for old tests (related + to feature #1086) + + * src/: main/pa_request.C, types/pa_vclass.C, types/pa_vclass.h, + types/pa_vobject.C: objects now are not class instances, but have + class as prototype, can be overridden by $OBJECT-PROTOTYPE(false) + in @conf (implements feature #1086) + +2016-09-08 moko + + * src/: classes/file.C, classes/mail.C, classes/string.C, + classes/table.C, main/pa_http.C, main/pa_string.C, + include/pa_string.h: cleanup: string::split limit argument + removed as no longer required, pos_after no longer reference + (related to feature #11) + + * src/classes/table.C, tests/results/348.processed: now exception + is rised when invalid option is passed to ^table::create[] + + * tests/: 282.cfg, 282.html, results/282.processed: more code + coverage tests + + * tests/: 348.html, results/348.processed: code coverage tests + added + + * tests/: 348.html, results/348.processed: generic ^table::create[] + tests + + * tests/: 035.html, results/035.processed, results/272.processed: + tests updated after $.encloser[] support for ^table::create + implementation (related to feature #11) + + * src/classes/table.C: $.encloser[] support for ^table::create + finally added (implements feature #11) + +2016-09-07 moko + + * src/include/pa_string.h: added StringSplitHelper as friend + (related to feature #11) + + * src/include/pa_string.h: body and langs now protected, not + private to allow inheritance (related to feature #11) + + * src/classes/table.C: lsplit optimized before cloning for + ^table::create with $.encloser[] (related to feature #11) + + * src/classes/table.C: optimizaion: TableControlChars.separators + added and used (related to feature #11) + + * src/classes/table.C: spelling: + + TableSeparators -> TableControlChars column -> separator + separators -> control_chars + +2016-09-06 moko + + * src/main/pa_string.C: whitespace + + * src/main/pa_string.C: whitespace + +2016-09-01 moko + + * tests/: 347-curl.html, results/347-curl.processed: to make tests + results OS-independent + + * src/: include/pa_http.h, main/pa_http.C: typo bugfix for clang + compiler (related to feature #1042) + +2016-08-15 moko + + * src/include/pa_string.h: whitespace + + * src/classes/table.C: whitespace + +2016-08-05 moko + + * tests/: 344.html, results/344.processed: test for + ^hash::create[$file] added (related to feature #1075) + + * src/types/: pa_vfile.h, pa_vmail.C: ^hash::create[$file] now + supported (implements feature #1075) + +2016-08-04 moko + + * tests/: 341.html, results/341.processed: more code coverage tests + + * tests/: 346-curl.html, results/346-curl.processed: more code + coverage tests for curl + + * tests/: 346-curl.html, results/346-curl.processed: more code + coverage tests for curl + + * tests/: 223-curl.html, 223.html, results/223-curl.processed, + results/223.processed: code coverage tests: $.form[ $.table[] ] + test added + + * tests/: 223-curl.html, results/223-curl.processed: more code + coverage tests for curl + +2016-08-03 moko + + * src/classes/curl.C: dlink(curl_library) now called not once, but + until it will be loaded, allowing to find existing library. + + * tests/: 346-curl.html, 347-curl.html, results/346-curl.processed, + results/347-curl.processed: more code coverage tests for curl + + * tests/: 339-curl.html, 339.html, 346-curl.html, Makefile, + results/339-curl.processed, results/346-curl.processed: curl + functionality tests + +2016-08-02 moko + + * tests/: 339.html, results/339.processed: test for tables in + ^file:load[] and ^curl:load[] (commented) added (related to + feature #1042) + + * tests/: 345.html, results/345.processed: code coverage tests for + file class + + * tests/: 344.html, results/344.processed: code coverage tests + + * tests/: 344.html, results/344.processed: mdate removed from + output + + * src/classes/file.C: minor bugfix: is_text should be taked from + fcontent.is_text_mode() if not set (related to feature #1061) + + * tests/: 344.html, results/344.processed: more tests + + * tests/: 343.html, 344.html, results/343.processed, + results/344.processed: tests for ^file::create[ $.from-charset + and $.to-charset ] (related to feature #1061) + + * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h: + aset_text_mode argument optimized + + * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h: + checkBOM now used in detect_binary_content (related to feature + #1061) + + * src/main/pa_request.C: load_charset no longer required to_upper + + * src/types/pa_vfile.C: bugfix: ^file::create[$text_file;...] now + preserves original file mode (if no $.mode specified) + + * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h: + ^file::create now supports $.from-charset[] and $.to-charset + options (implements feature #1061), automatic transcode is done + if text file is created from binary file and charset is detected. + +2016-07-30 moko + + * src/classes/table.C: ^t.hash[..;] now supported (related to + feature #1057) + + * tests/: 341.html, results/341.processed: test for ^t.hash[..;] + added (related to feature #1057) + + * tests/: 286.html, results/286.processed: code tests coverage + +2016-07-29 moko + + * src/classes/table.C: table size should be checked inside menu and + foreach (related to feature #858) + + * src/: classes/curl.C, classes/file.C, classes/string.C, + classes/xdoc.C, include/pa_charsets.h, main/pa_charsets.C, + main/pa_common.C, main/pa_http.C, main/pa_sql_driver_manager.C, + types/pa_vmail.C, types/pa_vrequest.C, types/pa_vresponse.C: + charsets.get now does str_upper inside (related to feature #1061) + + * tests/: 342.html, results/342.processed: more code coverage tests + + * tests/: 342.html, outputs/342.processed: table menu code coverage + + foreach test added (related to feature #858) + + * tests/: 341.html, results/341.processed: tests for + ^table.hash[]{code} added + code coverage tests (related to + feature #1057) + + * src/: include/pa_common.h, classes/table.C: ^table.hash[]{code as + value} support (implements feature #1057) + + * src/classes/table.C: whitespace + +2016-07-28 moko + + * src/: classes/curl.C, types/pa_vfile.C: curl now saves filename + from URL, if not specified query string removed from url-based + filenames in ^curl:load[] and ^file::load[] (related to feature + #1042) + +2016-07-27 moko + + * tests/: 340.html, results/340.processed: test for + transcode_text_result=false added (related to issue #1042) + +2016-07-26 moko + + * src/types/pa_vfile.C: file name should not be empty (if file path + is folder and ends with /) (related to feature #1042) + + * src/main/pa_http.C: whitespace optimizaion + + * src/: classes/curl.C, include/pa_common.h, include/pa_http.h, + main/pa_common.C, main/pa_http.C: ^curl:load[] now support + multiple headers, ^file::load supports headers transcoding + (implements feature #1042) + +2016-07-25 moko + + * src/include/pa_common.h: PA_DEFAULT added + +2016-07-22 moko + + * tests/: 338.html, results/338.processed: test for + $date.field(value) added (related to feature #1066) + + * src/: classes/date.C, types/pa_vdate.C, types/pa_vdate.h: + $date.field(value) now supported for y/m/d/h/m/s (implements + feature #1066) + +2016-07-21 moko + + * src/: classes/file.C, classes/image.C, include/pa_common.h, + main/pa_common.C: pa_common.h: File_read_action: fname, as_text + arguments removed; image.C - absolute path shown in exception + (implements feature #1071) + + * tests/: 235.html, results/235.processed: test and test result + updated after static boundary in mail and Errors-To: mail header + removed (related to feature #1047) + + * src/: classes/math.C, include/pa_random.h, main/pa_http.C, + main/pa_random.C, types/pa_vmail.C: get_uuid_boundary() added and + used, static boundary in mail removed, Errors-To: mail header + removed (implements feature #1047) + +2016-07-20 moko + + * src/: classes/reflection.C, types/pa_vstateless_class.h: + equest.classes(): Value -> VStateless_class, part 3 (related to + issue #1051) + + * src/: classes/reflection.C, include/pa_request.h, main/execute.C: + request.classes(): Value -> VStateless_class, part 2 (related to + issue #1051) + + * tests/results/: 224.processed, 323.processed: classes without + methods should not be methoded (related to issue #1051) + + * src/: classes/reflection.C, include/pa_request.h, main/compile.y, + main/compile_tools.h, main/pa_request.C: request.classes(): Value + -> VStateless_class, part 1 (related to issue #1051) + + * tests/: 337.html, results/337.processed: test for + ^reflection:fields_reference[] and VHashReference class added + (related to feature #1072) + + * src/: classes/hash.C, classes/json.C, classes/reflection.C, + types/pa_value.h, types/pa_vhash.h, types/pa_vobject.h: VHashBase + and VHashReference added, allowing ^reflection:fields_reference[] + implementation (closes feature #1072) + +2016-07-19 moko + + * tests/: 323.html, results/323.processed: we want to see + "methoded" + + * tests/: 336.html, results/336.processed: test for $BASE:property + and ^BASE:method (OP_VALUE__GET_BASE_CLASS) added (related to bug + #1059) + + * src/: include/pa_opcode.h, main/compile.y, main/execute.C, + types/pa_vstateless_class.h, types/pa_wcontext.h: no more + somebody_entered_some_class, $BASE:property works again, + ^BASE:method[] bugs fixed (fixes bug #1059) + +2016-07-14 moko + + * tests/: 335.html, results/335.processed: test for feature #1055 + added + + * src/classes/hash.C: bugfix: $._default was not copied if empty + feature: ^hash.contains[_default] added (implements feature + #1055) + +2016-07-13 moko + + * src/classes/reflection.C: bugfix: ^reflection:def[class;name] + should not call @autouse (http://www.parser.ru/forum/?id=83480) + +2016-07-05 moko + + * src/classes/hash.C: Optimization: HashStringValue::Iterator used + in ^hash.foreach (related to feature #1073) + +2016-07-04 moko + + * tests/: 134.html, 281.html, results/134.processed, + results/281.processed: tests updated after hash blocking removed + (related to feature #1073) + + * src/: classes/hash.C, include/pa_hash.h, types/pa_vhash.h: hash + no longer blocks on change during foreach (implements feature + #1073) + +2016-06-17 moko + + * tests/: 330.html, results/330.processed: try exception source + test added (related to bug in #1062) + + * tests/: 334.html, results/334.processed: Exception stack trace + test added (related to bug in $1062) + + * src/classes/op.C: Exception trace now correctly restored and + errors reported (related to bug #1062) + +2016-05-25 moko + + * src/main/compile.y: minor cleanup + beauty + +2016-05-24 moko + + * tests/: 333.html, results/333.processed: more exceptions testing + + * tests/: 332.html, results/332.processed: test for FIELDS_SYMBOL, + _DEFAULT_SYMBOL, CALLER_SYMBOL, SELF_SYMBOL added (related to + features #1056, #1026) + + * src/: classes/json.C, include/pa_symbols.h, main/pa_symbols.C, + types/pa_vhash.C, types/pa_vhash.h, types/pa_vtable.C, + types/pa_vtable.h: FIELDS_SYMBOL, _DEFAULT_SYMBOL added and used + (implements feature #1056) + + * src/: include/pa_symbols.h, main/compile.y, main/compile_tools.C, + main/execute.C, main/pa_symbols.C, types/pa_vjunction.C, + types/pa_vstateless_class.C, types/pa_vstateless_class.h: + CLASS_SYMBOL, CLASS_NAME_SYMBOL added and used (related to + feature #1026) + + * src/: classes/reflection.C, include/pa_symbols.h, main/compile.y, + main/compile_tools.C, main/compile_tools.h, main/pa_symbols.C, + types/pa_vmethod_frame.C, types/pa_vmethod_frame.h: Symbols now + have *_SYMBOL naming convention. STATIC_SYMBOL, DYNAMIC_SYMBOL, + LOCALS_SYMBOL, PARTIAL_SYMBOL, REM_SYMBOL where added (related to + feature #1026) + + * src/: include/pa_symbols.h, main/compile.y, main/compile_tools.C, + main/pa_globals.C, main/pa_symbols.C, types/pa_vmethod_frame.C, + types/pa_vmethod_frame.h, types/pa_vstateless_class.C: + SYMBOLS_CACHING define implemented (related to feature #1026) + + * src/main/main.vcproj: + ps_symbols + + * src/: include/Makefile.am, include/pa_string.h, + include/pa_symbols.h, main/Makefile.am, main/compile.tab.C, + main/compile.y, main/compile_tools.C, main/pa_symbols.C, + types/pa_vmethod_frame.C, types/pa_vmethod_frame.h, + types/pa_vstateless_class.C: initial implementation for symbols + cache (related to feature #1026) + + * src/: include/pa_common.h, main/pa_http.C: minor cleanup + + * src/main/pa_globals.C: minor cleanup + +2016-05-19 moko + + * src/types/pa_vhash.h: minor optimization: ^hash.fields[] removed + (related to feature #1046) + + * tests/: 331.html, results/331.processed: test for + BAD_NONWHITESPACE_CHARACTER_IN_EXPLICIT_RESULT_MODE removal added + (related to feature #1051) + + * src/main/compile.y: + BAD_NONWHITESPACE_CHARACTER_IN_EXPLICIT_RESULT_MODE error removed + (implements feature #1054) + +2016-05-18 moko + + * src/types/pa_vtable.C, tests/results/324.processed: no more + "column not found" exception for ^table.no-such-method[] (related + to feature #1046) + + * tests/: 261.html, results/261.processed: test added and updated + after feature #1046 implementation + + * src/: classes/string.C, types/pa_value.C, types/pa_vstring.h, + types/pa_vvoid.h: $string.anything works for whitespace strings, + ^string.contains added for hash compatibility, $string.method no + longer returns stting method (implements feature #1046) + +2016-05-12 moko + + * src/classes/curl.C: content-type response header no longer + ignored (fixes issue #1045) + + * tests/: 330.html, results/330.processed: test for incomplete + finally execution when break occures added (related to issue + #1077) + + * src/classes/op.C: bugfix: Request::skip reset is called before + executing catch and finally code (fixes issue #1062) + +2016-05-11 moko + + * tests/: 329.html, results/329.processed: test for invalid + ^break[] behavour added (bug #1077) + + * src/classes/op.C: try_catch code cleanup (related to bug #1062) + +2016-04-24 moko + + * src/types/pa_vstateless_class.h: warning war + +2016-04-17 moko + + * tests/: 328.html, results/328.processed: test for + ^break(condition) and ^continue(condition) (related to feature + #1063) + + * src/classes/op.C: ^break(condition) and ^continue(condition) + implemented (feature #1063) + +2016-04-12 moko + + * tests/results/280.processed: ordered hash now used for class + methods and properties (test results updated for feature #1069) + + * src/classes/: xdoc.C, xnode.C: xnode_class initialization moved + to xdoc.C as under FreeBSD it was inited after and inheritance + failed (related to issue #1051) + + * tests/: 320.html, results/320.processed: xdoc and xnode methods + are printed to check inheritance (related to feature #1051) + 2016-04-09 moko * tests/results/320.processed: ordered hash now used for class @@ -1232,10 +5363,6 @@ main/pa_stylesheet_connection.C: forgotten to be replaced XmlException is now replaced (once again closes issue #938) -2013-10-19 misha - - * bin/auto.p.dist.in: - more mime-types are added - 2013-10-18 moko * buildall: disable clock_gettime detection to avoid librt linking @@ -1534,8 +5661,6 @@ * src/types/pa_vmemcached.C: LT_MODULE_EXT used - * bin/auto.p.dist.in: libpq.so -> libpq. - * src/classes/curl.C: LT_MODULE_EXT used * src/include/pa_config_fixed.h: LT_MODULE_EXT defined @@ -1654,10 +5779,6 @@ 2013-07-07 moko - * bin/auto.p.dist.in: windows-1251 commented to remove auto.p - dependense from $charsetsdir directory existance and content (and - UTF-8 is default allready) - * AUTHORS: + misha + moko. :) 2013-07-06 moko @@ -2107,8 +6228,6 @@ * src/targets/apache/Makefile.am: updated for libtool usage - * bin/auto.p.dist.in: .cfg removed from charset names. - * buildall-without-xml: --with-included-ltdl added * buildall-without-xml: sync with buildall-with-xml @@ -2202,10 +6321,6 @@ debian/patches/101_pcre.patch - local copy of pcre_internal.h extracts now used old trash removed - * bin/auto.p.dist.in: all charsets are listed, utf-8 by default, - rare charsets/drivers are commented, sql driver quessing removed - (debian/patches/103_auto_p.patch) - * etc/parser3.charsets/Makefile.am: charsets now in share (debian/patches/104_automake.patch) + all charsets are copied @@ -6767,8 +10882,6 @@ 2007-02-20 misha - * bin/auto.p.dist.in: - added lines for sqlite - * configure.in: - added some strings for sqlite detection 2007-02-19 misha @@ -7028,11 +11141,6 @@ * src/classes/file.C: - empty args in file::exec removed now -2006-09-11 misha - - * bin/auto.p.dist.in: - 2 errors were fixed - table::set was - replaced to table::create - some changes in text/code formatting - 2006-09-03 paf * src/classes/file.C: proper tainting of @@ -7975,12 +12083,6 @@ 2005-08-08 paf - * bin/auto.p.dist.in: merged . apache bad 404 handling workaround - integrated - - * bin/auto.p.dist.in: . apache bad 404 handling workaround - integrated - * src/main/: compile.tab.C, compile.y, compile_tools.C, compile_tools.h: merged + optimized constants in expressions vstring->vdouble + optimized ^call(vdouble), no junction @@ -9312,7 +13414,7 @@ main/main.vcproj, main/pa_globals.C, main/pa_xml_io.C: change: .xsl.stamp now not used, introducing dependencies timestamp check - * configure.in, bin/auto.p.dist.in: auto.p: @conf made relative + * configure.in: auto.p: @conf made relative 2004-02-12 paf @@ -9871,8 +13973,6 @@ * src/types/: pa_value.h, pa_vfile.h: more C++ compatible [HP C++ failed] - * bin/auto.p.dist.in: colno - 2003-11-10 paf * src/types/pa_vconsole.h: flush @@ -14030,13 +18130,11 @@ * src/main/pa_string.C: string.replace fixed [were missing words on pieces boundaries] - * bin/auto.p.dist.in: strange \n - * configure, configure.in: .so now detected [can be .sl on hpux, .dll on cygwin, .so in other cases) - * configure, configure.in, bin/auto.p.dist.in: .so now detected - [can be .sl on hpux, .dll on cygwin, .so in other cases) + * configure, configure.in: .so now detected [can be .sl on hpux, + .dll on cygwin, .so in other cases) * operators.txt, src/classes/hash.C, src/classes/table.C, src/include/pa_globals.h, src/main/pa_globals.C: table.sql @@ -14237,8 +18335,7 @@ * src/: main/execute.C, types/pa_vobject.h: fixed virtual calls - * bin/auto.p.dist.in, src/targets/cgi/parser3.C, - src/types/pa_vfile.C, src/types/pa_vmail.C: + * src/: targets/cgi/parser3.C, types/pa_vfile.C, types/pa_vmail.C: $mail.received.file.value.content-type fixed 2002-08-20 paf @@ -14435,10 +18532,6 @@ VAliased [redundant], moved $CLASS to VObject only [parser class instance] - * bin/auto.p.dist.in: more like in dist on parser.ru - - * bin/auto.p.dist.in: fixed sendmail default comment - * src/main/pa_request.C: $response:body[file] content-type check fixed [were bad when content-type is hash] @@ -14522,8 +18615,6 @@ * src/main/pa_request.C: case insensitive mime_type_of - * bin/auto.p.dist.in: jpeg - 2002-08-05 paf * src/types/pa_vxnode.C: xnode.childNodes now 0... [were 1...] @@ -14550,8 +18641,6 @@ * configure, configure.in, src/include/pa_version.h: release 3_0_0005 - * bin/auto.p.dist.in: unhandled_exception comments - * src/types/: pa_vclass.h, pa_vform.C, pa_vobject.h: opera multipart post fixed @@ -14607,7 +18696,7 @@ types/pa_vstring.h, types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h, types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C, - types/pa_wcontext.h, types/pa_wwrapper.h: $Date: 2016/04/08 22:49:23 $ + types/pa_wcontext.h, types/pa_wwrapper.h: Date: now * src/: classes/classes.C, classes/classes.dsp, classes/classes.h, classes/date.C, classes/double.C, classes/file.C, classes/form.C, @@ -14778,9 +18867,9 @@ * src/main/pa_request.C: configure_admin forced if no @conf - * operators.txt, bin/auto.p.dist.in, src/classes/math.C, - src/types/pa_vmail.C: ^math:crypt updated to generate random salt - when needed and to call system crypt() if not $apr1$ prefix + * operators.txt, src/classes/math.C, src/types/pa_vmail.C: + ^math:crypt updated to generate random salt when needed and to + call system crypt() if not $apr1$ prefix 2002-06-24 paf @@ -14859,14 +18948,13 @@ 2002-06-20 paf - * INSTALL, configure, configure.in, operators.txt, bin/Makefile.am, - bin/auto.p.dist.in, src/classes/file.C, src/classes/op.C, - src/doc/doxygen.cfg, src/include/pa_globals.h, - src/include/pa_request.h, src/main/execute.C, - src/main/pa_request.C, src/targets/cgi/parser3.C, - src/targets/isapi/parser3isapi.C, src/types/pa_vmethod_frame.h: - marged latest HEAD updates, mainly file:justname&co & - @auto/conf[filespec + * INSTALL, configure, configure.in, operators.txt, + src/classes/file.C, src/classes/op.C, src/doc/doxygen.cfg, + src/include/pa_globals.h, src/include/pa_request.h, + src/main/execute.C, src/main/pa_request.C, + src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C, + src/types/pa_vmethod_frame.h: marged latest HEAD updates, mainly + file:justname&co & @auto/conf[filespec * operators.txt, src/classes/file.C: !^file:dirname[/a/some.tar.gz]=/a @@ -14879,12 +18967,9 @@ main/pa_request.C, types/pa_vmethod_frame.h: introducing @conf/auto[filespec] - * bin/auto.p.dist.in: - * configure: parser3.conf renamed to auto.p autoconf changes - * INSTALL, configure.in, operators.txt, bin/Makefile.am, - bin/auto.p.dist.in, src/doc/doxygen.cfg, + * INSTALL, configure.in, operators.txt, src/doc/doxygen.cfg, src/include/pa_globals.h, src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C: parser3.conf renamed to auto.p @@ -14895,7 +18980,7 @@ * INSTALL: reflected .conf.dist dir change - * Makefile.am, configure, configure.in, bin/Makefile.am, + * Makefile.am, configure, configure.in, etc/parser3.charsets/Makefile.am: parser3.conf.dist moved to bin, .in & *.am updated @@ -14903,8 +18988,7 @@ * src/classes/file.C: strcasecmp - * bin/Makefile.am, etc/Makefile.am: bin/parser3.conf.dist [moved - from etc + * etc/Makefile.am: bin/parser3.conf.dist [moved from etc * src/classes/file.C: ^file::exec[script;$.bad error case insensitive check now @@ -18695,7 +22779,7 @@ main/pa_hash.C, main/pa_pool.C, main/pa_request.C, main/pa_socks.C, main/pa_sql_driver_manager.C, main/pa_string.C, main/pa_table.C, main/untaint.C, targets/cgi/parser3.C, - targets/isapi/parser3isapi.C: static char *RCSId="$Id: ChangeLog,v 1.103 2016/04/08 22:49:23 moko Exp $"; + targets/isapi/parser3isapi.C: static char *RCSId="Id"; * src/main/: compile.y, compile_tools.h: $:name: == ${name}: $class:name: == ${class:name}: @@ -21510,9 +25594,9 @@ * src/include/: pa_pool.h, pa_string.h: pa_pool split - * src/main/: main.dsp, pa_string.C: $Id: ChangeLog,v 1.103 2016/04/08 22:49:23 moko Exp $ check + * src/main/: main.dsp, pa_string.C: Id check - * src/: main/pa_pool.C, main/pa_string.C, include/pa_pool.h: $Id: ChangeLog,v 1.103 2016/04/08 22:49:23 moko Exp $ + * src/: main/pa_pool.C, main/pa_string.C, include/pa_pool.h: Id check * src/: include/pa_pool.h, main/pa_string.C: String prealloc &