--- parser3/ChangeLog 2020/05/25 02:05:07 1.136 +++ parser3/ChangeLog 2024/12/23 02:05:15 1.211 @@ -1,3 +1,2630 @@ +2024-12-21 moko + + * Makefile.am: +operators.ru.txt + + * operators.ru.txt, operators.txt: typo fixed + +2024-12-20 moko + + * operators.txt: whitespace synced + + * operators.ru.txt, operators.txt: curl added + + * operators.ru.txt, operators.txt: logically sorted + + * operators.ru.txt: id added + + * operators.txt: ID added + + * operators.txt: translated + + * operators.ru.txt, operators.txt: operators.txt translated to + english, synced format with operators.ru.txt + + * operators.ru.txt, operators.txt: renamed to operators.ru.txt, + formatted + + * operators.ru.txt, operators.txt: formatted, actualized, oracle + info moved to separate file + +2024-12-19 moko + + * src/targets/cgi/parser3.C: avoid parser version requests logging + in parser3.log + +2024-12-18 moko + + * buildall: preventing --with-system-mailreceive linking with + libglib-2.0/libgobject-2.0 left from --with-mailreceive (related + to feature #1199) + +2024-12-16 moko + + * operators.ru.txt, operators.txt: actualized for 3.5.0 + + * src/classes/table.C: exception text fixed + +2024-12-15 moko + + * tests/: 102.html, results/102.processed: tests updated after + $form:fields not editable again (related to feature #1254) + + * src/types/pa_vform.C: $form:tables/files (not $form:fields) can + be edited (related to feature #1254) + + * src/types/pa_vform.C: reverted that + $form:fields/tables/files/imap can be edited (related to feature + #1254) for backward compatibility + +2024-12-14 moko + + * operators.ru.txt, operators.txt: + array in operators.txt + + * tests/results/auto.p: avoid $mac execution unless on OS X + + * tests/388-sql.html: more OS support + +2024-12-13 moko + + * tests/388-sql.html: sql tests under OS X now fixed + + * tests/results/auto.p: curl test under OS X now works + + * tests/: 346-curl.html, 347-curl.html, results/347-curl.processed: + no dll name under Windows, hiding + + * tests/: 379-curl.html, results/379-curl.processed: some curl + versions accept "HTTP/1.0 200OK? OK" status, some not, ignore + + * tests/: 030.html, 212.html, 219.html, 273.html, 346-curl.html, + 389.html, results/030.processed, results/212.processed, + results/219.processed, results/273.processed, + results/320.processed, results/346-curl.processed, + results/389.processed, results/auto.p: ^try-catch-filtered added + and used + + * tests/: 347-curl.html, results/347-curl.processed: support for + different error messages + + * src/classes/curl.C: several curl libraries supported, + ^curl:options[ $.library[] ] resets to default + + * tests/: 223-curl.html, results/223-curl.processed: CONTENT_LENGTH + removed as depends on curl version + + * tests/results/: 223-curl.processed, 394-curl.processed: curl + fixed bug with \n in file names, test result updated + + * tests/388-sql.html: +libmysqlclient.so + + * etc/auto.p.in: +libmariadb + +2024-12-12 moko + + * tests/: 388-sql.html, results/429-sql.processed: test results + updated after test changed + + * tests/: 388-sql.html, 428-sql.html, 429-sql.html: tests updated + for newer MariaDB compatibility + + * tests/: 388-sql.html, 429-sql.html, results/388-sql.processed, + results/429-sql.processed: key -> id for new MariaDB + compatibility + + * src/types/pa_vmethod_frame.h: warning war + + * src/: include/pa_charset.h, main/pa_charset.C: Adopted patch from + Yavor Doganov with extra libxml2 headers + including for Debian package + +2024-12-11 moko + + * src/: targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C, types/pa_vstatus.C: + $status:log-filename added (related to feature #1262) + + * tests/: 440.html, results/440.processed: test for row is checked + before accessing when table is modified during select (related to + bug #1258) + + * src/: classes/table.C, include/pa_table.h: row should be checked + before accessing as table can be modified during select (related + to bug #1258) + + * src/types/pa_vmail.C: $mail:received tables -> elements array + (related to feature #1226) + + * src/: classes/file.C, classes/image.C, classes/table.C, + include/pa_exception.h: FIRST_ARG_MUST_NOT_BE_CODE replace with + better messages (related to feature #1267) + + * tests/results/: 065.processed, 246.processed, 337.processed, + 342.processed, 352.processed, 356.processed, 364.processed, + 372.processed, 373.processed, 389.processed, 404.processed, + 406.processed, 414.processed, 430.processed, 432.processed, + 442.processed: tests updated after params.as_string error + reporting was improved (related to feature #1267) + + * src/classes/reflection.C: error messages optimized (related to + feature #1267) + + * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: even better + error reporing for params.as_* (related to feature #1267) + + * src/: classes/file.C, classes/string.C, include/pa_exception.h: + MODE_MUST_NOT_BE_CODE -> MODE_MUST_BE_STRING (related to feature + #1267) + + * tests/results/: 246.processed, 414.processed, 432.processed: + tests updated after params.as_string error reporting was improved + (related to feature #1267) + + * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: better error + reporing for params.as_string (implements feature #1267) + + * tests/: 065.html, results/065.processed: tests for file methods + accepting file as filename added (related to feature #1265) + + * src/: classes/file.C, include/pa_exception.h, + types/pa_vmethod_frame.C, types/pa_vmethod_frame.h: some file + methods now accept file as path specification (adopted Sumo patch + implements feature #1265) + + * tests/: 400.html, results/400.processed: tests for result + optimization "locks" after first method call (related to feature + #1266) + +2024-12-10 moko + + * src/types/: pa_method.h, pa_vmethod_frame.h: detailed + result_optimization comments (related to feature #1266) + + * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: optimization: + $result now stored in my_result, not in local variables hash + (implements feature #1266) + +2024-12-09 moko + + * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: my.set -> + set_my_variable in preparation for $result optimization (related + to feature #1266) + + * tests/results/119.processed: newline corrected for some OS + + * tests/: 441.html, results/441.processed: Debian-specific test + commented + + * buildall: pcre2 10.42 -> 10.44 + +2024-12-08 moko + + * buildall: external links fixed + + * src/include/pa_version.h: 3.4.7b -> 3.5.0rc + + * src/include/pa_table.h: some clang versions compilation fix + + * configure.ac: 3.4.7b -> 3.5.0rc + +2024-12-07 moko + + * tests/: 443.html, 444.html, results/443.processed, + results/444.processed: tests for named params (related to feature + #1205) + + * src/: classes/reflection.C, types/pa_method.h: named_params + support in reflection (related to feature #1205) + + * src/types/pa_vmethod_frame.h: extra_params and named params + should be also inited in ^method[] call (related to feature + #1205) + + * src/types/: pa_method.h, pa_vmethod_frame.h: named arguments + support using @method[arg;.named_arg;.named_arg2] syntax + (implements feature #1205) + + * tests/: 443.html, results/443.processed: test for *args inited + added (related to bug #1264) + + * src/types/pa_vmethod_frame.h: *args are now inited even if not + specified (fixes bug #1264) + + * tests/: 442.html, results/442.processed: tests for + params.as_file_name(N) with empty file name added (related to + feature #1121) + + * src/: classes/file.C, classes/hashfile.C, classes/image.C, + classes/op.C, classes/string.C, classes/table.C, classes/xdoc.C, + include/pa_exception.h, types/pa_vmethod_frame.h: + params.as_file_name(N) added and used instead of + params.as_string(1, FILE_NAME_MUST_BE_STRING) where appropriate + (implements feature #1121) + + * src/: classes/file.C, classes/image.C, classes/op.C, + classes/table.C, include/pa_exception.h: filename is everywhere + params.as_string, unify exception and remove + FILE_NAME_MUST_NOT_BE_CODE (related to feature #1121) + + * tests/: 141.html, results/141.processed: test for + ^math:digest[...; $.hmac[$file] $.format[file] ] added (related + to feature #1263) + + * src/classes/math.C: ^math:digest[...; $.hmac[$file] + $.format[file] ] now supported (implements feature #1263) + +2024-12-06 moko + + * src/: targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C, types/pa_vstatus.C: $status:mode + (cgi/console/mail/httpd/apache/isapi) added (related to feature + #1262) + +2024-12-05 moko + + * src/targets/cgi/parser3.C: more correct arguments processing to + block -fl config.file log.file logic (related to feature #1262) + +2024-12-04 moko + + * src/targets/cgi/parser3.C: now only one log location is selected + and tried. -l - supported for stderr specification (related to + feature #1262) + +2024-12-03 moko + + * tests/: 010.html, 415_dir/30.p, 415_dir/31.p, + results/010.processed, results/415.processed: tests for + $.(expression)[value], $a.(expression), ^v.(expression)[args] + added (related to feature #1064) + + * src/main/compile.y: $.(expression)[value], $a.(expression), + ^v.(expression)[args] now supported (implements feature #1064) + +2024-12-02 moko + + * src/targets/cgi/parser3.C: -l /path/to/log options added + (implements feature #1262) + +2024-12-01 moko + + * tests/: 010.html, results/010.processed: some tests related to + bug #1149 added + + * src/main/compile.y: the check pc.pos.col > 1 is not required + because we can't be here without a '$' before. The begin == end + check was incorrect since $[a]{b} fits this condition (fixes bug + #1149) + +2024-11-29 moko + + * src/classes/array.C: warning war + +2024-11-26 moko + + * tests/: 441.html, results/441.processed: a bit more testing + (related to bug #1238) + + * src/main/pa_exec.C: only " now quoted (related to bug #1239) + + * src/main/pa_exec.C: simplification arg_quote added (related to + bug #1229) + +2024-11-25 moko + + * src/main/pa_exec.C: separated cmd_quote and exe_quote (related to + bug #1239) + +2024-11-24 moko + + * src/main/pa_exec.C: added cmd.exe specific + + * tests/: 441.html, cat-windows.sh, cat.sh, results/441.processed: + tests for ^file::exec env and args tainting tests (related to bug + #1239) + + * src/main/pa_exec.C: shell_quote added (partial fix for bug #1239) + + * src/include/pa_config_includes.h: added recommendations for + libxslt.a and and libexslt.a compilation under cygwin + + * tests/results/102.processed: $form:fields.value is now writable, + as $form:value (related to feature #1254) + + * src/include/pa_config_includes.h: cigwin compilation fixes + +2024-11-23 moko + + * tests/httpd/site/run_server.sh: to simplify testing + + * tests/httpd/: 030.txt, 031.curl, 040.txt, ok.log, run_tests.sh, + site/form.html: $form:files and $form:elements tests added, tests + with curl supported (related to feature #1254) + + * src/: include/pa_symbols.h, main/pa_symbols.C, types/pa_vform.C, + types/pa_vform.h: $form:elements implemented, VForm::get_element + uses faster SYMBOLS_EQ, hashes no longer copied when using + $form:fields/tables/files/imap and can be edited (implements + feature #1254) + + * src/main/pa_http.C: pa_send added to handle partial writes (fixes + bug #1261) + +2024-11-17 moko + + * tests/: 440.html, results/440.processed: tests for + ^table.array[], offset restoration, iterators robust tests + (related to bug #1258, features #1259 and #1260) + + * tests/: 439.html, results/439.processed: array and hash iterators + robust tests (related to feature #1260) + + * src/: classes/array.C, classes/table.C, include/pa_array.h, + include/pa_table.h: Array_robust_iterator added and used in cases + where array can be modified during iteration (implements feature + #1260) + + * src/classes/table.C: ^table.array[], ^table.array[column name], + ^table.array{code} added (implements feature #1259) + +2024-11-16 moko + + * src/: classes/table.C, include/pa_table.h, main/pa_table.C: fixed + table current row restoration after exception and table changes + (fixes bug #1258) + +2024-11-13 moko + + * src/classes/table.C: minor optimization + + * src/main/pa_string.C: \r added to default ^string.trim chars list + (https://www.parser.ru/forum/?id=86648) + +2024-11-11 moko + + * src/classes/classes.C: set_base commented + + * src/classes/: classes.C, xdoc.C: cleanup after classes.awk + deleted + + * src/classes/classes.vcproj: no more classes.awk and classes.inc + + * src/classes/: Makefile.am, classes.awk: no more classes.awk and + classes.inc + + * src/: classes/classes.C, classes/classes.awk, classes/classes.h, + main/pa_globals.C: classes.awk is useless, preparing to delete it + + * src/classes/classes.h: temp fix + +2024-11-10 moko + + * src/: classes/date.C, classes/file.C, classes/image.C, + classes/op.C, main/pa_string.C: minor optimization + + * src/: classes/date.C, classes/file.C, classes/image.C, + classes/op.C, main/pa_string.C: typo fixed + + * src/: classes/classes.awk, classes/classes.h, classes/date.C, + classes/file.C, classes/image.C, classes/op.C, + main/pa_charsets.C, main/pa_string.C: singletones used to reduce + memory allocation befor main(). Only 3 allocations in chatsets + left (implements feature #1257) + + * src/targets/: apache/mod_parser3_core.C, isapi/parser3isapi.C: + minor naming convention fix + + * tests/: 437.html, 438.html, httpd/ok.log, httpd/site/029.html, + results/436.processed, results/437.processed, + results/438.processed: tests for @unhandled_exception processing + (related to feature #1256) + + * src/: main/pa_request.C, targets/apache/mod_parser3_core.C, + targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C: Exceptions in @unhandled_exception + are now processed in request::core for correct logging and + reporting (feature #1256) + + * src/: include/pa_sapi.h, main/pa_request.C, + targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, + targets/isapi/parser3isapi.C: unhandled exception now called if + exception occures during $response:download processing (related + to bug #1255) + + * etc/auto.p.in: better 404 error reporting + +2024-11-09 moko + + * src/main/pa_memory.C: more detailed usage comment + + * src/main/pa_memory.C: usage commented + + * src/main/pa_memory.C: minor cleanup + + * src/types/: pa_varray.h, pa_vregex.h: warnings war + + * tests/: 436.html, httpd/029.txt, httpd/ok.log, + httpd/site/029.html, results/436.processed: test for exception in + $response:download[] added + + * src/targets/cgi/parser3.C: sync CGI mode behavior with httpd mode + and avoid exit status 1 on die + + * tests/results/: 007.processed, 019.processed, 098.processed, + 103.processed, 233.processed: windows headers matter for binary + files + + * tests/httpd/ok.log: tests results updated as extra headers now + cleared on error (related to bug #1255) + + * 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: headers buffering to avoid extra + headers in errors, custom send_error in cgi/httpd mode to avoid + memory allocations (fixes bug #1255) + +2024-11-07 moko + + * tests/: 264.html, results/264.processed: tests updated to test + removal of only trailing empty arguments for backward + compatibility (related to feature #1252) + + * src/classes/file.C: remove trailing empty arguments for backward + compatibility (related to feature #1252) + +2024-11-05 moko + + * src/targets/cgi/: pa_sapi_info.h, parser3.C: avoid GPF in very + low memory case, when static initialization failed even before + main() start + +2024-11-04 moko + + * configure, src/include/pa_config_auto.h.in, + src/include/pa_config_fixed.h: _locking no longer used + + * configure.ac: _locking no longer used (related to bug #1231) + + * src/main/pa_os.C: lock error fine-tuning (related to bug #1231) + + * src/main/pa_os.C: lock errors tuning (related to bug #1231) + + * src/lib/sdbm/: pa_file_io.C, pa-include/pa_file_io.h: remove + unused + + * src/: lib/sdbm/pa_file_io.C, main/pa_common.C: errno should not + be used on locking errors (related to bug #1231) + + * src/main/pa_os.C: GetLastError used as errno is not set (related + to bug #1231) + + * src/main/pa_os.C: under windows _locking replaced with LockFileEx + allowing shared lock to work (fixes bug #1231) + + * INSTALL: actualized, minor fixes + + * etc/auto.p.in: default LIMITS added + + * AUTHORS: links actualized + + * src/: classes/array.C, 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_varray.C, types/pa_varray.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 + +2024-10-28 moko + + * src/classes/array.C: avoid invalidate() + + * src/: classes/array.C, types/pa_varray.h: minor optimization for + fused to survive in ^array::copy[$a] (related to feature #930) + + * src/types/pa_varray.h: minor optimization as last element is + allways defined if present + + * tests/: 435.html, results/435.processed: tests for + ^hash.set[first|last;value], ^hash.set([-+]index)[value] and same + for array added (related to feature #1253) + + * src/classes/array.C: typo fixed + + * src/classes/: array.C, hash.C: ^hash.set[first|last;value] + + ^hash.set([-+]index)[value], and same for array added (implements + feature #1253) + + * tests/results/: 246.processed, 298.processed, 342.processed, + 389.processed, 397.processed, 430.processed, 432.processed: tests + results update after minor exceptions texts fixes + +2024-10-27 moko + + * src/: classes/array.C, classes/hash.C, classes/math.C, + classes/reflection.C, classes/string.C, classes/table.C, + main/pa_string.C, types/pa_varray.h, types/pa_vfile.C, + types/pa_vmethod_frame.h: handy as_index() added, several + exceptions texts fixed (related to feature #930) + + * src/: classes/array.C, types/pa_varray.h: non-working + $array.fields removed, ^array.delete[index] supported (related to + feature #930) + + * tests/: 431.html, results/431.processed: tests updated after + ^a.delete[3] supported + + * tests/: 431.html, 434.html, results/434.processed: tests for last + element used, push/pop, exceptions during arguments processing + and used caching (related to feature #930) + + * src/: classes/array.C, types/pa_varray.h: change_used added for + better used caching and now no issues if exception occures during + append arguments processing (related to feature #930) + + * src/: classes/array.C, types/pa_varray.h: ^array.push[] / + ^array.pop[] added, last element is allways used (related to + feature #930) + +2024-10-26 moko + + * src/: classes/array.C, include/pa_array.h, types/pa_varray.C, + types/pa_varray.h: confirm_all_used added where possible (related + to feature #930) + + * src/: classes/array.C, include/pa_array.h, types/pa_varray.h: + small array optimizations (related to feature #930) + + * src/types/pa_varray.h: DEBUG_ARRAY_USED added to simplify testing + + * tests/: 431.html, results/431.processed: test for + ^array.compact[undef] added + + * src/classes/array.C: ^array.compact[] now have optional 'undef' + argument to also compact undefined elements (related to feature + #930) + +2024-10-24 moko + + * src/: classes/array.C, types/pa_varray.C, types/pa_varray.h: + VArray::hash is used rarery, no longer caching the result + + * tests/results/432.processed: testing removed from tests + +2024-10-23 moko + + * tests/: 431.html, results/431.processed: ^array.compact[] test + added + + * src/: classes/array.C, types/pa_varray.h: ^array.compact[] added + + * tests/: 432.html, results/432.processed: testing ^array.at[] for + both "solid" and "sparse" arrays + + * src/classes/array.C: ^array.at[] speedup for "solid" arrays + +2024-10-22 moko + + * tests/results/264.processed: spelling + + * src/classes/file.C: spelling + + * tests/: 264.html, cat-windows.sh, cat.sh, results/264.processed: + tests updated after ^file::exec[cmd;;$array] implemented and + empty arguments not skipped (related to feature #1252) + + * src/classes/file.C: ^file::exec[cmd;;$array] supported + (implements feature #1252) bugfix: empty arguments no longer + skipped + +2024-10-21 moko + + * tests/httpd/: 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, + 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, + 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, + 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, + 028.txt, 030.txt, ok.log, run_tests.sh, site/httpd.p, + site/index.html, site/test.txt: httpd tests added + +2024-10-20 moko + + * src/classes/string.C: warnings war + + * src/: main/pa_string.C, classes/array.C: warnings war + + * src/classes/json.C: warnings war + + * src/classes/image.C: warnings war + + * src/: classes/table.C, types/pa_varray.C: warnings war + + * src/classes/array.C: warning war + + * src/: classes/classes.vcproj, types/types.vcproj: vcproj: +=array + + * src/main/main.vcproj: warnings war + +2024-10-19 moko + + * tests/427.html: test updated after constructors renamed + +2024-10-18 moko + + * tests/: 421.html, 430.html, 431.html, 432.html, 433.html, + results/421.processed, results/430.processed, + results/431.processed: test updated after constructors renamed + + * src/classes/array.C: create -> copy, new -> create according to + https://www.parser.ru/forum/?id=86603 discussion (related to + feature #930) + +2024-10-16 moko + + * src/classes/json.C: $json:array[array or hash] added to provide + more backward compatibility (implements feature #1251) + +2024-10-15 moko + + * tests/: 421.html, results/421.processed: test results updated + after missing constuctor error check added and array is_index + check added + + * src/main/execute.C: absent constructor message fixed + +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.ru.txt, 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: @@ -508,8 +3135,6 @@ 2018-01-11 moko - * bin/auto.p.dist.in: sqlite3 -> libsqlite3 - * src/classes/xdoc.C: xmlReadMemory/xmlReadFile now used with XML_PARSE_HUGE option passed by default (implements feature #1181) @@ -778,7 +3403,7 @@ 2017-02-20 moko - * operators.txt: actualization + beauty + * operators.ru.txt, operators.txt: actualization + beauty 2017-02-16 moko @@ -846,9 +3471,9 @@ 2017-02-08 moko - * operators.txt: actualization 15% completed + * operators.ru.txt, operators.txt: actualization 15% completed - * operators.txt: cp1251 -> utf-8 + * operators.ru.txt, operators.txt: cp1251 -> utf-8 * NEWS, README: minor update @@ -2396,7 +5021,7 @@ 2015-10-29 moko - * operators.txt: updated for 3.4.4 + * operators.ru.txt, operators.txt: updated for 3.4.4 * configure.ac, src/include/pa_version.h: 3.4.4rc -> 3.4.4 @@ -2781,10 +5406,11 @@ * src/classes/date.C: minor fix related to feature #1032 - * operators.txt: ISO date creation documented (related to feature - #1032) + * operators.ru.txt, operators.txt: ISO date creation documented + (related to feature #1032) - * operators.txt: iso-string documented (related to feature #1032) + * operators.ru.txt, operators.txt: iso-string documented (related + to feature #1032) * tests/: 315.html, results/315.processed: more tests added (related to feature #1032) @@ -2820,9 +5446,10 @@ 2015-09-05 moko - * operators.txt: actualized + * operators.ru.txt, operators.txt: actualized - * operators.txt: date changes documented (related to ticket #36) + * operators.ru.txt, operators.txt: date changes documented (related + to ticket #36) 2015-09-04 moko @@ -3474,10 +6101,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 @@ -3776,8 +6399,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 @@ -3815,9 +6436,9 @@ * src/targets/cgi/: Makefile.am, getopt.c, getopt.h, parser3.vcproj: unused getopt.h / getopt.c removed - * operators.txt, src/classes/file.C, tests/022.html, - tests/results/022.processed: ^file:list[path][$.filter[regexp] - $.stat(true)] usage commented + * operators.ru.txt, operators.txt, src/classes/file.C, + tests/022.html, tests/results/022.processed: + ^file:list[path][$.filter[regexp] $.stat(true)] usage commented * configure.in, src/classes/file.C, src/include/pa_dir.h, src/main/pa_dir.C: ^file:list[] now has dir column and when @@ -3896,10 +6517,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 @@ -4349,8 +6966,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 @@ -4444,10 +7059,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 @@ -5067,7 +7678,8 @@ 2011-05-18 misha - * operators.txt: - info about json-serialization of xdoc was added + * operators.ru.txt, operators.txt: - info about json-serialization + of xdoc was added * tests/256.html: - tests for json-serialization xdoc were added @@ -5130,9 +7742,9 @@ 2011-02-22 misha - * src/include/pa_charset.h, operators.txt: - some methods mustn't - be under #ifdef XML or parser can't be compiled without xml - support + * src/include/pa_charset.h, operators.ru.txt, operators.txt: - some + methods mustn't be under #ifdef XML or parser can't be compiled + without xml support 2011-02-21 misha @@ -5240,11 +7852,11 @@ 2010-11-25 moko - * operators.txt: $.indent(true) + * operators.ru.txt, operators.txt: $.indent(true) - * operators.txt: another bugfix. :) + * operators.ru.txt, operators.txt: another bugfix. :) - * operators.txt: bugfix. :) + * operators.ru.txt, operators.txt: bugfix. :) * buildall-with-xml: libxml2-2.7.8 + with-apache @@ -5291,7 +7903,8 @@ 2010-11-18 moko - * operators.txt: $.table[compact] added for ^json:string[] + * operators.ru.txt, operators.txt: $.table[compact] added for + ^json:string[] 2010-11-16 moko @@ -5447,7 +8060,7 @@ * src/classes/math.C: - error in math:convert was fixed - * operators.txt: - info about + * operators.ru.txt, operators.txt: - info about ^math:convert[number](from-base;to-base) was added * src/classes/math.C: - method @@ -5507,8 +8120,8 @@ 2010-10-02 misha - * operators.txt: - the X mark was removed from ^cache[file]. it is - usable to delete cache file. + * operators.ru.txt, operators.txt: - the X mark was removed from + ^cache[file]. it is usable to delete cache file. 2010-10-02 moko @@ -5575,7 +8188,8 @@ 2010-09-17 misha - * operators.txt: - info about json class was added + * operators.ru.txt, operators.txt: - info about json class was + added * src/classes/json.C: - ^json:string[object] @@ -6125,8 +8739,8 @@ 2009-11-10 misha - * operators.txt: - info about hash-options in ^file::create was - added + * operators.ru.txt, operators.txt: - info about hash-options in + ^file::create was added * tests/237.html: - test for ^file::create[...;$.charset[...]] was added @@ -6171,8 +8785,8 @@ * src/types/pa_vregex.C: - check UTF8 only during 1st iteration - * operators.txt: - actually, there is no ^untaint[xml] in - file::create + * operators.ru.txt, operators.txt: - actually, there is no + ^untaint[xml] in file::create 2009-10-15 misha @@ -6302,8 +8916,8 @@ * tests/: 224.html, 224.p: - tests for ^reflection:fields[class or object] were added - * operators.txt: - info about method ^reflection:fields[class or - object] was added + * operators.ru.txt, operators.txt: - info about method + ^reflection:fields[class or object] was added * src/classes/reflection.C: - method ^reflection:fields[class or object] was added @@ -6361,7 +8975,8 @@ 2009-09-08 misha - * operators.txt: - changes in file.save and string.save were added + * operators.ru.txt, operators.txt: - changes in file.save and + string.save were added * tests/: 230.html, 230.txt: - tests for checking options in file.save and string.save were added @@ -6612,9 +9227,9 @@ * tests/224.html: - method_params => method_info - checking for $.inherited - * src/classes/reflection.C, operators.txt: - method method_params - was renamed to method_info and now it returns class name, if - method was defined in ancestor + * src/classes/reflection.C, operators.ru.txt, operators.txt: - + method method_params was renamed to method_info and now it + returns class name, if method was defined in ancestor * tests/225.html: - tests for cheching properties in hierarhical classes were added @@ -6695,8 +9310,8 @@ 2009-07-28 misha - * operators.txt: - some changes in information about reflection - class + * operators.ru.txt, operators.txt: - some changes in information + about reflection class * tests/: 224.html, 224.p: - tests for reflection class @@ -6708,7 +9323,8 @@ * src/classes/classes.vcproj: - reflection class wass added to project - * operators.txt: - information about reflection class was added + * operators.ru.txt, operators.txt: - information about reflection + class was added * src/classes/reflection.C: - class was redesigned @@ -6891,16 +9507,16 @@ 2009-06-25 misha - * src/classes/image.C, operators.txt: - options' names for - ^image.font were changed to $.space, $.width and $spacing - - default space width now == gif's width + * src/classes/image.C, operators.ru.txt, operators.txt: - options' + names for ^image.font were changed to $.space, $.width and + $spacing - default space width now == gif's width 2009-06-24 misha * tests/215.html: - tests for $file.mode were added - * operators.txt: - added info about $file.mode and changes in - ^image.font[ + * operators.ru.txt, operators.txt: - added info about $file.mode + and changes in ^image.font[ * src/: types/pa_vimage.h, classes/image.C: ^image.font - third param now could be omited - third param now could be hash (with @@ -7142,7 +9758,8 @@ * tests/212.html: - .size[] and .study_size[] were added to tests - * operators.txt: - info about regex class was added + * operators.ru.txt, operators.txt: - info about regex class was + added * tests/212.html: - tests for regex class were added @@ -7851,8 +10468,9 @@ * tests/185.html: - test for ^str.pos[sub](offset) added - * src/classes/string.C, src/classes/void.C, operators.txt: - - ^string.pos[substr](offset) -- 2nd param accepted now + * src/classes/string.C, src/classes/void.C, operators.ru.txt, + operators.txt: - ^string.pos[substr](offset) -- 2nd param + accepted now * src/main/pa_string.C: - .pos works fine with offset for utf-8 strings @@ -8476,8 +11094,8 @@ 2007-11-14 misha - * operators.txt: - info about new text|binary option for - file::exec/cgi was added + * operators.ru.txt, operators.txt: - info about new text|binary + option for file::exec/cgi was added * src/: include/pa_exec.h, main/pa_exec.C, classes/file.C: - ^file:exec[[text|binary];script;...] @@ -8492,7 +11110,7 @@ * ChangeLog: - $request:argv [patch from Sumo] - * operators.txt: - $request:argv + * operators.ru.txt, operators.txt: - $request:argv * src/: include/pa_request_info.h, types/pa_vrequest.C, types/pa_vrequest.h, targets/cgi/parser3.C: - $request:argv @@ -8510,8 +11128,8 @@ * tests/: 170.html, results/170.processed: - test for @method[][result] - * operators.txt: - added info about node.prefix and - node.namespaceURI + * operators.ru.txt, operators.txt: - added info about node.prefix + and node.namespaceURI * src/classes/xnode.C: - xmlHasProp used instead of xmlGetProp @@ -8542,7 +11160,7 @@ 2007-10-17 misha - * operators.txt: - info about + * operators.ru.txt, operators.txt: - info about table::create[nameless]{data}[>options<] was added * src/main/: compile.tab.C, compile.y: - if error occure while @@ -8576,7 +11194,8 @@ 2007-09-17 misha - * operators.txt: - added info about $cookie:fields + * operators.ru.txt, operators.txt: - added info about + $cookie:fields * src/types/pa_vcookie.C: - $cookie:fields available now @@ -8594,8 +11213,9 @@ 2007-08-28 misha - * operators.txt: - texts about ^table.columns[[column name]] and - ^string.split[...][v][column name] were added + * operators.ru.txt, operators.txt: - texts about + ^table.columns[[column name]] and ^string.split[...][v][column + name] were added * tests/: 168.html, 169.html, results/168.processed, results/169.processed: - tests for ^table.columns[[column name]] @@ -8623,8 +11243,8 @@ 2007-08-20 misha - * operators.txt: - comment about new method ^node.hasAttributes[] - was added + * operators.ru.txt, operators.txt: - comment about new method + ^node.hasAttributes[] was added * src/classes/: file.C, math.C, op.C, string.C, xdoc.C: - more duplicated exception text strings were removed @@ -8661,9 +11281,9 @@ * src/: classes/math.C, targets/isapi/parser3isapi.C: - little syntax changes - * src/targets/cgi/parser3.C, operators.txt: - annoying 'SIGPIPE' - messages in parser3.log switched off by default. If someone - really still need it: use $SIGPIPE(1) + * src/targets/cgi/parser3.C, operators.ru.txt, operators.txt: - + annoying 'SIGPIPE' messages in parser3.log switched off by + default. If someone really still need it: use $SIGPIPE(1) 2007-08-08 misha @@ -8774,7 +11394,8 @@ * tests/160.html: - time increased because on unix 1 mean nothing :( - * operators.txt: - added info about ^hash.contain[key] + * operators.ru.txt, operators.txt: - added info about + ^hash.contain[key] * src/classes/hash.C: - added ^hash.contain[key] @@ -8849,10 +11470,11 @@ 2007-04-20 misha - * operators.txt: - some comments changing + * operators.ru.txt, operators.txt: - some comments changing - * operators.txt: - added info about .^hashfile.release[], - ^hashfile.clenaup[] and new ^string.match[][>N-option<] + * operators.ru.txt, operators.txt: - added info about + .^hashfile.release[], ^hashfile.clenaup[] and new + ^string.match[][>N-option<] * configure: =cheching for unsetenv @@ -8879,7 +11501,7 @@ * buildall-with-xml, buildall-without-xml: added commented lines with --disable-safe-mode option - * operators.txt: - info about $form:files + * operators.ru.txt, operators.txt: - info about $form:files 2007-04-17 misha @@ -8937,7 +11559,7 @@ * src/classes/date.C: - date.week was fixed - * operators.txt: - added info about date.weekyear + * operators.ru.txt, operators.txt: - added info about date.weekyear * tests/: 159.html, results/159.processed: - tests for date.week and date.weekyear added @@ -8990,7 +11612,8 @@ * src/classes/xdoc.C: - roll back last changes for a while - * src/classes/xdoc.C, operators.txt: - ^xdoc::create[$file] added. + * src/classes/xdoc.C, operators.ru.txt, operators.txt: - + ^xdoc::create[$file] added. * src/classes/file.C: - under lock we create non-exist dir anyway @@ -9009,13 +11632,11 @@ 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 - * operators.txt: - some comments changes + * operators.ru.txt, operators.txt: - some comments changes * buildall-with-xml, buildall-without-xml: - some modifications @@ -9056,7 +11677,8 @@ 2007-02-07 misha - * operators.txt: - ^file:base64[filespec] was added + * operators.ru.txt, operators.txt: - ^file:base64[filespec] was + added * tests/results/153.processed: - result test for ^file:base64[filespec] was updated @@ -9107,7 +11729,7 @@ * buildall-with-xml: - moved to libxml2-2.6.27 and libxslt-1.1.20 - * operators.txt: - info bool class was added + * operators.ru.txt, operators.txt: - info bool class was added * src/: classes/Makefile.am, classes/bool.C, classes/classes.vcproj, classes/double.C, classes/int.C, @@ -9142,7 +11764,8 @@ 2006-12-07 misha - * operators.txt: - added info about bool params in cookie set + * operators.ru.txt, operators.txt: - added info about bool params + in cookie set * src/types/pa_vcookie.C: - bool param in cookies available now $cookie:name[ $.value[123] $.secure(true) $.httponly(true) @@ -9162,12 +11785,13 @@ 2006-12-01 misha - * operators.txt: - info about $var.CLASS_NAME was added + * operators.ru.txt, operators.txt: - info about $var.CLASS_NAME was + added * src/types/: pa_vstateless_class.C, pa_vstateless_class.h: - $var.CLASS_NAME added - * operators.txt: - added info about ^file:copy[] + * operators.ru.txt, operators.txt: - added info about ^file:copy[] * src/classes/file.C: - ^file:copy[from;fo] was added @@ -9199,8 +11823,8 @@ 2006-11-14 misha - * operators.txt: - added info about ^file.md5[] and - ^file:md5[file-name] + * operators.ru.txt, operators.txt: - added info about ^file.md5[] + and ^file:md5[file-name] * src/classes/file.C: - ^file.md5[] and ^file:md5[file-name] were added @@ -9218,8 +11842,8 @@ 2006-11-13 misha - * operators.txt: - added info about ^math:crc32[string], - ^file:crc32[file-name] & ^file.crc32[] + * operators.ru.txt, operators.txt: - added info about + ^math:crc32[string], ^file:crc32[file-name] & ^file.crc32[] * src/classes/math.C: - added ^math:crc32[string] @@ -9270,11 +11894,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 @@ -9294,8 +11913,9 @@ Wednesday, June 07, 2006 9:52 PM Subject: parser3: patch for $hash._default disappear while - * operators.txt: ^mail:send[ $.file1[ $.value[file] - $.format[!uue|!base64] << new base64 option. default uue ] ] + * operators.ru.txt, operators.txt: ^mail:send[ $.file1[ + $.value[file] $.format[!uue|!base64] << new base64 option. + default uue ] ] * src/types/pa_vmail.C: misha: Sent: Wednesday, June 07, 2006 8:51 PM Subject: patch for base64 in ^mail:send[] %-) @@ -9304,7 +11924,7 @@ * src/main/compile.tab.C: ` change compiled - * gnu.vcproj, operators.txt, parser3.sln, + * gnu.vcproj, operators.ru.txt, operators.txt, parser3.sln, src/classes/classes.vcproj, src/classes/file.C, src/classes/hash.C, src/classes/hashfile.C, src/classes/image.C, src/classes/op.C, src/classes/table.C, src/classes/xdoc.C, @@ -10217,12 +12837,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 @@ -10549,8 +13163,8 @@ 2005-02-17 paf - * operators.txt, src/classes/op.C: + operator ^sleep(double - seconds) + * operators.ru.txt, operators.txt, src/classes/op.C: + operator + ^sleep(double seconds) 2005-02-02 paf @@ -10597,7 +13211,7 @@ * src/main/pa_request.C: new: @unhandled_exception can prevent exception from being logged by setting $exception.handled(1) - * operators.txt, src/classes/file.C: change: + * operators.ru.txt, operators.txt, src/classes/file.C: change: ^file::sql{query}[[options]] options: $.name[file name] $.content-type[application/what] @@ -10861,9 +13475,9 @@ 2004-07-26 paf - * operators.txt, src/include/pa_common.h, src/main/pa_common.C, - src/main/pa_request.C, src/types/pa_vfile.h, - src/types/pa_vhash.C, src/types/pa_vhash.h, + * operators.ru.txt, operators.txt, src/include/pa_common.h, + src/main/pa_common.C, src/main/pa_request.C, + src/types/pa_vfile.h, src/types/pa_vhash.C, src/types/pa_vhash.h, src/types/types.vcproj: new: $response:body/download[ $.file[name on disk] $.name[of file for user] $.mdate[date of last-modified. default from directory] ] @@ -10957,12 +13571,12 @@ * src/sql/pa_sql_driver.h: note: about possible optimization - * operators.txt, src/classes/hash.C, src/classes/memory.C, - src/classes/string.C, src/classes/table.C, src/classes/void.C, - src/include/pa_config_includes.h: new: ^void:sql{call - paf(:a)}[ $.bind[ $.a[2] - ] ] output variables work. todo: check in out - variables + * operators.ru.txt, operators.txt, src/classes/hash.C, + src/classes/memory.C, src/classes/string.C, src/classes/table.C, + src/classes/void.C, src/include/pa_config_includes.h: new: + ^void:sql{call paf(:a)}[ $.bind[ + $.a[2] ] ] output variables work. todo: + check in out variables 2004-06-18 paf @@ -10996,7 +13610,8 @@ * src/include/pa_version.h: 3.1.3 - * operators.txt: beauty: removed outdated level 'table' + * operators.ru.txt, operators.txt: beauty: removed outdated level + 'table' * etc/parser3.charsets/x-mac-cyrillic.cfg: added: thanks to konst @@ -11100,7 +13715,8 @@ * src/main/: compile.tab.C, compile.y: bugfix: step1 to fix explicit result problem - * operators.txt, src/classes/string.C: new: ^string.append[string] + * operators.ru.txt, operators.txt, src/classes/string.C: new: + ^string.append[string] * src/: include/pa_opcode.h, main/compile.tab.C, main/compile.y, main/execute.C: attempt_check_call_in_explicit_result_mode: @@ -11120,14 +13736,16 @@ @method[][result] means "no string output here" moved to lexical level [on grammar level it were too difficult] - * operators.txt, src/include/pa_string.h, src/main/compile.tab.C, - src/main/compile.y, src/main/compile_tools.h, - src/types/pa_vmethod_frame.C, src/types/pa_vmethod_frame.h: new: - @method[][result] means "no string output here", implemented part - of that idea: compiler throws away string literal generation - code. and barks nonwhitespace chars + * operators.ru.txt, operators.txt, src/include/pa_string.h, + src/main/compile.tab.C, src/main/compile.y, + src/main/compile_tools.h, src/types/pa_vmethod_frame.C, + src/types/pa_vmethod_frame.h: new: @method[][result] means "no + string output here", implemented part of that idea: compiler + throws away string literal generation code. and barks + nonwhitespace chars - * operators.txt: truth: removed comment about $ORIGIN + * operators.ru.txt, operators.txt: truth: removed comment about + $ORIGIN 2004-04-05 paf @@ -11231,7 +13849,7 @@ and http status line parsing checked number of columns in table [user reported an assert] - * operators.txt: example: on hashfile + * operators.ru.txt, operators.txt: example: on hashfile * src/: classes/op.C, types/pa_value.C, types/pa_wcontext.C: bugfix: junction reattach now actually reattaches a junction to @@ -11248,23 +13866,24 @@ 2004-03-10 paf - * operators.txt, src/classes/xdoc.C, src/classes/xnode.C, - src/classes/xnode.h, src/types/pa_vxdoc.C, src/types/pa_vxdoc.h, - src/types/pa_vxnode.C, src/types/pa_vxnode.h: new: refined - solution to search-in-namespaces problem: + * operators.ru.txt, operators.txt, src/classes/xdoc.C, + src/classes/xnode.C, src/classes/xnode.h, src/types/pa_vxdoc.C, + src/types/pa_vxdoc.h, src/types/pa_vxnode.C, + src/types/pa_vxnode.h: new: refined solution to + search-in-namespaces problem: $xdoc.search-namespaces.x[http://pif.design.ru/] $nodes[^xdoc.select[//x:second]] - * operators.txt, src/classes/xnode.C: new: xnode.select*[xpath - expression][[NAMESPACES HASH]] allows to search for info in - namespaces + * operators.ru.txt, operators.txt, src/classes/xnode.C: new: + xnode.select*[xpath expression][[NAMESPACES HASH]] allows to + search for info in namespaces $nodes[^xdoc.select[//x:second][ $.x[http://pif.design.ru/] ]] 2004-03-09 paf - * operators.txt, src/main/pa_common.C: new: + * operators.ru.txt, operators.txt, src/main/pa_common.C: new: ^file::load[...][options] $.form[ !$.field1[string] !$.field2[^table::create{one_column_only^#0Avalue1^#0Avalue2}] @@ -11280,27 +13899,30 @@ 2004-03-05 paf - * operators.txt, src/main/pa_common.C: new: file::load[;http:// - GET/POST $.form[$.fields started, not tested yet - todo:$.field[table] for multiple values + * operators.ru.txt, operators.txt, src/main/pa_common.C: new: + file::load[;http:// GET/POST $.form[$.fields started, not tested + yet todo:$.field[table] for multiple values - * operators.txt: new: http:// options $.user $.password basic - authorization + * operators.ru.txt, operators.txt: new: http:// options $.user + $.password basic authorization * src/main/pa_common.C: beauty: link to rtf added - * operators.txt, src/include/pa_common.h, src/main/pa_common.C: - new: http:// options $.user $.password basic authorization + * operators.ru.txt, operators.txt, src/include/pa_common.h, + src/main/pa_common.C: new: http:// options $.user $.password + basic authorization * src/main/pa_common.C: beauty: removed needless vars - * operators.txt: new: pgsql option [like that recently added to - oracle driver] ClientCharset=parser-charset << - charset in which parser thinks client works - - * operators.txt: new: odbc option [like that recently added to - oracle driver] ClientCharset=parser-charset << - charset in which parser thinks client works + * operators.ru.txt, operators.txt: new: pgsql option [like that + recently added to oracle driver] + ClientCharset=parser-charset << charset in which parser thinks + client works + + * operators.ru.txt, operators.txt: new: odbc option [like that + recently added to oracle driver] + ClientCharset=parser-charset << charset in which parser thinks + client works * src/sql/pa_sql_driver.h: beauty: important warning added @@ -11314,9 +13936,10 @@ * src/main/pa_sql_driver_manager.C: speedup: charset lookups cached, sql transcoding now goes faster - * operators.txt: new: mysql option [like that recently added to - oracle driver] ClientCharset=parser-charset << - charset in which parser thinks client works + * operators.ru.txt, operators.txt: new: mysql option [like that + recently added to oracle driver] + ClientCharset=parser-charset << charset in which parser thinks + client works * etc/parser3.charsets/: koi8-r.cfg, windows-1251.cfg: keyboard typo error @@ -11331,23 +13954,24 @@ 2004-03-02 paf - * operators.txt: new[update typo]: !^void.left(n) - nothing !^void.right(n) nothing !^void.mid(p[;n]) - nothing - - * operators.txt, src/classes/void.C: new: !^void.left(n) - nothing !^void.right(n) nothing !^void.pos(p[;n]) - nothing + * operators.ru.txt, operators.txt: new[update typo]: + !^void.left(n) nothing !^void.right(n) nothing + !^void.mid(p[;n]) nothing + + * operators.ru.txt, operators.txt, src/classes/void.C: new: + !^void.left(n) nothing !^void.right(n) nothing + !^void.pos(p[;n]) nothing - * operators.txt, src/classes/file.C, src/include/pa_string.h: new: + * operators.ru.txt, operators.txt, src/classes/file.C, + src/include/pa_string.h: new: ^file::sql[[name_to_become_$.name]]{} query result must be one row with columns: first: data second: file name third: content-type - * operators.txt, src/classes/file.C: ^file.sql-string[] inside - ^connect gets properly escaped string, which can be passed to - request now this for mysql only. it's up to parser sql driver to - fix zeros properly + * operators.ru.txt, operators.txt, src/classes/file.C: + ^file.sql-string[] inside ^connect gets properly escaped string, + which can be passed to request now this for mysql only. it's up + to parser sql driver to fix zeros properly * INSTALL: note: added on building apache with this option: --enable-shared=max thanks to Victor Fedoseev @@ -11357,12 +13981,12 @@ * src/targets/isapi/parser3isapi.C: new: apache module & isapi extension memory:compact befor processingrequest - * operators.txt, src/classes/hash.C: new: ^hash._keys[>>name<<] to - call sole column of result + * operators.ru.txt, operators.txt, src/classes/hash.C: new: + ^hash._keys[>>name<<] to call sole column of result - * operators.txt, src/classes/image.C, src/lib/gd/gif.C, - src/lib/gd/gif.h: new: ^image.pixel(x;y)[(color)] get/set - pixel color + * operators.ru.txt, operators.txt, src/classes/image.C, + src/lib/gd/gif.C, src/lib/gd/gif.h: new: + ^image.pixel(x;y)[(color)] get/set pixel color * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h: beauty: image -- less checks [were ugly impl] @@ -11398,13 +14022,14 @@ 2004-02-27 paf - * operators.txt, src/classes/string.C, src/main/pa_string.C: new - method: ^string.trim[start|both|end[;chars]] default - 'chars' -- whitespace chars finished - - * operators.txt, src/classes/string.C, src/include/pa_string.h, + * operators.ru.txt, operators.txt, src/classes/string.C, src/main/pa_string.C: new method: ^string.trim[start|both|end[;chars]] default 'chars' -- + whitespace chars finished + + * operators.ru.txt, operators.txt, src/classes/string.C, + src/include/pa_string.h, src/main/pa_string.C: new method: + ^string.trim[start|both|end[;chars]] default 'chars' -- whitespace chars started, only start works * src/main/compile.C: bugfix: line numbers after @@ -11427,19 +14052,20 @@ 2004-02-26 paf - * operators.txt: feature: ^process...{CODE}[now has options] which - are $.main[to what to rename @main] $.file[file, - from which (user says) goes that CODE] $.lineno(line - number in that file, where CODE starts. may be negative) - - * operators.txt, src/classes/op.C, src/include/pa_request.h, - src/main/compile.C, src/main/compile_tools.h, - src/main/pa_request.C: feature: ^process...{CODE}[now has - options] which are $.main[to what to rename @main] + * operators.ru.txt, operators.txt: feature: ^process...{CODE}[now + has options] which are $.main[to what to rename @main] $.file[file, from which (user says) goes that CODE] $.lineno(line number in that file, where CODE starts. may be negative) + * operators.ru.txt, operators.txt, src/classes/op.C, + src/include/pa_request.h, src/main/compile.C, + src/main/compile_tools.h, src/main/pa_request.C: feature: + ^process...{CODE}[now has options] which are $.main[to + what to rename @main] $.file[file, from which (user says) + goes that CODE] $.lineno(line number in that file, where + CODE starts. may be negative) + 2004-02-25 paf * etc/parser3.charsets/Makefile.am: bugfix: @sysconfdir@ used [were @@ -11554,7 +14180,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 @@ -11757,7 +14383,7 @@ 2004-01-13 paf - * operators.txt: typo erro + * operators.ru.txt, operators.txt: typo erro 2003-12-25 paf @@ -11771,7 +14397,7 @@ make-dist-platform and badly updated proper config file in target [when .tar used for updating existing source tree] - * ChangeLog, operators.txt, src/classes/op.C, + * ChangeLog, operators.ru.txt, operators.txt, src/classes/op.C, src/include/pa_sql_connection.h, src/include/pa_sql_driver_manager.h, src/main/pa_sql_driver_manager.C, src/sql/pa_sql_driver.h: @@ -11803,8 +14429,8 @@ 2003-12-11 paf - * operators.txt, src/types/pa_vstatus.C: !$status:pid process - id + * operators.ru.txt, operators.txt, src/types/pa_vstatus.C: + !$status:pid process id !$status:tid thread id * src/: include/pa_cache_managers.h, main/pa_cache_managers.C, @@ -11834,11 +14460,12 @@ * src/include/pa_sql_connection.h: bugfix: $status:sql.cache back << time now ok - * operators.txt, src/main/pa_sql_driver_manager.C, + * operators.ru.txt, operators.txt, + src/main/pa_sql_driver_manager.C, src/main/pa_stylesheet_manager.C: $status:stylesheet.cache back operational - * ChangeLog, operators.txt, src/classes/xdoc.C, + * ChangeLog, operators.ru.txt, operators.txt, src/classes/xdoc.C, src/include/pa_charset.h, src/include/pa_sql_connection.h, src/main/pa_charset.C, src/main/pa_sql_driver_manager.C, src/main/pa_string.C, src/types/pa_vxdoc.h: $status:sql.cache @@ -11890,12 +14517,13 @@ * src/main/pa_xml_io.C: comment - * operators.txt, src/main/pa_xml_io.C: leading / in - http://parser[abscent params] + * operators.ru.txt, operators.txt, src/main/pa_xml_io.C: leading / + in http://parser[abscent params] - * operators.txt, src/include/pa_request.h, src/main/pa_xml_io.C: - works. todo: maybe replace original open mech of xdoc::create & - co to use libxml open, so that this would work for root document + * operators.ru.txt, operators.txt, src/include/pa_request.h, + src/main/pa_xml_io.C: works. todo: maybe replace original open + mech of xdoc::create & co to use libxml open, so that this would + work for root document $xdoc[^xdoc::create{ &test^; }] @@ -11913,12 +14541,13 @@ 2003-11-26 paf - * operators.txt, src/include/Makefile.am, src/include/pa_globals.h, - src/main/Makefile.am, src/main/main.vcproj, - src/main/pa_globals.C, src/main/pa_request.C, - src/include/pa_xml_io.h, src/main/pa_xml_io.C: simplification: - xml errors to hash reorganization: xml io moved - to pa_xml_io.C/h + * operators.ru.txt, operators.txt, src/include/Makefile.am, + src/include/pa_globals.h, src/main/Makefile.am, + src/main/main.vcproj, src/main/pa_globals.C, + src/main/pa_request.C, src/include/pa_xml_io.h, + src/main/pa_xml_io.C: simplification: xml errors to + hash reorganization: xml io moved to + pa_xml_io.C/h * src/types/pa_value.h: warnings: -- @@ -11946,9 +14575,10 @@ * src/main/pa_common.C: bugfix: ^file::load[binary;http://...] now not transcodes response body - * operators.txt, src/types/pa_vxnode.C, src/types/pa_vxnode.h: - $xdoc[^xdoc::create[test]] $tn[^xdoc.createTextNode[text node - value]] $dummy[^xdoc.firstChild.appendChild[$tn]] + * operators.ru.txt, operators.txt, src/types/pa_vxnode.C, + src/types/pa_vxnode.h: $xdoc[^xdoc::create[test]] + $tn[^xdoc.createTextNode[text node value]] + $dummy[^xdoc.firstChild.appendChild[$tn]] $xdoc.firstChild.firstChild.nodeValue[different] ^taint[^xdoc.string[]] @@ -12094,10 +14724,10 @@ * src/classes/op.C: more ansi C++ comp - * operators.txt, src/classes/op.C, src/include/pa_request.h, - src/main/pa_request.C: ^cache[...]{body}{catch block with - $exception.handled[cache] meaning "get expired cache, if any. - else error"} + * operators.ru.txt, operators.txt, src/classes/op.C, + src/include/pa_request.h, src/main/pa_request.C: + ^cache[...]{body}{catch block with $exception.handled[cache] + meaning "get expired cache, if any. else error"} * src/: classes/op.C, include/pa_os.h, include/pa_request.h, main/pa_common.C: cache: ^cache[] fallback todo: kinda ^try: @@ -12113,25 +14743,24 @@ * 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 - * operators.txt, src/main/pa_request.C, src/types/Makefile.am, - src/types/types.vcproj, src/types/pa_vconsole.h: $console:line - read/write [for nntp] + * operators.ru.txt, operators.txt, src/main/pa_request.C, + src/types/Makefile.am, src/types/types.vcproj, + src/types/pa_vconsole.h: $console:line read/write [for nntp] - * operators.txt: mysql: transaction support: ?autocommit=0 + * operators.ru.txt, operators.txt: mysql: transaction support: + ?autocommit=0 - * operators.txt: comment: updated + * operators.ru.txt, operators.txt: comment: updated * src/types/: pa_vhashfile.C, pa_vhashfile.h: add: hashfile old serialize version and exipire now removes entries - * operators.txt: ^hashfile.delete[] removes files altogether [and - dir, if could] + * operators.ru.txt, operators.txt: ^hashfile.delete[] removes files + altogether [and dir, if could] * src/: classes/hashfile.C, include/pa_common.h, main/pa_common.C, types/pa_vhashfile.C, types/pa_vhashfile.h: ^hashfile.delete[] @@ -12172,26 +14801,29 @@ * tests/todo.txt: hashfile: done - * operators.txt, src/types/pa_vhashfile.C: hashfile: clear & - expiration [time in value. todo: move time to key] + * operators.ru.txt, operators.txt, src/types/pa_vhashfile.C: + hashfile: clear & expiration [time in value. todo: move time to + key] * src/types/pa_vhashfile.C: hashfile: foreach body can bodify $self * src/types/pa_vhashfile.C: hashfile: clear now works [were trying to do that in foreach, no errors, but surely wrong] - * operators.txt, src/types/pa_vhashfile.C, + * operators.ru.txt, operators.txt, src/types/pa_vhashfile.C, src/types/pa_vhashfile.h: hashfile: clear and proper locking - * operators.txt, src/classes/hash.C, src/classes/hashfile.C, - src/types/pa_vhashfile.C, src/types/pa_vhashfile.h: hashfile: - foreach + * operators.ru.txt, operators.txt, src/classes/hash.C, + src/classes/hashfile.C, src/types/pa_vhashfile.C, + src/types/pa_vhashfile.h: hashfile: foreach * src/classes/hashfile.C, src/types/pa_vhashfile.C, - src/types/pa_vhashfile.h, operators.txt: hashfile: hash + src/types/pa_vhashfile.h, operators.ru.txt, operators.txt: + hashfile: hash - * operators.txt, src/classes/hashfile.C, src/types/pa_vhashfile.C, - src/types/pa_vhashfile.h, tests/todo.txt: hashfile: delete + * operators.ru.txt, operators.txt, src/classes/hashfile.C, + src/types/pa_vhashfile.C, src/types/pa_vhashfile.h, + tests/todo.txt: hashfile: delete * src/: include/pa_memory.h, targets/cgi/parser3.C, types/pa_value.C, types/pa_value.h, types/pa_vcookie.C, @@ -12215,8 +14847,8 @@ main/pa_xml_exception.C: locking move to pa_os [along with pa_sleep] apr-impl locking done - * configure, configure.in, operators.txt, parser3.sln, - src/classes/classes.vcproj, src/classes/hashfile.C, + * configure, configure.in, operators.ru.txt, operators.txt, + parser3.sln, src/classes/classes.vcproj, src/classes/hashfile.C, src/classes/xdoc.C, src/include/pa_config_fixed.h, src/include/pa_exception.h, src/include/pa_globals.h, src/include/pa_memory.h, src/include/pa_version.h, @@ -12247,7 +14879,7 @@ 2003-11-04 paf - * operators.txt: comment: ^mail:send[$.options[ + * operators.ru.txt, operators.txt: comment: ^mail:send[$.options[ * src/classes/table.C: compiled on unix @@ -12255,43 +14887,45 @@ * src/classes/mail.C: compiled on unix - * operators.txt, src/classes/mail.C, src/types/pa_vmail.C, - src/types/pa_vmail.h: !^mail:send[ + * operators.ru.txt, operators.txt, src/classes/mail.C, + src/types/pa_vmail.C, src/types/pa_vmail.h: !^mail:send[ $.options[unix: string to append to sendmail command line] - * operators.txt, src/classes/table.C, src/main/pa_string.C, - tests/todo.txt: ^table.save[... $.separator[^#09] - $.encloser["] by default - - * operators.txt, src/classes/table.C, tests/todo.txt: ^table::load - !$.separator[^#09] !$.encloser["] by - default + * operators.ru.txt, operators.txt, src/classes/table.C, + src/main/pa_string.C, tests/todo.txt: ^table.save[... + $.separator[^#09] $.encloser["] by default + + * operators.ru.txt, operators.txt, src/classes/table.C, + tests/todo.txt: ^table::load !$.separator[^#09] + !$.encloser["] by default 2003-11-03 paf - * operators.txt, src/classes/table.C, src/main/pa_common.C: - ^table::load[; options: !$.column-separator[^#09] - !$.column-encloser["] + * operators.ru.txt, operators.txt, src/classes/table.C, + src/main/pa_common.C: ^table::load[; options: + !$.column-separator[^#09] !$.column-encloser["] - * operators.txt, src/include/pa_config_fixed.h, + * operators.ru.txt, operators.txt, src/include/pa_config_fixed.h, src/types/pa_vrequest.C: $request:document-root * src/targets/cgi/parser3.C: beauty: SIGUSRX removed qs= printing [already included into uri=xxx] - * operators.txt, src/classes/image.C, tests/todo.txt: - ^image.gif[filename] for $response:download + * operators.ru.txt, operators.txt, src/classes/image.C, + tests/todo.txt: ^image.gif[filename] for $response:download * src/classes/date.C: minor precaution - * operators.txt, src/classes/date.C: !^date::unix-timestamp() + * operators.ru.txt, operators.txt, src/classes/date.C: + !^date::unix-timestamp() !^date.unix-timestamp[] 2003-10-30 paf - * operators.txt, src/classes/date.C, src/types/pa_vdate.h: merged - from 3.0.8: ^date.roll[TZ;GMT] $date.hour + * operators.ru.txt, operators.txt, src/classes/date.C, + src/types/pa_vdate.h: merged from 3.0.8: ^date.roll[TZ;GMT] + $date.hour * src/classes/: date.C, image.C: improvement diagnostics: $now[^date::create[$undefined]] now is error @@ -12312,9 +14946,9 @@ 2003-10-21 paf - * operators.txt, src/include/pa_string.h, src/main/pa_string.C: - fixed: string.match[g] without <'> option produced columns with - NULL's, which gpf'ed at table.save time + * operators.ru.txt, operators.txt, src/include/pa_string.h, + src/main/pa_string.C: fixed: string.match[g] without <'> option + produced columns with NULL's, which gpf'ed at table.save time * src/: classes/op.C, include/pa_request.h: fixed: false 'endless recoursion' message with intensive throw-catches fixed: incorrect @@ -12512,7 +15146,7 @@ * src/types/pa_wcontext.C: output message: more practical suggestion - * src/main/pa_common.C, operators.txt: merged + * src/main/pa_common.C, operators.ru.txt, operators.txt: merged $f[^file::load[binary;http://...]] $f.tables 2003-09-02 paf @@ -12655,7 +15289,7 @@ * src/main/: compile.tab.C, pa_memory.C: moved tempate_gc to HEAD * ChangeLog, INSTALL, Makefile.am, acsite.m4, configure, - configure.in, operators.txt, parser3.dsw, + configure.in, operators.ru.txt, operators.txt, parser3.dsw, etc/parser3.charsets/koi8-r.cfg, etc/parser3.charsets/windows-1251.cfg, src/classes/Makefile.am, src/classes/classes.C, src/classes/classes.awk, @@ -12925,8 +15559,8 @@ 2003-07-02 paf - * operators.txt, src/types/pa_vstatus.C: renamed $memory:status - fields to reflect their real meaning + * operators.ru.txt, operators.txt, src/types/pa_vstatus.C: renamed + $memory:status fields to reflect their real meaning 2003-06-27 paf @@ -12948,8 +15582,8 @@ 2003-06-20 paf - * operators.txt, src/include/pa_globals.h, src/main/pa_common.C, - src/main/pa_globals.C: introducing + * operators.ru.txt, operators.txt, src/include/pa_globals.h, + src/main/pa_common.C, src/main/pa_globals.C: introducing $f[^file::load[binary;http://...]] $f.tables 2003-06-06 paf @@ -13072,25 +15706,28 @@ 2003-04-15 paf - * operators.txt, src/classes/math.C, src/lib/md5/pa_md5.h, - src/lib/md5/pa_md5c.c, tests/141.html, + * operators.ru.txt, operators.txt, src/classes/math.C, + src/lib/md5/pa_md5.h, src/lib/md5/pa_md5c.c, tests/141.html, tests/results/141.processed: merged from head ^math:uuid[] ^math:uid64[] ^math:md5[string] test added: 141.html - * operators.txt, src/classes/math.C: ^math:uid64[] + * operators.ru.txt, operators.txt, src/classes/math.C: + ^math:uid64[] * src/classes/math.C: ^math:uuid[] - * operators.txt, src/classes/math.C: ^math:uuid[] + * operators.ru.txt, operators.txt, src/classes/math.C: ^math:uuid[] - * operators.txt, src/classes/math.C, src/lib/md5/pa_md5.h, - src/lib/md5/pa_md5c.c: ^math:md5[string] 16-byte digest - - * operators.txt, src/classes/file.C, src/include/pa_common.h, - src/include/pa_config_fixed.h, src/main/pa_common.C: - ^file::load[mode;name; $.offset $.limit + * operators.ru.txt, operators.txt, src/classes/math.C, + src/lib/md5/pa_md5.h, src/lib/md5/pa_md5c.c: ^math:md5[string] + 16-byte digest + + * operators.ru.txt, operators.txt, src/classes/file.C, + src/include/pa_common.h, src/include/pa_config_fixed.h, + src/main/pa_common.C: ^file::load[mode;name; $.offset + $.limit 2003-04-14 paf @@ -13117,26 +15754,26 @@ 2003-04-11 paf - * operators.txt, src/classes/date.C, src/classes/table.C, - src/include/pa_array.h, src/include/pa_common.h, - src/include/pa_config_includes.h, src/include/pa_string.h, - src/include/pa_table.h, src/main/pa_request.C, - src/main/pa_sql_driver_manager.C, src/main/pa_string.C, - src/main/pa_table.C: merged from HEAD from + * operators.ru.txt, operators.txt, src/classes/date.C, + src/classes/table.C, src/include/pa_array.h, + src/include/pa_common.h, src/include/pa_config_includes.h, + src/include/pa_string.h, src/include/pa_table.h, + src/main/pa_request.C, src/main/pa_sql_driver_manager.C, + src/main/pa_string.C, src/main/pa_table.C: merged from HEAD from before_append_array_limit_sense_change to after_append_array_limit_sense_change * src/classes/table.C: typo - * operators.txt, src/classes/date.C, src/classes/table.C, - src/include/pa_array.h, src/include/pa_common.h, - src/include/pa_config_includes.h, src/include/pa_globals.h, - src/include/pa_table.h, src/main/pa_array.C, - src/main/pa_globals.C, src/main/pa_request.C, - src/main/pa_sql_driver_manager.C, src/main/pa_string.C, - src/main/pa_table.C: append_array_limit_sense_change locate - accepts options same as create new option: $.reverse(1) [do not - work in table::create] + * operators.ru.txt, operators.txt, src/classes/date.C, + src/classes/table.C, src/include/pa_array.h, + src/include/pa_common.h, src/include/pa_config_includes.h, + src/include/pa_globals.h, src/include/pa_table.h, + src/main/pa_array.C, src/main/pa_globals.C, + src/main/pa_request.C, src/main/pa_sql_driver_manager.C, + src/main/pa_string.C, src/main/pa_table.C: + append_array_limit_sense_change locate accepts options same as + create new option: $.reverse(1) [do not work in table::create] * src/: include/pa_common.h, main/pa_common.C: gcc didn't like (stat xxx, @@ -13159,16 +15796,16 @@ appendChild without import 138.html mustfail: invalid encoding inside of xml 139.html mustfail: bad XPath - * operators.txt, src/classes/table.C, tests/084.html, - tests/125.html, tests/126.html, tests/127.html, tests/128.html, - tests/129.html, tests/results/125.processed, + * operators.ru.txt, operators.txt, src/classes/table.C, + tests/084.html, tests/125.html, tests/126.html, tests/127.html, + tests/128.html, tests/129.html, tests/results/125.processed, tests/results/126.processed, tests/results/127.processed, tests/results/128.processed, tests/results/129.processed: merged from HEAD ^table.hash[key][$.distinct[tables]] maked appropriate tests [changed one old nonconforming] - * operators.txt, src/classes/table.C: + * operators.ru.txt, operators.txt, src/classes/table.C: ^table.hash[key][$.distinct[tables]] * src/: classes/xdoc.C, classes/xnode.C, include/pa_charset.h: @@ -13281,8 +15918,8 @@ * src/targets/cgi/pp3.cmd: custom profiling script: plist/ST << Sort by function time - * operators.txt, src/main/pa_charset.C, src/main/pa_common.C: - http:// $.charset[] param done + * operators.ru.txt, operators.txt, src/main/pa_charset.C, + src/main/pa_common.C: http:// $.charset[] param done * tests/: 122.html, results/122.processed: 122 date test <= and == added [after volatile fix. passes on win&intel-solaris] @@ -13489,20 +16126,20 @@ params receive zero reference, but they are expected not to look there] - * operators.txt, src/classes/date.C, src/classes/double.C, - src/classes/file.C, src/classes/hash.C, src/classes/image.C, - src/classes/int.C, src/classes/mail.C, src/classes/math.C, - src/classes/memory.C, src/classes/op.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/main/execute.C, src/types/pa_method.h: MethodParams& now - [methods without params receive zero reference, but they are - expected not to look there] - - * operators.txt, src/classes/op.C, src/include/pa_request.h, - src/main/pa_request.C, src/types/pa_vmethod_frame.h: - ^process...[filename] useful for better error reporting - [file/line/col] + * operators.ru.txt, operators.txt, src/classes/date.C, + src/classes/double.C, src/classes/file.C, src/classes/hash.C, + src/classes/image.C, src/classes/int.C, src/classes/mail.C, + src/classes/math.C, src/classes/memory.C, src/classes/op.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/main/execute.C, + src/types/pa_method.h: MethodParams& now [methods without params + receive zero reference, but they are expected not to look there] + + * operators.ru.txt, operators.txt, src/classes/op.C, + src/include/pa_request.h, src/main/pa_request.C, + src/types/pa_vmethod_frame.h: ^process...[filename] useful for + better error reporting [file/line/col] * src/: main/execute.C, types/pa_value.C, types/pa_value.h, types/pa_vstring.h: slightly improved error messages text: 1. is @@ -13779,9 +16416,9 @@ 2003-03-25 paf - * operators.txt, src/main/pa_sql_driver_manager.C, - src/types/pa_vstatus.C: $status.memory used free since_compact - process + * operators.ru.txt, operators.txt, + src/main/pa_sql_driver_manager.C, src/types/pa_vstatus.C: + $status.memory used free since_compact process * src/: include/pa_sql_connection.h, main/pa_globals.C, main/untaint.C, sql/pa_sql_driver.h: untaint.C L_SQL @@ -13794,10 +16431,10 @@ src/types/pa_vstring.C, src/types/pa_vstring.h, tests/121.html, tests/results/121.processed: untaint.C L_URI - * operators.txt, src/classes/Makefile.am, src/classes/classes.dsp, - src/classes/op.C, src/main/pa_request.C, src/types/Makefile.am, - src/types/pa_venv.h, src/types/types.dsp, src/classes/memory.C, - src/types/pa_vmemory.h: ^memory:compact[] + * operators.ru.txt, operators.txt, src/classes/Makefile.am, + src/classes/classes.dsp, src/classes/op.C, src/main/pa_request.C, + src/types/Makefile.am, src/types/pa_venv.h, src/types/types.dsp, + src/classes/memory.C, src/types/pa_vmemory.h: ^memory:compact[] * tests/results/109.processed: it was a bug in parser. updated 109 test result @@ -14751,8 +17388,9 @@ 2003-02-21 paf - * operators.txt, src/targets/cgi/parser3.C, src/types/pa_vcookie.C: - $cookie:name[$.expires[date << can be now]] + * operators.ru.txt, operators.txt, src/targets/cgi/parser3.C, + src/types/pa_vcookie.C: $cookie:name[$.expires[date << can be + now]] written makefile with regression tests [raw] @@ -15468,10 +18106,11 @@ 2003-01-16 paf - * operators.txt, src/include/pa_globals.h, src/main/pa_common.C, - src/main/pa_globals.C: http:// introducing $.any-status(1) + * operators.ru.txt, operators.txt, src/include/pa_globals.h, + src/main/pa_common.C, src/main/pa_globals.C: http:// introducing + $.any-status(1) - * operators.txt, src/include/pa_config_fixed.h, + * operators.ru.txt, operators.txt, src/include/pa_config_fixed.h, src/main/pa_common.C: http request now return status. and not fail on status!=200 @@ -15586,7 +18225,7 @@ * INSTALL: --without-iconv recommended [it crashes on some systems [tested on elik]] - * operators.txt, src/include/pa_globals.h, + * operators.ru.txt, operators.txt, src/include/pa_globals.h, src/include/pa_request.h, src/main/pa_globals.C, src/main/pa_request.C: $response:download @@ -15665,8 +18304,9 @@ 2002-12-06 paf - * operators.txt, src/main/compile.tab.C, src/types/pa_vhash.h: - $hash.fields -- pseudo field to make 'hash' more like 'table' + * operators.ru.txt, operators.txt, src/main/compile.tab.C, + src/types/pa_vhash.h: $hash.fields -- pseudo field to make 'hash' + more like 'table' 2002-12-05 paf @@ -15727,7 +18367,7 @@ 2002-12-02 paf - * operators.txt: removed outdated status:db + * operators.ru.txt, operators.txt: removed outdated status:db * ChangeLog, src/classes/mail.C, src/include/pa_common.h, src/main/pa_common.C, src/main/pa_request.C, @@ -15736,8 +18376,8 @@ 2002-11-29 paf - * src/classes/date.C, src/classes/image.C, operators.txt: exif - dates now objects of type date + * src/classes/date.C, src/classes/image.C, operators.ru.txt, + operators.txt: exif dates now objects of type date * src/classes/image.C: file.seek removed [it were used in image.C only, and for parser user this means that jpeg image has bad @@ -15754,7 +18394,7 @@ 2002-11-28 paf - * operators.txt: http.timeout + * operators.ru.txt, operators.txt: http.timeout * src/classes/image.C: ^image.length now counts interchar space. plus space after last char @@ -15787,8 +18427,9 @@ * src/main/pa_common.C: utf8 prefix ignored @read text - * operators.txt, src/main/pa_common.C: http:// response status!=200 - made exception: http.status with source=bad status# + * operators.ru.txt, operators.txt, src/main/pa_common.C: http:// + response status!=200 made exception: http.status with source=bad + status# 2002-11-25 paf @@ -15798,7 +18439,8 @@ src/main/pa_common.C, src/main/pa_globals.C: http:// and image const void related probs fixed - * operators.txt, src/main/pa_common.C: http fields now UPPERCASE + * operators.ru.txt, operators.txt, src/main/pa_common.C: http + fields now UPPERCASE $file[^file::load[http://there]] $file.SERVER @@ -15807,8 +18449,8 @@ http options [invalid onces now reported] made default user-agent: paf - * operators.txt, src/classes/file.C, src/classes/table.C, - src/classes/xdoc.C, src/include/pa_common.h, + * operators.ru.txt, operators.txt, src/classes/file.C, + src/classes/table.C, src/classes/xdoc.C, src/include/pa_common.h, src/include/pa_globals.h, src/main/pa_common.C, src/main/pa_globals.C, src/main/pa_request.C, src/types/pa_vfile.C, src/types/pa_vfile.h: table/xdoc/file::load @@ -15820,8 +18462,8 @@ * src/classes/image.C, src/include/pa_globals.h, src/main/execute.C, src/main/pa_globals.C, src/types/pa_vimage.C, - src/types/pa_vimage.h, operators.txt: $image.exif support - $image.exif.DateTime & co + src/types/pa_vimage.h, operators.ru.txt, operators.txt: + $image.exif support $image.exif.DateTime & co 2002-11-21 paf @@ -15832,10 +18474,11 @@ EXIF information [were big block and it's size were considered negative :(] - * operators.txt, src/classes/image.C, src/include/pa_common.h, - src/main/pa_common.C, src/types/pa_vmail.C: image.measure - internals rewritten. no there's reader.seek, and all's ready for - EXIF extraction [now we fail to measure files with EXIF info] + * operators.ru.txt, operators.txt, src/classes/image.C, + src/include/pa_common.h, src/main/pa_common.C, + src/types/pa_vmail.C: image.measure internals rewritten. no + there's reader.seek, and all's ready for EXIF extraction [now we + fail to measure files with EXIF info] * src/main/pa_common.C: O_TRUNCATE killed, ftruncate used instead: O_TRUNC truncates even exclusevely write-locked file [thanks to @@ -15860,8 +18503,8 @@ * src/main/pa_exec.C: pa_exec: data written only if size>0 - * operators.txt, src/classes/file.C: ^file::exec/cgi[file;$.stdin[] - << disable HTTP-POST repassing + * operators.ru.txt, operators.txt, src/classes/file.C: + ^file::exec/cgi[file;$.stdin[] << disable HTTP-POST repassing * src/: include/pa_config_fixed.h, main/pa_common.C, main/pa_exec.C, targets/cgi/parser3.C: ^file:exec/cgi [pa_exec] @@ -15962,8 +18605,8 @@ 2002-10-23 paf - * operators.txt, src/classes/table.C: ^table.hash{code}... - ^table.hash(expr)... + * operators.ru.txt, operators.txt, src/classes/table.C: + ^table.hash{code}... ^table.hash(expr)... * src/types/pa_vmail.C: email whitespace trimBoth-ed @@ -15979,16 +18622,17 @@ 2002-10-21 paf - * operators.txt, src/types/pa_vform.C, src/types/pa_vform.h: - $form:qtail $form:imap.x/y + * operators.ru.txt, operators.txt, src/types/pa_vform.C, + src/types/pa_vform.h: $form:qtail $form:imap.x/y - * operators.txt, src/types/pa_vform.C: $form:nameless = - "?value&...", "...&value&...", "...&value" + * operators.ru.txt, operators.txt, src/types/pa_vform.C: + $form:nameless = "?value&...", "...&value&...", "...&value" - * operators.txt, src/types/pa_vform.C: $form:image-map + * operators.ru.txt, operators.txt, src/types/pa_vform.C: + $form:image-map - * operators.txt, src/classes/file.C: /some/page.html: - ^file:fullpath[a.gif] => /some/a.gif + * operators.ru.txt, operators.txt, src/classes/file.C: + /some/page.html: ^file:fullpath[a.gif] => /some/a.gif 2002-10-17 paf @@ -16043,15 +18687,15 @@ types/pa_vstateless_class.C, types/pa_vstateless_class.h: compiling to system classes disabled - * operators.txt, src/classes/op.C: + * operators.ru.txt, operators.txt, src/classes/op.C: ^process[$caller.CLASS]{code-string} added - * operators.txt, src/classes/op.C, src/main/compile.tab.C, - src/main/compile.y, src/main/execute.C, src/main/pa_request.C, - src/types/Makefile.am, src/types/pa_vjunction.C, - src/types/pa_vjunction.h, src/types/pa_vmethod_frame.h, - src/types/types.dsp: removed $junction.get $junction.set[] - introducing $caller + * operators.ru.txt, operators.txt, src/classes/op.C, + src/main/compile.tab.C, src/main/compile.y, src/main/execute.C, + src/main/pa_request.C, src/types/Makefile.am, + src/types/pa_vjunction.C, src/types/pa_vjunction.h, + src/types/pa_vmethod_frame.h, src/types/types.dsp: removed + $junction.get $junction.set[] introducing $caller * src/types/pa_value.h: removed outdated comments. doxygen would find them lower by inheritance tree @@ -16093,7 +18737,7 @@ * src/types/pa_vxnode.C: misreplace fixed * configure, configure.in, src/include/pa_config_auto.h.in, - src/types/pa_vstatus.C, operators.txt: + src/types/pa_vstatus.C, operators.ru.txt, operators.txt: $status:rusage.tv_secs/usecs introduced 2002-10-09 paf @@ -16106,7 +18750,7 @@ * src/main/untaint.C: mail header quoted printable changed after RFC reread - * operators.txt: plan on ^if(method + * operators.ru.txt, operators.txt: plan on ^if(method * src/types/pa_vxnode.C: misreplace @@ -16272,18 +18916,16 @@ * 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 - hash::sql flag to allow duplicate keys [$.distinct(1/0)] first - record taken [were last] + * operators.ru.txt, operators.txt, src/classes/hash.C, + src/classes/table.C, src/include/pa_globals.h, + src/main/pa_globals.C: table.sql hash::sql flag to allow + duplicate keys [$.distinct(1/0)] first record taken [were last] * src/: classes/hash.C, classes/table.C, include/pa_sql_connection.h: table.sql hash::sql duplicate keys @@ -16305,16 +18947,17 @@ 2002-09-13 paf - * operators.txt, src/main/compile.tab.C, src/main/compile.y, - src/main/compile_tools.h: (expression #comment) + * operators.ru.txt, operators.txt, src/main/compile.tab.C, + src/main/compile.y, src/main/compile_tools.h: (expression + #comment) (multiline expression #comment line2 #comment ) (expression #comment with (brackets) comment) << OK - * operators.txt, src/main/compile.tab.C, src/main/compile.y: !| - bitwise !|| numerical xor now [preparing for expression - #comments] + * operators.ru.txt, operators.txt, src/main/compile.tab.C, + src/main/compile.y: !| bitwise !|| numerical xor now [preparing + for expression #comments] * src/main/: compile.tab.C, compile.y: @method[$name] now parse error @@ -16405,8 +19048,8 @@ 2002-09-02 paf - * operators.txt, src/main/execute.C, src/targets/cgi/parser3.dsp: - removed double_result, didn't help + * operators.ru.txt, operators.txt, src/main/execute.C, + src/targets/cgi/parser3.dsp: removed double_result, didn't help * src/main/execute.C: double_result made to move that var away from hungry g++ optimizer (-O2), before: it were optimized and @@ -16443,15 +19086,15 @@ * src/types/pa_vcookie.C: fixed cookie delete when $cookie:name[$.value[]] - * operators.txt, src/classes/string.C: + * operators.ru.txt, operators.txt, src/classes/string.C: ^string.split[delim[;options]] 2002-08-27 paf * etc/parser3.charsets/Makefile.am: merged from 3.0.0005 - * operators.txt, src/main/compile.tab.C, src/main/compile.y: # now - delimiter + * operators.ru.txt, operators.txt, src/main/compile.tab.C, + src/main/compile.y: # now delimiter * INSTALL: recommended latest gmime 1.0.5 @@ -16479,23 +19122,24 @@ * 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 * src/classes/file.C: fixed language of file:file result - * operators.txt, src/classes/void.C: ^void.pos[...] = -1 merged - from 3.0.0005 + * operators.ru.txt, operators.txt, src/classes/void.C: + ^void.pos[...] = -1 merged from 3.0.0005 - * operators.txt, src/classes/void.C: ^void.pos[...] = -1 + * operators.ru.txt, operators.txt, src/classes/void.C: + ^void.pos[...] = -1 - * operators.txt, src/classes/void.C: ^void.length[] = 0 merged from - 3.0.0005 + * operators.ru.txt, operators.txt, src/classes/void.C: + ^void.length[] = 0 merged from 3.0.0005 - * src/classes/void.C, operators.txt: ^void.length[] = 0 + * src/classes/void.C, operators.ru.txt, operators.txt: + ^void.length[] = 0 2002-08-19 paf @@ -16514,26 +19158,28 @@ * src/classes/classes.h: write to static var caused useless Exception, introduced Methoded::put_element wich consumes those - * operators.txt, src/include/pa_common.h, src/main/pa_common.C, - src/types/pa_vcookie.C, src/types/pa_vdate.h, - src/types/pa_vresponse.C, src/types/pa_vresponse.h: - $response:field[date] $response:field[$.xxx[date]] + * operators.ru.txt, operators.txt, src/include/pa_common.h, + src/main/pa_common.C, src/types/pa_vcookie.C, + src/types/pa_vdate.h, src/types/pa_vresponse.C, + src/types/pa_vresponse.h: $response:field[date] + $response:field[$.xxx[date]] * src/: classes/hash.C, classes/string.C, classes/table.C, classes/void.C, include/pa_sql_connection.h: fixed source of ^hash::sql{bad} - * operators.txt: $request:body unprecessed POST request body + * operators.ru.txt, operators.txt: $request:body unprecessed POST + request body * src/types/pa_vrequest.C: $request:body unprecessed POST request * src/types/: pa_value.h, pa_vdate.h, pa_vrequest.C, pa_vxdoc.C, pa_vxnode.C: few barks: bark("%s field not found", 0, &aname) - * operators.txt, src/classes/form.C, src/include/pa_pool.h, - src/include/pa_request.h, src/main/pa_pool.C, - src/types/pa_vform.C, src/types/pa_vform.h: planning/preparing_to - $request:body r.post_data now const + * operators.ru.txt, operators.txt, src/classes/form.C, + src/include/pa_pool.h, src/include/pa_request.h, + src/main/pa_pool.C, src/types/pa_vform.C, src/types/pa_vform.h: + planning/preparing_to $request:body r.post_data now const * src/: classes/image.C, classes/op.C, classes/xdoc.C, classes/xnode.C, main/execute.C, types/pa_value.h, @@ -16677,10 +19323,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] @@ -16691,14 +19333,15 @@ 2002-08-08 paf - * operators.txt, src/classes/date.C, src/include/pa_globals.h, - src/main/pa_globals.C: year column in month calendar [week year] + * operators.ru.txt, operators.txt, src/classes/date.C, + src/include/pa_globals.h, src/main/pa_globals.C: year column in + month calendar [week year] * src/main/execute.C: error reporting on object writes to MAIN improved [were ruind with fixing $obj[^if(1){$obj}] ] - * operators.txt, src/types/pa_vdate.h: $date.yearday - $date.daylightsaving + * operators.ru.txt, operators.txt, src/types/pa_vdate.h: + $date.yearday $date.daylightsaving * src/: classes/mail.C, types/pa_vmail.C: in letter texts one can use tainted data now. only she must specify the language. @@ -16713,9 +19356,9 @@ * src/include/pa_string.h: String::first_char now not fails on empty strings ^if(-f '') now ok and in 3 other places. - * operators.txt, src/include/pa_string.h, src/main/pa_string.C: - String::first_char now not fails on empty strings ^if(-f '') now - ok and in 3 other places. + * operators.ru.txt, operators.txt, src/include/pa_string.h, + src/main/pa_string.C: String::first_char now not fails on empty + strings ^if(-f '') now ok and in 3 other places. 2002-08-07 paf @@ -16730,8 +19373,9 @@ mistakenly not completely transparent to object writes. $hash[^if(1){$hash}] now works - * operators.txt, src/classes/op.C: ^cache...{...^cache<client only when text/* or simple - onoverridden $response:body + * operators.ru.txt, operators.txt, src/main/pa_request.C, + src/types/pa_vform.C: response transcoded source->client only + when text/* or simple onoverridden $response:body 2002-08-01 paf @@ -16905,8 +19549,8 @@ classes/Makefile.am, main/Makefile.am, targets/cgi/Makefile.am, types/Makefile.am: ident.C* removed - * operators.txt, src/classes/file.C, src/main/pa_request.C: - file:find[/can/do/this/now.txt] + * operators.ru.txt, operators.txt, src/classes/file.C, + src/main/pa_request.C: file:find[/can/do/this/now.txt] * src/targets/cgi/parser3.C: usage to stdout now @@ -16948,7 +19592,7 @@ now ok - * operators.txt: plan: sql detailed exception + * operators.ru.txt, operators.txt: plan: sql detailed exception 2002-07-01 paf @@ -16973,21 +19617,22 @@ src/targets/cgi/pa_config_paths.h.in: lates changes from 4 build merged, makes updated - * ChangeLog, configure, operators.txt, src/classes/xdoc.C, - src/include/pa_charset.h, src/include/pa_config_fixed.h, - src/include/pa_pool.h, src/include/pa_version.h, - src/main/pa_charset.C, src/main/pa_pool.C, - src/targets/cgi/parser3.dsp, src/targets/isapi/parser3isapi.dsp, - src/types/pa_vmail.C: merged latest updates to head + * ChangeLog, configure, operators.ru.txt, operators.txt, + src/classes/xdoc.C, src/include/pa_charset.h, + src/include/pa_config_fixed.h, src/include/pa_pool.h, + src/include/pa_version.h, src/main/pa_charset.C, + src/main/pa_pool.C, src/targets/cgi/parser3.dsp, + src/targets/isapi/parser3isapi.dsp, src/types/pa_vmail.C: merged + latest updates to head 2002-06-27 paf * src/targets/: cgi/parser3.dsp, isapi/parser3isapi.dsp: post-build not error now - * operators.txt, src/classes/xdoc.C, src/include/pa_charset.h, - src/include/pa_config_fixed.h, src/include/pa_pool.h, - src/main/pa_charset.C, src/main/pa_pool.C: + * operators.ru.txt, operators.txt, src/classes/xdoc.C, + src/include/pa_charset.h, src/include/pa_config_fixed.h, + src/include/pa_pool.h, src/main/pa_charset.C, src/main/pa_pool.C: ^xdoc::create[[uri]]... base uri for document being created, imports and other relative file names would be relative to this uri default uri=path_translated @@ -17009,18 +19654,18 @@ * src/main/pa_string.C: emtpy string, or string of whitespaces considered bad number now - * operators.txt, src/classes/xdoc.C: ^xdoc.transform[xdoc < - * 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, - src/include/pa_globals.h, src/targets/cgi/parser3.C, - src/targets/isapi/parser3isapi.C: parser3.conf renamed to auto.p + * INSTALL, configure.in, operators.ru.txt, 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 2002-06-18 paf @@ -17137,7 +19780,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 @@ -17145,8 +19788,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 @@ -17165,9 +19807,9 @@ 2002-06-14 paf - * operators.txt: more precise xml-to-text options + * operators.ru.txt, operators.txt: more precise xml-to-text options - * operators.txt, src/types/pa_vxnode.C: xnode + * operators.ru.txt, operators.txt, src/types/pa_vxnode.C: xnode attribute_node.name/value xnode pi.node.data 2002-06-12 paf @@ -17175,11 +19817,12 @@ * configure, configure.in, src/targets/cgi/Makefile.am, src/targets/cgi/parser3.C: removed root conf define creation - * INSTALL, configure.in, operators.txt, etc/Makefile.am, - src/include/pa_globals.h, src/include/pa_request.h, - src/main/compile.tab.C, src/main/pa_globals.C, - src/main/pa_request.C, src/targets/cgi/parser3.C, - src/targets/isapi/parser3isapi.C: parser3.conf now one and only + * INSTALL, configure.in, operators.ru.txt, operators.txt, + etc/Makefile.am, src/include/pa_globals.h, + src/include/pa_request.h, src/main/compile.tab.C, + src/main/pa_globals.C, src/main/pa_request.C, + src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C: + parser3.conf now one and only * src/classes/mail.C: sendmail -ti [default now] @@ -17206,8 +19849,9 @@ 2002-06-10 paf - * operators.txt, src/classes/op.C, src/include/pa_common.h, - src/main/pa_common.C: lock failures reported now + * operators.ru.txt, operators.txt, src/classes/op.C, + src/include/pa_common.h, src/main/pa_common.C: lock failures + reported now * src/main/compile_tools.C: ^if(" 1 "){y} bug fixed optimization string->double @ compile time were not-enough-checking... @@ -17223,7 +19867,7 @@ * configure, configure.in: hpux check, nsl link, no socket - * operators.txt: old merge conflict removed + * operators.ru.txt, operators.txt: old merge conflict removed * configure, configure.in: pack even address access on sparc&co arch checked in configure @@ -17241,9 +19885,9 @@ 2002-06-03 paf - * ChangeLog, operators.txt, etc/parser3.charsets/windows-1251.cfg, - src/classes/classes.dsp, src/main/compile.tab.C, - src/main/main.dsp, src/main/pa_globals.C, + * ChangeLog, operators.ru.txt, operators.txt, + etc/parser3.charsets/windows-1251.cfg, src/classes/classes.dsp, + src/main/compile.tab.C, src/main/main.dsp, src/main/pa_globals.C, src/targets/cgi/parser3.C, src/targets/cgi/parser3.dsp, src/targets/isapi/parser3isapi.dsp, src/types/types.dsp: fixed .dsp-s along with reorganized cvs modules dirs structure @@ -17268,13 +19912,13 @@ 2002-05-15 paf - * operators.txt, src/classes/date.C: ^date::create[%H:%M[:%S]] - added + * operators.ru.txt, operators.txt, src/classes/date.C: + ^date::create[%H:%M[:%S]] added * etc/parser3.charsets/windows-1251.cfg: 0x forgot, fixed - * operators.txt, src/classes/date.C: ^date::create[%Y[-%m[-%d[ - %H[:%M[:%S]]]]]] [-%m now + * operators.ru.txt, operators.txt, src/classes/date.C: + ^date::create[%Y[-%m[-%d[ %H[:%M[:%S]]]]]] [-%m now 2002-05-14 paf @@ -17345,10 +19989,10 @@ under that dir got REDIRECT_ prefix before HTTP_PARSER_x_CONFIG, now that took into account - * operators.txt, src/classes/date.C: ^date::create[2002-12-33 - 01:03:04] + * operators.ru.txt, operators.txt, src/classes/date.C: + ^date::create[2002-12-33 01:03:04] - * ChangeLog, operators.txt, src/classes/date.C: + * ChangeLog, operators.ru.txt, operators.txt, src/classes/date.C: ^date::create[2002-12-33 01:03:04] * ChangeLog: updated changelog @@ -17365,7 +20009,7 @@ 2002-04-23 paf - * operators.txt, src/classes/string.C: + * operators.ru.txt, operators.txt, src/classes/string.C: int/double/string:sql{}[$.default{code}] fixed [were barking: "junction used outside of context"] @@ -17571,7 +20215,8 @@ 2002-04-12 paf - * operators.txt, src/classes/table.C: table.select(expression) 0 + * operators.ru.txt, operators.txt, src/classes/table.C: + table.select(expression) 0 2002-04-11 paf @@ -17597,7 +20242,8 @@ targets/isapi/parser3isapi.C: removed { char *a; { /*sub local*/char b[...]; a=b; situations - * operators.txt, src/classes/xdoc.C: xslt params made literal + * operators.ru.txt, operators.txt, src/classes/xdoc.C: xslt params + made literal * src/classes/xdoc.C: xslt params fixed @@ -17605,8 +20251,8 @@ types/pa_vdouble.h, types/pa_vint.h: int/double get_string now not pool.malloc(MAX_NUMBER) but really neaded - * operators.txt, src/classes/double.C, src/classes/int.C: - int/double.int/double(default) + * operators.ru.txt, operators.txt, src/classes/double.C, + src/classes/int.C: int/double.int/double(default) 2002-04-04 paf @@ -17642,30 +20288,32 @@ * etc/parser3.charsets/koi8-r.cfg: koi8-r += ukranian letters - * operators.txt, src/classes/date.C: ^date::create now may not - supply day, default 1. checked 29.03 -> 29.02 roll on non 366 - days' year. | 31.05->31.04 roll + * operators.ru.txt, operators.txt, src/classes/date.C: + ^date::create now may not supply day, default 1. checked 29.03 + -> 29.02 roll on non 366 days' year. | 31.05->31.04 roll 2002-03-28 paf - * operators.txt, src/classes/date.C, src/classes/op.C, - src/include/pa_globals.h, src/include/pa_hash.h, - src/main/pa_globals.C, src/types/pa_vdate.h: ^cache[file][date]{ - ^cache(seconds) ^cache[date] } + * operators.ru.txt, operators.txt, src/classes/date.C, + src/classes/op.C, src/include/pa_globals.h, + src/include/pa_hash.h, src/main/pa_globals.C, + src/types/pa_vdate.h: ^cache[file][date]{ ^cache(seconds) + ^cache[date] } * src/classes/: xdoc.C, xnode.C, xnode.h: removed redundant pool param 2002-03-27 paf - * operators.txt, src/classes/date.C, src/classes/double.C, - src/classes/file.C, src/classes/form.C, src/classes/hash.C, - src/classes/image.C, src/classes/int.C, src/classes/mail.C, - src/classes/math.C, src/classes/op.C, src/classes/string.C, - src/classes/table.C, src/classes/void.C, src/classes/xdoc.C, - src/classes/xnode.C, src/include/pa_exception.h, - src/include/pa_request.h, src/include/pa_stylesheet_connection.h, - src/main/compile.C, src/main/compile_tools.C, src/main/execute.C, + * operators.ru.txt, operators.txt, src/classes/date.C, + src/classes/double.C, src/classes/file.C, src/classes/form.C, + src/classes/hash.C, src/classes/image.C, src/classes/int.C, + src/classes/mail.C, src/classes/math.C, src/classes/op.C, + src/classes/string.C, src/classes/table.C, src/classes/void.C, + src/classes/xdoc.C, src/classes/xnode.C, + src/include/pa_exception.h, src/include/pa_request.h, + src/include/pa_stylesheet_connection.h, src/main/compile.C, + src/main/compile_tools.C, src/main/execute.C, src/main/pa_array.C, src/main/pa_charset.C, src/main/pa_charsets.C, src/main/pa_common.C, src/main/pa_dictionary.C, src/main/pa_exception.C, @@ -17680,10 +20328,10 @@ src/types/pa_vxnode.h, src/types/pa_wcontext.C, src/types/pa_wwrapper.h: assigned exception types - * operators.txt, src/classes/op.C, src/include/pa_config_fixed.h, - src/include/pa_request.h, src/main/execute.C, - src/main/pa_request.C: decided agains resetting exception_trace, - just changed name + * operators.ru.txt, operators.txt, src/classes/op.C, + src/include/pa_config_fixed.h, src/include/pa_request.h, + src/main/execute.C, src/main/pa_request.C: decided agains + resetting exception_trace, just changed name 2002-03-26 paf @@ -17694,17 +20342,18 @@ to 'tainted', so that sql-langed-frags could be outputed outside of connect - * operators.txt: removed date.roll limit of +-1 offset + * operators.ru.txt, operators.txt: removed date.roll limit of +-1 + offset * src/classes/date.C: removed date.roll limit of +-1 offset - * operators.txt, src/classes/date.C: fixed date roll on - daylightsaving days mktime took into account tm_isdst flag, which - remained from BEFORE roll, but should have been reset + * operators.ru.txt, operators.txt, src/classes/date.C: fixed date + roll on daylightsaving days mktime took into account tm_isdst + flag, which remained from BEFORE roll, but should have been reset 2002-03-25 paf - * operators.txt, src/targets/cgi/parser3.C: + * operators.ru.txt, operators.txt, src/targets/cgi/parser3.C: http_site_config_filespec * src/: classes/file.C, classes/mail.C, include/pa_exec.h, @@ -17718,7 +20367,7 @@ src/targets/cgi/Makefile.am: --disable-foreign-group-files now disables execs also. introducing --sendmail - * operators.txt: pgsql options comment + * operators.ru.txt, operators.txt: pgsql options comment * INSTALL: comment on --disable-link-stdcpp @@ -17734,21 +20383,22 @@ * src/main/pa_exec.C: createprocess nowindow flag check on readfile false return - * operators.txt: few comments on sets + * operators.ru.txt, operators.txt: few comments on sets 2002-03-18 paf - * operators.txt, src/classes/op.C, src/include/pa_exception.h, - src/include/pa_globals.h, src/include/pa_request.h, - src/include/pa_stack.h, src/main/pa_globals.C, - src/main/pa_request.C: introducing ^try + * operators.ru.txt, operators.txt, src/classes/op.C, + src/include/pa_exception.h, src/include/pa_globals.h, + src/include/pa_request.h, src/include/pa_stack.h, + src/main/pa_globals.C, src/main/pa_request.C: introducing ^try * src/: main/pa_charset.C, targets/isapi/pa_threads.C, types/pa_vdouble.h: removed some tested @tests 2002-03-15 paf - * operators.txt, src/classes/table.C: ^table.locate(logical expr) + * operators.ru.txt, operators.txt, src/classes/table.C: + ^table.locate(logical expr) 2002-03-13 paf @@ -17775,11 +20425,11 @@ 2002-03-05 paf - * operators.txt, src/classes/date.C: date week calendar columns - named + * operators.ru.txt, operators.txt, src/classes/date.C: date week + calendar columns named - * operators.txt, src/classes/date.C: date week calendar columns - named + * operators.ru.txt, operators.txt, src/classes/date.C: date week + calendar columns named * src/targets/isapi/: parser3isapi.C, parser3isapi.dsp: iis5 now requires headers to be terminated with \r\n manually [refuses to @@ -17821,7 +20471,7 @@ * INSTALL: shared/static-xml with-pathlink - * operators.txt: SMTP comment + * operators.ru.txt, operators.txt: SMTP comment 2002-02-26 paf @@ -17854,8 +20504,8 @@ * src/types/pa_vcookie.C: cookie "expires=0" = "session" - * operators.txt, src/types/pa_vcookie.C: cookie "expires=0" = - "session" + * operators.ru.txt, operators.txt, src/types/pa_vcookie.C: cookie + "expires=0" = "session" * configure, configure.in, src/include/pa_config_auto.h.in: --with-shared-xml --with-static-xml @@ -17867,9 +20517,9 @@ * acconfig.h: acconfig move in cvs[from src/libltdl to /] - * operators.txt, src/classes/classes.dsp, src/main/main.dsp, - src/types/types.dsp: removed hashfile support from sources for - now + * operators.ru.txt, operators.txt, src/classes/classes.dsp, + src/main/main.dsp, src/types/types.dsp: removed hashfile support + from sources for now * configure, configure.in, src/classes/Makefile.am, src/classes/hashfile.C, src/include/Makefile.am, @@ -17909,7 +20559,7 @@ main/untaint.C, targets/cgi/parser3.C, types/pa_vcookie.C, types/pa_vstring.h: speed uptimized: string::is_empty - * operators.txt, src/include/pa_common.h, + * operators.ru.txt, operators.txt, src/include/pa_common.h, src/include/pa_config_fixed.h, src/include/pa_string.h, src/include/pa_types.h, src/main/compile.tab.C, src/main/execute.C, src/main/pa_string.C, src/main/untaint.C, @@ -17953,10 +20603,11 @@ targets/cgi/parser3.dsp, types/types.dsp: win32xml now contains gnome xml libs parser .dsp-s changed accordingly - * operators.txt, src/targets/cgi/parser3.C: PARSER_ROOT_CONFIG + * operators.ru.txt, operators.txt, src/targets/cgi/parser3.C: + PARSER_ROOT_CONFIG - * operators.txt, src/classes/date.C: date::create [were date::set, - with backward comp + * operators.ru.txt, operators.txt, src/classes/date.C: date::create + [were date::set, with backward comp * src/classes/math.C: math:random range check fixed @@ -17971,7 +20622,7 @@ src/include/pa_config_includes.h, src/targets/cgi/Makefile.am, src/targets/cgi/parser3.C: removed libtool usage from build mech - * operators.txt: \ comment + * operators.ru.txt, operators.txt: \ comment 2002-02-13 paf @@ -18133,14 +20784,16 @@ * src/main/: compile.C, compile.tab.C, compile.y, compile_tools.h: disabled $if reference due to conflicts with local variables - * operators.txt, src/classes/xdoc.C, src/include/pa_config_fixed.h: - xdoc::set obsolete now, now xdoc::create, with both sences - - * operators.txt, src/classes/table.C, src/include/pa_array.h, - src/include/pa_table.h, src/main/pa_array.C, src/main/pa_table.C: - table::create now // 'set' name obsolete now table clone. + * operators.ru.txt, operators.txt, src/classes/xdoc.C, + src/include/pa_config_fixed.h: xdoc::set obsolete now, now + xdoc::create, with both sences + + * operators.ru.txt, operators.txt, src/classes/table.C, + src/include/pa_array.h, src/include/pa_table.h, + src/main/pa_array.C, src/main/pa_table.C: table::create now // + 'set' name obsolete now table clone. - * operators.txt, src/classes/string.C, + * operators.ru.txt, operators.txt, src/classes/string.C, src/include/pa_config_fixed.h, src/main/compile.tab.C: ^int/double/string.format now can be called with normal [] brackets, not stupid {} as it were implemented for some strange @@ -18159,11 +20812,12 @@ * configure, configure.in: prefix expanded, grr - * operators.txt, src/classes/mail.C: mail:send config changed + * operators.ru.txt, operators.txt, src/classes/mail.C: mail:send + config changed 2002-02-05 paf - * operators.txt: regex options commented + * operators.ru.txt, operators.txt: regex options commented * src/main/: pa_exec.C: argv0 now correct @@ -18171,15 +20825,16 @@ * src/types/pa_vstatus.C: status:rusage 2 - * operators.txt: status:rusage described int operators + * operators.ru.txt, operators.txt: status:rusage described int + operators * src/types/pa_vstatus.C: status:rusage 1 * configure.in, src/types/Makefile.am, src/types/pa_vstatus.h, src/types/types.dsp: status:rusage - * configure.in, operators.txt, src/classes/file.C, - src/classes/op.C, src/include/pa_common.h, + * configure.in, operators.ru.txt, operators.txt, + src/classes/file.C, src/classes/op.C, src/include/pa_common.h, src/include/pa_config_includes.h, src/main/compile.tab.C, src/main/pa_common.C: rewritten ^cache to use non-blocking-exclusive-caches @@ -18242,8 +20897,8 @@ acinclude.m4, aclocal.m4, asm.txt, config.guess, config.sub, configure, configure.in, form.txt, ident.awk, install-sh, lang.txt, ltconfig, ltmain.sh, missing, mkinstalldirs, - operators.txt, parser3.dsw, sql.txt, types.txt, etc/Makefile.am, - etc/parser3.charsets/Makefile.am, + operators.ru.txt, operators.txt, parser3.dsw, sql.txt, types.txt, + etc/Makefile.am, etc/parser3.charsets/Makefile.am, etc/parser3.charsets/koi8-r.cfg, etc/parser3.charsets/windows-1250.cfg, etc/parser3.charsets/windows-1251.cfg, src/Makefile.am,