Diff for /parser3/ChangeLog between versions 1.89 and 1.161

version 1.89, 2013/10/16 22:31:06 version 1.161, 2021/01/20 16:48:54
Line 1 Line 1
   2021-01-20  moko
   
           * src/targets/apache/mod_parser3.c: it is more correct to recommend
             'a2enmod mpm_prefork'
   
           * src/targets/apache/mod_parser3.c: prefork name is now
             'libapache2-mpm-itk'
   
           * src/targets/apache/mod_parser3_core.C: last regular malloc
             removed
   
           * src/targets/isapi/Makefile.am: -pa_threads.C
   
           * configure, configure.ac, src/include/pa_version.h: 3.4.6rc ->
             3.4.6
   
           * etc/auto.p.in: post_max_size 10Mb -> 64Mb. It's 2021 year now. :)
   
           * etc/auto.p.in: @config[result] added to simplify $cfg change in
             /httpd.p
   
           * etc/auto.p.in: httpd fine-tune: + @OPTIONS partial, +
             ^use[/httpd.p] + optional ^preprocess[] (related to feature
             #1203)
   
   2021-01-19  moko
   
           * buildall: --disable-parallel-mark added to avoid "number of
             processors" threads creation for heap marking as it conflicts
             with RLimitNProc in apache (on Linux setrlimit RLIMIT_NPROC
             limits threads)
   
   2021-01-16  moko
   
           * src/: classes/memory.C, include/pa_memory.h, lib/gc/include/gc.h,
             main/pa_globals.C, main/pa_memory.C,
             targets/apache/mod_parser3_core.C, targets/isapi/parser3isapi.C,
             types/pa_vhashfile.C: ^memory:auto-compact(N) added (implements
             feature #1209)
   
   2021-01-15  moko
   
           * configure, configure.ac, src/include/pa_version.h: 3.4.6b ->
             3.4.6rc
   
           * src/classes/json.C: get_delim added for delimiter caching (10%
             faster on large json)
   
   2021-01-14  moko
   
           * operators.txt: updated with 3.4.6 changes
   
           * tests/results/224.processed: test result modified after
             today(shift) implemented
   
           * tests/: 407.html, results/407.processed: test for ^hash.select
             option $.default(bool) added (related to feature #1172)
   
           * src/classes/hash.C: ^hash.select option $.default(bool) added
             (related to feature #1172)
   
           * tests/: 141.html, results/141.processed: test modified for
             feature #1185.
   
           * src/: classes/math.C, include/pa_random.h, main/pa_random.C:
             ^math:uuid options $.lower(bool) $.solid(bool), ^math:uid64
             options $.lower(bool) (implements feature #1185)
   
   2021-01-11  moko
   
           * src/classes/date.C: ^date::today(N) by gz@ (implements feature
             #1192)
   
           * tests/: 411.html, results/411.processed: test for ^date::today(N)
             added (related to feature #1192)
   
   2021-01-05  moko
   
           * tests/: 270.html, results/270.processed: test modified to work
             under Windows
   
           * tests/: 390.html, 395.html, results/395.processed: tests updated
             4 windows
   
           * tests/: 410.html, results/410.processed: test for
             $CLASS-GETTER-PROTECTED(false) added
   
   2021-01-04  moko
   
           * tests/: 409.html, results/409.processed, results/auto.p: test for
             $MAIN:LOCALS(true) added
   
   2021-01-03  moko
   
           * src/: main/pa_http.C, main/pa_request.C, types/pa_vclass.C,
             types/pa_vclass.h, types/pa_vstateless_class.C,
             types/pa_vstateless_class.h: @conf[] +CLASS-GETTER-PROTECTED,
             +LOCALS. $main -> $MAIN in exception texts (implements feature
             #1207)
   
   2021-01-02  moko
   
           * etc/auto.p.in: minor
   
           * src/main/pa_request.C: sending headers only after opening file to
             allow error reporting if file was not opened (foreign group,
             etc).
   
   2020-12-31  moko
   
           * src/: include/pa_request.h, main/pa_request.C,
             targets/cgi/parser3.C: ^httpd-main[] -> ^httpd:main[]
   
           * src/: classes/reflection.C, include/pa_request.h, main/execute.C,
             main/pa_request.C: get_class_ref added and used
   
           * etc/auto.p.in: @CLASS httpd added
   
           * etc/auto.p.in: @auto[] is now first
   
   2020-12-30  moko
   
           * tests/: 408.html, results/408.processed: test for bug #1166
             (windows only) added
   
           * src/main/pa_common.C: create_dir_for_file should not create dir
             for trailing / (fixes bug #1166)
   
           * tests/: 341.html, results/341.processed: tests for
             ^nameless_table.hash[] added (related to feature #1138)
   
           * src/classes/table.C: ^nameless_table.hash[0;1] now supported
             (implements feature #1138), extra fields in named tables no
             longer ignored (implements feature #1138)
   
           * tests/results/390.processed: updated after exception text change
   
   2020-12-29  moko
   
           * tests/: 407.html, results/407.processed: +$._default check
   
           * src/classes/hash.C: keep $_default in ^hash.reverse[]
   
           * tests/: 407.html, results/407.processed: test for ^hash.select[]
             and ^hash.reverse[] added (releated to feature #1172)
   
           * src/classes/hash.C:
             ^hash.select[key;value](bool-condition)[options hash] +
             ^hash.reverse[] added (implements feature #1172)
   
           * src/types/pa_vtable.h: warning war
   
           * src/include/pa_config_fixed.h: win32 fix
   
   2020-12-27  moko
   
           * tests/: 406.html, results/406.processed: test results updated
   
           * src/: classes/table.C, main/pa_request.C, types/pa_vmail.C,
             types/pa_vmemcached.C: fine tuning in ^table.rename[], minor
             spelling
   
   2020-12-26  moko
   
           * tests/: 406.html, results/406.processed: tests for
             ^table.rename[] added (related to feature #1148)
   
           * src/: classes/table.C, include/pa_table.h, main/pa_table.C:
             ^table.rename[column name from;column name to], ^table.rename[
             $.[column name from][column name to] ... ] added (implements
             feature #1148)
   
   2020-12-25  moko
   
           * src/: include/pa_request_info.h, targets/cgi/parser3.C:
             request_info now on stack to avoid yet another THREAD_LOCAL
             memory deallocation issue (now with cookies), explained in #1203
   
           * src/types/pa_vcookie.C: fields should be inited
   
   2020-12-24  moko
   
           * src/include/pa_stylesheet_connection.h: looks like
             xsltFreeStylesheet leads to memory double-free. If so, it's for
             sure libxml bug, but we have GC anyway, so we just remove this
             call and see...
   
             * thread #1, name = 'parser.parser3.cgi', stop reason = signal
             SIGABRT   * frame #0: 0x0000000801ab50fa libc.so.7`__sys_thr_kill
             + 10     frame #2: 0x0000000801ab5039 libc.so.7`abort at
             abort.c:65:8     frame #3: 0x00000000004da663
             parser.parser3.cgi`GC_freehblk(hbp=<unavailable>) at
             allchblk.c:878:9     frame #4: 0x00000000004cb8c4
             parser.parser3.cgi`GC_free(p=0x0000000808b34000) at
             malloc.c:617:9     frame #5: 0x0000000000577f0c
             parser.parser3.cgi`xmlHashFree(table=0x0000000806991a80,
             f=<unavailable>) at hash.c:356:2     frame #6: 0x000000000051a7c2
             parser.parser3.cgi`xsltFreeTemplateHashes + 50     frame #7:
             0x000000000050cfac parser.parser3.cgi`xsltFreeStylesheet + 124
              frame #8: 0x000000000050d35c
             parser.parser3.cgi`xsltFreeStylesheetList + 44     frame #9:
             0x000000000050d1fa parser.parser3.cgi`xsltFreeStylesheet + 714
              frame #10: 0x00000000004436e5
             parser.parser3.cgi`Stylesheet_manager::maybe_expire_cache()
             [inlined]
             Stylesheet_connection::disconnect(this=0x0000000804676c80) at
             pa_stylesheet_connection.h:62:3
   
   2020-12-23  moko
   
           * src/classes/image.C: ^image::measure[; $.video() ] option added
   
           * tests/: 395.html, 395_dir/4.mp4, results/395.processed: test
             ^image::measure[; $.video(true) ] added
   
           * src/main/pa_exec.C: not cleared automatically in multithreaded
             httpd mode for unknown reasons
   
   2020-12-22  moko
   
           * src/targets/cgi/parser3.C: added by PAF in rev 201 to "write to
             error_log uri of currently processed document", but never used
             and conflicts with how libgc stops threads on FreeBSD (#define
             SIG_SUSPEND SIGUSR1), thus removed.
   
   2020-12-21  moko
   
           * src/main/pa_request.C: +comment
   
   2020-12-20  moko
   
           * src/: include/pa_common.h, include/pa_memory.h, main/pa_common.C:
             it is more safe to have versions of pa_strdup with one and two
             arguments, as helper_length=0 not always mean that strlen()
             should be called, but means zero.
   
           * src/targets/isapi/parser3isapi.C: minor
   
           * src/main/pa_http.C: +valid_http_method
   
           * src/: include/pa_http.h, main/pa_http.C,
             targets/cgi/pa_sapi_info.h: SERVER_PORT now available
   
   2020-12-17  moko
   
           * tests/: 405.html, results/405.processed: test for split by regex
             added (related to feature #1160)
   
           * src/classes/string.C: split by regex implemented (feature #1160)
   
           * src/classes/string.C: minor
   
           * tests/: 404.html, results/404.processed: test for whitespace
             string is now OK for table argument (related to feature #1169)
   
           * src/: classes/image.C, classes/string.C, classes/table.C,
             types/pa_vmethod_frame.C: whitespace string is now OK for table
             argument (as with hash) (implements feature #1169)
   
           * src/classes/op.C: Exception.add_comment used to avoid MAX_LENGTH
             limit for comment (fixes bug #1102)
   
           * src/targets/cgi/parser3.C: +HAVE_TLS check
   
           * src/main/pa_http.C: no HAVE_TLS -> no multithreads mode
   
           * src/include/pa_config_includes.h: HAVE_TLS used
   
           * configure.ac: +TLS check
   
           * src/main/pa_http.C: content logging added
   
           * src/targets/cgi/: pa_sapi_info.h, parser3.C:
             clear_response_headers added
   
   2020-12-16  moko
   
           * buildall: as we now use threads, libatomic_ops still required for
             some OS.
   
           * src/main/pa_request.C: whitespace
   
           * src/: include/pa_request.h, main/pa_request.C:
             Request::Exception_trace::table extracted and used
   
           * src/main/pa_request.C: moving output_result call outside of try
             as network exceptions should not be handled by parser code
   
           * src/: include/pa_http.h, main/pa_http.C: HTTPD_DEBUG added for
             logging network exchange
   
           * src/targets/cgi/: pa_sapi_info.h, parser3.C: do not send error
             via network if it was network write error.
   
           * src/targets/cgi/parser3.C: log -> pa_log
   
           * src/targets/cgi/parser3.C: pa_get_thread_id() used for logging
   
           * src/main/pa_threads.C: getpid() if no gettid() found
   
           * src/: include/pa_http.h, main/pa_http.C, targets/cgi/parser3.C:
             we need to ignore "void" connections from browsers (browsers open
             connections in advance and they will be empty if user does not
             request more pages)
   
   2020-12-15  moko
   
           * src/targets/cgi/parser3.C: avoid previous uri in logs
   
           * src/targets/cgi/: pa_sapi_info.h, parser3.C: global ::request and
             RequestController not needed in httpd mode
   
           * src/: classes/bool.C, classes/classes.C, classes/classes.awk,
             classes/classes.h, classes/curl.C, classes/date.C,
             classes/double.C, classes/file.C, classes/form.C, classes/hash.C,
             classes/hashfile.C, classes/image.C, classes/inet.C,
             classes/int.C, classes/json.C, classes/mail.C, classes/math.C,
             classes/memcached.C, classes/memory.C, classes/op.C,
             classes/reflection.C, classes/regex.C, classes/response.C,
             classes/string.C, classes/table.C, classes/void.C,
             classes/xdoc.C, classes/xnode.C, classes/xnode.h,
             include/pa_array.h, include/pa_base64.h,
             include/pa_cache_managers.h, include/pa_charset.h,
             include/pa_charsets.h, include/pa_common.h,
             include/pa_config_fixed.h, include/pa_config_includes.h,
             include/pa_dictionary.h, include/pa_dir.h,
             include/pa_exception.h, include/pa_exec.h, include/pa_globals.h,
             include/pa_hash.h, include/pa_http.h, include/pa_memory.h,
             include/pa_opcode.h, include/pa_operation.h, include/pa_os.h,
             include/pa_pool.h, include/pa_random.h, include/pa_request.h,
             include/pa_request_charsets.h, include/pa_request_info.h,
             include/pa_sapi.h, include/pa_socks.h,
             include/pa_sql_connection.h, include/pa_sql_driver_manager.h,
             include/pa_stack.h, include/pa_string.h,
             include/pa_stylesheet_connection.h,
             include/pa_stylesheet_manager.h, include/pa_symbols.h,
             include/pa_table.h, include/pa_threads.h, include/pa_types.h,
             include/pa_uue.h, include/pa_xml_exception.h,
             include/pa_xml_io.h, lib/gd/gif.C, lib/gd/gif.h, lib/gd/gifio.C,
             lib/md5/pa_md5.h, lib/md5/pa_md5c.c,
             lib/memcached/pa_memcached.C, lib/memcached/pa_memcached.h,
             lib/punycode/pa_idna.c, lib/punycode/pa_idna.h,
             lib/sdbm/pa_file_io.C, lib/sdbm/pa_strings.C, lib/smtp/comms.C,
             lib/smtp/smtp.C, lib/smtp/smtp.h, main/compile.C,
             main/compile.tab.C, main/compile.y, main/compile_tools.C,
             main/compile_tools.h, main/execute.C, main/pa_base64.C,
             main/pa_cache_managers.C, main/pa_charset.C, main/pa_charsets.C,
             main/pa_common.C, main/pa_dictionary.C, main/pa_dir.C,
             main/pa_exception.C, main/pa_exec.C, main/pa_globals.C,
             main/pa_http.C, main/pa_memory.C, main/pa_os.C, main/pa_pool.C,
             main/pa_random.C, main/pa_request.C, main/pa_socks.C,
             main/pa_sql_driver_manager.C, main/pa_string.C,
             main/pa_stylesheet_connection.C, main/pa_stylesheet_manager.C,
             main/pa_symbols.C, main/pa_table.C, main/pa_threads.C,
             main/pa_uue.C, main/pa_xml_exception.C, main/pa_xml_io.C,
             main/untaint.C, sql/pa_sql_driver.h,
             targets/apache/mod_parser3.c, targets/apache/mod_parser3_core.C,
             targets/apache/pa_httpd.h, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C, types/pa_junction.h,
             types/pa_method.h, types/pa_property.h, types/pa_value.C,
             types/pa_value.h, types/pa_vbool.h, types/pa_vcaller_wrapper.h,
             types/pa_vclass.C, types/pa_vclass.h, types/pa_vcode_frame.h,
             types/pa_vconsole.h, types/pa_vcookie.C, types/pa_vcookie.h,
             types/pa_vdate.C, types/pa_vdate.h, types/pa_vdouble.h,
             types/pa_venv.C, types/pa_venv.h, types/pa_vfile.C,
             types/pa_vfile.h, types/pa_vform.C, types/pa_vform.h,
             types/pa_vhash.C, types/pa_vhash.h, types/pa_vhashfile.C,
             types/pa_vhashfile.h, types/pa_vimage.C, types/pa_vimage.h,
             types/pa_vint.h, types/pa_vjunction.C, types/pa_vjunction.h,
             types/pa_vmail.C, types/pa_vmail.h, types/pa_vmath.C,
             types/pa_vmath.h, types/pa_vmemcached.C, types/pa_vmemcached.h,
             types/pa_vmemory.h, types/pa_vmethod_frame.C,
             types/pa_vmethod_frame.h, types/pa_vobject.C, types/pa_vobject.h,
             types/pa_vregex.C, types/pa_vregex.h, types/pa_vrequest.C,
             types/pa_vrequest.h, types/pa_vresponse.C, types/pa_vresponse.h,
             types/pa_vstateless_class.C, types/pa_vstateless_class.h,
             types/pa_vstateless_object.h, types/pa_vstatus.C,
             types/pa_vstatus.h, types/pa_vstring.C, types/pa_vstring.h,
             types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.C,
             types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h,
             types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C,
             types/pa_wcontext.h, types/pa_wwrapper.h: Copyright year updated
   
           * src/main/pa_request.C: old compilers support
   
           * tests/: 362.html, results/362.processed: test updated after
             changes after upgrade to libxml2-2.9.9 were made (related to bug
             #1108)
   
           * src/: classes/xdoc.C, types/pa_vxdoc.h: xsltStylesheet_auto_ptr
             removed, as xsltFreeStylesheet has side effects on original doc.
             compiled stylesheet no longer cached as with libxml2-2.9.9 it was
             not updated after xdoc modification (part 3 of test 362).
             (related to bug #1108)
   
           * src/targets/isapi/parser3isapi.C: +pa_strcat
   
           * src/: classes/memory.C, include/pa_memory.h,
             targets/apache/mod_parser3_core.C, targets/isapi/parser3isapi.C:
             PA_GC_GCOLLECT used
   
           * src/include/pa_memory.h: +PA_GC_COLLECT
   
           * src/targets/cgi/parser3.C: msvs support fixes
   
           * src/lib/gc/include/gc.h: more cleanup
   
           * src/: include/pa_threads.h, main/pa_threads.C: win32 fixes
   
           * src/: include/pa_http.h, main/pa_http.C, main/pa_request.C,
             targets/cgi/parser3.C: $main:HTTPD.mode implemented
   
           * src/include/pa_config_includes.h: +HAVE_PTHREAD_H
   
           * configure.ac: pthread.h added to checked headers
   
           * src/classes/table.C: string stream is back :)
   
           * src/classes/memory.C: GC_generate_random_backtrace no longer
             exists
   
           * src/main/pa_globals.C: GC_dont_gc replaced
   
           * src/lib/gc/include/gc.h: major cleanup, only used functions are
             left to simplify adding new functions.  depricated GC_dont_gc
             replaced with GC_disable and GC_enable calls.
   
           * src/lib/cord/: cordxtra.c, include/cord.h: cleanup:
             CORD_from_file* not used and thus removed
   
           * src/lib/gc/include/gc_allocator.h: minor cleanup
   
   2020-12-14  moko
   
           * src/classes/: curl.C, memory.C, table.C: every TLS should be
             referenced elsewhere, or GC will collect it.
   
           * src/: include/pa_xml_io.h, main/pa_stylesheet_connection.C,
             main/pa_xml_io.C: bugfix: TLS variables should be referenced
             elsewhere, or GC will collect them (and we'll get GPF in
             multithreaded enviroment).  May be it can be also fixed by some
             GC call, not sure. But this fix costs nothing (but hours of
             debugging to find the issue :).
   
   2020-12-11  moko
   
           * configure.ac: gettid() check added
   
           * src/main/pa_threads.C: HAVE_GETTID used
   
           * src/include/pa_config_auto.h.in: +HAVE_GETTID
   
           * src/: include/pa_threads.h, main/pa_threads.C: now unified
             version for isapi/cgi/apache
   
           * buildall: threads are now required.
   
           * src/: targets/apache/ApacheModuleParser3Core.vcproj,
             targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj,
             main/main.vcproj: pa_threads.C moved to main
   
           * src/targets/: apache/pa_threads.C, cgi/pa_threads.C,
             isapi/pa_threads.C: pa_threads.C moved to main
   
           * src/: main/Makefile.am, targets/cgi/Makefile.am,
             targets/apache/Makefile.am: pa_threads.C moved to main
   
           * src/classes/xdoc.C: Stylesheet_connection_ptr changed a bit
   
           * src/: include/pa_stylesheet_connection.h,
             main/pa_stylesheet_manager.C: Stylesheet_connection_ptr simplfied
             and weird GPF in multithreaded httpd is gone
   
           * src/include/: pa_stylesheet_connection.h,
             pa_sql_driver_manager.h: whitespace
   
           * src/main/pa_sql_driver_manager.C: timeout 60 sec -> 10 sec
   
           * src/: include/pa_sql_connection.h, main/pa_sql_driver_manager.C,
             main/pa_stylesheet_manager.C: whitespace, warning war
   
           * src/: include/pa_threads.h, targets/apache/pa_threads.C,
             targets/cgi/pa_threads.C, targets/isapi/pa_threads.C:
             parser_multithreaded never used
   
           * src/main/pa_http.C: no ALARM in MULTITHREADED httpd server mode
   
   2020-12-10  moko
   
           * src/: include/pa_config_includes.h, include/pa_http.h,
             main/pa_http.C, targets/cgi/parser3.C: initial support for
             MULTITHREADED and PARALLEL httpd server modes
   
           * src/main/pa_globals.C: GC_java_finalization is depricated
   
   2020-12-09  moko
   
           * etc/auto.p.in: + @httpd-main
   
           * src/: include/pa_common.h, main/pa_request.C,
             targets/cgi/pa_sapi_info.h: Range Requests (rfc7233) now really
             work
   
           * src/: include/pa_common.h, main/pa_common.C, main/pa_request.C:
             slow file_read_binary no longer used, send_range added
   
   2020-12-08  moko
   
           * src/main/pa_request.C: >4Gb support
   
           * src/targets/cgi/parser3.C: msvc warning war
   
           * src/: include/pa_config_includes.h, main/pa_http.C,
             main/pa_request.C: msvc warnings war
   
           * src/classes/image.C: warning war
   
           * src/classes/table.C: MSVC warning war
   
           * src/targets/cgi/parser3.C: msvc warnings war
   
           * src/targets/apache/mod_parser3_core.C: SYSTEM_CONFIG_FILE support
             added
   
   2020-12-07  moko
   
           * configure.ac: SYSTEM_LOG_FILE no longer required as cheat used to
             avoid logging beside system-wide auto.p
   
           * src/targets/cgi/parser3.C: SYSTEM_CONFIG_FILE used
   
           * configure, configure.ac, src/include/pa_config_auto.h.in:
             configure options added:
   
             --with-system-cfg=FILE  to specify system-wide auto.p
             --with-system-log=FILE  to specify system-wide parser3.log
   
           * Makefile.am: bin no longer exists
   
           * configure, configure.ac: auto.p moved to etc to simplify debian
             package
   
           * buildall: auto.p and parser3.charsets moved to their default
             location after install
   
           * etc/: Makefile.am, auto.p.in: auto.p moved to etc directory
   
           * aclocal.m4, configure: automake 1.15 -> 1.16.1
   
           * src/targets/cgi/parser3.C: locate_config call returned to
             original place as it requires pa_thread_request() under Windows
   
           * src/targets/cgi/parser3.C: renaming
   
   2020-12-06  moko
   
           * src/: main/pa_globals.C, targets/cgi/parser3.C: thread request
             check added
   
   2020-12-04  moko
   
           * src/: classes/image.C, include/pa_common.h, main/pa_common.C,
             main/pa_request.C: unified uint64_t lseek implemented to support
             >4Gb files under x86, including Windows
   
   2020-12-02  moko
   
           * src/main/pa_common.C: minor bugfix: $.limit() should be checked
             with max_file_size
   
           * src/: include/pa_common.h, main/pa_common.C, main/pa_request.C:
             support for processing files sized >4Gb on 32 bit planforms
   
           * tests/399.html: file moved
   
           * src/: include/pa_string.h, main/pa_string.C: long long -> int64_t
   
           * src/targets/cgi/pa_sapi_info.h: warning war
   
           * src/: main/pa_http.C, targets/isapi/parser3isapi.C: windows
             warning war
   
   2020-12-01  moko
   
           * src/classes/image.C: mp4 extended size (>4Gb) support added
   
           * src/classes/image.C: for "size not found" exception to be shown
             if size not found until eof
   
           * src/classes/image.C: long -> off_t (which is 64 bits even on 32
             bit linux)
   
           * src/classes/image.C: ^image::measure[] now supports mp4 (feature
             #1188)
   
   2020-11-30  moko
   
           * src/classes/image.C: definitions moved closer to code
   
           * tests/: 395.bmp, 395.html, 396.html, 396.tiff, 395_dir/1.bmp,
             395_dir/2.tiff, 395_dir/3_VP8.webp, 395_dir/3_VP8L.webp,
             395_dir/3_VP8X.webp, results/395.processed,
             results/396.processed: tests for ^image::measure[] .webp support
             added, all image files moved into one directory (related to
             feature #1188)
   
           * src/classes/image.C: ^image::measure[] now supports webp (feature
             #1188)
   
   2020-11-29  moko
   
           * src/main/pa_request.C: CONF_OPTION added to unify @conf options
             processing, unnessesary defines removed
   
   2020-11-24  moko
   
           * tests/results/: 099.processed, 100.processed, 205.processed,
             309.processed, 310.processed: Content-Disposition: inline
             returned
   
           * tests/: 099.html, 237.html, 403.html, outputs/403.processed,
             results/auto.p: test for $response:body[ $.file[<file>] $.name[]
             ] added (related to bug #1204)
   
           * src/main/pa_request.C: $response:body[ $file[<file>.ext] $.name[]
             ] supported to avoid Content-Disposition: inline;
             filename="<file>.ext" but still set Content-Type for ext (related
             to bug #1204)
   
   2020-11-22  moko
   
           * src/: include/pa_common.h, main/pa_common.C, main/pa_request.C,
             types/pa_vfile.C: pa_filename added to avoid useless rsplit
   
           * src/main/pa_request.C: content_disposition_inline returned.
   
   2020-11-17  moko
   
           * src/main/pa_request.C: empty main method name support
   
           * src/: main/pa_common.C, targets/cgi/parser3.C: httpd
             config_handler added, stdout flush added.
   
   2020-11-16  moko
   
           * src/targets/cgi/parser3.C: filespec_4log added, pa_strcat used.
   
           * tests/results/: 099.processed, 205.processed, 237.processed,
             309.processed, 310.processed: Content-Disposition: inline is not
             required and should not contain filename="<name>"
   
           * src/: include/pa_common.h, main/pa_common.C, main/pa_exception.C,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C: pa_strcat implemented and used
   
   2020-11-14  moko
   
           * src/targets/cgi/parser3.C: spelling
   
           * src/targets/cgi/parser3.C: renaming
   
           * src/targets/cgi/parser3.C: args_skip removed, locate_config
             relocated
   
           * src/targets/cgi/parser3.C: execution_canceled was for sigpipe
             before request processing, which is weired
   
   2020-11-13  moko
   
           * src/main/pa_http.C: pa_recv added with timeout support, thus read
             copied in httpd.
   
   2020-11-12  moko
   
           * src/main/pa_http.C: ALARM code unified to be used in httpd
   
           * src/: include/pa_request.h, main/pa_request.C,
             targets/cgi/pa_sapi_info.h: pa_httpd_timeout added
   
           * src/main/pa_http.C: URI validation added
   
           * src/targets/cgi/parser3.C: filespec_to_process now variable,
             can't be empty but can be null.  httpd-main is now main method
             name for httpd mode
   
   2020-11-11  moko
   
           * src/main/pa_request.C: path_translated can be null in httpd mode
   
           * src/: classes/curl.C, classes/file.C, classes/hashfile.C,
             classes/image.C, classes/op.C, classes/string.C, classes/table.C,
             classes/xdoc.C, include/pa_request.h, main/execute.C,
             main/pa_request.C: r.absolute -> r.full_disk_path
   
           * src/targets/cgi/parser3.C: if filename to process is not
             specified, auto.p should be present.
   
   2020-11-03  moko
   
           * src/: classes/op.C, include/pa_request.h: unused argument removed
   
           * src/main/pa_request.C: content_disposition_inline is the default,
             not required.
   
   2020-10-29  moko
   
           * src/: classes/op.C, include/pa_request.h, main/pa_request.C:
             ^use[file; $.main(true) ] implemented for auto.p processing and
             path_translated changing to correct relative files path
             calculation in httpd mode
   
           * src/: include/pa_request.h, main/pa_request.C:
             fail_on_read_problem removed, as it allways true, as if should
             be.
   
           * src/: include/pa_request.h, main/pa_request.C,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C: clearing config_filespec when
             config was not found, thus flag not required and removed.
   
   2020-10-28  moko
   
           * tests/: 402.html, results/402.processed: error reporting test
   
           * src/main/execute.C: better error reporting when
             $result[^hash::create[]] in @main.
   
           * src/main/: execute.C, pa_request.C: frame.result() should be used
             + minor optimization
   
           * src/: include/pa_request.h, main/execute.C, main/pa_request.C,
             main/pa_xml_io.C: execute_*_method simplified and unified
   
   2020-10-27  moko
   
           * tests/: 306.html, results/306.processed: a bit more testing. :)
   
           * src/: main/execute.C, types/pa_value.h, types/pa_vclass.C,
             types/pa_vclass.h, types/pa_vconsole.h, types/pa_vcookie.C,
             types/pa_vdate.C, types/pa_venv.C, types/pa_vform.C,
             types/pa_vhash.h, types/pa_vimage.C, types/pa_vmemcached.C,
             types/pa_vmethod_frame.h, types/pa_vobject.C,
             types/pa_vrequest.C, types/pa_vresponse.C, types/pa_vtable.C,
             types/pa_vxnode.C: optimization: PUT_ELEMENT_REPLACED_ELEMENT no
             longer used in object-prototype mode
   
           * src/: include/pa_sapi.h, targets/apache/mod_parser3_core.C,
             targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C, types/pa_venv.C, types/pa_venv.h,
             types/pa_vform.C, types/pa_vform.h: + $env:name[value] and
             $form:name[value] features
   
   2020-10-18  moko
   
           * src/targets/cgi/Makefile.am: + pa_sapi_info.h
   
   2020-10-15  moko
   
           * src/main/pa_http.C: url no longer needed as
             ALTER_EXCEPTION_SOURCE is used
   
           * src/: classes/curl.C, include/pa_common.h, main/pa_common.C,
             main/pa_http.C: check_file_size filespec is now optional
   
           * src/: classes/curl.C, include/pa_exception.h,
             main/pa_exception.C, main/pa_http.C: ALTER_EXCEPTION_SOURCE and
             ALTER_EXCEPTION_COMMENT added for better error reporting
   
           * tests/: 379-curl.html, 379.html, results/223-curl.processed,
             results/346-curl.processed, results/379-curl.processed,
             results/379.processed: test results updated as load now provides
             better error reporting + curl responses updated
   
   2020-10-14  moko
   
           * src/: classes/date.C, include/pa_string.h, main/pa_http.C,
             main/pa_string.C, targets/apache/mod_parser3_core.C,
             targets/cgi/parser3.C: pa_atoi / pa_atoui / pa_atoul usage
             checked. 10 is now default base, no hex autodetect by default
   
           * src/: include/pa_http.h, main/pa_http.C, targets/cgi/parser3.C:
             connection socket closing in destructor + accept exception
             handling
   
           * src/targets/cgi/parser3.C: warning war
   
           * src/: include/pa_http.h, include/pa_sapi.h, main/pa_http.C,
             main/pa_request.C, targets/apache/mod_parser3_core.C,
             targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C: global try
             exception handling unified
   
   2020-10-13  moko
   
           * src/targets/isapi/parser3isapi.C: reverted to atoi to avoid hex
             autodetection
   
           * src/targets/apache/mod_parser3_core.C: reverted to atoi
   
           * src/: main/pa_http.C, targets/cgi/pa_sapi_info.h: warning war
   
           * src/main/pa_http.C: warning war
   
   2020-10-12  moko
   
           * src/: main/pa_request.C, targets/apache/mod_parser3_core.C,
             targets/cgi/parser3.C, targets/isapi/parser3isapi.C: excaption in
             unhandled exception code optimization
   
           * src/targets/cgi/parser3.C: request_info now global variable
   
           * src/main/pa_http.C: http_read_response moved to HTTP_response
             class
   
           * src/: include/pa_http.h, main/pa_http.C,
             targets/cgi/pa_sapi_info.h: read_post implemented
   
           * src/: include/pa_http.h, main/pa_http.C, targets/cgi/parser3.C:
             [host:]port syntax support in httpd mode
   
           * src/: include/pa_http.h, targets/cgi/pa_sapi_info.h,
             targets/cgi/parser3.C: populate_env added
   
           * src/include/pa_hash.h: to make get(char *) compiling in
             HashStringString
   
   2020-10-10  moko
   
           * src/: classes/curl.C, include/pa_http.h, main/pa_http.C,
             targets/cgi/pa_sapi_info.h: ResponseHeaders -> HTTP_Headers
   
           * src/: include/pa_http.h, include/pa_request_info.h,
             main/pa_http.C, main/pa_string.C,
             targets/apache/mod_parser3_core.C, targets/cgi/pa_sapi_info.h,
             targets/cgi/parser3.C, targets/isapi/parser3isapi.C,
             types/pa_vrequest.C: initial httpd mode implementation
   
   2020-10-04  moko
   
           * src/targets/cgi/parser3.C: options together
   
   2020-09-30  moko
   
           * src/main/pa_http.C: renamed
   
   2020-08-14  moko
   
           * configure, configure.ac, parser3.sln, src/lib/Makefile.am,
             src/targets/cgi/Makefile.am: no httpd as separate library
   
   2020-08-13  moko
   
           * src/targets/cgi/parser3.C: SAPI::die used in exception in
             unhandled exception handler to report 500 instead of 200 it was
             before.
   
           * src/targets/apache/mod_parser3_core.C: minor cleanup
   
           * src/: include/pa_sapi.h, main/untaint.C,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C: SAPI::abort was used only once,
             thus replaced with SAPI::die and removed
   
           * src/targets/: apache/mod_parser3_core.C, isapi/parser3isapi.C,
             cgi/parser3.C: whitespace
   
           * src/targets/cgi/parser3.C: locate_config() extracted, whitespace.
   
   2020-08-12  moko
   
           * src/targets/cgi/parser3.C: duplicate info in signal logging
             removed, whitespace was: SIGPIPE received while executing code.
             uri=/_tmp.html, method=GET, cl=0 [uri=/_tmp.html, method=GET,
             cl=0]
   
           * parser3.sln: + httpd.vcproj
   
   2020-08-11  moko
   
           * src/targets/cgi/Makefile.am: +libhttpd
   
           * configure.ac, src/lib/Makefile.am: +libhttpd
   
   2020-07-13  moko
   
           * tests/: 401.html, results/401.processed: test for hash key does
             not keep language, but tainted in foreach.
   
   2020-07-01  moko
   
           * tests/: 235.html, results/235.processed: test result updated as
             messages before attachments implemented (feature #1176)
   
   2020-06-27  moko
   
           * tests/: 400.html, results/400.processed: test updated to check
             ^return{code}
   
           * src/classes/op.C: bugfix: ^return{code} or ^return(expre+ssion)
             fixed
   
   2020-06-26  moko
   
           * tests/: 400.html, results/400.processed: test for OPTIMIZE_RESULT
             added (related to https://www.parser.ru/forum/?id=85319)
   
           * src/types/pa_vmethod_frame.h: bugfix: OPTIMIZE_RESULT failed,
             when $result assignment was last statement in the method
             (https://www.parser.ru/forum/?id=85319)
   
   2020-05-23  moko
   
           * src/: classes/mail.C, types/pa_vmail.C, types/pa_vmail.h:
             whitespace, unused level removed
   
   2020-05-19  moko
   
           * src/types/pa_vmail.C: whitespace
   
           * src/types/pa_vmail.C: files should be processed last (related to
             feature #1176)
   
   2020-05-12  moko
   
           * src/include/pa_memory.h: no new/delete checks for for FreeBSD1X.X
             due to https://bugs.llvm.org/show_bug.cgi?id=40161 bug
   
           * configure.ac: FreeBSD1X.X check added to avoid
             https://bugs.llvm.org/show_bug.cgi?id=40161 bug.
   
   2020-02-26  moko
   
           * src/main/pa_common.C: entry_exists -> entry_ifdir to fix Windows
             compilation issue (related to bug #1201)
   
           * src/main/pa_common.C: entry_readable -> entry_exists,
             undocumented access(fname, R_OK) call removed (fixes bug #1201)
             -f and -d now works under Windows in UTF-8 with Russian
             filenames.
   
           * src/types/pa_vmail.C: g_mime_stream_pipe_new used by gmime author
             advice (related to feature #1199)
   
   2020-02-25  moko
   
           * buildall: --silent removed
   
           * configure.ac: gmime-3.0 support
   
           * buildall: --with-system-mailreceive option added to build with
             system libgmime
   
           * src/types/pa_vmail.C: avoiding
             https://github.com/jstedfast/gmime/issues/83 "feature" (related
             to feature #1199)
   
   2020-02-18  moko
   
           * src/classes/op.C: windows x64 debug mode compile fix
   
           * src/main/pa_globals.C: no longer required due to -MD -> -MT
             change (releated to feature #1200)
   
           * src/: classes/classes.vcproj, lib/cord/cord.vcproj,
             lib/gd/gd.vcproj, lib/json/json.vcproj, lib/ltdl/ltdl.vcproj,
             lib/md5/md5.vcproj, lib/memcached/memcached.vcproj,
             lib/pcre/pcre_internal.vcproj, lib/punycode/punycode.vcproj,
             lib/sdbm/sdbm.vcproj, lib/smtp/smtp.vcproj, main/main.vcproj,
             targets/apache/ApacheModuleParser3.vcproj,
             targets/apache/ApacheModuleParser3Core.vcproj,
             targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj,
             types/types.vcproj: -MD -> -MT to remove msvcp71.dll/etc
             dependency (related to feature #1200)
   
   2020-02-12  moko
   
           * src/types/pa_vmail.C: minimize diff
   
           * src/types/pa_vmail.C: libgmime 3.X support (implements feature
             #1199)
   
   2020-01-18  moko
   
           * tests/: 388-sql.html, results/388-sql.processed: +postprocess
   
   2019-12-28  moko
   
           * src/targets/cgi/parser3.C: avoid empty ?
   
   2019-12-27  moko
   
           * src/targets/cgi/parser3.C: PATH_INFO check in reinventing
             DOCUMENT_ROOT (related to feature #1164)
   
           * src/targets/cgi/parser3.C: IIS5 support removed to simplify
             fcgiwrap setup (implements feature #1164)
   
           * src/targets/cgi/parser3.C: real_parser_handler logic simplified,
             but no issues found (related to feature #1164)
   
           * src/targets/cgi/parser3.C: actualized
   
   2019-12-26  moko
   
           * src/targets/apache/ApacheModuleParser3.vcproj: apache stop/start
             removed
   
           * src/targets/isapi/parser3isapi.vcproj: inetinfo stop/start
             removed
   
           * src/: lib/gc/include/gc.h, main/pa_globals.C: As we log
             allocation errors, we don't want default gc warnings (without
             timestamp and URI).
   
           * src/: classes/memory.C, main/pa_globals.C,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C: GC_dont_gc=1 moved to
             pa_globals_init
   
           * src/main/pa_globals.C: setup_hex_value() removed, static array
             initialization used (optimization)
   
           * src/: main/pa_globals.C, targets/apache/mod_parser3_core.C,
             targets/cgi/parser3.C, targets/isapi/parser3isapi.C:
             pa_socks_init/pa_socks_done moved inside pa_globals_init
             (optimization)
   
   2019-12-09  moko
   
           * src/include/pa_config_fixed.h: warning war
   
   2019-12-08  moko
   
           * src/main/main.vcproj: compile.y - ExcludedFromBuild, as we
             process grammar under Unix.
   
   2019-12-07  moko
   
           * tests/389.html: For Windows XP. :)
   
           * tests/388-sql.html: Windows compatibility added
   
   2019-12-06  moko
   
           * src/targets/cgi/parser3.C: warning war
   
           * src/main/pa_string.C: + COMPILE_ASSERT(sizeof(String::Languages)
             == sizeof(CORD)) to avoid aligning bugs in future
   
           * src/: include/pa_config_fixed.h, main/pa_globals.C: simplified to
             XML_STATIC
   
           * src/include/pa_request.h: StackItem() not required
   
           * src/include/pa_stack.h: warning war
   
           * src/include/pa_config_includes.h: GCC warning silenced
   
           * src/include/pa_memory.h: warning war: the program should also
             define 'void operator delete [](void*, std::size_t)'
             [-Wsized-deallocation]
   
           * src/types/: pa_vregex.h, pa_vtable.h: warning war
   
           * src/classes/string.C: not reqired cast removed
   
           * src/classes/string.C: not reqired cast removed
   
   2019-12-05  moko
   
           * src/lib/sdbm/pa_file_io.C: warning war
   
           * src/include/pa_string.h: bugfix for Windows x64: enum Language ->
             enum Language : size_t - required for VS2015+ to make
             sizeof(Languages::opt) == sizeof(CORD), will be 16 byte under x64
             without it (related to feature #1198)
   
   2019-12-04  moko
   
           * src/main/pa_base64.C: unsigned char -> uchar
   
           * src/main/: main.vcproj, pa_globals.C: libpcre now linked same way
             as other libs
   
           * src/include/pa_version.h: +amd64
   
   2019-12-03  moko
   
           * src/: classes/classes.vcproj, types/types.vcproj: sync debug with
             release
   
           * src/include/pa_config_includes.h: warning war
   
           * src/classes/image.C: warning war
   
           * src/main/pa_globals.C: x64 libs support
   
           * src/include/pa_config_includes.h: warning war
   
           * src/types/pa_method.h: warning war
   
   2019-11-28  moko
   
           * src/classes/math.C: vs2003 compatibility + warning war
   
           * buildall: libxslt-1.1.29 -> libxslt-1.1.34, libxml2-2.9.4 ->
             libxml2-2.9.9 (related to feature #1136)
   
           * src/classes/xdoc.C: xmlHashScanner declaration changed, using
             typecast for more compatibility (related to feature #1136)
   
           * buildall: --direct-download option added, gc-7.6.2 -> gc-8.0.4 +
             libatomic no longer required, pcre-8.40 -> pcre-8.43 (related to
             feature #1136)
   
   2019-11-26  moko
   
           * src/main/: compile_tools.C, compile_tools.h: invalid assert
             removed (it was failing in $$var case), condition added
   
   2019-11-25  moko
   
           * tests/: 397.html, 399.html, results/141.processed,
             results/399.processed: base64 options tested
   
           * src/: classes/math.C, main/pa_http.C: base64 options used
   
           * src/main/pa_base64.C: base64 encode rewritten, base64 options
             implemented (feature #986)
   
           * src/main/pa_cache_managers.C: whitespace
   
           * tests/: 397.html, 399.html, results/399.processed: tests for
             ^base64 encode options added (related to feature #986)
   
           * src/: classes/file.C, include/pa_base64.h, main/pa_base64.C:
             pa_base64_encode(file) removed - more memory, but faster and less
             code (related fo feature #986)
   
   2019-11-24  moko
   
           * tests/: 155.html, results/155.processed: limit and offset in
             ^table::load[] now supported, thus test added
   
           * src/: classes/file.C, classes/table.C, include/pa_common.h,
             main/pa_common.C: optimization: offset and limit options parsing
             moved inside file_load.
   
   2019-11-23  moko
   
           * src/: classes/file.C, classes/op.C, include/pa_common.h,
             main/pa_common.C, main/pa_request.C, types/pa_vform.C:
             optimization: file_read replaced with simplified file_read_binary
   
           * src/: classes/op.C, main/pa_common.C, main/pa_request.C,
             types/pa_vform.C: whitespace
   
           * src/: include/pa_common.h, main/pa_common.C: never used params
             removed
   
   2019-11-21  moko
   
           * tests/: 193.html, results/193.processed, results/389.processed:
             test results updated as now base64 does not discard tail without
             padding (related to feature #986)
   
   2019-11-20  moko
   
           * src/: classes/file.C, classes/string.C, include/pa_base64.h,
             main/pa_base64.C: optimization: void pa_base64_decode -> size_t
             pa_base64_decode (related to feature #986)
   
           * tests/398.html: tests for base64 decode added (related to feature
             #986)
   
           * src/main/pa_base64.C: base64_decode rewritten - padding option
             support, padding inside base 64 supported (related to feature
             #096)
   
   2019-11-19  moko
   
           * src/include/pa_memory.h: CHECK_DELETE_USAGE tested to work under
             FreeBSD 12
   
   2019-11-16  moko
   
           * src/main/pa_base64.C: base64_decode converted to C++, url-safe
             support added, step support removed (related to #986)
   
   2019-11-15  moko
   
           * src/classes/math.C: using log since log2 is not present on
             FreeBSD < 8.4 (related to feature #1177)
   
           * src/: include/pa_base64.h, main/pa_base64.C: whitespace,
             pa_base64_size extracted and used for files as well (related to
             feature 986)
   
   2019-11-14  moko
   
           * tests/: 397.html, results/397.processed: + content check
   
           * tests/: 141.html, results/141.processed: make test resuls more
             readable
   
           * tests/: 397.html, results/193.processed, results/397.processed:
             test results updated after \x00 character was disabled in
             math:convert string mode (related to feature #1177)
   
           * src/classes/: math.C, string.C: \\x00 character disabled while
             converting to string (as in base64, related to feature #1177)
   
           * src/classes/file.C: more correct arguments separation
   
           * src/: classes/file.C, classes/math.C, classes/string.C,
             include/pa_base64.h, include/pa_common.h, main/pa_base64.C,
             main/pa_http.C, types/pa_vfile.C, types/pa_vmail.C: base64
             options added, but not yet implemented (related to feature #986)
   
           * src/classes/math.C: whitespace
   
   2019-11-13  moko
   
           * tests/: 397.html, results/397.processed: +tainting test (related
             to feature #1177)
   
           * src/classes/math.C: as we now produce not only digits, result
             should be tainted (related to feature #1177)
   
           * src/main/pa_base64.C: whitespace
   
           * src/: include/Makefile.am, main/Makefile.am, main/main.vcproj,
             include/pa_base64.h, include/pa_common.h, main/pa_base64.C,
             main/pa_common.C: pa_base64.h and pa_base64.C added, base64
             implementation moved from pa_common.h and pa_common.C
   
   2019-11-12  moko
   
           * tests/: 275.html, results/275.processed: out of range test fixed,
             as ^math:convert now supports arbitrary precision
   
   2019-11-11  moko
   
           * tests/results/389.processed: uctualized error message
   
           * tests/: 389.html, 397.html, results/397.processed: tests for
             ^math:convert added (related to feature #1177)
   
           * src/classes/math.C: ^math:convert now supports arbitrary
             precision, alphabet support added (implements feature #1177)
   
   2019-11-06  moko
   
           * tests/: 181.html, results/181.processed: entities usage added,
             more entites load tests (related to bug #842 discussion)
   
   2019-11-05  moko
   
           * src/main/pa_xml_io.C: bugfix: no more extra http://localhost/
             call from xmlFileOpen if http://localhost/<file> was not found
             (related to bug #842)
   
           * src/main/pa_xml_io.C: rename
   
           * src/main/pa_xml_io.C: +MemoryStream constructor
   
           * src/main/pa_xml_io.C: whitespace
   
   2019-10-31  moko
   
           * src/classes/xdoc.C: XML_PARSE_OPTIONS (XML_PARSE_DTDLOAD |
             XML_PARSE_NOENT) added to fix entities load, (related to feature
             #1181)
   
   2019-10-25  moko
   
           * tests/: 388-sql.html, results/388-sql.processed: more multiple
             queries tests
   
   2019-10-24  moko
   
           * tests/: 388-sql.html, results/388-sql.processed: support for
             pgsql driver test
   
           * tests/: 388-sql.html, results/388-sql.processed:
             multi_statements=1 now tested, mysql test now supported
             (connection must be specified in [parser3] section in .my.cnf)
             related to issues #1195 and #1194
   
   2019-09-11  moko
   
           * src/classes/int.C: whitespace
   
           * tests/: 388-sql.html, results/388-sql.processed: +duplicate key
             exception test
   
           * tests/results/388-sql.processed: sql queries now shown (related
             to feature #1196)
   
           * src/sql/pa_sql_driver.h: to keep new SQL drivers more compatible
             with old parser versions.
   
           * src/: classes/file.C, classes/hash.C, classes/string.C,
             classes/table.C, classes/void.C, include/pa_sql_connection.h,
             main/pa_sql_driver_manager.C, sql/pa_sql_driver.h: Show query
             instead of connect string in query_event_handlers exceptions
             (implements feature #1196)
   
   2019-09-06  moko
   
           * tests/388-sql.html: mysql compat
   
           * src/: classes/hash.C, classes/string.C, classes/table.C,
             classes/void.C, include/pa_common.h, main/pa_common.C: cleanup:
             sql_ variables declaration moved to pa_common.h
   
   2019-01-15  moko
   
           * src/classes/curl.C: ^curl:info[] - OrderedHashString used, items
             logically sorted
   
   2018-12-27  moko
   
           * src/include/pa_config_includes.h: warning war:
             -Wdeprecated-register added for C++ 17
   
   2018-10-15  moko
   
           * configure.ac: FreeBSD 11.2 can be build with ./configure
             --with-gc=/usr/local/lib/ --with-pcre=/usr/local/
             --with-xml=/usr/local/
   
   2018-09-24  moko
   
           * tests/: 396.html, 396.tiff, results/396.processed: test for
             ^image::measure[] now supports tiff added (related to feature
             #1188)
   
           * src/classes/image.C: ^image::measure[] now supports tiff
             (implements feature #1188)
   
   2018-09-20  moko
   
           * tests/: 395.bmp, 395.html, results/395.processed: test for bmp
             files measure added (related to ticket #1188)
   
           * src/classes/image.C: measure of bmp files implemented (related to
             ticket #1188)
   
   2018-09-18  moko
   
           * tests/: 394-curl.html, results/394-curl.processed,
             results/auto.p: test for bug #1187 (max_file_size check for head
             requests) added
   
   2018-08-24  moko
   
           * src/classes/curl.C: CURLOPT_NOBODY value used to check if
             response content-length check is required (fixes bug #1187)
   
   2018-05-11  moko
   
           * tests/: 157.html, results/157.processed: test for ^file:copy[..;
             $.append(bool) ] option added (related to feature #919)
   
           * src/classes/file.C: ^file:copy[..; $.append(bool) ] option added
             from misha@ patch (implements feature #919)
   
   2018-03-22  moko
   
           * src/main/pa_request.C: $response:download[ $.file[file.namef] ]
             worked rather slow (about 1mb/sec) with 10kb buffer, replaced it
             with 128kb buffer.  Now works at least 12 times faster. :) May be
             Windows-only problem.
   
           * src/lib/cord/cord.vcproj: Profile * complete cleanup (VS 2003
             build fix)
   
   2018-02-03  moko
   
           * src/main/execute.C: removes irrelevant lines from exception stack
             trace when exceptions occurs in assigment (fixes bug #1165)
   
           * tests/: 393.html, results/393.processed: test for behavour after
             "Property can not be created, already exists field with that
             name" exception removed (related to feature #1183)
   
           * src/types/pa_vclass.C: "Property can not be created, already
             exists field with that name" exception removed (implements
             feature #1183)
   
   2018-01-19  moko
   
           * src/classes/string.C: whitespace
   
           * src/classes/string.C: whitespace
   
           * tests/: 392.html, results/392.processed: test for
             ^regex::create[$regex] added (related to feature #1135)
   
           * src/: classes/regex.C, types/pa_vregex.C, types/pa_vregex.h:
             ^regex::create[$regex] added (implements feature #1135)
   
           * src/types/: pa_vclass.C, pa_vclass.h: CLASS_GETTER_UNPROTECTED
             commented define added (related to feature #1157)
   
   2018-01-17  moko
   
           * buildall: gc 7.6.0 -> 7.6.2 (related to feature #1136)
   
   2018-01-15  moko
   
           * tests/: 390.html, results/390.processed: real path replaced by
             stub
   
           * tests/: 391.html, results/391.processed: test for feature #1181
             (XML_PARSE_HUGE exception) added
   
   2018-01-11  moko
   
           * src/classes/xdoc.C: xmlReadMemory/xmlReadFile now used with
             XML_PARSE_HUGE option passed by default (implements feature
             #1181)
   
           * src/classes/string.C: whitespace
   
   2017-12-10  moko
   
           * tests/: 389.html, 390.html, results/389.processed,
             results/390.processed: image code coverage tests added (related
             to feature #1125)
   
   2017-12-08  moko
   
           * tests/: 346-curl.html, 388-sql.html, 389.html,
             results/346-curl.processed, results/388-sql.processed,
             results/389.processed: more code coverage tests
   
           * tests/: 264.html, results/264.processed: code coverage for
             ^file::exec[]
   
   2017-12-07  moko
   
           * tests/: 174.html, 388-sql.html, 389.html,
             results/388-sql.processed, results/389.processed,
             results/174.processed: more coverage tests
   
           * src/classes/math.C: exception text actualized
   
   2017-12-06  moko
   
           * tests/388-sql.html: $SQL can be here
   
           * tests/results/auto.p: $SQL not required here
   
           * tests/: 388-sql.html, 389.html, Makefile,
             results/388-sql.processed, results/389.processed, results/auto.p:
             code coverage tests for sql (using sqlite) and int/double/bool
             added (related to feature #1125)
   
           * src/: classes/classes.vcproj, lib/cord/cord.vcproj,
             lib/json/json.vcproj, lib/md5/md5.vcproj,
             lib/memcached/memcached.vcproj, lib/punycode/punycode.vcproj,
             lib/sdbm/sdbm.vcproj, lib/smtp/smtp.vcproj, main/main.vcproj,
             targets/apache/ApacheModuleParser3Core.vcproj,
             targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj,
             types/types.vcproj: gc\include no longer required
   
           * src/lib/: cord/cord.vcproj, gd/gd.vcproj: gc\include no longer
             required
   
           * src/: classes/Makefile.am, classes/table.C,
             include/pa_config_includes.h, include/pa_string.h,
             lib/cord/Makefile.am, lib/cord/cordbscs.c, lib/cord/cordxtra.c,
             lib/gd/Makefile.am, lib/json/Makefile.am, lib/sdbm/Makefile.am,
             lib/smtp/Makefile.am, main/Makefile.am, main/untaint.C,
             targets/apache/Makefile.am, targets/cgi/Makefile.am,
             types/Makefile.am: to be sure that our version of gc.h/cord.h is
             used, we now include it directly
   
   2017-12-04  moko
   
           * src/lib/: gd/gd.vcproj, md5/md5.vcproj,
             memcached/memcached.vcproj, punycode/punycode.vcproj,
             sdbm/sdbm.vcproj, smtp/smtp.vcproj: includes unified, gc added
             where required
   
           * src/: classes/memory.C, include/pa_config_includes.h: GC_DEBUG
             now can be used to trace memory allocations
   
           * src/: classes/table.C, include/pa_config_includes.h,
             include/pa_memory.h, lib/cord/cordbscs.c, lib/cord/cordxtra.c,
             main/pa_globals.C: PA_DEBUG_DISABLE_GC works again, pa_gc_*
             method removes, libcord also can work without libgc
   
           * src/classes/json.C: pa_gc_malloc_atomic should not be used
   
   2017-11-29  moko
   
           * src/classes/curl.C: no exception if some of ^curl:info[] elements
             are not present (related to feature #1173)
   
           * tests/346-curl.html: test updated to test curl content-length bug
             (related to feature #1173)
   
           * tests/results/346-curl.processed: more test for content-length
             curl bug (related to feature #1173)
   
           * tests/results/346-curl.processed: test results updated after
             #1173 implemented
   
   2017-11-28  moko
   
           * src/classes/curl.C: another libcurl Content-length bug walkaround
             (related to feature #1173)
   
   2017-11-27  moko
   
           * src/: classes/curl.C, lib/curl/curl.h: ^curl:options
             $.http_version[version string] added (implements feature #1173),
             CURLOPT_POSTFIELDSIZE is set to 0 now only for old versions,
             where $post(true) bug existed.
   
   2017-11-18  moko
   
           * src/include/pa_memory.h: warning war (related to feature #1170)
   
           * src/include/pa_pool.h: RedHat 7.3 compatibility fixed (related to
             feature #1170)
   
   2017-11-17  moko
   
           * src/include/pa_memory.h: CHECK_DELETE_USAGE define added as
             std::basic_stringstream used in ^table.csv-string[] is compatible
             with delete usage check only under Debian 9 (related to feature
             #1170)
   
   2017-11-16  moko
   
           * src/: classes/curl.C, classes/hash.C, classes/json.C,
             classes/table.C, classes/xdoc.C, include/pa_config_includes.h,
             include/pa_hash.h, include/pa_memory.h, include/pa_pool.h,
             main/pa_charset.C, main/pa_memory.C, main/pa_xml_io.C,
             sql/pa_sql_driver.h, types/pa_value.h, types/pa_vmemcached.C,
             types/pa_vxdoc.h: regular new/delete no longer used in our code,
             stubs defend from accidental use (implements feature #1170)
   
   2017-06-24  moko
   
           * configure.ac: minor fix: thanks to alx@
   
   2017-05-29  moko
   
           * src/types/pa_vmail.C: mail headers are now correctly truncated -
             MAX_CHARS_IN_HEADER_LINE value fixed, mail_header_utf8_substring
             added to avoid cutting of UTF-8 chars (fixed bug #123)
   
           * src/main/untaint.C: as in case of <space>=?UTF-8?Q?= space is
             ignored, =?UTF-8?Q?= should start in case of leading space
             (related to bug #123)
   
           * buildall: echo -n -> printf for OS X. :)
   
   2017-05-25  moko
   
           * tests/: 288.html, results/288.processed: test updated afted
             setting $o.prop without setter exception removed (related to
             feature #1157)
   
           * src/types/pa_vclass.C: no more "this property has no setter
             method" when setting $o.prop without setter (implements feature
             #1157)
   
           * buildall: echo \c -> echo -n for FreeBSD
   
           * configure, configure.ac, src/include/pa_config_auto.h.in,
             src/types/pa_vdouble.h: isfinite now checked in configure
   
           * compile, config.guess, config.sub, depcomp, install-sh, missing:
             upgraded to automake 1.15
   
   2017-05-23  moko
   
           * src/types/pa_vdouble.h: finite returned where isfinite not
             defined
   
   2017-05-22  moko
   
           * buildall: gc-7.6.0 USE_LIBC_PRIVATES allready defined warning war
   
           * buildall: extern CFLAGS setting support
   
           * src/types/pa_vdouble.h: warning war: finine() -> isfinite() 4OSX
   
           * buildall: http -> https
   
           * buildall: gc-7.2f -> gc-7.6.0
   
   2017-05-20  moko
   
           * buildall: https, pcre, xml, xslt updated to current versions
             (related to feature #1136)
   
   2017-05-19  moko
   
           * tests/097.html: after parser.ru moved to https
   
   2017-05-17  moko
   
           * tests/results/: 175.processed, 372.processed: tests resuls
             updated after lintian spelling typos fixed (related to bug #1156)
   
           * src/: classes/file.C, classes/hash.C, classes/reflection.C,
             classes/string.C, classes/table.C, main/pa_charset.C,
             main/pa_common.C, main/pa_http.C, types/pa_vimage.h,
             types/pa_vmail.C, types/pa_vxdoc.h: fixed spelling typos from
             lintian reported by Sergey B Kirpichev (fixes bug #1156)
   
           * tests/results/096.processed: +XMP
   
           * tests/: 096.html, 096_dir/188.jpg: ^image::measure[] $.exif(true)
             $.xmp(true) options tested (test for feature #1154)
   
           * src/classes/image.C: ^image:measure[] options $.exif(false)
             $.xmp(false) $.xmp-charset[UTF-8] implemened. exif no longer
             fetched by default! (implements feature #1154)
   
   2017-05-16  moko
   
           * tests/: 256.html, results/256.processed: ^json:string[$image] now
             allowed (related to feature #1154)
   
           * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h:
             initial XMP implementation - without options and transcode
             (related to feature #1154)
   
   2017-05-12  moko
   
           * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h:
             image: exif moved to ffields, skipped in ^image.html[] where
             iterators now used (preparation for feature #1154)
   
   2017-05-05  moko
   
           * tests/: 387.html, 387_dir/A.p, 387_dir/B.p,
             results/387.processed: test for circular class inheritance check
             added (related to bug #1150)
   
           * src/types/pa_vstateless_class.C: circular class inheritance check
             added (fixes endless add_derived bug #1150)
   
   2017-05-04  moko
   
           * tests/: 386.html, results/386.processed: test for
             $table.value(number) added (related to feature #1152)
   
           * src/types/pa_vtable.C: table put_element: column value must be
             string  - > column value must be string compatible to allow
             $t.value(1) (implements feature #1152)
   
   2017-05-03  moko
   
           * src/main/pa_request.C: $use[$method] is not possible, reverting
             (related to feature #1151)
   
           * tests/: 386.html, 386.p, results/386.processed: $use[$method] is
             not possible, removing test (related to feature #1151)
   
           * src/: main/pa_request.C, types/pa_vstateless_class.h:
             get_element_method added and used to allow $use[$method] and
             $autouse[$method] (implements feature 1151)
   
           * tests/: 386.html, 386.p, results/386.processed: test for @use in
             variable added (related to feature #1151)
   
           * tests/results/226.processed: actualized after ^try-catch used
   
           * tests/: 226.html, 385.html, results/385.processed: test for
             @autouse in variable added
   
           * configure.ac, src/include/pa_version.h: 3.4.5 -> 3.4.6b
   
   2017-02-27  moko
   
           * configure.ac, src/include/pa_version.h: 3.4.5rc -> 3.4.5
   
   2017-02-20  moko
   
           * operators.txt: actualization + beauty
   
   2017-02-16  moko
   
           * tests/: 384.html, results/384.processed: test for
             ^reflection:mixin[; $.name[] ] option added (related to feature
             #1089)
   
           * tests/: 384.html, results/384.processed: test for
             ^reflection:mixin[] added (related to feature #1089)
   
           * src/types/pa_value.h: warning war: virtual ~Value() added
   
   2017-02-15  moko
   
           * src/include/pa_hash.h: compilation without HASH_CODE_CACHING
             fixed
   
           * tests/: 320.html, results/320.processed: $.reverse(true/false)
             test added (related to feature #1069)
   
           * src/: classes/reflection.C, types/pa_vstateless_class.h:
             compilation without HASH_ORDER fixed
   
           * src/: classes/reflection.C, include/pa_hash.h:
             $.reverse(true/false) added to ^reflection:methods[] (related to
             feature #1069)
   
   2017-02-14  moko
   
           * tests/: 152.html, results/152.processed: test for $._default hash
             added (related to bug #1131)
   
           * tests/: 277.html, results/277.processed: test for hash with only
             $._default is now defined (related to bug #1131)
   
           * src/types/pa_vhash.h: hash with only $._default is now defined
             (fixed bug #1131)
   
   2017-02-13  moko
   
           * tests/cat-windows.sh: cat-windows added (cygwin required)
   
           * tests/: 171.html, 264.html, 286.html, 370.html,
             results/320.processed, results/375.processed, results/auto.p:
             cat-windows.sh support added
   
           * tests/375.html: Windows support
   
           * tests/270.html: documented
   
           * tests/: 270.html, run_parser.cmd: bugfix: PATH_INFO has slashes
             (not backslashes) even under Windows (broke test 270)
   
   2017-02-12  moko
   
           * tests/: descript.ion, todo.txt: cleanup
   
   2017-02-09  moko
   
           * tests/: 253.html, 255.html, 275.html, 347-curl.html,
             run_tests.cmd: Windows compatibility
   
           * tests/make_tests.cmd: removed as test can't be passed - TZ is set
             incorrectly (GMT) if parser is called from cygwin
   
   2017-02-08  moko
   
           * operators.txt: actualization 15% completed
   
           * operators.txt: cp1251 -> utf-8
   
           * NEWS, README: minor update
   
           * src/include/pa_config_includes.h: warning war continues
   
           * src/: include/pa_config_includes.h, include/pa_memory.h,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C, types/pa_vdouble.h: warning war:
             gcc 6.x issues fixed
   
           * src/: classes/bool.C, classes/classes.C, classes/classes.awk,
             classes/classes.h, classes/curl.C, classes/date.C,
             classes/double.C, classes/file.C, classes/form.C, classes/hash.C,
             classes/hashfile.C, classes/image.C, classes/inet.C,
             classes/int.C, classes/json.C, classes/mail.C, classes/math.C,
             classes/memcached.C, classes/memory.C, classes/op.C,
             classes/reflection.C, classes/regex.C, classes/response.C,
             classes/string.C, classes/table.C, classes/void.C,
             classes/xdoc.C, classes/xnode.C, classes/xnode.h,
             include/pa_array.h, include/pa_cache_managers.h,
             include/pa_charset.h, include/pa_charsets.h, include/pa_common.h,
             include/pa_config_fixed.h, include/pa_config_includes.h,
             include/pa_dictionary.h, include/pa_dir.h,
             include/pa_exception.h, include/pa_exec.h, include/pa_globals.h,
             include/pa_hash.h, include/pa_http.h, include/pa_memory.h,
             include/pa_opcode.h, include/pa_operation.h, include/pa_os.h,
             include/pa_pool.h, include/pa_random.h, include/pa_request.h,
             include/pa_request_charsets.h, include/pa_request_info.h,
             include/pa_sapi.h, include/pa_socks.h,
             include/pa_sql_connection.h, include/pa_sql_driver_manager.h,
             include/pa_stack.h, include/pa_string.h,
             include/pa_stylesheet_connection.h,
             include/pa_stylesheet_manager.h, include/pa_symbols.h,
             include/pa_table.h, include/pa_threads.h, include/pa_types.h,
             include/pa_uue.h, include/pa_xml_exception.h,
             include/pa_xml_io.h, lib/gd/gif.C, lib/gd/gif.h, lib/gd/gifio.C,
             lib/md5/pa_md5.h, lib/md5/pa_md5c.c,
             lib/memcached/pa_memcached.C, lib/memcached/pa_memcached.h,
             lib/punycode/pa_idna.c, lib/punycode/pa_idna.h,
             lib/sdbm/pa_file_io.C, lib/sdbm/pa_strings.C, lib/smtp/comms.C,
             lib/smtp/smtp.C, lib/smtp/smtp.h, main/compile.C,
             main/compile.tab.C, main/compile.y, main/compile_tools.C,
             main/compile_tools.h, main/execute.C, main/pa_cache_managers.C,
             main/pa_charset.C, main/pa_charsets.C, main/pa_common.C,
             main/pa_dictionary.C, main/pa_dir.C, main/pa_exception.C,
             main/pa_exec.C, main/pa_globals.C, main/pa_http.C,
             main/pa_memory.C, main/pa_os.C, main/pa_pool.C, main/pa_random.C,
             main/pa_request.C, main/pa_socks.C, main/pa_sql_driver_manager.C,
             main/pa_string.C, main/pa_stylesheet_connection.C,
             main/pa_stylesheet_manager.C, main/pa_symbols.C, main/pa_table.C,
             main/pa_uue.C, main/pa_xml_exception.C, main/pa_xml_io.C,
             main/untaint.C, sql/pa_sql_driver.h,
             targets/apache/mod_parser3.c, targets/apache/mod_parser3_core.C,
             targets/apache/pa_httpd.h, targets/apache/pa_threads.C,
             targets/cgi/pa_threads.C, targets/cgi/parser3.C,
             targets/isapi/pa_threads.C, targets/isapi/parser3isapi.C,
             types/pa_junction.h, types/pa_method.h, types/pa_property.h,
             types/pa_value.C, types/pa_value.h, types/pa_vbool.h,
             types/pa_vcaller_wrapper.h, types/pa_vclass.C, types/pa_vclass.h,
             types/pa_vcode_frame.h, types/pa_vconsole.h, types/pa_vcookie.C,
             types/pa_vcookie.h, types/pa_vdate.C, types/pa_vdate.h,
             types/pa_vdouble.h, types/pa_venv.C, types/pa_venv.h,
             types/pa_vfile.C, types/pa_vfile.h, types/pa_vform.C,
             types/pa_vform.h, types/pa_vhash.C, types/pa_vhash.h,
             types/pa_vhashfile.C, types/pa_vhashfile.h, types/pa_vimage.C,
             types/pa_vimage.h, types/pa_vint.h, types/pa_vjunction.C,
             types/pa_vjunction.h, types/pa_vmail.C, types/pa_vmail.h,
             types/pa_vmath.C, types/pa_vmath.h, types/pa_vmemcached.C,
             types/pa_vmemcached.h, types/pa_vmemory.h,
             types/pa_vmethod_frame.C, types/pa_vmethod_frame.h,
             types/pa_vobject.C, types/pa_vobject.h, types/pa_vregex.C,
             types/pa_vregex.h, types/pa_vrequest.C, types/pa_vrequest.h,
             types/pa_vresponse.C, types/pa_vresponse.h,
             types/pa_vstateless_class.C, types/pa_vstateless_class.h,
             types/pa_vstateless_object.h, types/pa_vstatus.C,
             types/pa_vstatus.h, types/pa_vstring.C, types/pa_vstring.h,
             types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.C,
             types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h,
             types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C,
             types/pa_wcontext.h, types/pa_wwrapper.h: Copyright year:
             2015->2017
   
   2017-02-07  moko
   
           * configure.ac, src/include/pa_version.h: 3.4.5b -> 3.4.5rc
   
   2017-02-06  moko
   
           * src/main/pa_common.C: minor fixes, whitespace
   
           * src/: classes/curl.C, classes/file.C, classes/image.C,
             include/pa_common.h, include/pa_dir.h, main/pa_common.C,
             main/pa_dir.C, main/pa_exec.C: wchar filenames API under Windows
             now used (implements feature #1081)
   
           * src/: types/pa_vcookie.C, main/pa_charset.C: cleanup
   
   2017-02-01  moko
   
           * src/include/pa_request.h: cleanup
   
   2017-01-30  moko
   
           * src/main/pa_request.C: file_lock_wait_limit -> lock_wait_timeout
   
   2017-01-29  moko
   
           * tests/: 383.html, results/383.processed: test for
             ^reflection:stack[] added (related to feature #1052)
   
           * src/classes/reflection.C: else added
   
           * src/: include/pa_os.h, main/pa_os.C, main/pa_request.C:
             $.max_file_lock_wait added (implements feature #1128)
   
   2017-01-28  moko
   
           * tests/: 379-curl.html, results/379-curl.processed: curl empty
             body and other cases tests added (related to featue #1014)
   
           * src/classes/curl.C: bug if response is empty fixed (related to
             feature #1014)
   
   2017-01-27  moko
   
           * src/: classes/json.C, classes/reflection.C, include/pa_request.h,
             main/execute.C, types/pa_vmethod_frame.h: ^reflection:stack[]
             added (implements feature #1052)
   
   2017-01-25  moko
   
           * tests/: 382.html, results/382.processed: @GET_DEFAULT returning
             method test added
   
   2017-01-23  moko
   
           * src/classes/reflection.C: optimization: options->get replaced by
             hash iterator
   
           * tests/: 381.html, results/381.processed: now -> fixed date
   
           * src/main/pa_request.C: warning war
   
           * src/targets/cgi/parser3.vcproj: Stack size increased from 2Mb to
             5Mb (fixes bug #1058)
   
           * src/classes/curl.C: warning war
   
           * tests/: 381.html, results/381.processed: tests for ^json:string
             $.one-line(true) option added (related to feature #1124)
   
           * src/: classes/json.C, types/pa_value.h: $json-string
             $.one-line(true|false) options is now supported (implements
             feature #1124)
   
           * tests/: 380.html, results/380.processed: test for modified
             $.max_file_size added (related to bug #1014)
   
           * tests/: 379.html, results/auto.p: tests for rewritten http file
             load added (related to bug #1014)
   
           * src/: classes/curl.C, include/pa_common.h, include/pa_http.h,
             main/pa_common.C, main/pa_http.C: check_file_size added and used
             in curl / file load from disk and http, http file load rewritten
             (related to bug #1014)
   
   2017-01-18  moko
   
           * tests/: 378.html, results/378.processed: tests for ^result[]
             added (related to feature #66)
   
           * src/: classes/op.C, include/pa_request.h: ^return[] can't be
             Method::CO_WITHOUT_FRAME as frame still added in expression
             (related to feature #66)
   
   2017-01-17  moko
   
           * tests/: 377.html, results/377.processed: test for different
             combinations of breaks in body and delimiter (related to bug
             #1077)
   
           * tests/: 376.html, results/376.processed: many ^break[] tests
             added (related to bug #1077)
   
           * src/types/pa_vmethod_frame.C: "break is not allowed in expression
             passed to native method" exception added to avoid bugs due to
             WRITE_EXPR_RESULT skipped and native methods execution continues
             after ^break[] (related to bug #1077)
   
   2017-01-14  moko
   
           * tests/: 330.html, results/330.processed: test results updated
             after ^break[] bugs where fixed (related to bug #1077)
   
           * tests/: 329.html, results/329.processed: test results updated
             after ^break[] bugs where fixed (related to bug #1077)
   
           * tests/results/320.processed: ^return[] added
   
   2017-01-13  moko
   
           * src/: classes/hash.C, classes/hashfile.C, classes/op.C,
             classes/table.C, include/pa_request.h, main/execute.C,
             main/pa_request.C, targets/cgi/parser3.C,
             types/pa_vmethod_frame.C: Request::SKIP_INTERRUPTED,
             Request::SKIP_RETURN added and implemented, Request::SKIP_* now
             checked after each possible process/execute call (fixes bug
             #1077)
   
   2016-12-29  moko
   
           * src/main/pa_common.C: warning war
   
           * src/: classes/math.C, include/pa_random.h, include/pa_request.h,
             include/pa_types.h, main/pa_request.C, main/pa_string.C:
             pa_file_size_limit added, ^math:random fixed for upper limit and
             limits more then 0x7FFFFFFF, limits now declared in pa_types.h
             (related to feature #1014)
   
           * src/: classes/curl.C, classes/file.C, include/pa_common.h,
             main/pa_common.C, main/pa_dir.C, main/pa_exec.C: stat -> pa_stat
             (related to feature #1014)
   
   2016-12-28  moko
   
           * src/: classes/file.C, main/pa_request.C, main/pa_string.C: VS2003
             warning war
   
   2016-12-26  moko
   
           * tests/: 341.html, results/341.processed: test for
             ^table.hash[id;;$.type[string]] added (related to feature #1057)
   
           * src/classes/table.C: ^table.hash[id;;$.type[string]] support fix
             (related to feature #1057)
   
           * src/types/pa_vdate.C: warning war continues...
   
           * src/: classes/date.C, classes/image.C, classes/table.C,
             include/pa_config_includes.h, types/pa_vfile.C: warning war
   
           * src/lib/gd/gifio.C: warning war / cleanup
   
           * src/lib/json/pa_json.C: warning war
   
           * src/classes/hash.C: warning war
   
           * src/types/pa_vfile.C: warning war
   
           * src/: classes/hash.C, include/pa_common.h, types/pa_vcookie.C:
             -Wall warning war continues
   
           * configure.ac: --with-build-warnings actualized
   
   2016-12-25  moko
   
           * src/main/pa_exec.C: -wAll warning war
   
           * src/: types/pa_vform.C, types/pa_vrequest.C, main/pa_common.C:
             -wAll warning war
   
           * src/: include/pa_common.h, include/pa_sapi.h,
             types/pa_junction.h, types/pa_method.h, types/pa_value.h,
             types/pa_vdate.C, types/pa_vstateless_class.h, types/pa_vxdoc.h:
             -wAll warning war
   
   2016-12-23  moko
   
           * src/lib/ltdl/Makefile.am: extra dist added
   
           * tests/results/344.processed: test result updated after $file.text
             prefetched in ^hash::create[$file] (related to feature #1075)
   
           * src/types/: pa_vfile.C, pa_vfile.h: $file.text prefetched in
             ^hash::create[$file] (related to feature #1075)
   
   2016-12-22  moko
   
           * src/: classes/file.C, include/pa_common.h, main/pa_common.C,
             main/pa_request.C, main/pa_stylesheet_connection.C,
             types/pa_vfile.C: file_stat now return 64-bit size (implements
             #1014 under 32-bit unix versions)
   
   2016-12-21  moko
   
           * tests/: 375.html, results/375.processed: test for exec returning
             stated file added (related to feature #1119)
   
           * src/classes/file.C: load should not return file with null body
             (fixes bug #1119)
   
   2016-12-14  moko
   
           * tests/: 374.html, results/374.processed: test for $method.name
             added (related to feature #1117) plus method returning junction
             test
   
   2016-12-13  moko
   
           * src/: include/pa_symbols.h, main/pa_symbols.C,
             types/pa_vjunction.C, types/pa_vjunction.h: $method.name added
             (implements feature #1117)
   
           * src/: types/pa_vform.C, include/pa_request_info.h: now only GET,
             HEAD and TRACE can't have body (implements feature #1116)
   
   2016-12-09  moko
   
           * tests/: 373.html, results/373.processed: tests for
             ^reflection:tainting added (related to feature #1098)
   
           * src/classes/reflection.C: ^reflection:tainting arguments order
             change (related to feature #1098)
   
   2016-12-06  moko
   
           * src/: classes/reflection.C, include/pa_string.h,
             main/pa_string.C: ^reflection:tainting[$string] added (implements
             feature #1098)
   
   2016-12-05  moko
   
           * src/types/pa_vdouble.h: negative zero (-0) now converted to 0
             (fixes bug #1114)
   
   2016-12-04  moko
   
           * tests/: 206.html, results/206.processed: negative zero (0/-1)
             check added
   
   2016-12-03  moko
   
           * tests/: 346-curl.html, results/346-curl.processed: test modified
             to test value.as_hash() usage
   
           * src/classes/curl.C: value.as_hash() used for correct hash
             processing
   
           * src/classes/reflection.C: exceptions texts fixes
   
   2016-12-02  moko
   
           * tests/: 372.html, results/372.processed: tests for
             ^reflection:create[ $.class[name] $.constructor[name]
             $.arguments[ $.1[param1] $.2[param2] ... ] ] added (related to
             feature #1094)
   
           * src/types/pa_vmethod_frame.h: comment added: params should be
             declared outside of *_FRAME_ACTION as MethodParams destructor
             will be called in ~VNativeMethodFrame
   
           * src/classes/reflection.C: ^reflection:create[ $.arguments[ ... ]
             ] minor fix
   
           * src/: classes/reflection.C, types/pa_value.C, types/pa_value.h,
             types/pa_vmethod_frame.C: ^reflection:create[ $.class[name]
             $.constructor[name] $.arguments[ $.1[param1] $.2[param2] ... ] ]
             now supported (implements feature #1094) value::as_hash added
             (and should be used everywhere)
   
           * src/classes/reflection.C: cleanup
   
   2016-12-01  moko
   
           * tests/: 356.html, results/356.processed: test for method
             junctions class name added to the resulting hash added (related
             to feature #1068)
   
           * src/classes/reflection.C: for method junctions class name added
             to the resulting hash (related to feature #1068)
   
   2016-11-30  moko
   
           * src/types/: pa_vhashfile.C, pa_vhashfile.h: file_name included in
             exception (related to bug #1113)
   
           * src/types/pa_vhashfile.C: whitespace
   
           * src/main/pa_os.C: errno now returned as it should (fixes bug
             #1113)
   
           * tests/results/: 175.processed, 192.processed, 224.processed,
             229.processed, 239.processed, 244.processed, 246.processed,
             314.processed, 352.processed: tests results updated after method
             call exceptions improved as method now keeps its name
   
           * src/: classes/reflection.C, main/execute.C, types/pa_value.C,
             types/pa_vmethod_frame.h: method call exceptions improved as
             method now keeps its name
   
           * tests/: 224.html, 239.html, results/224.processed,
             results/239.processed: tests and tests results updated after
             Request::construct exception changed
   
           * src/: classes/reflection.C, main/execute.C: Request::construct
             exception optimized
   
           * tests/: 371.html, results/371.processed: test for
             WWrapper.get_element call in $.name.key[value] code added
             (related to feature #1091)
   
           * src/types/pa_wwrapper.h: WWrapper.get_element returned, as used
             in $.name.key[value] code (related to feature #1091)
   
   2016-11-29  moko
   
           * src/classes/op.C: VS warning war
   
           * src/types/: pa_vmethod_frame.h, pa_wcontext.h: VS warning war:
             C4239: nonstandard extension used : 'return' : conversion from
             'Value' to 'Value &' (related to feature #1020)
   
           * src/: main/execute.C, types/pa_vmethod_frame.h,
             types/pa_wcontext.h: VS warning war: C4239: nonstandard extension
             used : 'return' : conversion from 'Value' to 'Value &' (related
             to feature #1020)
   
           * src/main/execute.C: VS warning war
   
           * src/targets/cgi/parser3.C: VS compatibility fix
   
           * src/include/pa_request.h: VS warning war
   
           * tests/: 370.html, results/370.processed: test for ^file::exec[
             ... $.stdin[$binary_file] ] added (related to bug #1044)
   
           * src/: classes/file.C, classes/mail.C, include/pa_exec.h,
             include/pa_string.h, main/pa_exec.C: pa_exec now supports
             $.stdin[$binary_file] (fixes bug #1044)
   
   2016-11-28  moko
   
           * src/main/pa_exec.C: whitespace
   
           * src/main/pa_request.C: whitespace
   
           * tests/: 369.html, results/369.processed: test for
             $response:status usage added (related to feature #1099)
   
           * src/targets/cgi/parser3.C: HTTP response code used as exit status
             if < 100 (implements feature #1099)
   
           * src/targets/cgi/parser3.C: whitespace
   
           * src/targets/cgi/parser3.C: whitespace
   
           * tests/: 368.html, results/368.processed: test updated after
             ^reflection:filename[$method] added (related to feature #1053)
   
           * src/: classes/op.C, classes/reflection.C, include/pa_request.h,
             main/compile.y, main/execute.C, main/pa_request.C,
             types/pa_vclass.h: filename -> filespec,
             ^reflection:filename[$method] added (related to feature #1053)
   
   2016-11-27  moko
   
           * tests/: 368.html, results/368.processed: test for
             reflection:filename[$class or object] added (related to feature
             #1053)
   
           * src/: classes/reflection.C, main/compile.y, types/pa_vclass.h,
             types/pa_vstateless_class.h: ^reflection:filename[$class or
             object] added (implements feature #1053)
   
   2016-11-26  moko
   
           * src/: include/pa_request_info.h,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C:
             remove_absolute_uri -> strip_absolute_uri
   
   2016-11-25  moko
   
           * src/: include/pa_request_info.h,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C:
             request_info.remove_absolute_uri added to remove possible
             http://site.name/ from $request:uri (implements feature #1112)
   
   2016-11-24  moko
   
           * tests/: 367-curl.html, results/367-curl.processed: test for
             previous request headers clearing after redirect added (related
             to bug #1109)
   
           * src/: classes/curl.C, include/pa_array.h, include/pa_http.h:
             response headers from previous requests are now cleared, only
             last request headers are collected (fixes bug #1109)
   
           * tests/results/: 266.processed, 321.processed, 356.processed:
             tests results updated as method name now added to the resulting
             hash for new syntax only (Imp1 compatimility fixed, related to
             feature #1068)
   
           * src/classes/reflection.C: method name now added to the resulting
             hash for new syntax only (Imp1 compatimility fixed, related to
             feature #1068)
   
           * tests/results/366.processed: test for native and parser
             implementation of ^use[] logic (related to feature #1074)
   
           * tests/: 366.html, 366_dir/test-duplicate.p, 366_dir/test.p: test
             for native and parser implementation of ^use[] logic (related to
             feature #1074)
   
   2016-11-23  moko
   
           * src/: classes/op.C, include/pa_request.h, main/compile.y,
             main/pa_request.C: @USE file now implemented as ^use[file;
             $.origin[origin_file] ] (implements feature #1074)
   
   2016-11-21  moko
   
           * tests/: 365.html, results/365.processed: test for $caller bugs in
             3.4.4 and $caller.method now tested (related to feature #1110)
   
           * tests/: 364.html, results/364.processed: $caller usage in
             different contexts now tested (related to feature #1110)
   
           * src/types/types.vcproj: +pa_vcaller_wrapper.h
   
           * src/types/Makefile.am: pa_vcaller_wrapper.h added
   
           * src/: include/pa_symbols.h, main/pa_symbols.C, types/pa_method.h,
             types/pa_vcaller_wrapper.h, types/pa_vmethod_frame.C,
             types/pa_vmethod_frame.h:  redesign: VCallerWrapper added and
             used (implements feature #1110)
   
   2016-11-20  moko
   
           * src/types/pa_vdouble.h: whitespace
   
   2016-11-11  moko
   
           * tests/: 363.html, results/363.processed: more tests for feature
             #1091 (how parser methods work in expression context)
   
           * src/: include/pa_request.h, types/pa_vmethod_frame.h: in
             expressions strings are now written as strings, not values by
             write_as_string (related to feature #1091)
   
           * src/classes/op.C: to make more correct behavour in expression
             context
   
   2016-11-07  moko
   
           * tests/: 362.html, results/362.processed: test for
             xsltParseStylesheetDoc caching as xsl modification after it added
             (related to bug #1108)
   
           * src/: classes/xdoc.C, types/pa_vxdoc.h: xsltParseStylesheetDoc
             result now cached as xdoc is modified after it (fixes bug #1108)
   
   2016-11-06  moko
   
           * src/types/pa_vxdoc.h: whitespace
   
   2016-11-05  moko
   
           * src/types/pa_vmethod_frame.h: cleanup
   
   2016-11-03  moko
   
           * tests/results/244.processed: more correct exception after method
             frames separation
   
           * src/types/pa_vmethod_frame.h: minor optimizaion
   
           * src/types/pa_method.h: optimization: params_count added
   
           * src/: classes/json.C, classes/op.C, classes/reflection.C,
             include/pa_request.h, main/execute.C, main/pa_request.C,
             types/pa_value.C, types/pa_vmethod_frame.C,
             types/pa_vmethod_frame.h, types/pa_vobject.C: Optimization:
             VMethodFrame now divided into VNativeMethodFrame,
             VParserMethodFrame, VLocalParserMethodFrame; METHOD_FRAME_ACTION,
             EXPRESSION_FRAME_ACTION, CONSTRUCTOR_FRAME_ACTION defines added
             and used (related to feature #1104)
   
   2016-11-02  moko
   
           * src/: classes/bool.C, classes/curl.C, classes/date.C,
             classes/double.C, classes/file.C, classes/hash.C,
             classes/hashfile.C, classes/image.C, classes/inet.C,
             classes/int.C, classes/json.C, classes/mail.C, classes/math.C,
             classes/memcached.C, classes/op.C, classes/reflection.C,
             classes/regex.C, classes/string.C, classes/table.C,
             classes/xdoc.C, classes/xnode.C, include/pa_request.h,
             main/execute.C: cleanup: r.write_pass_lang, r.write_no_lang ->
             r.write (implements feature #1091)
   
           * src/main/execute.C: cleanup (related to feature #1104)
   
           * src/: include/pa_request.h, main/execute.C,
             types/pa_vmethod_frame.h, types/pa_wcontext.h: VExpressionFrame
             added, in_expression removed (implements feature #1104)
   
   2016-10-31  moko
   
           * src/types/pa_value.C: whitespace
   
   2016-10-28  moko
   
           * tests/results/244.processed: updated after error reporting fixed
             in pa_wcontext.C
   
           * src/types/pa_wcontext.C: error reporting fixed
   
           * src/types/pa_wcontext.h: whitespace
   
           * src/classes/image.C: not fully readed entries are no longer
             processed (fixes bug #1106)
   
   2016-10-26  moko
   
           * src/classes/image.C: whitespace
   
           * src/: include/pa_request.h, include/pa_string.h, main/untaint.C,
             types/pa_vmail.C, types/pa_vmethod_frame.h, types/pa_wcontext.h,
             types/pa_wwrapper.h: optimization: L_PASS_APPENDED removed as no
             longer required (related to feature #1091)
   
           * tests/results/: 264.processed, 350.processed: test results update
             reverted (whitespace optimization) after write_no_lang removed :)
             (related to feature #1091)
   
           * src/: classes/file.C, classes/hash.C, classes/op.C,
             classes/string.C, classes/table.C, classes/void.C,
             classes/xdoc.C, include/pa_request.h, main/pa_xml_io.C,
             types/pa_vmail.C: Temp_lang removed, write_no_lang now almost
             equal write_pass_lang (related to feature #1091)
   
           * tests/results/: 264.processed, 350.processed: test results
             updated (whitespace optimization) after write_assign_lang removed
             (related to feature #1091)
   
           * tests/: 361.html, results/361.processed: test for non-string
             ^untaint added (related to feature #1091)
   
           * src/: classes/curl.C, classes/date.C, classes/file.C,
             classes/hash.C, classes/op.C, classes/string.C,
             include/pa_request.h, main/execute.C: optimization:
             write_assign_lang removed as not required (first part of feature
             #1091 implementation)
   
   2016-10-12  moko
   
           * tests/: 360.html, results/360.processed: more test code (related
             to feature #1104)
   
           * src/: classes/op.C, classes/reflection.C, include/pa_opcode.h,
             include/pa_request.h, main/compile.y, main/execute.C: opcode
             OP_PREPARE_TO_EXPRESSION removed as not required, optimized
             WContext is next task (implements feature #1104)
   
           * src/types/pa_method.h: more detailed comment for CO_WITHOUT_FRAME
             / CO_WITHOUT_WCONTEXT
   
           * tests/: 360.html, results/360.processed: test for in expression
             state (related to feature #1104)
   
   2016-10-11  moko
   
           * src/main/execute.C: compilation without OPTIMIZE_CALL fixed
   
           * src/classes/op.C: default value removed from initializer
   
           * src/types/pa_vmemcached.C: FreeBSD 11 warning war
   
           * src/types/pa_vmethod_frame.h: FreeBSD 11 warning war
   
   2016-10-10  moko
   
           * tests/results/auto.p: test updated adter $RECOURSION_LIMIT,
             $LOOP_LIMIT  -> $LIMITS[ $.max_recoursion, $.max_loop ] (related
             to feature #42)
   
           * src/main/pa_request.C: $RECOURSION_LIMIT, $LOOP_LIMIT  ->
             $LIMITS[ $.max_recoursion, $.max_loop ] (related to feature #42)
   
   2016-10-08  moko
   
           * src/classes/double.C: whitespace
   
   2016-10-07  moko
   
           * src/types/pa_vmethod_frame.h: reorder
   
   2016-10-06  moko
   
           * src/classes/date.C: typo
   
           * src/types/pa_vmethod_frame.h: whitespace + cleanup
   
           * src/: classes/hash.C, classes/hashfile.C, classes/json.C,
             classes/op.C, classes/reflection.C, types/pa_vmethod_frame.C,
             types/pa_vmethod_frame.h: params.get now returns Value&, not
             Value*
   
           * src/types/pa_vmethod_frame.C: params.get should return Value&.
   
           * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: get_as
             removed; first as_* code rewrite
   
   2016-10-05  moko
   
           * src/include/pa_request.h: whitespace
   
           * tests/: 359.html, results/359.processed: test for VCodeFrame and
             intercept_string added (related to feature #1097)
   
           * src/: classes/image.C, classes/op.C, classes/table.C,
             include/pa_request.h, main/execute.C, types/pa_vmethod_frame.C:
             optimization: intercept_string removed (implements feature #1097)
   
           * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: whitespace
   
           * src/types/: pa_vcode_frame.h, pa_wwrapper.h: get_element removed
             from VCodeFrame and WWrapper as not required
   
   2016-10-04  moko
   
           * src/: classes/curl.C, classes/date.C, classes/double.C,
             classes/file.C, classes/hash.C, classes/image.C, classes/inet.C,
             classes/int.C, classes/json.C, classes/op.C,
             classes/reflection.C, classes/string.C, classes/table.C,
             include/pa_request.h, main/execute.C, types/pa_vmethod_frame.C:
             proces_to_value -> process after StringOrValue removed (related
             to feature #1020)
   
           * src/classes/form.C: whitespace
   
           * src/main/execute.C: VALUE__GET_BASE_CLASS added to opcode_names
   
           * tests/: 357.html, 358.html, results/357.processed,
             results/358.processed, results/auto.p: test for @conf
             $RECOURSION_LIMIT and $LOOP_LIMIT added (related to feature #42)
   
   2016-10-03  moko
   
           * src/: classes/op.C, include/pa_request.h, main/pa_request.C,
             types/pa_vtable.C: @conf $RECOURSION_LIMIT and $LOOP_LIMIT now
             supported (implements feature #42)
   
           * src/types/pa_vregex.h: no reason for VRegex to be
             is_evaluated_expr
   
           * src/classes/curl.C: CURL_OPT(CURL_INT, SSLVERSION) added
             (implements feature #1095)
   
   2016-10-01  moko
   
           * src/classes/reflection.C: $.overwrite in ^reflection:mixin is now
             false by default (related to feature #1089)
   
   2016-09-30  moko
   
           * src/types/pa_wcontext.h: cleanup
   
   2016-09-29  moko
   
           * src/main/execute.C: whitespace
   
           * src/include/pa_request.h: whitespace
   
           * src/: classes/hash.C, classes/hashfile.C, classes/json.C,
             classes/op.C, classes/table.C, include/pa_request.h,
             main/execute.C, main/pa_request.C, types/pa_vmethod_frame.h,
             types/pa_vobject.C, types/pa_wcontext.h: optimization:
             StringOrValue removed as it just slows down and adds complexity
             (implements feature #1020)
   
   2016-09-28  moko
   
           * tests/: 356.html, results/266.processed, results/321.processed,
             results/356.processed: tests updated after name was added to
             method_info hash, test for ^reflection:method_info[junction]
             added (related to feature #1068)
   
           * src/classes/reflection.C: ^reflection:method_info[junction] now
             supported, method name added to the resulting hash (implements
             feature #1068)
   
           * tests/: 276.html, results/276.processed: more tests for
             ^reflection:delete[]
   
           * src/classes/reflection.C: fixed bug then ^reflection:delete
             didn't work on class and could damage native objects (like file)
   
   2016-09-26  moko
   
           * tests/: 345.html, 346-curl.html, 347-curl.html, 348.html,
             results/345.processed, results/346-curl.processed,
             results/347-curl.processed, results/348.processed: numbers added
             to simplify diff analysis
   
           * tests/: 352.html, results/352.processed: test result updated as
             method name used
   
           * src/classes/reflection.C: method name used
   
           * src/types/: pa_method.h, pa_vstateless_class.C: method now keeps
             its name
   
           * src/types/pa_method.h: whitespace
   
           * src/classes/reflection.C: both method and field with one name can
             exist.
   
           * src/classes/reflection.C: ^reflection:mixin added (implements
             feature #1089)
   
           * tests/: 355.html, results/355.processed: property appears in
             derived class if added in base test added
   
           * src/types/pa_vstateless_class.h: get_method declaration +
             whitespace
   
           * tests/: 354.html, results/354.processed: nice test from method
             and property with one name in class added
   
   2016-09-23  moko
   
           * src/classes/reflection.C: ^reflection:method usage documented
   
   2016-09-22  moko
   
           * src/: classes/classes.vcproj, types/types.vcproj: we need RTTI as
             we use 'dynamic_cast' on polymorphic type 'Value'. Without it
             compile warning and GPF occures on VS2003 (related to feature
             #1087)
   
           * tests/: 350.html, results/350.processed: test added for
             $.encloser[] support in ^table::create (related to feature #11)
   
           * src/classes/table.C: another minor fix (related to feature #11)
   
   2016-09-21  moko
   
           * src/include/pa_config_fixed.h: vs2015 compilation fixes
   
           * src/: classes/curl.C, classes/file.C, classes/hash.C,
             classes/json.C, classes/string.C, classes/table.C,
             classes/xdoc.C, include/pa_charsets.h, main/pa_charsets.C,
             main/pa_common.C, main/pa_http.C, main/pa_request.C,
             main/pa_sql_driver_manager.C, types/pa_vfile.C, types/pa_vmail.C,
             types/pa_vrequest.C, types/pa_vresponse.C: charsets ->
             pa_charsets, vs2015 warning war
   
           * src/classes/table.C: vs2015 warning war
   
           * src/types/pa_vdate.C: vs2015 warning war
   
           * src/main/: pa_common.C, pa_globals.C: vs2015 compilation fixes
   
           * src/targets/cgi/parser3.vcproj: wsock32 -> ws2_32.lib (winsock 1
             -> winsock 2) for vs2015 compatibility (getaddrinfo functions)
   
           * src/main/pa_common.C: vs2015 compilation fixes
   
           * src/: include/pa_common.h, lib/smtp/smtp.C, main/pa_common.C:
             vs2015 compilation fixes
   
           * src/main/pa_charset.C: vs2015 warning war
   
           * src/: classes/file.C, types/pa_wwrapper.h: vs2015 warning war
   
           * src/main/pa_charset.C: vs2015 warning war
   
           * src/types/: pa_wcontext.h, pa_vmethod_frame.h: vs2015 warning war
   
           * src/types/pa_vdate.C: vs2015 compilation fix
   
           * src/: include/pa_memory.h, main/pa_memory.C: VS2015 warning war
   
           * src/: lib/json/pa_json.C, classes/mail.C, classes/string.C:
             VS2015 compilation fixes
   
           * src/classes/table.C: minor fix (related to feature #11)
   
           * tests/results/282.processed: no longer skipping extra enclosers
             (related to feature #11)
   
           * src/classes/table.C: minor fix + no longer skipping extra
             enclosers (related to feature #11)
   
           * src/classes/table.C: minor optimization (related to feature #11)
   
           * src/classes/table.C: minor fix and optimization (related to
             feature #11)
   
   2016-09-20  moko
   
           * tests/: 353.html, results/353.processed: test for
             PC.cclass->is_vars_local() check in one_big_piece in ^process[]
             added (related to bug #1090)
   
           * src/main/compile.y: PC.cclass->is_vars_local() check added for
             one_big_piece (fixes bug #1090)
   
           * tests/: 229.html, results/229.processed: code coverage tests
   
           * src/classes/op.C: bugfix: no more GPF if ^process[$context] (no
             body) was called
   
           * src/classes/op.C: whitespace
   
           * tests/: 323.html, results/323.processed: test for code junction
             should not be returned by ^reflection:class, ^reflection:base
   
           * src/classes/reflection.C: bugfix: code junction should not be
             returned by ^reflection:class, ^reflection:base
   
           * tests/: 323.html, 352.html, results/352.processed: no more
             exception for ^reflection:method[class;no-such-method] (related
             to feature #1087)
   
           * src/classes/reflection.C:
             ^reflection:method[class;no-such-method] : exception -> void
             (related to feature #1087)
   
           * src/include/pa_request.h: request::write_value added to allow
             write value without convertion (related to issue #1091)
   
   2016-09-19  moko
   
           * src/main/pa_random.C: windows build fix
   
           * src/types/pa_vhash.h: warning war
   
   2016-09-14  moko
   
           * tests/: 352.html, 552.html, results/352.processed,
             results/552.processed: test for ^reflection:method[] extension
             added (related to feature #1087)
   
           * tests/: 552.html, results/552.processed: test for
             ^reflection:method[] extension added (related to feature #1087)
   
           * src/classes/reflection.C: compatibility issue fixed, VClass
             dynamic_cast check added (related to feature #1087)
   
           * tests/: 351.html, results/351.processed: test for @auto[]
             inheritance bug diring ^process[] added (related to bug #1088)
   
           * src/: classes/op.C, main/pa_request.C,
             types/pa_vstateless_class.C: set_method now checks for @auto[] to
             disable it inheritance during ^process (fixes bug #1088)
   
           * src/classes/reflection.C: ^reflection:method[$class:method;$self]
             added (implements feature #1087)
   
   2016-09-13  moko
   
           * tests/: 349.html, results/auto.p: test for objects prototyping
             added and $OBJECT-PROTOTYPE(false) is used for old tests (related
             to feature #1086)
   
           * src/: main/pa_request.C, types/pa_vclass.C, types/pa_vclass.h,
             types/pa_vobject.C: objects now are not class instances, but have
             class as prototype, can be overridden by $OBJECT-PROTOTYPE(false)
             in @conf (implements feature #1086)
   
   2016-09-08  moko
   
           * src/: classes/file.C, classes/mail.C, classes/string.C,
             classes/table.C, main/pa_http.C, main/pa_string.C,
             include/pa_string.h: cleanup: string::split limit argument
             removed as no longer required, pos_after no longer reference
             (related to feature #11)
   
           * src/classes/table.C, tests/results/348.processed: now exception
             is rised when invalid option is passed to ^table::create[]
   
           * tests/: 282.cfg, 282.html, results/282.processed: more code
             coverage tests
   
           * tests/: 348.html, results/348.processed: code coverage tests
             added
   
           * tests/: 348.html, results/348.processed: generic ^table::create[]
             tests
   
           * tests/: 035.html, results/035.processed, results/272.processed:
             tests updated after $.encloser[] support for ^table::create
             implementation (related to feature #11)
   
           * src/classes/table.C: $.encloser[] support for ^table::create
             finally added (implements feature #11)
   
   2016-09-07  moko
   
           * src/include/pa_string.h: added StringSplitHelper as friend
             (related to feature #11)
   
           * src/include/pa_string.h: body and langs now protected, not
             private to allow inheritance (related to feature #11)
   
           * src/classes/table.C: lsplit optimized before cloning for
             ^table::create with $.encloser[] (related to feature #11)
   
           * src/classes/table.C: optimizaion: TableControlChars.separators
             added and used (related to feature #11)
   
           * src/classes/table.C: spelling:
   
             TableSeparators -> TableControlChars column -> separator
             separators -> control_chars
   
   2016-09-06  moko
   
           * src/main/pa_string.C: whitespace
   
           * src/main/pa_string.C: whitespace
   
   2016-09-01  moko
   
           * tests/: 347-curl.html, results/347-curl.processed: to make tests
             results OS-independent
   
           * src/: include/pa_http.h, main/pa_http.C: typo bugfix for clang
             compiler (related to feature #1042)
   
   2016-08-15  moko
   
           * src/include/pa_string.h: whitespace
   
           * src/classes/table.C: whitespace
   
   2016-08-05  moko
   
           * tests/: 344.html, results/344.processed: test for
             ^hash::create[$file] added (related to feature #1075)
   
           * src/types/: pa_vfile.h, pa_vmail.C: ^hash::create[$file] now
             supported (implements feature #1075)
   
   2016-08-04  moko
   
           * tests/: 341.html, results/341.processed: more code coverage tests
   
           * tests/: 346-curl.html, results/346-curl.processed: more code
             coverage tests for curl
   
           * tests/: 346-curl.html, results/346-curl.processed: more code
             coverage tests for curl
   
           * tests/: 223-curl.html, 223.html, results/223-curl.processed,
             results/223.processed: code coverage tests: $.form[ $.table[] ]
             test added
   
           * tests/: 223-curl.html, results/223-curl.processed: more code
             coverage tests for curl
   
   2016-08-03  moko
   
           * src/classes/curl.C: dlink(curl_library) now called not once, but
             until it will be loaded, allowing to find existing library.
   
           * tests/: 346-curl.html, 347-curl.html, results/346-curl.processed,
             results/347-curl.processed: more code coverage tests for curl
   
           * tests/: 339-curl.html, 339.html, 346-curl.html, Makefile,
             results/339-curl.processed, results/346-curl.processed: curl
             functionality tests
   
   2016-08-02  moko
   
           * tests/: 339.html, results/339.processed: test for tables in
             ^file:load[] and ^curl:load[] (commented) added (related to
             feature #1042)
   
           * tests/: 345.html, results/345.processed: code coverage tests for
             file class
   
           * tests/: 344.html, results/344.processed: code coverage tests
   
           * tests/: 344.html, results/344.processed: mdate removed from
             output
   
           * src/classes/file.C: minor bugfix: is_text should be taked from
             fcontent.is_text_mode() if not set (related to feature #1061)
   
           * tests/: 344.html, results/344.processed: more tests
   
           * tests/: 343.html, 344.html, results/343.processed,
             results/344.processed: tests for ^file::create[ $.from-charset
             and $.to-charset ] (related to feature #1061)
   
           * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h:
             aset_text_mode argument optimized
   
           * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h:
             checkBOM now used in detect_binary_content (related to feature
             #1061)
   
           * src/main/pa_request.C: load_charset no longer required to_upper
   
           * src/types/pa_vfile.C: bugfix: ^file::create[$text_file;...] now
             preserves original file mode (if no $.mode specified)
   
           * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h:
             ^file::create now supports $.from-charset[] and $.to-charset
             options (implements feature #1061), automatic transcode is done
             if text file is created from binary file and charset is detected.
   
   2016-07-30  moko
   
           * src/classes/table.C: ^t.hash[..;] now supported (related to
             feature #1057)
   
           * tests/: 341.html, results/341.processed: test for ^t.hash[..;]
             added (related to feature #1057)
   
           * tests/: 286.html, results/286.processed: code tests coverage
   
   2016-07-29  moko
   
           * src/classes/table.C: table size should be checked inside menu and
             foreach (related to feature #858)
   
           * src/: classes/curl.C, classes/file.C, classes/string.C,
             classes/xdoc.C, include/pa_charsets.h, main/pa_charsets.C,
             main/pa_common.C, main/pa_http.C, main/pa_sql_driver_manager.C,
             types/pa_vmail.C, types/pa_vrequest.C, types/pa_vresponse.C:
             charsets.get now does str_upper inside (related to feature #1061)
   
           * tests/: 342.html, results/342.processed: more code coverage tests
   
           * tests/: 342.html, outputs/342.processed: table menu code coverage
             + foreach test added (related to feature #858)
   
           * tests/: 341.html, results/341.processed: tests for
             ^table.hash[]{code} added + code coverage tests (related to
             feature #1057)
   
           * src/: include/pa_common.h, classes/table.C: ^table.hash[]{code as
             value} support (implements feature #1057)
   
           * src/classes/table.C: whitespace
   
   2016-07-28  moko
   
           * src/: classes/curl.C, types/pa_vfile.C: curl now saves filename
             from URL, if not specified query string removed from url-based
             filenames in ^curl:load[] and ^file::load[] (related to feature
             #1042)
   
   2016-07-27  moko
   
           * tests/: 340.html, results/340.processed: test for
             transcode_text_result=false added (related to issue #1042)
   
   2016-07-26  moko
   
           * src/types/pa_vfile.C: file name should not be empty (if file path
             is folder and ends with /) (related to feature #1042)
   
           * src/main/pa_http.C: whitespace optimizaion
   
           * src/: classes/curl.C, include/pa_common.h, include/pa_http.h,
             main/pa_common.C, main/pa_http.C: ^curl:load[] now support
             multiple headers, ^file::load supports headers transcoding
             (implements feature #1042)
   
   2016-07-25  moko
   
           * src/include/pa_common.h: PA_DEFAULT added
   
   2016-07-22  moko
   
           * tests/: 338.html, results/338.processed: test for
             $date.field(value) added (related to feature #1066)
   
           * src/: classes/date.C, types/pa_vdate.C, types/pa_vdate.h:
             $date.field(value) now supported for y/m/d/h/m/s (implements
             feature #1066)
   
   2016-07-21  moko
   
           * src/: classes/file.C, classes/image.C, include/pa_common.h,
             main/pa_common.C: pa_common.h: File_read_action: fname, as_text
             arguments removed; image.C - absolute path shown in exception
             (implements feature #1071)
   
           * tests/: 235.html, results/235.processed: test and test result
             updated after static boundary in mail and Errors-To: mail header
             removed (related to feature #1047)
   
           * src/: classes/math.C, include/pa_random.h, main/pa_http.C,
             main/pa_random.C, types/pa_vmail.C: get_uuid_boundary() added and
             used, static boundary in mail removed, Errors-To: mail header
             removed (implements feature #1047)
   
   2016-07-20  moko
   
           * src/: classes/reflection.C, types/pa_vstateless_class.h:
             equest.classes(): Value -> VStateless_class, part 3 (related to
             issue #1051)
   
           * src/: classes/reflection.C, include/pa_request.h, main/execute.C:
             request.classes(): Value -> VStateless_class, part 2 (related to
             issue #1051)
   
           * tests/results/: 224.processed, 323.processed: classes without
             methods should not be methoded (related to issue #1051)
   
           * src/: classes/reflection.C, include/pa_request.h, main/compile.y,
             main/compile_tools.h, main/pa_request.C: request.classes(): Value
             -> VStateless_class, part 1 (related to issue #1051)
   
           * tests/: 337.html, results/337.processed: test for
             ^reflection:fields_reference[] and VHashReference class added
             (related to feature #1072)
   
           * src/: classes/hash.C, classes/json.C, classes/reflection.C,
             types/pa_value.h, types/pa_vhash.h, types/pa_vobject.h: VHashBase
             and VHashReference added, allowing ^reflection:fields_reference[]
             implementation (closes feature #1072)
   
   2016-07-19  moko
   
           * tests/: 323.html, results/323.processed: we want to see
             "methoded"
   
           * tests/: 336.html, results/336.processed: test for $BASE:property
             and ^BASE:method (OP_VALUE__GET_BASE_CLASS) added (related to bug
             #1059)
   
           * src/: include/pa_opcode.h, main/compile.y, main/execute.C,
             types/pa_vstateless_class.h, types/pa_wcontext.h: no more
             somebody_entered_some_class, $BASE:property works again,
             ^BASE:method[] bugs fixed (fixes bug #1059)
   
   2016-07-14  moko
   
           * tests/: 335.html, results/335.processed: test for feature #1055
             added
   
           * src/classes/hash.C: bugfix: $._default was not copied if empty
             feature: ^hash.contains[_default] added (implements feature
             #1055)
   
   2016-07-13  moko
   
           * src/classes/reflection.C: bugfix: ^reflection:def[class;name]
             should not call @autouse (http://www.parser.ru/forum/?id=83480)
   
   2016-07-05  moko
   
           * src/classes/hash.C: Optimization: HashStringValue::Iterator used
             in ^hash.foreach (related to feature #1073)
   
   2016-07-04  moko
   
           * tests/: 134.html, 281.html, results/134.processed,
             results/281.processed: tests updated after hash blocking removed
             (related to feature #1073)
   
           * src/: classes/hash.C, include/pa_hash.h, types/pa_vhash.h: hash
             no longer blocks on change during foreach (implements feature
             #1073)
   
   2016-06-17  moko
   
           * tests/: 330.html, results/330.processed: try exception source
             test added (related to bug in #1062)
   
           * tests/: 334.html, results/334.processed: Exception stack trace
             test added (related to bug in $1062)
   
           * src/classes/op.C: Exception trace now correctly restored and
             errors reported (related to bug #1062)
   
   2016-05-25  moko
   
           * src/main/compile.y: minor cleanup + beauty
   
   2016-05-24  moko
   
           * tests/: 333.html, results/333.processed: more exceptions testing
   
           * tests/: 332.html, results/332.processed: test for FIELDS_SYMBOL,
             _DEFAULT_SYMBOL, CALLER_SYMBOL, SELF_SYMBOL added (related to
             features #1056, #1026)
   
           * src/: classes/json.C, include/pa_symbols.h, main/pa_symbols.C,
             types/pa_vhash.C, types/pa_vhash.h, types/pa_vtable.C,
             types/pa_vtable.h: FIELDS_SYMBOL, _DEFAULT_SYMBOL added and used
             (implements feature #1056)
   
           * src/: include/pa_symbols.h, main/compile.y, main/compile_tools.C,
             main/execute.C, main/pa_symbols.C, types/pa_vjunction.C,
             types/pa_vstateless_class.C, types/pa_vstateless_class.h:
             CLASS_SYMBOL, CLASS_NAME_SYMBOL added and used (related to
             feature #1026)
   
           * src/: classes/reflection.C, include/pa_symbols.h, main/compile.y,
             main/compile_tools.C, main/compile_tools.h, main/pa_symbols.C,
             types/pa_vmethod_frame.C, types/pa_vmethod_frame.h: Symbols now
             have *_SYMBOL naming convention. STATIC_SYMBOL, DYNAMIC_SYMBOL,
             LOCALS_SYMBOL, PARTIAL_SYMBOL, REM_SYMBOL where added (related to
             feature #1026)
   
           * src/: include/pa_symbols.h, main/compile.y, main/compile_tools.C,
             main/pa_globals.C, main/pa_symbols.C, types/pa_vmethod_frame.C,
             types/pa_vmethod_frame.h, types/pa_vstateless_class.C:
             SYMBOLS_CACHING define implemented (related to feature #1026)
   
           * src/main/main.vcproj: + ps_symbols
   
           * src/: include/Makefile.am, include/pa_string.h,
             include/pa_symbols.h, main/Makefile.am, main/compile.tab.C,
             main/compile.y, main/compile_tools.C, main/pa_symbols.C,
             types/pa_vmethod_frame.C, types/pa_vmethod_frame.h,
             types/pa_vstateless_class.C: initial implementation for symbols
             cache (related to feature #1026)
   
           * src/: include/pa_common.h, main/pa_http.C: minor cleanup
   
           * src/main/pa_globals.C: minor cleanup
   
   2016-05-19  moko
   
           * src/types/pa_vhash.h: minor optimization: ^hash.fields[] removed
             (related to feature #1046)
   
           * tests/: 331.html, results/331.processed: test for
             BAD_NONWHITESPACE_CHARACTER_IN_EXPLICIT_RESULT_MODE removal added
             (related to feature #1051)
   
           * src/main/compile.y:
             BAD_NONWHITESPACE_CHARACTER_IN_EXPLICIT_RESULT_MODE error removed
             (implements feature #1054)
   
   2016-05-18  moko
   
           * src/types/pa_vtable.C, tests/results/324.processed: no more
             "column not found" exception for ^table.no-such-method[] (related
             to feature #1046)
   
           * tests/: 261.html, results/261.processed: test added and updated
             after feature #1046 implementation
   
           * src/: classes/string.C, types/pa_value.C, types/pa_vstring.h,
             types/pa_vvoid.h: $string.anything works for whitespace strings,
             ^string.contains added for hash compatibility, $string.method no
             longer returns stting method (implements feature #1046)
   
   2016-05-12  moko
   
           * src/classes/curl.C: content-type response header no longer
             ignored (fixes issue #1045)
   
           * tests/: 330.html, results/330.processed: test for incomplete
             finally execution when break occures added (related to issue
             #1077)
   
           * src/classes/op.C: bugfix: Request::skip reset is called before
             executing catch and finally code (fixes issue #1062)
   
   2016-05-11  moko
   
           * tests/: 329.html, results/329.processed: test for invalid
             ^break[] behavour added (bug #1077)
   
           * src/classes/op.C: try_catch code cleanup (related to bug #1062)
   
   2016-04-24  moko
   
           * src/types/pa_vstateless_class.h: warning war
   
   2016-04-17  moko
   
           * tests/: 328.html, results/328.processed: test for
             ^break(condition) and ^continue(condition) (related to feature
             #1063)
   
           * src/classes/op.C: ^break(condition) and ^continue(condition)
             implemented (feature #1063)
   
   2016-04-12  moko
   
           * tests/results/280.processed: ordered hash now used for class
             methods and properties (test results updated for feature #1069)
   
           * src/classes/: xdoc.C, xnode.C: xnode_class initialization moved
             to xdoc.C as under FreeBSD it was inited after and inheritance
             failed (related to issue #1051)
   
           * tests/: 320.html, results/320.processed: xdoc and xnode methods
             are printed to check inheritance (related to feature #1051)
   
   2016-04-09  moko
   
           * tests/results/320.processed: ordered hash now used for class
             methods and properties (test results updated for feature #1069)
   
           * src/types/pa_vstateless_class.h: ordered hash now used for class
             methods and properties (implements feature #1069)
   
           * src/types/: pa_vconsole.h, pa_vcookie.C, pa_venv.C,
             pa_vrequest.C, pa_vstatus.C: minor optimization: #ifndef
             OPTIMIZE_BYTECODE_GET_ELEMENT__SPECIAL returned (related to
             feature #1051)
   
   2016-04-07  moko
   
           * src/main/execute.C: returned Value in .CLASS case for VJunction
             (related to feature #1051)
   
           * src/types/: pa_vjunction.C, pa_vmethod_frame.C,
             pa_vmethod_frame.h, pa_vstateless_class.C, pa_vstateless_class.h:
             string constants deduplication (related to feature #1051)
   
           * tests/results/224.processed: test result updated (related to
             feature #1051)
   
           * src/: main/execute.C, types/pa_vconsole.h, types/pa_vcookie.C,
             types/pa_vcookie.h, types/pa_venv.C, types/pa_venv.h,
             types/pa_vrequest.C, types/pa_vrequest.h, types/pa_vstatus.C,
             types/pa_vstatus.h: classes hash now contains only
             VStateless_class derived objects, .CLASS is also allways
             VStateless_class derived object (related to feature #1051).
   
   2016-04-06  moko
   
           * tests/results/323.processed: test result updated after feature
             #1051 implementation
   
           * src/: classes/classes.h, classes/op.C, classes/response.C,
             classes/void.C, classes/xdoc.C, classes/xnode.C, classes/xnode.h,
             main/pa_request.C, types/pa_vclass.h, types/pa_vform.C,
             types/pa_vmail.C, types/pa_vmath.C, types/pa_vmemory.h,
             types/pa_vresponse.C, types/pa_vresponse.h,
             types/pa_vstateless_class.h: base -> methoded_donor for static
             classes, type() moved from VStateless_class to VClass and
             Methoded (implements feature #1051)
   
   2016-04-04  moko
   
           * src/: classes/classes.C, include/pa_request.h, main/pa_request.C:
             beauty: put_class added (related to feature #1051)
   
   2016-04-01  moko
   
           * tests/results/: 175.processed, 192.processed, 224.processed,
             229.processed, 244.processed, 246.processed, 316.processed: test
             results updated as class.type() removed from error messages, only
             type() left (related to feature #1051)
   
           * src/: classes/classes.C, classes/classes.h, classes/mail.C,
             classes/op.C, classes/reflection.C, main/compile.y,
             main/compile_tools.h, main/execute.C, main/pa_request.C,
             types/pa_value.C, types/pa_vclass.C, types/pa_vclass.h,
             types/pa_vmethod_frame.h, types/pa_vobject.h,
             types/pa_vstateless_class.h, types/pa_wcontext.C: name() removed
             from VStateless_class, type() is used instead (related to feature
             #1051)
   
           * src/classes/mail.C: old logic restored.
   
           * src/: classes/bool.C, classes/classes.C, classes/classes.awk,
             classes/classes.h, classes/curl.C, classes/date.C,
             classes/double.C, classes/file.C, classes/form.C, classes/hash.C,
             classes/hashfile.C, classes/image.C, classes/inet.C,
             classes/int.C, classes/json.C, classes/mail.C, classes/math.C,
             classes/memcached.C, classes/memory.C, classes/reflection.C,
             classes/regex.C, classes/response.C, classes/string.C,
             classes/table.C, classes/xdoc.C, classes/xnode.C,
             types/pa_vform.C, types/pa_vmail.C, types/pa_vmath.C,
             types/pa_vmemory.h: optimizaion: *_base_class removed (related to
             feature #1051)
   
   2016-03-30  moko
   
           * tests/: 327.html, results/224.processed, results/327.processed:
             test for TZ specification in ^date::create[], TZ is kept during
             ^date::create[$dt] (related to feature #1048)
   
           * src/: classes/date.C, types/pa_vdate.h: TZ can be specified in
             ^date::create[], TZ is kept during ^date::create[$dt] (implements
             feature #1048)
   
   2016-03-29  moko
   
           * tests/: 315.html, results/315.processed: test for timezone format
             +HHmm added (related to feature #1065)
   
           * src/classes/date.C: timezone format +HHmm now supported
             (implements feature #1065)
   
   2016-03-28  moko
   
           * tests/: 202.html, results/131.processed, results/202.processed,
             results/224.processed, results/256.processed,
             results/315.processed: test results updated after %.2d now
             default for hours offset in iso-string (was %2d), test for
             ^date.iso-string options $.colon(true) $.z(true) $.ms(false)
             added (related to feature #1065)
   
   2016-03-27  moko
   
           * src/types/pa_vdate.C: '+' sign for zero offset (related to
             feature #1065)
   
           * src/: classes/date.C, types/pa_vdate.C, types/pa_vdate.h:
             ^date.iso-string options $.colon(true) $.z(true) $.ms(false)
             added (implements feature #1065)
   
   2016-03-24  moko
   
           * tests/: 202.html, results/202.processed: test $date.week added
             (related to bug #1067)
   
           * src/types/: pa_vdate.C, pa_vdate.h: fix for $date.week changed
             date (fix for bug #1067)
   
   2016-03-10  moko
   
           * configure.ac, src/include/pa_version.h: 3.4.4 -> 3.4.5b
   
   2015-12-07  moko
   
           * tests/: 326.html, results/326.processed: test for .CLASS &
             .CLASS_NAME optimization added (related to feature #844)
   
   2015-11-17  moko
   
           * tests/: 323.html, results/323.processed: order added
   
           * tests/: 325.html, results/325.processed: double range test added
             (related to bug #1049)
   
   2015-11-16  moko
   
           * src/: classes/string.C, types/pa_vdouble.h: finite(double) check
             added to disallow NaN and Infinity (fixes bug #1049)
   
   2015-11-11  moko
   
           * tests/324.html: parser 3.4.3 execution support added (related to
             feature #1017)
   
           * tests/: 324.html, results/324.processed: test for
             GET_ELEMENT4CALL feature added (feature #1017)
   
   2015-10-29  moko
   
           * operators.txt: updated for 3.4.4
   
           * configure.ac, src/include/pa_version.h: 3.4.4rc -> 3.4.4
   
           * src/main/pa_exec.C: get_exit_status implemented for Windows
             (related to bug #1043)
   
   2015-10-28  moko
   
           * src/main/pa_exec.C: Windows bugfix: $.stdin[] no longer cause
             hangup during ^file::exec (fixes bug #1043)
   
   2015-10-27  moko
   
           * src/main/pa_memory.C: pa_fail_alloc added for GC_abort in Windows
   
   2015-10-26  moko
   
           * tests/322.html, src/classes/reflection.C: arguments reorder
             (related to issue #1041)
   
           * src/: classes/classes.awk, main/helpers/simple_folding.pl:
             Copyright year updated
   
           * src/: classes/bool.C, classes/classes.C, classes/classes.h,
             classes/curl.C, classes/date.C, classes/double.C, classes/file.C,
             classes/form.C, classes/hash.C, classes/hashfile.C,
             classes/image.C, classes/inet.C, classes/int.C, classes/json.C,
             classes/mail.C, classes/math.C, classes/memcached.C,
             classes/memory.C, classes/op.C, classes/reflection.C,
             classes/regex.C, classes/response.C, classes/string.C,
             classes/table.C, classes/void.C, classes/xdoc.C, classes/xnode.C,
             classes/xnode.h, include/pa_array.h, include/pa_cache_managers.h,
             include/pa_charset.h, include/pa_charsets.h, include/pa_common.h,
             include/pa_config_fixed.h, include/pa_config_includes.h,
             include/pa_dictionary.h, include/pa_dir.h,
             include/pa_exception.h, include/pa_exec.h, include/pa_globals.h,
             include/pa_hash.h, include/pa_http.h, include/pa_memory.h,
             include/pa_opcode.h, include/pa_operation.h, include/pa_os.h,
             include/pa_pool.h, include/pa_random.h, include/pa_request.h,
             include/pa_request_charsets.h, include/pa_request_info.h,
             include/pa_sapi.h, include/pa_socks.h,
             include/pa_sql_connection.h, include/pa_sql_driver_manager.h,
             include/pa_stack.h, include/pa_string.h,
             include/pa_stylesheet_connection.h,
             include/pa_stylesheet_manager.h, include/pa_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/sdbm/pa_file_io.C,
             lib/sdbm/pa_strings.C, lib/smtp/comms.C, lib/smtp/smtp.C,
             lib/smtp/smtp.h, main/compile.C, main/compile.tab.C,
             main/compile.y, main/compile_tools.C, main/compile_tools.h,
             main/execute.C, main/pa_cache_managers.C, main/pa_charset.C,
             main/pa_charsets.C, main/pa_common.C, main/pa_dictionary.C,
             main/pa_dir.C, main/pa_exception.C, main/pa_exec.C,
             main/pa_globals.C, main/pa_http.C, main/pa_memory.C,
             main/pa_os.C, main/pa_pool.C, main/pa_random.C,
             main/pa_request.C, main/pa_socks.C, main/pa_sql_driver_manager.C,
             main/pa_string.C, main/pa_stylesheet_connection.C,
             main/pa_stylesheet_manager.C, main/pa_table.C, main/pa_uue.C,
             main/pa_xml_exception.C, main/pa_xml_io.C, main/untaint.C,
             sql/pa_sql_driver.h, targets/apache/mod_parser3.c,
             targets/apache/mod_parser3_core.C, targets/apache/pa_httpd.h,
             targets/apache/pa_threads.C, targets/cgi/pa_threads.C,
             targets/cgi/parser3.C, targets/isapi/pa_threads.C,
             targets/isapi/parser3isapi.C, types/pa_junction.h,
             types/pa_method.h, types/pa_property.h, types/pa_value.C,
             types/pa_value.h, types/pa_vbool.h, types/pa_vclass.C,
             types/pa_vclass.h, types/pa_vcode_frame.h, types/pa_vconsole.h,
             types/pa_vcookie.C, types/pa_vcookie.h, types/pa_vdate.C,
             types/pa_vdate.h, types/pa_vdouble.h, types/pa_venv.C,
             types/pa_venv.h, types/pa_vfile.C, types/pa_vfile.h,
             types/pa_vform.C, types/pa_vform.h, types/pa_vhash.C,
             types/pa_vhash.h, types/pa_vhashfile.C, types/pa_vhashfile.h,
             types/pa_vimage.C, types/pa_vimage.h, types/pa_vint.h,
             types/pa_vjunction.C, types/pa_vjunction.h, types/pa_vmail.C,
             types/pa_vmail.h, types/pa_vmath.C, types/pa_vmath.h,
             types/pa_vmemcached.C, types/pa_vmemcached.h, types/pa_vmemory.h,
             types/pa_vmethod_frame.C, types/pa_vmethod_frame.h,
             types/pa_vobject.C, types/pa_vobject.h, types/pa_vregex.C,
             types/pa_vregex.h, types/pa_vrequest.C, types/pa_vrequest.h,
             types/pa_vresponse.C, types/pa_vresponse.h,
             types/pa_vstateless_class.C, types/pa_vstateless_class.h,
             types/pa_vstateless_object.h, types/pa_vstatus.C,
             types/pa_vstatus.h, types/pa_vstring.C, types/pa_vstring.h,
             types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.C,
             types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h,
             types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C,
             types/pa_wcontext.h, types/pa_wwrapper.h: Copyright year updated
   
           * src/targets/cgi/parser3.C: year updated
   
           * src/classes/reflection.C: VS2003 compatibility fixed (related to
             issue #1041)
   
           * tests/: 323.html, results/323.processed: test for base classes
             added
   
           * tests/: 261.html, results/261.processed: updated after better
             error reporting done for $string.key exception
   
           * src/types/pa_vstring.h: better error report for $string.key
             exception
   
           * src/types/: pa_vobject.C, pa_vobject.h: VObject::get_element
             copied as VObject::get_element4call to remove extra virtual call
   
           * tests/: 322.html, results/322.processed: test for
             ^reflection:is[] added (related to feature #1041)
   
           * src/classes/reflection.C: ^reflection:is empty value is void
             (related to feature #1041)
   
           * src/classes/reflection.C:
             ^reflection:is[class_name|code|method;[context;]element_name]
             added (implements feature #1041)
   
   2015-10-24  moko
   
           * configure.ac, src/include/pa_version.h: 3.4.4b -> 3.4.4rc
   
   2015-10-22  moko
   
           * tests/: 321.html, results/321.processed: test for
             ^reflection:method_info[] file detection added
   
           * tests/: 320.html, results/320.processed: test for
             ^reflection:class_by_name[class_name] added (related to feature
             #993)
   
           * src/classes/reflection.C: ^reflection:class_by_name[class_name]
             added (implements feature #993)
   
           * src/main/execute.C: GET_ELEMENT4CALL added to get_method_filename
             (related to feature #1017)
   
           * tests/: 319.html, results/319.processed: ^throw[] stacktrace test
             added (related to issue #1039)
   
           * src/main/pa_request.C: ^throw origin fixed (related to feature
             #1039)
   
           * src/types/pa_vcookie.C: bugfix: expires_sec should not be called
             for VDate
   
           * tests/results/182.processed: updated after feature #1038
             implemented
   
           * tests/: 318.html, 182_dir/a6.p, results/318.processed: test for
             compile-time exception origin added (test for feature #1039)
   
           * src/: include/pa_request.h, main/compile.C, main/compile.y,
             main/pa_request.C: exception unification: compile-time exceptions
             now have origin, @USE origins also tracked (implements feature
             #1039)
   
   2015-10-20  moko
   
           * src/main/pa_request.C: cleanup
   
   2015-10-15  moko
   
           * src/types/pa_vtable.C: defines fixed (related to feature #1017)
   
           * src/: classes/hash.C, include/pa_opcode.h, types/pa_vhash.h,
             types/pa_vtable.C: new feature: no more $table.method and
             $hash.method, aliases for _at, _count, _key (related to feature
             #1017)
   
   2015-10-14  moko
   
           * tests/: 317.html, results/317.processed: test for
             ^string.unescape[] added (related to feature #120)
   
           * buildall: reverted libxml 2.9.2 -> 2.9.1 due to "ID already
             defined" bug (described in issue #1036)
   
           * tests/: 247.html, results/247.processed: test for checkBOM added
             (test for bug #1037)
   
           * src/: include/pa_charsets.h, main/pa_charsets.C,
             main/pa_common.C, main/pa_http.C: checkBOM detects charset if
             it's not enforced, skips BOM signature if it complies charset
             (fixes bug #1037)
   
   2015-10-13  moko
   
           * src/targets/cgi/parser3.vcproj: disabling buggy incremental
             linking
   
           * src/classes/inet.C: vs2003 compilation fix
   
           * src/classes/math.C: warning war
   
           * src/lib/punycode/pa_punycode.c: warning war
   
   2015-10-12  moko
   
           * src/lib/punycode/pa_punycode.c: warning war
   
           * parser3.sln: moved parser3 first, to make it default startup
             project
   
           * buildall: parser "mirror" now used for external libs sources
             (implements feature #1036)
   
           * buildall: most external libs are updated to their current
             versions (related to feature #1036)
   
           * src/classes/image.C: more tags added
   
           * src/: include/pa_memory.h, types/pa_vdate.C: warning war
   
   2015-10-11  moko
   
           * src/classes/curl.C: minor optimization (related to feature #1035)
   
   2015-10-09  moko
   
           * src/classes/curl.C: pa_strdup added for strings from curl
             (related to feature #1035)
   
           * src/main/pa_string.C: mini fix: RedHat 7.2 does not have
             ULLONG_MAX definition
   
           * src/classes/curl.C: ^curl:info[name]/^curl:info[] added
             (implements feature #1035)
   
           * src/main/pa_charset.C: String::Body(String::C) used
   
           * src/main/pa_charset.C: exceptions unified
   
           * src/: include/pa_charset.h, main/pa_charset.C: declarations
             unified
   
           * src/: classes/file.C, classes/image.C, classes/mail.C,
             classes/op.C, classes/xdoc.C, classes/xnode.C,
             include/pa_string.h, main/pa_request.C, main/pa_string.C,
             types/pa_vimage.C, types/pa_vmath.C, types/pa_vstatus.C,
             types/pa_vxdoc.C: explicit String::Body(char) calls removed;
             String::Body(String::C) constructor added (related to bug #957)
   
           * src/classes/file.C: minor optimization
   
           * src/include/pa_hash.h: hash.get(char*) added, to minimize
             Cord(char*) autocreation (related to bug #957)
   
           * src/: classes/string.C, main/untaint.C: minor optimizations
   
           * src/: classes/json.C, classes/reflection.C, include/pa_string.h:
             String(char*, Lang, length) removed, String(C(), Lang) used
             instead (related to bug #957)
   
   2015-10-08  moko
   
           * src/: classes/file.C, include/pa_string.h, lib/cord/cordbscs.c,
             lib/cord/include/cord.h, main/pa_http.C, main/pa_string.C,
             main/untaint.C: Now char * is converted to CORD only using
             AS_CORD() to check for empty cord bug (fixes bug #957)
   
           * src/include/pa_hash.h: fixed compilation without
             HASH_CODE_CACHING
   
           * src/classes/string.C:
             ^string:unescape[js|uri;escaped;$.charset[...]] added (implements
             feature #120)
   
           * src/main/pa_common.C: reduce js flags checks count (related to
             feature #120)
   
   2015-10-07  moko
   
           * tests/: 275.html, results/275.processed: test modified after
             unsigned long long int support implemented (feature #1034)
   
           * src/: classes/math.C, include/pa_string.h, main/pa_string.C:
             pa_atoul added for unsigned long long int support
   
   2015-10-06  moko
   
           * src/types/pa_vdate.C: INT_MAX used
   
   2015-10-03  moko
   
           * tests/: 302.html, results/302.processed: test for bug #1023
             (\u2028, \u2029 escaping) added
   
           * src/main/untaint.C: \u2028, \u2029 are now escaped in
             json:string[] (fixes bug #1023)
   
   2015-09-29  moko
   
           * tests/305.html: try-catch added for OS without ipv6 support
   
           * src/lib/json/pa_json.C: more unique prefixes for Solaris
             compilation
   
           * src/: include/pa_opcode.h, include/pa_request.h, main/compile.y,
             main/execute.C, types/pa_value.h, types/pa_vhash.h,
             types/pa_vtable.C, types/pa_vtable.h: get_element4call
             implemented to distinguish ^hash.method from $hash.field
             (implements feature #1017)
   
           * src/lib/punycode/pa_punycode.c: warning war
   
           * src/include/pa_config_includes.h: warning war
   
           * src/include/pa_config_includes.h: pragma warning actualized a bit
   
           * src/include/pa_config_includes.h: warning war
   
           * src/include/pa_hash.h: clang compilation fix
   
   2015-09-27  moko
   
           * src/main/compile.tab.C: Bison 3 is now default
   
           * src/main/: compile.C, compile.y: Bison 3 compatibility fixed
   
   2015-09-25  moko
   
           * src/: classes/hash.C, include/pa_hash.h: parser now compiles and
             works with undefined HASH_ORDER (related to feature #196)
   
   2015-09-24  moko
   
           * tests/: 027.html, results/027.processed: test modified to test
             ^hash.sort (feature #196)
   
           * src/: classes/hash.C, include/pa_hash.h:
             ^hash.sort[key;value]{string-key-maker}|(numeric-key-maker)[[asc|desc]]
             added (implements feature #196)
   
           * tests/: 316.html, results/316.processed: Added test for bug #1025
             (exception handling in non-cached ^cache), plus for "it does not
             have logical value" and "$exception.handled value must be either
             boolean or string 'cache'" exceptions.
   
           * src/classes/op.C: ^cache: exceptions now handled in non-cached
             code (fixes bug #1025)
   
   2015-09-23  moko
   
           * src/classes/table.C: warning war
   
           * src/: classes/math.C, types/pa_vcookie.C: warning war
   
           * src/classes/file.C: warning war
   
           * src/: include/pa_table.h, main/pa_table.C: warning war
   
           * src/: main/pa_request.C, classes/date.C: warning war
   
           * src/: types/pa_vdate.C, classes/op.C: warning war
   
           * tests/: 122.html, results/122.processed: win sync: to remove
             differences with OS that doesn't keep timezone change history
   
           * src/types/pa_vdate.C: tzset() should be called in Windows after
             TZ change (related to feature #36)
   
           * tests/: 075.html, results/075.processed: win sync: to remove
             differences with OS that doesn't keep timezone change history
   
           * tests/: 315.html, results/315.processed: win sync: to remove
             differences with OS that doesn't keep timezone change history
   
           * tests/: 256.html, results/256.processed: win sync: to remove
             differences with OS that doesn't keep timezone change history
   
           * tests/: 124.html, results/124.processed: win results sync: to
             avoid hitting time change hole.
   
           * src/types/pa_vdate.C: static returned. :)
   
   2015-09-22  moko
   
           * src/types/pa_vdate.C: FreeBSD 10 GPF fix (related to feature #36)
   
           * tests/results/131.processed: more tests for feature #1032
   
           * src/classes/date.C: minor fix related to feature #1032
   
           * operators.txt: ISO date creation documented (related to feature
             #1032)
   
           * operators.txt: iso-string documented (related to feature #1032)
   
           * tests/: 315.html, results/315.processed: more tests added
             (related to feature #1032)
   
           * tests/: 131.html, results/131.processed: date range checks
             updated (related to feature #36)
   
           * tests/: 315.html, results/057.processed, results/315.processed:
             test added for ISO date support (related to issue #315)
   
           * src/classes/date.C: more readable exceptions in date creation
             (related to ticket #1032)
   
   2015-09-18  moko
   
           * tests/: 202.html, results/202.processed: ^date.iso-string[] check
             added (related to issue #1032)
   
           * tests/results/256.processed, src/classes/json.C: iso-string
             documented (related to issue #1032)
   
           * tests/: 256.html, results/256.processed: ISO date check added
             (related to issue #1032)
   
           * tests/: 057.html, results/057.processed, results/224.processed:
             tests results updated after ISO date support implemented (related
             to feature #1032)
   
           * src/: classes/date.C, classes/image.C, types/pa_value.h,
             types/pa_vdate.C, types/pa_vdate.h: ISO 8601 dates support added,
             ^date::create[string] constructor formalized, ^date.iso-string[]
             added (implements feature #1032)
   
   2015-09-05  moko
   
           * operators.txt: actualized
   
           * operators.txt: date changes documented (related to ticket #36)
   
   2015-09-04  moko
   
           * src/types/pa_vdate.C: warning war
   
           * src/: classes/op.C, types/pa_vhashfile.C: warning war
   
   2015-09-03  moko
   
           * tests/results/096.processed: test result updated for 0..9999 year
             date range support (related to feature #36)
   
           * tests/: 314.html, results/314.processed: test for
             ^string:base64[], ^string:idna[], ^string:js-escape[] (related to
             bug #1031)
   
           * src/classes/string.C: Static calls fixed for ^string:base64[],
             ^string:idna[], ^string:js-escape[] (closes bug #1031)
   
           * Makefile.am, acsite.m4, configure.ac, configure.in: Warning war:
             configure.in -> configure.ac
   
           * configure, configure.in, src/include/pa_config_auto.h.in: more
             correct timezone check for FreeBSD Warning war: configure.in ->
             configure.ac
   
           * configure, configure.in, src/classes/Makefile.am,
             src/include/pa_config_auto.h.in, src/lib/cord/Makefile.am,
             src/lib/gd/Makefile.am, src/lib/json/Makefile.am,
             src/lib/memcached/Makefile.am, src/lib/pcre/Makefile.am,
             src/lib/sdbm/Makefile.am, src/lib/smtp/Makefile.am,
             src/main/Makefile.am, src/targets/apache/Makefile.am,
             src/targets/cgi/Makefile.am, src/types/Makefile.am: INCLUDES ->
             AM_CPPFLAGS (warning war) PA_DATE64 (0..9999 year date range)
             check added
   
           * src/types/pa_vdate.C: FreeBSD fixes + more robust code
   
           * tests/results/: 124.processed, 224.processed: test resuls updated
             for new date implementation (related to feature #36)
   
           * src/: classes/date.C, classes/image.C, include/pa_common.h,
             main/pa_common.C, types/pa_value.C, types/pa_vdate.C,
             types/pa_vdate.h: new double date implementation with internal
             support for extended 0..9999 year range, default timezone support
             (related to feature #36)
   
   2015-08-28  moko
   
           * src/types/pa_vmail.C: fixed $mail:received.date calculations
             (fixes bug #1030)
   
   2015-08-21  moko
   
           * src/classes/inet.C: snprintf size "bug" commented
   
           * src/main/pa_common.C: snprintf comments updated
   
   2015-08-16  moko
   
           * src/types/: pa_vdate.C, pa_vdate.h: logic moved to pa_vdate.C
   
   2015-08-11  moko
   
           * src/: classes/json.C, types/pa_value.C, types/pa_value.h,
             types/pa_vclass.C, types/pa_vobject.C: hash_json_string argument
             can be null (fixes bug #1029)
   
   2015-08-06  moko
   
           * src/types/: Makefile.am, pa_vdate.C, pa_vdate.h, types.vcproj:
             pa_vdate.C added
   
   2015-08-05  moko
   
           * tests/: 313.html, results/313.processed: test for
             ^table.count[columns] and ^table.flip[] with nameless tables
             (feature #1003)
   
           * src/: classes/table.C, include/pa_table.h, main/pa_table.C:
             max_cell added, now ^table.count[columns] and ^table.flip[] works
             correctly for nameless tables (implements feature #1003)
   
   2015-08-03  moko
   
           * tests/312.html: test for ^table.append[$hash] and
             ^table.insert[$hash] added (related to feature #1028)
   
           * src/classes/table.C: ^table.append[$hash] and
             ^table.insert[$hash] now supported (implements feature #1028)
   
           * tests/: 312.html, results/312.processed: test row copy in
             ^table.hash[; $.type[table] ] added (related to feature #1016)
   
           * src/classes/table.C: row copy now created in ^table.hash[;
             $.type[table] ] (related to feature #1016)
   
   2015-07-29  moko
   
           * tests/: 312.html, results/312.processed: test for ^table.delete[]
             added (related to feature #1016)
   
           * src/: classes/table.C, include/pa_table.h, main/pa_table.C:
             ^table.delete[] added to delete current row (related to feature
             1016)
   
   2015-07-28  moko
   
           * tests/: 312.html, results/312.processed: test for
             $table.column[value] and ^table.insert{row} (related to feature
             #1016)
   
           * src/: classes/table.C, include/pa_table.h, main/pa_table.C,
             types/pa_vtable.C, types/pa_vtable.h: $table.column[value] and
             ^table.insert{row} are now implemented (feature #1016)
   
           * src/include/pa_array.h: Optimization: bool reverse removed from
             append(), insert() added, memmove arguments order in remove()
             fixed (related to feature #1016)
   
   2015-07-23  moko
   
           * src/classes/json.C: tainted json and empty json exception added
             (implements feature #1015)
   
           * tests/: 311.html, results/311.processed: empty json and tainted
             json exception test added (related to issue #1015)
   
   2015-07-22  moko
   
           * tests/: 311.html, results/311.processed: test for UTF-8
             processing added
   
           * tests/: 311.html, results/311.processed: test for
             json_exception_with_source added (related to issue #394)
   
           * src/classes/json.C: json_exception_with_source added (implements
             feature #394)
   
   2015-06-29  moko
   
           * src/: classes/file.C, include/pa_dir.h, main/pa_dir.C:
             directories are now correctly determined if _d_type == DT_UNKNOWN
             (closes bug #1027)
   
   2015-06-10  moko
   
           * src/types/pa_vxnode.h: extern "C" not requred and causes build
             error if libxml has LIBXML_ICU_ENABLED.
   
   2015-06-04  moko
   
           * tests/099.html: ups, reverting
   
           * tests/: 099.html, 309.html, 310.html, results/309.processed,
             results/310.processed: tests for $response:body[ $.file[] ] and
             $response:last-modified added
   
           * src/main/pa_request.C: last-modified check fixed
   
   2015-06-03  moko
   
           * tests/: 204.html, 205.html, 293.html, results/204.processed,
             results/205.processed, results/293.processed: $response:headers
             logging added (tests for feature #1007)
   
           * src/: include/pa_common.h, include/pa_request.h,
             main/pa_request.C, types/pa_vmail.C, types/pa_vresponse.C:
             $response:headers are now in uppercase (closes feature #1007)
   
   2015-06-02  moko
   
           * src/: include/pa_memory.h, classes/math.C: some of -pedantic
             build errors reverted for clang compatibility
   
   2015-06-01  moko
   
           * src/include/pa_memory.h: -pedantic build errors fixed
   
           * src/classes/math.C: -pedantic build error fixed
   
           * src/classes/table.C: USE_STRINGSTREAM moved to the correct place
   
   2015-05-31  moko
   
           * src/classes/table.C: USE_STRINGSTREAM optimized
   
           * src/: classes/file.C, classes/math.C, include/pa_opcode.h,
             include/pa_string.h, lib/json/pa_json.h, main/compile_tools.h,
             main/pa_charset.C, main/pa_globals.C, main/pa_string.C,
             types/pa_vmail.C, types/pa_vmethod_frame.C, types/pa_vregex.C,
             types/pa_vxnode.h: warning war (-pedantic flag)
   
   2015-05-28  moko
   
           * tests/: 308.html, results/308.processed: test for
             ^table::create[$t;], etc work added (related to bug #975)
   
           * src/classes/table.C: check_option_param removed,
             ^table::create[$t;], etc now works (fixes bug #975)
   
   2015-05-27  moko
   
           * src/main/pa_request.C: Invalid response filename in gcc 4.9.2
             (Debian jessie) fixed (closes issue #1024)
   
           * tests/Makefile: sort added as in Debian jessie list become
             unsorted
   
   2015-05-18  moko
   
           * tests/: 201.html, results/201.processed: test for
             ^string.trim[what] feature #1022
   
           * src/classes/string.C: ^string.trim[what] now supported,
             implements feature #1022
   
   2015-05-17  moko
   
           * tests/results/185.processed: test result updated as feature #1021
             implemented (left/right accept negative parameter)
   
           * src/classes/string.C: left/right now accept negative parameter
             (implements feature #1021)
   
   2015-05-08  moko
   
           * src/classes/math.C: isalnum -> pa_isalnum
   
           * src/main/execute.C: optimization in getter-junction processing
             (related to issue #997)
   
   2015-05-07  moko
   
           * tests/: 307.html, results/307.processed: test for issue #997
             added
   
           * src/main/execute.C: process_getter result now checked if junction
             returned (closes issue #997)
   
           * tests/: 305.html, results/305.processed: sort added to ignore
             different order
   
           * src/types/pa_vxnode.C: & now untainted in $node.nodeValue
             assignment (closes issue #994)
   
           * tests/: 306.html, results/306.processed: test for issue #994
             added
   
           * tests/: 303.html, results/303.processed: two more errors tested
   
   2015-05-06  moko
   
           * tests/: 305.html, results/305.processed: test for name2ip &
             ip2name added (related to feature #992)
   
           * tests/: 303.html, 304.html, results/303.processed,
             results/304.processed: tests for idna conversion added (related
             to issue #849)
   
   2015-05-02  moko
   
           * src/classes/inet.C: ^inet:ip2name[] and ^inet:name2ip[]
             implemented
   
   2015-04-30  moko
   
           * src/main/pa_http.C: idna_host added, related to issue #849
   
           * src/main/pa_http.C: set_addr corrected, pa_idna_encode call added
             (related to issue #849)
   
   2015-04-24  moko
   
           * src/types/pa_vjunction.C: warning war
   
           * src/lib/punycode/: pa_idna.h, pa_punycode.h: code style
             unification
   
           * src/lib/punycode/pa_idna.c: warning war
   
   2015-04-22  moko
   
           * src/main/main.vcproj: punycode include path added
   
           * src/lib/punycode/pa_idna.c: windows compile error fixed
   
           * src/lib/punycode/pa_idna.c: warning war
   
           * parser3.sln, src/lib/punycode/punycode.vcproj: punycode windows
             project file added
   
           * src/lib/punycode/pa_convert_utf.c: debug compilation fix
   
           * src/include/pa_memory.h: warning war
   
           * src/: classes/string.C, include/pa_common.h, main/pa_common.C:
             ^string:idna[xn--...], ^string.idna[] - idna conversion support
             implemented (related to feature #849)
   
           * configure.in, src/main/Makefile.am,
             src/targets/apache/Makefile.am, src/targets/cgi/Makefile.am:
             libpunycode added in Unix
   
   2015-04-21  moko
   
           * configure.in: large files support
   
   2015-04-15  moko
   
           * src/lib/punycode/: Makefile.am, pa_convert_utf.c,
             pa_convert_utf.h, pa_idna.c, pa_idna.h, pa_punycode.c,
             pa_punycode.h: initial version for punycode/idna support library
             (ticket #849)
   
   2015-04-08  moko
   
           * src/: classes/curl.C, classes/date.C, classes/file.C,
             classes/image.C, classes/mail.C, classes/reflection.C,
             classes/string.C, classes/xnode.C, include/pa_request.h,
             include/pa_string.h, include/pa_stylesheet_connection.h,
             main/compile.y, main/compile_tools.h, main/execute.C,
             main/pa_common.C, main/pa_request.C, main/pa_string.C,
             main/pa_xml_io.C, main/untaint.C, types/pa_vclass.C,
             types/pa_vcookie.C, types/pa_vfile.C, types/pa_vform.C,
             types/pa_vmethod_frame.h, types/pa_vstateless_class.h,
             types/pa_wwrapper.h, main/compile.tab.C: removed most of the
             clang compiler warnings (closes issue #1018)
   
           * src/include/pa_string.h: String::Body comparation operators with
             char * added (related to issue #958)
   
   2015-04-07  moko
   
           * src/main/compile.tab.C: YYMALLOC/YYFREE defined to
             pa_malloc/pa_free to remove system malloc/free usage (related to
             issue #1018)
   
           * src/: classes/table.C, classes/xdoc.C, doc/memory.dox,
             include/pa_hash.h, include/pa_memory.h, lib/gd/gif.C,
             lib/gd/gif.h, lib/smtp/smtp.C, main/compile.y, main/pa_charset.C,
             main/pa_http.C, main/pa_request.C, main/pa_string.C,
             main/pa_xml_io.C, targets/apache/mod_parser3_core.C,
             types/pa_vconsole.h, types/pa_vdouble.h, types/pa_vfile.C,
             types/pa_vform.C, types/pa_vint.h: new(UseGC) replaced with new,
             malloc/strdup/free replaced with pa_ version and checks for
             accidental use of non-pa_ version added (related to issue #1018)
   
   2015-04-03  moko
   
           * buildall: pcre-8.33 -> pcre-8.36
   
           * src/: main/compile.y, classes/form.C, classes/mail.C,
             classes/op.C, classes/string.C, main/compile.tab.C,
             main/compile_tools.C, main/pa_http.C, main/pa_request.C,
             main/pa_sql_driver_manager.C, types/pa_vfile.C,
             types/pa_vhashfile.C: C++11 compilation errors fixed (related to
             ticket #958)
   
           * src/: classes/file.C, include/pa_common.h, include/pa_sapi.h,
             main/pa_common.C, main/pa_http.C, main/pa_request.C,
             targets/apache/mod_parser3_core.C, targets/cgi/parser3.C,
             targets/isapi/parser3isapi.C, types/pa_venv.C, types/pa_vform.C,
             types/pa_vform.h, types/pa_vrequest.C, types/pa_vrequest.h:
             $request:headers, $request:method added (implements feature
             #1007)
   
   2015-03-17  misha
   
           * tests/302.html: - test for
             ^json:string[...;$._default[method-name]]
   
           * src/: classes/json.C, types/pa_value.C, types/pa_value.h,
             types/pa_vclass.C, types/pa_vclass.h, types/pa_vobject.C: - if
             option $._default[method-name] is specified in ^json:string[], a
             method with specified name will be called for classes/objects
             serialization ( new feature: #982 )
   
   2015-03-16  misha
   
           * src/: include/pa_opcode.h, main/compile.y, main/compile_tools.C,
             main/compile_tools.h, main/execute.C, types/pa_vconsole.h,
             types/pa_vcookie.C, types/pa_vcookie.h, types/pa_venv.C,
             types/pa_venv.h, types/pa_vform.C, types/pa_vform.h,
             types/pa_vhashfile.h, types/pa_vjunction.C, types/pa_vjunction.h,
             types/pa_vmail.C, types/pa_vmail.h, types/pa_vmath.h,
             types/pa_vmemory.h, types/pa_vmethod_frame.C,
             types/pa_vmethod_frame.h, types/pa_vregex.C, types/pa_vrequest.C,
             types/pa_vrequest.h, types/pa_vstateless_class.C,
             types/pa_vstateless_class.h, types/pa_vxdoc.C, types/pa_vxdoc.h,
             types/pa_vxnode.C, types/pa_vxnode.h: - $var.CLASS &
             $var.CLASS_NAME now have special opcodes. This can be switched
             off by commenting #define OPTIMIZE_BYTECODE_GET_ELEMENT__SPECIAL
             on pa_opcode.h ( new feature: #844 )
   
   2015-03-15  misha
   
           * tests/075.html: - test for $response:header[]
   
           * src/types/pa_vresponse.C: - $response:header[] deletes header
             that was set earlie ( new feature: #1001 )
   
   2015-03-12  misha
   
           * tests/246.html: - more tests for ^hash._at[]
   
           * src/: classes/hash.C, include/pa_hash.h: - ^õýø._at[...] now
             accepts second param [key|value|hash] ( new feature: #1012 )
   
   2015-03-09  moko
   
           * src/types/pa_vmail.C: exception for everything but
             $mail:received, closes issue #1011
   
   2015-02-20  moko
   
           * tests/: 275.html, results/275.processed: hex detection in
             pa_atoui fix test (closes issue #1010)
   
           * src/main/pa_string.C: hex detection in pa_atoui fixed (closes
             issue #1010)
   
   2015-02-17  moko
   
           * src/types/pa_vmail.C: closes issue #1009 - mail content should be
             tainted.
   
   2015-02-03  misha
   
           * tests/301.html: - test for ^json:string($double) causes
             exception. bugfix: #1008
   
           * src/classes/json.C: - ^json:string($double) causes exception.
             bugfix: #1008
   
           * tests/014.html: - updated for work with ^hash.delete[]
   
   2015-01-12  misha
   
           * src/: classes/form.C, include/pa_common.h,
             include/pa_request_info.h, main/pa_common.C, types/pa_vform.C,
             types/pa_vform.h: - supports body with PUT method as well ( new
             feature: #1006 )
   
           * src/classes/file.C: - warnings war
   
   2015-01-11  misha
   
           * tests/300.html: - test for ^hash.delete[] is added
   
           * src/classes/hash.C: - ^hash.delete[] clear all hash ( new
             feature: #989 ) - tiny optimization in intersects
   
   2015-01-06  moko
   
           * src/types/pa_vmail.C: file names transcode added, to and cc added
             with transcode, attachments detection fixed
   
           * src/main/pa_request.C: filling mail received after cgi/auto.p
             load to allow charset switch (related to issue #996)
   
   2014-12-31  moko
   
           * src/types/pa_vmail.C: from and subject now transcoded if not
             UTF-8 source charset (fixes issue 996)
   
           * src/main/pa_exception.C: fixed string from stack bug (closes
             issue #1000)
   
   2014-12-11  misha
   
           * src/types/pa_vhashfile.C: - check if key is not empty before
             access ( bug fix: #1005 )
   
   2014-11-13  misha
   
           * src/main/compile.y: - PC.append does not reset to false while
             creating a new class. bugfix: #990
   
           * tests/299.html: - test for creation class after working with
             partial class (create+append)
   
           * src/types/pa_vobject.C: - @GET[def] always returns true. bugfix:
             #995
   
           * tests/232.html: - test for @get[def] added
   
   2014-10-12  moko
   
           * src/lib/pcre/pcre_internal.vcproj: correct path
   
           * src/: classes/classes.vcproj, lib/cord/cord.vcproj,
             lib/ltdl/ltdl.vcproj, lib/md5/md5.vcproj,
             lib/pcre/pcre_internal.vcproj, main/main.vcproj,
             targets/apache/ApacheModuleParser3.vcproj,
             targets/apache/ApacheModuleParser3Core.vcproj,
             targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj,
             types/types.vcproj: project GUID inserted in *.vcproj for correct
             conversion in newer VS versions
   
           * parser3.sln, src/lib/pcre/pcre_internal.vcproj:
             pcre_internal.vcproj added
   
   2014-08-28  moko
   
           * src/lib/pcre/: Makefile.am, pa_pcre_chartables.c,
             pa_pcre_internal.h, pa_pcre_valid_utf8.c: _pcre_default_tables
             and pcre_valid_utf are copied to parser3 code (fixes issue #991)
   
   2014-06-30  misha
   
           * tests/298.html: - tests for ^reflection:def[class;className]
             added
   
           * src/classes/reflection.C: - ^reflection:def[class;className]
             added ( new feature: #918 )
   
   2014-06-29  misha
   
           * src/classes/table.C: - ^table::create[unsupported data] -
             exception comment changed to "body must be table or code" ( bug
             fix: #951 )
   
           * tests/: 261.html, results/261.processed: - tests for
             ^json:string[...;$.void[null|string]] added
   
           * src/: classes/json.C, types/pa_value.h, types/pa_vvoid.h: - new
             option $.void[string|null] added to ^json:string[...] ( new
             feature: #952 )
   
   2014-06-28  moko
   
           * src/classes/curl.C: $.charset now processed before other curl
             options (closes issue #980)
   
   2014-05-23  misha
   
           * src/classes/json.C: - bug fix: #987
   
   2014-05-04  misha
   
           * tests/: 253.html, 253_json.txt: - test for
             ^json:parse[$.int(false)] is added
   
           * src/classes/json.C: - To ^json:parse[] added option $.int(bool,
             default true). The option is similar to $.double(bool) but for
             integers.
   
   2014-05-01  moko
   
           * src/classes/file.C: "PARSER_VERSION" -> PARSER_VERSION ( bugfix:
             #12 )
   
   2014-04-16  moko
   
           * src/main/pa_http.C: response-charset option should finally work
             now (fix for issue #867)
   
           * src/main/pa_http.C: response-charset option should work now (fix
             for issue #867)
   
   2014-03-07  moko
   
           * buildall: libgc moved
   
           * buildall: libgc moved
   
   2013-12-29  moko
   
           * src/classes/string.C: ^string:js-unescape result now tainted,
             closes issue #966
   
           * tests/: 186.html, results/186.processed: ^string:js-unescape
             result now tainted, issue #966
   
   2013-12-03  moko
   
           * src/: classes/memcached.C, types/pa_vmemcached.C,
             types/pa_vmemcached.h: memcached open $.skip-connect(true|false)
             option was added for http://www.parser.ru/forum/?id=79343
   
           * src/classes/file.C: bugfix for
             http://www.parser.ru/forum/?id=79337
   
   2013-11-05  moko
   
           * configure.in, src/include/pa_version.h: 3.4.3 -> 3.4.4b
   
           * src/main/pa_globals.C: spelling fixed
   
   2013-10-29  moko
   
           * src/lib/json/json.vcproj: json.c -> pa_json.C
   
           * src/lib/json/pa_json.C: C++ compatibility addes, related to issue
             #892
   
           * src/: classes/json.C, lib/json/Makefile.am, lib/json/json.c,
             lib/json/json.h, lib/json/pa_json.C: json.c -> pa_json.C (for
             exceptions to be thrown thougth json library), related to issue
             #892
   
           * src/main/pa_charset.C: avoid compilation bug in Debian 6.0.8 x32,
             related to issue #896
   
   2013-10-24  moko
   
           * configure.in, src/include/pa_version.h: 3.4.3rc -> 3.4.3
   
   2013-10-23  moko
   
           * README: actualization
   
   2013-10-22  moko
   
           * src/targets/apache/mod_parser3.c: Adopted apache 2.4
             compatibility patch from Sergey Kirpichev
   
           * tests/: 297.html, results/297.processed: non-working getter fix
             test for issue #948
   
           * src/: include/pa_request.h, main/pa_request.C: Now getter is not
             called when saving value of $match variable in ^string.match[] to
             increase compatibility (related to issue #948).
   
           * src/: include/pa_request.h, targets/cgi/parser3.C: minor header
             usage optimization
   
   2013-10-21  moko
   
           * tests/: 182.html, results/182.processed: local path removed for
             compatibility
   
           * tests/: 244.html, 253.html, 254.html, 275.html, 281.html,
             results/244.processed, results/253.processed,
             results/254.processed, results/275.processed,
             results/281.processed: try_catch -> try-catch
   
           * tests/: 288.html, 294.html, 296.html, results/288.processed,
             results/294.processed, results/296.processed: try_catch ->
             try-catch
   
   2013-10-20  moko
   
           * tests/: 296.html, results/296.processed: test for xsl exception
             for issue #938 added.
   
           * src/: include/pa_xml_exception.h,
             main/pa_stylesheet_connection.C: forgotten to be replaced
             XmlException is now replaced (once again closes issue #938)
   
   2013-10-18  moko
   
           * buildall: disable clock_gettime detection to avoid librt linking
             (which in turn depends on libpthread), related to issue #943
   
   2013-10-18  misha
   
           * src/: classes/classes.vcproj, lib/gd/gd.vcproj,
             lib/smtp/smtp.vcproj, main/main.vcproj,
             targets/apache/ApacheModuleParser3Core.vcproj,
             targets/cgi/parser3.vcproj, targets/isapi/parser3isapi.vcproj,
             types/types.vcproj: - new locations for libxml2 includes where
             added to vcproj files
   
   2013-10-18  moko
   
           * src/classes/: hashfile.C, op.C: hopefully last part of issue #948
             fix
   
           * tests/: 295.html, results/295.processed: test for issue #948
             updated
   
           * src/classes/table.C: hopefully last lost part for issue #948 fix.
             :)
   
           * tests/: 295.html, results/295.processed: test for issue #948
             added
   
           * src/: classes/hash.C, classes/string.C, classes/table.C,
             include/pa_request.h, types/pa_method.h: for getters and setters
             to be executed request.put_element should be called, not
             context.put_element (fixes issue #948)
   
 2013-10-17  moko  2013-10-17  moko
   
         * src/classes/xdoc.C: libxml 2.9.1 compatibility with define          * src/classes/xdoc.C: libxml 2.9.1 compatibility with define
Line 173 Line 4589
   
 2013-07-31  moko  2013-07-31  moko
   
         * src/lib/json/json.c: STATE__X -> STATE_XX for cygwin compilation          * src/lib/json/: json.c, pa_json.C: STATE__X -> STATE_XX for cygwin
           having #define _S            compilation having #define _S
   
         * src/main/pa_globals.C: cleanup          * src/main/pa_globals.C: cleanup
   
Line 183 Line 4599
         * src/: classes/table.C, include/pa_common.h, main/pa_charset.C,          * src/: classes/table.C, include/pa_common.h, main/pa_charset.C,
           main/pa_common.C: vs2003 warning war            main/pa_common.C: vs2003 warning war
   
         * src/lib/json/json.c: vs2003 warning war          * src/lib/json/: json.c, pa_json.C: vs2003 warning war
   
         * src/lib/json/json.c: vs2003 compilation fix          * src/lib/json/: json.c, pa_json.C: vs2003 compilation fix
   
         * src/lib/md5/pa_sha2.c: warning war          * src/lib/md5/pa_sha2.c: warning war
   
 2013-07-29  moko  2013-07-29  moko
   
         * src/lib/json/: json.c, json.h: some libjson patches from github          * src/lib/json/: json.c, json.h, pa_json.C, pa_json.h: some libjson
             patches from github
   
         * src/: classes/bool.C, classes/double.C, classes/int.C,          * src/: classes/bool.C, classes/double.C, classes/int.C,
           classes/memcached.C, include/pa_config_includes.h,            classes/memcached.C, include/pa_config_includes.h,
Line 199 Line 4616
   
         * src/lib/json/json.vcproj: C++ -> C          * src/lib/json/json.vcproj: C++ -> C
   
         * src/lib/json/json.c: C++ warning revert          * src/lib/json/: json.c, pa_json.C: C++ warning revert
   
         * src/lib/json/json.c: windows compatibility          * src/lib/json/: json.c, pa_json.C: windows compatibility
   
         * src/lib/json/json.c: windows compatibility          * src/lib/json/: json.c, pa_json.C: windows compatibility
   
         * src/lib/json/: json.c: warning war          * src/lib/json/: json.c, pa_json.C: warning war
   
         * src/lib/json/json.c: win32 compilation issues fixes          * src/lib/json/: json.c, pa_json.C: win32 compilation issues fixes
   
         * src/include/pa_config_fixed.h: uint16_t added          * src/include/pa_config_fixed.h: uint16_t added
   
Line 215 Line 4632
   
         * src/: classes/json.C, lib/json/JSON_parser.C,          * src/: classes/json.C, lib/json/JSON_parser.C,
           lib/json/JSON_parser.h, lib/json/Makefile.am, lib/json/json.c,            lib/json/JSON_parser.h, lib/json/Makefile.am, lib/json/json.c,
           lib/json/json.h, lib/json/json.vcproj: JSON_parser with non-free            lib/json/json.h, lib/json/json.vcproj, lib/json/pa_json.C,
           licence is replaced with similar GPL licenced libjson (fixes            lib/json/pa_json.h: JSON_parser with non-free licence is replaced
           issue #892)            with similar GPL licenced libjson (fixes issue #892)
   
 2013-07-25  moko  2013-07-25  moko
   
Line 262 Line 4679
   
         * src/types/pa_vmemcached.C: LT_MODULE_EXT used          * src/types/pa_vmemcached.C: LT_MODULE_EXT used
   
         * bin/auto.p.dist.in: libpq.so -> libpq.  
   
         * src/classes/curl.C: LT_MODULE_EXT used          * src/classes/curl.C: LT_MODULE_EXT used
   
         * src/include/pa_config_fixed.h: LT_MODULE_EXT defined          * src/include/pa_config_fixed.h: LT_MODULE_EXT defined
Line 382 Line 4797
   
 2013-07-07  moko  2013-07-07  moko
   
         * bin/auto.p.dist.in: windows-1251 commented to remove auto.p  
           dependense from $charsetsdir directory existance and content (and  
           UTF-8 is default allready)  
   
         * AUTHORS: + misha + moko. :)          * AUTHORS: + misha + moko. :)
   
 2013-07-06  moko  2013-07-06  moko
Line 835 Line 5246
   
         * src/targets/apache/Makefile.am: updated for libtool usage          * src/targets/apache/Makefile.am: updated for libtool usage
   
         * bin/auto.p.dist.in: .cfg removed from charset names.  
   
         * buildall-without-xml: --with-included-ltdl added          * buildall-without-xml: --with-included-ltdl added
   
         * buildall-without-xml: sync with buildall-with-xml          * buildall-without-xml: sync with buildall-with-xml
Line 930 Line 5339
           debian/patches/101_pcre.patch - local copy of pcre_internal.h            debian/patches/101_pcre.patch - local copy of pcre_internal.h
           extracts now used old trash removed            extracts now used old trash removed
   
         * bin/auto.p.dist.in: all charsets are listed, utf-8 by default,  
           rare charsets/drivers are commented, sql driver quessing removed  
           (debian/patches/103_auto_p.patch)  
   
         * etc/parser3.charsets/Makefile.am: charsets now in share          * etc/parser3.charsets/Makefile.am: charsets now in share
           (debian/patches/104_automake.patch) + all charsets are copied            (debian/patches/104_automake.patch) + all charsets are copied
   
Line 5495 Line 9900
   
 2007-02-20  misha  2007-02-20  misha
   
         * bin/auto.p.dist.in: - added lines for sqlite  
   
         * configure.in: - added some strings for sqlite detection          * configure.in: - added some strings for sqlite detection
   
 2007-02-19  misha  2007-02-19  misha
Line 5756 Line 10159
   
         * src/classes/file.C: - empty args in file::exec removed now          * src/classes/file.C: - empty args in file::exec removed now
   
 2006-09-11  misha  
   
         * bin/auto.p.dist.in: - 2 errors were fixed - table::set was  
           replaced to table::create - some changes in text/code formatting  
   
 2006-09-03  paf  2006-09-03  paf
   
         * src/classes/file.C: proper tainting of          * src/classes/file.C: proper tainting of
Line 5816 Line 10214
           src/types/pa_vhashfile.C, src/types/pa_vhashfile.h,            src/types/pa_vhashfile.C, src/types/pa_vhashfile.h,
           src/types/pa_vmail.C, src/types/pa_vresponse.C,            src/types/pa_vmail.C, src/types/pa_vresponse.C,
           src/types/pa_vstatus.C, src/types/types.vcproj,            src/types/pa_vstatus.C, src/types/types.vcproj,
           tests/descript.ion, www/htdocs/_bug.html, www/htdocs/_bug.xsl: +            tests/descript.ion: + ^break[] ^continue[], in ^for, ^while,
           ^break[] ^continue[], in ^for, ^while, ^menu,            ^menu, ^hash/hashfile.foreach
           ^hash/hashfile.foreach  
   
         * gnu.vcproj, parser3.sln, src/classes/classes.vcproj,          * gnu.vcproj, parser3.sln, src/classes/classes.vcproj,
           src/classes/file.C, src/classes/hash.C, src/classes/image.C,            src/classes/file.C, src/classes/hash.C, src/classes/image.C,
Line 5844 Line 10241
           src/types/pa_value.h, src/types/pa_vcookie.C,            src/types/pa_value.h, src/types/pa_vcookie.C,
           src/types/pa_vmail.C, src/types/pa_vresponse.C,            src/types/pa_vmail.C, src/types/pa_vresponse.C,
           src/types/pa_vstatus.C, src/types/types.vcproj,            src/types/pa_vstatus.C, src/types/types.vcproj,
           tests/descript.ion, www/htdocs/_bug.html, www/htdocs/_bug.xsl: !            tests/descript.ion: ! switched to VS2005 (projects and
           switched to VS2005 (projects and object<info explicitly            object<info explicitly typed>.for_each(, info)) +
           typed>.for_each(, info)) + $response:field[] setting void means            $response:field[] setting void means removing + grammar $name`
           removing + grammar $name` name stops now, for mysql `$field` +            name stops now, for mysql `$field` + started ^break[]
           started ^break[] ^continue[], in ^for. TODO: to other iterators            ^continue[], in ^for. TODO: to other iterators (while, menu,
           (while, menu, foreach) + all log messages += [uri=, method=, cl=]            foreach) + all log messages += [uri=, method=, cl=]
   
         * buildall-with-xml: merged . ftp paths update          * buildall-with-xml: merged . ftp paths update
   
Line 5922 Line 10319
           src/lib/ltdl/acinclude.m4, src/lib/ltdl/config.guess,            src/lib/ltdl/acinclude.m4, src/lib/ltdl/config.guess,
           src/lib/ltdl/config.sub, src/lib/ltdl/configure.in,            src/lib/ltdl/config.sub, src/lib/ltdl/configure.in,
           src/lib/ltdl/install-sh, src/lib/ltdl/ltmain.sh,            src/lib/ltdl/install-sh, src/lib/ltdl/ltmain.sh,
           src/lib/ltdl/missing, www/htdocs/_bug.html: . merged from 3.2.1            src/lib/ltdl/missing: . merged from 3.2.1
   
         * Makefile.am, src/lib/ltdl/Makefile.am: . now site.m4 also          * Makefile.am, src/lib/ltdl/Makefile.am: . now site.m4 also
           packaged when 'make dist', so do configure companion files in            packaged when 'make dist', so do configure companion files in
Line 5956 Line 10353
   
 2005-12-21  paf  2005-12-21  paf
   
         * src/main/compile.tab.C, src/main/main.vcproj,          * src/main/: compile.tab.C, main.vcproj: . win32: grammar is now
           www/htdocs/_bug.html: . win32: grammar is now compiled with bison            compiled with bison 1.875b, it reports unexpected token names
           1.875b, it reports unexpected token names  
   
 2005-12-19  paf  2005-12-19  paf
   
         * src/main/compile.tab.C, src/types/pa_vxnode.h,          * src/: main/compile.tab.C, types/pa_vxnode.h: ! bugfix xnode now
           www/htdocs/_bug.html, www/htdocs/_bug.xsl: ! bugfix xnode now  
           holds a link to xmlNode to prevent premature gc(xmlNode)            holds a link to xmlNode to prevent premature gc(xmlNode)
   
         * src/classes/classes.vcproj, src/include/pa_config_fixed.h,          * src/classes/classes.vcproj, src/include/pa_config_fixed.h,
Line 6059 Line 10454
           tests/results/143.processed, tests/results/144.processed,            tests/results/143.processed, tests/results/144.processed,
           tests/results/145.processed, tests/results/146.processed,            tests/results/145.processed, tests/results/146.processed,
           tests/results/147.processed, tests/results/148.processed,            tests/results/147.processed, tests/results/148.processed,
           tests/results/149.processed, www/htdocs/_bug.html: . removed            tests/results/149.processed: . removed .nodeValue from all node
           .nodeValue from all node types other than 5 (grabbed piece from            types other than 5 (grabbed piece from gdome)
           gdome)  
   
         * tests/: 137.html, results/137.processed: . not handled this case          * tests/: 137.html, results/137.processed: . not handled this case
           yet. code does not hang from inserting parent into child,            yet. code does not hang from inserting parent into child,
Line 6075 Line 10469
   
 2005-12-16  paf  2005-12-16  paf
   
         * tests/146.html, tests/147.html, tests/148.html,          * tests/: 146.html, 147.html, 148.html: . more tests
           www/htdocs/_bug.html: . more tests  
   
         * src/classes/xnode.C: . also bark on possible errors          * src/classes/xnode.C: . also bark on possible errors
   
         * src/types/: pa_vxdoc.C, pa_vxnode.C, pa_vxnode.h: + xdoc DOM          * src/types/: pa_vxdoc.C, pa_vxnode.C, pa_vxnode.h: + xdoc DOM
           props            props
   
         * www/htdocs/_bug.html: ! fixed overoptimized ^call(false) case.  
           (confused it with ^call[] case)  
   
         * src/: types/pa_value.h, types/pa_vvoid.h, main/compile.tab.C,          * src/: types/pa_value.h, types/pa_vvoid.h, main/compile.tab.C,
           main/compile.y: merged from HEAD ! fixed overoptimized            main/compile.y: merged from HEAD ! fixed overoptimized
           ^call(false) case. (confused it with ^call[] case)            ^call(false) case. (confused it with ^call[] case)
Line 6174 Line 10564
         * INSTALL, configure.in, src/lib/Makefile.am: . sweetest part [no          * INSTALL, configure.in, src/lib/Makefile.am: . sweetest part [no
           glib/gdome in INSTALL and patches]            glib/gdome in INSTALL and patches]
   
         * src/classes/xdoc.C, src/classes/xnode.C, src/classes/xnode.h,          * src/: classes/xdoc.C, classes/xnode.C, classes/xnode.h,
           src/include/pa_charset.h, src/include/pa_config_includes.h,            include/pa_charset.h, include/pa_config_includes.h,
           src/include/pa_globals.h, src/include/pa_memory.h,            include/pa_globals.h, include/pa_memory.h, include/pa_request.h,
           src/include/pa_request.h, src/include/pa_xml_exception.h,            include/pa_xml_exception.h, lib/cord/Makefile.am,
           src/lib/cord/Makefile.am, src/lib/cord/cord.vcproj,            lib/cord/cord.vcproj, lib/cord/cordbscs.c, lib/cord/cordprnt.c,
           src/lib/cord/cordbscs.c, src/lib/cord/cordprnt.c,            lib/cord/cordxtra.c, main/compile.tab.C, main/pa_charset.C,
           src/lib/cord/cordxtra.c, src/main/compile.tab.C,            main/pa_globals.C, main/pa_memory.C, main/pa_request.C,
           src/main/pa_charset.C, src/main/pa_globals.C,            main/pa_stylesheet_connection.C, main/pa_xml_exception.C,
           src/main/pa_memory.C, src/main/pa_request.C,            types/pa_vxdoc.C, types/pa_vxdoc.h, types/pa_vxnode.C,
           src/main/pa_stylesheet_connection.C, src/main/pa_xml_exception.C,            types/pa_vxnode.h: . started killing gdome
           src/types/pa_vxdoc.C, src/types/pa_vxdoc.h,  
           src/types/pa_vxnode.C, src/types/pa_vxnode.h,  
           www/htdocs/.htaccess, www/htdocs/_bug.html: . started killing  
           gdome  
   
 2005-12-13  paf  2005-12-13  paf
   
Line 6220 Line 10606
           src/main/pa_charset.C, src/main/pa_common.C,            src/main/pa_charset.C, src/main/pa_common.C,
           src/main/pa_globals.C, src/main/pa_string.C,            src/main/pa_globals.C, src/main/pa_string.C,
           src/targets/cgi/getopt.c, src/targets/isapi/parser3isapi.C,            src/targets/cgi/getopt.c, src/targets/isapi/parser3isapi.C,
           src/types/pa_vmail.C, www/htdocs/.htaccess, www/htdocs/_bug.txt,            src/types/pa_vmail.C: . merged latest fixes from 3.2.0
           www/htdocs/auto.p: . merged latest fixes from 3.2.0  
   
 2005-12-08  paf  2005-12-08  paf
   
Line 6241 Line 10626
         * src/targets/isapi/parser3isapi.C: . merged from 3.1.5 release          * src/targets/isapi/parser3isapi.C: . merged from 3.1.5 release
           link fixes            link fixes
   
         * src/classes/date.C, src/include/pa_config_fixed.h,          * src/: classes/date.C, include/pa_config_fixed.h,
           src/main/compile.tab.C, src/main/compile.y,            main/compile.tab.C, main/compile.y, main/compile_tools.h,
           src/main/compile_tools.h, src/main/pa_charset.C,            main/pa_charset.C, main/pa_common.C, main/pa_globals.C,
           src/main/pa_common.C, src/main/pa_globals.C,            main/pa_string.C, targets/cgi/getopt.c: . less warnings
           src/main/pa_string.C, src/targets/cgi/getopt.c,  
           www/htdocs/_bug.html, www/htdocs/_bug.txt, www/htdocs/auto.p: .  
           less warnings  
   
         * src/include/pa_config_fixed.h: . removed outdated string origins          * src/include/pa_config_fixed.h: . removed outdated string origins
           [in current storage scheme there's no place for them. someday we            [in current storage scheme there's no place for them. someday we
Line 6326 Line 10708
   
         * src/classes/op.C: merged from HEAD + ^while(){}[SEPARATOR]          * src/classes/op.C: merged from HEAD + ^while(){}[SEPARATOR]
   
         * src/classes/op.C, www/htdocs/_bug.html, www/htdocs/auto.p: +          * src/classes/op.C: + ^while(){}[SEPARATOR]
           ^while(){}[SEPARATOR]  
   
         * src/include/pa_array.h: + optimistics added: all arrays (table          * src/include/pa_array.h: + optimistics added: all arrays (table
           rows) now grow size*=2, like in .NET ArrayList.EnsureCapacity,            rows) now grow size*=2, like in .NET ArrayList.EnsureCapacity,
Line 6357 Line 10738
   
         * configure.in: + trying to find glib2-config          * configure.in: + trying to find glib2-config
   
         * src/classes/file.C, src/include/pa_common.h, src/main/execute.C,          * src/: classes/file.C, include/pa_common.h, main/execute.C,
           src/main/pa_common.C, src/main/pa_request.C,            main/pa_common.C, main/pa_request.C: merged from HEAD: ! changed
           www/htdocs/_bug.html: merged from HEAD: ! changed  
           file/dir_readable to simple file/dir_exist, this would help in            file/dir_readable to simple file/dir_exist, this would help in
           situations "class not found because .p file has bad rights" << in            situations "class not found because .p file has bad rights" << in
           that case error would be explicit "access denied to 'this' file"            that case error would be explicit "access denied to 'this' file"
Line 6379 Line 10759
           $.QUERY_STRING[^untaint[URI]{aaa=$form:text} << now %HH would be            $.QUERY_STRING[^untaint[URI]{aaa=$form:text} << now %HH would be
           encoded in $.charset charset            encoded in $.charset charset
   
         * src/classes/file.C, www/htdocs/_bug.html, www/htdocs/_bug.pl,          * src/classes/file.C: +! ^file::exec/cgi[script;$.charset[changed]
           www/htdocs/_bug.txt: +! ^file::exec/cgi[script;$.charset[changed]  
           $.QUERY_STRING[^untaint[URI]{aaa=$form:text} << now %HH would be            $.QUERY_STRING[^untaint[URI]{aaa=$form:text} << now %HH would be
           encoded in $.charset charset            encoded in $.charset charset
   
Line 6407 Line 10786
         * src/classes/op.C: merged from HEAD: + $exception.handled[cache]          * src/classes/op.C: merged from HEAD: + $exception.handled[cache]
           now reports original exception if we have no old cache            now reports original exception if we have no old cache
   
         * src/classes/op.C, www/htdocs/_bug.html: +          * src/classes/op.C: + $exception.handled[cache] now reports
           $exception.handled[cache] now reports original exception if we            original exception if we have no old cache
           have no old cache  
   
         * src/classes/op.C, src/include/pa_string.h, src/main/untaint.C,  
           www/htdocs/_bug.html: merged from HEAD: + ^taint/untaint[regex]  
           << escapes these: \^$.[]|()?*+{}  
   
         * src/classes/op.C, src/include/pa_string.h, src/main/untaint.C,          * src/: classes/op.C, include/pa_string.h, main/untaint.C: merged
           www/htdocs/_bug.html: + ^taint/untaint[regex] << escapes these:            from HEAD: + ^taint/untaint[regex] << escapes these:
           \^$.[]|()?*+{}            \^$.[]|()?*+{}
   
           * src/: classes/op.C, include/pa_string.h, main/untaint.C: +
             ^taint/untaint[regex] << escapes these: \^$.[]|()?*+{}
   
         * src/types/pa_vdate.h: ! date TZ save/restore stored pointer to          * src/types/pa_vdate.h: ! date TZ save/restore stored pointer to
           getenv-ed variable, which does not work both on win32&unix.            getenv-ed variable, which does not work both on win32&unix.
           copied old TZ value now            copied old TZ value now
Line 6434 Line 10811
         * src/types/pa_vresponse.C: merged from HEAD: + $response:headers          * src/types/pa_vresponse.C: merged from HEAD: + $response:headers
           access to internal hash            access to internal hash
   
         * src/types/pa_vresponse.C, www/htdocs/_bug.html: +          * src/types/pa_vresponse.C: + $response:headers access to internal
           $response:headers access to internal hash            hash
   
         * src/targets/isapi/parser3isapi.C: merged from HEAD: +          * src/targets/isapi/parser3isapi.C: merged from HEAD: +
           GC_large_alloc_warn_suppressed=0 between requests [apache mod_,            GC_large_alloc_warn_suppressed=0 between requests [apache mod_,
           isapi] this reduces number of "GC Warning: Repeated allocation of            isapi] this reduces number of "GC Warning: Repeated allocation of
           very large block" messages to only important onces            very large block" messages to only important onces
   
         * src/targets/isapi/parser3isapi.C, www/htdocs/_bug.html: +          * src/targets/isapi/parser3isapi.C: +
           GC_large_alloc_warn_suppressed=0 between requests [apache mod_,            GC_large_alloc_warn_suppressed=0 between requests [apache mod_,
           isapi] this reduces number of "GC Warning: Repeated allocation of            isapi] this reduces number of "GC Warning: Repeated allocation of
           very large block" messages to only important onces            very large block" messages to only important onces
Line 6459 Line 10836
         * src/main/pa_common.C: + removed "use either uri with ?params or          * src/main/pa_common.C: + removed "use either uri with ?params or
           $.form option" limitation            $.form option" limitation
   
         * src/classes/file.C, src/classes/string.C,          * src/: classes/file.C, classes/string.C, include/pa_common.h,
           src/include/pa_common.h, src/main/pa_common.C,            main/pa_common.C: merged from HEAD: + ^file.base64[] encode +
           www/htdocs/_bug.html: merged from HEAD: + ^file.base64[] encode +  
           ^file::base64[encoded] decode            ^file::base64[encoded] decode
   
         * src/classes/file.C, src/classes/string.C,          * src/: classes/file.C, classes/string.C, include/pa_common.h,
           src/include/pa_common.h, src/main/pa_common.C,            main/pa_common.C: + ^file.base64[] encode +
           www/htdocs/_bug.html: + ^file.base64[] encode +  
           ^file::base64[encoded] decode            ^file::base64[encoded] decode
   
         * src/classes/file.C, src/classes/string.C, www/htdocs/_bug.html: +          * src/classes/: file.C, string.C: + ^string.base64[] encode +
           ^string.base64[] encode + ^string:base64[encoded] decode            ^string:base64[encoded] decode
   
         * src/classes/string.C, src/include/pa_common.h,          * src/: classes/string.C, include/pa_common.h, main/pa_common.C: +
           src/main/pa_common.C, www/htdocs/_bug.html: + ^string:base64[in]            ^string:base64[in] encode + ^string.base64[] decode
           encode + ^string.base64[] decode  
   
 2005-11-21  paf  2005-11-21  paf
   
         * src/classes/file.C, www/htdocs/_bug.html: + merged from HEAD:          * src/classes/file.C: + merged from HEAD:
           ^file::create[text;file.xml;^untaint[xml]{data}]            ^file::create[text;file.xml;^untaint[xml]{data}]
   
         * src/classes/file.C, www/htdocs/_bug.html: +          * src/classes/file.C: +
           ^file::create[text;file.xml;^untaint[xml]{data}]            ^file::create[text;file.xml;^untaint[xml]{data}]
   
         * src/main/pa_request.C: ! merged: $response:body[file] now          * src/main/pa_request.C: ! merged: $response:body[file] now
Line 6502 Line 10876
           types/pa_vmethod_frame.h: + merged: expression literals:            types/pa_vmethod_frame.h: + merged: expression literals:
           true/false. ^format[$.indent(true)]            true/false. ^format[$.indent(true)]
   
         * src/main/compile.tab.C, src/main/compile.y, src/types/pa_value.h,          * src/: main/compile.tab.C, main/compile.y, types/pa_value.h,
           src/types/pa_vbool.h, src/types/pa_vdouble.h,            types/pa_vbool.h, types/pa_vdouble.h, types/pa_vint.h,
           src/types/pa_vint.h, src/types/pa_vmethod_frame.h,            types/pa_vmethod_frame.h: + expression literals: true/false.
           www/htdocs/_bug.html: + expression literals: true/false.  
           ^format[$.indent(true)]            ^format[$.indent(true)]
   
         * src/types/Makefile.am, src/types/pa_venv.C, src/types/pa_venv.h,          * src/types/: Makefile.am, pa_venv.C, pa_venv.h, types.vcproj: +
           src/types/types.vcproj, www/htdocs/_bug.html,            merged: $env:PARSER_VERSION reports "3.1.5beta (compiled on
           www/htdocs/_bug.txt: + merged: $env:PARSER_VERSION reports            i386-pc-win32)"
           "3.1.5beta (compiled on i386-pc-win32)"  
   
         * src/types/Makefile.am, src/types/pa_venv.C, src/types/pa_venv.h,          * src/types/: Makefile.am, pa_venv.C, pa_venv.h, types.vcproj: +
           src/types/types.vcproj, www/htdocs/_bug.html: +  
           $env:PARSER_VERSION reports "3.1.5beta (compiled on            $env:PARSER_VERSION reports "3.1.5beta (compiled on
           i386-pc-win32)"            i386-pc-win32)"
   
Line 6523 Line 10894
         * src/classes/: double.C, int.C: ! ^int/double:sql{select          * src/classes/: double.C, int.C: ! ^int/double:sql{select
           null}[$.default(123)] will now return default value            null}[$.default(123)] will now return default value
   
         * www/htdocs/_bug.html: + ^cache[] << returns current cache  
           expiration time  
   
         * src/classes/op.C: + merged ^cache[] << returns current cache          * src/classes/op.C: + merged ^cache[] << returns current cache
           expiration time            expiration time
   
Line 6544 Line 10912
         * src/main/pa_common.C: ! file::load[binary;fileOfZeroSize] now          * src/main/pa_common.C: ! file::load[binary;fileOfZeroSize] now
           loads VFile.ptr!=0, so such files can be saved now            loads VFile.ptr!=0, so such files can be saved now
   
         * src/include/pa_dir.h, www/htdocs/_bug.html, www/htdocs/_bug.txt:          * src/include/pa_dir.h: ! merged: file:list now sees .xxx files,
           ! merged: file:list now sees .xxx files, only . and .. now            only . and .. now removed from list [were removed all .*]
           removed from list [were removed all .*]  
   
         * src/include/pa_dir.h: ! file:list now sees .xxx files, only . and          * src/include/pa_dir.h: ! file:list now sees .xxx files, only . and
           .. now removed from list [were removed all .*]            .. now removed from list [were removed all .*]
Line 6577 Line 10944
   
 2005-11-16  paf  2005-11-16  paf
   
         * src/include/pa_common.h, src/classes/file.C, src/classes/table.C,          * src/: include/pa_common.h, classes/file.C, classes/table.C,
           src/main/compile.tab.C, src/main/pa_common.C,            main/compile.tab.C, main/pa_common.C: merged to HEAD: !
           www/htdocs/_bug.html: merged to HEAD: ! table::save with            table::save with enclosers now doubles them: "->"" !
           enclosers now doubles them: "->"" ! table::save/load do not            table::save/load do not remove elements from options hash
           remove elements from options hash  
   
         * src/main/compile.y: ! merged to HEAD: ^if(-f "...") now works          * src/main/compile.y: ! merged to HEAD: ^if(-f "...") now works
           [were overoptimized ^if(double_literal), compiler confused            [were overoptimized ^if(double_literal), compiler confused
Line 6591 Line 10957
           [were overoptimized ^if(double_literal), compiler confused            [were overoptimized ^if(double_literal), compiler confused
           OP_VALUE+origin+double with OP_STRINGPOOL+code+OP_writeXX            OP_VALUE+origin+double with OP_STRINGPOOL+code+OP_writeXX
   
         * src/classes/file.C, src/classes/table.C, src/include/pa_common.h,          * src/: classes/file.C, classes/table.C, include/pa_common.h,
           src/main/pa_common.C, www/htdocs/_bug.html: ! table::save with            main/pa_common.C: ! table::save with enclosers now doubles them:
           enclosers now doubles them: "->"" ! table::save/load do not            "->"" ! table::save/load do not remove elements from options hash
           remove elements from options hash  
   
 2005-11-03  paf  2005-11-03  paf
   
Line 6609 Line 10974
   
 2005-08-26  paf  2005-08-26  paf
   
         * src/classes/date.C, src/types/pa_vdate.h, www/htdocs/_bug.html:          * src/: classes/date.C, types/pa_vdate.h: merged + date.week
           merged + date.week  
   
         * src/classes/date.C, src/types/pa_vdate.h, www/htdocs/_bug.html: +          * src/: classes/date.C, types/pa_vdate.h: + date.week
           date.week  
   
         * src/classes/table.C: merged ! ^table::create[bad]{xxx} now          * src/classes/table.C: merged ! ^table::create[bad]{xxx} now
           complains about bad!=nameless            complains about bad!=nameless
Line 6625 Line 10988
           optional options were allowed to be empty. were checked            optional options were allowed to be empty. were checked
           if(is_string), changed to !defined||is_string to allow void            if(is_string), changed to !defined||is_string to allow void
   
         * src/targets/isapi/parser3isapi.C, www/htdocs/_bug.html,          * src/: targets/isapi/parser3isapi.C, classes/hash.C,
           src/classes/hash.C, src/classes/string.C, src/classes/table.C,            classes/string.C, classes/table.C, classes/void.C: ! optional
           src/classes/void.C: ! optional options were allowed to be empty.            options were allowed to be empty. were checked if(is_string),
           were checked if(is_string), changed to !defined||is_string to            changed to !defined||is_string to allow void
           allow void  
   
         * src/types/pa_vmethod_frame.h: merged ! many classes/*  used          * src/types/pa_vmethod_frame.h: merged ! many classes/*  used
           as_junction where they needed as_int/double, so failed with            as_junction where they needed as_int/double, so failed with
Line 6640 Line 11002
           as_int/double, so failed with recent "(const) now no junction"            as_int/double, so failed with recent "(const) now no junction"
           optimization            optimization
   
         * src/classes/double.C, src/classes/int.C, src/classes/math.C,          * src/: classes/double.C, classes/int.C, classes/math.C,
           src/classes/op.C, src/classes/string.C, src/classes/table.C,            classes/op.C, classes/string.C, classes/table.C,
           src/main/compile.tab.C, src/types/pa_vmethod_frame.h,            main/compile.tab.C, types/pa_vmethod_frame.h: ! many classes/*
           www/htdocs/_bug.html: ! many classes/*  used as_junction where            used as_junction where they needed as_int/double, so failed with
           they needed as_int/double, so failed with recent "(const) now no            recent "(const) now no junction" optimization
           junction" optimization  
   
 2005-08-24  paf  2005-08-24  paf
   
Line 6658 Line 11019
         * src/types/pa_wcontext.h: ! bugfix in_expression bit field were          * src/types/pa_wcontext.h: ! bugfix in_expression bit field were
           not cleared            not cleared
   
         * www/htdocs/: _bug.html, _bug.pl, _bug.txt: . file::exec $charset  
           transcodes env fine  
   
         * src/: classes/classes.C, classes/classes.h, classes/date.C,          * src/: classes/classes.C, classes/classes.h, classes/date.C,
           classes/double.C, classes/file.C, classes/form.C, classes/hash.C,            classes/double.C, classes/file.C, classes/form.C, classes/hash.C,
           classes/hashfile.C, classes/image.C, classes/int.C,            classes/hashfile.C, classes/image.C, classes/int.C,
Line 6731 Line 11089
         * src/: classes/file.C, main/pa_exec.C: + file::cgi/exec now          * src/: classes/file.C, main/pa_exec.C: + file::cgi/exec now
           params: 50 max (were 10)            params: 50 max (were 10)
   
         * src/types/pa_value.h, src/types/pa_vdouble.h,          * src/types/: pa_value.h, pa_vdouble.h, pa_vint.h,
           src/types/pa_vint.h, src/types/pa_vmethod_frame.h,            pa_vmethod_frame.h, pa_vvoid.C, pa_vvoid.h, pa_wcontext.C,
           src/types/pa_vvoid.C, src/types/pa_vvoid.h,            pa_wcontext.h: + ^call[$void] param inside now is void (were:
           src/types/pa_wcontext.C, src/types/pa_wcontext.h,            empty string) ! simplified (double) speedup consequent checks in
           www/htdocs/.htaccess, www/htdocs/_bug.html: + ^call[$void] param            vmethod_frame
           inside now is void (were: empty string) ! simplified (double)  
           speedup consequent checks in vmethod_frame  
   
         * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: merged +          * src/types/: pa_vmethod_frame.C, pa_vmethod_frame.h: merged +
           optimized constants in expressions vstring->vdouble + optimized            optimized constants in expressions vstring->vdouble + optimized
Line 6745 Line 11101
   
 2005-08-08  paf  2005-08-08  paf
   
         * bin/auto.p.dist.in: merged . apache bad 404 handling workaround          * src/main/: compile.tab.C, compile.y, compile_tools.C,
           integrated            compile_tools.h: merged + optimized constants in expressions
             vstring->vdouble + optimized ^call(vdouble), no junction
         * bin/auto.p.dist.in: . apache bad 404 handling workaround            creation, no calls later
           integrated  
   
         * src/main/compile.tab.C, src/main/compile.y,  
           src/main/compile_tools.C, src/main/compile_tools.h,  
           www/htdocs/.htaccess, www/htdocs/_bug.html, www/htdocs/_bug.xml:  
           merged + optimized constants in expressions vstring->vdouble +  
           optimized ^call(vdouble), no junction creation, no calls later  
   
         * src/types/pa_vdouble.h: merged . double values without fractional          * src/types/pa_vdouble.h: merged . double values without fractional
           part now default printed as %.0f instead of %g            part now default printed as %.0f instead of %g
Line 6763 Line 11112
         * src/types/pa_vdouble.h: . double values without fractional part          * src/types/pa_vdouble.h: . double values without fractional part
           now default printed as %.0f instead of %g            now default printed as %.0f instead of %g
   
         * www/htdocs/: _bug.html, _bug.xml: . merged ! second  
           hashfile::open would cause an exception  
   
         * src/classes/hashfile.C: . merged ! second hashfile::open would          * src/classes/hashfile.C: . merged ! second hashfile::open would
           cause an exception            cause an exception
   
         * src/classes/hashfile.C: ! second hashfile::open would cause an          * src/classes/hashfile.C: ! second hashfile::open would cause an
           exception            exception
   
         * src/classes/classes.h, src/main/execute.C,          * src/: classes/classes.h, main/execute.C, types/pa_junction.h,
           src/types/pa_junction.h, src/types/pa_value.h,            types/pa_value.h, types/pa_vclass.C, types/pa_vclass.h,
           src/types/pa_vclass.C, src/types/pa_vclass.h,            types/pa_vcode_frame.h, types/pa_vconsole.h, types/pa_vcookie.C,
           src/types/pa_vcode_frame.h, src/types/pa_vconsole.h,            types/pa_vcookie.h, types/pa_vhash.h, types/pa_vhashfile.h,
           src/types/pa_vcookie.C, src/types/pa_vcookie.h,            types/pa_vimage.C, types/pa_vimage.h, types/pa_vjunction.h,
           src/types/pa_vhash.h, src/types/pa_vhashfile.h,            types/pa_vmethod_frame.h, types/pa_vobject.C, types/pa_vobject.h,
           src/types/pa_vimage.C, src/types/pa_vimage.h,            types/pa_vrequest.C, types/pa_vrequest.h, types/pa_vresponse.C,
           src/types/pa_vjunction.h, src/types/pa_vmethod_frame.h,            types/pa_vresponse.h, types/pa_vstateless_class.C,
           src/types/pa_vobject.C, src/types/pa_vobject.h,            types/pa_vstateless_object.h, types/pa_vvoid.h,
           src/types/pa_vrequest.C, src/types/pa_vrequest.h,            types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wwrapper.h: .
           src/types/pa_vresponse.C, src/types/pa_vresponse.h,            merged VJunction(new Junction) optimization from 3.1.4
           src/types/pa_vstateless_class.C,  
           src/types/pa_vstateless_object.h, src/types/pa_vvoid.h,  
           src/types/pa_vxnode.C, src/types/pa_vxnode.h,  
           src/types/pa_wwrapper.h, www/htdocs/_bug.html, www/htdocs/_bug.p:  
           . merged VJunction(new Junction) optimization from 3.1.4  
   
         * src/: main/execute.C, types/pa_junction.h, types/pa_vjunction.h,          * src/: main/execute.C, types/pa_junction.h, types/pa_vjunction.h,
           types/pa_vstateless_class.C: + optimized new VJunction(new            types/pa_vstateless_class.C: + optimized new VJunction(new
Line 6867 Line 11208
   
 2005-07-29  paf  2005-07-29  paf
   
         * src/types/pa_vclass.C, www/htdocs/_bug.p: . shaped up error          * src/types/pa_vclass.C: . shaped up error messages a bit
           messages a bit  
   
         * src/types/pa_vclass.C, www/htdocs/_bug_derived.p: + property  
           getter can now be overridden  
   
         * src/main/execute.C, src/types/pa_vclass.C,          * src/types/pa_vclass.C: + property getter can now be overridden
           src/types/pa_vobject.C, www/htdocs/_bug.p,  
           www/htdocs/_bug_derived.p: ! bug fix: static parent fields were  
           not replaced in case $derived:field[put] + property setter can  
           now be overridden  
   
         * www/htdocs/: _bug.html, _bug.p, _bug_derived.p: + removed limit          * src/: main/execute.C, types/pa_vclass.C, types/pa_vobject.C: !
           "ctor must be declared in class being created"            bug fix: static parent fields were not replaced in case
             $derived:field[put] + property setter can now be overridden
   
 2005-07-28  paf  2005-07-28  paf
   
Line 6904 Line 11238
           src/types/pa_vstateless_class.h,            src/types/pa_vstateless_class.h,
           src/types/pa_vstateless_object.h, src/types/pa_vvoid.h,            src/types/pa_vstateless_object.h, src/types/pa_vvoid.h,
           src/types/pa_vxnode.C, src/types/pa_vxnode.h,            src/types/pa_vxnode.C, src/types/pa_vxnode.h,
           src/types/pa_wwrapper.h, www/htdocs/.htaccess,            src/types/pa_wwrapper.h: + 3.2.0 beta: merged from
           www/htdocs/_bug.html, www/htdocs/_bug.p, www/htdocs/_bug.pl,  
           www/htdocs/_bug.sh, www/htdocs/auto.p: + 3.2.0 beta: merged from  
           dynamic_fields_join            dynamic_fields_join
   
         * src/classes/hash.C, src/classes/hashfile.C, src/classes/op.C,          * src/: classes/hash.C, classes/hashfile.C, classes/op.C,
           src/classes/xnode.C, src/include/pa_hash.h, src/main/execute.C,            classes/xnode.C, include/pa_hash.h, main/execute.C,
           src/types/pa_method.h, src/types/pa_value.h,            types/pa_method.h, types/pa_value.h, types/pa_vclass.C,
           src/types/pa_vclass.C, src/types/pa_vclass.h,            types/pa_vclass.h, types/pa_vcode_frame.h, types/pa_vconsole.h,
           src/types/pa_vcode_frame.h, src/types/pa_vconsole.h,            types/pa_vcookie.C, types/pa_vcookie.h, types/pa_vhash.h,
           src/types/pa_vcookie.C, src/types/pa_vcookie.h,            types/pa_vhashfile.h, types/pa_vimage.C, types/pa_vimage.h,
           src/types/pa_vhash.h, src/types/pa_vhashfile.h,            types/pa_vmethod_frame.h, types/pa_vobject.C, types/pa_vobject.h,
           src/types/pa_vimage.C, src/types/pa_vimage.h,            types/pa_vrequest.C, types/pa_vrequest.h, types/pa_vresponse.C,
           src/types/pa_vmethod_frame.h, src/types/pa_vobject.C,            types/pa_vresponse.h, types/pa_vstateless_object.h,
           src/types/pa_vobject.h, src/types/pa_vrequest.C,            types/pa_vvoid.h, types/pa_vxnode.C, types/pa_vxnode.h,
           src/types/pa_vrequest.h, src/types/pa_vresponse.C,            types/pa_wwrapper.h: ! restored put_element('replace' param), and
           src/types/pa_vresponse.h, src/types/pa_vstateless_object.h,            restored its checks in vobject.put_element->static fields |
           src/types/pa_vvoid.h, src/types/pa_vxnode.C,            dynamic properties
           src/types/pa_vxnode.h, src/types/pa_wwrapper.h,  
           www/htdocs/.htaccess, www/htdocs/auto.p: ! restored  
           put_element('replace' param), and restored its checks in  
           vobject.put_element->static fields | dynamic properties  
   
 2005-07-27  paf  2005-07-27  paf
   
Line 6937 Line 11265
         * configure, configure.in, src/include/pa_version.h,          * configure, configure.in, src/include/pa_version.h,
           src/types/Makefile.am: 3.2.0beta started            src/types/Makefile.am: 3.2.0beta started
   
         * src/classes/xnode.C, src/include/pa_hash.h,          * src/: classes/xnode.C, include/pa_hash.h,
           src/types/pa_vstateless_class.C, www/htdocs/.htaccess,            types/pa_vstateless_class.C: ! new asserts were all false.
           www/htdocs/_bug.html, www/htdocs/_bug.p, www/htdocs/_bug.pl,            regretfully reverted them all to checks
           www/htdocs/_bug.sh, www/htdocs/auto.p: ! new asserts were all  
           false. regretfully reverted them all to checks  
   
         * src/: classes/classes.h, classes/hash.C, classes/hashfile.C,          * src/: classes/classes.h, classes/hash.C, classes/hashfile.C,
           classes/op.C, main/execute.C, types/pa_method.h,            classes/op.C, main/execute.C, types/pa_method.h,
Line 6956 Line 11282
           joined_dynamic_fields: removed unused param from put_method            joined_dynamic_fields: removed unused param from put_method
           (returned to 3 params)            (returned to 3 params)
   
         * src/include/pa_hash.h, src/types/pa_vclass.C,          * src/: include/pa_hash.h, types/pa_vclass.C, types/pa_vclass.h:
           src/types/pa_vclass.h, www/htdocs/_bug.html, www/htdocs/_bug.p:  
           joined_dynamic_fields: dynamic get/set works with overriding            joined_dynamic_fields: dynamic get/set works with overriding
           props [alpha2]            props [alpha2]
   
         * src/types/pa_vclass.C, www/htdocs/_bug.html:          * src/types/pa_vclass.C: joined_dynamic_fields: dynamic get/set
           joined_dynamic_fields: dynamic get/set works [alfa]            works [alfa]
   
         * src/: classes/classes.h, classes/hash.C, classes/hashfile.C,          * src/: classes/classes.h, classes/hash.C, classes/hashfile.C,
           classes/op.C, include/pa_hash.h, main/execute.C,            classes/op.C, include/pa_hash.h, main/execute.C,
Line 6986 Line 11311
         * src/types/pa_vobject.C: . object setters [only started, does not          * src/types/pa_vobject.C: . object setters [only started, does not
           work yet]            work yet]
   
         * src/include/pa_hash.h, src/types/pa_vclass.C,          * src/: include/pa_hash.h, types/pa_vclass.C, types/pa_vobject.C: .
           src/types/pa_vobject.C, www/htdocs/_bug.html, www/htdocs/_bug.p:            object setters [only started, does not work yet]
           . object setters [only started, does not work yet]  
   
 2005-07-26  paf  2005-07-26  paf
   
         * src/include/pa_request.h, src/main/execute.C,          * src/: include/pa_request.h, main/execute.C: . properties: set
           www/htdocs/_bug.html: . properties: set works [alpha2]. for            works [alpha2]. for classes. todo: for objects
           classes. todo: for objects  
   
         * src/classes/classes.h, src/include/pa_hash.h, src/main/execute.C,          * src/: classes/classes.h, include/pa_hash.h, main/execute.C,
           src/types/pa_value.h, src/types/pa_vclass.C,            types/pa_value.h, types/pa_vclass.C, types/pa_vclass.h,
           src/types/pa_vclass.h, src/types/pa_vcode_frame.h,            types/pa_vcode_frame.h, types/pa_vconsole.h, types/pa_vcookie.C,
           src/types/pa_vconsole.h, src/types/pa_vcookie.C,            types/pa_vcookie.h, types/pa_vhash.h, types/pa_vhashfile.h,
           src/types/pa_vcookie.h, src/types/pa_vhash.h,            types/pa_vimage.C, types/pa_vimage.h, types/pa_vmethod_frame.h,
           src/types/pa_vhashfile.h, src/types/pa_vimage.C,            types/pa_vobject.C, types/pa_vobject.h, types/pa_vrequest.C,
           src/types/pa_vimage.h, src/types/pa_vmethod_frame.h,            types/pa_vrequest.h, types/pa_vresponse.C, types/pa_vresponse.h,
           src/types/pa_vobject.C, src/types/pa_vobject.h,            types/pa_vstateless_object.h, types/pa_vvoid.h,
           src/types/pa_vrequest.C, src/types/pa_vrequest.h,            types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wwrapper.h: .
           src/types/pa_vresponse.C, src/types/pa_vresponse.h,            properties: set works [alpha1]
           src/types/pa_vstateless_object.h, src/types/pa_vvoid.h,  
           src/types/pa_vxnode.C, src/types/pa_vxnode.h,  
           src/types/pa_wwrapper.h, www/htdocs/_bug.html: . properties: set  
           works [alpha1]  
   
 2005-07-25  paf  2005-07-25  paf
   
         * src/main/compile.C, src/types/pa_vclass.C, src/types/pa_vclass.h,          * src/: main/compile.C, types/pa_vclass.C, types/pa_vclass.h,
           src/types/pa_vstateless_class.C, src/types/pa_vstateless_class.h,            types/pa_vstateless_class.C, types/pa_vstateless_class.h: .
           www/htdocs/_bug.html: . properties: started, get works [alpha1,            properties: started, get works [alpha1, other approach]
           other approach]  
   
         * src/main/compile.C, src/types/pa_vclass.C, src/types/pa_vclass.h,          * src/: main/compile.C, types/pa_vclass.C, types/pa_vclass.h: .
           www/htdocs/_bug.html, www/htdocs/_bug.p: . properties: started,            properties: started, get works [alpha2]
           get works [alpha2]  
   
         * src/types/: pa_vclass.C, pa_vclass.h, pa_vstateless_class.C,          * src/types/: pa_vclass.C, pa_vclass.h, pa_vstateless_class.C,
           pa_vstateless_class.h: . properties: started, get works [alpha]            pa_vstateless_class.h: . properties: started, get works [alpha]
Line 7043 Line 11360
   
 2005-07-08  paf  2005-07-08  paf
   
         * src/main/pa_request.C, www/htdocs/_bug.html: ! bugfix:          * src/main/pa_request.C: ! bugfix: $response:body[nonfile] caused
           $response:body[nonfile] caused gpf            gpf
   
 2005-06-28  paf  2005-06-28  paf
   
Line 7053 Line 11370
   
 2005-06-06  paf  2005-06-06  paf
   
         * src/classes/hash.C, src/classes/string.C, src/classes/table.C,          * src/classes/: hash.C, string.C, table.C: ! bugfix ^string:sql
           www/htdocs/.htaccess, www/htdocs/_bug.html, www/htdocs/_bug.pl,            ^table:sql ^hash:sql now DO process $.bind option
           www/htdocs/_bug.xsl: ! bugfix ^string:sql ^table:sql ^hash:sql  
           now DO process $.bind option  
   
 2005-05-24  paf  2005-05-24  paf
   
Line 7105 Line 11420
   
 2005-03-16  paf  2005-03-16  paf
   
         * INSTALL, www/htdocs/.htaccess, www/htdocs/_bug.html,          * INSTALL, src/include/pa_stack.h: . compiled on freebsd 5.3 with
           src/include/pa_stack.h: . compiled on freebsd 5.3 with gcc 3.4            gcc 3.4
   
         * src/types/pa_vhash.C: . warning about eof eol          * src/types/pa_vhash.C: . warning about eof eol
   
Line 7117 Line 11432
   
 2005-02-02  paf  2005-02-02  paf
   
         * src/classes/xnode.C, www/htdocs/_bug.html: beauty: removed          * src/classes/xnode.C: beauty: removed needless includes
           needless includes  
   
 2005-01-31  paf  2005-01-31  paf
   
Line 7134 Line 11448
   
 2005-01-20  paf  2005-01-20  paf
   
         * configure.in, src/include/pa_version.h, www/htdocs/_bug.html:          * configure.in, src/include/pa_version.h: version
           version  
   
 2005-01-19  paf  2005-01-19  paf
   
Line 7145 Line 11458
   
 2004-12-23  paf  2004-12-23  paf
   
         * src/main/pa_sql_driver_manager.C, www/htdocs/_bug.html: sql          * src/main/pa_sql_driver_manager.C: sql connect string, rsplit @
           connect string, rsplit @  
   
         * src/main/pa_exec.C, www/htdocs/_bug.html: win32: bugfix:          * src/main/pa_exec.C: win32: bugfix: file::cgi/exec now set current
           file::cgi/exec now set current dir to directory of script (when            dir to directory of script (when shbang used), not to directory
           shbang used), not to directory of its interpreter            of its interpreter
   
         * src/include/pa_version.h: compiled on win32...          * src/include/pa_version.h: compiled on win32...
   
Line 7160 Line 11472
         * configure, configure.in, src/include/pa_version.h: configured          * configure, configure.in, src/include/pa_version.h: configured
           host to pa_version. will be displayed everywhere            host to pa_version. will be displayed everywhere
   
         * src/main/pa_request.C, www/htdocs/_bug.html: new:          * src/main/pa_request.C: new: @unhandled_exception can prevent
           @unhandled_exception can prevent exception from being logged by            exception from being logged by setting $exception.handled(1)
           setting $exception.handled(1)  
   
         * operators.txt, src/classes/file.C, www/htdocs/_bug.html: change:          * 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]
   
         * src/include/pa_common.h, src/main/pa_common.C,          * src/: include/pa_common.h, main/pa_common.C,
           src/types/pa_vhashfile.C, www/htdocs/_bug.html: beauty:            types/pa_vhashfile.C: beauty: hashfile::open now creates dir for
           hashfile::open now creates dir for new file            new file
   
         * src/classes/table.C, src/types/pa_vhash.C, src/types/pa_vhash.h,          * src/: classes/table.C, types/pa_vhash.C, types/pa_vhash.h:
           www/htdocs/_bug.html: bugfix: table->hash now regards _default            bugfix: table->hash now regards _default
   
         * src/types/pa_vmethod_frame.h, www/htdocs/_bug.html: bugfix: when          * src/types/pa_vmethod_frame.h: bugfix: when method junction was
           method junction was created by accessing $name_of_method it            created by accessing $name_of_method it acquired bad self=closest
           acquired bad self=closest methodframe; instead of proper self            methodframe; instead of proper self (current class)
           (current class)  
   
         * src/types/pa_vhashfile.C, www/htdocs/_bug.html: bugfix: reading          * src/types/pa_vhashfile.C: bugfix: reading empty string from
           empty string from hashfile produced bad cord            hashfile produced bad cord
   
 2004-12-10  paf  2004-12-10  paf
   
Line 7200 Line 11510
         * src/main/pa_common.C: http: exception status of send/recv errors          * src/main/pa_common.C: http: exception status of send/recv errors
           change to most probable http.timeout            change to most probable http.timeout
   
         * src/main/pa_common.C, www/htdocs/_bug.html: win32: http          * src/main/pa_common.C: win32: http connection $.timeout option now
           connection $.timeout option now works [setsockopt on            works [setsockopt on send/receive]
           send/receive]  
   
 2004-12-08  paf  2004-12-08  paf
   
         * src/classes/mail.C, src/types/pa_vmail.C, www/htdocs/.htaccess,          * src/: classes/mail.C, types/pa_vmail.C: bugfix: mail body now
           www/htdocs/_bug.html, www/htdocs/_bug.xsl: bugfix: mail body now  
           cstr-ed knowing mail charset, and untainting uri lang now knows            cstr-ed knowing mail charset, and untainting uri lang now knows
           proper charset            proper charset
   
Line 7244 Line 11552
   
 2004-10-07  paf  2004-10-07  paf
   
         * src/include/pa_config_fixed.h, src/include/pa_config_includes.h,          * src/: include/pa_config_fixed.h, include/pa_config_includes.h,
           src/main/pa_globals.C, www/htdocs/.htaccess,            main/pa_globals.C: debugger help: PA_RELEASE_ASSERTS enables
           www/htdocs/_bug.html, www/htdocs/_bug.pl: debugger help:            release asserts
           PA_RELEASE_ASSERTS enables release asserts  
   
         * src/: main/pa_string.C, include/pa_string.h: debugger help:          * src/: main/pa_string.C, include/pa_string.h: debugger help:
           String.dump() to stdout in detailed form  [were String.v() in            String.dump() to stdout in detailed form  [were String.v() in
Line 7298 Line 11605
   
 2004-09-13  paf  2004-09-13  paf
   
         * src/main/pa_string.C, www/htdocs/_bug.html: bugfix: $s[+008]          * src/main/pa_string.C: bugfix: $s[+008] ^eval($s) now parsed OK
           ^eval($s) now parsed OK [were as octal]            [were as octal]
   
         * src/types/pa_vhashfile.C, www/htdocs/_bug.html: beauty: not          * src/types/pa_vhashfile.C: beauty: not reproduced
           reproduced $hashfile.key[$novalue] bug [reported by motorin],            $hashfile.key[$novalue] bug [reported by motorin], inserted
           inserted safety-check            safety-check
   
         * src/types/pa_vhashfile.C: change: empty keys now error in parser          * src/types/pa_vhashfile.C: change: empty keys now error in parser
           [not something obscure from sdbm lib]            [not something obscure from sdbm lib]
   
         * src/types/pa_vhashfile.C, www/htdocs/_bug.html: bugfix: error          * src/types/pa_vhashfile.C: bugfix: error numbers now from errno.h
           numbers now from errno.h = strerror now returnes something and we            = strerror now returnes something and we can properly report that
           can properly report that to client            to client
   
         * src/lib/sdbm/sdbm_private.h: change: limit on length(key+value)          * src/lib/sdbm/sdbm_private.h: change: limit on length(key+value)
           now 8008 bytes, were 1008. perl sdbm compatibility now ruined            now 8008 bytes, were 1008. perl sdbm compatibility now ruined
   
         * www/htdocs/: _bug.html, _bug.xsl: change: ^xdoc.string now  
           outputted as-is  [tainted as-is] this helps //[space][newline] to  
           remain as-is and not be unnecessary optimized away [ruining  
           javascript]  
   
         * src/classes/xdoc.C: change: ^xdoc.string now outputted as-is          * src/classes/xdoc.C: change: ^xdoc.string now outputted as-is
           [tainted as-is] this helps //[space][newline] to remain as-is and            [tainted as-is] this helps //[space][newline] to remain as-is and
           not be unnecessary optimized away [ruining javascript]            not be unnecessary optimized away [ruining javascript]
Line 7349 Line 11651
           multipart/mixed    multipart/related       text/html            multipart/mixed    multipart/related       text/html
           image/xxx application/octet-stream << true attachments            image/xxx application/octet-stream << true attachments
   
         * src/types/pa_vmail.C, www/htdocs/_bug.html: new:          * src/types/pa_vmail.C: new:
           ^mail:send[$.file[$.content-disposition can be overriden new:            ^mail:send[$.file[$.content-disposition can be overriden new:
           empty mail header fields removed from letter            empty mail header fields removed from letter
   
         * src/classes/mail.C, src/include/pa_config_fixed.h,          * src/: classes/mail.C, include/pa_config_fixed.h,
           src/types/pa_value.C, src/types/pa_value.h, src/types/pa_vmail.C,            types/pa_value.C, types/pa_value.h, types/pa_vmail.C: new:
           www/htdocs/_bug.html: new: ^mail:send[    $.file[            ^mail:send[    $.file[       $.any[header]
           $.any[header]  
   
 2004-08-30  paf  2004-08-30  paf
   
         * src/include/pa_config_fixed.h, src/main/pa_common.C,          * src/: include/pa_config_fixed.h, main/pa_common.C: beauty: less
           www/htdocs/.htaccess, www/htdocs/_bug.html: beauty: less warnings            warnings
   
         * src/main/pa_common.C: beauty: do not bother with charset          * src/main/pa_common.C: beauty: do not bother with charset
           detection when ^file::load[binary            detection when ^file::load[binary
Line 7383 Line 11684
         * src/classes/file.C: bugfix: $f[^file::load[;http://]]          * src/classes/file.C: bugfix: $f[^file::load[;http://]]
           $f.content-type now = that of http response            $f.content-type now = that of http response
   
 2004-08-03  paf  
   
         * www/htdocs/: .htaccess, _bug.html: bugfix: empty input variables  
           can be replaced by output [forgot to allocate proper buffer,  
           oracle _server_ died with kgepop: no error frame to pop to for  
           error 21500 message]  
   
 2004-07-30  paf  2004-07-30  paf
   
         * src/include/pa_request.h, src/main/pa_request.C,          * src/: include/pa_request.h, main/pa_request.C,
           src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C,            targets/cgi/parser3.C, targets/isapi/parser3isapi.C: bugfix:
           www/htdocs/.htaccess: bugfix: win32: system&parser exceptions in            win32: system&parser exceptions in release mode reported properly
           release mode reported properly parser exception in exception            parser exception in exception handler WERE mistakenly reported as
           handler WERE mistakenly reported as system exception, without            system exception, without details [in apache & isapi] +some
           details [in apache & isapi] +some beauty in exception text            beauty in exception text
   
         * src/include/pa_exception.h, src/main/pa_request.C,          * src/: include/pa_exception.h, main/pa_request.C,
           src/targets/cgi/parser3.C, www/htdocs/.htaccess,            targets/cgi/parser3.C: bugfix: win32: system&parser exceptions in
           www/htdocs/_bug.html: bugfix: win32: system&parser exceptions in  
           release mode reported properly parser exception in exception            release mode reported properly parser exception in exception
           handler WERE mistakenly reported as system exception, without            handler WERE mistakenly reported as system exception, without
           details            details
Line 7410 Line 11703
   
 2004-07-29  paf  2004-07-29  paf
   
         * src/classes/table.C, www/htdocs/_bug.html: bugfix:          * src/classes/table.C: bugfix:
           ^table.save[export.csv;$.separator[^;]] now works fine [separator            ^table.save[export.csv;$.separator[^;]] now works fine [separator
           were ignored, and \t used unconditionally]            were ignored, and \t used unconditionally]
   
Line 7424 Line 11717
           types/pa_vmail.C: bugfix: isspace((unsigned char)c) everywhere.            types/pa_vmail.C: bugfix: isspace((unsigned char)c) everywhere.
           failed on russian letters            failed on russian letters
   
         * src/main/pa_string.C, src/types/pa_vmail.C, www/htdocs/_bug.html,          * src/: main/pa_string.C, types/pa_vmail.C, main/pa_common.C:
           src/main/pa_common.C: bugfix: isspace((unsigned char)c)            bugfix: isspace((unsigned char)c) everywhere. failed on russian
           everywhere. failed on russian letters            letters
   
         * www/htdocs/_bug.html: bugfix: win32: chdir not needed, dir  
           passwed as 'currentDirectory' parameter to CreateProcess  
   
         * src/main/pa_exec.C: bugfix: win32: chdir not needed, dir passwed          * src/main/pa_exec.C: bugfix: win32: chdir not needed, dir passwed
           as 'currentDirectory' parameter to CreateProcess            as 'currentDirectory' parameter to CreateProcess
Line 7452 Line 11742
         * operators.txt, src/include/pa_common.h, src/main/pa_common.C,          * operators.txt, src/include/pa_common.h, src/main/pa_common.C,
           src/main/pa_request.C, src/types/pa_vfile.h,            src/main/pa_request.C, src/types/pa_vfile.h,
           src/types/pa_vhash.C, src/types/pa_vhash.h,            src/types/pa_vhash.C, src/types/pa_vhash.h,
           src/types/types.vcproj, www/htdocs/_bug.html: new:            src/types/types.vcproj: new: $response:body/download[
           $response:body/download[    $.file[name on disk]    $.name[of            $.file[name on disk]    $.name[of file for user]
           file for user]        $.mdate[date of last-modified. default from            $.mdate[date of last-modified. default from directory] ]
           directory] ]  
   
         * src/classes/file.C: moving file:send somewhere else..          * src/classes/file.C: moving file:send somewhere else..
   
Line 7468 Line 11757
   
 2004-07-21  paf  2004-07-21  paf
   
         * src/types/pa_vmail.C, www/htdocs/_bug.html: bugfix: too long          * src/types/pa_vmail.C: bugfix: too long header values now splitted
           header values now splitted to several lines            to several lines
   
           were: header: vaaaaaaaaaaaalue now: header: vaaaaaa  aaalue            were: header: vaaaaaaaaaaaalue now: header: vaaaaaa  aaalue
   
Line 7495 Line 11784
           now untainted according to their languages.  were: as-is.            now untainted according to their languages.  were: as-is.
           EVERYWHERE            EVERYWHERE
   
         * src/classes/file.C, src/main/pa_exec.C, www/htdocs/_bug.html,          * src/: classes/file.C, main/pa_exec.C: bufix: on unix AND win32
           www/htdocs/_bug.pl: bufix: on unix AND win32 environment string            environment string now untainted according to their languages.
           now untainted according to their languages.  were: as-is.            were: as-is. EVERYWHERE
           EVERYWHERE  
   
         * src/main/pa_exec.C: bufix: on unix environment string now          * src/main/pa_exec.C: bufix: on unix environment string now
           untainted according to their languages.  were: as-is. on win32:            untainted according to their languages.  were: as-is. on win32:
Line 7506 Line 11794
   
         * parser3.vssscc: ...would not go unnoticed          * parser3.vssscc: ...would not go unnoticed
   
         * src/main/pa_charset.C, www/htdocs/.htaccess,          * src/main/pa_charset.C: convinience: transcodeFromUTF8 now never
           www/htdocs/_bug.html: convinience: transcodeFromUTF8 now never  
           fails. in case on input appears nonutf, those bytes will be            fails. in case on input appears nonutf, those bytes will be
           printed in %HH form. that can be easily decoded/recovered.            printed in %HH form. that can be easily decoded/recovered.
   
Line 7521 Line 11808
   
 2004-07-01  paf  2004-07-01  paf
   
         * src/classes/classes.vcproj, src/lib/cord/cord.vcproj,          * src/: classes/classes.vcproj, lib/cord/cord.vcproj,
           src/lib/gd/gd.vcproj, src/lib/ltdl/ltdl.vcproj,            lib/gd/gd.vcproj, lib/ltdl/ltdl.vcproj, lib/md5/md5.vcproj,
           src/lib/md5/md5.vcproj, src/lib/pcre/pcre.vcproj,            lib/pcre/pcre.vcproj, lib/pcre/pcre_dftables.vcproj,
           src/lib/pcre/pcre_dftables.vcproj,            lib/pcre/pcre_parser_ctype.vcproj, lib/smtp/smtp.vcproj,
           src/lib/pcre/pcre_parser_ctype.vcproj, src/lib/smtp/smtp.vcproj,            main/main.vcproj, targets/cgi/parser3.vcproj,
           src/main/main.vcproj, src/targets/cgi/parser3.vcproj,            targets/isapi/parser3isapi.vcproj, types/types.vcproj: win32:
           src/targets/isapi/parser3isapi.vcproj, src/types/types.vcproj,            option: global optimization ON
           www/htdocs/.htaccess: win32: option: global optimization ON  
           * src/main/untaint.C: workaround kinda bug in libxml: life requires
         * src/main/untaint.C, www/htdocs/_bug.html: workaround kinda bug in            to do xdoc::create{invalid chars} standard disables chars less
           libxml: life requires to do xdoc::create{invalid chars} standard            then \x20, except tab, cr, lf.
           disables chars less then \x20, except tab, cr, lf.  
   
           changed tainting so that those become '!'            changed tainting so that those become '!'
   
Line 7545 Line 11831
         * src/types/pa_vhashfile.C: bugfix: hashfile deserialize accessed          * src/types/pa_vhashfile.C: bugfix: hashfile deserialize accessed
           int on odd address            int on odd address
   
 2004-06-23  paf  
   
         * www/htdocs/_bug.html: checked: oracle: various ways of returning  
           error from stored proc.  bad: no way of knowing which exactly  
           user-defined exception were thrown.  good:  
           raise_application_error can return error message number and  
           string FINE good: PRAGMA EXCEPTION_INIT works good too  
   
 2004-06-22  paf  2004-06-22  paf
   
         * src/sql/pa_sql_driver.h: note: about possible optimization          * src/sql/pa_sql_driver.h: note: about possible optimization
   
         * www/htdocs/_bug.html: checked: in out variables OK  
   
         * operators.txt, src/classes/hash.C, src/classes/memory.C,          * operators.txt, src/classes/hash.C, src/classes/memory.C,
           src/classes/string.C, src/classes/table.C, src/classes/void.C,            src/classes/string.C, src/classes/table.C, src/classes/void.C,
           src/include/pa_config_includes.h, www/htdocs/_bug.html: new:            src/include/pa_config_includes.h: new:        ^void:sql{call
           ^void:sql{call paf(:a)}[                $.bind[            paf(:a)}[                $.bind[                         $.a[2]
                 $.a[2]          ]       ] output variables work.  todo:                   ]       ] output variables work.  todo: check in out
           check in out variables            variables
   
 2004-06-18  paf  2004-06-18  paf
   
         * src/classes/file.C, src/classes/hash.C, src/classes/string.C,          * src/: classes/file.C, classes/hash.C, classes/string.C,
           src/classes/table.C, src/classes/void.C,            classes/table.C, classes/void.C, include/pa_globals.h,
           src/include/pa_globals.h, src/include/pa_sql_connection.h,            include/pa_sql_connection.h, main/compile.tab.C,
           src/main/compile.tab.C, src/sql/pa_sql_driver.h,            sql/pa_sql_driver.h: started:         ^void:sql{call paf(:a)}[
           www/htdocs/.htaccess, www/htdocs/_bug.html: started:                        $.bind[                         $.a[2]          ]
           ^void:sql{call paf(:a)}[                $.bind[            ] input variables work.  todo:output
                 $.a[2]          ]       ] input variables work.  
           todo:output  
   
         * src/targets/cgi/parser3.C: bugfix: iis specific          * src/targets/cgi/parser3.C: bugfix: iis specific
           http://parser3/_bug.html?404;http://hpsv/test/ now $request:uri            http://parser3/_bug.html?404;http://hpsv/test/ now $request:uri
Line 7606 Line 11880
   
         * src/main/pa_string.C: beauty: removed 3 warnings          * src/main/pa_string.C: beauty: removed 3 warnings
   
         * src/include/pa_string.h, src/classes/table.C, src/main/untaint.C,          * src/: include/pa_string.h, classes/table.C, main/untaint.C,
           www/htdocs/_bug.html, src/classes/op.C: beauty: removed outdated            classes/op.C: beauty: removed outdated level 'table'
           level 'table'  
   
 2004-05-25  paf  2004-05-25  paf
   
Line 7624 Line 11897
   
 2004-05-24  paf  2004-05-24  paf
   
         * src/include/pa_string.h, src/lib/cord/cordbscs.c,          * src/: include/pa_string.h, lib/cord/cordbscs.c,
           src/lib/cord/include/cord.h, www/htdocs/_bug.html,            lib/cord/include/cord.h, lib/cord/cordxtra.c: cancel: more speed,
           src/lib/cord/cordxtra.c: cancel: more speed, less memory:            less memory: CORD_chars_block originally intended to ...  it was
           CORD_chars_block originally intended to ...  it was good that            good that CORD_chars_block were not used: it consumes more memory
           CORD_chars_block were not used: it consumes more memory [and,            [and, might be slow too] undoing that. [and removed that func so
           might be slow too] undoing that. [and removed that func so that            that it would not confuse parser developer in future]
           it would not confuse parser developer in future]  
   
         * src/: include/pa_string.h, lib/cord/include/cord.h: more speed,          * src/: include/pa_string.h, lib/cord/include/cord.h: more speed,
           less memory: CORD_chars_block originally intended to            less memory: CORD_chars_block originally intended to
Line 7646 Line 11918
   
 2004-05-14  paf  2004-05-14  paf
   
         * src/types/Makefile.am, src/types/pa_vvoid.C,          * src/types/: Makefile.am, pa_vvoid.C, pa_vvoid.h, types.vcproj:
           src/types/pa_vvoid.h, src/types/types.vcproj,  
           www/htdocs/.htaccess, www/htdocs/_bug.html, www/htdocs/auto.p:  
           bugfix: void now has vfile value, and $response:body[] works OK            bugfix: void now has vfile value, and $response:body[] works OK
   
 2004-05-12  paf  2004-05-12  paf
   
         * src/types/pa_vbool.h, src/types/pa_vhash.h,          * src/types/: pa_vbool.h, pa_vhash.h, pa_vhashfile.h, pa_vtable.h:
           src/types/pa_vhashfile.h, src/types/pa_vtable.h,            beauty: ^if(def $bool) now equals ^if($bool) and shaped up other
           www/htdocs/.htaccess, www/htdocs/_bug.html: beauty: ^if(def            sources to use is_defined() {return as_bool();} along VBool
           $bool) now equals ^if($bool) and shaped up other sources to use  
           is_defined() {return as_bool();} along VBool  
   
 2004-05-11  paf  2004-05-11  paf
   
         * src/include/pa_exec.h: bugfix: gpf on file::exec/cgi because of          * src/include/pa_exec.h: bugfix: gpf on file::exec/cgi because of
           referencing to local objects            referencing to local objects
   
         * src/classes/mail.C, src/include/pa_exec.h,          * src/: classes/mail.C, include/pa_exec.h, main/compile.tab.C,
           src/main/compile.tab.C, src/types/pa_vmail.C,            types/pa_vmail.C, types/pa_vmail.h: bugfix: bcc with sendmail now
           src/types/pa_vmail.h, www/htdocs/.htaccess, www/htdocs/_bug.gif,            left intact
           www/htdocs/_bug.html: bugfix: bcc with sendmail now left intact  
   
 2004-04-15  paf  2004-04-15  paf
   
Line 7702 Line 11969
         * src/main/: compile.tab.C, compile.y: bugfix: gcc refused to          * src/main/: compile.tab.C, compile.y: bugfix: gcc refused to
           accept that trick, trying other            accept that trick, trying other
   
         * src/main/compile.tab.C, src/main/compile.y, www/htdocs/_bug.html:          * src/main/: compile.tab.C, compile.y: bugfix: step3 to fix
           bugfix: step3 to fix explicit result problem            explicit result problem
   
         * src/main/compile.tab.C, src/main/compile.y, www/htdocs/_bug.html:          * src/main/: compile.tab.C, compile.y: bugfix: step2 to fix
           bugfix: step2 to fix explicit result problem            explicit result problem
   
         * src/main/compile.tab.C, src/main/compile.y, www/htdocs/_bug.html:          * src/main/: compile.tab.C, compile.y: bugfix: step1 to fix
           bugfix: step1 to fix explicit result problem            explicit result problem
   
         * operators.txt, src/classes/string.C: new: ^string.append[string]          * operators.txt, src/classes/string.C: new: ^string.append[string]
   
         * src/include/pa_opcode.h, src/main/compile.tab.C,          * src/: include/pa_opcode.h, main/compile.tab.C, main/compile.y,
           src/main/compile.y, src/main/execute.C, www/htdocs/_bug.html:            main/execute.C: attempt_check_call_in_explicit_result_mode:
           attempt_check_call_in_explicit_result_mode: failed            failed
   
         * src/main/pa_common.C: bugfix: of 1.175 bugfix:          * src/main/pa_common.C: bugfix: of 1.175 bugfix:
           http://i.p.a.ddress gethostbyaddr added [on some platforms            http://i.p.a.ddress gethostbyaddr added [on some platforms
Line 7727 Line 11994
           gethostbyname failed with such 'domains'] now checked properly,            gethostbyname failed with such 'domains'] now checked properly,
           were: needless reverse/forward dns lookup            were: needless reverse/forward dns lookup
   
         * src/main/compile.C, src/main/compile.tab.C, src/main/compile.y,          * src/main/: compile.C, compile.tab.C, compile.y: reimplemented:
           www/htdocs/_bug.html: reimplemented: @method[][result] means "no            @method[][result] means "no string output here" moved to lexical
           string output here" moved to lexical level [on grammar level it            level [on grammar level it were too difficult]
           were too difficult]  
   
         * operators.txt, src/include/pa_string.h, src/main/compile.tab.C,          * operators.txt, src/include/pa_string.h, src/main/compile.tab.C,
           src/main/compile.y, src/main/compile_tools.h,            src/main/compile.y, src/main/compile_tools.h,
           src/types/pa_vmethod_frame.C, src/types/pa_vmethod_frame.h,            src/types/pa_vmethod_frame.C, src/types/pa_vmethod_frame.h: new:
           www/htdocs/.htaccess, www/htdocs/_bug.html: new:  
           @method[][result] means "no string output here", implemented part            @method[][result] means "no string output here", implemented part
           of that idea: compiler throws away string literal generation            of that idea: compiler throws away string literal generation
           code. and barks nonwhitespace chars            code. and barks nonwhitespace chars
Line 7746 Line 12011
   
         * configure.in, src/doc/html2chm.cmd, src/doc/sources2html.cmd,          * configure.in, src/doc/html2chm.cmd, src/doc/sources2html.cmd,
           src/include/pa_version.h, src/main/pa_common.C,            src/include/pa_version.h, src/main/pa_common.C,
           src/targets/isapi/parser3isapi.C, www/htdocs/.htaccess,            src/targets/isapi/parser3isapi.C: merged with 3.1.3
           www/htdocs/_bug.html, www/htdocs/_bug.txt: merged with 3.1.3  
   
         * etc/parser3.charsets/x-mac-cyrillic.cfg: added: donated by          * etc/parser3.charsets/x-mac-cyrillic.cfg: added: donated by
           Konstantin Tomashevitch [mailto:konst@design.ru]            Konstantin Tomashevitch [mailto:konst@design.ru]
Line 7791 Line 12055
         * src/classes/table.C: bufix: if last table lines were commented,          * src/classes/table.C: bufix: if last table lines were commented,
           gpfed            gpfed
   
         * src/doc/ClassExample1.dox, src/doc/ClassExample2.dox,          * src/: doc/ClassExample1.dox, doc/ClassExample2.dox,
           src/doc/ClassExample3.dox, src/doc/chmhelper.pl,            doc/ClassExample3.dox, doc/chmhelper.pl, doc/class.dox,
           src/doc/class.dox, src/doc/compiler.dox, src/doc/doxygen.cfg,            doc/compiler.dox, doc/doxygen.cfg, doc/exception.dox,
           src/doc/exception.dox, src/doc/executor.dox, src/doc/footer.htm,            doc/executor.dox, doc/footer.htm, doc/index.dox, doc/memory.dox,
           src/doc/index.dox, src/doc/memory.dox, src/doc/methoded.dox,            doc/methoded.dox, doc/object.dox, doc/string.dox,
           src/doc/object.dox, src/doc/string.dox, src/doc/targets.dox,            doc/targets.dox, doc/value.dox, include/pa_version.h,
           src/doc/value.dox, src/include/pa_version.h,            main/pa_cache_managers.C, main/pa_stylesheet_connection.C,
           src/main/pa_cache_managers.C,            targets/isapi/parser3isapi.vcproj, types/pa_vform.C: merged
           src/main/pa_stylesheet_connection.C,            bugfixes from 3.1.2, changed version to 3.1.3beta
           src/targets/isapi/parser3isapi.vcproj, src/types/pa_vform.C,  
           www/htdocs/_bug.html, www/htdocs/_bug.txt: merged bugfixes from  
           3.1.2, changed version to 3.1.3beta  
   
 2004-03-29  paf  2004-03-29  paf
   
Line 7838 Line 12099
         * src/classes/table.C: beauty: comment& more meaningful error          * src/classes/table.C: beauty: comment& more meaningful error
           message            message
   
         * src/classes/hash.C, www/htdocs/_bug.html: bugfix: ^hash::sql{one          * src/classes/hash.C: bugfix: ^hash::sql{one column} now produces
           column} now produces $.hash[$.column_value1(true) ... ] [were            $.hash[$.column_value1(true) ... ] [were producing some strang
           producing some strang thing]            thing]
   
 2004-03-23  paf  2004-03-23  paf
   
         * src/classes/image.C, src/main/pa_common.C, www/htdocs/_bug.html:          * src/: classes/image.C, main/pa_common.C: bugfix: ^image.polyline
           bugfix: ^image.polyline and http status line parsing checked            and http status line parsing checked number of columns in table
           number of columns in table [user reported an assert]            [user reported an assert]
   
         * operators.txt: example: on hashfile          * operators.txt: example: on hashfile
   
         * src/classes/op.C, src/types/pa_value.C, src/types/pa_wcontext.C,          * src/: classes/op.C, types/pa_value.C, types/pa_wcontext.C:
           www/htdocs/_bug.html: bugfix: junction reattach now actually            bugfix: junction reattach now actually reattaches a junction to
           reattaches a junction to new wcontext [were only assigning it to            new wcontext [were only assigning it to junction, which caused
           junction, which caused junction tracking to loose junction, and            junction tracking to loose junction, and it's context were not
           it's context were not killed, and it tried to process in invalid            killed, and it tried to process in invalid context, gpf]
           context, gpf]  
   
         * src/targets/cgi/parser3.C: debug helper added          * src/targets/cgi/parser3.C: debug helper added
   
 2004-03-19  paf  2004-03-19  paf
   
         * src/types/pa_wcontext.C, www/htdocs/_bug.html: beauty: error          * src/types/pa_wcontext.C: beauty: error messages removed duplicate
           messages removed duplicate "type(type)" in braces            "type(type)" in braces
   
 2004-03-10  paf  2004-03-10  paf
   
         * operators.txt, src/classes/xdoc.C, src/classes/xnode.C,          * operators.txt, src/classes/xdoc.C, src/classes/xnode.C,
           src/classes/xnode.h, src/types/pa_vxdoc.C, src/types/pa_vxdoc.h,            src/classes/xnode.h, src/types/pa_vxdoc.C, src/types/pa_vxdoc.h,
           src/types/pa_vxnode.C, src/types/pa_vxnode.h,            src/types/pa_vxnode.C, src/types/pa_vxnode.h: new: refined
           www/htdocs/_bug.html: new: refined solution to            solution to search-in-namespaces problem:
           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, www/htdocs/_bug.html,          * operators.txt, src/classes/xnode.C: new: xnode.select*[xpath
           www/htdocs/_bug.xml: new: xnode.select*[xpath  
           expression][[NAMESPACES HASH]] allows to search for info in            expression][[NAMESPACES HASH]] allows to search for info in
           namespaces            namespaces
   
Line 7884 Line 12142
   
 2004-03-09  paf  2004-03-09  paf
   
         * operators.txt, src/main/pa_common.C, www/htdocs/.htaccess,          * operators.txt, src/main/pa_common.C: new:
           www/htdocs/_bug.html, www/htdocs/_bug.txt, www/htdocs/_bug.xsl:            ^file::load[...][options]         $.form[
           new: ^file::load[...][options]         $.form[  
           !$.field1[string]            !$.field1[string]
           !$.field2[^table::create{one_column_only^#0Avalue1^#0Avalue2}]            !$.field2[^table::create{one_column_only^#0Avalue1^#0Avalue2}]
                ]         !$.body[string]                 ]         !$.body[string]
Line 7910 Line 12167
   
         * 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.txt, src/include/pa_common.h, src/main/pa_common.C:
           www/htdocs/_bug.html: new: http:// options $.user $.password            new: http:// options $.user $.password basic authorization
           basic authorization  
   
         * src/main/pa_common.C: beauty: removed needless vars          * src/main/pa_common.C: beauty: removed needless vars
   
Line 7920 Line 12176
           oracle driver]             ClientCharset=parser-charset <<            oracle driver]             ClientCharset=parser-charset <<
           charset in which parser thinks client works            charset in which parser thinks client works
   
           * operators.txt: new: odbc option [like that recently added to
             oracle driver]             ClientCharset=parser-charset <<
             charset in which parser thinks client works
   
         * src/sql/pa_sql_driver.h: beauty: important warning added          * src/sql/pa_sql_driver.h: beauty: important warning added
   
         * etc/parser3.charsets/koi8-r.cfg: there's special code for grad          * etc/parser3.charsets/koi8-r.cfg: there's special code for grad
Line 7927 Line 12187
   
         * etc/parser3.charsets/windows-1251.cfg: typo          * etc/parser3.charsets/windows-1251.cfg: typo
   
         * www/htdocs/_bug.html, operators.txt: new: odbc option [like that  
           recently added to oracle driver]  
           ClientCharset=parser-charset << charset in which parser thinks  
           client works  
   
 2004-03-04  paf  2004-03-04  paf
   
         * www/htdocs/: _bug.html, _bug.txt: new: mysql option [like that  
           recently added to oracle driver]  
           ClientCharset=parser-charset << charset in which parser thinks  
           client works  
   
         * 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
   
Line 7963 Line 12213
           nothing     !^void.right(n)        nothing     !^void.mid(p[;n])            nothing     !^void.right(n)        nothing     !^void.mid(p[;n])
                 nothing                  nothing
   
         * operators.txt, src/classes/void.C, www/htdocs/_bug.html: new:          * operators.txt, src/classes/void.C: new:     !^void.left(n)
           !^void.left(n)        nothing     !^void.right(n)        nothing            nothing     !^void.right(n)        nothing     !^void.pos(p[;n])
           !^void.pos(p[;n])           nothing                  nothing
   
         * operators.txt, src/classes/file.C, src/include/pa_string.h,          * operators.txt, src/classes/file.C, src/include/pa_string.h: new:
           www/htdocs/_bug.html: new: ^file::sql[[name_to_become_$.name]]{}            ^file::sql[[name_to_become_$.name]]{} query result must be one
           query result must be one row with columns:   first: data            row with columns:   first: data   second: file name   third:
           second: file name   third: content-type            content-type
   
         * operators.txt, src/classes/file.C, www/htdocs/_bug.gif,          * operators.txt, src/classes/file.C: ^file.sql-string[] inside
           www/htdocs/_bug.html: ^file.sql-string[] inside ^connect gets            ^connect gets properly escaped string, which can be passed to
           properly escaped string, which can be passed to request now this            request now this for mysql only. it's up to parser sql driver to
           for mysql only. it's up to parser sql driver to fix zeros            fix zeros properly
           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>
   
         * www/htdocs/_bug.html: feature:  
           oracle?..&LowerCaseColumnNames=0&ClientCharset=something column  
           names got transcoded to $request:charset too [were only column  
           data]  
   
 2004-03-01  paf  2004-03-01  paf
   
         * 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, www/htdocs/_bug.html: new:          * operators.txt, src/classes/hash.C: new: ^hash._keys[>>name<<] to
           ^hash._keys[>>name<<] to call sole column of result            call sole column of result
   
         * operators.txt, src/classes/image.C, src/lib/gd/gif.C,          * operators.txt, src/classes/image.C, src/lib/gd/gif.C,
           src/lib/gd/gif.h, www/htdocs/_bug.html: new:            src/lib/gd/gif.h: new: ^image.pixel(x;y)[(color)]         get/set
           ^image.pixel(x;y)[(color)]         get/set pixel color            pixel color
   
         * src/classes/image.C, src/types/pa_vimage.C,          * src/: classes/image.C, types/pa_vimage.C, types/pa_vimage.h:
           src/types/pa_vimage.h, www/htdocs/_bug.html: beauty: image --            beauty: image -- less checks [were ugly impl]
           less checks [were ugly impl]  
   
         * src/classes/string.C, www/htdocs/_bug.html: bugfix:          * src/classes/string.C: bugfix: ^string.left/right/mid with
           ^string.left/right/mid with negative values now considered bad            negative values now considered bad
   
         * src/main/pa_common.C: bugfix: INADDR_NONE not everywhere defined          * src/main/pa_common.C: bugfix: INADDR_NONE not everywhere defined
   
         * src/classes/xdoc.C, src/types/pa_vxdoc.h, www/htdocs/_bug.html,          * src/: classes/xdoc.C, types/pa_vxdoc.h: bugfix: boolean output
           www/htdocs/_bug.xsl: bugfix: boolean output options now have            options now have unified defaults [after transform
           unified defaults [after transform  
           indent/omit-xml-declaration/standalone 'default' erroreously            indent/omit-xml-declaration/standalone 'default' erroreously
           meant 'true']            meant 'true']
   
         * www/htdocs/_bug.html: bugfix: http://i.p.a.ddress gethostbyaddr  
           added [on some platforms gethostbyname failed with such  
           'domains']  
   
         * src/main/pa_common.C: bugfix: http://i.p.a.ddress gethostbyaddr          * src/main/pa_common.C: bugfix: http://i.p.a.ddress gethostbyaddr
           added [on some platforms gethostbyname failed with such            added [on some platforms gethostbyname failed with such
           'domains']            'domains']
Line 8038 Line 12276
   
 2004-02-27  paf  2004-02-27  paf
   
         * operators.txt, src/classes/string.C, src/main/pa_string.C,          * operators.txt, src/classes/string.C, src/main/pa_string.C: new
           www/htdocs/_bug.html: new method:            method: ^string.trim[start|both|end[;chars]]        default
           ^string.trim[start|both|end[;chars]]        default 'chars' --            'chars' -- whitespace chars finished
           whitespace chars finished  
   
         * operators.txt, src/classes/string.C, src/include/pa_string.h,          * operators.txt, src/classes/string.C, src/include/pa_string.h,
           src/main/pa_string.C, www/htdocs/_bug.html: 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   started, only start works            whitespace chars   started, only start works
   
         * www/htdocs/: _bug.html, _bug.xml, _bug.xsl: bug discovered: todo!  
           xdoc::create+save != xdoc.transform&no<xsl:output>+save  
   
         * src/main/compile.C: bugfix: line numbers after          * src/main/compile.C: bugfix: line numbers after
           ^process{}[$.line(-10]] can be negative, allowed to print they as            ^process{}[$.line(-10]] can be negative, allowed to print they as
           signed            signed
Line 8060 Line 12294
           from databases, though. but 1. should be replaced 2. if not            from databases, though. but 1. should be replaced 2. if not
           optimized, no harm done            optimized, no harm done
   
         * www/htdocs/: _bug.html, _bug.txt: just test:  
           file::load[text;http:// $.text utf-8 signature, line ends OK  
           http://i2/tasks/edit/?id=4629476859594276758  
   
         * src/main/pa_exec.C: bugfix: waitpid could be interrupted --          * src/main/pa_exec.C: bugfix: waitpid could be interrupted --
           ^file::exec/cgi could return invalid status & zombie child can            ^file::exec/cgi could return invalid status & zombie child can
           remain for short period until process exists [very bad in            remain for short period until process exists [very bad in
Line 8082 Line 12312
   
         * operators.txt, src/classes/op.C, src/include/pa_request.h,          * operators.txt, src/classes/op.C, src/include/pa_request.h,
           src/main/compile.C, src/main/compile_tools.h,            src/main/compile.C, src/main/compile_tools.h,
           src/main/pa_request.C, www/htdocs/_bug.html, www/htdocs/_bug.p,            src/main/pa_request.C: feature: ^process...{CODE}[now has
           www/htdocs/_bug.xsl: feature: ^process...{CODE}[now has options]            options] which are         $.main[to what to rename @main]
           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)
Line 8097 Line 12326
         * src/classes/hash.C: feature: ^hash::sql{one colum result} now          * src/classes/hash.C: feature: ^hash::sql{one colum result} now
           produces hash of column=>1            produces hash of column=>1
   
         * www/htdocs/: _bug.html, _bug.xsl: xhtml: &#9; as resutl of  
           <xsl:attribute>[tab]  is OK  
   
         * src/lib/smtp/smtp.h: beauty: couple of #ifdef-s to compile even          * src/lib/smtp/smtp.h: beauty: couple of #ifdef-s to compile even
           with incomplete errno constants set            with incomplete errno constants set
   
Line 8129 Line 12355
   
 2004-02-20  paf  2004-02-20  paf
   
         * src/classes/xdoc.C, www/htdocs/_bug.xsl: beauty: ugly code          * src/classes/xdoc.C: beauty: ugly code removed, thanks to egr for
           removed, thanks to egr for pointing that out            pointing that out
   
         * www/htdocs/: _bug.html, _bug.xsl: bugfix: <tag  
           attr="&#digital_entity;" bug fixed again [same solution,  
           mistanenly removed one line]  
   
         * src/classes/xdoc.C: bugfix: <tag attr="&#digital_entity;" bug          * src/classes/xdoc.C: bugfix: <tag attr="&#digital_entity;" bug
           fixed again [same solution, mistanenly removed one line]            fixed again [same solution, mistanenly removed one line]
Line 8145 Line 12367
           date::create from bad datetime in spring daylightsaving hole now            date::create from bad datetime in spring daylightsaving hole now
           OK for all platforms [on some platforms it failed]            OK for all platforms [on some platforms it failed]
   
         * src/classes/date.C, src/classes/image.C, www/htdocs/_bug.html:          * src/classes/: date.C, image.C: beauty: date::create[bad date time
           beauty: date::create[bad date time in daylightsaving hole] now            in daylightsaving hole] now throws error
           throws error  
   
         * src/classes/date.C: comment: mistake fixed          * src/classes/date.C: comment: mistake fixed
   
 2004-02-18  paf  2004-02-18  paf
   
         * www/htdocs/_bug.html: beauty: coder can override save/file          * src/: classes/xdoc.C, include/pa_charset.h: beauty: xdoc.string
           encoding by specifying it in xsl:output or in save/file  
           hash-options  
   
         * www/htdocs/: _bug.html, _bug.xsl: beauty: coder can override  
           save/file encoding by specifying it in xsl:output or in save/file  
           hash-options  
   
         * www/htdocs/: _bug.html, _bug.xsl: beauty: xdoc.string now  
           renderes in $request:charset, but in header puts  
           $response:charset todo: make that default only so that coder  
           could override that  
   
         * www/htdocs/: _bug.html: beauty: xdoc.string now renderes in  
           $request:charset, but in header puts $response:charset todo: make  
           that default only so that coder could override that  
   
         * src/classes/xdoc.C, src/include/pa_charset.h,  
           www/htdocs/_bug.html, www/htdocs/_bug.xsl: beauty: xdoc.string  
           now renderes in $request:charset, but in header puts            now renderes in $request:charset, but in header puts
           $response:charset todo: make that default only so that coder            $response:charset todo: make that default only so that coder
           could override that            could override that
   
         * src/classes/xdoc.C, www/htdocs/_bug.xsl: beauty: xhtml          * src/classes/xdoc.C: beauty: xhtml doctype-public/system forcly
           doctype-public/system forcly turns off omit-xml-declaration            turns off omit-xml-declaration
   
         * src/classes/xdoc.C, www/htdocs/_bug.html, www/htdocs/_bug.xsl:          * src/classes/xdoc.C: feature: reimplemented xhtml output, see
           feature: reimplemented xhtml output, see /.xsl for sample            /.xsl for sample
   
 2004-02-17  paf  2004-02-17  paf
   
Line 8229 Line 12432
           main/main.vcproj, main/pa_globals.C, main/pa_xml_io.C: change:            main/main.vcproj, main/pa_globals.C, main/pa_xml_io.C: change:
           .xsl.stamp now not used, introducing dependencies timestamp check            .xsl.stamp now not used, introducing dependencies timestamp check
   
         * configure.in, bin/auto.p.dist.in: auto.p: @conf made relative          * configure.in: auto.p: @conf made relative
   
 2004-02-12  paf  2004-02-12  paf
   
Line 8328 Line 12531
           src/lib/gd/gd.vcproj, src/lib/smtp/smtp.vcproj,            src/lib/gd/gd.vcproj, src/lib/smtp/smtp.vcproj,
           src/main/compile.tab.C, src/main/main.vcproj,            src/main/compile.tab.C, src/main/main.vcproj,
           src/main/pa_globals.C, src/targets/cgi/parser3.vcproj,            src/main/pa_globals.C, src/targets/cgi/parser3.vcproj,
           src/targets/isapi/parser3isapi.vcproj, src/types/types.vcproj,            src/targets/isapi/parser3isapi.vcproj, src/types/types.vcproj:
           www/htdocs/.htaccess: started changes to reflect libxml xsl new            started changes to reflect libxml xsl new folders
           folders  
   
 2004-02-10  paf  2004-02-10  paf
   
Line 8398 Line 12600
         * src/: classes/date.C, include/pa_string.h, main/pa_string.C:          * src/: classes/date.C, include/pa_string.h, main/pa_string.C:
           bugfix: ^date::create[invalid fields now produce exception.            bugfix: ^date::create[invalid fields now produce exception.
   
         * ChangeLog, src/classes/date.C, www/htdocs/.htaccess: bugfix:          * ChangeLog, src/classes/date.C: bugfix: ^date::create[invalid
           ^date::create[invalid year] now produces exception. todo: check            year] now produces exception. todo: check other fields
           other fields  
   
 2004-01-29  paf  2004-01-29  paf
   
Line 8451 Line 12652
         * ChangeLog, operators.txt, src/classes/op.C,          * ChangeLog, 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:
           www/htdocs/.htaccess: feature: sql introducing ability to            feature: sql introducing ability to transcode charsets
           transcode charsets  
   
 2003-12-19  paf  2003-12-19  paf
   
Line 8509 Line 12709
   
 2003-12-10  paf  2003-12-10  paf
   
         * src/include/pa_sql_connection.h, www/htdocs/.htaccess: bugfix:          * src/include/pa_sql_connection.h: bugfix: $status:sql.cache back
           $status:sql.cache back  << time now ok            << time now ok
   
         * operators.txt, src/main/pa_sql_driver_manager.C,          * 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
Line 8519 Line 12719
         * ChangeLog, operators.txt, src/classes/xdoc.C,          * ChangeLog, 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, www/htdocs/.htaccess:            src/main/pa_string.C, src/types/pa_vxdoc.h: $status:sql.cache
           $status:sql.cache back operational            back operational
   
 2003-12-02  paf  2003-12-02  paf
   
Line 8791 Line 12991
         * src/types/: pa_value.h, pa_vfile.h: more C++ compatible [HP C++          * src/types/: pa_value.h, pa_vfile.h: more C++ compatible [HP C++
           failed]            failed]
   
         * bin/auto.p.dist.in: colno  
   
 2003-11-10  paf  2003-11-10  paf
   
         * src/types/pa_vconsole.h: flush          * src/types/pa_vconsole.h: flush
Line 8871 Line 13069
         * operators.txt, src/classes/hashfile.C, src/types/pa_vhashfile.C,          * operators.txt, src/classes/hashfile.C, src/types/pa_vhashfile.C,
           src/types/pa_vhashfile.h, tests/todo.txt: hashfile: delete            src/types/pa_vhashfile.h, tests/todo.txt: hashfile: delete
   
         * src/include/pa_memory.h, src/targets/cgi/parser3.C,          * src/: include/pa_memory.h, targets/cgi/parser3.C,
           src/types/pa_value.C, src/types/pa_value.h,            types/pa_value.C, types/pa_value.h, types/pa_vcookie.C,
           src/types/pa_vcookie.C, src/types/pa_vhashfile.C,            types/pa_vhashfile.C, types/pa_vhashfile.h: hashfile implemented
           src/types/pa_vhashfile.h, www/htdocs/.htaccess: hashfile            get/put [raw]
           implemented get/put [raw]  
   
         * src/: classes/op.C, main/pa_os.C: just linked          * src/: classes/op.C, main/pa_os.C: just linked
   
Line 8905 Line 13102
           src/main/pa_charset.C, src/targets/cgi/parser3.vcproj,            src/main/pa_charset.C, src/targets/cgi/parser3.vcproj,
           src/types/Makefile.am, src/types/pa_vhash.C,            src/types/Makefile.am, src/types/pa_vhash.C,
           src/types/pa_vhashfile.C, src/types/pa_vhashfile.h,            src/types/pa_vhashfile.C, src/types/pa_vhashfile.h,
           src/types/pa_vxnode.h, src/types/types.vcproj,            src/types/pa_vxnode.h, src/types/types.vcproj: hashfile: started
           www/htdocs/.htaccess: hashfile: started again with sdbm from            again with sdbm from apache
           apache  
   
 2003-11-05  paf  2003-11-05  paf
   
Line 8960 Line 13156
         * 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.txt, src/classes/image.C, tests/todo.txt:
           www/htdocs/auto.p: ^image.gif[filename] for $response:download            ^image.gif[filename] for $response:download
   
         * src/classes/date.C: minor precaution          * src/classes/date.C: minor precaution
   
Line 9003 Line 13199
   
 2003-10-10  paf  2003-10-10  paf
   
         * src/include/pa_string.h, src/main/compile.tab.C,          * src/: include/pa_string.h, main/compile.tab.C: CORD_chr does not
           www/htdocs/.htaccess: CORD_chr does not check offset argument for            check offset argument for validity did that in String::Body::pos
           validity did that in String::Body::pos myself            myself http://i2/tasks/edit/?id=4577425257580789777
           http://i2/tasks/edit/?id=4577425257580789777  
   
 2003-10-07  paf  2003-10-07  paf
   
Line 9017 Line 13212
   
         * parser3.sln, src/include/pa_dictionary.h,          * parser3.sln, src/include/pa_dictionary.h,
           src/main/pa_dictionary.C, src/main/pa_string.C,            src/main/pa_dictionary.C, src/main/pa_string.C,
           src/targets/cgi/parser3.vcproj, www/htdocs/.htaccess: dictionary            src/targets/cgi/parser3.vcproj: dictionary optimized by
           optimized by precalculating cstr&length            precalculating cstr&length
   
 2003-10-02  paf  2003-10-02  paf
   
         * src/classes/op.C, src/include/pa_request.h,          * src/: classes/op.C, include/pa_request.h, include/pa_stack.h,
           src/include/pa_stack.h, src/main/execute.C,            main/execute.C, main/pa_request.C, main/pa_sql_driver_manager.C,
           src/main/pa_request.C, src/main/pa_sql_driver_manager.C,            main/pa_stylesheet_manager.C: bugfix: ^throw context were
           src/main/pa_stylesheet_manager.C, www/htdocs/.htaccess: bugfix:            saved/restored incompletely http://www.parser.ru/forum/?id=21484
           ^throw context were saved/restored incompletely  
           http://www.parser.ru/forum/?id=21484  
   
 2003-09-30  paf  2003-09-30  paf
   
Line 9056 Line 13249
         * src/classes/table.C: bugfix: flip: must produce nameless          * src/classes/table.C: bugfix: flip: must produce nameless
           http://i2/tasks/edit/?id=4573405524674081244            http://i2/tasks/edit/?id=4573405524674081244
   
         * www/htdocs/: base.p, derived.p, font.gif, global.xsl, index.html,          * src/: include/pa_charset.h, main/pa_charset.C, main/pa_string.C,
           mailreceive.eml, mailreceive.html, operators.p,            main/helpers/simple_folding.pl: utf-8 upper/lower
           parser-status.html, people.dtd, some.p: removing old tests  
   
         * src/include/pa_charset.h, src/main/pa_charset.C,  
           src/main/pa_string.C, src/main/helpers/simple_folding.pl,  
           www/htdocs/auto.p: utf-8 upper/lower  
   
         * src/main/pa_common.C: bugfix: utf signature were not ignored due          * src/main/pa_common.C: bugfix: utf signature were not ignored due
           to typo error http://i2/tasks/edit/?id=4573354650786434584            to typo error http://i2/tasks/edit/?id=4573354650786434584
Line 9073 Line 13261
   
         * src/main/untaint.C: removed needless const          * src/main/untaint.C: removed needless const
   
         * src/include/pa_string.h, src/main/pa_common.C,          * src/: include/pa_string.h, main/pa_common.C, main/pa_string.C:
           src/main/pa_string.C, www/htdocs/.htaccess: String.for_each bug            String.for_each bug fixed [omited one-char cases]
           fixed [omited one-char cases]  
   
         * src/include/pa_stack.h: bugfix: before collecting garbage,          * src/include/pa_stack.h: bugfix: before collecting garbage,
           runtime-executor stack were cleared... BADLY            runtime-executor stack were cleared... BADLY
   
         * src/main/pa_string.C, www/htdocs/.htaccess, www/htdocs/auto.p:          * src/main/pa_string.C: ^stirng.replace code used old
           ^stirng.replace code used old param-convention on langs.append,            param-convention on langs.append, fixed that search fo the like,
           fixed that search fo the like, found none            found none
   
         * src/classes/op.C, src/include/pa_string.h, src/main/pa_string.C,          * src/: classes/op.C, include/pa_string.h, main/pa_string.C:
           www/htdocs/.htaccess: string::serialize/deserialize implemented            string::serialize/deserialize implemented Language enum assigned
           Language enum assigned meaningful letters [more convinient for            meaningful letters [more convinient for debugging. read warning
           debugging. read warning before adding/changing anything]            before adding/changing anything]
   
 2003-09-25  paf  2003-09-25  paf
   
Line 9112 Line 13299
           src/main/untaint.C, src/types/pa_value.h, src/types/pa_vimage.C,            src/main/untaint.C, src/types/pa_value.h, src/types/pa_vimage.C,
           src/types/pa_vmail.C, src/types/pa_vmath.C,            src/types/pa_vmail.C, src/types/pa_vmath.C,
           src/types/pa_vstateless_class.h, src/types/pa_vstatus.C,            src/types/pa_vstateless_class.h, src/types/pa_vstatus.C,
           src/types/pa_vxnode.C, www/htdocs/.htaccess:            src/types/pa_vxnode.C: string_fragments_to_cord merged to HEAD
           string_fragments_to_cord merged to HEAD  
   
         * src/main/: compile.tab.C, pa_string.C: string: debug: .v()          * src/main/: compile.tab.C, pa_string.C: string: debug: .v()
           functions aligned to that of eeparser3 look            functions aligned to that of eeparser3 look
Line 9300 Line 13486
           src/include/pa_config_fixed.h, src/include/pa_version.h,            src/include/pa_config_fixed.h, src/include/pa_version.h,
           src/lib/Makefile.am, src/main/compile.tab.C,            src/lib/Makefile.am, src/main/compile.tab.C,
           src/main/pa_charset.C, src/main/pa_string.C, src/main/untaint.C,            src/main/pa_charset.C, src/main/pa_string.C, src/main/untaint.C,
           src/types/pa_vmail.C, www/htdocs/.htaccess, www/htdocs/auto.p:            src/types/pa_vmail.C: merged 3.1.0 latest changes
           merged 3.1.0 latest changes  
   
 2003-08-15  paf  2003-08-15  paf
   
Line 9433 Line 13618
           src/types/pa_vxdoc.C, src/types/pa_vxdoc.h,            src/types/pa_vxdoc.C, src/types/pa_vxdoc.h,
           src/types/pa_vxnode.C, src/types/pa_vxnode.h,            src/types/pa_vxnode.C, src/types/pa_vxnode.h,
           src/types/pa_wcontext.C, src/types/pa_wcontext.h,            src/types/pa_wcontext.C, src/types/pa_wcontext.h,
           src/types/pa_wwrapper.h, src/types/types.dsp,            src/types/pa_wwrapper.h, src/types/types.dsp: moved tempate_gc to
           www/htdocs/.htaccess, www/htdocs/auto.p, www/htdocs/index.html:            HEAD
           moved tempate_gc to HEAD  
   
         * tests/: 001.html, 002.html, 003.html, 004.html, 005.html,          * tests/: 001.html, 002.html, 003.html, 004.html, 005.html,
           006.html, 007.html, 008.html, 009.html, 010.html, 011.html,            006.html, 007.html, 008.html, 009.html, 010.html, 011.html,
Line 9545 Line 13729
   
         * src/include/pa_version.h: release          * src/include/pa_version.h: release
   
         * parser3.dsw, src/main/pa_globals.C, www/htdocs/.htaccess:          * parser3.dsw, src/main/pa_globals.C: relative paths to xml&gc libs
           relative paths to xml&gc libs  
   
         * src/classes/math.C: merged uuid bugfix          * src/classes/math.C: merged uuid bugfix
   
Line 9562 Line 13745
   
         * src/classes/math.C: uuid bugfix          * src/classes/math.C: uuid bugfix
   
         * parser3.dsw, src/main/pa_globals.C, www/htdocs/.htaccess: few          * parser3.dsw, src/main/pa_globals.C: few paths for libxml
           paths for libxml debug/release changes            debug/release changes
   
         * src/lib/md5/pa_md5c.c: PA_ -> pa_          * src/lib/md5/pa_md5c.c: PA_ -> pa_
   
Line 9631 Line 13814
   
         * ChangeLog, src/classes/file.C, src/classes/hash.C,          * ChangeLog, src/classes/file.C, src/classes/hash.C,
           src/classes/image.C, src/classes/op.C, src/classes/string.C,            src/classes/image.C, src/classes/op.C, src/classes/string.C,
           src/classes/table.C, www/htdocs/.htaccess: fixed several            src/classes/table.C: fixed several uninitialized local
           uninitialized local structures.  notably ^hash.foreach now            structures.  notably ^hash.foreach now inserts delimiters
           inserts delimiters properly [were inserting it before first body]            properly [were inserting it before first body]
   
 2003-06-24  paf  2003-06-24  paf
   
Line 9767 Line 13950
   
         * operators.txt, src/classes/math.C, src/lib/md5/pa_md5.h,          * operators.txt, src/classes/math.C, src/lib/md5/pa_md5.h,
           src/lib/md5/pa_md5c.c, tests/141.html,            src/lib/md5/pa_md5c.c, tests/141.html,
           tests/results/141.processed, www/htdocs/.htaccess: merged from            tests/results/141.processed: merged from head ^math:uuid[]
           head ^math:uuid[] ^math:uid64[] ^math:md5[string]            ^math:uid64[] ^math:md5[string]
   
           test added: 141.html            test added: 141.html
   
Line 9800 Line 13983
   
         * src/classes/table.C: more warnings          * src/classes/table.C: more warnings
   
         * src/include/pa_array.h, src/include/pa_table.h,          * src/: include/pa_array.h, include/pa_table.h, main/pa_table.C:
           src/main/pa_table.C, www/htdocs/.htaccess: removed checks in            removed checks in table::set_current, moved them back to
           table::set_current, moved them back to table::locate implemented            table::locate implemented table::create/join ñ $.reverse
           table::create/join ñ $.reverse  
   
         * src/: include/pa_table.h, main/pa_array.C, main/pa_table.C:          * src/: include/pa_table.h, main/pa_array.C, main/pa_table.C:
           removed checks in table::set_current, moved them back to            removed checks in table::set_current, moved them back to
Line 9816 Line 13998
           src/include/pa_config_includes.h, src/include/pa_string.h,            src/include/pa_config_includes.h, src/include/pa_string.h,
           src/include/pa_table.h, src/main/pa_request.C,            src/include/pa_table.h, src/main/pa_request.C,
           src/main/pa_sql_driver_manager.C, src/main/pa_string.C,            src/main/pa_sql_driver_manager.C, src/main/pa_string.C,
           src/main/pa_table.C, www/htdocs/.htaccess: merged from HEAD from            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
   
         * www/htdocs/.htaccess, operators.txt, src/classes/date.C,          * operators.txt, src/classes/date.C, src/classes/table.C,
           src/classes/table.C, src/include/pa_array.h,            src/include/pa_array.h, src/include/pa_common.h,
           src/include/pa_common.h, src/include/pa_config_includes.h,            src/include/pa_config_includes.h, src/include/pa_globals.h,
           src/include/pa_globals.h, src/include/pa_table.h,            src/include/pa_table.h, src/main/pa_array.C,
           src/main/pa_array.C, src/main/pa_globals.C,            src/main/pa_globals.C, src/main/pa_request.C,
           src/main/pa_request.C, src/main/pa_sql_driver_manager.C,            src/main/pa_sql_driver_manager.C, src/main/pa_string.C,
           src/main/pa_string.C, src/main/pa_table.C:            src/main/pa_table.C: append_array_limit_sense_change locate
           append_array_limit_sense_change locate accepts options same as            accepts options same as create new option: $.reverse(1)   [do not
           create new option: $.reverse(1)   [do not work in table::create]            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 10009 Line 14191
           types/pa_vform.C, types/pa_vform.h, types/pa_vmail.C: pa_vform            types/pa_vform.C, types/pa_vform.h, types/pa_vmail.C: pa_vform
           violated String::invariant. started fixing [not compiled now]            violated String::invariant. started fixing [not compiled now]
   
         * src/classes/string.C, src/include/pa_string.h,          * src/: classes/string.C, include/pa_string.h, lib/cord/cordbscs.c,
           src/lib/cord/cordbscs.c, src/main/compile.tab.C,            main/compile.tab.C, main/compile.y, main/pa_string.C,
           src/main/compile.y, src/main/pa_string.C, src/main/untaint.C,            main/untaint.C, targets/cgi/parser3.C: number of string style
           src/targets/cgi/parser3.C, www/htdocs/.htaccess: number of string            improvements & optimizations
           style improvements & optimizations  
   
         * src/classes/xnode.C: =0 bug fix [left from autoptr default ctor          * src/classes/xnode.C: =0 bug fix [left from autoptr default ctor
           :(]            :(]
Line 10069 Line 14250
         * src/: include/pa_common.h, main/pa_common.C, main/pa_exec.C: safe          * src/: include/pa_common.h, main/pa_common.C, main/pa_exec.C: safe
           mode error message now includes numbers            mode error message now includes numbers
   
         * src/main/untaint.C, src/targets/cgi/parser3.C,          * src/: main/untaint.C, targets/cgi/parser3.C: unknown untaint lang
           www/htdocs/.htaccess: unknown untaint lang now causes death            now causes death
   
 2003-04-04  paf  2003-04-04  paf
   
Line 10237 Line 14418
           main/pa_exception.C, main/pa_request.C: debug info: started            main/pa_exception.C, main/pa_request.C: debug info: started
           using.  todo:complete            using.  todo:complete
   
         * src/classes/op.C, src/include/pa_operation.h,          * src/: classes/op.C, include/pa_operation.h, include/pa_request.h,
           src/include/pa_request.h, src/main/compile.C,            main/compile.C, main/compile.tab.C, main/compile.y,
           src/main/compile.tab.C, src/main/compile.y,            main/compile_tools.C, main/compile_tools.h, main/execute.C,
           src/main/compile_tools.C, src/main/compile_tools.h,            main/pa_request.C: prepared debug info todo:use it
           src/main/execute.C, src/main/pa_request.C, www/htdocs/.htaccess:  
           prepared debug info todo:use it  
   
         * src/include/pa_operation.h: strange mistake fixed: forgot to          * src/include/pa_operation.h: strange mistake fixed: forgot to
           return Operation class->union after switching from autoptrs.            return Operation class->union after switching from autoptrs.
Line 10259 Line 14438
           src/targets/cgi/parser3.C, tests/run_parser.sh: gif encoder bug            src/targets/cgi/parser3.C, tests/run_parser.sh: gif encoder bug
           fix [gdGrowingBuf]            fix [gdGrowingBuf]
   
         * configure.in, src/lib/Makefile.am, www/htdocs/.htaccess: removed          * configure.in, src/lib/Makefile.am: removed patches
           patches  
   
         * configure, src/include/pa_config_auto.h.in,          * configure, src/include/pa_config_auto.h.in,
           src/main/pa_charset.C: --enable-assertions autoconf-ed            src/main/pa_charset.C: --enable-assertions autoconf-ed
   
         * src/main/pa_common.C, www/htdocs/.htaccess: uncommented http://          * src/main/pa_common.C: uncommented http:// file loading
           file loading  
   
         * src/: classes/xdoc.C, types/pa_vxdoc.h: removed ref leak in          * src/: classes/xdoc.C, types/pa_vxdoc.h: removed ref leak in
           xdoc::create/load            xdoc::create/load
Line 10311 Line 14488
   
 2003-04-01  paf  2003-04-01  paf
   
         * src/classes/xdoc.C, src/classes/xnode.h, src/include/pa_memory.h,          * src/: classes/xdoc.C, classes/xnode.h, include/pa_memory.h,
           src/main/pa_memory.C, src/targets/cgi/parser3.C,            main/pa_memory.C, targets/cgi/parser3.C, types/pa_vxdoc.h,
           src/types/pa_vxdoc.h, src/types/pa_vxnode.C,            types/pa_vxnode.C, types/pa_vxnode.h: memory bug debugged down:
           src/types/pa_vxnode.h, www/htdocs/.htaccess: memory bug debugged            gdome uses glib memory, and stores last pointer to xmlDoc there,
           down: gdome uses glib memory, and stores last pointer to xmlDoc            gc misses that and collects valid memory fixed by remembering
           there, gc misses that and collects valid memory fixed by            xmlDoc from dom object in xdoc.  todo: do something with
           remembering xmlDoc from dom object in xdoc.  todo: do something            premature free of xdoc with xnodes/node values referring into it
           with premature free of xdoc with xnodes/node values referring  
           into it  
   
         * src/classes/: mail.C: typo fix          * src/classes/: mail.C: typo fix
   
Line 10344 Line 14519
 2003-03-31  paf  2003-03-31  paf
   
         * INSTALL, src/classes/xdoc.C, src/main/pa_globals.C,          * INSTALL, src/classes/xdoc.C, 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: started
           www/htdocs/.htaccess: started xml lib memory debugging, simple            xml lib memory debugging, simple checks failed: it seems that
           checks failed: it seems that library does realloc(bad ptr), and            library does realloc(bad ptr), and recording those ptrs in heap
           recording those ptrs in heap [for debugging] was bad: heap            [for debugging] was bad: heap situation changes = everything
           situation changes = everything works fine            works fine
   
         * src/: main/pa_charset.C, include/pa_charset.h: worked around          * src/: main/pa_charset.C, include/pa_charset.h: worked around
           xmlRegisterCharEncodingHandler limitation [currently imposed            xmlRegisterCharEncodingHandler limitation [currently imposed
Line 10407 Line 14582
   
         * src/doc/memory.dox: forgot to add          * src/doc/memory.dox: forgot to add
   
         * src/classes/classes.dsp, src/classes/memory.C,          * src/: classes/classes.dsp, classes/memory.C, classes/xdoc.C,
           src/classes/xdoc.C, src/include/pa_array.h,            include/pa_array.h, include/pa_request.h, include/pa_stack.h,
           src/include/pa_request.h, src/include/pa_stack.h,            include/pa_string.h, lib/cord/cord.dsp, lib/ltdl/libltdl.dsp,
           src/include/pa_string.h, src/lib/cord/cord.dsp,            lib/md5/md5.dsp, lib/pcre/pcre.dsp, main/compile.tab.C,
           src/lib/ltdl/libltdl.dsp, src/lib/md5/md5.dsp,            main/compile.y, main/compile_tools.C, main/compile_tools.h,
           src/lib/pcre/pcre.dsp, src/main/compile.tab.C,            main/main.dsp, main/pa_string.C, targets/cgi/parser3.C,
           src/main/compile.y, src/main/compile_tools.C,            targets/cgi/parser3.dsp, types/pa_vmail.C,
           src/main/compile_tools.h, src/main/main.dsp,            types/pa_vmethod_frame.C, types/types.dsp: Array::put(index,
           src/main/pa_string.C, src/targets/cgi/parser3.C,            T>>&<< removed after Stack::pop wiping removed [moved to separate
           src/targets/cgi/parser3.dsp, src/types/pa_vmail.C,            func] other Array & removed
           src/types/pa_vmethod_frame.C, src/types/types.dsp,  
           www/htdocs/.htaccess: Array::put(index, T>>&<< removed after  
           Stack::pop wiping removed [moved to separate func] other Array &  
           removed  
   
 2003-03-26  paf  2003-03-26  paf
   
Line 10474 Line 14645
         * src/lib/cord/include/: cord.h, ec.h, gc.h, private/cord_pos.h:          * src/lib/cord/include/: cord.h, ec.h, gc.h, private/cord_pos.h:
           bundled gc includes            bundled gc includes
   
         * src/classes/op.C, src/include/pa_array.h,          * src/: classes/op.C, include/pa_array.h,
           src/include/pa_sql_connection.h, src/include/pa_string.h,            include/pa_sql_connection.h, include/pa_string.h,
           src/include/pa_version.h, src/main/compile.tab.C,            include/pa_version.h, main/compile.tab.C, main/compile.y,
           src/main/compile.y, src/main/execute.C, src/main/pa_common.C,            main/execute.C, main/pa_common.C, main/pa_exception.C,
           src/main/pa_exception.C, src/main/pa_request.C,            main/pa_request.C, main/pa_string.C, targets/cgi/parser3.C,
           src/main/pa_string.C, src/targets/cgi/parser3.C,            targets/cgi/parser3.dsp: a number of bugfixes [while testing
           src/targets/cgi/parser3.dsp, www/htdocs/.htaccess: a number of            first real site (aval)]
           bugfixes [while testing first real site (aval)]  
   
 2003-03-25  paf  2003-03-25  paf
   
Line 10502 Line 14672
   
         * operators.txt, src/classes/Makefile.am, src/classes/classes.dsp,          * operators.txt, src/classes/Makefile.am, src/classes/classes.dsp,
           src/classes/op.C, src/main/pa_request.C, src/types/Makefile.am,            src/classes/op.C, src/main/pa_request.C, src/types/Makefile.am,
           src/types/pa_venv.h, src/types/types.dsp, www/htdocs/.htaccess,            src/types/pa_venv.h, src/types/types.dsp, src/classes/memory.C,
           src/classes/memory.C, src/types/pa_vmemory.h: ^memory:compact[]            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 10973 Line 15143
   
 2003-03-17  paf  2003-03-17  paf
   
         * src/classes/date.C, src/classes/file.C, src/classes/form.C,          * src/: classes/date.C, classes/file.C, classes/form.C,
           src/classes/image.C, src/classes/mail.C, src/classes/op.C,            classes/image.C, classes/mail.C, classes/op.C, classes/table.C,
           src/classes/table.C, src/classes/xdoc.C, src/classes/xnode.C,            classes/xdoc.C, classes/xnode.C, include/pa_pool.h,
           src/include/pa_pool.h, src/include/pa_pragma_pack_begin.h,            include/pa_pragma_pack_begin.h, include/pa_pragma_pack_end.h,
           src/include/pa_pragma_pack_end.h, src/include/pa_string.h,            include/pa_string.h, include/pa_types.h, main/compile.C,
           src/include/pa_types.h, src/main/compile.C,            main/compile.tab.C, main/execute.C, main/pa_charset.C,
           src/main/compile.tab.C, src/main/execute.C,            main/pa_common.C, main/pa_exception.C, main/pa_exec.C,
           src/main/pa_charset.C, src/main/pa_common.C,            main/pa_globals.C, main/pa_pool.C, main/pa_request.C,
           src/main/pa_exception.C, src/main/pa_exec.C,            main/pa_sql_driver_manager.C, main/pa_string.C,
           src/main/pa_globals.C, src/main/pa_pool.C, src/main/pa_request.C,            main/pa_stylesheet_manager.C, main/pa_uue.C, main/untaint.C,
           src/main/pa_sql_driver_manager.C, src/main/pa_string.C,            targets/cgi/pa_pool.C, targets/cgi/parser3.C,
           src/main/pa_stylesheet_manager.C, src/main/pa_uue.C,            targets/cgi/parser3.dsp, targets/cgi/pool_storage.h,
           src/main/untaint.C, src/targets/cgi/pa_pool.C,            types/pa_vcookie.C, types/pa_vdouble.h, types/pa_vfile.C,
           src/targets/cgi/parser3.C, src/targets/cgi/parser3.dsp,            types/pa_vform.C, types/pa_vint.h, types/pa_vmail.C,
           src/targets/cgi/pool_storage.h, src/types/pa_vcookie.C,            types/pa_vxdoc.C, types/pa_vxdoc.h, types/pa_vxnode.C,
           src/types/pa_vdouble.h, src/types/pa_vfile.C,            types/pa_vxnode.h: libgc attempt
           src/types/pa_vform.C, src/types/pa_vint.h, src/types/pa_vmail.C,  
           src/types/pa_vxdoc.C, src/types/pa_vxdoc.h,  
           src/types/pa_vxnode.C, src/types/pa_vxnode.h,  
           www/htdocs/.htaccess, www/htdocs/auto.p: libgc attempt  
   
 2003-03-13  paf  2003-03-13  paf
   
Line 11000 Line 15166
           main/pa_sql_driver_manager.C, targets/cgi/parser3.C: lt_dlexit            main/pa_sql_driver_manager.C, targets/cgi/parser3.C: lt_dlexit
           called            called
   
         * src/include/pa_request.h, src/lib/ltdl/libltdl.dsp,          * src/: include/pa_request.h, lib/ltdl/libltdl.dsp,
           src/lib/md5/md5.dsp, src/main/compile.tab.C, src/main/execute.C,            lib/md5/md5.dsp, main/compile.tab.C, main/execute.C,
           src/main/pa_request.C, src/targets/cgi/parser3.C,            main/pa_request.C, targets/cgi/parser3.C, types/pa_value.C,
           src/types/pa_value.C, src/types/pa_value.h,            types/pa_value.h, types/pa_vobject.h,
           src/types/pa_vobject.h, src/types/pa_vstateless_class.h,            types/pa_vstateless_class.h, types/pa_vstatus.C, types/types.dsp:
           src/types/pa_vstatus.C, src/types/types.dsp,            set_base, set_derived simplified [counter leaks fixed]
           www/htdocs/.htaccess: set_base, set_derived simplified [counter  
           leaks fixed]  
   
         * ChangeLog, src/include/pa_config_fixed.h, src/types/pa_vstatus.C,          * ChangeLog, src/include/pa_config_fixed.h, src/types/pa_vstatus.C,
           src/types/types.dsp: incorporated status class patch From:            src/types/types.dsp: incorporated status class patch From:
Line 11047 Line 15211
   
 2003-03-11  paf  2003-03-11  paf
   
         * src/main/compile.tab.C, src/main/compile.y,          * src/: main/compile.tab.C, main/compile.y, sql/pa_sql_driver.h,
           src/sql/pa_sql_driver.h, src/types/pa_vstateless_class.C,            types/pa_vstateless_class.C, types/pa_vstateless_class.h: removed
           src/types/pa_vstateless_class.h, www/htdocs/.htaccess: removed  
           necessity of libstdc++            necessity of libstdc++
   
         * src/include/pa_request.h: ANTI_ENDLESS_EXECUTE_RECOURSION doubled          * src/include/pa_request.h: ANTI_ENDLESS_EXECUTE_RECOURSION doubled
Line 11080 Line 15243
   
         * src/main/pa_request.C: forgotten: ifdef XML          * src/main/pa_request.C: forgotten: ifdef XML
   
         * src/main/pa_request.C, www/htdocs/.htaccess: forgotten: ifdef XML          * src/main/pa_request.C: forgotten: ifdef XML
   
         * src/targets/cgi/parser3.C: todo: move to latest xml version on          * src/targets/cgi/parser3.C: todo: move to latest xml version on
           win32 and run memleak tests again            win32 and run memleak tests again
Line 11094 Line 15257
         * src/: main/untaint.C, types/pa_vmail.C: mail: transcode fixed.          * src/: main/untaint.C, types/pa_vmail.C: mail: transcode fixed.
           todo: still problems when transcode from charset A to A.            todo: still problems when transcode from charset A to A.
   
         * src/classes/hash.C, src/classes/mail.C, src/classes/string.C,          * src/: classes/hash.C, classes/mail.C, classes/string.C,
           src/classes/table.C, src/include/pa_array.h,            classes/table.C, include/pa_array.h,
           src/main/pa_sql_driver_manager.C, src/types/pa_vmail.C,            main/pa_sql_driver_manager.C, types/pa_vmail.C, types/pa_vmail.h:
           src/types/pa_vmail.h, www/htdocs/.htaccess,            started full-scale-site-test [~ http://parser.ru sources]
           www/htdocs/index.html: started full-scale-site-test [~  
           http://parser.ru sources]  
   
           some fixes            some fixes
   
Line 11146 Line 15307
         * tests/: 106.html, results/106.processed: test: 106 xdoc create,          * tests/: 106.html, results/106.processed: test: 106 xdoc create,
           string            string
   
         * src/include/pa_charset.h, src/main/pa_charset.C,          * src/: include/pa_charset.h, main/pa_charset.C: xml: charset two
           www/htdocs/.htaccess: xml: charset two mem alloc functions used            mem alloc functions used for different cases [libxml, libxsl]
           for different cases [libxml, libxsl]  
   
         * src/classes/classes.C: fixed: prevent system classes from          * src/classes/classes.C: fixed: prevent system classes from
           modification to lock ALL the classes, not only directly used            modification to lock ALL the classes, not only directly used
Line 11190 Line 15350
         * tests/: 058_paf2000.png, results/058.processed: .png added with          * tests/: 058_paf2000.png, results/058.processed: .png added with
           -kb now            -kb now
   
         * src/include/pa_charset.h, src/include/pa_charsets.h,          * src/: include/pa_charset.h, include/pa_charsets.h,
           src/main/pa_charset.C, src/main/pa_charsets.C,            main/pa_charset.C, main/pa_charsets.C: charset_utf8 declaration
           www/htdocs/.htaccess: charset_utf8 declaration moved to            moved to charsets.C
           charsets.C  
   
 2003-03-05  paf  2003-03-05  paf
   
Line 11202 Line 15361
           tests/results/105.processed: String::match bug fixed            tests/results/105.processed: String::match bug fixed
   
         * src/classes/op.C, src/main/main.dsp, tests/104.html,          * src/classes/op.C, src/main/main.dsp, tests/104.html,
           tests/results/104.processed, www/htdocs/.htaccess: ^bpt operator            tests/results/104.processed: ^bpt operator added [does int3 in
           added [does int3 in debug build on win32]            debug build on win32]
   
         * tests/: 057.html, results/057.processed: test bug fixed          * tests/: 057.html, results/057.processed: test bug fixed
   
         * www/htdocs/: auto.p, autoptr.html, base.p, derived.p, font.gif,  
           global.xsl, index.html, mailreceive.eml, mailreceive.html,  
           operators.p, parser-status.html, people.dtd, some.p: removed old  
           tests  
   
         * src/targets/cgi/Makefile.am: linker needed more tricks to link OK          * src/targets/cgi/Makefile.am: linker needed more tricks to link OK
   
         * src/classes/math.C: can be: crypt in -lcrypt OK, but crypt.h be          * src/classes/math.C: can be: crypt in -lcrypt OK, but crypt.h be
Line 11383 Line 15537
           String_UL in all places [was not everywhere] untaint test: 032            String_UL in all places [was not everywhere] untaint test: 032
   
         * src/targets/cgi/parser3.C, tests/004.html, tests/Makefile,          * src/targets/cgi/parser3.C, tests/004.html, tests/Makefile,
           tests/results/004.processed, www/htdocs/.htaccess,            tests/results/004.processed, tests/parser-cygwin.sh,
           tests/parser-cygwin.sh, tests/parser-unix.sh: removed -H command            tests/parser-unix.sh: removed -H command line key, now testing
           line key, now testing using .sh file with SERVER_SOFTWARE=xxx            using .sh file with SERVER_SOFTWARE=xxx
   
 2003-02-26  paf  2003-02-26  paf
   
Line 11500 Line 15654
   
         * src/main/pa_array.C: pool::format_integer terminator fixed          * src/main/pa_array.C: pool::format_integer terminator fixed
   
         * src/main/execute.C, src/targets/cgi/parser3.C,          * src/: main/execute.C, targets/cgi/parser3.C: release mode now
           www/htdocs/autoptr.html: release mode now compiles OK test to            compiles OK test to show benefits of free
           show benefits of free  
   
         * src/: classes/file.C, classes/image.C, classes/mail.C,          * src/: classes/file.C, classes/image.C, classes/mail.C,
           classes/op.C, classes/xdoc.C, main/pa_charset.C, main/pa_exec.C,            classes/op.C, classes/xdoc.C, main/pa_charset.C, main/pa_exec.C,
Line 11515 Line 15668
   
 2003-02-20  paf  2003-02-20  paf
   
         * src/classes/date.C, src/classes/double.C, src/classes/file.C,          * src/: classes/date.C, classes/double.C, classes/file.C,
           src/classes/hash.C, src/classes/image.C, src/classes/int.C,            classes/hash.C, classes/image.C, classes/int.C, classes/mail.C,
           src/classes/mail.C, src/classes/math.C, src/classes/op.C,            classes/math.C, classes/op.C, classes/response.C,
           src/classes/response.C, src/classes/string.C,            classes/string.C, classes/table.C, classes/void.C,
           src/classes/table.C, src/classes/void.C, src/classes/xdoc.C,            classes/xdoc.C, classes/xnode.C, main/pa_string.C,
           src/classes/xnode.C, src/main/pa_string.C, src/types/pa_method.h,            types/pa_method.h, types/pa_value.C, types/pa_vmethod_frame.h:
           src/types/pa_value.C, src/types/pa_vmethod_frame.h,            string cmp fixed
           www/htdocs/autoptr.html: string cmp fixed  
   
         * src/: include/pa_config_fixed.h, targets/cgi/parser3.C: form          * src/: include/pa_config_fixed.h, targets/cgi/parser3.C: form
           values passed OK now            values passed OK now
Line 11892 Line 16044
           src/types/pa_vstateless_object.h, src/types/pa_vstatus.h,            src/types/pa_vstateless_object.h, src/types/pa_vstatus.h,
           src/types/pa_vstring.h, src/types/pa_vtable.h,            src/types/pa_vstring.h, src/types/pa_vtable.h,
           src/types/pa_vvoid.h, src/types/pa_wcontext.C,            src/types/pa_vvoid.h, src/types/pa_wcontext.C,
           src/types/pa_wcontext.h, src/types/pa_wwrapper.h,            src/types/pa_wcontext.h, src/types/pa_wwrapper.h: ConstStringPtr
           www/htdocs/.htaccess: ConstStringPtr died, long live StringPtr            died, long live StringPtr
   
 2003-01-30  paf  2003-01-30  paf
   
Line 12192 Line 16344
   
 2003-01-16  paf  2003-01-16  paf
   
         * www/htdocs/index.html: image.copy fixed transparent resampling  
   
         * operators.txt, src/include/pa_globals.h, src/main/pa_common.C,          * operators.txt, src/include/pa_globals.h, src/main/pa_common.C,
           src/main/pa_globals.C, www/htdocs/index.html: http:// introducing            src/main/pa_globals.C: http:// introducing     $.any-status(1)
           $.any-status(1)  
   
         * operators.txt, src/include/pa_config_fixed.h,          * operators.txt, src/include/pa_config_fixed.h,
           src/main/pa_common.C, www/htdocs/index.html: http request now            src/main/pa_common.C: http request now return status. and not
           return status. and not fail on status!=200            fail on status!=200
   
 2003-01-15  paf  2003-01-15  paf
   
Line 12255 Line 16404
   
         * src/include/pa_version.h: 0007          * src/include/pa_version.h: 0007
   
         * src/doc/aliased.dox, src/doc/index.dox, src/doc/module.dox,          * src/doc/: aliased.dox, index.dox, module.dox, pooled.dox: removed
           src/doc/pooled.dox, www/htdocs/index.html: removed outdated            outdated parts, made links to language docs
           parts, made links to language docs  
   
         * src/include/pa_config_auto.h.in: comment          * src/include/pa_config_auto.h.in: comment
   
Line 12286 Line 16434
         * src/classes/mail.C: $MAIL in @conf now invalid when configured          * src/classes/mail.C: $MAIL in @conf now invalid when configured
           with --with-sendmail            with --with-sendmail
   
         * src/main/pa_exec.C, www/htdocs/index.html: fork/pipe error now          * src/main/pa_exec.C: fork/pipe error now [old always-pipe-error
           [old always-pipe-error fixed]            fixed]
   
 2002-12-23  paf  2002-12-23  paf
   
Line 12316 Line 16464
   
         * operators.txt, src/include/pa_globals.h,          * 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, www/htdocs/index.html: $response:download            src/main/pa_request.C: $response:download
   
         * src/classes/mail.C: 'to' check bugfix [now checked only on ms          * src/classes/mail.C: 'to' check bugfix [now checked only on ms
           compiler [win32]].            compiler [win32]].
Line 12356 Line 16504
   
 2002-12-14  paf  2002-12-14  paf
   
         * www/htdocs/index.html: exception type fixed  
   
         * src/classes/table.C: removed unnecessary code          * src/classes/table.C: removed unnecessary code
   
         * src/sql/pa_sql_driver.h: exception type fixed          * src/sql/pa_sql_driver.h: exception type fixed
   
 2002-12-09  paf  2002-12-09  paf
   
         * src/types/pa_vvoid.h, www/htdocs/index.html: $void.store[now]          * src/types/pa_vvoid.h: $void.store[now] error
           error  
   
         * src/targets/cgi/parser3.C: ::die now tries to write core dump          * src/targets/cgi/parser3.C: ::die now tries to write core dump
   
Line 12401 Line 16546
   
 2002-12-05  paf  2002-12-05  paf
   
         * src/classes/mail.C, src/types/pa_vmail.C, src/types/pa_vmail.h,          * src/: classes/mail.C, types/pa_vmail.C, types/pa_vmail.h: smtp
           www/htdocs/index.html: smtp cc/bcc OK now            cc/bcc OK now
   
         * src/main/untaint.C, www/htdocs/index.html: mail header closed          * src/main/untaint.C: mail header closed properly
           properly  
   
         * src/main/pa_common.C, src/main/untaint.C, src/types/pa_vmail.C,          * src/: main/pa_common.C, main/untaint.C, types/pa_vmail.C: mail
           www/htdocs/index.html: mail header ',' allowed.  still bugs in            header ',' allowed.  still bugs in smtp [only one receiptient
           smtp [only one receiptient works, cc, bcc ignored now, and MAILED            works, cc, bcc ignored now, and MAILED ;)]
           ;)]  
   
           [strncpy killed, memnchr used]            [strncpy killed, memnchr used]
   
         * src/main/pa_table.C: table-copy now current=0          * src/main/pa_table.C: table-copy now current=0
   
         * src/main/pa_array.C, src/main/pa_table.C, www/htdocs/index.html:          * src/main/: pa_array.C, pa_table.C: wow! found/fixed bug in
           wow! found/fixed bug in lowlevel proc            lowlevel proc
   
         * src/targets/cgi/parser3.C: more checks on          * src/targets/cgi/parser3.C: more checks on
           http://domain/parser.cgi start [maybe some getenv returns "",            http://domain/parser.cgi start [maybe some getenv returns "",
Line 12427 Line 16570
           http://domain/parser.cgi start [maybe some getenv returns "",            http://domain/parser.cgi start [maybe some getenv returns "",
           checked that now            checked that now
   
         * src/targets/cgi/parser3.C, www/htdocs/index.html: error logging          * src/targets/cgi/parser3.C: error logging made unbuffered [so that
           made unbuffered [so that out-of-mem errors reached log]            out-of-mem errors reached log]
   
         * src/classes/mail.C, src/targets/cgi/parser3.C,          * src/: classes/mail.C, targets/cgi/parser3.C, types/pa_vmail.C:
           src/types/pa_vmail.C, www/htdocs/index.html: mail:send            mail:send MIME-Version default
           MIME-Version default  
   
         * src/main/main.dsp: pa_version included into main.dsp          * src/main/main.dsp: pa_version included into main.dsp
   
         * www/htdocs/index.html: smtp line ends fixed. now \r\n [not \r].  
           some smtp servers [win32] leave \n intact, and some clients [bat]  
           fail to show letter correctly  
   
 2002-12-04  paf  2002-12-04  paf
   
         * src/types/pa_vform.C: $form:field string value cut by premature 0          * src/types/pa_vform.C: $form:field string value cut by premature 0
   
         * parser3.dsw, src/main/compile.tab.C, src/main/main.dsp,          * parser3.dsw, src/main/compile.tab.C, src/main/main.dsp:
           www/htdocs/.htaccess, www/htdocs/index.html: lib/libltdl ->            lib/libltdl -> lib/ltdl Win32 changes. s
           lib/ltdl Win32 changes. s  
   
         * src/classes/classes.awk: more strict *.C$          * src/classes/classes.awk: more strict *.C$
   
Line 12470 Line 16607
   
         * 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,
           src/types/pa_vcookie.C, src/types/pa_vmail.C,            src/types/pa_vcookie.C, src/types/pa_vmail.C: http header lang of
           www/htdocs/index.html: http header lang of tainted parts becomes            tainted parts becomes http-header
           http-header  
   
 2002-11-29  paf  2002-11-29  paf
   
         * src/classes/date.C, src/classes/image.C, www/htdocs/index.html,          * src/classes/date.C, src/classes/image.C, operators.txt: exif
           operators.txt: exif dates now objects of type date            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
           size in fragment's header] now used image.format            size in fragment's header] now used image.format
   
         * src/include/pa_common.h, src/main/pa_common.C,          * src/: include/pa_common.h, main/pa_common.C,
           src/types/pa_vresponse.C, src/types/pa_vresponse.h,            types/pa_vresponse.C, types/pa_vresponse.h: http:// param values
           www/htdocs/index.html: http:// param values now handled exactly            now handled exactly like $response:header values.  e.g. can be
           like $response:header values.  e.g. can be hash [can have            hash [can have subattributes] & contain date values.
           subattributes] & contain date values.  
   
         * src/main/pa_common.C, www/htdocs/index.html: http:// param values          * src/main/pa_common.C: http:// param values lang forced URI
           lang forced URI  
   
         * src/main/pa_common.C, www/htdocs/index.html: http:// tainted          * src/main/pa_common.C: http:// tainted partes now %xx
           partes now %xx  
   
 2002-11-28  paf  2002-11-28  paf
   
         * www/htdocs/index.html: doc samples  
   
         * operators.txt: http.timeout          * operators.txt: http.timeout
   
         * src/classes/image.C, www/htdocs/index.html: ^image.length now          * src/classes/image.C: ^image.length now counts interchar space.
           counts interchar space. plus space after last char            plus space after last char
   
         * www/htdocs/index.html: regexp syntax xxx$ speed-up  experiments  
   
         * src/main/pa_string.C: PCRE_DOLLAR_ENDONLY          * src/main/pa_string.C: PCRE_DOLLAR_ENDONLY
   
Line 12513 Line 16642
   
         * configure.in: stopped double libltdl/Makefile generation          * configure.in: stopped double libltdl/Makefile generation
   
         * src/classes/image.C, www/htdocs/index.html: ^image.text now          * src/classes/image.C: ^image.text now outputs one pixel HIGHER
           outputs one pixel HIGHER chars [one top horizontal line of 1pixel            chars [one top horizontal line of 1pixel height were missing]
           height were missing]  
   
         * src/classes/op.C, www/htdocs/index.html: ^cache bug fixed.          * src/classes/op.C: ^cache bug fixed.  stupid compiler allowed
           stupid compiler allowed 'false' to go into (Hash *) parameter            'false' to go into (Hash *) parameter
   
 2002-11-27  paf  2002-11-27  paf
   
         * src/include/pa_globals.h, src/main/pa_globals.C,          * src/: include/pa_globals.h, main/pa_globals.C, main/pa_request.C,
           src/main/pa_request.C, src/types/pa_vmail.C,            types/pa_vmail.C: response:body[file]  if file nows it's name now
           www/htdocs/index.html: response:body[file]  if file nows it's            returns content-disposition: >>attachment<<
           name now returns content-disposition: >>attachment<<  
   
         * src/classes/image.C, www/htdocs/index.html: ^image.font << bad          * src/classes/image.C: ^image.font << bad font file-size now
           font file-size now properly reported            properly reported
   
 2002-11-26  paf  2002-11-26  paf
   
         * src/main/pa_request.C: fixed lang in reponse header          * src/main/pa_request.C: fixed lang in reponse header
   
         * src/main/pa_common.C, www/htdocs/.htaccess: utf8 prefix ignored          * src/main/pa_common.C: utf8 prefix ignored @read text
           @read text  
   
         * operators.txt, src/main/pa_common.C, www/htdocs/index.html:          * operators.txt, src/main/pa_common.C: http:// response status!=200
           http:// response status!=200 made exception: http.status with            made exception: http.status with source=bad status#
           source=bad status#  
   
 2002-11-25  paf  2002-11-25  paf
   
Line 12549 Line 16674
           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, www/htdocs/index.html: http          * operators.txt, src/main/pa_common.C: http fields now UPPERCASE
           fields now UPPERCASE  
   
           $file[^file::load[http://there]] $file.SERVER            $file[^file::load[http://there]] $file.SERVER
   
         * src/classes/file.C, src/classes/image.C, src/classes/xdoc.C,          * src/: classes/file.C, classes/image.C, classes/xdoc.C,
           src/include/pa_common.h, src/main/pa_common.C,            include/pa_common.h, main/pa_common.C, main/pa_request.C: checked
           src/main/pa_request.C, www/htdocs/index.html: checked http            http options [invalid onces now reported] made default
           options [invalid onces now reported] made default user-agent: paf            user-agent: paf
   
         * operators.txt, src/classes/file.C, src/classes/table.C,          * operators.txt, src/classes/file.C, src/classes/table.C,
           src/classes/xdoc.C, src/include/pa_common.h,            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,            src/types/pa_vfile.C, src/types/pa_vfile.h: table/xdoc/file::load
           www/htdocs/index.html: table/xdoc/file::load now understand            now understand http:// prefix and additional params, sample:
           http:// prefix and additional params, sample:  
           $rates[^xdoc::load[http://www.cbr.ru/scripts/XML_daily.asp?date_req=02/03/2002;            $rates[^xdoc::load[http://www.cbr.ru/scripts/XML_daily.asp?date_req=02/03/2002;
           $.USER-AGENT[parser3] ]]            $.USER-AGENT[parser3] ]]
   
Line 12573 Line 16696
   
         * 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, www/htdocs/.htaccess,            src/types/pa_vimage.h, operators.txt: $image.exif support
           www/htdocs/index.html, operators.txt: $image.exif support  
           $image.exif.DateTime & co            $image.exif.DateTime & co
   
 2002-11-21  paf  2002-11-21  paf
Line 12587 Line 16709
           negative :(]            negative :(]
   
         * operators.txt, src/classes/image.C, src/include/pa_common.h,          * operators.txt, src/classes/image.C, src/include/pa_common.h,
           src/main/pa_common.C, src/types/pa_vmail.C,            src/main/pa_common.C, src/types/pa_vmail.C: image.measure
           www/htdocs/index.html: image.measure internals rewritten. no            internals rewritten. no there's reader.seek, and all's ready for
           there's reader.seek, and all's ready for EXIF extraction [now we            EXIF extraction [now we fail to measure files with EXIF info]
           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 12636 Line 16757
         * src/main/execute.C: found out why, checked that for now.  todo:          * src/main/execute.C: found out why, checked that for now.  todo:
           find out a way for that user could do that            find out a way for that user could do that
   
         * www/htdocs/: base.p, derived.p, index.html: this example creates  
           base object, which is wrong, todo: find out why  
   
         * src/types/pa_vstateless_object.h: object put replaces static          * src/types/pa_vstateless_object.h: object put replaces static
           parent if any            parent if any
   
         * src/types/pa_vobject.C: object put replaces static parent if any          * src/types/pa_vobject.C: object put replaces static parent if any
   
         * src/classes/form.C, src/classes/mail.C, src/classes/op.C,          * src/: classes/form.C, classes/mail.C, classes/op.C,
           src/classes/xnode.h, src/main/compile.tab.C, src/main/execute.C,            classes/xnode.h, main/compile.tab.C, main/execute.C,
           src/main/pa_request.C, src/types/pa_value.h,            main/pa_request.C, types/pa_value.h, types/pa_vclass.C,
           src/types/pa_vclass.C, src/types/pa_vclass.h,            types/pa_vclass.h, types/pa_vcode_frame.h, types/pa_vcookie.C,
           src/types/pa_vcode_frame.h, src/types/pa_vcookie.C,            types/pa_vcookie.h, types/pa_vdate.h, types/pa_venv.h,
           src/types/pa_vcookie.h, src/types/pa_vdate.h,            types/pa_vfile.h, types/pa_vform.C, types/pa_vform.h,
           src/types/pa_venv.h, src/types/pa_vfile.h, src/types/pa_vform.C,            types/pa_vhash.h, types/pa_vimage.h, types/pa_vmail.C,
           src/types/pa_vform.h, src/types/pa_vhash.h,            types/pa_vmail.h, types/pa_vmath.h, types/pa_vmethod_frame.h,
           src/types/pa_vimage.h, src/types/pa_vmail.C,            types/pa_vobject.C, types/pa_vobject.h, types/pa_vrequest.C,
           src/types/pa_vmail.h, src/types/pa_vmath.h,            types/pa_vrequest.h, types/pa_vresponse.C, types/pa_vresponse.h,
           src/types/pa_vmethod_frame.h, src/types/pa_vobject.C,            types/pa_vstateless_class.C, types/pa_vstateless_class.h,
           src/types/pa_vobject.h, src/types/pa_vrequest.C,            types/pa_vstateless_object.h, types/pa_vstatus.C,
           src/types/pa_vrequest.h, src/types/pa_vresponse.C,            types/pa_vstatus.h, types/pa_vstring.h, types/pa_vtable.C,
           src/types/pa_vresponse.h, src/types/pa_vstateless_class.C,            types/pa_vtable.h, types/pa_vvoid.h, types/pa_vxdoc.C,
           src/types/pa_vstateless_class.h,            types/pa_vxdoc.h, types/pa_vxnode.C, types/pa_vxnode.h,
           src/types/pa_vstateless_object.h, src/types/pa_vstatus.C,            types/pa_wwrapper.h: static fix merged
           src/types/pa_vstatus.h, src/types/pa_vstring.h,  
           src/types/pa_vtable.C, src/types/pa_vtable.h,  
           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_wwrapper.h, www/htdocs/base.p, www/htdocs/derived.p,  
           www/htdocs/index.html: static fix merged  
   
         * src/: main/compile.tab.C, types/pa_vobject.C: killed          * src/: main/compile.tab.C, types/pa_vobject.C: killed
           $virtual_fields in dynamic, but one can reach derived            $virtual_fields in dynamic, but one can reach derived
Line 12681 Line 16793
           them.  also there can be no virtual method calls in static            them.  also there can be no virtual method calls in static
           classes            classes
   
         * src/classes/form.C, src/classes/mail.C, src/classes/op.C,          * src/: classes/form.C, classes/mail.C, classes/op.C,
           src/classes/xnode.h, src/main/execute.C, src/main/pa_request.C,            classes/xnode.h, main/execute.C, main/pa_request.C,
           src/types/pa_value.h, src/types/pa_vclass.C,            types/pa_value.h, types/pa_vclass.C, types/pa_vclass.h,
           src/types/pa_vclass.h, src/types/pa_vcode_frame.h,            types/pa_vcode_frame.h, types/pa_vcookie.C, types/pa_vcookie.h,
           src/types/pa_vcookie.C, src/types/pa_vcookie.h,            types/pa_vdate.h, types/pa_venv.h, types/pa_vfile.h,
           src/types/pa_vdate.h, src/types/pa_venv.h, src/types/pa_vfile.h,            types/pa_vform.C, types/pa_vform.h, types/pa_vhash.h,
           src/types/pa_vform.C, src/types/pa_vform.h, src/types/pa_vhash.h,            types/pa_vimage.h, types/pa_vmail.C, types/pa_vmail.h,
           src/types/pa_vimage.h, src/types/pa_vmail.C,            types/pa_vmath.h, types/pa_vmethod_frame.h, types/pa_vobject.C,
           src/types/pa_vmail.h, src/types/pa_vmath.h,            types/pa_vobject.h, types/pa_vrequest.C, types/pa_vrequest.h,
           src/types/pa_vmethod_frame.h, src/types/pa_vobject.C,            types/pa_vresponse.C, types/pa_vresponse.h,
           src/types/pa_vobject.h, src/types/pa_vrequest.C,            types/pa_vstateless_class.C, types/pa_vstateless_class.h,
           src/types/pa_vrequest.h, src/types/pa_vresponse.C,            types/pa_vstateless_object.h, types/pa_vstatus.C,
           src/types/pa_vresponse.h, src/types/pa_vstateless_class.C,            types/pa_vstatus.h, types/pa_vstring.h, types/pa_vtable.C,
           src/types/pa_vstateless_class.h,            types/pa_vtable.h, types/pa_vvoid.h, types/pa_vxdoc.C,
           src/types/pa_vstateless_object.h, src/types/pa_vstatus.C,            types/pa_vxdoc.h, types/pa_vxnode.C, types/pa_vxnode.h,
           src/types/pa_vstatus.h, src/types/pa_vstring.h,            types/pa_wwrapper.h: static call $self fixed
           src/types/pa_vtable.C, src/types/pa_vtable.h,  
           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_wwrapper.h, www/htdocs/base.p, www/htdocs/derived.p,  
           www/htdocs/index.html: static call $self fixed  
   
         * src/main/execute.C: comment          * src/main/execute.C: comment
   
         * src/classes/op.C, src/types/pa_value.h, src/types/pa_vobject.h,          * src/: classes/op.C, types/pa_value.h, types/pa_vobject.h:
           www/htdocs/base.p, www/htdocs/derived.p, www/htdocs/index.html,  
           www/htdocs/operators.p, www/htdocs/some.p:  
           ^process[$caller.self]{...} now compiles to last derived object            ^process[$caller.self]{...} now compiles to last derived object
           part of that 'self'            part of that 'self'
   
 2002-10-30  paf  
   
         * www/htdocs/: derived.p, some.p: include method overriding tested  
           OK  
   
 2002-10-29  paf  2002-10-29  paf
   
         * src/targets/isapi/parser3isapi.C: comment on 404 bad status          * src/targets/isapi/parser3isapi.C: comment on 404 bad status
Line 12728 Line 16828
           properly escaped.  [tried in mssql->mysql export->import of            properly escaped.  [tried in mssql->mysql export->import of
           binary data]            binary data]
   
 2002-10-28  paf  
   
         * www/htdocs/: index.html: bad email handling test  
   
 2002-10-25  paf  2002-10-25  paf
   
         * src/types/pa_vresponse.C: case insensitive response user fields          * src/types/pa_vresponse.C: case insensitive response user fields
Line 12745 Line 16841
         * operators.txt, src/classes/table.C: ^table.hash{code}...          * operators.txt, src/classes/table.C: ^table.hash{code}...
           ^table.hash(expr)...            ^table.hash(expr)...
   
         * src/types/pa_vmail.C, www/htdocs/index.html: email whitespace          * src/types/pa_vmail.C: email whitespace trimBoth-ed
           trimBoth-ed  
   
 2002-10-22  paf  2002-10-22  paf
   
Line 12768 Line 16863
   
         * operators.txt, src/types/pa_vform.C: $form:image-map          * operators.txt, src/types/pa_vform.C: $form:image-map
   
         * operators.txt, src/classes/file.C, www/htdocs/index.html:          * operators.txt, src/classes/file.C: /some/page.html:
           /some/page.html: ^file:fullpath[a.gif] => /some/a.gif            ^file:fullpath[a.gif] => /some/a.gif
   
 2002-10-17  paf  2002-10-17  paf
   
Line 12783 Line 16878
   
 2002-10-16  paf  2002-10-16  paf
   
         * www/htdocs/index.html: bad compile to system class test          * src/: classes/op.C, include/pa_request.h, main/execute.C,
             main/pa_request.C: Request::self considered equal to
         * src/classes/op.C, src/include/pa_request.h, src/main/execute.C,  
           src/main/pa_request.C, www/htdocs/index.html,  
           www/htdocs/derived.p: Request::self considered equal to  
           VMethodFrame::self, and removed, Request::get_self() mapped to            VMethodFrame::self, and removed, Request::get_self() mapped to
           VMethodFrame.self()            VMethodFrame.self()
   
Line 12796 Line 16888
   
 2002-10-15  paf  2002-10-15  paf
   
         * src/types/pa_vjunction.h, www/htdocs/index.html: ^if(def          * src/types/pa_vjunction.h: ^if(def $junction){was true}{now false}
           $junction){was true}{now false} use ^if($junction is            use ^if($junction is junction){was and now true}
           junction){was and now true}  
           * src/: classes/xdoc.C, classes/xnode.C, include/pa_charset.h,
         * src/classes/xdoc.C, src/classes/xnode.C,            include/pa_pool.h, main/pa_charset.C, main/pa_pool.C,
           src/include/pa_charset.h, src/include/pa_pool.h,            types/pa_vxnode.C: xml->parser strings now have origin, which
           src/main/pa_charset.C, src/main/pa_pool.C, src/types/pa_vxnode.C,  
           www/htdocs/index.html: xml->parser strings now have origin, which  
           points to place where value left xml library and came to parser:            points to place where value left xml library and came to parser:
           place of dom field extraction/call            place of dom field extraction/call
   
         * src/classes/op.C, src/include/pa_opcode.h,          * src/: classes/op.C, include/pa_opcode.h, include/pa_request.h,
           src/include/pa_request.h, src/main/compile.tab.C,            main/compile.tab.C, main/compile.y, main/execute.C,
           src/main/compile.y, src/main/execute.C,            types/pa_vmethod_frame.h: removed last pieces of old code
           src/types/pa_vmethod_frame.h, www/htdocs/derived.p: removed last            allowing $junction.xxx at compile time
           pieces of old code allowing $junction.xxx at compile time  
   
         * ChangeLog, src/classes/op.C, src/main/compile.tab.C,          * ChangeLog, src/classes/op.C, src/main/compile.tab.C,
           src/main/compile.y, src/types/pa_vmethod_frame.h: process[self]            src/main/compile.y, src/types/pa_vmethod_frame.h: process[self]
           objects also considered [were only classes]            objects also considered [were only classes]
   
         * ChangeLog, src/classes/op.C, src/include/pa_request.h,          * ChangeLog, src/classes/op.C, src/include/pa_request.h,
           src/types/pa_vmethod_frame.h, www/htdocs/derived.p,            src/types/pa_vmethod_frame.h: ^process[CLASS]{body} now executed
           www/htdocs/index.html: ^process[CLASS]{body} now executed with            with CLASS self.  [   (request&method_frame).self temporarily
           CLASS self.  [   (request&method_frame).self temporarily changed            changed   ]
           ]  
   
         * src/classes/hash.C, src/classes/op.C, www/htdocs/index.html,          * src/classes/: hash.C, op.C: method_frame now always changed, with
           www/htdocs/operators.p: method_frame now always changed, with no            no exception to native calls.  for&foreach changed to use
           exception to native calls.  for&foreach changed to use  
           method_frame.caller for their var's name context            method_frame.caller for their var's name context
   
         * src/main/execute.C, src/targets/cgi/parser3.C,          * src/: main/execute.C, targets/cgi/parser3.C,
           src/types/pa_vstateless_class.C, src/types/pa_vstateless_class.h,            types/pa_vstateless_class.C, types/pa_vstateless_class.h:
           www/htdocs/operators.p: compiling to system classes disabled            compiling to system classes disabled
   
         * www/htdocs/: derived.p, index.html: test of ^process from  
           operator called from user class  
   
         * operators.txt, src/classes/op.C, www/htdocs/operators.p:          * 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.txt, src/classes/op.C, src/main/compile.tab.C,
           src/main/compile.y, src/main/execute.C, src/main/pa_request.C,            src/main/compile.y, src/main/execute.C, src/main/pa_request.C,
           src/types/Makefile.am, src/types/pa_vjunction.C,            src/types/Makefile.am, src/types/pa_vjunction.C,
           src/types/pa_vjunction.h, src/types/pa_vmethod_frame.h,            src/types/pa_vjunction.h, src/types/pa_vmethod_frame.h,
           src/types/types.dsp, www/htdocs/operators.p: removed            src/types/types.dsp: removed $junction.get $junction.set[]
           $junction.get $junction.set[] introducing $caller            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 12854 Line 16938
   
         * src/classes/op.C: process compiles to code's class class          * src/classes/op.C: process compiles to code's class class
   
         * src/classes/form.C, src/classes/mail.C, src/classes/op.C,          * src/: classes/form.C, classes/mail.C, classes/op.C,
           src/include/pa_request.h, src/main/compile.C,            include/pa_request.h, main/compile.C, main/compile.tab.C,
           src/main/compile.tab.C, src/main/compile.y, src/main/execute.C,            main/compile.y, main/execute.C, main/pa_request.C,
           src/main/pa_request.C, src/types/pa_vstateless_class.h,            types/pa_vstateless_class.h: operators now main-class-methods
           www/htdocs/index.html: operators now main-class-methods  
   
         * src/classes/op.C, src/include/pa_request.h,          * src/: classes/op.C, include/pa_request.h: ^try{^call{}} now has
           www/htdocs/index.html, www/htdocs/operators.p: ^try{^call{}} now            better stack trace [has "call" & co there]
           has better stack trace [has "call" & co there]  
   
         * src/: include/pa_request.h, main/execute.C, main/pa_request.C:          * src/: include/pa_request.h, main/execute.C, main/pa_request.C:
           operators @auto now executed in MAIN context            operators @auto now executed in MAIN context
Line 12880 Line 16962
   
         * src/main/execute.C: comment          * src/main/execute.C: comment
   
         * src/types/pa_vclass.C, src/types/pa_vobject.h,          * src/types/: pa_vclass.C, pa_vobject.h, pa_vstateless_class.C,
           src/types/pa_vstateless_class.C, src/types/pa_vstateless_class.h,            pa_vstateless_class.h: $form:CLASS resurrected [wes killed in
           www/htdocs/index.html, www/htdocs/operators.p: $form:CLASS            action]
           resurrected [wes killed in action]  
   
         * 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, www/htdocs/index.html:            src/types/pa_vstatus.C, operators.txt:
           $status:rusage.tv_secs/usecs introduced            $status:rusage.tv_secs/usecs introduced
   
 2002-10-09  paf  2002-10-09  paf
   
         * src/classes/double.C, src/classes/int.C, src/classes/string.C,          * src/classes/: double.C, int.C, string.C: ^string.int[] now failes
           www/htdocs/derived.p, www/htdocs/index.html: ^string.int[] now            on empty string [or uses (default)]
           failes on empty string [or uses (default)]  
   
 2002-10-08  paf  2002-10-08  paf
   
Line 12918 Line 16998
           src/targets/cgi/Makefile.am: HAVE_TIMEZONE & co now checked and            src/targets/cgi/Makefile.am: HAVE_TIMEZONE & co now checked and
           mailreceive would compile on freebsd now            mailreceive would compile on freebsd now
   
         * src/classes/file.C, src/main/untaint.C, www/htdocs/index.html: 1.          * src/: classes/file.C, main/untaint.C: 1.  file spec language
            file spec language changed: now there are only few chars are            changed: now there are only few chars are untainted: * ? ' " < >
           untainted: * ? ' " < > | and, on unix, : \ ~ [russian letters and            | and, on unix, : \ ~ [russian letters and SPACES now enabled,
           SPACES now enabled, one should use ^untaint[uri]{...} now]            one should use ^untaint[uri]{...} now]
   
           2.  $list[^file:list[dir]] now returns simply tainted names in            2.  $list[^file:list[dir]] now returns simply tainted names in
           $list.name, not tainted as filespec            $list.name, not tainted as filespec
Line 12944 Line 17024
   
 2002-09-20  paf  2002-09-20  paf
   
         * src/main/execute.C, www/htdocs/index.html: code junction calls          * src/main/execute.C: code junction calls disabled [before: code
           disabled [before: code was compiled in such a way, that there            was compiled in such a way, that there were no code-junctions in
           were no code-junctions in OP_CALL]            OP_CALL]
   
           this now error: @badjunctioncall[] ^badjunctioncallinside{code}            this now error: @badjunctioncall[] ^badjunctioncallinside{code}
   
           @badjunctioncallinside[code] ^code[]            @badjunctioncallinside[code] ^code[]
   
         * src/main/compile.tab.C, src/main/compile.y,          * src/main/: compile.tab.C, compile.y: changed grammer on junction
           www/htdocs/index.html: changed grammer on junction expanding to            expanding to include ^junction.method
           include ^junction.method  
   
         * src/main/pa_common.C: -d "DIR/" now true          * src/main/pa_common.C: -d "DIR/" now true
   
         * src/classes/xdoc.C, www/htdocs/index.html: xdoc::create[name] now          * src/classes/xdoc.C: xdoc::create[name] now sets $request:charset
           sets $request:charset as internal xdoc encoding, and after            as internal xdoc encoding, and after decoding attributes set by
           decoding attributes set by dom functions now encoded OK, not as            dom functions now encoded OK, not as digital entities
           digital entities  
   
         * src/classes/xdoc.C: empty transform result, being taken as file          * src/classes/xdoc.C: empty transform result, being taken as file
           now returns empty file, not raises stupid error about "stat-ed            now returns empty file, not raises stupid error about "stat-ed
           file"            file"
   
         * src/types/pa_vhash.h, www/htdocs/operators.p: hash.foreach          * src/types/pa_vhash.h: hash.foreach modification of existing keys
           modification of existing keys allowed            allowed
   
         * src/types/types.dsp: introducing $junction.get/put(1) one can          * src/types/types.dsp: introducing $junction.get/put(1) one can
           write iterators now:            write iterators now:
Line 12992 Line 17070
           @user-foreach[key;value;code] ^for[i](1;10){    $code.key($i)            @user-foreach[key;value;code] ^for[i](1;10){    $code.key($i)
           $code.value($i*2)       $code }            $code.value($i*2)       $code }
   
         * src/include/pa_opcode.h, src/include/pa_request.h,          * src/: include/pa_opcode.h, include/pa_request.h,
           src/main/compile.tab.C, src/main/compile.y, src/main/execute.C,            main/compile.tab.C, main/compile.y, main/execute.C,
           src/main/main.dsp, src/targets/cgi/parser3.dsp,            main/main.dsp, targets/cgi/parser3.dsp, types/pa_vjunction.h:
           src/types/pa_vjunction.h, www/htdocs/.htaccess,            introducing $junction.get/put(1) one can write iterators now:
           www/htdocs/index.html: introducing $junction.get/put(1) one can  
           write iterators now:  
   
           ^user-foreach[key;value]{$key=$value<br>}            ^user-foreach[key;value]{$key=$value<br>}
   
Line 13013 Line 17089
 2002-09-18  paf  2002-09-18  paf
   
         * parser3.dsw, src/include/pa_opcode.h, src/main/compile.tab.C,          * parser3.dsw, src/include/pa_opcode.h, src/main/compile.tab.C,
           src/main/compile.y, src/main/execute.C, www/htdocs/index.html: <<            src/main/compile.y, src/main/execute.C: << >> int shifts
           >> int shifts  
   
         * src/: include/pa_common.h, include/pa_request.h,          * src/: include/pa_common.h, include/pa_request.h,
           main/pa_common.C, main/pa_request.C: auto.p exists but unreadable            main/pa_common.C, main/pa_request.C: auto.p exists but unreadable
           - now this - fatal error            - now this - fatal error
   
         * src/classes/file.C, www/htdocs/index.html,          * src/classes/file.C: ^file::exec/cgi $.stdin[can be file now] so
           www/htdocs/mailreceive.eml: ^file::exec/cgi $.stdin[can be file            that one can pass binary data there
           now] so that one can pass binary data there  
           * src/: classes/date.C, classes/double.C, classes/file.C,
         * src/classes/date.C, src/classes/double.C, src/classes/file.C,            classes/hash.C, classes/image.C, classes/int.C, classes/mail.C,
           src/classes/hash.C, src/classes/image.C, src/classes/int.C,            classes/op.C, classes/response.C, classes/string.C,
           src/classes/mail.C, src/classes/op.C, src/classes/response.C,            classes/table.C, classes/void.C, classes/xdoc.C, classes/xnode.C,
           src/classes/string.C, src/classes/table.C, src/classes/void.C,            include/pa_request.h: pa_request contexts made privated, plus
           src/classes/xdoc.C, src/classes/xnode.C,            get_{self/method_frame} to read.  Request_context_saver used in
           src/include/pa_request.h, www/htdocs/index.html: pa_request            ^try to save flang too.  [were not saved]
           contexts made privated, plus get_{self/method_frame} to read.  
           Request_context_saver used in ^try to save flang too.  [were not  
           saved]  
   
         * src/types/pa_vresponse.C: header value chains joined before          * src/types/pa_vresponse.C: header value chains joined before
           output, this should help $.subject[$var $var] from being            output, this should help $.subject[$var $var] from being
Line 13048 Line 17120
   
           ^include[set_a.p] a=$a set_a.p: $a[1]            ^include[set_a.p] a=$a set_a.p: $a[1]
   
         * src/classes/op.C, src/main/execute.C, src/main/pa_request.C,          * src/: classes/op.C, main/execute.C, main/pa_request.C,
           src/types/pa_value.C, src/types/pa_value.h,            types/pa_value.C, types/pa_value.h, types/pa_vmethod_frame.h,
           src/types/pa_vmethod_frame.h, src/types/pa_vstateless_class.h,            types/pa_vstateless_class.h: operators now executed with MAIN
           www/htdocs/operators.p: operators now executed with MAIN self.            self.  it's for ^include sake, too strong a change
           it's for ^include sake, too strong a change  
           * src/classes/op.C: made place for ^process to compile it's code to
         * src/classes/op.C, www/htdocs/index.html, www/htdocs/operators.p:            in case of no self
           made place for ^process to compile it's code to in case of no  
           self          * src/main/execute.C: found ancient param to Junction, removed.
             allowed passing self to native_code_operators [for ^process to
         * src/main/execute.C, www/htdocs/index.html: found ancient param to            work, she needs self]
           Junction, removed.  allowed passing self to native_code_operators  
           [for ^process to work, she needs self]  
   
         * 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_vstateless_class.h: found ancient param to Junction,            types/pa_vstateless_class.h: found ancient param to Junction,
           removed.  allowed passing self to native_code_operators [for            removed.  allowed passing self to native_code_operators [for
           ^process to work, she needs self]            ^process to work, she needs self]
   
         * src/main/execute.C, src/main/pa_request.C, src/types/pa_value.C,          * src/: main/execute.C, main/pa_request.C, types/pa_value.C,
           src/types/pa_value.h, src/types/pa_vmethod_frame.h,            types/pa_value.h, types/pa_vmethod_frame.h,
           src/types/pa_vstateless_class.h, www/htdocs/index.html,            types/pa_vstateless_class.h: allowed Request.self to be 0,
           www/htdocs/operators.p: allowed Request.self to be 0, checked            checked that in VMethodFrame get/put and $self.
           that in VMethodFrame get/put and $self.  
   
         * src/classes/table.C, src/classes/xdoc.C, www/htdocs/index.html:  
           table::sql  options table::create  copy options options checked,  
           wrong option now fatal error  
   
         * src/main/pa_string.C, www/htdocs/index.html: string.replace fixed          * src/classes/: table.C, xdoc.C: table::sql  options table::create
           [were missing words on pieces boundaries]            copy options options checked, wrong option now fatal error
   
         * bin/auto.p.dist.in: strange \n          * src/main/pa_string.C: string.replace fixed [were missing words on
             pieces boundaries]
   
         * 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)
   
         * configure, configure.in, bin/auto.p.dist.in: .so now detected          * configure, configure.in: .so now detected [can be .sl on hpux,
           [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.txt, src/classes/hash.C, src/classes/table.C,
           src/include/pa_globals.h, src/main/pa_globals.C,            src/include/pa_globals.h, src/main/pa_globals.C: table.sql
           www/htdocs/index.html: table.sql hash::sql flag to allow            hash::sql flag to allow duplicate keys [$.distinct(1/0)] first
           duplicate keys [$.distinct(1/0)] first record taken [were last]            record taken [were last]
   
         * src/classes/hash.C, src/classes/table.C,          * src/: classes/hash.C, classes/table.C,
           src/include/pa_sql_connection.h, www/htdocs/index.html: table.sql            include/pa_sql_connection.h: table.sql hash::sql duplicate keys
           hash::sql duplicate keys now errors            now errors
   
         * src/classes/hash.C: foreach delims bug fixed [were ,2,3]          * src/classes/hash.C: foreach delims bug fixed [were ,2,3]
   
         * src/classes/op.C, src/classes/table.C, www/htdocs/index.html:          * src/classes/: op.C, table.C: menu/for delims bug fixed [were
           menu/for delims bug fixed [were ,2,3]            ,2,3]
   
 2002-09-16  paf  2002-09-16  paf
   
         * src/classes/file.C, www/htdocs/index.html: file::cgi line ends          * src/classes/file.C: file::cgi line ends can be both unix & dos.
           can be both unix & dos. and they can be unix [\n\n] on win when            and they can be unix [\n\n] on win when 'use CGI' used, it causes
           'use CGI' used, it causes stdout to be binary.  now detected            stdout to be binary.  now detected closest header break.
           closest header break.  
   
         * src/: main/untaint.C, types/pa_vmail.C: mail:send closing ?=  now          * src/: main/untaint.C, types/pa_vmail.C: mail:send closing ?=  now
           closed right            closed right
Line 13115 Line 17180
 2002-09-13  paf  2002-09-13  paf
   
         * operators.txt, src/main/compile.tab.C, src/main/compile.y,          * operators.txt, src/main/compile.tab.C, src/main/compile.y,
           src/main/compile_tools.h, www/htdocs/index.html: (expression            src/main/compile_tools.h: (expression #comment)
           #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.txt, src/main/compile.tab.C, src/main/compile.y: !|
           www/htdocs/index.html: !| bitwise !|| numerical xor now            bitwise !|| numerical xor now [preparing for expression
           [preparing for expression #comments]            #comments]
   
         * src/main/compile.tab.C, src/main/compile.y,          * src/main/: compile.tab.C, compile.y: @method[$name] now parse
           www/htdocs/index.html: @method[$name] now parse error            error
   
         * src/: include/pa_config_fixed.h, main/pa_socks.C: HAVE_WINSOCK_H          * src/: include/pa_config_fixed.h, main/pa_socks.C: HAVE_WINSOCK_H
           cheched in pa_socks.C            cheched in pa_socks.C
Line 13135 Line 17199
         * configure, configure.in, src/include/pa_config_auto.h.in:          * configure, configure.in, src/include/pa_config_auto.h.in:
           HAVE_WINSOCK_H created in configure.in            HAVE_WINSOCK_H created in configure.in
   
         * src/main/compile.tab.C, src/main/compile.y,          * src/: main/compile.tab.C, main/compile.y, types/pa_vresponse.C:
           src/types/pa_vresponse.C, www/htdocs/index.html: cookie date now            cookie date now clean [were mistakenly tainted & that worked bad
           clean [were mistakenly tainted & that worked bad with opera --            with opera -- 'happily' that worked OK with msie]
           'happily' that worked OK with msie]  
   
 2002-09-12  paf  2002-09-12  paf
   
Line 13149 Line 17212
         * src/main/untaint.C: quoted printable encoding stops before          * src/main/untaint.C: quoted printable encoding stops before
           \s*<...>$            \s*<...>$
   
         * src/main/untaint.C, www/htdocs/index.html: quoted printable ' '          * src/main/untaint.C: quoted printable ' ' now =20 and encoding
           now =20 and encoding stops before <...>$            stops before <...>$
   
 2002-09-11  paf  2002-09-11  paf
   
         * src/main/pa_charset.C, src/targets/cgi/parser3.dsp,          * src/: main/pa_charset.C, targets/cgi/parser3.dsp: while fixing (
           www/htdocs/index.html: while fixing (  
           xmlCharEncodingInput/OutputFunc callbacks returned bad value )            xmlCharEncodingInput/OutputFunc callbacks returned bad value )
           forgot to check users of those funcs. not all were using that            forgot to check users of those funcs. not all were using that
           return value convention            return value convention
Line 13185 Line 17247
         * src/classes/file.C: decided not to log exec's with stderr, that          * src/classes/file.C: decided not to log exec's with stderr, that
           could be warnings, and it's up to scritper to log/show them            could be warnings, and it's up to scritper to log/show them
   
         * src/classes/double.C, src/main/execute.C, www/htdocs/index.html:          * src/: classes/double.C, main/execute.C: double:sql badly called
           double:sql badly called write_assign_lang, not write_no_lang,            write_assign_lang, not write_no_lang, thus doing unnecessary
           thus doing unnecessary double/string converstion, which were            double/string converstion, which were loosing time&precesion
           loosing time&precesion  
           * src/: main/pa_charset.C, types/pa_vmail.C:
         * src/main/pa_charset.C, src/types/pa_vmail.C,            xmlCharEncodingInput/OutputFunc callbacks returned bad value in
           www/htdocs/index.html: xmlCharEncodingInput/OutputFunc callbacks            case of unfinished in buffer processing, causing accidental
           returned bad value in case of unfinished in buffer processing,            transcode stop [in case that source enc != utf-8 & there is
           causing accidental transcode stop [in case that source enc !=            incomplete utf-8 sequence at the end of 16000block iside of
           utf-8 & there is incomplete utf-8 sequence at the end of            libxml lib] tfm readed & code updated
           16000block iside of libxml lib] tfm readed & code updated  
   
 2002-09-04  paf  2002-09-04  paf
   
Line 13203 Line 17264
   
         * INSTALL, src/include/pa_config_fixed.h,          * INSTALL, src/include/pa_config_fixed.h,
           src/include/pa_sql_connection.h,            src/include/pa_sql_connection.h,
           src/main/pa_sql_driver_manager.C, www/htdocs/index.html:            src/main/pa_sql_driver_manager.C: -with-sjlj-exceptions define
           -with-sjlj-exceptions define checked.  on win32 it made default            checked.  on win32 it made default
   
         * src/include/pa_config_auto.h.in: sjlj define          * src/include/pa_config_auto.h.in: sjlj define
   
Line 13212 Line 17273
           can not work with longjump/throw pair, and one must switch that            can not work with longjump/throw pair, and one must switch that
           on there.  todo: detect that automatically]            on there.  todo: detect that automatically]
   
         * src/types/pa_vxnode.C, www/htdocs/index.html: removed too strong          * src/types/pa_vxnode.C: removed too strong checks of
           checks of xnode.elements.  now, for instance, if element does not            xnode.elements.  now, for instance, if element does not have any
           have any attributes, $xnode.attributes is void, not error            attributes, $xnode.attributes is void, not error
   
 2002-09-02  paf  2002-09-02  paf
   
         * operators.txt, src/main/execute.C, src/targets/cgi/parser3.dsp,          * operators.txt, src/main/execute.C, src/targets/cgi/parser3.dsp:
           www/htdocs/index.html: removed double_result, didn't help            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 13241 Line 17302
           src/main/pa_request.C, src/targets/cgi/parser3.dsp,            src/main/pa_request.C, src/targets/cgi/parser3.dsp,
           src/types/pa_value.C, src/types/pa_value.h, src/types/pa_vmail.C,            src/types/pa_value.C, src/types/pa_value.h, src/types/pa_vmail.C,
           src/types/pa_vmethod_frame.h, src/types/pa_wcontext.h,            src/types/pa_vmethod_frame.h, src/types/pa_wcontext.h,
           src/types/types.dsp, www/htdocs/index.html: junction_cleaner            src/types/types.dsp: junction_cleaner moved to auto VMethodFrame
           moved to auto VMethodFrame [called less frequent, allowed to            [called less frequent, allowed to remove ugly
           remove ugly Junction.change_context-s from many places, switch,            Junction.change_context-s from many places, switch,
           mail:send..html{}, ..] request.root renamed to method_frame [more            mail:send..html{}, ..] request.root renamed to method_frame [more
           easyreading] ancient {...PUSH/POPs...} changed to stack vars            easyreading] ancient {...PUSH/POPs...} changed to stack vars
           [speed up]            [speed up]
   
 2002-08-28  paf  2002-08-28  paf
   
         * src/types/pa_vcookie.C, www/htdocs/index.html: $cookie:name[&]          * src/types/pa_vcookie.C: $cookie:name[&] $cookie:name << now
           $cookie:name << now tainted            tainted
   
         * src/types/pa_vcookie.C, www/htdocs/index.html: fixed cookie          * src/types/pa_vcookie.C: fixed cookie delete when
           delete when $cookie:name[$.value[]]            $cookie:name[$.value[]]
   
         * operators.txt, src/classes/string.C, www/htdocs/derived.p,          * operators.txt, src/classes/string.C:
           www/htdocs/index.html: ^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,          * operators.txt, src/main/compile.tab.C, src/main/compile.y: # now
           www/htdocs/index.html, www/htdocs/mailreceive.eml: # now  
           delimiter            delimiter
   
         * INSTALL: recommended latest gmime 1.0.5          * INSTALL: recommended latest gmime 1.0.5
Line 13275 Line 17335
   
 2002-08-23  paf  2002-08-23  paf
   
         * src/include/pa_common.h, src/main/pa_common.C,          * src/: include/pa_common.h, main/pa_common.C,
           src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C,            targets/cgi/parser3.C, targets/isapi/parser3isapi.C: when auto.p
           www/htdocs/index.html: when auto.p beside binary [cgi, isapi] not            beside binary [cgi, isapi] not accessible [due to bad rights or
           accessible [due to bad rights or whatever] it's error now            whatever] it's error now
   
 2002-08-21  paf  2002-08-21  paf
   
         * www/htdocs/derived.p: "BASE:" "BASE::" syntax allowed, means  
           "base class".  compiled as if here they named base class  
   
         * Makefile.am: can use: make happy equals to make update install          * Makefile.am: can use: make happy equals to make update install
   
         * src/main/compile.tab.C, src/main/compile.y,          * src/main/: compile.tab.C, compile.y, compile_tools.C,
           src/main/compile_tools.C, src/main/compile_tools.h,            compile_tools.h: "BASE:" "BASE::" syntax allowed, means "base
           www/htdocs/derived.p: "BASE:" "BASE::" syntax allowed, means            class".  compiled as if here they named base class
           "base class".  compiled as if here they named base class  
   
         * src/main/pa_string.C, www/htdocs/index.html: fixed bad language          * src/main/pa_string.C: fixed bad language bug, [were wrong string
           bug, [were wrong string cloning constructor]            cloning constructor]
   
         * src/main/execute.C, src/types/pa_vobject.h, www/htdocs/base.p,          * src/: main/execute.C, types/pa_vobject.h: fixed virtual calls
           www/htdocs/derived.p, www/htdocs/index.html: fixed virtual calls  
   
         * bin/auto.p.dist.in, src/targets/cgi/parser3.C,          * src/: targets/cgi/parser3.C, types/pa_vfile.C, types/pa_vmail.C:
           src/types/pa_vfile.C, src/types/pa_vmail.C,  
           www/htdocs/mailreceive.eml, www/htdocs/mailreceive.html:  
           $mail.received.file.value.content-type fixed            $mail.received.file.value.content-type fixed
   
 2002-08-20  paf  2002-08-20  paf
   
         * src/classes/file.C, www/htdocs/index.html: fixed language of          * src/classes/file.C: fixed language of file:file result
           file:file result  
   
         * operators.txt, src/classes/void.C, www/htdocs/index.html:          * operators.txt, src/classes/void.C: ^void.pos[...] = -1 merged
           ^void.pos[...] = -1 merged from 3.0.0005            from 3.0.0005
   
         * operators.txt, src/classes/void.C: ^void.pos[...] = -1          * operators.txt, src/classes/void.C: ^void.pos[...] = -1
   
         * operators.txt, src/classes/void.C, www/htdocs/index.html:          * operators.txt, src/classes/void.C: ^void.length[] = 0 merged from
           ^void.length[] = 0 merged from 3.0.0005            3.0.0005
   
         * src/classes/void.C, operators.txt: ^void.length[] = 0          * src/classes/void.C, operators.txt: ^void.length[] = 0
   
Line 13332 Line 17384
   
 2002-08-15  paf  2002-08-15  paf
   
         * src/classes/classes.h, www/htdocs/index.html: write to static var          * src/classes/classes.h: write to static var caused useless
           caused useless Exception, introduced Methoded::put_element wich            Exception, introduced Methoded::put_element wich consumes those
           consumes those  
   
         * operators.txt, src/include/pa_common.h, src/main/pa_common.C,          * operators.txt, src/include/pa_common.h, src/main/pa_common.C,
           src/types/pa_vcookie.C, src/types/pa_vdate.h,            src/types/pa_vcookie.C, src/types/pa_vdate.h,
           src/types/pa_vresponse.C, src/types/pa_vresponse.h,            src/types/pa_vresponse.C, src/types/pa_vresponse.h:
           www/htdocs/index.html: $response:field[date]            $response:field[date] $response:field[$.xxx[date]]
           $response:field[$.xxx[date]]  
   
         * src/classes/hash.C, src/classes/string.C, src/classes/table.C,          * src/: classes/hash.C, classes/string.C, classes/table.C,
           src/classes/void.C, src/include/pa_sql_connection.h,            classes/void.C, include/pa_sql_connection.h: fixed source of
           www/htdocs/index.html: fixed source of ^hash::sql{bad}            ^hash::sql{bad}
   
         * operators.txt: $request:body unprecessed POST request body          * operators.txt: $request:body unprecessed POST request body
   
         * src/types/pa_vrequest.C, www/htdocs/index.html: $request:body          * src/types/pa_vrequest.C: $request:body unprecessed POST request
           unprecessed POST request  
   
         * src/types/pa_value.h, src/types/pa_vdate.h,          * src/types/: pa_value.h, pa_vdate.h, pa_vrequest.C, pa_vxdoc.C,
           src/types/pa_vrequest.C, src/types/pa_vxdoc.C,            pa_vxnode.C: few barks: bark("%s field not found", 0, &aname)
           src/types/pa_vxnode.C, www/htdocs/index.html: few barks: bark("%s  
           field not found", 0, &aname)  
   
         * operators.txt, src/classes/form.C, src/include/pa_pool.h,          * operators.txt, src/classes/form.C, src/include/pa_pool.h,
           src/include/pa_request.h, src/main/pa_pool.C,            src/include/pa_request.h, src/main/pa_pool.C,
           src/types/pa_vform.C, src/types/pa_vform.h, www/htdocs/.htaccess:            src/types/pa_vform.C, src/types/pa_vform.h: planning/preparing_to
           planning/preparing_to $request:body r.post_data now const            $request:body r.post_data now const
   
         * src/classes/image.C, src/classes/op.C, src/classes/xdoc.C,          * src/: classes/image.C, classes/op.C, classes/xdoc.C,
           src/classes/xnode.C, src/main/execute.C, src/types/pa_value.h,            classes/xnode.C, main/execute.C, types/pa_value.h,
           src/types/pa_vhash.h, src/types/pa_vobject.C,            types/pa_vhash.h, types/pa_vobject.C, types/pa_vobject.h,
           src/types/pa_vobject.h, src/types/pa_vtable.h,            types/pa_vtable.h: instead of type() checking everywhere used
           www/htdocs/index.html: instead of type() checking everywhere used  
           Value.as now user descendants can be used in params.            Value.as now user descendants can be used in params.
   
           VObject::as_*, is_defined now taken from bases.  xtable(table)            VObject::as_*, is_defined now taken from bases.  xtable(table)
Line 13377 Line 17423
   
 2002-08-14  paf  2002-08-14  paf
   
         * src/classes/xnode.h, src/main/execute.C,          * src/: classes/xnode.h, main/execute.C, targets/cgi/parser3.dsp,
           src/targets/cgi/parser3.dsp, src/types/pa_value.h,            types/pa_value.h, types/pa_vclass.C, types/pa_vclass.h,
           src/types/pa_vclass.C, src/types/pa_vclass.h,            types/pa_vcode_frame.h, types/pa_vcookie.C, types/pa_vcookie.h,
           src/types/pa_vcode_frame.h, src/types/pa_vcookie.C,            types/pa_vdate.h, types/pa_venv.h, types/pa_vfile.h,
           src/types/pa_vcookie.h, src/types/pa_vdate.h,            types/pa_vform.C, types/pa_vform.h, types/pa_vhash.h,
           src/types/pa_venv.h, src/types/pa_vfile.h, src/types/pa_vform.C,            types/pa_vimage.h, types/pa_vmail.C, types/pa_vmail.h,
           src/types/pa_vform.h, src/types/pa_vhash.h,            types/pa_vmath.h, types/pa_vmethod_frame.h, types/pa_vobject.C,
           src/types/pa_vimage.h, src/types/pa_vmail.C,            types/pa_vobject.h, types/pa_vrequest.C, types/pa_vrequest.h,
           src/types/pa_vmail.h, src/types/pa_vmath.h,            types/pa_vresponse.C, types/pa_vresponse.h,
           src/types/pa_vmethod_frame.h, src/types/pa_vobject.C,            types/pa_vstateless_class.h, types/pa_vstateless_object.h,
           src/types/pa_vobject.h, src/types/pa_vrequest.C,            types/pa_vstatus.C, types/pa_vstatus.h, types/pa_vstring.h,
           src/types/pa_vrequest.h, src/types/pa_vresponse.C,            types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.h,
           src/types/pa_vresponse.h, src/types/pa_vstateless_class.h,            types/pa_vxdoc.C, types/pa_vxdoc.h, types/pa_vxnode.C,
           src/types/pa_vstateless_object.h, src/types/pa_vstatus.C,            types/pa_vxnode.h, types/pa_wwrapper.h: is now works with VObject
           src/types/pa_vstatus.h, src/types/pa_vstring.h,            & VClass
           src/types/pa_vtable.C, src/types/pa_vtable.h,  
           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_wwrapper.h, www/htdocs/index.html: is now works with  
           VObject & VClass  
   
         * src/types/pa_vmail.C: mail: turned off utf8 to source transcoding          * src/types/pa_vmail.C: mail: turned off utf8 to source transcoding
   
Line 13413 Line 17454
   
         * src/targets/cgi/parser3.C: -f config file          * src/targets/cgi/parser3.C: -f config file
   
         * src/targets/cgi/parser3.C, www/htdocs/auto.p,          * src/targets/cgi/parser3.C: fixed .log file dir
           www/htdocs/derived.p, www/htdocs/index.html: fixed .log file dir  
   
 2002-08-13  paf  2002-08-13  paf
   
         * src/types/pa_vobject.C, www/htdocs/derived.p,          * src/types/pa_vobject.C: allow override parent variables, useful
           www/htdocs/index.html: allow override parent variables, useful  
           for form descendants [in vobject too, were in vclass]            for form descendants [in vobject too, were in vclass]
   
         * src/types/pa_vclass.C, www/htdocs/index.html: allow override          * src/types/pa_vclass.C: allow override parent variables, useful
           parent variables, useful for form descendants            for form descendants
   
         * src/types/pa_vclass.C, www/htdocs/derived.p: checked:          * src/types/pa_vclass.C: checked: form[vclass]fields can be
           form[vclass]fields can be overwritten in derived(table)            overwritten in derived(table)
   
         * src/: classes/form.C, classes/mail.C, classes/op.C,          * src/: classes/form.C, classes/mail.C, classes/op.C,
           classes/xnode.h, include/pa_request.h, main/execute.C,            classes/xnode.h, include/pa_request.h, main/execute.C,
Line 13453 Line 17492
           reorganized modules todo: fix bug with put endless recoursion            reorganized modules todo: fix bug with put endless recoursion
           todo: check 'as'            todo: check 'as'
   
         * src/types/pa_vobject.h, www/htdocs/derived.p: checked: table          * src/types/pa_vobject.h: checked: table fields can be overwritten
           fields can be overwritten in derived(table)            in derived(table)
   
         * www/htdocs/derived.p: sample: dont convinient that table fields          * src/types/pa_vobject.h: derived classes can have fields of their
           can be overridden  
   
         * src/types/pa_vobject.h, www/htdocs/derived.p,  
           www/htdocs/index.html: derived classes can have fields of their  
           own now            own now
   
         * src/classes/table.C, src/types/pa_vtable.C,          * src/: classes/table.C, types/pa_vtable.C, types/pa_vtable.h:
           src/types/pa_vtable.h, www/htdocs/derived.p: fixed error message            fixed error message on using non-created table
           on using non-created table  
           * src/: classes/form.C, classes/hash.C, classes/mail.C,
         * src/classes/form.C, src/classes/hash.C, src/classes/mail.C,            classes/op.C, classes/xnode.h, include/pa_request.h,
           src/classes/op.C, src/classes/xnode.h, src/include/pa_request.h,            main/compile.C, main/compile.tab.C, main/execute.C,
           src/main/compile.C, src/main/compile.tab.C, src/main/execute.C,            main/pa_request.C, types/pa_value.h, types/pa_vclass.h,
           src/main/pa_request.C, src/types/pa_value.h,            types/pa_vcode_frame.h, types/pa_vcookie.C, types/pa_vcookie.h,
           src/types/pa_vclass.h, src/types/pa_vcode_frame.h,            types/pa_vdate.h, types/pa_venv.h, types/pa_vfile.h,
           src/types/pa_vcookie.C, src/types/pa_vcookie.h,            types/pa_vform.C, types/pa_vform.h, types/pa_vhash.h,
           src/types/pa_vdate.h, src/types/pa_venv.h, src/types/pa_vfile.h,            types/pa_vimage.C, types/pa_vimage.h, types/pa_vmail.C,
           src/types/pa_vform.C, src/types/pa_vform.h, src/types/pa_vhash.h,            types/pa_vmail.h, types/pa_vmath.h, types/pa_vmethod_frame.h,
           src/types/pa_vimage.C, src/types/pa_vimage.h,            types/pa_vobject.h, types/pa_vrequest.C, types/pa_vrequest.h,
           src/types/pa_vmail.C, src/types/pa_vmail.h, src/types/pa_vmath.h,            types/pa_vresponse.C, types/pa_vresponse.h,
           src/types/pa_vmethod_frame.h, src/types/pa_vobject.h,            types/pa_vstateless_class.h, types/pa_vstateless_object.h,
           src/types/pa_vrequest.C, src/types/pa_vrequest.h,            types/pa_vstatus.C, types/pa_vstatus.h, types/pa_vstring.h,
           src/types/pa_vresponse.C, src/types/pa_vresponse.h,            types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.h,
           src/types/pa_vstateless_class.h,            types/pa_vxdoc.C, types/pa_vxdoc.h, types/pa_vxnode.C,
           src/types/pa_vstateless_object.h, src/types/pa_vstatus.C,            types/pa_vxnode.h, types/pa_wwrapper.h: VObject.get/out now
           src/types/pa_vstatus.h, src/types/pa_vstring.h,            looking down/up tree todo: fix error message on non-constructed
           src/types/pa_vtable.C, src/types/pa_vtable.h,            parents
           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_wwrapper.h, www/htdocs/derived.p: VObject.get/out  
           now looking down/up tree todo: fix error message on  
           non-constructed parents  
   
 2002-08-12  paf  2002-08-12  paf
   
         * src/types/pa_vstateless_class.h,          * src/types/: pa_vstateless_class.h, pa_vstateless_object.h: table
           src/types/pa_vstateless_object.h, www/htdocs/derived.p: table  
           derived OK            derived OK
   
         * src/main/execute.C: ^base:create[] dynamic call rewritten todo:          * src/main/execute.C: ^base:create[] dynamic call rewritten todo:
Line 13506 Line 17535
           types/pa_valiased.C, types/pa_valiased.h, types/Makefile.am:            types/pa_valiased.C, types/pa_valiased.h, types/Makefile.am:
           ^base:create[] dynamic call rewritten todo: thorough testing            ^base:create[] dynamic call rewritten todo: thorough testing
   
         * www/htdocs/: base.p, derived.p: not good - along upward-virtual          * src/types/: pa_value.h, pa_vclass.h, pa_vobject.h: VObject ctor
           call self eq child            now instantates base class, remembers it and saves child in
             parent VObject.get_class now returns last child = downward
         * src/types/pa_value.h, src/types/pa_vclass.h,            virtual calls OK
           src/types/pa_vobject.h, www/htdocs/base.p, www/htdocs/derived.p:  
           VObject ctor now instantates base class, remembers it and saves  
           child in parent VObject.get_class now returns last child =  
           downward virtual calls OK  
   
         * src/main/execute.C, src/types/pa_value.h, src/types/pa_vclass.h,  
           src/types/pa_vdate.h, src/types/pa_vdouble.h,  
           src/types/pa_vfile.h, src/types/pa_vimage.h, src/types/pa_vint.h,  
           src/types/pa_vmethod_frame.h, src/types/pa_vobject.h,  
           src/types/pa_vresponse.h, src/types/pa_vstateless_class.h,  
           src/types/pa_vstateless_object.h, src/types/pa_vstring.h,  
           src/types/pa_vtable.h, src/types/pa_vxdoc.h,  
           src/types/pa_vxnode.h, src/types/pa_wcontext.h,  
           src/types/types.dsp, www/htdocs/index.html: killed VAliased  
           [redundant], moved $CLASS to VObject only [parser class instance]  
   
         * bin/auto.p.dist.in: more like in dist on parser.ru  
   
         * bin/auto.p.dist.in: fixed sendmail default comment          * src/: main/execute.C, types/pa_value.h, types/pa_vclass.h,
             types/pa_vdate.h, types/pa_vdouble.h, types/pa_vfile.h,
             types/pa_vimage.h, types/pa_vint.h, types/pa_vmethod_frame.h,
             types/pa_vobject.h, types/pa_vresponse.h,
             types/pa_vstateless_class.h, types/pa_vstateless_object.h,
             types/pa_vstring.h, types/pa_vtable.h, types/pa_vxdoc.h,
             types/pa_vxnode.h, types/pa_wcontext.h, types/types.dsp: killed
             VAliased [redundant], moved $CLASS to VObject only [parser class
             instance]
   
         * src/main/pa_request.C: $response:body[file] content-type check          * src/main/pa_request.C: $response:body[file] content-type check
           fixed [were bad when content-type is hash]            fixed [were bad when content-type is hash]
   
 2002-08-09  paf  2002-08-09  paf
   
         * src/main/execute.C, src/types/pa_value.h, src/types/pa_vclass.h,          * src/: main/execute.C, types/pa_value.h, types/pa_vclass.h,
           src/types/pa_vobject.h, src/types/pa_vxdoc.h,            types/pa_vobject.h, types/pa_vxdoc.h: started as()
           www/htdocs/index.html: started as()  
   
 2002-08-08  paf  2002-08-08  paf
   
         * operators.txt, src/classes/date.C, src/include/pa_globals.h,          * operators.txt, src/classes/date.C, src/include/pa_globals.h,
           src/main/pa_globals.C, www/htdocs/index.html: year column in            src/main/pa_globals.C: year column in month calendar [week year]
           month calendar [week year]  
           * src/main/execute.C: error reporting on object writes to MAIN
             improved [were ruind with fixing $obj[^if(1){$obj}] ]
   
         * src/main/execute.C, www/htdocs/index.html: error reporting on          * operators.txt, src/types/pa_vdate.h: $date.yearday
           object writes to MAIN improved [were ruind with fixing            $date.daylightsaving
           $obj[^if(1){$obj}] ]  
           * src/: classes/mail.C, types/pa_vmail.C: in letter texts one can
         * operators.txt, src/types/pa_vdate.h, www/htdocs/index.html:            use tainted data now. only she must specify the language.
           $date.yearday $date.daylightsaving  
   
         * src/classes/mail.C, src/types/pa_vmail.C, www/htdocs/auto.p,  
           www/htdocs/index.html: in letter texts one can use tainted data  
           now. only she must specify the language.  
   
           ^mail:send[     $.from[paf@mail.design.ru]            ^mail:send[     $.from[paf@mail.design.ru]
           $.to[paf@mail.design.ru]        $.subject[^taint[uri][ìîñêâà]=2]            $.to[paf@mail.design.ru]        $.subject[^taint[uri][ìîñêâà]=2]
                 $.text[^taint[uri][ìîñêâà]=] ]                  $.text[^taint[uri][ìîñêâà]=] ]
   
         * www/htdocs/index.html: ^process now prints more precise origin          * src/: classes/file.C, classes/op.C, types/pa_vfile.C: ^process
             now prints more precise origin
   
         * src/classes/file.C, src/classes/op.C, src/types/pa_vfile.C,          * src/include/pa_string.h: String::first_char now not fails on
           www/htdocs/index.html: ^process now prints more precise origin            empty strings ^if(-f '') now ok and in 3 other places.
   
         * src/include/pa_string.h, www/htdocs/index.html:  
           String::first_char now not fails on empty strings ^if(-f '') now  
           ok and in 3 other places.  
   
         * operators.txt, src/include/pa_string.h, src/main/pa_string.C:          * operators.txt, src/include/pa_string.h, src/main/pa_string.C:
           String::first_char now not fails on empty strings ^if(-f '') now            String::first_char now not fails on empty strings ^if(-f '') now
Line 13575 Line 17588
   
 2002-08-07  paf  2002-08-07  paf
   
         * src/classes/string.C, src/main/pa_string.C,          * src/: classes/string.C, main/pa_string.C: ^string.mid(0;bad)
           www/htdocs/index.html: ^string.mid(0;bad) fixed  
   
         * src/main/pa_string.C, www/htdocs/index.html: ^string.mid(0;bad)  
           fixed            fixed
   
         * src/main/execute.C, src/types/pa_vcode_frame.h,          * src/main/pa_string.C: ^string.mid(0;bad) fixed
           src/types/pa_vmethod_frame.h, src/types/pa_wcontext.C,  
           src/types/pa_wcontext.h, src/types/pa_wwrapper.h,          * src/: main/execute.C, types/pa_vcode_frame.h,
           www/htdocs/index.html: vcodeframe were mistakenly not completely            types/pa_vmethod_frame.h, types/pa_wcontext.C,
           transparent to object writes.  $hash[^if(1){$hash}] now works            types/pa_wcontext.h, types/pa_wwrapper.h: vcodeframe were
             mistakenly not completely transparent to object writes.
             $hash[^if(1){$hash}] now works
   
         * operators.txt, src/classes/op.C: ^cache...{...^cache<<to past...}          * operators.txt, src/classes/op.C: ^cache...{...^cache<<to past...}
           now erasing cache file [there were bad check on that]            now erasing cache file [there were bad check on that]
   
         * src/classes/classes.dsp, src/classes/table.C,          * src/: classes/classes.dsp, classes/table.C,
           src/lib/pcre/pcre_parser_ctype.dsp, src/main/pa_array.C,            lib/pcre/pcre_parser_ctype.dsp, main/pa_array.C, types/types.dsp:
           src/types/types.dsp, www/htdocs/index.html: all Debug dirs in            all Debug dirs in .dsp now named 'Debug'
           .dsp now named 'Debug'  
   
         * 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.txt, src/classes/mail.C: exception_type  email.send
   
         * operators.txt, src/types/pa_vmail.C, www/htdocs/index.html:          * operators.txt, src/types/pa_vmail.C: exception_type  email.format
           exception_type  email.format  
   
         * src/types/pa_vmail.C, www/htdocs/global.xsl,          * src/types/pa_vmail.C: mail:send empty  email checked
           www/htdocs/index.html: 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.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,            src/include/pa_table.h, src/main/pa_array.C, src/main/pa_table.C:
           www/htdocs/index.html: ^table::create[$source;$.options]            ^table::create[$source;$.options] ^table::join[$source;$.options]
           ^table::join[$source;$.options]  
   
         * operators.txt, src/classes/hash.C, src/classes/string.C,          * operators.txt, src/classes/hash.C, src/classes/string.C,
           src/classes/table.C, www/htdocs/index.html: sql options can be            src/classes/table.C: sql options can be string now ^xxx:sql{...}[
           string now ^xxx:sql{...}[ #  $.default() }            #  $.default() }
   
         * src/classes/file.C, www/htdocs/index.html: $f[file::cgi] $f.UPPER  
           case fields  
   
         * src/classes/file.C, src/include/pa_globals.h,          * src/classes/file.C: $f[file::cgi] $f.UPPER case fields
           src/main/pa_globals.C, src/main/pa_request.C,  
           src/types/pa_vfile.C, src/types/pa_vfile.h,  
           www/htdocs/index.html: $file.content-type [instead of .mime-type]  
           now works for file::stat also  
   
         * src/main/pa_request.C, www/htdocs/index.html: case insensitive          * src/: classes/file.C, include/pa_globals.h, main/pa_globals.C,
           mime_type_of            main/pa_request.C, types/pa_vfile.C, types/pa_vfile.h:
             $file.content-type [instead of .mime-type] now works for
             file::stat also
   
         * bin/auto.p.dist.in: jpeg          * src/main/pa_request.C: case insensitive mime_type_of
   
 2002-08-05  paf  2002-08-05  paf
   
Line 13656 Line 17659
         * configure, configure.in, src/include/pa_version.h: release          * configure, configure.in, src/include/pa_version.h: release
           3_0_0005            3_0_0005
   
         * bin/auto.p.dist.in: unhandled_exception comments  
   
         * 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, www/htdocs/index.html,          * operators.txt, src/main/pa_request.C, src/types/pa_vform.C:
           src/types/pa_vform.C: response transcoded source->client only            response transcoded source->client only when text/* or simple
           when text/* or simple onoverridden $response:body            onoverridden $response:body
   
 2002-08-01  paf  2002-08-01  paf
   
Line 13713 Line 17714
           types/pa_vstring.h, types/pa_vtable.C, types/pa_vtable.h,            types/pa_vstring.h, types/pa_vtable.C, types/pa_vtable.h,
           types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h,            types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h,
           types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C,            types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C,
           types/pa_wcontext.h, types/pa_wwrapper.h: $Date$            types/pa_wcontext.h, types/pa_wwrapper.h: Date: now
   
         * src/: classes/classes.C, classes/classes.dsp, classes/classes.h,          * src/: classes/classes.C, classes/classes.dsp, classes/classes.h,
           classes/date.C, classes/double.C, classes/file.C, classes/form.C,            classes/date.C, classes/double.C, classes/file.C, classes/form.C,
Line 13792 Line 17793
   
         * src/main/pa_charset.C: comment          * src/main/pa_charset.C: comment
   
         * src/main/pa_charset.C, www/htdocs/auto.p: UTF-8 to 1byte charset          * src/main/pa_charset.C: UTF-8 to 1byte charset convert, no char in
           convert, no char in table, &#decimal;            table, &#decimal;
   
         * src/main/pa_request.C: comment          * src/main/pa_request.C: comment
   
Line 13842 Line 17843
           src/include/pa_pool.h, src/include/pa_version.h,            src/include/pa_pool.h, src/include/pa_version.h,
           src/main/pa_charset.C, src/main/pa_pool.C,            src/main/pa_charset.C, src/main/pa_pool.C,
           src/targets/cgi/parser3.dsp, src/targets/isapi/parser3isapi.dsp,            src/targets/cgi/parser3.dsp, src/targets/isapi/parser3isapi.dsp,
           src/types/pa_vmail.C, www/htdocs/index.html: merged latest            src/types/pa_vmail.C: merged latest updates to head
           updates to head  
   
 2002-06-27  paf  2002-06-27  paf
   
Line 13852 Line 17852
   
         * operators.txt, src/classes/xdoc.C, src/include/pa_charset.h,          * operators.txt, src/classes/xdoc.C, src/include/pa_charset.h,
           src/include/pa_config_fixed.h, src/include/pa_pool.h,            src/include/pa_config_fixed.h, src/include/pa_pool.h,
           src/main/pa_charset.C, src/main/pa_pool.C, www/htdocs/index.html:            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
   
         * src/classes/xdoc.C, www/htdocs/index.html: xsltParseStylesheetDoc          * src/classes/xdoc.C: xsltParseStylesheetDoc bug workaround
           bug workaround  
   
 2002-06-26  paf  2002-06-26  paf
   
Line 13872 Line 17871
   
 2002-06-25  paf  2002-06-25  paf
   
         * www/htdocs/index.html, src/main/pa_string.C: emtpy string, or          * src/main/pa_string.C: emtpy string, or string of whitespaces
           string of whitespaces considered bad number now            considered bad number now
   
         * www/htdocs/index.html: ^xdoc.transform[xdoc <<can be now  
   
         * operators.txt, src/classes/xdoc.C, www/htdocs/index.html:          * operators.txt, src/classes/xdoc.C: ^xdoc.transform[xdoc <<can be
           ^xdoc.transform[xdoc <<can be now            now
   
         * operators.txt, src/classes/string.C, www/htdocs/index.html:          * operators.txt, src/classes/string.C: ^string.normalize  [old
           ^string.normalize  [old name: optimize            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, bin/auto.p.dist.in, src/classes/math.C,          * operators.txt, src/classes/math.C, src/types/pa_vmail.C:
           src/types/pa_vmail.C, www/htdocs/index.html: ^math:crypt updated            ^math:crypt updated to generate random salt when needed and to
           to generate random salt when needed and to call system crypt() if            call system crypt() if not $apr1$ prefix
           not $apr1$ prefix  
   
 2002-06-24  paf  2002-06-24  paf
   
Line 13928 Line 17924
           src/main/pa_string.C, src/main/pa_uue.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:
           www/htdocs/index.html: uue to separate file introducting            uue to separate file introducting $message:received ^mail:send
           $message:received ^mail:send rewritten with backward comp            rewritten with backward comp
   
 2002-06-21  paf  2002-06-21  paf
   
Line 13964 Line 17960
           src/main/compile.tab.C, src/main/main.dsp,            src/main/compile.tab.C, src/main/main.dsp,
           src/targets/cgi/Makefile.am, src/targets/cgi/parser3.dsp,            src/targets/cgi/Makefile.am, src/targets/cgi/parser3.dsp,
           src/targets/isapi/parser3isapi.dsp, src/types/Makefile.am,            src/targets/isapi/parser3isapi.dsp, src/types/Makefile.am,
           src/types/types.dsp, www/htdocs/.htaccess, www/htdocs/index.html,            src/types/types.dsp, src/lib/Makefile.am: moved libltdl and pcre
           src/lib/Makefile.am: moved libltdl and pcre to libs/ added            to libs/ added libs/md5 which is linked to non-apache targets
           libs/md5 which is linked to non-apache targets  
           ^math:crypt[password;$apr1$salt]            ^math:crypt[password;$apr1$salt]
   
 2002-06-20  paf  2002-06-20  paf
   
         * INSTALL, configure, configure.in, operators.txt, bin/Makefile.am,          * INSTALL, configure, configure.in, operators.txt,
           bin/auto.p.dist.in, src/classes/file.C, src/classes/op.C,            src/classes/file.C, src/classes/op.C, src/doc/doxygen.cfg,
           src/doc/doxygen.cfg, src/include/pa_globals.h,            src/include/pa_globals.h, src/include/pa_request.h,
           src/include/pa_request.h, src/main/execute.C,            src/main/execute.C, src/main/pa_request.C,
           src/main/pa_request.C, src/targets/cgi/parser3.C,            src/targets/cgi/parser3.C, src/targets/isapi/parser3isapi.C,
           src/targets/isapi/parser3isapi.C, src/types/pa_vmethod_frame.h,            src/types/pa_vmethod_frame.h: marged latest HEAD updates, mainly
           www/htdocs/auto.p, www/htdocs/index.html: marged latest HEAD            file:justname&co & @auto/conf[filespec
           updates, mainly file:justname&co & @auto/conf[filespec  
   
         * operators.txt, src/classes/file.C, www/htdocs/auto.p,          * operators.txt, src/classes/file.C:
           www/htdocs/index.html:     !^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
               !^file:justname[/a/some.tar.gz]=some.tar                !^file:justname[/a/some.tar.gz]=some.tar
               !^file:justext[/a/some.tar.gz]=gz                !^file:justext[/a/some.tar.gz]=gz
   
         * src/classes/op.C, src/include/pa_request.h, src/main/execute.C,          * src/: classes/op.C, include/pa_request.h, main/execute.C,
           src/main/pa_request.C, src/types/pa_vmethod_frame.h,            main/pa_request.C, types/pa_vmethod_frame.h: introducing
           www/htdocs/auto.p, www/htdocs/index.html: introducing  
           @conf/auto[filespec]            @conf/auto[filespec]
   
         * bin/auto.p.dist.in: <noindex>  
   
         * configure: parser3.conf renamed to auto.p autoconf changes          * configure: parser3.conf renamed to auto.p autoconf changes
   
         * INSTALL, configure.in, operators.txt, bin/Makefile.am,          * INSTALL, configure.in, operators.txt, src/doc/doxygen.cfg,
           bin/auto.p.dist.in, src/doc/doxygen.cfg,  
           src/include/pa_globals.h, src/targets/cgi/parser3.C,            src/include/pa_globals.h, src/targets/cgi/parser3.C,
           src/targets/isapi/parser3isapi.C, www/htdocs/auto.p,            src/targets/isapi/parser3isapi.C: parser3.conf renamed to auto.p
           www/htdocs/index.html: parser3.conf renamed to auto.p  
   
 2002-06-18  paf  2002-06-18  paf
   
Line 14009 Line 17998
   
         * INSTALL: reflected .conf.dist dir change          * INSTALL: reflected .conf.dist dir change
   
         * Makefile.am, configure, configure.in, bin/Makefile.am,          * Makefile.am, configure, configure.in,
           etc/parser3.charsets/Makefile.am: parser3.conf.dist moved to bin,            etc/parser3.charsets/Makefile.am: parser3.conf.dist moved to bin,
           .in & *.am updated            .in & *.am updated
   
Line 14017 Line 18006
   
         * src/classes/file.C: strcasecmp          * src/classes/file.C: strcasecmp
   
         * bin/Makefile.am, etc/Makefile.am, www/htdocs/index.html:          * etc/Makefile.am: bin/parser3.conf.dist [moved from etc
           bin/parser3.conf.dist [moved from etc  
   
         * src/classes/file.C: ^file::exec[script;$.bad error case          * src/classes/file.C: ^file::exec[script;$.bad error case
           insensitive check now            insensitive check now
   
         * src/classes/file.C, www/htdocs/index.html:          * src/classes/file.C: ^file::exec[script;$.bad now error, not skip
           ^file::exec[script;$.bad now error, not skip  
   
         * configure, configure.in, src/include/pa_pool.h,          * configure, configure.in, src/include/pa_pool.h,
           src/include/pa_types.h: pack configure.in detection simplified.            src/include/pa_types.h: pack configure.in detection simplified.
Line 14069 Line 18056
   
         * src/classes/file.C: check simplified          * src/classes/file.C: check simplified
   
         * src/classes/file.C, src/targets/cgi/parser3.dsp,          * src/: classes/file.C, targets/cgi/parser3.dsp,
           src/targets/isapi/parser3isapi.C, www/htdocs/.htaccess,            targets/isapi/parser3isapi.C: suexec env keys filter plus CGI_ as
           www/htdocs/index.html: suexec env keys filter plus CGI_ as valid            valid prefix
           prefix  
   
         * src/classes/file.C, src/include/pa_request.h,          * src/: classes/file.C, include/pa_request.h, include/pa_sapi.h,
           src/include/pa_sapi.h, src/targets/cgi/parser3.C,            targets/cgi/parser3.C, targets/isapi/parser3isapi.C:
           src/targets/isapi/parser3isapi.C, www/htdocs/index.html:  
           file::exec/cgi to pass HTTP_ vars introducing SAPI::environment            file::exec/cgi to pass HTTP_ vars introducing SAPI::environment
   
 2002-06-10  paf  2002-06-10  paf
Line 14084 Line 18069
         * operators.txt, src/classes/op.C, src/include/pa_common.h,          * operators.txt, src/classes/op.C, src/include/pa_common.h,
           src/main/pa_common.C: lock failures reported now            src/main/pa_common.C: lock failures reported now
   
         * src/main/compile_tools.C, www/htdocs/index.html: ^if(" 1 "){y}          * src/main/compile_tools.C: ^if(" 1 "){y} bug fixed optimization
           bug fixed optimization string->double @ compile time were            string->double @ compile time were not-enough-checking...
           not-enough-checking...  
   
         * src/main/compile.tab.C, src/main/pa_string.C,  
           www/htdocs/index.html: whitespace after number in autoconvert now  
           ignored  
   
         * src/types/pa_vform.C, src/types/pa_vform.h,          * src/main/: compile.tab.C, pa_string.C: whitespace after number in
           www/htdocs/index.html: $form: not determined yet check            autoconvert now ignored
   
           * src/types/: pa_vform.C, pa_vform.h: $form: not determined yet
             check
   
         * src/classes/mail.C: mail netscape attachment name fixed. todo:          * src/classes/mail.C: mail netscape attachment name fixed. todo:
           $response:body content-type:name            $response:body content-type:name
Line 14122 Line 18105
           src/classes/classes.dsp, src/main/compile.tab.C,            src/classes/classes.dsp, src/main/compile.tab.C,
           src/main/main.dsp, src/main/pa_globals.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,            src/targets/isapi/parser3isapi.dsp, src/types/types.dsp: fixed
           www/htdocs/index.html: fixed .dsp-s along with reorganized cvs            .dsp-s along with reorganized cvs modules dirs structure
           modules dirs structure  
   
         * src/: classes/classes.dsp, main/compile.tab.C, main/main.dsp,          * src/: classes/classes.dsp, main/compile.tab.C, main/main.dsp,
           main/pa_globals.C, targets/cgi/parser3.dsp,            main/pa_globals.C, targets/cgi/parser3.dsp,
Line 14142 Line 18124
   
 2002-05-16  paf  2002-05-16  paf
   
         * src/classes/image.C, www/htdocs/index.html: image::measure can          * src/classes/image.C: image::measure can png now
           png now  
   
 2002-05-15  paf  2002-05-15  paf
   
         * operators.txt, src/classes/date.C, www/htdocs/index.html:          * operators.txt, src/classes/date.C: ^date::create[%H:%M[:%S]]
           ^date::create[%H:%M[:%S]] added            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, www/htdocs/.htaccess,          * operators.txt, src/classes/date.C: ^date::create[%Y[-%m[-%d[
           www/htdocs/auto.p, www/htdocs/index.html:            %H[:%M[:%S]]]]]] [-%m now
           ^date::create[%Y[-%m[-%d[ %H[:%M[:%S]]]]]] [-%m now  
   
 2002-05-14  paf  2002-05-14  paf
   
Line 14169 Line 18149
           src/main/pa_request.C, src/main/pa_table.C,            src/main/pa_request.C, src/main/pa_table.C,
           src/targets/isapi/pa_pool.C, src/targets/isapi/parser3isapi.C,            src/targets/isapi/pa_pool.C, src/targets/isapi/parser3isapi.C,
           src/targets/isapi/parser3isapi.dsp,            src/targets/isapi/parser3isapi.dsp,
           src/targets/isapi/pool_storage.h, src/types/types.dsp,            src/targets/isapi/pool_storage.h, src/types/types.dsp: Table
           www/htdocs/parser-status.html: Table name2number field now &.            name2number field now &.  main_method_name now on Request pool
           main_method_name now on Request pool rather on global_pool            rather on global_pool [Junction+VJunction created on same pool as
           [Junction+VJunction created on same pool as name = were created            name = were created on global pool, causing mem leaks]
           on global pool, causing mem leaks]  
           * src/: classes/classes.dsp, classes/op.C, include/pa_globals.h,
         * src/classes/classes.dsp, src/classes/op.C,            include/pa_request.h, include/pa_table.h, main/compile.tab.C,
           src/include/pa_globals.h, src/include/pa_request.h,            main/compile.y, main/main.dsp, main/pa_globals.C,
           src/include/pa_table.h, src/main/compile.tab.C,            main/pa_request.C, main/pa_table.C, targets/isapi/pa_pool.C,
           src/main/compile.y, src/main/main.dsp, src/main/pa_globals.C,            targets/isapi/parser3isapi.C, targets/isapi/parser3isapi.dsp,
           src/main/pa_request.C, src/main/pa_table.C,            targets/isapi/pool_storage.h, types/types.dsp: Table name2number
           src/targets/isapi/pa_pool.C, src/targets/isapi/parser3isapi.C,            field now &.  main_method_name now on Request pool rather on
           src/targets/isapi/parser3isapi.dsp,            global_pool [Junction+VJunction created on same pool as name =
           src/targets/isapi/pool_storage.h, src/types/types.dsp,            were created on global pool, causing mem leaks]
           www/htdocs/parser-status.html: Table name2number field now &.  
           main_method_name now on Request pool rather on global_pool  
           [Junction+VJunction created on same pool as name = were created  
           on global pool, causing mem leaks]  
   
 2002-05-06  paf  2002-05-06  paf
   
Line 14202 Line 18178
   
         * configure, src/include/pa_version.h: version now not b          * configure, src/include/pa_version.h: version now not b
   
         * src/targets/cgi/parser3.C, www/htdocs/global.xsl,          * src/targets/cgi/parser3.C: request.uri now never 0
           www/htdocs/index.html: request.uri now never 0  
   
 2002-04-29  paf  2002-04-29  paf
   
Line 14221 Line 18196
   
 2002-04-26  paf  2002-04-26  paf
   
         * src/doc/doxygen.cfg, src/targets/cgi/parser3.dsp,          * src/: doc/doxygen.cfg, targets/cgi/parser3.dsp: doxygen dot image
           www/htdocs/index.html: doxygen dot image size reduced            size reduced
   
 2002-04-25  paf  2002-04-25  paf
   
Line 14233 Line 18208
         * operators.txt, src/classes/date.C: ^date::create[2002-12-33          * operators.txt, src/classes/date.C: ^date::create[2002-12-33
           01:03:04]            01:03:04]
   
         * ChangeLog, operators.txt, src/classes/date.C,          * ChangeLog, operators.txt, src/classes/date.C:
           www/htdocs/index.html: ^date::create[2002-12-33 01:03:04]            ^date::create[2002-12-33 01:03:04]
   
         * ChangeLog: updated changelog          * ChangeLog: updated changelog
   
         * www/htdocs/index.html: sample of 'using junction out of context'          * src/classes/table.C: removed restriction on column count to
             ^table.hash to work, now must be >0 [were >1]
         * src/classes/table.C, www/htdocs/.htaccess, www/htdocs/index.html:  
           removed restriction on column count to ^table.hash to work, now  
           must be >0 [were >1]  
   
 2002-04-24  paf  2002-04-24  paf
   
Line 14253 Line 18225
   
 2002-04-23  paf  2002-04-23  paf
   
         * operators.txt, src/classes/string.C, www/htdocs/index.html:          * 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 14273 Line 18245
         * src/main/execute.C: rolled back to          * src/main/execute.C: rolled back to
           before_killing_userjunction_contexts            before_killing_userjunction_contexts
   
         * src/main/execute.C, www/htdocs/index.html: user junctions context          * src/main/execute.C: user junctions context killed
           killed  
   
         * src/main/execute.C, www/htdocs/index.html: junctions to local          * src/main/execute.C: junctions to local contexts got
           contexts got cleanized&checked later            cleanized&checked later
   
 2002-04-19  paf  2002-04-19  paf
   
         * src/classes/string.C, src/include/pa_request.h,          * src/: classes/string.C, include/pa_request.h,
           src/include/pa_string.h, src/main/pa_request.C,            include/pa_string.h, main/pa_request.C, main/pa_string.C,
           src/main/pa_string.C, src/types/pa_vstring.C,            types/pa_vstring.C, types/pa_vstring.h: string now optimized
           src/types/pa_vstring.h, www/htdocs/index.html: string now            prior to .left .right .mid .pos .match when that is profitable,
           optimized prior to .left .right .mid .pos .match when that is            and always before .replace when $ORIGINS(1) optimization disabled
           profitable, and always before .replace when $ORIGINS(1)            economy from not wasting mem on lots of strings which occur by
           optimization disabled economy from not wasting mem on lots of            lots of String:mid calls to get parts of source string between
           strings which occur by lots of String:mid calls to get parts of            found_occurances
           source string between found_occurances  
   
         * src/classes/file.C: ovector now local economy: 16 bytes per          * src/classes/file.C: ovector now local economy: 16 bytes per
           ^file:list            ^file:list
Line 14305 Line 18275
   
         * src/doc/footer.htm: 2001,          * src/doc/footer.htm: 2001,
   
         * src/classes/string.C, src/include/pa_string.h,          * src/: classes/string.C, include/pa_string.h, main/pa_string.C:
           src/main/pa_string.C, www/htdocs/index.html: string.match[][']            string.match[]['] option enables generation of $match.prematch
           option enables generation of $match.prematch .match .postmatch            .match .postmatch columns
           columns  
   
         * src/main/pa_string.C: String::match options analized without          * src/main/pa_string.C: String::match options analized without
           cstr-ing them now            cstr-ing them now
Line 14323 Line 18292
   
         * src/doc/doxygen.cfg: .chi generation disabled          * src/doc/doxygen.cfg: .chi generation disabled
   
         * src/classes/classes.h, src/classes/xdoc.C, src/classes/xnode.C,          * src/: classes/classes.h, classes/xdoc.C, classes/xnode.C,
           src/classes/xnode.h, src/types/pa_vxdoc.C, www/htdocs/index.html:            classes/xnode.h, types/pa_vxdoc.C: xdoc(xnode) now fully -
           xdoc(xnode) now fully - fields&methods            fields&methods
   
         * src/: classes/classes.h, classes/hash.C, types/pa_value.h,          * src/: classes/classes.h, classes/hash.C, types/pa_value.h,
           types/pa_vbool.h, types/pa_vcookie.h, types/pa_vdate.h,            types/pa_vbool.h, types/pa_vcookie.h, types/pa_vdate.h,
Line 14338 Line 18307
           types/pa_vxdoc.h, types/pa_vxnode.h: fclass_real lowered from            types/pa_vxdoc.h, types/pa_vxnode.h: fclass_real lowered from
           VStateless_class to VObject            VStateless_class to VObject
   
         * src/main/pa_request.C, src/types/pa_valiased.h,          * src/: main/pa_request.C, types/pa_valiased.h,
           src/types/pa_vstateless_class.h,            types/pa_vstateless_class.h, types/pa_vstateless_object.h,
           src/types/pa_vstateless_object.h, src/types/pa_vstring.h,            types/pa_vstring.h: VStateless_string_object speicalized light
           www/htdocs/index.html: VStateless_string_object speicalized light  
           version of VStateless_object            version of VStateless_object
   
         * src/classes/op.C: ^throw comment param made optional          * src/classes/op.C: ^throw comment param made optional
   
         * src/types/pa_valiased.C, src/types/pa_valiased.h,          * src/types/: pa_valiased.C, pa_valiased.h, pa_vclass.h,
           src/types/pa_vclass.h, src/types/pa_vobject.h,            pa_vobject.h, pa_wcontext.C: VAliased get/set alias now virtual
           src/types/pa_wcontext.C, www/htdocs/index.html: VAliased get/set            and implemented down in VClass, fclass_alias removed,
           alias now virtual and implemented down in VClass, fclass_alias  
           removed,  
   
         * src/types/pa_value.C: forced to cut that from .h because of          * src/types/pa_value.C: forced to cut that from .h because of
           VStateless_class usage [undefined in .h]            VStateless_class usage [undefined in .h]
   
         * src/include/pa_opcode.h, src/main/compile.tab.C,          * src/: include/pa_opcode.h, main/compile.tab.C, main/compile.y,
           src/main/compile.y, src/main/compile_tools.C,            main/compile_tools.C, main/compile_tools.h, main/execute.C,
           src/main/compile_tools.h, src/main/execute.C,            main/pa_request.C, types/pa_vmethod_frame.h: OP_GET_METHOD_FRAME
           src/main/pa_request.C, src/types/pa_vmethod_frame.h,            merged with OP_CALL, VCodeFrame move to stack [no more heap waste
           www/htdocs/index.html: OP_GET_METHOD_FRAME merged with OP_CALL,            on each CALL]
           VCodeFrame move to stack [no more heap waste on each CALL]  
   
         * src/classes/classes.h, src/classes/date.C, src/classes/double.C,          * src/: classes/classes.h, classes/date.C, classes/double.C,
           src/classes/file.C, src/classes/form.C, src/classes/hash.C,            classes/file.C, classes/form.C, classes/hash.C, classes/image.C,
           src/classes/image.C, src/classes/int.C, src/classes/mail.C,            classes/int.C, classes/mail.C, classes/math.C, classes/op.C,
           src/classes/math.C, src/classes/op.C, src/classes/response.C,            classes/response.C, classes/string.C, classes/table.C,
           src/classes/string.C, src/classes/table.C, src/classes/void.C,            classes/void.C, classes/xnode.C, include/pa_globals.h,
           src/classes/xnode.C, src/include/pa_globals.h,            include/pa_request.h, main/execute.C, main/pa_globals.C,
           src/include/pa_request.h, src/main/execute.C,            main/pa_request.C, types/Makefile.am, types/pa_value.h,
           src/main/pa_globals.C, src/main/pa_request.C,            types/pa_vdouble.h, types/pa_vform.C, types/pa_vhash.h,
           src/types/Makefile.am, src/types/pa_value.h,            types/pa_vint.h, types/pa_vmath.h, types/pa_vmethod_frame.h,
           src/types/pa_vdouble.h, src/types/pa_vform.C,            types/pa_vstateless_class.h, types/pa_wcontext.C,
           src/types/pa_vhash.h, src/types/pa_vint.h, src/types/pa_vmath.h,            types/pa_wcontext.h, types/pa_wwrapper.h, types/types.dsp:
           src/types/pa_vmethod_frame.h, src/types/pa_vstateless_class.h,            removed Value::fname
           src/types/pa_wcontext.C, src/types/pa_wcontext.h,  
           src/types/pa_wwrapper.h, src/types/types.dsp,  
           www/htdocs/index.html: removed Value::fname  
   
 2002-04-17  paf  2002-04-17  paf
   
Line 14395 Line 18357
         * asm.txt, form.txt, lang.txt, sql.txt: removed outdated. see in          * asm.txt, form.txt, lang.txt, sql.txt: removed outdated. see in
           Attic asm.txt as most interesting            Attic asm.txt as most interesting
   
         * src/main/pa_request.C, src/targets/isapi/parser3isapi.C,          * src/: main/pa_request.C, targets/isapi/parser3isapi.C: removed
           www/htdocs/index.html: removed check, preventing content-length:            check, preventing content-length: 0 from appearing
           0 from appearing  
           * src/main/execute.C: $result in @main now taken into account as in
         * src/main/execute.C, www/htdocs/index.html: $result in @main now            usual functions
           taken into account as in usual functions  
           * src/: doc/postbuild.txt, main/execute.C: $result in @postprocess
         * src/doc/postbuild.txt, src/main/execute.C, www/htdocs/index.html:            & @unhandled_exception now taken into account as in usual
           $result in @postprocess & @unhandled_exception now taken into            functions
           account as in usual functions  
   
         * src/doc/postbuild.txt: instructions on post .html build          * src/doc/postbuild.txt: instructions on post .html build
   
         * src/doc/: doxygen.cfg, html2chm.cmd: .chm file only now, no .chi          * src/doc/: doxygen.cfg, html2chm.cmd: .chm file only now, no .chi
   
         * src/classes/file.C, src/main/pa_exec.C, www/htdocs/index.html:          * src/: classes/file.C, main/pa_exec.C: stderr of execs mark as
           stderr of execs mark as tainted            tainted
   
         * src/main/pa_request.C: uri in error log          * src/main/pa_request.C: uri in error log
   
Line 14428 Line 18389
         * src/classes/op.C: _process pseudo origin copied from local var to          * src/classes/op.C: _process pseudo origin copied from local var to
           heap            heap
   
         * src/classes/op.C, www/htdocs/auto.p: extra check on empty file in          * src/classes/op.C: extra check on empty file in origin in _execute
           origin in _execute  
   
 2002-04-15  paf  2002-04-15  paf
   
Line 14462 Line 18422
           compile_tools.h, execute.C: OP_GET_ELEMENT+OP_GET_ELEMENT__WRITE            compile_tools.h, execute.C: OP_GET_ELEMENT+OP_GET_ELEMENT__WRITE
           changed to OP_WRITE_VALUE in var get cases            changed to OP_WRITE_VALUE in var get cases
   
         * src/classes/op.C, src/include/pa_globals.h,          * src/: classes/op.C, include/pa_globals.h, include/pa_opcode.h,
           src/include/pa_opcode.h, src/include/pa_request.h,            include/pa_request.h, main/compile.tab.C, main/compile.y,
           src/main/compile.tab.C, src/main/compile.y,            main/compile_tools.C, main/compile_tools.h, main/execute.C,
           src/main/compile_tools.C, src/main/compile_tools.h,            main/pa_globals.C, main/pa_request.C, targets/cgi/parser3.C:
           src/main/execute.C, src/main/pa_globals.C, src/main/pa_request.C,            switch in hash constructor fixed [were problems with using of
           src/targets/cgi/parser3.C, www/htdocs/index.html: switch in hash            stacked wwrapper after it's death]
           constructor fixed [were problems with using of stacked wwrapper  
           after it's death]  
   
 2002-04-12  paf  2002-04-12  paf
   
         * operators.txt, src/classes/table.C, www/htdocs/index.html:          * operators.txt, src/classes/table.C: table.select(expression) 0
           table.select(expression) 0  
   
 2002-04-11  paf  2002-04-11  paf
   
Line 14491 Line 18448
           main/pa_string.C: killed Request::process() wrapping            main/pa_string.C: killed Request::process() wrapping
           VString(String) in case we need only String            VString(String) in case we need only String
   
         * src/include/pa_string.h, src/main/pa_string.C,          * src/: include/pa_string.h, main/pa_string.C, main/untaint.C:
           src/main/untaint.C, www/htdocs/index.html: killed 8 bytes from            killed 8 bytes from String.head
           String.head  
   
 2002-04-09  paf  2002-04-09  paf
   
Line 14503 Line 18459
   
         * operators.txt, src/classes/xdoc.C: xslt params made literal          * operators.txt, src/classes/xdoc.C: xslt params made literal
   
         * src/classes/xdoc.C, www/htdocs/global.xsl, www/htdocs/index.html:          * src/classes/xdoc.C: xslt params fixed
           xslt params fixed  
   
         * src/: main/pa_common.C, targets/cgi/parser3.C,          * src/: main/pa_common.C, targets/cgi/parser3.C,
           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.txt, src/classes/double.C, src/classes/int.C:
           www/htdocs/global.xsl: int/double.int/double(default)            int/double.int/double(default)
   
 2002-04-04  paf  2002-04-04  paf
   
         * src/include/pa_string.h, src/main/pa_string.C,          * src/: include/pa_string.h, main/pa_string.C: fixed string.replace
           www/htdocs/index.html: fixed string.replace [when reconstructing            [when reconstructing pieces were split by
           pieces were split by max_integral(piece.size), thus some strings            max_integral(piece.size), thus some strings to replace happen to
           to replace happen to be split into two = not replaced)            be split into two = not replaced)
   
         * src/targets/cgi/: parser3.C, parser3.dsp: document root in          * src/targets/cgi/: parser3.C, parser3.dsp: document root in
           standalone version = current dir            standalone version = current dir
Line 14547 Line 18502
   
         * 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, www/htdocs/index.html:          * operators.txt, src/classes/date.C: ^date::create now may not
           ^date::create now may not supply day, default 1.  checked 29.03            supply day, default 1.  checked 29.03 -> 29.02 roll on non 366
           -> 29.02 roll on non 366 days' year.  | 31.05->31.04   roll            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.txt, src/classes/date.C, src/classes/op.C,
           src/include/pa_globals.h, src/include/pa_hash.h,            src/include/pa_globals.h, src/include/pa_hash.h,
           src/main/pa_globals.C, src/types/pa_vdate.h,            src/main/pa_globals.C, src/types/pa_vdate.h: ^cache[file][date]{
           www/htdocs/index.html: ^cache[file][date]{    ^cache(seconds)            ^cache(seconds)    ^cache[date] }
           ^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
Line 14584 Line 18538
           src/types/pa_vmethod_frame.h, src/types/pa_vstatus.C,            src/types/pa_vmethod_frame.h, src/types/pa_vstatus.C,
           src/types/pa_vtable.C, src/types/pa_vxdoc.h,            src/types/pa_vtable.C, src/types/pa_vxdoc.h,
           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, www/htdocs/index.html: assigned            src/types/pa_wwrapper.h: assigned exception types
           exception types  
   
         * operators.txt, src/classes/op.C, src/include/pa_config_fixed.h,          * operators.txt, src/classes/op.C, src/include/pa_config_fixed.h,
           src/include/pa_request.h, src/main/execute.C,            src/include/pa_request.h, src/main/execute.C,
Line 14597 Line 18550
         * src/: include/pa_common.h, main/pa_exec.C: windows exec chdir          * src/: include/pa_common.h, main/pa_exec.C: windows exec chdir
           fixed            fixed
   
         * src/classes/op.C, www/htdocs/index.html: forced language of          * src/classes/op.C: forced language of $source field of exception
           $source field of exception to 'tainted', so that sql-langed-frags            to 'tainted', so that sql-langed-frags could be outputed outside
           could be outputed outside of connect            of connect
   
         * operators.txt: removed date.roll limit of +-1 offset          * operators.txt: removed date.roll limit of +-1 offset
   
         * src/classes/date.C, www/htdocs/index.html: removed date.roll          * src/classes/date.C: removed date.roll limit of +-1 offset
           limit of +-1 offset  
   
         * operators.txt, src/classes/date.C, www/htdocs/index.html: fixed          * operators.txt, src/classes/date.C: fixed date roll on
           date roll on daylightsaving days mktime took into account            daylightsaving days mktime took into account tm_isdst flag, which
           tm_isdst flag, which remained from BEFORE roll, but should have            remained from BEFORE roll, but should have been reset
           been reset  
   
 2002-03-25  paf  2002-03-25  paf
   
Line 14650 Line 18601
         * operators.txt, src/classes/op.C, src/include/pa_exception.h,          * operators.txt, src/classes/op.C, src/include/pa_exception.h,
           src/include/pa_globals.h, src/include/pa_request.h,            src/include/pa_globals.h, src/include/pa_request.h,
           src/include/pa_stack.h, src/main/pa_globals.C,            src/include/pa_stack.h, src/main/pa_globals.C,
           src/main/pa_request.C, www/htdocs/index.html: introducing ^try            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, www/htdocs/index.html:          * operators.txt, src/classes/table.C: ^table.locate(logical expr)
           ^table.locate(logical expr)  
   
 2002-03-13  paf  2002-03-13  paf
   
Line 14671 Line 18621
   
         * src/main/pa_common.C: --disable-foreign-group-files          * src/main/pa_common.C: --disable-foreign-group-files
   
         * INSTALL, www/htdocs/index.html: --disable-execs          * INSTALL: --disable-execs
   
         * src/main/pa_exec.C, www/htdocs/index.html: --disable-execs          * src/main/pa_exec.C: --disable-execs
   
         * configure, configure.in, src/include/pa_config_auto.h.in:          * configure, configure.in, src/include/pa_config_auto.h.in:
           --disable-execs            --disable-execs
   
         * src/include/pa_config_fixed.h, src/main/pa_exec.C,          * src/: include/pa_config_fixed.h, main/pa_exec.C: --disable-execs
           www/htdocs/index.html: --disable-execs  
   
         * src/types/pa_vfile.C: $file.text now 0A linebreaks,          * src/types/pa_vfile.C: $file.text now 0A linebreaks,
           file::exec/cgi linebreaks "0D0A" changed to 0A onces            file::exec/cgi linebreaks "0D0A" changed to 0A onces
Line 14696 Line 18645
           requires headers to be terminated with \r\n manually [refuses to            requires headers to be terminated with \r\n manually [refuses to
           separate header/body itself]            separate header/body itself]
   
         * src/main/pa_globals.C, src/targets/cgi/parser3.C,          * src/: main/pa_globals.C, targets/cgi/parser3.C,
           src/targets/isapi/parser3isapi.C, www/htdocs/index.html: isapi            targets/isapi/parser3isapi.C: isapi site config beside .dll
           site config beside .dll  
   
 2002-03-04  paf  2002-03-04  paf
   
         * src/classes/op.C, src/types/pa_vfile.C, www/htdocs/index.html:          * src/: classes/op.C, types/pa_vfile.C: process body now evaluated
           process body now evaluated in PASS language            in PASS language
   
         * src/: classes/op.C, include/pa_string.h, main/pa_string.C: string          * src/: classes/op.C, include/pa_string.h, main/pa_string.C: string
           deserialize checks on broken file            deserialize checks on broken file
Line 14724 Line 18672
   
         * configure, configure.in: apache module updated          * configure, configure.in: apache module updated
   
         * www/htdocs/auto.p: apache module updated  
   
         * src/main/pa_string.C: origin by first piece preferred before last          * src/main/pa_string.C: origin by first piece preferred before last
           piece            piece
   
Line 14741 Line 18687
   
         * src/main/pa_exec.C: more precise names for vars, cosmetic          * src/main/pa_exec.C: more precise names for vars, cosmetic
   
         * src/classes/xnode.C, www/htdocs/auto.p, www/htdocs/global.xsl,          * src/classes/xnode.C: in some situation, xpath query returned
           www/htdocs/index.html: in some situation, xpath query returned  
           result with type NODESET, but empty nodeset member field, checked            result with type NODESET, but empty nodeset member field, checked
           that            that
   
Line 14764 Line 18709
         * src/main/pa_string.C: string iterators fixed again, so were          * src/main/pa_string.C: string iterators fixed again, so were
           String::join_chain            String::join_chain
   
         * src/include/pa_string.h, src/main/pa_string.C, www/htdocs/auto.p,          * src/: include/pa_string.h, main/pa_string.C: string iterators
           www/htdocs/index.html: string iterators fixed again, so were            fixed again, so were String::join_chain
           String::join_chain  
   
         * src/types/pa_vcookie.C: cookie "expires=0" =  "session"          * src/types/pa_vcookie.C: cookie "expires=0" =  "session"
   
Line 14810 Line 18754
   
 2002-02-20  paf  2002-02-20  paf
   
         * src/include/pa_string.h, src/main/execute.C, src/main/untaint.C,          * src/: include/pa_string.h, main/execute.C, main/untaint.C,
           src/targets/cgi/pa_pool.C, src/targets/cgi/parser3.C,            targets/cgi/pa_pool.C, targets/cgi/parser3.C: //#define
           www/htdocs/index.html: //#define DEBUG_STRING_APPENDS_VS_EXPANDS            DEBUG_STRING_APPENDS_VS_EXPANDS
   
         * src/: include/pa_string.h, main/pa_string.C, main/untaint.C:          * src/: include/pa_string.h, main/pa_string.C, main/untaint.C:
           economy: 22%            economy: 22%
Line 14820 Line 18764
         * src/: include/pa_string.h, main/pa_string.C, main/untaint.C:          * src/: include/pa_string.h, main/pa_string.C, main/untaint.C:
           space uptimized: string::link_row removed            space uptimized: string::link_row removed
   
         * src/include/pa_string.h, src/include/pa_stylesheet_connection.h,          * src/: include/pa_string.h, include/pa_stylesheet_connection.h,
           src/main/pa_db_manager.C, src/main/pa_dictionary.C,            main/pa_db_manager.C, main/pa_dictionary.C, main/pa_string.C,
           src/main/pa_string.C, src/main/untaint.C,            main/untaint.C, targets/cgi/parser3.C, types/pa_vcookie.C,
           src/targets/cgi/parser3.C, src/types/pa_vcookie.C,            types/pa_vstring.h: speed uptimized: string::is_empty
           src/types/pa_vstring.h, www/htdocs/index.html: speed uptimized:  
           string::is_empty  
   
         * operators.txt, src/include/pa_common.h,          * 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,
           src/targets/cgi/pa_pool.C, src/targets/cgi/parser3.C,            src/targets/cgi/pa_pool.C, src/targets/cgi/parser3.C: strign to
           www/htdocs/auto.p, www/htdocs/global.xsl, www/htdocs/index.html:            string append optimiziation idea and estimates
           strign to string append optimiziation idea and estimates  
   
 2002-02-19  paf  2002-02-19  paf
   
Line 14855 Line 18796
   
         * src/main/pa_globals.C: extern "C" was removed too fast          * src/main/pa_globals.C: extern "C" was removed too fast
   
         * src/include/pa_opcode.h, src/include/pa_request.h,          * src/: include/pa_opcode.h, include/pa_request.h,
           src/main/compile.tab.C, src/main/compile.y, src/main/execute.C,            main/compile.tab.C, main/compile.y, main/execute.C,
           src/types/pa_wcontext.h, www/htdocs/index.html: in_expression            types/pa_wcontext.h: in_expression aimed to solve old problem
           aimed to solve old problem with string/nonstring values, now in            with string/nonstring values, now in expressions double/int
           expressions double/int values are passed as-is, without stupid            values are passed as-is, without stupid tostring/fromstring
           tostring/fromstring conversions            conversions
   
         * src/main/: main.dsp, pa_globals.C: removed unneded #ifdef          * src/main/: main.dsp, pa_globals.C: removed unneded #ifdef
           __cplusplus } #endif            __cplusplus } #endif
Line 14877 Line 18818
         * operators.txt, src/classes/date.C: date::create [were date::set,          * operators.txt, src/classes/date.C: date::create [were date::set,
           with backward comp            with backward comp
   
         * src/classes/math.C, www/htdocs/index.html: math:random range          * src/classes/math.C: math:random range check fixed
           check fixed  
   
         * src/main/compile.tab.C, src/main/compile.y,          * src/main/: compile.tab.C, compile.y: integer  division stops name
           www/htdocs/global.xsl, www/htdocs/index.html: integer  division  
           stops name  
   
         * INSTALL: local install comment          * INSTALL: local install comment
   
Line 15059 Line 18997
           xdoc::set obsolete now, now xdoc::create, with both sences            xdoc::set obsolete now, now xdoc::create, with both sences
   
         * operators.txt, src/classes/table.C, src/include/pa_array.h,          * 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,            src/include/pa_table.h, src/main/pa_array.C, src/main/pa_table.C:
           www/htdocs/auto.p, www/htdocs/index.html: table::create now //            table::create now // 'set' name obsolete now table clone.
           'set' name obsolete now table clone.  
   
         * operators.txt, src/classes/string.C,          * 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:
Line 15104 Line 19041
         * configure.in, operators.txt, src/classes/file.C,          * configure.in, operators.txt, src/classes/file.C,
           src/classes/op.C, src/include/pa_common.h,            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, www/htdocs/index.html: rewritten ^cache to            src/main/pa_common.C: rewritten ^cache to use
           use non-blocking-exclusive-caches            non-blocking-exclusive-caches
   
         * src/main/pa_common.C: text file read mode on win32 adjusted          * src/main/pa_common.C: text file read mode on win32 adjusted
           [speed impact. was off for debugging purpose, but forgotten            [speed impact. was off for debugging purpose, but forgotten
Line 15145 Line 19082
           staying in 'entered class' state after $a:a(a) it prevented            staying in 'entered class' state after $a:a(a) it prevented
           operators from being called thereafter            operators from being called thereafter
   
         * src/main/execute.C, src/types/pa_wcontext.h, www/htdocs/auto.p,          * src/: main/execute.C, types/pa_wcontext.h: operators check 2
           www/htdocs/index.html: operators check 2 floated up old error of            floated up old error of staying in 'entered class' state after
           staying in 'entered class' state after $a:a[a] it prevented            $a:a[a] it prevented operators from being called thereafter
           operators from being called thereafter  
   
         * src/main/execute.C, www/htdocs/index.html: operators check, thay          * src/main/execute.C: operators check, thay mistakenly seen in
           mistakenly seen in   $class:operator   $object.operators contexts            $class:operator   $object.operators contexts
   
         * src/classes/xdoc.C, src/targets/cgi/parser3.dsp,          * src/: classes/xdoc.C, targets/cgi/parser3.dsp: now compiles under
           www/htdocs/index.html: now compiles under win32            win32
   
         * INSTALL, configure, configure.in, ident.awk, etc/Makefile.am,          * INSTALL, configure, configure.in, ident.awk, etc/Makefile.am,
           src/classes/Makefile.am, src/main/Makefile.am,            src/classes/Makefile.am, src/main/Makefile.am,
Line 15173 Line 19109
           etc/parser3.charsets/windows-1251.cfg, src/Makefile.am,            etc/parser3.charsets/windows-1251.cfg, src/Makefile.am,
           src/classes/Makefile.am, src/include/pa_config_auto.h.in,            src/classes/Makefile.am, src/include/pa_config_auto.h.in,
           src/main/Makefile.am, src/targets/cgi/Makefile.am,            src/main/Makefile.am, src/targets/cgi/Makefile.am,
           src/targets/cgi/parser3.C, src/types/Makefile.am,            src/targets/cgi/parser3.C, src/types/Makefile.am: moved etc&www
           www/Makefile.am, www/htdocs/auto.p, www/htdocs/global.xsl,            out of src, moved configure&co out of src added windows-1250.cfg
           www/htdocs/index.html, www/htdocs/parser-status.html,            straightened installation scripts procedure made
           www/htdocs/people.dtd: moved etc&www out of src, moved            targets/cgi/parser3.C be dependant on ./configure --sysconfdir
           configure&co out of src added windows-1250.cfg straightened            change
           installation scripts procedure made targets/cgi/parser3.C be  
           dependant on ./configure --sysconfdir change  
   
 2002-01-30  paf  2002-01-30  paf
   
Line 17863 Line 21797
           main/pa_hash.C, main/pa_pool.C, main/pa_request.C,            main/pa_hash.C, main/pa_pool.C, main/pa_request.C,
           main/pa_socks.C, main/pa_sql_driver_manager.C, main/pa_string.C,            main/pa_socks.C, main/pa_sql_driver_manager.C, main/pa_string.C,
           main/pa_table.C, main/untaint.C, targets/cgi/parser3.C,            main/pa_table.C, main/untaint.C, targets/cgi/parser3.C,
           targets/isapi/parser3isapi.C: static char *RCSId="$Id$";            targets/isapi/parser3isapi.C: static char *RCSId="Id";
   
         * src/main/: compile.y, compile_tools.h: $:name: == ${name}:          * src/main/: compile.y, compile_tools.h: $:name: == ${name}:
           $class:name: == ${class:name}:            $class:name: == ${class:name}:
Line 20678 Line 24612
   
         * src/include/: pa_pool.h, pa_string.h: pa_pool split          * src/include/: pa_pool.h, pa_string.h: pa_pool split
   
         * src/main/: main.dsp, pa_string.C: $Id$ check          * src/main/: main.dsp, pa_string.C: Id check
   
         * src/: main/pa_pool.C, main/pa_string.C, include/pa_pool.h: $Id$          * src/: main/pa_pool.C, main/pa_string.C, include/pa_pool.h: Id
           check            check
   
         * src/: include/pa_pool.h, main/pa_string.C: String prealloc &          * src/: include/pa_pool.h, main/pa_string.C: String prealloc &

Removed from v.1.89  
changed lines
  Added in v.1.161


E-mail: