Diff for /parser3/ChangeLog between versions 1.201 and 1.248

version 1.201, 2024/10/14 02:05:17 version 1.248, 2026/11/02 02:05:14
Line 1 Line 1
   2026-11-02  moko
   
           * tests/: 207.html, results/207.processed: min/max tests added
             (related to feature #1316)
   
           * src/classes/math.C: ^math:min(n1;n2;...) and ^math:max(n1;n2;...)
             added (implements feature #1316)
   
   2026-11-01  moko
   
           * tests/: 185.html, 477.html, results/185.processed,
             results/477.processed: rpos UTF-8 and pos/rpos Windows-1251 tests
             added (related to feature #1180)
   
           * src/: classes/string.C, include/pa_string.h, main/pa_string.C:
             ^string.rpos[substing] added (implements feature #1180)
   
   2026-10-31  moko
   
           * src/classes/op.C: fix_line_breaks called for process code if
             requied as compiler treats \r as part of the name (implements
             feature #850)
   
   2026-10-30  moko
   
           * tests/: 475.html, httpd/response-timeout/site/config.p: tests
             tuned a bit (reduce memory requirements)
   
           * src/: main/pa_http.C, targets/cgi/parser3.C: non-blocking reading
             for the request on 503 error to avoid connection reset (related
             to feature #1312)
   
           * tests/httpd/code-cache/run_tests.sh: FreeBSD tune
   
           * tests/httpd/code-cache/run_tests.sh: tuned for FreeBSD
   
           * tests/httpd/max-connections/run_tests.sh: FreeBSD fixes
   
           * tests/httpd/max-connections/run_tests.sh: adopted for FreeBSD
   
           * tests/httpd/response-timeout/run_tests.sh: fixed in parser3
   
           * src/main/pa_globals.C: libxml errors for threads fixed
   
           * tests/httpd/response-timeout/run_tests.sh: test tune for FreeBSD
   
           * src/main/pa_http.C: option if no cloexit
   
           * tests/httpd/response-timeout/: run_tests.sh, site/hang.sh: minor
             updates
   
           * tests/httpd/response-timeout/: ok.log, run_tests.sh,
             site/config.p, site/detach.sh, site/hang.sh: $response:timeout
             httpd tests (related to feature #1312)
   
   2026-10-29  moko
   
           * src/main/pa_threads.C: FreeBSD fix
   
           * src/: include/pa_socks.h, main/pa_http.C, main/pa_socks.C:
             connect also can be interrupted - pa_sock_connect added (related
             to feature #1312)
   
           * tests/httpd/max-connections/: ok.log, run_tests.sh,
             site/config.p: $HTTPD.max-connections test added (related to
             feature #1312)
   
           * tests/: 475.html, results/475.processed: $response:timeout test
             added (related to feature #1312)
   
           * configure.ac, src/include/pa_config_auto.h.in,
             src/include/pa_config_includes.h, src/main/pa_threads.C: more
             FreeBSD fixes
   
           * src/main/pa_os.C: FreeBSD fixes
   
           * src/: include/pa_config_includes.h, include/pa_os.h,
             include/pa_version.h, main/pa_os.C, main/pa_threads.C: FreeBSD
             timers support
   
           * configure.ac: +FreeBSD timers support
   
           * src/include/pa_version.h: response-timeout added to parser
             features list
   
           * configure.ac: rt required for timer_create on older linux
   
           * src/: classes/op.C, include/pa_os.h, main/pa_os.C,
             main/pa_xml_io.C: interruption tuned (related to feature #1312)
   
           * buildall: avoid aclocal
   
   2026-10-28  moko
   
           * configure.ac: gettid check fixed
   
           * src/: include/pa_exec.h, main/pa_exec.C, main/pa_http.C,
             targets/cgi/parser3.C: exec children are now also kill on
             response timeout (related to feature #1312)
   
           * src/: classes/op.C, include/pa_exception.h, main/pa_request.C:
             Interrupted exception should be uncatchable, as recoursion
             (related to feature #1312)
   
           * src/: include/pa_request.h, main/execute.C, main/pa_request.C,
             targets/cgi/parser3.C, types/pa_vmethod_frame.C: request:
             finterrupted added, if fskip was overwritten, the next set_skip()
             restores SKIP_INTERRUPTED from it (related to feature #1213)
   
           * src/: include/pa_globals.h, main/pa_globals.C, main/pa_request.C,
             targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C:
             RequestController optmized out (related to feature #1312)
   
           * src/: classes/op.C, classes/websocket.C, include/pa_os.h,
             include/pa_sapi.h, main/execute.C, main/pa_os.C,
             main/pa_sql_driver_manager.C, main/pa_stylesheet_manager.C,
             targets/apache/mod_parser3_core.C, targets/cgi/pa_sapi_info.h,
             targets/cgi/parser3.C, targets/isapi/parser3isapi.C,
             types/pa_vresponse.C, types/pa_vresponse.h: $response:timeout
             implemented, Linux only (related to feature #1312)
   
   2026-10-27  moko
   
           * operators.ru.txt, operators.txt, src/targets/cgi/parser3.C:
             sigpipe handler now empty and $MAIN:SIGPIPE(1) ignored: it was
             not called in cgi mode anyway, as parser does not write anything
             until all code is executed, but it was called in ^exec if called
             program ignore stdin. Not SIG_IGN, as the ignored signal is
             inherited by the executed programs (related to feature #1312)
   
           * src/targets/cgi/parser3.C: pa_log now uses open/single
             write/close insead of fopen/fwrite/fclose (as they async signal
             safe) (related to feature #1312)
   
   2026-10-26  moko
   
           * src/targets/cgi/parser3.C: logging for 503 errors added (related
             to feature #1312)
   
           * src/: include/pa_http.h, main/pa_http.C, main/pa_request.C,
             targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C,
             types/pa_vstatus.C: $HTTPD.max-connections added (implements
             feature #1312)
   
   2026-10-25  moko
   
           * tests/: 474.html, results/474.processed: more tests for json
             $.distinct[all]
   
           * src/classes/json.C: replaced linar free key search with binary
             search for $.distinct[all]
   
           * src/classes/image.C: Measure_budget added to limit the work a
             measured file can require
   
   2026-10-23  moko
   
           * etc/auto.p.in: $LIMITS commented to allow their specification
             from outside when using default auto.p
   
           * src/: include/pa_os.h, include/pa_request.h, main/pa_request.C,
             types/pa_vclass.C, types/pa_vclass.h,
             types/pa_vstateless_class.C, types/pa_vstateless_class.h,
             types/pa_vvoid.h: thread safety for @conf: THREAD_LOCAL specified
             where should be, CONF_OPTION used for bool values,
             SYMBOLS_CACHING used only for native methods names to aboid
             Symbols modifications in threads.
   
           * buildall: avoid autotools calls when checked from git (related to
             feature #1268)
   
           * src/lib/gd/: gif.h, gifio.C: multithreading support, upstream
             changes (related to feature #1268)
   
           * etc/auto.p.in, src/include/pa_request.h, src/main/pa_request.C,
             src/types/pa_vclass.C, src/types/pa_vclass.h: @mime-types[]
             replaced with @GET_MIME-TYPES[] for better compatibility (related
             to feature #1311)
   
           * tests/473.html: @mime-types[] -> @GET_MIME-TYPES[] (related to
             feature #1311)
   
           * tests/: 464.html, 465.html, results/464.processed,
             results/465.processed: $response:started tested (related to
             feature #1306)
   
           * tests/: 473.html, results/473.processed: test for @mime-types[]
             added (related to feature #1311)
   
           * etc/auto.p.in, src/include/pa_request.h, src/main/pa_request.C:
             optimization: $MAIN:MIME-TYPES is replaced with @mime-types[],
             which is called only if needed (implements feature #1311)
   
           * src/main/pa_http.C: recycle headers buffer if nothing left
   
   2026-10-22  moko
   
           * src/: classes/op.C, types/pa_vclass.h: MAIN native methods are
             cached in a singleton
   
           * src/types/pa_vregex.C: minor tuning
   
           * src/types/: pa_vregex.C, pa_vregex.h: compiled regexe patterns
             are now cached and can be reused: in a loop, by the other threads
             and by the next httpd requests
   
           * buildall: cmake check added
   
           * configure.ac: cmake builds .a, not .la
   
           * buildall: avoid extra 16Kb stack memory clear (increases memory
             consumption when many threads)
   
   2026-10-19  moko
   
           * src/: include/pa_exception.h, include/pa_memory.h,
             main/pa_exception.C, main/pa_memory.C, main/pa_xml_exception.C,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C: Temp_gc_references added and used
   
           * src/main/pa_http.C: increase listen queue as websocket support
             was added
   
           * src/targets/cgi/parser3.C: minor logging fixes
   
           * src/: classes/inet.C, classes/reflection.C, include/pa_common.h,
             lib/smtp/smtp.C, main/execute.C, main/pa_common.C, main/pa_dir.C,
             main/pa_exception.C, main/pa_globals.C, main/pa_int.C,
             main/pa_random.C, main/pa_request.C, main/pa_string.C,
             main/pa_xml_exception.C, targets/apache/mod_parser3_core.C,
             targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C, types/pa_vdate.C,
             types/pa_vdouble.h, types/pa_vmail.C: pa_snprintf and
             pa_vsnprintf are now called explicitly, snprintf/vsnprintf macros
             removed only Windows _vsnprintf needs size-1, thus "+1 for faulty
             snprintfs" removed.
   
   2026-10-18  moko
   
           * src/: include/pa_socks.h, main/pa_socks.C: hopefully final turing
             for EINTR handling
   
           * src/: include/pa_socks.h, main/pa_http.C, main/pa_socks.C,
             main/pa_websocket.C: EINTR handling tuned once again
   
           * src/: include/pa_socks.h, main/pa_http.C, main/pa_os.C,
             main/pa_socks.C, main/pa_websocket.C: pa_sock_recv / pa_sock_send
             added to continue if interruped (usually by GC)
   
   2026-10-17  moko
   
           * tests/httpd/websocket-app/: config.p, index.html, run_server.sh:
             websocket demo added (related to feature #1310)
   
           * tests/httpd/site/config.p: comment tuned
   
           * tests/httpd/: 044.txt, ok.log, site/config.p, site/form.html:
             testing the $form is refilled after the POST is read
   
           * src/types/: pa_vform.C, pa_vform.h: the POST content should be
             checked in refill confition, as is read after @conf, where $form
             can be accessed (for query string only)
   
   2026-10-16  moko
   
           * src/classes/amqp.C: repair channel tuned: the new channel gets a
             new number as the deliveries the broker has sent on the dead one
             may still be in the library's buffers (related to feature #1288)
   
           * tests/results/: 323.processed, 421.processed: tests results
             updated after websocket class was added (related to feature
             #1310)
   
           * src/: classes/form.C, classes/websocket.C, include/pa_request.h,
             main/pa_request.C, main/pa_websocket.C: post_max_size moved to
             request:configure_admin and used in websocket as well, warnings
             war (related to feature #1310)
   
           * src/: classes/Makefile.am, classes/classes.vcproj,
             include/Makefile.am, lib/md5/Makefile.am, lib/md5/md5.vcproj,
             main/Makefile.am, main/main.vcproj: project files updates for
             websocket (RFC 6455) support (related to feature #1310)
   
           * src/: classes/classes.C, classes/math.C, classes/websocket.C,
             include/pa_http.h, include/pa_request.h, include/pa_socks.h,
             include/pa_websocket.h, lib/md5/pa_sha1.C, lib/md5/pa_sha1.h,
             lib/md5/pa_sha2.c, lib/md5/pa_sha2.h, main/pa_http.C,
             main/pa_request.C, main/pa_socks.C, main/pa_websocket.C,
             targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C,
             types/pa_vresponse.C, types/pa_vresponse.h: websocket (RFC 6455)
             support added (implements feature #1310) sha1 code moved to
             lib/md5.
   
   2026-10-15  moko
   
           * src/classes/response.C, src/include/pa_request.h,
             src/main/pa_request.C, tests/464.html, tests/465.html,
             tests/466.html, tests/467.html, tests/468.html,
             tests/results/468.processed: ^response:send[] ->
             response:stream[] (related to feature #1306)
   
   2026-10-14  moko
   
           * src/: include/pa_http.h, include/pa_socks.h, main/pa_http.C,
             main/pa_socks.C: select -> poll
   
           * tests/results/: 175.processed, 180.processed, 195.processed,
             298.processed, 380.processed: try-catch-comment whitespace tuned
   
           * tests/memcached/: 001.html, ok.log: tests for array support in
             memcached:mget added (related to feature #1309)
   
           * src/classes/memcached.C: memcached:mget - array support added
             (implements feature #1309)
   
           * tests/: 468.html, results/468.processed, results/auto.p: many
             more tests for get_element/get_element4call added (related to
             feature #1307)
   
   2026-10-13  moko
   
           * src/: classes/json.C, classes/op.C, classes/reflection.C,
             include/pa_request.h, include/pa_string.h, main/pa_request.C,
             main/untaint.C, types/pa_vresponse.C, types/pa_vresponse.h:
             $response:untaint added, it allows to change response data
             untainting lang (implements feature #1308) get_untaint_lang
             renamed to String::name2lang, String::lang2name added
   
           * src/: include/pa_request.h, main/pa_request.C: cleanup: response
             untainting lang can't be changed since Temp_lang removal (#1091),
             thus save/restore no longer required
   
           * src/types/pa_vresponse.C: VResponse joins "open key class list"
             (related to feature #1307)
   
           * tests/: memcached/003.html, memcached/ok.log, redis/006.html,
             redis/ok.log: more tests for key/method priority added
   
           * src/types/: pa_varray.h, pa_vconsole.h, pa_vcookie.C, pa_venv.C,
             pa_vform.C, pa_vhash.h, pa_vhashfile.h, pa_vmemcached.C,
             pa_vredis.h, pa_vrequest.C, pa_vstateless_class.h, pa_vstatus.C,
             pa_vstring.h, pa_vtable.C, pa_vtable.h:
             MAYBE_GET_SPECIAL_OR_METHOD and MAYBE_GET_SPECIAL added ans used
             to avoid OPTIMIZE_BYTECODE_GET_ELEMENT__SPECIAL defines; used in
             memcached and hashfile to allow keys with method names
   
   2026-10-11  moko
   
           * tests/: 467.html, results/467.processed: ^sse[] demo for
             ^response:send[] added (related to feature #1306)
   
           * tests/httpd/: run_tests.cmd, run_tests.ps1:
             run_tests.cmd/run_tests.ps1 added to test httpd under Windows
   
           * src/main/: pa_common.C, pa_dir.C, pa_file.C: pa_utf16_encode no
             longer throws exception on bad UTF-8 to avoid undesired file
             functions exceptions under Windows (errno is set instead)
   
           * tests/httpd/: ok.log, run_tests.sh, site/config.p,
             site/run_server.sh: httpd run_tests.sh now runs/stops parser
             webserver, default auto.p used
   
           * etc/auto.p.in: $CHARSETS fully commented to allow redefinition in
             tests
   
           * src/main/pa_http.C: socket timeout used not only under windows,
             but also in linux threaded mode, where alarm is not available
   
   2026-10-10  moko
   
           * tests/: memcached/001.html, memcached/config.p, memcached/ok.log,
             redis/config.p, redis/ok.log: minor code cleanup in tests
   
           * tests/: 464.html, 465.html, 466.html, results/464.processed,
             results/465.processed, results/466.processed: tests for
             ^response:send[part] added (related to feature #1306)
   
           * src/: classes/response.C, include/pa_request.h,
             main/pa_request.C: ^response:send[part] added (implements feature
             #1306)
   
           * src/: include/pa_request.h, main/pa_request.C,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C: header_only param optimized out
   
           * src/classes/amqp.C: more correct amqp exception handling
   
           * tests/memcached/: 001.html, 002.html, config.p, ok.log,
             run_tests.sh: memcached tests commited
   
           * src/: classes/amqp.C, lib/memcached/pa_memcached.C,
             lib/memcached/pa_memcached.h, types/pa_vmemcached.C: minor memory
             licks fixed, memcached get uses mget to avoid memory leak
   
           * src/targets/cgi/parser3.C: pooled fix for memcached
   
           * src/: classes/amqp.C, classes/memcached.C, classes/redis.C,
             types/pa_vamqp.h, types/pa_vmemcached.h, types/pa_vredis.h: amqp,
             redis, memcached are now Pooled - to close connection if no
             release was called
   
   2026-10-09  moko
   
           * tests/: 463.html, results/463.processed: tests for a constructor
             called as a method of a created object
   
           * src/: classes/hashfile.C, types/pa_vhashfile.C,
             types/pa_vhashfile.h, types/pa_vimage.h, types/pa_vmemcached.C,
             types/pa_vregex.C: more checks for a constructor called as a
             method of a created object
   
           * operators.ru.txt, operators.txt: amqp and redis documented
             (related to feature #1288 and #1304)
   
           * src/: classes/amqp.C, types/pa_vamqp.h: warning war:
             librabbitmq>0.12 by default, PA_AMQP_COMPAT added for older
             versions (related to feature #1288)
   
           * src/: classes/classes.vcproj, include/pa_config_fixed.h,
             lib/pcre/pcre_internal.vcproj, main/main.vcproj,
             main/pa_globals.C, targets/apache/ApacheModuleParser3.vcproj,
             targets/apache/ApacheModuleParser3Core.vcproj,
             targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj,
             types/types.vcproj: msvc: hiredis added, pcre2 added under
             windows (related to feature #1304)
   
           * buildall: pcre jit is not used anyway
   
           * tests/redis/: 001.html, 002.html, 003.html, 004.html, 005.html,
             config.p, ok.log, run_tests.sh: tests for redis integration added
             (related to feature #1304)
   
           * src/: classes/redis.C, types/pa_vredis.h: redis SSL support
             added, similar to AMQP (related to feature #1304)
   
   2026-10-08  moko
   
           * configure.ac: WITH_AMQP_SSL check tuned
   
           * src/classes/amqp.C, src/include/pa_config_auto.h.in,
             src/include/pa_config_fixed.h, src/include/pa_version.h,
             configure.ac: +WITH_REDIS_SSL, WITHOUT_AMQP_SSL -> WITH_AMQP_SSL
   
           * buildall: use gmake under FreeBSD
   
           * configure.ac: configure: Checks for libraries moved before
             features as redis require -lm on FreeBSD
   
   2026-10-07  moko
   
           * tests/460.html: sort added
   
           * tests/results/425.processed: PCRE2 10.44 -> PCRE2 10.49
   
           * src/: classes/file.C, include/pa_version.h,
             targets/cgi/parser3.C, targets/isapi/parser3isapi.C,
             types/pa_venv.C: PARSER_VERSION_WITH_FEATURES added and used
             (implements feature #1305)
   
           * buildall: --with-amqp, --with-redis added, --with-pic now by
             default, gc: libatomic_ops-7.6.2 -> libatomic_ops-7.10.0,
             gc-8.0.4 -> gc-8.2.12, pcre2-10.44 -> pcre2-10.49 gc, pcre,
             rabbitmq-c, hiredis - now all in lib folder (related to feature
             #1268)
   
           * src/classes/redis.C: redis file commands prefix changed to f-
             (related to feature #1304)
   
           * configure.ac: hiredis is build without libtool (related to
             feature #1304)
   
           * configure.ac: amqp_ssl_socket.h check added to defune
             WITHOUT_AMQP_SSL (related to feature #1288)
   
           * src/classes/redis.C: file- prefix implemented to get file result
             from any redis command (related to feature #1304)
   
           * src/classes/: amqp.C, file.C, redis.C: more headers reoder and
             cleanup
   
           * src/classes/redis.C: headers cleanup and reorder (related to
             feature #1304)
   
           * configure: autoreconf after redis was added (related to feature
             #1304)
   
           * tests/results/: 323.processed, 421.processed: tests results
             updated after redis class was added (related to feature #1304)
   
           * buildall, configure.ac: --with-redis option added to enable redis
             support using hiredis (related to feature #1304)
   
           * src/: classes/Makefile.am, classes/classes.C,
             classes/classes.vcproj, classes/redis.C,
             include/pa_config_auto.h.in, targets/apache/Makefile.am,
             targets/cgi/Makefile.am, types/Makefile.am, types/pa_vredis.h:
             class with redis support added (implements feature #1304)
   
   2026-10-06  moko
   
           * src/types/pa_vtable.C: compile fix with FEATURE_GET_ELEMENT4CALL
             undefined
   
           * tests/httpd/code-cache/: ok.log, run_tests.sh, site/cached.p,
             site/config.p, site/extend.p, site/late.p, site/tests.p: tests
             for code caching in httpd mode (related to feature #1302)
   
           * tests/: 182.html, results/182.processed: test for
             ^reflection:used[] added (related to feature #1303)
   
           * tests/results/415.processed: actualized after Bison upgrade
   
   2026-10-05  moko
   
           * src/classes/reflection.C: ^reflection:used[] added, list of
             @USE-d files (implements feature #1303)
   
           * src/: include/Makefile.am, include/pa_code_cache.h,
             include/pa_request.h, main/Makefile.am, main/compile.C,
             main/compile.y, main/compile_tools.h, main/main.vcproj,
             main/pa_code_cache.C, main/pa_request.C, targets/cgi/parser3.C,
             types/pa_vstateless_class.C: code caching implemented for httpd
             mode: it records and then replays the compilation using the
             cached methods (implements feature #1302), pa_code_cache.h/.C
             added
   
           * src/main/compile.tab.C: updated with Bison 3.8.2 from Debian 13
   
           * src/main/compile.y: define parse.error verbose used for newer
             Bison
   
   2026-10-03  moko
   
           * tests/: 436.html, 462.html, results/436.processed,
             results/462.processed: ", actual filename" tested (related to
             feature #1299)
   
           * src/: classes/file.C, include/pa_file.h, main/pa_exec.C,
             main/pa_file.C: avoid the duplicated <name> ", actual filename
             <name>" when untainting did not change the original <name>
             (related to feature #1299)
   
           * tests/results/293.processed: test result updated after js
             tainting tuning (related to feature #1301)
   
           * tests/: 462.html, results/462.processed: test for tuned json
             tainting added (related to feature #1301)
   
           * src/main/untaint.C: json tainting tuned (implements feature
             #1301)
   
   2026-10-02  moko
   
           * tests/: 461.html, results/461.processed: test for ^file:list[
             $.exception(true) ] feature added (related to feature #1084)
   
           * src/: classes/file.C, include/pa_dir.h, main/pa_dir.C:
             ^file:list[no-such-directory] throws exception if
             $.exception(true) is passed (implements feature #1084)
   
           * src/: include/pa_os.h, main/pa_os.C: pa_set_errno added which
             sets errno as CRT functions for unix compatibility (related to
             feature #1084)
   
           * src/: classes/file.C, include/pa_file.h, main/pa_file.C,
             main/pa_request.C: path_cmp added with strncasecmp under Windows
             (related to feature #1300)
   
   2026-10-01  moko
   
           * src/classes/file.C, tests/460.html, tests/results/460.processed:
             ^file:diskpath[] added, returns full disk for web or relative
             path; file:// and C:\ resolved as well, tests updated
             (implemented feature #58)
   
           * tests/: 460.html, results/460.processed: tests for filenames
             tainting and that path scheme should not be tainted (related to
             feature #1299)
   
           * src/: include/pa_file.h, include/pa_request.h, main/pa_file.C,
             main/pa_request.C: tainting check in file:// added for -f and
             similar as well (related to feature #1299)
   
           * src/: include/pa_common.h, include/pa_file.h,
             include/pa_string.h, main/pa_common.C, main/pa_file.C,
             main/pa_string.C: file:// and others schemes should not be from
             external sources aka tainted (related to feature #1299)
   
           * src/main/untaint.C: '\' is a path separator everywhere, tainting
             updated (related to feature #1300)
   
           * tests/console/: ok.log, run_tests.sh, 001/config.p, 001/lib.p,
             001/page.html, 002/auto.p, 002/page.html: tests for args handling
             in console mode (related to feature #1300)
   
           * src/targets/cgi/parser3.C: '\' as a path separator for config and
             log options (related to feature #1300)
   
   2026-09-30  moko
   
           * tests/: 459.html, results/459.processed: tests added for '\' is a
             path separator on all platforms (related to feature #1300)
   
           * src/main/: pa_file.C, pa_request.C: file://server/share/path
             support under windows added (related to feature #1299)
   
           * src/include/: pa_file.h, pa_request.h, pa_request_info.h:
             '/'-normalization documented (related to feature #1300)
   
           * src/: classes/file.C, include/pa_common.h,
             include/pa_request_info.h, main/pa_common.C, main/pa_file.C,
             main/pa_request.C, targets/apache/mod_parser3_core.C,
             targets/cgi/parser3.C, targets/isapi/parser3isapi.C,
             types/pa_vrequest.C: '\' was a path separator on Linux for file
             path functions only, now for file operations as well; file names
             are '/' separated internally, document root is also kept without
             the trailing '/' (implements feature #1300)
   
           * src/include/pa_string.h: strrchr added
   
   2026-09-29  moko
   
           * tests/: 459.html, results/459.processed: tests for file functions
             prefix checks added; file:// prefix tests (related to feature
             #1299)
   
           * src/: classes/file.C, classes/table.C, classes/xdoc.C,
             include/pa_file.h, include/pa_request.h, main/execute.C,
             main/pa_file.C, main/pa_request.C, targets/cgi/parser3.C: all
             file functions now check prefix, http:// and parser:// is
             accepted only where allowed; file:// prefix added to specify OS
             disk path (implements feature #1299)
   
   2026-09-28  moko
   
           * src/lib/ltdl/: configure.ac, ltdl.vcproj: ltdl: assertions now
             disabled in a release build, NDEBUG added to MSVC release build
   
           * src/main/: pa_request.C, pa_xml_io.C: http:// and file:// must be
             tested as prefixes, last rsplit(hpath, '/') documented as OK.
   
           * src/main/: pa_file.C, pa_request.C: regression: / should be
             checked first (related to feature #941)
   
           * src/main/pa_file.C: whitespace
   
           * src/main/pa_request.C, tests/458.html,
             tests/results/458.processed: comments and test for MSVC win64
             exception handling added
   
           * src/targets/cgi/parser3.vcproj: StackReserveSize changed to 40Mb
             for MSVC, to allow full 3 levels of win64 Exception Handling
   
           * tests/450-curl.html: windows support
   
           * src/: main/pa_request.C, targets/cgi/parser3.vcproj:
             StackReserveSize changed to 32Mb for MSVC, stack usage
             calculations documented (inluding ~10Kb for win64 Exception
             Handling)
   
   2026-09-27  moko
   
           * src/targets/: apache/mod_parser3_core.C, cgi/parser3.C,
             isapi/parser3isapi.C: fixed ExceptionAddress output for Windows
             x64
   
           * src/lib/ltdl/ltdl.c: restored local libltdl patch "fixes for
             Win32 and broken FreeBSD (issue #45)" which was list during ltdl
             update
   
           * src/lib/ltdl/: lt__argz.h, ltdl.vcproj: Windows build fix
   
           * src/: classes/image.C, main/pa_file.C, main/pa_request.C: minor:
             %.15g + double replaced with %s + pa_(u)itoa.
   
           * src/main/pa_dir.C: file related functions moved to pa_file
             (related to feature #941)
   
           * src/main/pa_dir.C: file related functions moved to pa_file
             (related to feature #941)
   
           * src/: include/Makefile.am, main/Makefile.am, include/pa_common.h,
             include/pa_dir.h, include/pa_exec.h, include/pa_request.h,
             main/main.vcproj, main/pa_charset.C, main/pa_common.C,
             main/pa_dir.C, main/pa_http.C, main/pa_request.C,
             targets/cgi/parser3.C, types/pa_vhashfile.C, include/pa_file.h,
             main/pa_file.C: file related functions moved to pa_file (related
             to feature #941)
   
           * src/lib/ltdl/m4/argz.m4: no longer used
   
           * aclocal.m4, compile, config.guess, config.sub, configure,
             depcomp, install-sh, ltmain.sh, missing,
             src/include/pa_config_auto.h.in, src/lib/ltdl/COPYING.LIB,
             src/lib/ltdl/Makefile.am, src/lib/ltdl/README,
             src/lib/ltdl/aclocal.m4, src/lib/ltdl/argz.c,
             src/lib/ltdl/argz_.h, src/lib/ltdl/config-h.in,
             src/lib/ltdl/configure, src/lib/ltdl/configure.ac,
             src/lib/ltdl/lt__alloc.c, src/lib/ltdl/lt__argz.c,
             src/lib/ltdl/lt__dirent.c, src/lib/ltdl/lt__strl.c,
             src/lib/ltdl/lt_dlloader.c, src/lib/ltdl/lt_error.c,
             src/lib/ltdl/ltdl.c, src/lib/ltdl/ltdl.h, src/lib/ltdl/slist.c,
             src/lib/ltdl/libltdl/lt__alloc.h,
             src/lib/ltdl/libltdl/lt__argz_.h,
             src/lib/ltdl/libltdl/lt__dirent.h,
             src/lib/ltdl/libltdl/lt__glibc.h,
             src/lib/ltdl/libltdl/lt__private.h,
             src/lib/ltdl/libltdl/lt__strl.h,
             src/lib/ltdl/libltdl/lt_dlloader.h,
             src/lib/ltdl/libltdl/lt_error.h,
             src/lib/ltdl/libltdl/lt_system.h, src/lib/ltdl/libltdl/slist.h,
             src/lib/ltdl/loaders/dld_link.c, src/lib/ltdl/loaders/dlopen.c,
             src/lib/ltdl/loaders/dyld.c, src/lib/ltdl/loaders/load_add_on.c,
             src/lib/ltdl/loaders/loadlibrary.c,
             src/lib/ltdl/loaders/preopen.c, src/lib/ltdl/loaders/shl_load.c,
             src/lib/ltdl/m4/libtool.m4, src/lib/ltdl/m4/ltargz.m4,
             src/lib/ltdl/m4/ltdl.m4, src/lib/ltdl/m4/ltoptions.m4,
             src/lib/ltdl/m4/ltsugar.m4, src/lib/ltdl/m4/ltversion.m4,
             src/lib/ltdl/m4/lt~obsolete.m4: autotools regenerated with
             autoconf 2.72 and automake 1.17, bundled libltdl updated to the
             one from libtool 2.5.4 (autoreconf -fi under Debian 13)
   
           * tests/results/457.processed: test results updated after
             recursion_limit_try_restore added (related to feature #1298)
   
           * src/main/pa_request.C: const uint changed to more correct int
   
           * src/: main/execute.C, types/pa_vmethod_frame.h:
             SINGLE_METHOD_FRAME implemented to reduce execute() stack frame.
             Without it, compiler reserves stack frame for each ot 8 parser
             frame variants (related to feature #1293)
   
   2026-09-26  moko
   
           * tests/: 457.html, results/457.processed: test and it's results
             updated after recursion_limit_try_restore added (related to
             feature #1298)
   
           * src/: classes/op.C, include/pa_request.h, types/pa_vxdoc.C:
             recursion_limit_try_restore added to even more improve endless
             recursion handling (related to feature #1298)
   
           * tests/: 456.html, 457.html, results/456.processed,
             results/457.processed: tests for EXECUTE_RECURSION_RESERVE added
             (related to feature #1298)
   
           * src/: classes/op.C, include/pa_exception.h, include/pa_request.h,
             main/pa_request.C: to improve endless recursion handling
             EXECUTE_RECURSION_RESERVE was added and used (implements feature
             #1298)
   
   2026-09-25  moko
   
           * tests/: 455.html, results/455.processed: test for
             ^reflection:stack[$exception] added (related to feature #1145)
   
           * src/: classes/op.C, classes/reflection.C, include/pa_request.h,
             main/pa_request.C: ^reflection:stack[$exception] now supported
             within catch code (implements feature #1145)
   
           * src/main/pa_common.C: writing big files using chunks to bypass
             Windows 2Gb limit (fixes bug #1297)
   
           * tests/: 453.html, 454.html, results/453.processed,
             results/454.processed: tests for bug #1082 added: preserving the
             original stack trace after handling a nested exception in catch;
             reporting the correct stack trace for a new exception thrown from
             finally.
   
           * tests/run_parser.sh: Moscow timezone is set by default (not
             required to be set on test server)
   
           * src/: classes/op.C, include/pa_request.h, main/pa_request.C: work
             with exception_trace redesigned, Request_context_save no longer
             touches exception_trace (fixes bug #1082)
   
   2026-09-24  moko
   
           * tests/: 452.html, results/452.processed: checks for exception is
             still hash compatible added (related to feature #1145)
   
           * src/: classes/op.C, include/pa_request.h, main/pa_request.C:
             Exception_details is replaced with efficient VException, hash is
             created only on demand (related to feature #1145)
   
           * src/: include/pa_symbols.h, main/pa_symbols.C: exceptions symbols
             added (related to feature #1145)
   
           * src/types/pa_vhash.h: fhash-> hash() - a bit slower, but
             simplifies inherihance (related to feature #1145)
   
   2026-09-20  moko
   
           * src/include/pa_config_fixed.h: Windows: librabbitmq TLS support
             how-to added (related to feature #1288)
   
           * src/: classes/amqp.C, classes/classes.vcproj, main/pa_globals.C,
             types/types.vcproj: precompiled rabbitmq added to win32
   
           * src/: classes/amqp.C, types/pa_vamqp.h: warnings war (related to
             feature #1288)
   
           * src/: classes/amqp.C, include/pa_config_fixed.h: WITHOUT_AMQP_SSL
             feature added to avoid dependency on OpenSSL DLLs when TLS is not
             required (related to feature #1288)
   
           * src/lib/ltdl/ltdl.vcproj: vs2026 warning war
   
           * src/lib/sdbm/sdbm.vcproj: vs 2026 warning war
   
           * src/: classes/xnode.C, lib/json/pa_json.C: vs 2026 warning war
   
           * src/include/pa_config_includes.h: vs warning war
   
           * src/main/compile.tab.C: vs2026 compilation fixes
   
           * src/: classes/amqp.C, classes/curl.C, classes/inet.C,
             include/pa_config_includes.h, main/compile.tab.C: vs2026
             compilation fixes
   
           * src/main/compile.y: vs2026 build fixes
   
   2026-09-18  moko
   
           * src/main/pa_common.C: strrpbrk used once more
   
           * src/main/pa_dir.C: new code moved to the end
   
           * src/: include/pa_common.h, include/pa_dir.h, main/pa_common.C,
             main/pa_dir.C, main/pa_exec.C, main/pa_request.C,
             targets/cgi/parser3.C, targets/isapi/parser3isapi.C: strrpbrk,
             rsplit for delims, is_os_absolute_path added and used (related to
             feature #941)
   
           * src/: classes/amqp.C, include/pa_config_fixed.h: Add AMQP support
             for Windows builds (related to feature #1288)
   
   2026-09-16  moko
   
           * src/classes/amqp.C: Bugfix: leftover unacked messages got stuck
             after a listen-mode consume[] (related to feature #1288)
             ----------------------------------------------------------------
   
   2026-09-15  moko
   
           * src/: classes/amqp.C, classes/math.C, include/pa_int.h,
             main/pa_int.C: Temp_amqp_consumer added for exceptions handling,
             ulp_distance used and moved to pa_int (related to feature #1288)
   
           * src/classes/amqp.C: headers/arguments now processed in both
             directions, no_ack -> ack as default changed (related to feature
             #1288)
   
           * src/: classes/amqp.C, types/pa_vamqp.h: error handling and
             $.auto_reconnect(N) option implemented (related to feature #1288)
   
           * src/classes/amqp.C: allow both [] and () delivery tag (related to
             feature #1288)
   
           * src/classes/amqp.C: _consume - pull and listen more more clearly
             separated; both have timeout(N) count(N) options (related to
             feature #1288)
   
   2026-09-07  moko
   
           * tests/: 346-curl.html, 451-curl.html, results/346-curl.processed,
             results/451-curl.processed: test for curl and file::load accept a
             hash or array as a form field value (related to feature #1296)
   
           * src/: classes/curl.C, main/pa_http.C: curl and file::load accept
             a hash or array as a form field value (implements multiple files
             per field support, feature #1296)
   
   2026-07-19  moko
   
           * src/classes/curl.C: win32 compatibility (related to feature
             #1295)
   
           * tests/: 450-curl.html, results/450-curl.processed:
             $.resolve[^hash::create[]] test added (related to feature #1295)
   
           * tests/results/379-curl.processed: curl test results actualized
             after ERRORBUFFER was used
   
           * src/classes/curl.C: check for empty hash added (related to
             feature #1295)
   
           * src/lib/curl/curl.h: curl_slist + CURLOPT_RESOLVE added (related
             to feature #1295)
   
           * tests/: 450-curl.html, results/450-curl.processed: tests for curl
             $.resolve option added (related to feature #1295)
   
           * src/classes/curl.C: curl $.resolve[curl|parser] parser option
             added to avoid getaddrinfo() curl thread creation; $.resolve[
             $.[domain.name][ip] or $.[domain.name:port][ip] ] curl option
             also added (implements feature #1295)
   
           * src/classes/inet.C: pa_name2ip extracted to be used in curl.C
             (related to feature #1295)
   
   2026-07-14  moko
   
           * src/: classes/curl.C, lib/curl/curl.h: CURLOPT_ERRORBUFFER used
             to get more detailed error description (related to feature #1295)
   
   2026-07-11  moko
   
           * tests/: 030.html, results/030.processed: cookie $.expires(0) test
             added (code coverage)
   
           * operators.txt: translation fixed
   
   2026-05-28  moko
   
           * src/include/pa_config_includes.h: warnings war
   
           * src/classes/classes.h: warnings war
   
           * src/include/pa_inline_hash.h: fix for old gcc
   
   2026-05-24  moko
   
           * src/main/pa_request.C, tests/httpd/041.txt, tests/httpd/042.txt,
             tests/httpd/043.txt, tests/httpd/ok.log: more range check tests
             added
   
   2026-05-06  moko
   
           * operators.ru.txt, operators.txt: ^int/double.++[] and
             ^int/double.--[] documented (related to feature #1294)
   
           * tests/: 063.html, results/063.processed: test for
             ^int/double.++[]  and ^int/double.--[] added (related to feature
             #1294)
   
           * src/classes/: double.C, int.C: ^int/double.++[]  and
             ^int/double.--[] added (adopted Sumo patch, implements feature
             #1294)
   
           * src/main/main.vcproj: pa_inline_hash.h added (related to feature
             #1293)
   
   2026-04-30  moko
   
           * src/include/pa_inline_hash.h: PA_PROBE_LIMIT added (related to
             feature #1293)
   
           * src/include/pa_inline_hash.h: First lookup optimization added
             (related to feature #1293)
   
           * src/include/pa_inline_hash.h: upgrade to linear-probing hash
             (related to feature #1293)
   
   2026-04-25  moko
   
           * INSTALL, NEWS, README, buildall, src/classes/amqp.C,
             src/classes/array.C, src/classes/bool.C, src/classes/classes.C,
             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_inline_hash.h,
             src/include/pa_int.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/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_int.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_vamqp.h,
             src/types/pa_varray.C, src/types/pa_varray.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 year updated, websites links
             changed to https://
   
           * src/include/pa_inline_hash.h: delete added (related to feature
             #1293)
   
   2026-04-24  moko
   
           * src/: classes/reflection.C, main/pa_common.C, types/pa_method.h,
             types/pa_vmethod_frame.h: inline-storage hash used to avoid
             allocations for MethodFrame args and locals (imlpements feature
             #1293) _stack uses for_each to avoid Iterator for
             InlineHashString
   
           * src/include/: Makefile.am, pa_inline_hash.h: inline-storage hash
             added to avoid allocations for MethodFrame args and locals
             (related to feature #1293)
   
           * tests/: 337.html, 434.html, results/320.processed,
             results/434.processed: test for ^A[v1;v2]=^array::create[v1;v2]
             added (related to feature #1282)
   
           * src/classes/op.C: ^A[v1;v2]=^array::create[v1;v2] added
             (implements feature #1282)
   
           * tests/: 447.html, results/447.processed: exceptions tests added
             (related to feature #1286)
   
           * src/classes/reflection.C: native method exception added (related
             to feature #1286)
   
           * src/main/execute.C: removes irrelevant lines from exception stack
             trace when exception occur in array assigment (related to bug
             #1165) + useless #define removed
   
           * src/: include/pa_request.h, main/compile.y: warnings war
   
   2026-04-23  moko
   
           * src/main/: compile.y, compile_tools.C, compile_tools.h:
             maybe_append_simple_diving_code() is not related to
             OPTIMIZE_BYTECODE_GET_ELEMENT__SPECIAL
   
   2026-03-01  moko
   
           * src/: classes/classes.C, classes/classes.h, classes/mail.C,
             main/pa_request.C: configure_user removed, $MAIN:MAIL now
             processed inside ^mail:send[] (implements feature #1290)
   
   2026-02-25  moko
   
           * tests/: 182.html, 182_dir/a7.p, results/182.processed: test for
             array redefinition added
   
           * src/main/pa_request.C: array redefinition fixed
   
           * tests/: 182.html, results/182.processed: test for
             ^reflection:classes[] order (related to feature #1289)
   
           * src/: classes/reflection.C, include/pa_request.h,
             main/pa_request.C: classes now OrderedHashString, implements
             feature #1289
   
   2026-02-02  moko
   
           * tests/: 307.html, results/307.processed: more "junction used
             outside of context" tests added
   
   2026-01-09  moko
   
           * src/classes/amqp.C: auto_delete is better false by default
             (related to feature #1288)
   
           * src/classes/amqp.C: more methods bool args fixes, nowait removed
             (related to feature #1288)
   
           * src/classes/amqp.C: nowait was mixed up with exclusive in consume
   
           * src/classes/amqp.C: amqp_basic_cancel added to consume, purge
             returns purged messages count (related to feature #1288)
   
           * tests/: 449.html, results/449.processed, results/auto.p: test for
             table size limit added (related to feature #1276)
   
           * src/classes/table.C: $MAIN:LIMITS.max_array_size now used to
             limit table size; note: for append and insert operations only
             (implements feature #1276)
   
   2026-01-08  moko
   
           * src/classes/amqp.C: addition to feature #1288: declare_exchange +
             declare_queue = declare; delete_exchange + delete_queue = delete;
             bind_queue -> bind; unbind_queue -> unbind; + purge, + info;
             consume can be called without callback with optional $.count(N),
             returns array of messages;
   
   2026-01-07  moko
   
           * tests/: 448.html, results/448.processed: avoid 500, show
             exception where not supported
   
           * src/include/pa_int.h: warnings war
   
           * tests/: 422.html, results/422.processed: test updated after wide
             int implemented (feature #1273)
   
           * src/main/pa_int.C: warnings war
   
           * src/classes/classes.vcproj: +amqp.C
   
           * src/classes/: int.C, string.C: warnings war
   
           * src/classes/: op.C: warnings war
   
           * src/: classes/op.C, main/pa_int.C: warnings war
   
           * src/types/pa_vdate.h: warnings war
   
           * src/main/pa_int.C: warnings war continues
   
           * src/: include/pa_int.h, main/pa_int.C, types/pa_vint.h: warnings
             war
   
           * src/types/pa_vdate.C: reverted, format_double still required here
   
           * src/: include/pa_int.h, main/pa_int.C, types/pa_vmath.C:
             format_double now supports wint, $math:int_max and $math:int_min
             added, PA_WIDE_INT is finally enabled by default (implements
             feature #1273)
   
           * tests/: 275.html, results/275.processed: preparing tests for int
             extension
   
           * tests/: 424.html, results/424.processed: actualized and prepared
             for wide int
   
   2026-01-06  moko
   
           * src/: classes/double.C, classes/int.C, classes/string.C,
             include/pa_common.h, include/pa_int.h, include/pa_string.h,
             main/execute.C, main/pa_common.C, main/pa_int.C,
             types/pa_value.h, types/pa_vdate.C, types/pa_vdate.h,
             types/pa_vdouble.h, types/pa_vint.h, types/pa_vmethod_frame.h,
             types/pa_vstring.h: feature #1273 core implementation:
             value::as_wint added, implemented for int/double/string, and used
             where applicable; vint now holds pa_wint type; format_double
             moved to pa_int
   
           * src/: include/pa_array.h, include/pa_string.h, main/main.vcproj:
             pa_int includes tuning, vcproj updated (related to feature #1273)
   
           * src/main/pa_int.C: build fix
   
           * src/: include/Makefile.am, main/Makefile.am: pa_int.h/pa_int.C
             added, another preparation for feature #1273
   
           * src/: include/pa_array.h, include/pa_int.h, include/pa_string.h,
             include/pa_types.h, main/pa_int.C, main/pa_string.C,
             types/pa_vint.h: pa_int.h/pa_int.C added and all related code
             moved there, pa_wint and related functions added, another
             preparation for feature #1273
   
   2025-12-17  moko
   
           * src/classes/json.C: optimization: String::Empty used and avoided
             using passed length.
   
   2025-12-16  moko
   
           * src/classes/string.C: sync _int with _double, avoid int usage
             (related to #1273)
   
   2025-12-08  moko
   
           * src/include/pa_memory.h: PA_CHECK_REGULAR_ALLOC_UNAVAILABLE
             define added and used for OS X as well
   
   2025-11-30  moko
   
           * configure, configure.ac, src/include/pa_config_auto.h.in,
             src/include/pa_config_fixed.h: int64_t added in preparation to
             feature #1273
   
   2025-11-22  moko
   
           * src/classes/amqp.C: delivery_tag changed from string to double
             (related to feature #1288)
   
   2025-11-14  moko
   
           * src/types/pa_vstatus.C, tests/448.html,
             tests/results/448.processed: $status:limit-cpu,
             $status:limit-mem, $status:limit-nproc unlimited support added,
             test added (related to feature #1280)
   
           * src/types/: pa_vstatus.C, pa_vstatus.h: r/w $status:limit-cpu,
             $status:limit-mem, $status:limit-nproc added (implements feature
             #1280)
   
   2025-11-12  moko
   
           * tests/results/: 323.processed, 421.processed: tests results
             updated after amqp class added
   
   2025-11-08  moko
   
           * src/classes/amqp.C: tls support added, errors reporting improved
             (related to feature #1288)
   
           * src/classes/amqp.C: tls support added (related to feature #1288)
   
           * src/classes/amqp.C: exceptions text now printed (related to
             feature #1288)
   
           * src/classes/amqp.C: properties hash simplified (related to
             feature #1288)
   
   2025-11-07  moko
   
           * src/classes/amqp.C: consume fixed (related to feature #1288)
   
           * src/classes/classes.C: + amqp class
   
           * buildall, configure, configure.ac, src/classes/Makefile.am,
             src/include/pa_config_auto.h.in, src/targets/apache/Makefile.am,
             src/targets/cgi/Makefile.am, src/types/Makefile.am: build scripts
             updated for librabbitmq support (relates to feature #1288)
   
           * src/: classes/amqp.C, types/pa_vamqp.h: amqp class draft with
             basic RabbitMQ C library (librabbitmq) support (partially
             implements #1288)
   
   2025-10-05  moko
   
           * src/classes/: array.C, file.C, hash.C, image.C, json.C, op.C,
             reflection.C, string.C: Optimization: valid_options optimized
             where HashStringValue::Iterator used
   
           * tests/results/224.processed: test result updated after date
             functions updated (related to #1287)
   
   2025-10-04  moko
   
           * operators.ru.txt, operators.txt: actualized
   
           * operators.ru.txt, operators.txt: actualized after #1285 and #1286
   
           * tests/: 447.html, results/447.processed: tests for
             ^reflection:override[$method] added (related to feature #1286)
   
           * tests/: 446.html, results/446.processed: tests for $n1 eq n2
             added (related to feature #1285)
   
           * src/classes/reflection.C:
             ^reflection:override[$method[;$.to[class] $.name[another_name]]]
             added (implements feature #1286)
   
           * src/main/execute.C: bugfix: when method is attached from another
             class, it's  junction_template is initialized with another class,
             thus get_vjunction should be used (related to feature #1286)
   
           * src/classes/date.C: ^date:sql-string[], ^date:gmt-string[],
             ^date:iso-string[] - static call now formats current date
             (implements feature #1287)
   
   2025-10-01  moko
   
           * buildall: built-in mailreceive path actualized
   
   2025-09-01  moko
   
           * src/classes/math.C: old compilers support in ^math:eq
   
   2025-08-31  moko
   
           * tests/: 446.html, results/446.processed: tests for
             ^math:eq(a;b[;max URL distance]) added (related to feature #1285)
   
           * src/classes/math.C: ^math:eq(a;b[;precision]) added (partly
             implements #1285)
   
   2025-08-30  moko
   
           * operators.ru.txt, operators.txt: actualized
   
           * tests/: 230.html, results/230.processed: test for ^file.save
             $.append(false|true) option added (related to feature #1284)
   
           * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h:
             ^file.save $.append(false|true) option added (implements feature
             #1284)
   
   2025-08-16  moko
   
           * etc/auto.p.in: LIMIT max_array_size actualized
   
   2025-08-01  moko
   
           * src/: lib/gc/include/gc.h, main/pa_globals.C, main/pa_memory.C:
             pa_GC_abort_func added and used (implements feature #1283)
   
           * src/include/: pa_array.h, pa_config_includes.h:
             PA_DEBUG_DISABLE_GC mode fixed for sparse array
   
   2025-07-04  moko
   
           * src/main/pa_common.C: typo fixed (related to bug #1282)
   
           * src/main/pa_common.C: minor optimization + create_dir_for_file
             checks for \ (related to bug #1282)
   
   2025-07-03  moko
   
           * src/main/pa_common.C: _wrename, _wrmdir и _wmkdir are now used
             under Windows (fixes bug #1282)
   
           * src/main/pa_common.C: file:delete for UTF-8 files now works under
             Windows (fixes bug #1282)
   
   2025-06-28  moko
   
           * src/targets/apache/mod_parser3.c: GCC 15 compatibility fixed by
             Yavor Doganov <yavor@gnu.org>
   
           * src/main/pa_charset.C: typo fixed (related to feature #1281)
   
           * src/: include/pa_charset.h, main/pa_charset.C: libxml 2.14
             compatibility fixed (implements feature #1281)
   
   2025-05-31  moko
   
           * src/main/pa_http.C: old gcc compilation fix (related to feature
             #1277)
   
   2025-05-28  moko
   
           * src/: classes/array.C, include/pa_array.h: last
             Array_iterator::key() removed (related to feature #1277)
   
   2025-05-27  moko
   
           * src/: classes/array.C, classes/table.C, include/pa_array.h,
             types/pa_vstring.C, types/pa_vstring.h: VString::uitoa() added
             and used (related to feature #1277)
   
   2025-05-26  moko
   
           * src/: classes/array.C, classes/curl.C, classes/hash.C,
             classes/hashfile.C, classes/image.C, classes/table.C,
             main/pa_request.C, main/pa_xml_io.C, types/pa_vconsole.h,
             types/pa_venv.C, types/pa_vmail.C, types/pa_vregex.C,
             types/pa_vrequest.C, types/pa_vresponse.C, types/pa_vstring.h:
             VString(const char *avalue) added and used to optimize new
             VString(*new String(i.key(), String::L_TAINTED)) (related to
             feature #1277)
   
           * src/: classes/array.C, classes/curl.C, classes/file.C,
             classes/hash.C, classes/image.C, classes/json.C,
             classes/reflection.C, classes/xnode.C, include/pa_charset.h,
             include/pa_hash.h, include/pa_http.h, include/pa_string.h,
             main/pa_charsets.C, main/pa_http.C, main/pa_request.C,
             main/pa_string.C, main/pa_xml_io.C, targets/cgi/pa_sapi_info.h,
             types/pa_varray.C, types/pa_vform.C, types/pa_vhash.h,
             types/pa_vhashfile.C, types/pa_vimage.C, types/pa_vmail.C,
             types/pa_vmethod_frame.h, types/pa_vstatus.C, types/pa_vtable.C,
             types/pa_vxnode.C: implements feature #1277 String::Body(const
             char *abody) now explicit but HashString::put(const char *str, V
             value) added for simplicity optimizations: HASH_PUT_CSTR used
             where hash.put called several time during execution; caching
             String::Body::uitoa used at all pash.put(<uint> calls.
   
   2025-05-25  moko
   
           * src/: include/pa_request.h, main/pa_request.C: minor opt (related
             to feature #1277)
   
           * src/include/pa_hash.h: HASH_PUT_CSTR added (related to #1277)
   
           * src/: include/pa_string.h, main/pa_string.C: String::Body::uitoa
             added for caching (related to feature #1277)
   
           * src/include/pa_string.h: optimized String:pos versions added
             (without language + char *) (related to feature #1277)
   
   2025-05-24  moko
   
           * tests/: 445.html, results/445.processed: test for
             ^hash.array[[keys|values]] added (related to feature #1274)
   
           * src/classes/hash.C: ^hash.array[[keys|values]] added (implements
             feature #1274)
   
   2025-01-26  moko
   
           * src/include/pa_config_includes.h: synced with pa_config_auto.h.in
   
   2025-01-25  moko
   
           * configure.ac, src/include/pa_version.h: version 3.5.1 -> 3.5.2b
   
           * aclocal.m4, configure, src/include/pa_config_auto.h.in,
             src/lib/ltdl/aclocal.m4, src/lib/ltdl/configure: aclocal &&
             autoheader && automake && autoconf
   
           * src/lib/ltdl/configure.ac: new autotools used
   
           * acsite.m4, configure.ac: new autotools warnings fixed
   
   2025-01-10  moko
   
           * tests/results/320.processed: test result updated after syslog
             added
   
           * src/classes/op.C: minor MSVC fixes
   
           * src/lib/md5/pa_md5c.c: MSVC warnings fixed
   
           * operators.ru.txt, operators.txt: +
             ^syslog[ident;message[;info|warning|error|debug]]
   
           * src/classes/op.C: +
             ^syslog[ident;message[;info|warning|error|debug]] (implelents
             feature #1270)
   
           * configure, configure.ac, src/include/pa_config_auto.h.in,
             src/include/pa_version.h: 3.5.0 -> 3.5.1, syslog check
   
   2025-01-06  moko
   
           * src/include/pa_hash.h: own prime numbers (nearest primes to 5 *
             2^n) calculated and used
   
           * src/lib/md5/: pa_md5.h, pa_md5c.c: MD5 code now taken from
             https://www.hadrons.org/software/libmd/
   
   2024-12-28  moko
   
           * tests/httpd/run_tests.sh: for FreeBSD compatibility
   
           * tests/httpd/: 032.txt, 033.txt, 034.txt, 035.txt, 036.txt,
             037.txt, 038.txt, ok.log, site/404.html, site/httpd.p:
             $request:uri and $request:path tests added (related to feature
             #1269)
   
           * operators.ru.txt, operators.txt: + $request:path documented
             (related to feature #1269)
   
           * tests/: 065.html, results/065.processed: $request:path,
             $request:uri tested
   
           * src/types/pa_vrequest.C: $request:path default is empty string to
             match an empty URI in console mode (related to feature #1269)
   
           * etc/auto.p.in: $request:path used (related to feature #1269)
   
           * src/types/: pa_vrequest.C, pa_vrequest.h: $request:path added
             (implements feature #1269)
   
   2024-12-26  moko
   
           * configure, configure.ac, src/include/pa_version.h: 3.5.0rc ->
             3.5.0
   
           * src/lib/sdbm/: pa_strings.C, sdbm.c, sdbm_private.h,
             pa-include/pa_errno.h, pa-include/pa_file_info.h,
             pa-include/pa_file_io.h, pa-include/pa_sdbm.h,
             pa-include/pa_strings.h: unused code cleaned, pa_pstrcat uses
             pa_strcat
   
           * tests/results/223.processed: apache upgraded @parser.ru
   
           * src/lib/sdbm/: sdbm.c, sdbm_hash.c, sdbm_lock.c, sdbm_pair.c,
             sdbm_pair.h, sdbm_private.h, sdbm_tune.h, pa-include/pa_apr.h,
             pa-include/pa_errno.h, pa-include/pa_file_info.h,
             pa-include/pa_file_io.h, pa-include/pa_sdbm.h,
             pa-include/pa_strings.h: sdbm updated from version included in
             apache 2.0.43 to version included in apache 2.0.65
   
   2024-12-24  moko
   
           * etc/auto.p.in: to avoid patching Debian package
   
           * src/main/: pa_exec.C, pa_http.C: final fixes for
             --with-build-warnings (dangling-reference warnings can be
             ignored)
   
   2024-12-23  moko
   
           * src/: classes/file.C, classes/hash.C, classes/op.C,
             include/pa_common.h, main/pa_http.C, main/pa_request.C,
             types/pa_vcookie.C, types/pa_vform.C: more fixes for
             --with-build-warnings
   
           * src/: classes/date.C, classes/inet.C, classes/op.C,
             classes/reflection.C, include/pa_array.h,
             include/pa_config_includes.h, main/execute.C, main/pa_base64.C,
             main/pa_common.C, main/pa_globals.C, types/pa_vfile.C: fixes for
             --with-build-warnings
   
   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 <yavor@gnu.org> 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  2024-10-13  moko
   
         * src/types/pa_varray.h: ^array.$i[arg] is rare, thus checking i          * src/types/pa_varray.h: ^array.$i[arg] is rare, thus checking i
Line 1030 Line 3311
   
 2021-01-14  moko  2021-01-14  moko
   
         * operators.txt: updated with 3.4.6 changes          * operators.ru.txt, operators.txt: updated with 3.4.6 changes
   
         * tests/results/224.processed: test result modified after          * tests/results/224.processed: test result modified after
           today(shift) implemented            today(shift) implemented
Line 2667 Line 4948
   
 2017-02-20  moko  2017-02-20  moko
   
         * operators.txt: actualization + beauty          * operators.ru.txt, operators.txt: actualization + beauty
   
 2017-02-16  moko  2017-02-16  moko
   
Line 2735 Line 5016
   
 2017-02-08  moko  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          * NEWS, README: minor update
   
Line 4285 Line 6566
   
 2015-10-29  moko  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          * configure.ac, src/include/pa_version.h: 3.4.4rc -> 3.4.4
   
Line 4670 Line 6951
   
         * src/classes/date.C: minor fix related to feature #1032          * src/classes/date.C: minor fix related to feature #1032
   
         * operators.txt: ISO date creation documented (related to feature          * operators.ru.txt, operators.txt: ISO date creation documented
           #1032)            (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          * tests/: 315.html, results/315.processed: more tests added
           (related to feature #1032)            (related to feature #1032)
Line 4709 Line 6991
   
 2015-09-05  moko  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  2015-09-04  moko
   
Line 5698 Line 7981
         * src/targets/cgi/: Makefile.am, getopt.c, getopt.h,          * src/targets/cgi/: Makefile.am, getopt.c, getopt.h,
           parser3.vcproj: unused getopt.h / getopt.c removed            parser3.vcproj: unused getopt.h / getopt.c removed
   
         * operators.txt, src/classes/file.C, tests/022.html,          * operators.ru.txt, operators.txt, src/classes/file.C,
           tests/results/022.processed: ^file:list[path][$.filter[regexp]            tests/022.html, tests/results/022.processed:
           $.stat(true)] usage commented            ^file:list[path][$.filter[regexp] $.stat(true)] usage commented
   
         * configure.in, src/classes/file.C, src/include/pa_dir.h,          * configure.in, src/classes/file.C, src/include/pa_dir.h,
           src/main/pa_dir.C: ^file:list[] now has dir column and when            src/main/pa_dir.C: ^file:list[] now has dir column and when
Line 6280 Line 8563
           config_auto.h.in, config_fixed.h, configure, configure.ac,            config_auto.h.in, config_fixed.h, configure, configure.ac,
           configure.in, lt__alloc.c, lt__dirent.c, lt__strl.c,            configure.in, lt__alloc.c, lt__dirent.c, lt__strl.c,
           lt_dlloader.c, lt_error.c, ltdl.c, ltdl.h, slist.c,            lt_dlloader.c, lt_error.c, ltdl.c, ltdl.h, slist.c,
           config/compile, config/config.guess, config/config.sub,            libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h,
           config/depcomp, config/install-sh, config/ltmain.sh,            libltdl/lt__private.h, libltdl/lt__strl.h, libltdl/lt_dlloader.h,
           config/missing, libltdl/lt__alloc.h, libltdl/lt__dirent.h,            libltdl/lt_error.h, libltdl/lt_system.h, libltdl/slist.h,
           libltdl/lt__glibc.h, libltdl/lt__private.h, libltdl/lt__strl.h,            loaders/dld_link.c, loaders/dlopen.c, loaders/dyld.c,
           libltdl/lt_dlloader.h, libltdl/lt_error.h, libltdl/lt_system.h,            loaders/load_add_on.c, loaders/loadlibrary.c, loaders/preopen.c,
           libltdl/slist.h, loaders/dld_link.c, loaders/dlopen.c,            loaders/shl_load.c, m4/argz.m4, m4/libtool.m4, m4/ltdl.m4,
           loaders/dyld.c, loaders/load_add_on.c, loaders/loadlibrary.c,            m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4,
           loaders/preopen.c, loaders/shl_load.c, m4/argz.m4, m4/libtool.m4,  
           m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4,  
           m4/lt~obsolete.m4: libtool updated to version 2.4.2            m4/lt~obsolete.m4: libtool updated to version 2.4.2
   
         * configure.in: preparation for new libtool          * configure.in: preparation for new libtool
Line 6940 Line 9221
   
 2011-05-18  misha  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          * tests/256.html: - tests for json-serialization xdoc were added
   
Line 7003 Line 9285
   
 2011-02-22  misha  2011-02-22  misha
   
         * src/include/pa_charset.h, operators.txt: - some methods mustn't          * src/include/pa_charset.h, operators.ru.txt, operators.txt: - some
           be under #ifdef XML or parser can't be compiled without xml            methods mustn't be under #ifdef XML or parser can't be compiled
           support            without xml support
   
 2011-02-21  misha  2011-02-21  misha
   
Line 7113 Line 9395
   
 2010-11-25  moko  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          * buildall-with-xml: libxml2-2.7.8 + with-apache
   
Line 7164 Line 9446
   
 2010-11-18  moko  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  2010-11-16  moko
   
Line 7320 Line 9603
   
         * src/classes/math.C: - error in math:convert was fixed          * 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            ^math:convert[number](from-base;to-base) was added
   
         * src/classes/math.C: - method          * src/classes/math.C: - method
Line 7380 Line 9663
   
 2010-10-02  misha  2010-10-02  misha
   
         * operators.txt: - the X mark was removed from ^cache[file]. it is          * operators.ru.txt, operators.txt: - the X mark was removed from
           usable to delete cache file.            ^cache[file]. it is usable to delete cache file.
   
 2010-10-02  moko  2010-10-02  moko
   
Line 7448 Line 9731
   
 2010-09-17  misha  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]          * src/classes/json.C: - ^json:string[object]
   
Line 7998 Line 10282
   
 2009-11-10  misha  2009-11-10  misha
   
         * operators.txt: - info about hash-options in ^file::create was          * operators.ru.txt, operators.txt: - info about hash-options in
           added            ^file::create was added
   
         * tests/237.html: - test for ^file::create[...;$.charset[...]] was          * tests/237.html: - test for ^file::create[...;$.charset[...]] was
           added            added
Line 8044 Line 10328
   
         * src/types/pa_vregex.C: - check UTF8 only during 1st iteration          * src/types/pa_vregex.C: - check UTF8 only during 1st iteration
   
         * operators.txt: - actually, there is no ^untaint[xml] in          * operators.ru.txt, operators.txt: - actually, there is no
           file::create            ^untaint[xml] in file::create
   
 2009-10-15  misha  2009-10-15  misha
   
Line 8175 Line 10459
         * tests/: 224.html, 224.p: - tests for ^reflection:fields[class or          * tests/: 224.html, 224.p: - tests for ^reflection:fields[class or
           object] were added            object] were added
   
         * operators.txt: - info about method ^reflection:fields[class or          * operators.ru.txt, operators.txt: - info about method
           object] was added            ^reflection:fields[class or object] was added
   
         * src/classes/reflection.C: - method ^reflection:fields[class or          * src/classes/reflection.C: - method ^reflection:fields[class or
           object] was added            object] was added
Line 8234 Line 10518
   
 2009-09-08  misha  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          * tests/: 230.html, 230.txt: - tests for checking options in
           file.save and string.save were added            file.save and string.save were added
Line 8485 Line 10770
         * tests/224.html: - method_params => method_info - checking for          * tests/224.html: - method_params => method_info - checking for
           $.inherited            $.inherited
   
         * src/classes/reflection.C, operators.txt: - method method_params          * src/classes/reflection.C, operators.ru.txt, operators.txt: -
           was renamed to method_info and now it returns class name, if            method method_params was renamed to method_info and now it
           method was defined in ancestor            returns class name, if method was defined in ancestor
   
         * tests/225.html: - tests for cheching properties in hierarhical          * tests/225.html: - tests for cheching properties in hierarhical
           classes were added            classes were added
Line 8568 Line 10853
   
 2009-07-28  misha  2009-07-28  misha
   
         * operators.txt: - some changes in information about reflection          * operators.ru.txt, operators.txt: - some changes in information
           class            about reflection class
   
         * tests/: 224.html, 224.p: - tests for reflection class          * tests/: 224.html, 224.p: - tests for reflection class
   
Line 8581 Line 10866
         * src/classes/classes.vcproj: - reflection class wass added to          * src/classes/classes.vcproj: - reflection class wass added to
           project            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          * src/classes/reflection.C: - class was redesigned
   
Line 8764 Line 11050
   
 2009-06-25  misha  2009-06-25  misha
   
         * src/classes/image.C, operators.txt: - options' names for          * src/classes/image.C, operators.ru.txt, operators.txt: - options'
           ^image.font were changed to $.space, $.width and $spacing -            names for ^image.font were changed to $.space, $.width and
           default space width now == gif's width            $spacing - default space width now == gif's width
   
 2009-06-24  misha  2009-06-24  misha
   
         * tests/215.html: - tests for $file.mode were added          * tests/215.html: - tests for $file.mode were added
   
         * operators.txt: - added info about $file.mode and changes in          * operators.ru.txt, operators.txt: - added info about $file.mode
           ^image.font[            and changes in ^image.font[
   
         * src/: types/pa_vimage.h, classes/image.C: ^image.font - third          * src/: types/pa_vimage.h, classes/image.C: ^image.font - third
           param now could be omited - third param now could be hash (with            param now could be omited - third param now could be hash (with
Line 9015 Line 11301
   
         * tests/212.html: - .size[] and .study_size[] were added to tests          * 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          * tests/212.html: - tests for regex class were added
   
Line 9724 Line 12011
   
         * tests/185.html: - test for ^str.pos[sub](offset) added          * tests/185.html: - test for ^str.pos[sub](offset) added
   
         * src/classes/string.C, src/classes/void.C, operators.txt: -          * src/classes/string.C, src/classes/void.C, operators.ru.txt,
           ^string.pos[substr](offset) -- 2nd param accepted now            operators.txt: - ^string.pos[substr](offset) -- 2nd param
             accepted now
   
         * src/main/pa_string.C: - .pos works fine with offset for utf-8          * src/main/pa_string.C: - .pos works fine with offset for utf-8
           strings            strings
Line 10349 Line 12637
   
 2007-11-14  misha  2007-11-14  misha
   
         * operators.txt: - info about new text|binary option for          * operators.ru.txt, operators.txt: - info about new text|binary
           file::exec/cgi was added            option for file::exec/cgi was added
   
         * src/: include/pa_exec.h, main/pa_exec.C, classes/file.C: -          * src/: include/pa_exec.h, main/pa_exec.C, classes/file.C: -
           ^file:exec[[text|binary];script;...]            ^file:exec[[text|binary];script;...]
Line 10365 Line 12653
   
         * ChangeLog: - $request:argv [patch from Sumo]          * 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,          * src/: include/pa_request_info.h, types/pa_vrequest.C,
           types/pa_vrequest.h, targets/cgi/parser3.C: - $request:argv            types/pa_vrequest.h, targets/cgi/parser3.C: - $request:argv
Line 10383 Line 12671
         * tests/: 170.html, results/170.processed: - test for          * tests/: 170.html, results/170.processed: - test for
           @method[][result]            @method[][result]
   
         * operators.txt: - added info about node.prefix and          * operators.ru.txt, operators.txt: - added info about node.prefix
           node.namespaceURI            and node.namespaceURI
   
         * src/classes/xnode.C: - xmlHasProp used instead of xmlGetProp          * src/classes/xnode.C: - xmlHasProp used instead of xmlGetProp
   
Line 10415 Line 12703
   
 2007-10-17  misha  2007-10-17  misha
   
         * operators.txt: - info about          * operators.ru.txt, operators.txt: - info about
           table::create[nameless]{data}[>options<] was added            table::create[nameless]{data}[>options<] was added
   
         * src/main/: compile.tab.C, compile.y: - if error occure while          * src/main/: compile.tab.C, compile.y: - if error occure while
Line 10449 Line 12737
   
 2007-09-17  misha  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          * src/types/pa_vcookie.C: - $cookie:fields available now
   
Line 10467 Line 12756
   
 2007-08-28  misha  2007-08-28  misha
   
         * operators.txt: - texts about ^table.columns[[column name]]  and          * operators.ru.txt, operators.txt: - texts about
           ^string.split[...][v][column name] were added            ^table.columns[[column name]]  and ^string.split[...][v][column
             name] were added
   
         * tests/: 168.html, 169.html, results/168.processed,          * tests/: 168.html, 169.html, results/168.processed,
           results/169.processed: - tests for ^table.columns[[column name]]            results/169.processed: - tests for ^table.columns[[column name]]
Line 10496 Line 12786
   
 2007-08-20  misha  2007-08-20  misha
   
         * operators.txt: - comment about new method ^node.hasAttributes[]          * operators.ru.txt, operators.txt: - comment about new method
           was added            ^node.hasAttributes[] was added
   
         * src/classes/: file.C, math.C, op.C, string.C, xdoc.C: - more          * src/classes/: file.C, math.C, op.C, string.C, xdoc.C: - more
           duplicated exception text strings were removed            duplicated exception text strings were removed
Line 10534 Line 12824
         * src/: classes/math.C, targets/isapi/parser3isapi.C: - little          * src/: classes/math.C, targets/isapi/parser3isapi.C: - little
           syntax changes            syntax changes
   
         * src/targets/cgi/parser3.C, operators.txt: - annoying 'SIGPIPE'          * src/targets/cgi/parser3.C, operators.ru.txt, operators.txt: -
           messages in parser3.log switched off by default. If someone            annoying 'SIGPIPE' messages in parser3.log switched off by
           really still need it: use $SIGPIPE(1)            default. If someone really still need it: use $SIGPIPE(1)
   
 2007-08-08  misha  2007-08-08  misha
   
Line 10647 Line 12937
         * tests/160.html: - time increased because on unix 1 mean nothing          * 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]          * src/classes/hash.C: - added ^hash.contain[key]
   
Line 10722 Line 13013
   
 2007-04-20  misha  2007-04-20  misha
   
         * operators.txt: - some comments changing          * operators.ru.txt, operators.txt: - some comments changing
   
         * operators.txt: - added info about .^hashfile.release[],          * operators.ru.txt, operators.txt: - added info about
           ^hashfile.clenaup[] and new ^string.match[][>N-option<]            .^hashfile.release[], ^hashfile.clenaup[] and new
             ^string.match[][>N-option<]
   
         * configure: =cheching for unsetenv          * configure: =cheching for unsetenv
   
Line 10752 Line 13044
         * buildall-with-xml, buildall-without-xml: added commented lines          * buildall-with-xml, buildall-without-xml: added commented lines
           with --disable-safe-mode option            with --disable-safe-mode option
   
         * operators.txt: - info about $form:files          * operators.ru.txt, operators.txt: - info about $form:files
   
 2007-04-17  misha  2007-04-17  misha
   
Line 10810 Line 13102
   
         * src/classes/date.C: - date.week was fixed          * 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          * tests/: 159.html, results/159.processed: - tests for date.week
           and date.weekyear added            and date.weekyear added
Line 10863 Line 13155
   
         * src/classes/xdoc.C: - roll back last changes for a while          * 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          * src/classes/file.C: - under lock we create non-exist dir anyway
   
Line 10886 Line 13179
   
 2007-02-19  misha  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          * buildall-with-xml, buildall-without-xml: - some modifications
   
Line 10927 Line 13220
   
 2007-02-07  misha  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          * tests/results/153.processed: - result test for
           ^file:base64[filespec]  was updated            ^file:base64[filespec]  was updated
Line 10978 Line 13272
   
         * buildall-with-xml: - moved to libxml2-2.6.27 and libxslt-1.1.20          * 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,          * src/: classes/Makefile.am, classes/bool.C,
           classes/classes.vcproj, classes/double.C, classes/int.C,            classes/classes.vcproj, classes/double.C, classes/int.C,
Line 11013 Line 13307
   
 2006-12-07  misha  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          * src/types/pa_vcookie.C: - bool param in cookies available now
           $cookie:name[   $.value[123]   $.secure(true)   $.httponly(true)            $cookie:name[   $.value[123]   $.secure(true)   $.httponly(true)
Line 11033 Line 13328
   
 2006-12-01  misha  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: -          * src/types/: pa_vstateless_class.C, pa_vstateless_class.h: -
           $var.CLASS_NAME added            $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          * src/classes/file.C: - ^file:copy[from;fo] was added
   
Line 11070 Line 13366
   
 2006-11-14  misha  2006-11-14  misha
   
         * operators.txt: - added info about ^file.md5[] and          * operators.ru.txt, operators.txt: - added info about ^file.md5[]
           ^file:md5[file-name]            and ^file:md5[file-name]
   
         * src/classes/file.C: - ^file.md5[] and ^file:md5[file-name] were          * src/classes/file.C: - ^file.md5[] and ^file:md5[file-name] were
           added            added
Line 11089 Line 13385
   
 2006-11-13  misha  2006-11-13  misha
   
         * operators.txt: - added info about ^math:crc32[string],          * operators.ru.txt, operators.txt: - added info about
           ^file:crc32[file-name] & ^file.crc32[]            ^math:crc32[string], ^file:crc32[file-name] & ^file.crc32[]
   
         * src/classes/math.C: - added ^math:crc32[string]          * src/classes/math.C: - added ^math:crc32[string]
   
Line 11160 Line 13456
           Wednesday, June 07, 2006 9:52 PM Subject: parser3: patch for            Wednesday, June 07, 2006 9:52 PM Subject: parser3: patch for
           $hash._default disappear while            $hash._default disappear while
   
         * operators.txt: ^mail:send[   $.file1[      $.value[file]          * operators.ru.txt, operators.txt: ^mail:send[   $.file1[
           $.format[!uue|!base64] << new base64 option. default uue   ] ]            $.value[file]      $.format[!uue|!base64] << new base64 option.
             default uue   ] ]
   
         * src/types/pa_vmail.C: misha: Sent: Wednesday, June 07, 2006 8:51          * src/types/pa_vmail.C: misha: Sent: Wednesday, June 07, 2006 8:51
           PM Subject: patch for base64 in ^mail:send[] %-)            PM Subject: patch for base64 in ^mail:send[] %-)
Line 11170 Line 13467
   
         * src/main/compile.tab.C: ` change compiled          * 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/classes.vcproj, src/classes/file.C,
           src/classes/hash.C, src/classes/hashfile.C, src/classes/image.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,            src/classes/op.C, src/classes/table.C, src/classes/xdoc.C,
Line 12409 Line 14706
   
 2005-02-17  paf  2005-02-17  paf
   
         * operators.txt, src/classes/op.C: + operator ^sleep(double          * operators.ru.txt, operators.txt, src/classes/op.C: + operator
           seconds)            ^sleep(double seconds)
   
 2005-02-02  paf  2005-02-02  paf
   
Line 12457 Line 14754
         * src/main/pa_request.C: new: @unhandled_exception can prevent          * src/main/pa_request.C: new: @unhandled_exception can prevent
           exception from being logged by setting $exception.handled(1)            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]            ^file::sql{query}[[options]] options: $.name[file name]
           $.content-type[application/what]            $.content-type[application/what]
   
Line 12721 Line 15018
   
 2004-07-26  paf  2004-07-26  paf
   
         * operators.txt, src/include/pa_common.h, src/main/pa_common.C,          * operators.ru.txt, operators.txt, src/include/pa_common.h,
           src/main/pa_request.C, src/types/pa_vfile.h,            src/main/pa_common.C, src/main/pa_request.C,
           src/types/pa_vhash.C, src/types/pa_vhash.h,            src/types/pa_vfile.h, src/types/pa_vhash.C, src/types/pa_vhash.h,
           src/types/types.vcproj: new: $response:body/download[            src/types/types.vcproj: new: $response:body/download[
           $.file[name on disk]    $.name[of file for user]            $.file[name on disk]    $.name[of file for user]
           $.mdate[date of last-modified. default from directory] ]            $.mdate[date of last-modified. default from directory] ]
Line 12817 Line 15114
   
         * src/sql/pa_sql_driver.h: note: about possible optimization          * src/sql/pa_sql_driver.h: note: about possible optimization
   
         * operators.txt, src/classes/hash.C, src/classes/memory.C,          * operators.ru.txt, operators.txt, src/classes/hash.C,
           src/classes/string.C, src/classes/table.C, src/classes/void.C,            src/classes/memory.C, src/classes/string.C, src/classes/table.C,
           src/include/pa_config_includes.h: new:        ^void:sql{call            src/classes/void.C, src/include/pa_config_includes.h: new:
           paf(:a)}[                $.bind[                         $.a[2]            ^void:sql{call paf(:a)}[                $.bind[
                  ]       ] output variables work.  todo: check in out                  $.a[2]          ]       ] output variables work.  todo:
           variables            check in out variables
   
 2004-06-18  paf  2004-06-18  paf
   
Line 12856 Line 15153
   
         * src/include/pa_version.h: 3.1.3          * 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          * etc/parser3.charsets/x-mac-cyrillic.cfg: added: thanks to konst
   
Line 12960 Line 15258
         * src/main/: compile.tab.C, compile.y: bugfix: step1 to fix          * src/main/: compile.tab.C, compile.y: bugfix: step1 to fix
           explicit result problem            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,          * src/: include/pa_opcode.h, main/compile.tab.C, main/compile.y,
           main/execute.C: attempt_check_call_in_explicit_result_mode:            main/execute.C: attempt_check_call_in_explicit_result_mode:
Line 12980 Line 15279
           @method[][result] means "no string output here" moved to lexical            @method[][result] means "no string output here" moved to lexical
           level [on grammar level it were too difficult]            level [on grammar level it were too difficult]
   
         * operators.txt, src/include/pa_string.h, src/main/compile.tab.C,          * operators.ru.txt, operators.txt, src/include/pa_string.h,
           src/main/compile.y, src/main/compile_tools.h,            src/main/compile.tab.C, src/main/compile.y,
           src/types/pa_vmethod_frame.C, src/types/pa_vmethod_frame.h: new:            src/main/compile_tools.h, src/types/pa_vmethod_frame.C,
           @method[][result] means "no string output here", implemented part            src/types/pa_vmethod_frame.h: new: @method[][result] means "no
           of that idea: compiler throws away string literal generation            string output here", implemented part of that idea: compiler
           code. and barks nonwhitespace chars            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  2004-04-05  paf
   
Line 13091 Line 15392
           and http status line parsing checked number of columns in table            and http status line parsing checked number of columns in table
           [user reported an assert]            [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:          * src/: classes/op.C, types/pa_value.C, types/pa_wcontext.C:
           bugfix: junction reattach now actually reattaches a junction to            bugfix: junction reattach now actually reattaches a junction to
Line 13108 Line 15409
   
 2004-03-10  paf  2004-03-10  paf
   
         * operators.txt, src/classes/xdoc.C, src/classes/xnode.C,          * operators.ru.txt, operators.txt, src/classes/xdoc.C,
           src/classes/xnode.h, src/types/pa_vxdoc.C, src/types/pa_vxdoc.h,            src/classes/xnode.C, src/classes/xnode.h, src/types/pa_vxdoc.C,
           src/types/pa_vxnode.C, src/types/pa_vxnode.h: new: refined            src/types/pa_vxdoc.h, src/types/pa_vxnode.C,
           solution to search-in-namespaces problem:            src/types/pa_vxnode.h: new: refined solution to
             search-in-namespaces problem:
           $xdoc.search-namespaces.x[http://pif.design.ru/]            $xdoc.search-namespaces.x[http://pif.design.ru/]
           $nodes[^xdoc.select[//x:second]]            $nodes[^xdoc.select[//x:second]]
   
         * operators.txt, src/classes/xnode.C: new: xnode.select*[xpath          * operators.ru.txt, operators.txt, src/classes/xnode.C: new:
           expression][[NAMESPACES HASH]] allows to search for info in            xnode.select*[xpath expression][[NAMESPACES HASH]] allows to
           namespaces            search for info in namespaces
   
           $nodes[^xdoc.select[//x:second][            $nodes[^xdoc.select[//x:second][
           $.x[http://pif.design.ru/] ]]            $.x[http://pif.design.ru/] ]]
   
 2004-03-09  paf  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[            ^file::load[...][options]         $.form[
           !$.field1[string]            !$.field1[string]
           !$.field2[^table::create{one_column_only^#0Avalue1^#0Avalue2}]            !$.field2[^table::create{one_column_only^#0Avalue1^#0Avalue2}]
Line 13140 Line 15442
   
 2004-03-05  paf  2004-03-05  paf
   
         * operators.txt, src/main/pa_common.C: new: file::load[;http://          * operators.ru.txt, operators.txt, src/main/pa_common.C: new:
           GET/POST $.form[$.fields started, not tested yet            file::load[;http:// GET/POST $.form[$.fields started, not tested
           todo:$.field[table] for multiple values            yet todo:$.field[table] for multiple values
   
         * operators.txt: new: http:// options $.user $.password basic          * operators.ru.txt, operators.txt: new: http:// options $.user
           authorization            $.password basic authorization
   
         * src/main/pa_common.C: beauty: link to rtf added          * src/main/pa_common.C: beauty: link to rtf added
   
         * operators.txt, src/include/pa_common.h, src/main/pa_common.C:          * operators.ru.txt, operators.txt, src/include/pa_common.h,
           new: http:// options $.user $.password basic authorization            src/main/pa_common.C: new: http:// options $.user $.password
             basic authorization
   
         * src/main/pa_common.C: beauty: removed needless vars          * src/main/pa_common.C: beauty: removed needless vars
   
         * operators.txt: new: pgsql option [like that recently added to          * operators.ru.txt, operators.txt: new: pgsql option [like that
           oracle driver]             ClientCharset=parser-charset <<            recently added to oracle driver]
           charset in which parser thinks client works            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 <<          * operators.ru.txt, operators.txt: new: odbc option [like that
           charset in which parser thinks client works            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          * src/sql/pa_sql_driver.h: beauty: important warning added
   
Line 13174 Line 15479
         * src/main/pa_sql_driver_manager.C: speedup: charset lookups          * src/main/pa_sql_driver_manager.C: speedup: charset lookups
           cached, sql transcoding now goes faster            cached, sql transcoding now goes faster
   
         * operators.txt: new: mysql option [like that recently added to          * operators.ru.txt, operators.txt: new: mysql option [like that
           oracle driver]             ClientCharset=parser-charset <<            recently added to oracle driver]
           charset in which parser thinks client works            ClientCharset=parser-charset << charset in which parser thinks
             client works
   
         * etc/parser3.charsets/: koi8-r.cfg, windows-1251.cfg: keyboard          * etc/parser3.charsets/: koi8-r.cfg, windows-1251.cfg: keyboard
           typo error            typo error
Line 13191 Line 15497
   
 2004-03-02  paf  2004-03-02  paf
   
         * operators.txt: new[update typo]:     !^void.left(n)          * operators.ru.txt, operators.txt: new[update typo]:
           nothing     !^void.right(n)        nothing     !^void.mid(p[;n])            !^void.left(n)        nothing     !^void.right(n)        nothing
                 nothing            !^void.mid(p[;n])           nothing
   
         * operators.txt, src/classes/void.C: new:     !^void.left(n)          * operators.ru.txt, operators.txt, src/classes/void.C: new:
           nothing     !^void.right(n)        nothing     !^void.pos(p[;n])            !^void.left(n)        nothing     !^void.right(n)        nothing
                 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            ^file::sql[[name_to_become_$.name]]{} query result must be one
           row with columns:   first: data   second: file name   third:            row with columns:   first: data   second: file name   third:
           content-type            content-type
   
         * operators.txt, src/classes/file.C: ^file.sql-string[] inside          * operators.ru.txt, operators.txt, src/classes/file.C:
           ^connect gets properly escaped string, which can be passed to            ^file.sql-string[] inside ^connect gets properly escaped string,
           request now this for mysql only. it's up to parser sql driver to            which can be passed to request now this for mysql only. it's up
           fix zeros properly            to parser sql driver to fix zeros properly
   
         * INSTALL: note: added on building apache with this option:          * INSTALL: note: added on building apache with this option:
           --enable-shared=max thanks to Victor Fedoseev <vvf_ru@mail.ru>            --enable-shared=max thanks to Victor Fedoseev <vvf_ru@mail.ru>
Line 13217 Line 15524
         * src/targets/isapi/parser3isapi.C: new: apache module & isapi          * src/targets/isapi/parser3isapi.C: new: apache module & isapi
           extension memory:compact befor processingrequest            extension memory:compact befor processingrequest
   
         * operators.txt, src/classes/hash.C: new: ^hash._keys[>>name<<] to          * operators.ru.txt, operators.txt, src/classes/hash.C: new:
           call sole column of result            ^hash._keys[>>name<<] to call sole column of result
   
         * operators.txt, src/classes/image.C, src/lib/gd/gif.C,          * operators.ru.txt, operators.txt, src/classes/image.C,
           src/lib/gd/gif.h: new: ^image.pixel(x;y)[(color)]         get/set            src/lib/gd/gif.C, src/lib/gd/gif.h: new:
           pixel color            ^image.pixel(x;y)[(color)]         get/set pixel color
   
         * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h:          * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h:
           beauty: image -- less checks [were ugly impl]            beauty: image -- less checks [were ugly impl]
Line 13258 Line 15565
   
 2004-02-27  paf  2004-02-27  paf
   
         * operators.txt, src/classes/string.C, src/main/pa_string.C: new          * operators.ru.txt, operators.txt, src/classes/string.C,
           method: ^string.trim[start|both|end[;chars]]        default  
           'chars' -- whitespace chars finished  
   
         * operators.txt, src/classes/string.C, src/include/pa_string.h,  
           src/main/pa_string.C: new method:            src/main/pa_string.C: new method:
           ^string.trim[start|both|end[;chars]]        default 'chars' --            ^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            whitespace chars   started, only start works
   
         * src/main/compile.C: bugfix: line numbers after          * src/main/compile.C: bugfix: line numbers after
Line 13287 Line 15595
   
 2004-02-26  paf  2004-02-26  paf
   
         * operators.txt: feature: ^process...{CODE}[now has options] which          * operators.ru.txt, operators.txt: feature: ^process...{CODE}[now
           are         $.main[to what to rename @main]         $.file[file,            has options] which are         $.main[to what to rename @main]
           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]  
           $.file[file, from which (user says) goes that CODE]            $.file[file, from which (user says) goes that CODE]
           $.lineno(line number in that file, where CODE starts. may be            $.lineno(line number in that file, where CODE starts. may be
           negative)            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  2004-02-25  paf
   
         * etc/parser3.charsets/Makefile.am: bugfix: @sysconfdir@ used [were          * etc/parser3.charsets/Makefile.am: bugfix: @sysconfdir@ used [were
Line 13617 Line 15926
   
 2004-01-13  paf  2004-01-13  paf
   
         * operators.txt: typo erro          * operators.ru.txt, operators.txt: typo erro
   
 2003-12-25  paf  2003-12-25  paf
   
Line 13631 Line 15940
           make-dist-platform and badly updated proper config file in target            make-dist-platform and badly updated proper config file in target
           [when .tar used for updating existing source tree]            [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_connection.h,
           src/include/pa_sql_driver_manager.h,            src/include/pa_sql_driver_manager.h,
           src/main/pa_sql_driver_manager.C, src/sql/pa_sql_driver.h:            src/main/pa_sql_driver_manager.C, src/sql/pa_sql_driver.h:
Line 13663 Line 15972
   
 2003-12-11  paf  2003-12-11  paf
   
         * operators.txt, src/types/pa_vstatus.C:     !$status:pid process          * operators.ru.txt, operators.txt, src/types/pa_vstatus.C:
           id            !$status:pid process id
               !$status:tid thread id                !$status:tid thread id
   
         * src/: include/pa_cache_managers.h, main/pa_cache_managers.C,          * src/: include/pa_cache_managers.h, main/pa_cache_managers.C,
Line 13694 Line 16003
         * src/include/pa_sql_connection.h: bugfix: $status:sql.cache back          * src/include/pa_sql_connection.h: bugfix: $status:sql.cache back
           << time now ok            << 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            src/main/pa_stylesheet_manager.C: $status:stylesheet.cache back
           operational            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/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_charset.C, src/main/pa_sql_driver_manager.C,
           src/main/pa_string.C, src/types/pa_vxdoc.h: $status:sql.cache            src/main/pa_string.C, src/types/pa_vxdoc.h: $status:sql.cache
Line 13750 Line 16060
   
         * src/main/pa_xml_io.C: comment          * src/main/pa_xml_io.C: comment
   
         * operators.txt, src/main/pa_xml_io.C: leading / in          * operators.ru.txt, operators.txt, src/main/pa_xml_io.C: leading /
           http://parser[abscent params]            in http://parser[abscent params]
   
         * operators.txt, src/include/pa_request.h, src/main/pa_xml_io.C:          * operators.ru.txt, operators.txt, src/include/pa_request.h,
           works.  todo: maybe replace original open mech of xdoc::create &            src/main/pa_xml_io.C: works.  todo: maybe replace original open
           co to use libxml open, so that this would work for root document            mech of xdoc::create & co to use libxml open, so that this would
             work for root document
   
           $xdoc[^xdoc::create{<?xml version="1.0"?> <!DOCTYPE test SYSTEM            $xdoc[^xdoc::create{<?xml version="1.0"?> <!DOCTYPE test SYSTEM
           "parser://method/params/here"> <test>   &test^; </test> }]            "parser://method/params/here"> <test>   &test^; </test> }]
Line 13773 Line 16084
   
 2003-11-26  paf  2003-11-26  paf
   
         * operators.txt, src/include/Makefile.am, src/include/pa_globals.h,          * operators.ru.txt, operators.txt, src/include/Makefile.am,
           src/main/Makefile.am, src/main/main.vcproj,            src/include/pa_globals.h, src/main/Makefile.am,
           src/main/pa_globals.C, src/main/pa_request.C,            src/main/main.vcproj, src/main/pa_globals.C,
           src/include/pa_xml_io.h, src/main/pa_xml_io.C: simplification:            src/main/pa_request.C, src/include/pa_xml_io.h,
           xml errors to hash<thread_id,error> reorganization: xml io moved            src/main/pa_xml_io.C: simplification: xml errors to
           to pa_xml_io.C/h            hash<thread_id,error> reorganization: xml io moved  to
             pa_xml_io.C/h
   
         * src/types/pa_value.h: warnings: --          * src/types/pa_value.h: warnings: --
   
Line 13806 Line 16118
         * src/main/pa_common.C: bugfix: ^file::load[binary;http://...]          * src/main/pa_common.C: bugfix: ^file::load[binary;http://...]
           now not transcodes response body            now not transcodes response body
   
         * operators.txt, src/types/pa_vxnode.C, src/types/pa_vxnode.h:          * operators.ru.txt, operators.txt, src/types/pa_vxnode.C,
           $xdoc[^xdoc::create[test]] $tn[^xdoc.createTextNode[text node            src/types/pa_vxnode.h: $xdoc[^xdoc::create[test]]
           value]] $dummy[^xdoc.firstChild.appendChild[$tn]]            $tn[^xdoc.createTextNode[text node value]]
             $dummy[^xdoc.firstChild.appendChild[$tn]]
           $xdoc.firstChild.firstChild.nodeValue[different]            $xdoc.firstChild.firstChild.nodeValue[different]
           ^taint[^xdoc.string[]]            ^taint[^xdoc.string[]]
   
Line 13954 Line 16267
   
         * src/classes/op.C: more ansi C++ comp          * src/classes/op.C: more ansi C++ comp
   
         * operators.txt, src/classes/op.C, src/include/pa_request.h,          * operators.ru.txt, operators.txt, src/classes/op.C,
           src/main/pa_request.C: ^cache[...]{body}{catch block with            src/include/pa_request.h, src/main/pa_request.C:
           $exception.handled[cache] meaning "get expired cache, if any.            ^cache[...]{body}{catch block with $exception.handled[cache]
           else error"}            meaning "get expired cache, if any. else error"}
   
         * src/: classes/op.C, include/pa_os.h, include/pa_request.h,          * src/: classes/op.C, include/pa_os.h, include/pa_request.h,
           main/pa_common.C: cache: ^cache[] fallback todo: kinda ^try:            main/pa_common.C: cache: ^cache[] fallback todo: kinda ^try:
Line 13977 Line 16290
   
         * src/types/pa_vconsole.h: flush          * src/types/pa_vconsole.h: flush
   
         * operators.txt, src/main/pa_request.C, src/types/Makefile.am,          * operators.ru.txt, operators.txt, src/main/pa_request.C,
           src/types/types.vcproj, src/types/pa_vconsole.h: $console:line            src/types/Makefile.am, src/types/types.vcproj,
           read/write  [for nntp]            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          * src/types/: pa_vhashfile.C, pa_vhashfile.h: add: hashfile old
           serialize version and exipire now removes entries            serialize version and exipire now removes entries
   
         * operators.txt: ^hashfile.delete[] removes files altogether [and          * operators.ru.txt, operators.txt: ^hashfile.delete[] removes files
           dir, if could]            altogether [and dir, if could]
   
         * src/: classes/hashfile.C, include/pa_common.h, main/pa_common.C,          * src/: classes/hashfile.C, include/pa_common.h, main/pa_common.C,
           types/pa_vhashfile.C, types/pa_vhashfile.h: ^hashfile.delete[]            types/pa_vhashfile.C, types/pa_vhashfile.h: ^hashfile.delete[]
Line 14030 Line 16344
   
         * tests/todo.txt: hashfile: done          * tests/todo.txt: hashfile: done
   
         * operators.txt, src/types/pa_vhashfile.C: hashfile: clear &          * operators.ru.txt, operators.txt, src/types/pa_vhashfile.C:
           expiration [time in value. todo: move time to key]            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: foreach body can bodify $self
   
         * src/types/pa_vhashfile.C: hashfile: clear now works [were trying          * src/types/pa_vhashfile.C: hashfile: clear now works [were trying
           to do that in foreach, no errors, but surely wrong]            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            src/types/pa_vhashfile.h: hashfile: clear and proper locking
   
         * operators.txt, src/classes/hash.C, src/classes/hashfile.C,          * operators.ru.txt, operators.txt, src/classes/hash.C,
           src/types/pa_vhashfile.C, src/types/pa_vhashfile.h: hashfile:            src/classes/hashfile.C, src/types/pa_vhashfile.C,
           foreach            src/types/pa_vhashfile.h: hashfile: foreach
   
         * src/classes/hashfile.C, src/types/pa_vhashfile.C,          * 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,          * operators.ru.txt, operators.txt, src/classes/hashfile.C,
           src/types/pa_vhashfile.h, tests/todo.txt: hashfile: delete            src/types/pa_vhashfile.C, src/types/pa_vhashfile.h,
             tests/todo.txt: hashfile: delete
   
         * src/: include/pa_memory.h, targets/cgi/parser3.C,          * src/: include/pa_memory.h, targets/cgi/parser3.C,
           types/pa_value.C, types/pa_value.h, types/pa_vcookie.C,            types/pa_value.C, types/pa_value.h, types/pa_vcookie.C,
Line 14073 Line 16390
           main/pa_xml_exception.C: locking move to pa_os [along with            main/pa_xml_exception.C: locking move to pa_os [along with
           pa_sleep] apr-impl locking done            pa_sleep] apr-impl locking done
   
         * configure, configure.in, operators.txt, parser3.sln,          * configure, configure.in, operators.ru.txt, operators.txt,
           src/classes/classes.vcproj, src/classes/hashfile.C,            parser3.sln, src/classes/classes.vcproj, src/classes/hashfile.C,
           src/classes/xdoc.C, src/include/pa_config_fixed.h,            src/classes/xdoc.C, src/include/pa_config_fixed.h,
           src/include/pa_exception.h, src/include/pa_globals.h,            src/include/pa_exception.h, src/include/pa_globals.h,
           src/include/pa_memory.h, src/include/pa_version.h,            src/include/pa_memory.h, src/include/pa_version.h,
Line 14105 Line 16422
   
 2003-11-04  paf  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          * src/classes/table.C: compiled on unix
   
Line 14113 Line 16430
   
         * src/classes/mail.C: compiled on unix          * src/classes/mail.C: compiled on unix
   
         * operators.txt, src/classes/mail.C, src/types/pa_vmail.C,          * operators.ru.txt, operators.txt, src/classes/mail.C,
           src/types/pa_vmail.h:     !^mail:send[            src/types/pa_vmail.C, src/types/pa_vmail.h:     !^mail:send[
                   $.options[unix: string to append to sendmail command                    $.options[unix: string to append to sendmail command
           line]            line]
   
         * operators.txt, src/classes/table.C, src/main/pa_string.C,          * operators.ru.txt, operators.txt, src/classes/table.C,
           tests/todo.txt: ^table.save[...          $.separator[^#09]            src/main/pa_string.C, tests/todo.txt: ^table.save[...
           $.encloser["] <nothing> by default            $.separator[^#09]          $.encloser["] <nothing> by default
   
         * operators.txt, src/classes/table.C, tests/todo.txt: ^table::load          * operators.ru.txt, operators.txt, src/classes/table.C,
                  !$.separator[^#09]         !$.encloser["] <nothing> by            tests/todo.txt: ^table::load         !$.separator[^#09]
           default            !$.encloser["] <nothing> by default
   
 2003-11-03  paf  2003-11-03  paf
   
         * operators.txt, src/classes/table.C, src/main/pa_common.C:          * operators.ru.txt, operators.txt, src/classes/table.C,
           ^table::load[; options:         !$.column-separator[^#09]            src/main/pa_common.C: ^table::load[; options:
           !$.column-encloser["]            !$.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/types/pa_vrequest.C: $request:document-root
   
         * src/targets/cgi/parser3.C: beauty: SIGUSRX removed qs= printing          * src/targets/cgi/parser3.C: beauty: SIGUSRX removed qs= printing
           [already included into uri=xxx]            [already included into uri=xxx]
   
         * operators.txt, src/classes/image.C, tests/todo.txt:          * operators.ru.txt, operators.txt, src/classes/image.C,
           ^image.gif[filename] for $response:download            tests/todo.txt: ^image.gif[filename] for $response:download
   
         * src/classes/date.C: minor precaution          * 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[]                !^date.unix-timestamp[]
   
 2003-10-30  paf  2003-10-30  paf
   
         * operators.txt, src/classes/date.C, src/types/pa_vdate.h: merged          * operators.ru.txt, operators.txt, src/classes/date.C,
           from 3.0.8: ^date.roll[TZ;GMT] $date.hour            src/types/pa_vdate.h: merged from 3.0.8: ^date.roll[TZ;GMT]
             $date.hour
   
         * src/classes/: date.C, image.C: improvement diagnostics:          * src/classes/: date.C, image.C: improvement diagnostics:
           $now[^date::create[$undefined]] now is error            $now[^date::create[$undefined]] now is error
Line 14170 Line 16489
   
 2003-10-21  paf  2003-10-21  paf
   
         * operators.txt, src/include/pa_string.h, src/main/pa_string.C:          * operators.ru.txt, operators.txt, src/include/pa_string.h,
           fixed: string.match[g] without <'> option produced columns with            src/main/pa_string.C: fixed: string.match[g] without <'> option
           NULL's, which gpf'ed at table.save time            produced columns with NULL's, which gpf'ed at table.save time
   
         * src/: classes/op.C, include/pa_request.h: fixed: false 'endless          * src/: classes/op.C, include/pa_request.h: fixed: false 'endless
           recoursion' message with intensive throw-catches fixed: incorrect            recoursion' message with intensive throw-catches fixed: incorrect
Line 14370 Line 16689
         * src/types/pa_wcontext.C: output message: more practical          * src/types/pa_wcontext.C: output message: more practical
           suggestion            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            $f[^file::load[binary;http://...]] $f.tables
   
 2003-09-02  paf  2003-09-02  paf
Line 14513 Line 16832
         * src/main/: compile.tab.C, pa_memory.C: moved tempate_gc to HEAD          * src/main/: compile.tab.C, pa_memory.C: moved tempate_gc to HEAD
   
         * ChangeLog, INSTALL, Makefile.am, acsite.m4, configure,          * 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/koi8-r.cfg,
           etc/parser3.charsets/windows-1251.cfg, src/classes/Makefile.am,            etc/parser3.charsets/windows-1251.cfg, src/classes/Makefile.am,
           src/classes/classes.C, src/classes/classes.awk,            src/classes/classes.C, src/classes/classes.awk,
Line 14783 Line 17102
   
 2003-07-02  paf  2003-07-02  paf
   
         * operators.txt, src/types/pa_vstatus.C: renamed $memory:status          * operators.ru.txt, operators.txt, src/types/pa_vstatus.C: renamed
           fields to reflect their real meaning            $memory:status fields to reflect their real meaning
   
 2003-06-27  paf  2003-06-27  paf
   
Line 14806 Line 17125
   
 2003-06-20  paf  2003-06-20  paf
   
         * operators.txt, src/include/pa_globals.h, src/main/pa_common.C,          * operators.ru.txt, operators.txt, src/include/pa_globals.h,
           src/main/pa_globals.C: introducing            src/main/pa_common.C, src/main/pa_globals.C: introducing
           $f[^file::load[binary;http://...]] $f.tables            $f[^file::load[binary;http://...]] $f.tables
   
 2003-06-06  paf  2003-06-06  paf
Line 14930 Line 17249
   
 2003-04-15  paf  2003-04-15  paf
   
         * operators.txt, src/classes/math.C, src/lib/md5/pa_md5.h,          * operators.ru.txt, operators.txt, src/classes/math.C,
           src/lib/md5/pa_md5c.c, tests/141.html,            src/lib/md5/pa_md5.h, src/lib/md5/pa_md5c.c, tests/141.html,
           tests/results/141.processed: merged from head ^math:uuid[]            tests/results/141.processed: merged from head ^math:uuid[]
           ^math:uid64[] ^math:md5[string]            ^math:uid64[] ^math:md5[string]
   
           test added: 141.html            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[]          * 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,          * operators.ru.txt, operators.txt, src/classes/math.C,
           src/include/pa_config_fixed.h, src/main/pa_common.C:            src/lib/md5/pa_md5.h, src/lib/md5/pa_md5c.c: ^math:md5[string]
           ^file::load[mode;name;     $.offset     $.limit            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  2003-04-14  paf
   
Line 14975 Line 17297
   
 2003-04-11  paf  2003-04-11  paf
   
         * operators.txt, src/classes/date.C, src/classes/table.C,          * operators.ru.txt, operators.txt, src/classes/date.C,
           src/include/pa_array.h, src/include/pa_common.h,            src/classes/table.C, src/include/pa_array.h,
           src/include/pa_config_includes.h, src/include/pa_string.h,            src/include/pa_common.h, src/include/pa_config_includes.h,
           src/include/pa_table.h, src/main/pa_request.C,            src/include/pa_string.h, src/include/pa_table.h,
           src/main/pa_sql_driver_manager.C, src/main/pa_string.C,            src/main/pa_request.C, src/main/pa_sql_driver_manager.C,
           src/main/pa_table.C: merged from HEAD from            src/main/pa_string.C, src/main/pa_table.C: merged from HEAD from
           before_append_array_limit_sense_change to            before_append_array_limit_sense_change to
           after_append_array_limit_sense_change            after_append_array_limit_sense_change
   
         * src/classes/table.C: typo          * src/classes/table.C: typo
   
         * operators.txt, src/classes/date.C, src/classes/table.C,          * operators.ru.txt, operators.txt, src/classes/date.C,
           src/include/pa_array.h, src/include/pa_common.h,            src/classes/table.C, src/include/pa_array.h,
           src/include/pa_config_includes.h, src/include/pa_globals.h,            src/include/pa_common.h, src/include/pa_config_includes.h,
           src/include/pa_table.h, src/main/pa_array.C,            src/include/pa_globals.h, src/include/pa_table.h,
           src/main/pa_globals.C, src/main/pa_request.C,            src/main/pa_array.C, src/main/pa_globals.C,
           src/main/pa_sql_driver_manager.C, src/main/pa_string.C,            src/main/pa_request.C, src/main/pa_sql_driver_manager.C,
           src/main/pa_table.C: append_array_limit_sense_change locate            src/main/pa_string.C, src/main/pa_table.C:
           accepts options same as create new option: $.reverse(1)   [do not            append_array_limit_sense_change locate accepts options same as
           work in table::create]            create new option: $.reverse(1)   [do not work in table::create]
   
         * src/: include/pa_common.h, main/pa_common.C: gcc didn't like          * src/: include/pa_common.h, main/pa_common.C: gcc didn't like
           (stat xxx,            (stat xxx,
Line 15017 Line 17339
           appendChild without import 138.html mustfail: invalid encoding            appendChild without import 138.html mustfail: invalid encoding
           inside of xml 139.html mustfail: bad XPath            inside of xml 139.html mustfail: bad XPath
   
         * operators.txt, src/classes/table.C, tests/084.html,          * operators.ru.txt, operators.txt, src/classes/table.C,
           tests/125.html, tests/126.html, tests/127.html, tests/128.html,            tests/084.html, tests/125.html, tests/126.html, tests/127.html,
           tests/129.html, tests/results/125.processed,            tests/128.html, tests/129.html, tests/results/125.processed,
           tests/results/126.processed, tests/results/127.processed,            tests/results/126.processed, tests/results/127.processed,
           tests/results/128.processed, tests/results/129.processed: merged            tests/results/128.processed, tests/results/129.processed: merged
           from HEAD ^table.hash[key][$.distinct[tables]]            from HEAD ^table.hash[key][$.distinct[tables]]
   
           maked appropriate tests [changed one old nonconforming]            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]]            ^table.hash[key][$.distinct[tables]]
   
         * src/: classes/xdoc.C, classes/xnode.C, include/pa_charset.h:          * src/: classes/xdoc.C, classes/xnode.C, include/pa_charset.h:
Line 15139 Line 17461
         * src/targets/cgi/pp3.cmd: custom profiling script: plist/ST <<          * src/targets/cgi/pp3.cmd: custom profiling script: plist/ST <<
           Sort by function time            Sort by function time
   
         * operators.txt, src/main/pa_charset.C, src/main/pa_common.C:          * operators.ru.txt, operators.txt, src/main/pa_charset.C,
           http://   $.charset[] param done            src/main/pa_common.C: http://   $.charset[] param done
   
         * tests/: 122.html, results/122.processed: 122 date test <= and ==          * tests/: 122.html, results/122.processed: 122 date test <= and ==
           added [after volatile fix. passes on win&intel-solaris]            added [after volatile fix. passes on win&intel-solaris]
Line 15347 Line 17669
           params receive zero reference, but they are expected not to look            params receive zero reference, but they are expected not to look
           there]            there]
   
         * operators.txt, src/classes/date.C, src/classes/double.C,          * operators.ru.txt, operators.txt, src/classes/date.C,
           src/classes/file.C, src/classes/hash.C, src/classes/image.C,            src/classes/double.C, src/classes/file.C, src/classes/hash.C,
           src/classes/int.C, src/classes/mail.C, src/classes/math.C,            src/classes/image.C, src/classes/int.C, src/classes/mail.C,
           src/classes/memory.C, src/classes/op.C, src/classes/response.C,            src/classes/math.C, src/classes/memory.C, src/classes/op.C,
           src/classes/string.C, src/classes/table.C, src/classes/void.C,            src/classes/response.C, src/classes/string.C,
           src/classes/xdoc.C, src/classes/xnode.C, src/classes/xnode.h,            src/classes/table.C, src/classes/void.C, src/classes/xdoc.C,
           src/main/execute.C, src/types/pa_method.h: MethodParams& now            src/classes/xnode.C, src/classes/xnode.h, src/main/execute.C,
           [methods without params receive zero reference, but they are            src/types/pa_method.h: MethodParams& now [methods without params
           expected not to look there]            receive zero reference, but they are expected not to look there]
   
         * operators.txt, src/classes/op.C, src/include/pa_request.h,          * operators.ru.txt, operators.txt, src/classes/op.C,
           src/main/pa_request.C, src/types/pa_vmethod_frame.h:            src/include/pa_request.h, src/main/pa_request.C,
           ^process...[filename] useful for better error reporting            src/types/pa_vmethod_frame.h: ^process...[filename] useful for
           [file/line/col]            better error reporting  [file/line/col]
   
         * src/: main/execute.C, types/pa_value.C, types/pa_value.h,          * src/: main/execute.C, types/pa_value.C, types/pa_value.h,
           types/pa_vstring.h: slightly improved error messages text: 1. is            types/pa_vstring.h: slightly improved error messages text: 1. is
Line 15637 Line 17959
   
 2003-03-25  paf  2003-03-25  paf
   
         * operators.txt, src/main/pa_sql_driver_manager.C,          * operators.ru.txt, operators.txt,
           src/types/pa_vstatus.C: $status.memory used free since_compact            src/main/pa_sql_driver_manager.C, src/types/pa_vstatus.C:
           process            $status.memory used free since_compact process
   
         * src/: include/pa_sql_connection.h, main/pa_globals.C,          * src/: include/pa_sql_connection.h, main/pa_globals.C,
           main/untaint.C, sql/pa_sql_driver.h: untaint.C L_SQL            main/untaint.C, sql/pa_sql_driver.h: untaint.C L_SQL
Line 15652 Line 17974
           src/types/pa_vstring.C, src/types/pa_vstring.h, tests/121.html,            src/types/pa_vstring.C, src/types/pa_vstring.h, tests/121.html,
           tests/results/121.processed: untaint.C L_URI            tests/results/121.processed: untaint.C L_URI
   
         * operators.txt, src/classes/Makefile.am, src/classes/classes.dsp,          * operators.ru.txt, operators.txt, src/classes/Makefile.am,
           src/classes/op.C, src/main/pa_request.C, src/types/Makefile.am,            src/classes/classes.dsp, src/classes/op.C, src/main/pa_request.C,
           src/types/pa_venv.h, src/types/types.dsp, src/classes/memory.C,            src/types/Makefile.am, src/types/pa_venv.h, src/types/types.dsp,
           src/types/pa_vmemory.h: ^memory:compact[]            src/classes/memory.C, src/types/pa_vmemory.h: ^memory:compact[]
   
         * tests/results/109.processed: it was a bug in parser. updated 109          * tests/results/109.processed: it was a bug in parser. updated 109
           test result            test result
Line 16609 Line 18931
   
 2003-02-21  paf  2003-02-21  paf
   
         * operators.txt, src/targets/cgi/parser3.C, src/types/pa_vcookie.C:          * operators.ru.txt, operators.txt, src/targets/cgi/parser3.C,
           $cookie:name[$.expires[date << can be now]]            src/types/pa_vcookie.C: $cookie:name[$.expires[date << can be
             now]]
   
           written makefile with regression tests [raw]            written makefile with regression tests [raw]
   
Line 17326 Line 19649
   
 2003-01-16  paf  2003-01-16  paf
   
         * operators.txt, src/include/pa_globals.h, src/main/pa_common.C,          * operators.ru.txt, operators.txt, src/include/pa_globals.h,
           src/main/pa_globals.C: http:// introducing     $.any-status(1)            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            src/main/pa_common.C: http request now return status. and not
           fail on status!=200            fail on status!=200
   
Line 17444 Line 19768
         * INSTALL: --without-iconv recommended [it crashes on some systems          * INSTALL: --without-iconv recommended [it crashes on some systems
           [tested on elik]]            [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/include/pa_request.h, src/main/pa_globals.C,
           src/main/pa_request.C: $response:download            src/main/pa_request.C: $response:download
   
Line 17523 Line 19847
   
 2002-12-06  paf  2002-12-06  paf
   
         * operators.txt, src/main/compile.tab.C, src/types/pa_vhash.h:          * operators.ru.txt, operators.txt, src/main/compile.tab.C,
           $hash.fields -- pseudo field to make 'hash' more like 'table'            src/types/pa_vhash.h: $hash.fields -- pseudo field to make 'hash'
             more like 'table'
   
 2002-12-05  paf  2002-12-05  paf
   
Line 17585 Line 19910
   
 2002-12-02  paf  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,          * ChangeLog, src/classes/mail.C, src/include/pa_common.h,
           src/main/pa_common.C, src/main/pa_request.C,            src/main/pa_common.C, src/main/pa_request.C,
Line 17594 Line 19919
   
 2002-11-29  paf  2002-11-29  paf
   
         * src/classes/date.C, src/classes/image.C, operators.txt: exif          * src/classes/date.C, src/classes/image.C, operators.ru.txt,
           dates now objects of type date            operators.txt: exif dates now objects of type date
   
         * src/classes/image.C: file.seek removed [it were used in image.C          * 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            only, and for parser user this  means that jpeg image has bad
Line 17612 Line 19937
   
 2002-11-28  paf  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.          * src/classes/image.C: ^image.length now counts interchar space.
           plus space after last char            plus space after last char
Line 17645 Line 19970
   
         * src/main/pa_common.C: utf8 prefix ignored @read text          * src/main/pa_common.C: utf8 prefix ignored @read text
   
         * operators.txt, src/main/pa_common.C: http:// response status!=200          * operators.ru.txt, operators.txt, src/main/pa_common.C: http://
           made exception: http.status with source=bad status#            response status!=200 made exception: http.status with source=bad
             status#
   
 2002-11-25  paf  2002-11-25  paf
   
Line 17656 Line 19982
           src/main/pa_common.C, src/main/pa_globals.C: http:// and image            src/main/pa_common.C, src/main/pa_globals.C: http:// and image
           const void related probs fixed            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            $file[^file::load[http://there]] $file.SERVER
   
Line 17665 Line 19992
           http options [invalid onces now reported] made default            http options [invalid onces now reported] made default
           user-agent: paf            user-agent: paf
   
         * operators.txt, src/classes/file.C, src/classes/table.C,          * operators.ru.txt, operators.txt, src/classes/file.C,
           src/classes/xdoc.C, src/include/pa_common.h,            src/classes/table.C, src/classes/xdoc.C, src/include/pa_common.h,
           src/include/pa_globals.h, src/main/pa_common.C,            src/include/pa_globals.h, src/main/pa_common.C,
           src/main/pa_globals.C, src/main/pa_request.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            src/types/pa_vfile.C, src/types/pa_vfile.h: table/xdoc/file::load
Line 17678 Line 20005
   
         * src/classes/image.C, src/include/pa_globals.h,          * src/classes/image.C, src/include/pa_globals.h,
           src/main/execute.C, src/main/pa_globals.C, src/types/pa_vimage.C,            src/main/execute.C, src/main/pa_globals.C, src/types/pa_vimage.C,
           src/types/pa_vimage.h, operators.txt: $image.exif support            src/types/pa_vimage.h, operators.ru.txt, operators.txt:
           $image.exif.DateTime & co            $image.exif support $image.exif.DateTime & co
   
 2002-11-21  paf  2002-11-21  paf
   
Line 17690 Line 20017
           EXIF information [were big block and it's size were considered            EXIF information [were big block and it's size were considered
           negative :(]            negative :(]
   
         * operators.txt, src/classes/image.C, src/include/pa_common.h,          * operators.ru.txt, operators.txt, src/classes/image.C,
           src/main/pa_common.C, src/types/pa_vmail.C: image.measure            src/include/pa_common.h, src/main/pa_common.C,
           internals rewritten. no there's reader.seek, and all's ready for            src/types/pa_vmail.C: image.measure internals rewritten. no
           EXIF extraction [now we fail to measure files with EXIF info]            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:          * src/main/pa_common.C: O_TRUNCATE killed, ftruncate  used instead:
           O_TRUNC truncates even exclusevely write-locked file [thanks to            O_TRUNC truncates even exclusevely write-locked file [thanks to
Line 17718 Line 20046
   
         * src/main/pa_exec.C: pa_exec: data written only if size>0          * src/main/pa_exec.C: pa_exec: data written only if size>0
   
         * operators.txt, src/classes/file.C: ^file::exec/cgi[file;$.stdin[]          * operators.ru.txt, operators.txt, src/classes/file.C:
           << disable HTTP-POST repassing            ^file::exec/cgi[file;$.stdin[] << disable HTTP-POST repassing
   
         * src/: include/pa_config_fixed.h, main/pa_common.C,          * src/: include/pa_config_fixed.h, main/pa_common.C,
           main/pa_exec.C, targets/cgi/parser3.C: ^file:exec/cgi [pa_exec]            main/pa_exec.C, targets/cgi/parser3.C: ^file:exec/cgi [pa_exec]
Line 17820 Line 20148
   
 2002-10-23  paf  2002-10-23  paf
   
         * operators.txt, src/classes/table.C: ^table.hash{code}...          * operators.ru.txt, operators.txt, src/classes/table.C:
           ^table.hash(expr)...            ^table.hash{code}...  ^table.hash(expr)...
   
         * src/types/pa_vmail.C: email whitespace trimBoth-ed          * src/types/pa_vmail.C: email whitespace trimBoth-ed
   
Line 17837 Line 20165
   
 2002-10-21  paf  2002-10-21  paf
   
         * operators.txt, src/types/pa_vform.C, src/types/pa_vform.h:          * operators.ru.txt, operators.txt, src/types/pa_vform.C,
           $form:qtail $form:imap.x/y            src/types/pa_vform.h: $form:qtail $form:imap.x/y
   
         * operators.txt, src/types/pa_vform.C: $form:nameless =          * operators.ru.txt, operators.txt, src/types/pa_vform.C:
           "?value&...", "...&value&...", "...&value"            $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:          * operators.ru.txt, operators.txt, src/classes/file.C:
           ^file:fullpath[a.gif] => /some/a.gif            /some/page.html: ^file:fullpath[a.gif] => /some/a.gif
   
 2002-10-17  paf  2002-10-17  paf
   
Line 17901 Line 20230
           types/pa_vstateless_class.C, types/pa_vstateless_class.h:            types/pa_vstateless_class.C, types/pa_vstateless_class.h:
           compiling to system classes disabled            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            ^process[$caller.CLASS]{code-string} added
   
         * operators.txt, src/classes/op.C, src/main/compile.tab.C,          * operators.ru.txt, operators.txt, src/classes/op.C,
           src/main/compile.y, src/main/execute.C, src/main/pa_request.C,            src/main/compile.tab.C, src/main/compile.y, src/main/execute.C,
           src/types/Makefile.am, src/types/pa_vjunction.C,            src/main/pa_request.C, src/types/Makefile.am,
           src/types/pa_vjunction.h, src/types/pa_vmethod_frame.h,            src/types/pa_vjunction.C, src/types/pa_vjunction.h,
           src/types/types.dsp: removed $junction.get $junction.set[]            src/types/pa_vmethod_frame.h, src/types/types.dsp: removed
           introducing $caller            $junction.get $junction.set[] introducing $caller
   
         * src/types/pa_value.h: removed outdated comments. doxygen would          * src/types/pa_value.h: removed outdated comments. doxygen would
           find them lower by inheritance tree            find them lower by inheritance tree
Line 17951 Line 20280
         * src/types/pa_vxnode.C: misreplace fixed          * src/types/pa_vxnode.C: misreplace fixed
   
         * configure, configure.in, src/include/pa_config_auto.h.in,          * 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            $status:rusage.tv_secs/usecs introduced
   
 2002-10-09  paf  2002-10-09  paf
Line 17964 Line 20293
         * src/main/untaint.C: mail header quoted printable changed after          * src/main/untaint.C: mail header quoted printable changed after
           RFC reread            RFC reread
   
         * operators.txt: plan on ^if(method          * operators.ru.txt, operators.txt: plan on ^if(method
   
         * src/types/pa_vxnode.C: misreplace          * src/types/pa_vxnode.C: misreplace
   
Line 18136 Line 20465
         * configure, configure.in: .so now detected [can be .sl on hpux,          * configure, configure.in: .so now detected [can be .sl on hpux,
           .dll on cygwin, .so in other cases)            .dll on cygwin, .so in other cases)
   
         * operators.txt, src/classes/hash.C, src/classes/table.C,          * operators.ru.txt, operators.txt, src/classes/hash.C,
           src/include/pa_globals.h, src/main/pa_globals.C: table.sql            src/classes/table.C, src/include/pa_globals.h,
           hash::sql flag to allow duplicate keys [$.distinct(1/0)] first            src/main/pa_globals.C: table.sql hash::sql flag to allow
           record taken [were last]            duplicate keys [$.distinct(1/0)] first record taken [were last]
   
         * src/: classes/hash.C, classes/table.C,          * src/: classes/hash.C, classes/table.C,
           include/pa_sql_connection.h: table.sql hash::sql duplicate keys            include/pa_sql_connection.h: table.sql hash::sql duplicate keys
Line 18161 Line 20490
   
 2002-09-13  paf  2002-09-13  paf
   
         * operators.txt, src/main/compile.tab.C, src/main/compile.y,          * operators.ru.txt, operators.txt, src/main/compile.tab.C,
           src/main/compile_tools.h: (expression #comment)            src/main/compile.y, src/main/compile_tools.h: (expression
             #comment)
   
           (multiline expression #comment  line2  #comment )            (multiline expression #comment  line2  #comment )
   
           (expression #comment with (brackets) comment) << OK            (expression #comment with (brackets) comment) << OK
   
         * operators.txt, src/main/compile.tab.C, src/main/compile.y: !|          * operators.ru.txt, operators.txt, src/main/compile.tab.C,
           bitwise !|| numerical xor now [preparing for expression            src/main/compile.y: !| bitwise !|| numerical xor now [preparing
           #comments]            for expression #comments]
   
         * src/main/: compile.tab.C, compile.y: @method[$name] now parse          * src/main/: compile.tab.C, compile.y: @method[$name] now parse
           error            error
Line 18261 Line 20591
   
 2002-09-02  paf  2002-09-02  paf
   
         * operators.txt, src/main/execute.C, src/targets/cgi/parser3.dsp:          * operators.ru.txt, operators.txt, src/main/execute.C,
           removed double_result, didn't help            src/targets/cgi/parser3.dsp: removed double_result, didn't help
   
         * src/main/execute.C: double_result made to move that var away from          * src/main/execute.C: double_result made to move that var away from
           hungry g++ optimizer (-O2), before: it were optimized and            hungry g++ optimizer (-O2), before: it were optimized and
Line 18299 Line 20629
         * src/types/pa_vcookie.C: fixed cookie delete when          * src/types/pa_vcookie.C: fixed cookie delete when
           $cookie:name[$.value[]]            $cookie:name[$.value[]]
   
         * operators.txt, src/classes/string.C:          * operators.ru.txt, operators.txt, src/classes/string.C:
           ^string.split[delim[;options]]            ^string.split[delim[;options]]
   
 2002-08-27  paf  2002-08-27  paf
   
         * etc/parser3.charsets/Makefile.am: merged from 3.0.0005          * etc/parser3.charsets/Makefile.am: merged from 3.0.0005
   
         * operators.txt, src/main/compile.tab.C, src/main/compile.y: # now          * operators.ru.txt, operators.txt, src/main/compile.tab.C,
           delimiter            src/main/compile.y: # now delimiter
   
         * INSTALL: recommended latest gmime 1.0.5          * INSTALL: recommended latest gmime 1.0.5
   
Line 18342 Line 20672
   
         * src/classes/file.C: fixed language of file:file result          * src/classes/file.C: fixed language of file:file result
   
         * operators.txt, src/classes/void.C: ^void.pos[...] = -1 merged          * operators.ru.txt, operators.txt, src/classes/void.C:
           from 3.0.0005            ^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          * operators.ru.txt, operators.txt, src/classes/void.C:
           3.0.0005            ^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  2002-08-19  paf
   
Line 18369 Line 20701
         * src/classes/classes.h: write to static var caused useless          * src/classes/classes.h: write to static var caused useless
           Exception, introduced Methoded::put_element wich consumes those            Exception, introduced Methoded::put_element wich consumes those
   
         * operators.txt, src/include/pa_common.h, src/main/pa_common.C,          * operators.ru.txt, operators.txt, src/include/pa_common.h,
           src/types/pa_vcookie.C, src/types/pa_vdate.h,            src/main/pa_common.C, src/types/pa_vcookie.C,
           src/types/pa_vresponse.C, src/types/pa_vresponse.h:            src/types/pa_vdate.h, src/types/pa_vresponse.C,
           $response:field[date] $response:field[$.xxx[date]]            src/types/pa_vresponse.h: $response:field[date]
             $response:field[$.xxx[date]]
   
         * src/: classes/hash.C, classes/string.C, classes/table.C,          * src/: classes/hash.C, classes/string.C, classes/table.C,
           classes/void.C, include/pa_sql_connection.h: fixed source of            classes/void.C, include/pa_sql_connection.h: fixed source of
           ^hash::sql{bad}            ^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_vrequest.C: $request:body unprecessed POST request
   
         * src/types/: pa_value.h, pa_vdate.h, pa_vrequest.C, pa_vxdoc.C,          * 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)            pa_vxnode.C: few barks: bark("%s field not found", 0, &aname)
   
         * operators.txt, src/classes/form.C, src/include/pa_pool.h,          * operators.ru.txt, operators.txt, src/classes/form.C,
           src/include/pa_request.h, src/main/pa_pool.C,            src/include/pa_pool.h, src/include/pa_request.h,
           src/types/pa_vform.C, src/types/pa_vform.h: planning/preparing_to            src/main/pa_pool.C, src/types/pa_vform.C, src/types/pa_vform.h:
           $request:body r.post_data now const            planning/preparing_to $request:body r.post_data now const
   
         * src/: classes/image.C, classes/op.C, classes/xdoc.C,          * src/: classes/image.C, classes/op.C, classes/xdoc.C,
           classes/xnode.C, main/execute.C, types/pa_value.h,            classes/xnode.C, main/execute.C, types/pa_value.h,
Line 18542 Line 20876
   
 2002-08-08  paf  2002-08-08  paf
   
         * operators.txt, src/classes/date.C, src/include/pa_globals.h,          * operators.ru.txt, operators.txt, src/classes/date.C,
           src/main/pa_globals.C: year column in month calendar [week year]            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          * src/main/execute.C: error reporting on object writes to MAIN
           improved [were ruind with fixing $obj[^if(1){$obj}] ]            improved [were ruind with fixing $obj[^if(1){$obj}] ]
   
         * operators.txt, src/types/pa_vdate.h: $date.yearday          * operators.ru.txt, operators.txt, src/types/pa_vdate.h:
           $date.daylightsaving            $date.yearday $date.daylightsaving
   
         * src/: classes/mail.C, types/pa_vmail.C: in letter texts one can          * src/: classes/mail.C, types/pa_vmail.C: in letter texts one can
           use tainted data now. only she must specify the language.            use tainted data now. only she must specify the language.
Line 18564 Line 20899
         * src/include/pa_string.h: String::first_char now not fails on          * src/include/pa_string.h: String::first_char now not fails on
           empty strings ^if(-f '') now ok and in 3 other places.            empty strings ^if(-f '') now ok and in 3 other places.
   
         * operators.txt, src/include/pa_string.h, src/main/pa_string.C:          * operators.ru.txt, operators.txt, src/include/pa_string.h,
           String::first_char now not fails on empty strings ^if(-f '') now            src/main/pa_string.C: String::first_char now not fails on empty
           ok and in 3 other places.            strings ^if(-f '') now ok and in 3 other places.
   
 2002-08-07  paf  2002-08-07  paf
   
Line 18581 Line 20916
           mistakenly not completely transparent to object writes.            mistakenly not completely transparent to object writes.
           $hash[^if(1){$hash}] now works            $hash[^if(1){$hash}] now works
   
         * operators.txt, src/classes/op.C: ^cache...{...^cache<<to past...}          * operators.ru.txt, operators.txt, src/classes/op.C:
           now erasing cache file [there were bad check on that]            ^cache...{...^cache<<to past...} now erasing cache file [there
             were bad check on that]
   
         * src/: classes/classes.dsp, classes/table.C,          * src/: classes/classes.dsp, classes/table.C,
           lib/pcre/pcre_parser_ctype.dsp, main/pa_array.C, types/types.dsp:            lib/pcre/pcre_parser_ctype.dsp, main/pa_array.C, types/types.dsp:
Line 18590 Line 20926
   
         * etc/parser3.charsets/Makefile.am: all included into dist          * etc/parser3.charsets/Makefile.am: all included into dist
   
         * operators.txt, src/classes/mail.C: exception_type  email.send          * operators.ru.txt, operators.txt, src/classes/mail.C:
             exception_type  email.send
   
         * operators.txt, src/types/pa_vmail.C: exception_type  email.format          * operators.ru.txt, operators.txt, src/types/pa_vmail.C:
             exception_type  email.format
   
         * src/types/pa_vmail.C: mail:send empty  email checked          * src/types/pa_vmail.C: mail:send empty  email checked
   
 2002-08-06  paf  2002-08-06  paf
   
         * operators.txt, src/classes/table.C, src/include/pa_array.h,          * operators.ru.txt, operators.txt, src/classes/table.C,
           src/include/pa_table.h, src/main/pa_array.C, src/main/pa_table.C:            src/include/pa_array.h, src/include/pa_table.h,
             src/main/pa_array.C, src/main/pa_table.C:
           ^table::create[$source;$.options] ^table::join[$source;$.options]            ^table::create[$source;$.options] ^table::join[$source;$.options]
   
         * operators.txt, src/classes/hash.C, src/classes/string.C,          * operators.ru.txt, operators.txt, src/classes/hash.C,
           src/classes/table.C: sql options can be string now ^xxx:sql{...}[            src/classes/string.C, src/classes/table.C: sql options can be
           #  $.default() }            string now ^xxx:sql{...}[ #  $.default() }
   
         * src/classes/file.C: $f[file::cgi] $f.UPPER case fields          * src/classes/file.C: $f[file::cgi] $f.UPPER case fields
   
Line 18621 Line 20960
   
         * src/types/pa_vmail.C: file buffer relocated to parser heap          * src/types/pa_vmail.C: file buffer relocated to parser heap
   
         * operators.txt: comment on date:calendar week column          * operators.ru.txt, operators.txt: comment on date:calendar week
             column
   
         * src/main/pa_common.C: write checked          * src/main/pa_common.C: write checked
   
Line 18644 Line 20984
         * src/types/: pa_vclass.h, pa_vform.C, pa_vobject.h: opera          * src/types/: pa_vclass.h, pa_vform.C, pa_vobject.h: opera
           multipart post fixed            multipart post fixed
   
         * operators.txt, src/main/pa_request.C, src/types/pa_vform.C:          * operators.ru.txt, operators.txt, src/main/pa_request.C,
           response transcoded source->client only when text/* or simple            src/types/pa_vform.C: response transcoded source->client only
           onoverridden $response:body            when text/* or simple onoverridden $response:body
   
 2002-08-01  paf  2002-08-01  paf
   
Line 18752 Line 21092
           classes/Makefile.am, main/Makefile.am, targets/cgi/Makefile.am,            classes/Makefile.am, main/Makefile.am, targets/cgi/Makefile.am,
           types/Makefile.am: ident.C* removed            types/Makefile.am: ident.C* removed
   
         * operators.txt, src/classes/file.C, src/main/pa_request.C:          * operators.ru.txt, operators.txt, src/classes/file.C,
           file:find[/can/do/this/now.txt]            src/main/pa_request.C: file:find[/can/do/this/now.txt]
   
         * src/targets/cgi/parser3.C: usage to stdout now          * src/targets/cgi/parser3.C: usage to stdout now
   
Line 18795 Line 21135
   
           now ok            now ok
   
         * operators.txt: plan: sql detailed exception          * operators.ru.txt, operators.txt: plan: sql detailed exception
   
 2002-07-01  paf  2002-07-01  paf
   
Line 18820 Line 21160
           src/targets/cgi/pa_config_paths.h.in: lates changes from 4 build            src/targets/cgi/pa_config_paths.h.in: lates changes from 4 build
           merged, makes updated            merged, makes updated
   
         * ChangeLog, configure, operators.txt, src/classes/xdoc.C,          * ChangeLog, configure, operators.ru.txt, operators.txt,
           src/include/pa_charset.h, src/include/pa_config_fixed.h,            src/classes/xdoc.C, src/include/pa_charset.h,
           src/include/pa_pool.h, src/include/pa_version.h,            src/include/pa_config_fixed.h, src/include/pa_pool.h,
           src/main/pa_charset.C, src/main/pa_pool.C,            src/include/pa_version.h, src/main/pa_charset.C,
           src/targets/cgi/parser3.dsp, src/targets/isapi/parser3isapi.dsp,            src/main/pa_pool.C, src/targets/cgi/parser3.dsp,
           src/types/pa_vmail.C: merged latest updates to head            src/targets/isapi/parser3isapi.dsp, src/types/pa_vmail.C: merged
             latest updates to head
   
 2002-06-27  paf  2002-06-27  paf
   
         * src/targets/: cgi/parser3.dsp, isapi/parser3isapi.dsp: post-build          * src/targets/: cgi/parser3.dsp, isapi/parser3isapi.dsp: post-build
           not error now            not error now
   
         * operators.txt, src/classes/xdoc.C, src/include/pa_charset.h,          * operators.ru.txt, operators.txt, src/classes/xdoc.C,
           src/include/pa_config_fixed.h, src/include/pa_pool.h,            src/include/pa_charset.h, src/include/pa_config_fixed.h,
           src/main/pa_charset.C, src/main/pa_pool.C:            src/include/pa_pool.h, src/main/pa_charset.C, src/main/pa_pool.C:
           ^xdoc::create[[uri]]... base uri for document being created,            ^xdoc::create[[uri]]... base uri for document being created,
           imports and other relative file names would be relative to this            imports and other relative file names would be relative to this
           uri default uri=path_translated            uri default uri=path_translated
Line 18856 Line 21197
         * src/main/pa_string.C: emtpy string, or string of whitespaces          * src/main/pa_string.C: emtpy string, or string of whitespaces
           considered bad number now            considered bad number now
   
         * operators.txt, src/classes/xdoc.C: ^xdoc.transform[xdoc <<can be          * operators.ru.txt, operators.txt, src/classes/xdoc.C:
           now            ^xdoc.transform[xdoc <<can be now
   
         * operators.txt, src/classes/string.C: ^string.normalize  [old          * operators.ru.txt, operators.txt, src/classes/string.C:
           name: optimize            ^string.normalize  [old name: optimize
   
         * configure, configure.in, src/include/pa_config_auto.h.in: crypt          * configure, configure.in, src/include/pa_config_auto.h.in: crypt
           library configured            library configured
   
         * src/main/pa_request.C: configure_admin forced if no @conf          * src/main/pa_request.C: configure_admin forced if no @conf
   
         * operators.txt, src/classes/math.C, src/types/pa_vmail.C:          * operators.ru.txt, operators.txt, src/classes/math.C,
           ^math:crypt updated to generate random salt when needed and to            src/types/pa_vmail.C: ^math:crypt updated to generate random salt
           call system crypt() if not $apr1$ prefix            when needed and to call system crypt() if not $apr1$ prefix
   
 2002-06-24  paf  2002-06-24  paf
   
Line 18898 Line 21239
           types/types.dsp: win32xml win32mailreceive pseudomodules paths            types/types.dsp: win32xml win32mailreceive pseudomodules paths
           now            now
   
         * operators.txt, src/classes/mail.C, src/include/Makefile.am,          * operators.ru.txt, operators.txt, src/classes/mail.C,
           src/include/pa_charset.h, src/include/pa_config_fixed.h,            src/include/Makefile.am, src/include/pa_charset.h,
           src/include/pa_request.h, src/include/pa_string.h,            src/include/pa_config_fixed.h, src/include/pa_request.h,
           src/include/pa_uue.h, src/main/Makefile.am, src/main/main.dsp,            src/include/pa_string.h, src/include/pa_uue.h,
           src/main/pa_globals.C, src/main/pa_request.C,            src/main/Makefile.am, src/main/main.dsp, src/main/pa_globals.C,
           src/main/pa_string.C, src/main/pa_uue.C,            src/main/pa_request.C, src/main/pa_string.C, src/main/pa_uue.C,
           src/targets/cgi/Makefile.am, src/targets/cgi/parser3.C,            src/targets/cgi/Makefile.am, src/targets/cgi/parser3.C,
           src/targets/cgi/parser3.dsp, src/targets/isapi/parser3isapi.C,            src/targets/cgi/parser3.dsp, src/targets/isapi/parser3isapi.C,
           src/types/pa_vform.C, src/types/pa_vform.h, src/types/types.dsp:            src/types/pa_vform.C, src/types/pa_vform.h, src/types/types.dsp:
Line 18923 Line 21264
           pcre to libs/ added libs/md5 which is linked to non-apache            pcre to libs/ added libs/md5 which is linked to non-apache
           targets ^math:crypt[password;$apr1$salt]            targets ^math:crypt[password;$apr1$salt]
   
         * INSTALL, configure.in, operators.txt, parser3.dsw,          * INSTALL, configure.in, operators.ru.txt, operators.txt,
           src/Makefile.am, src/classes/Makefile.am,            parser3.dsw, src/Makefile.am, src/classes/Makefile.am,
           src/classes/classes.dsp, src/classes/math.C,            src/classes/classes.dsp, src/classes/math.C,
           src/lib/md5/Makefile.am, src/lib/pcre/LICENCE,            src/lib/md5/Makefile.am, src/lib/pcre/LICENCE,
           src/lib/pcre/Makefile.am, src/lib/pcre/README,            src/lib/pcre/Makefile.am, src/lib/pcre/README,
Line 18948 Line 21289
   
 2002-06-20  paf  2002-06-20  paf
   
         * INSTALL, configure, configure.in, operators.txt,          * INSTALL, configure, configure.in, operators.ru.txt,
           src/classes/file.C, src/classes/op.C, src/doc/doxygen.cfg,            operators.txt, src/classes/file.C, src/classes/op.C,
           src/include/pa_globals.h, src/include/pa_request.h,            src/doc/doxygen.cfg, src/include/pa_globals.h,
           src/main/execute.C, src/main/pa_request.C,            src/include/pa_request.h, src/main/execute.C,
           src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C,            src/main/pa_request.C, src/targets/cgi/parser3.C,
           src/types/pa_vmethod_frame.h: marged latest HEAD updates, mainly            src/targets/isapi/parser3isapi.C, src/types/pa_vmethod_frame.h:
           file:justname&co & @auto/conf[filespec            marged latest HEAD updates, mainly file:justname&co &
             @auto/conf[filespec
   
         * operators.txt, src/classes/file.C:          * operators.ru.txt, operators.txt, src/classes/file.C:
           !^file:dirname[/a/some.tar.gz]=/a            !^file:dirname[/a/some.tar.gz]=/a
               !^file:dirname[/a/b/]=/a                !^file:dirname[/a/b/]=/a
               !^file:basename[/a/some.tar.gz]=some.tar.gz                !^file:basename[/a/some.tar.gz]=some.tar.gz
Line 18969 Line 21311
   
         * configure: parser3.conf renamed to auto.p autoconf changes          * configure: parser3.conf renamed to auto.p autoconf changes
   
         * INSTALL, configure.in, operators.txt, src/doc/doxygen.cfg,          * INSTALL, configure.in, operators.ru.txt, operators.txt,
           src/include/pa_globals.h, src/targets/cgi/parser3.C,            src/doc/doxygen.cfg, src/include/pa_globals.h,
           src/targets/isapi/parser3isapi.C: parser3.conf renamed to auto.p            src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C:
             parser3.conf renamed to auto.p
   
 2002-06-18  paf  2002-06-18  paf
   
Line 19007 Line 21350
   
 2002-06-14  paf  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            attribute_node.name/value xnode pi.node.data
   
 2002-06-12  paf  2002-06-12  paf
Line 19017 Line 21360
         * configure, configure.in, src/targets/cgi/Makefile.am,          * configure, configure.in, src/targets/cgi/Makefile.am,
           src/targets/cgi/parser3.C: removed root conf define creation            src/targets/cgi/parser3.C: removed root conf define creation
   
         * INSTALL, configure.in, operators.txt, etc/Makefile.am,          * INSTALL, configure.in, operators.ru.txt, operators.txt,
           src/include/pa_globals.h, src/include/pa_request.h,            etc/Makefile.am, src/include/pa_globals.h,
           src/main/compile.tab.C, src/main/pa_globals.C,            src/include/pa_request.h, src/main/compile.tab.C,
           src/main/pa_request.C, src/targets/cgi/parser3.C,            src/main/pa_globals.C, src/main/pa_request.C,
           src/targets/isapi/parser3isapi.C: parser3.conf now one and only            src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C:
             parser3.conf now one and only
   
         * src/classes/mail.C: sendmail -ti [default now]          * src/classes/mail.C: sendmail -ti [default now]
   
Line 19048 Line 21392
   
 2002-06-10  paf  2002-06-10  paf
   
         * operators.txt, src/classes/op.C, src/include/pa_common.h,          * operators.ru.txt, operators.txt, src/classes/op.C,
           src/main/pa_common.C: lock failures reported now            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          * src/main/compile_tools.C: ^if(" 1 "){y} bug fixed optimization
           string->double @ compile time were not-enough-checking...            string->double @ compile time were not-enough-checking...
Line 19065 Line 21410
   
         * configure, configure.in: hpux check, nsl link, no socket          * 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          * configure, configure.in: pack even address access on sparc&co
           arch checked in configure            arch checked in configure
Line 19083 Line 21428
   
 2002-06-03  paf  2002-06-03  paf
   
         * ChangeLog, operators.txt, etc/parser3.charsets/windows-1251.cfg,          * ChangeLog, operators.ru.txt, operators.txt,
           src/classes/classes.dsp, src/main/compile.tab.C,            etc/parser3.charsets/windows-1251.cfg, src/classes/classes.dsp,
           src/main/main.dsp, src/main/pa_globals.C,            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/cgi/parser3.C, src/targets/cgi/parser3.dsp,
           src/targets/isapi/parser3isapi.dsp, src/types/types.dsp: fixed            src/targets/isapi/parser3isapi.dsp, src/types/types.dsp: fixed
           .dsp-s along with reorganized cvs modules dirs structure            .dsp-s along with reorganized cvs modules dirs structure
Line 19110 Line 21455
   
 2002-05-15  paf  2002-05-15  paf
   
         * operators.txt, src/classes/date.C: ^date::create[%H:%M[:%S]]          * operators.ru.txt, operators.txt, src/classes/date.C:
           added            ^date::create[%H:%M[:%S]] added
   
         * etc/parser3.charsets/windows-1251.cfg: 0x forgot, fixed          * etc/parser3.charsets/windows-1251.cfg: 0x forgot, fixed
   
         * operators.txt, src/classes/date.C: ^date::create[%Y[-%m[-%d[          * operators.ru.txt, operators.txt, src/classes/date.C:
           %H[:%M[:%S]]]]]] [-%m now            ^date::create[%Y[-%m[-%d[ %H[:%M[:%S]]]]]] [-%m now
   
 2002-05-14  paf  2002-05-14  paf
   
Line 19187 Line 21532
           under that dir got REDIRECT_ prefix before HTTP_PARSER_x_CONFIG,            under that dir got REDIRECT_ prefix before HTTP_PARSER_x_CONFIG,
           now that took into account            now that took into account
   
         * operators.txt, src/classes/date.C: ^date::create[2002-12-33          * operators.ru.txt, operators.txt, src/classes/date.C:
           01:03:04]            ^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]            ^date::create[2002-12-33 01:03:04]
   
         * ChangeLog: updated changelog          * ChangeLog: updated changelog
Line 19207 Line 21552
   
 2002-04-23  paf  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:            int/double/string:sql{}[$.default{code}] fixed [were barking:
           "junction used outside of context"]            "junction used outside of context"]
   
Line 19413 Line 21758
   
 2002-04-12  paf  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  2002-04-11  paf
   
Line 19439 Line 21785
           targets/isapi/parser3isapi.C: removed {   char *a;   {      /*sub            targets/isapi/parser3isapi.C: removed {   char *a;   {      /*sub
           local*/char b[...];      a=b; situations            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          * src/classes/xdoc.C: xslt params fixed
   
Line 19447 Line 21794
           types/pa_vdouble.h, types/pa_vint.h: int/double get_string now            types/pa_vdouble.h, types/pa_vint.h: int/double get_string now
           not pool.malloc(MAX_NUMBER) but really neaded            not pool.malloc(MAX_NUMBER) but really neaded
   
         * operators.txt, src/classes/double.C, src/classes/int.C:          * operators.ru.txt, operators.txt, src/classes/double.C,
           int/double.int/double(default)            src/classes/int.C: int/double.int/double(default)
   
 2002-04-04  paf  2002-04-04  paf
   
Line 19484 Line 21831
   
         * etc/parser3.charsets/koi8-r.cfg: koi8-r += ukranian letters          * etc/parser3.charsets/koi8-r.cfg: koi8-r += ukranian letters
   
         * operators.txt, src/classes/date.C: ^date::create now may not          * operators.ru.txt, operators.txt, src/classes/date.C:
           supply day, default 1.  checked 29.03 -> 29.02 roll on non 366            ^date::create now may not supply day, default 1.  checked 29.03
           days' year.  | 31.05->31.04   roll            -> 29.02 roll on non 366 days' year.  | 31.05->31.04   roll
   
 2002-03-28  paf  2002-03-28  paf
   
         * operators.txt, src/classes/date.C, src/classes/op.C,          * operators.ru.txt, operators.txt, src/classes/date.C,
           src/include/pa_globals.h, src/include/pa_hash.h,            src/classes/op.C, src/include/pa_globals.h,
           src/main/pa_globals.C, src/types/pa_vdate.h: ^cache[file][date]{            src/include/pa_hash.h, src/main/pa_globals.C,
           ^cache(seconds)    ^cache[date] }            src/types/pa_vdate.h: ^cache[file][date]{    ^cache(seconds)
             ^cache[date] }
   
         * src/classes/: xdoc.C, xnode.C, xnode.h: removed redundant pool          * src/classes/: xdoc.C, xnode.C, xnode.h: removed redundant pool
           param            param
   
 2002-03-27  paf  2002-03-27  paf
   
         * operators.txt, src/classes/date.C, src/classes/double.C,          * operators.ru.txt, operators.txt, src/classes/date.C,
           src/classes/file.C, src/classes/form.C, src/classes/hash.C,            src/classes/double.C, src/classes/file.C, src/classes/form.C,
           src/classes/image.C, src/classes/int.C, src/classes/mail.C,            src/classes/hash.C, src/classes/image.C, src/classes/int.C,
           src/classes/math.C, src/classes/op.C, src/classes/string.C,            src/classes/mail.C, src/classes/math.C, src/classes/op.C,
           src/classes/table.C, src/classes/void.C, src/classes/xdoc.C,            src/classes/string.C, src/classes/table.C, src/classes/void.C,
           src/classes/xnode.C, src/include/pa_exception.h,            src/classes/xdoc.C, src/classes/xnode.C,
           src/include/pa_request.h, src/include/pa_stylesheet_connection.h,            src/include/pa_exception.h, src/include/pa_request.h,
           src/main/compile.C, src/main/compile_tools.C, src/main/execute.C,            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_array.C, src/main/pa_charset.C,
           src/main/pa_charsets.C, src/main/pa_common.C,            src/main/pa_charsets.C, src/main/pa_common.C,
           src/main/pa_dictionary.C, src/main/pa_exception.C,            src/main/pa_dictionary.C, src/main/pa_exception.C,
Line 19522 Line 21871
           src/types/pa_vxnode.h, src/types/pa_wcontext.C,            src/types/pa_vxnode.h, src/types/pa_wcontext.C,
           src/types/pa_wwrapper.h: assigned exception types            src/types/pa_wwrapper.h: assigned exception types
   
         * operators.txt, src/classes/op.C, src/include/pa_config_fixed.h,          * operators.ru.txt, operators.txt, src/classes/op.C,
           src/include/pa_request.h, src/main/execute.C,            src/include/pa_config_fixed.h, src/include/pa_request.h,
           src/main/pa_request.C: decided agains resetting exception_trace,            src/main/execute.C, src/main/pa_request.C: decided agains
           just changed name            resetting exception_trace, just changed name
   
 2002-03-26  paf  2002-03-26  paf
   
Line 19536 Line 21885
           to 'tainted', so that sql-langed-frags could be outputed outside            to 'tainted', so that sql-langed-frags could be outputed outside
           of connect            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          * src/classes/date.C: removed date.roll limit of +-1 offset
   
         * operators.txt, src/classes/date.C: fixed date roll on          * operators.ru.txt, operators.txt, src/classes/date.C: fixed date
           daylightsaving days mktime took into account tm_isdst flag, which            roll on daylightsaving days mktime took into account tm_isdst
           remained from BEFORE roll, but should have been reset            flag, which remained from BEFORE roll, but should have been reset
   
 2002-03-25  paf  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            http_site_config_filespec
   
         * src/: classes/file.C, classes/mail.C, include/pa_exec.h,          * src/: classes/file.C, classes/mail.C, include/pa_exec.h,
Line 19560 Line 21910
           src/targets/cgi/Makefile.am: --disable-foreign-group-files now            src/targets/cgi/Makefile.am: --disable-foreign-group-files now
           disables execs also.  introducing --sendmail            disables execs also.  introducing --sendmail
   
         * operators.txt: pgsql options comment          * operators.ru.txt, operators.txt: pgsql options comment
   
         * INSTALL: comment on --disable-link-stdcpp          * INSTALL: comment on --disable-link-stdcpp
   
Line 19576 Line 21926
         * src/main/pa_exec.C: createprocess nowindow flag check on readfile          * src/main/pa_exec.C: createprocess nowindow flag check on readfile
           false return            false return
   
         * operators.txt: few comments on sets          * operators.ru.txt, operators.txt: few comments on sets
   
 2002-03-18  paf  2002-03-18  paf
   
         * operators.txt, src/classes/op.C, src/include/pa_exception.h,          * operators.ru.txt, operators.txt, src/classes/op.C,
           src/include/pa_globals.h, src/include/pa_request.h,            src/include/pa_exception.h, src/include/pa_globals.h,
           src/include/pa_stack.h, src/main/pa_globals.C,            src/include/pa_request.h, src/include/pa_stack.h,
           src/main/pa_request.C: introducing ^try            src/main/pa_globals.C, src/main/pa_request.C: introducing ^try
   
         * src/: main/pa_charset.C, targets/isapi/pa_threads.C,          * src/: main/pa_charset.C, targets/isapi/pa_threads.C,
           types/pa_vdouble.h: removed some tested @tests            types/pa_vdouble.h: removed some tested @tests
   
 2002-03-15  paf  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  2002-03-13  paf
   
Line 19617 Line 21968
   
 2002-03-05  paf  2002-03-05  paf
   
         * operators.txt, src/classes/date.C: date week calendar columns          * operators.ru.txt, operators.txt, src/classes/date.C: date week
           named            calendar columns named
   
         * operators.txt, src/classes/date.C: date week calendar columns          * operators.ru.txt, operators.txt, src/classes/date.C: date week
           named            calendar columns named
   
         * src/targets/isapi/: parser3isapi.C, parser3isapi.dsp: iis5 now          * src/targets/isapi/: parser3isapi.C, parser3isapi.dsp: iis5 now
           requires headers to be terminated with \r\n manually [refuses to            requires headers to be terminated with \r\n manually [refuses to
Line 19663 Line 22014
   
         * INSTALL: shared/static-xml with-pathlink          * INSTALL: shared/static-xml with-pathlink
   
         * operators.txt: SMTP comment          * operators.ru.txt, operators.txt: SMTP comment
   
 2002-02-26  paf  2002-02-26  paf
   
Line 19696 Line 22047
   
         * src/types/pa_vcookie.C: cookie "expires=0" =  "session"          * src/types/pa_vcookie.C: cookie "expires=0" =  "session"
   
         * operators.txt, src/types/pa_vcookie.C: cookie "expires=0" =          * operators.ru.txt, operators.txt, src/types/pa_vcookie.C: cookie
           "session"            "expires=0" =  "session"
   
         * configure, configure.in, src/include/pa_config_auto.h.in:          * configure, configure.in, src/include/pa_config_auto.h.in:
           --with-shared-xml --with-static-xml            --with-shared-xml --with-static-xml
Line 19709 Line 22060
   
         * acconfig.h: acconfig move in cvs[from src/libltdl to /]          * acconfig.h: acconfig move in cvs[from src/libltdl to /]
   
         * operators.txt, src/classes/classes.dsp, src/main/main.dsp,          * operators.ru.txt, operators.txt, src/classes/classes.dsp,
           src/types/types.dsp: removed hashfile support from sources for            src/main/main.dsp, src/types/types.dsp: removed hashfile support
           now            from sources for now
   
         * configure, configure.in, src/classes/Makefile.am,          * configure, configure.in, src/classes/Makefile.am,
           src/classes/hashfile.C, src/include/Makefile.am,            src/classes/hashfile.C, src/include/Makefile.am,
Line 19751 Line 22102
           main/untaint.C, targets/cgi/parser3.C, types/pa_vcookie.C,            main/untaint.C, targets/cgi/parser3.C, types/pa_vcookie.C,
           types/pa_vstring.h: speed uptimized: string::is_empty            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_config_fixed.h, src/include/pa_string.h,
           src/include/pa_types.h, src/main/compile.tab.C,            src/include/pa_types.h, src/main/compile.tab.C,
           src/main/execute.C, src/main/pa_string.C, src/main/untaint.C,            src/main/execute.C, src/main/pa_string.C, src/main/untaint.C,
Line 19795 Line 22146
           targets/cgi/parser3.dsp, types/types.dsp: win32xml now contains            targets/cgi/parser3.dsp, types/types.dsp: win32xml now contains
           gnome xml libs parser .dsp-s changed accordingly            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,          * operators.ru.txt, operators.txt, src/classes/date.C: date::create
           with backward comp            [were date::set, with backward comp
   
         * src/classes/math.C: math:random range check fixed          * src/classes/math.C: math:random range check fixed
   
Line 19813 Line 22165
           src/include/pa_config_includes.h, src/targets/cgi/Makefile.am,            src/include/pa_config_includes.h, src/targets/cgi/Makefile.am,
           src/targets/cgi/parser3.C: removed libtool usage from build mech            src/targets/cgi/parser3.C: removed libtool usage from build mech
   
         * operators.txt: \ comment          * operators.ru.txt, operators.txt: \ comment
   
 2002-02-13  paf  2002-02-13  paf
   
Line 19975 Line 22327
         * src/main/: compile.C, compile.tab.C, compile.y, compile_tools.h:          * src/main/: compile.C, compile.tab.C, compile.y, compile_tools.h:
           disabled $if reference due to conflicts with local variables            disabled $if reference due to conflicts with local variables
   
         * operators.txt, src/classes/xdoc.C, src/include/pa_config_fixed.h:          * operators.ru.txt, operators.txt, src/classes/xdoc.C,
           xdoc::set obsolete now, now xdoc::create, with both sences            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:          * operators.ru.txt, operators.txt, src/classes/table.C,
           table::create now // 'set' name obsolete now table clone.            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:            src/include/pa_config_fixed.h, src/main/compile.tab.C:
           ^int/double/string.format now can be called with normal []            ^int/double/string.format now can be called with normal []
           brackets, not stupid {} as it were implemented for some strange            brackets, not stupid {} as it were implemented for some strange
Line 20001 Line 22355
   
         * configure, configure.in: prefix expanded, grr          * 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  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          * src/main/: pa_exec.C: argv0 now correct
   
Line 20013 Line 22368
   
         * src/types/pa_vstatus.C: status:rusage 2          * 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          * src/types/pa_vstatus.C: status:rusage 1
   
         * configure.in, src/types/Makefile.am, src/types/pa_vstatus.h,          * configure.in, src/types/Makefile.am, src/types/pa_vstatus.h,
           src/types/types.dsp: status:rusage            src/types/types.dsp: status:rusage
   
         * configure.in, operators.txt, src/classes/file.C,          * configure.in, operators.ru.txt, operators.txt,
           src/classes/op.C, src/include/pa_common.h,            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/include/pa_config_includes.h, src/main/compile.tab.C,
           src/main/pa_common.C: rewritten ^cache to use            src/main/pa_common.C: rewritten ^cache to use
           non-blocking-exclusive-caches            non-blocking-exclusive-caches
Line 20084 Line 22440
           acinclude.m4, aclocal.m4, asm.txt, config.guess, config.sub,            acinclude.m4, aclocal.m4, asm.txt, config.guess, config.sub,
           configure, configure.in, form.txt, ident.awk, install-sh,            configure, configure.in, form.txt, ident.awk, install-sh,
           lang.txt, ltconfig, ltmain.sh, missing, mkinstalldirs,            lang.txt, ltconfig, ltmain.sh, missing, mkinstalldirs,
           operators.txt, parser3.dsw, sql.txt, types.txt, etc/Makefile.am,            operators.ru.txt, operators.txt, parser3.dsw, sql.txt, types.txt,
           etc/parser3.charsets/Makefile.am,            etc/Makefile.am, etc/parser3.charsets/Makefile.am,
           etc/parser3.charsets/koi8-r.cfg,            etc/parser3.charsets/koi8-r.cfg,
           etc/parser3.charsets/windows-1250.cfg,            etc/parser3.charsets/windows-1250.cfg,
           etc/parser3.charsets/windows-1251.cfg, src/Makefile.am,            etc/parser3.charsets/windows-1251.cfg, src/Makefile.am,

Removed from v.1.201  
changed lines
  Added in v.1.248


E-mail: