--- parser3/ChangeLog 2024/12/23 02:05:15 1.211 +++ parser3/ChangeLog 2026/02/09 02:05:13 1.232 @@ -1,3 +1,439 @@ +2026-02-02 moko + + * tests/: 307.html, results/307.processed: more "junction used + outside of context" tests added + +2026-01-09 moko + + * src/classes/amqp.C: auto_delete is better false by default + (related to feature #1288) + + * src/classes/amqp.C: more methods bool args fixes, nowait removed + (related to feature #1288) + + * src/classes/amqp.C: nowait was mixed up with exclusive in consume + + * src/classes/amqp.C: amqp_basic_cancel added to consume, purge + returns purged messages count (related to feature #1288) + + * tests/: 449.html, results/449.processed, results/auto.p: test for + table size limit added (related to feature #1276) + + * src/classes/table.C: $MAIN:LIMITS.max_array_size now used to + limit table size; note: for append and insert operations only + (implements feature #1276) + +2026-01-08 moko + + * src/classes/amqp.C: addition to feature #1288: declare_exchange + + declare_queue = declare; delete_exchange + delete_queue = delete; + bind_queue -> bind; unbind_queue -> unbind; + purge, + info; + consume can be called without callback with optional $.count(N), + returns array of messages; + +2026-01-07 moko + + * tests/: 448.html, results/448.processed: avoid 500, show + exception where not supported + + * src/include/pa_int.h: warnings war + + * tests/: 422.html, results/422.processed: test updated after wide + int implemented (feature #1273) + + * src/main/pa_int.C: warnings war + + * src/classes/classes.vcproj: +amqp.C + + * src/classes/: int.C, string.C: warnings war + + * src/classes/: op.C: warnings war + + * src/: classes/op.C, main/pa_int.C: warnings war + + * src/types/pa_vdate.h: warnings war + + * src/main/pa_int.C: warnings war continues + + * src/: include/pa_int.h, main/pa_int.C, types/pa_vint.h: warnings + war + + * src/types/pa_vdate.C: reverted, format_double still required here + + * src/: include/pa_int.h, main/pa_int.C, types/pa_vmath.C: + format_double now supports wint, $math:int_max and $math:int_min + added, PA_WIDE_INT is finally enabled by default (implements + feature #1273) + + * tests/: 275.html, results/275.processed: preparing tests for int + extension + + * tests/: 424.html, results/424.processed: actualized and prepared + for wide int + +2026-01-06 moko + + * src/: classes/double.C, classes/int.C, classes/string.C, + include/pa_common.h, include/pa_int.h, include/pa_string.h, + main/execute.C, main/pa_common.C, main/pa_int.C, + types/pa_value.h, types/pa_vdate.C, types/pa_vdate.h, + types/pa_vdouble.h, types/pa_vint.h, types/pa_vmethod_frame.h, + types/pa_vstring.h: feature #1273 core implementation: + value::as_wint added, implemented for int/double/string, and used + where applicable; vint now holds pa_wint type; format_double + moved to pa_int + + * src/: include/pa_array.h, include/pa_string.h, main/main.vcproj: + pa_int includes tuning, vcproj updated (related to feature #1273) + + * src/main/pa_int.C: build fix + + * src/: include/Makefile.am, main/Makefile.am: pa_int.h/pa_int.C + added, another preparation for feature #1273 + + * src/: include/pa_array.h, include/pa_int.h, include/pa_string.h, + include/pa_types.h, main/pa_int.C, main/pa_string.C, + types/pa_vint.h: pa_int.h/pa_int.C added and all related code + moved there, pa_wint and related functions added, another + preparation for feature #1273 + +2025-12-17 moko + + * src/classes/json.C: optimization: String::Empty used and avoided + using passed length. + +2025-12-16 moko + + * src/classes/string.C: sync _int with _double, avoid int usage + (related to #1273) + +2025-12-08 moko + + * src/include/pa_memory.h: PA_CHECK_REGULAR_ALLOC_UNAVAILABLE + define added and used for OS X as well + +2025-11-30 moko + + * configure, configure.ac, src/include/pa_config_auto.h.in, + src/include/pa_config_fixed.h: int64_t added in preparation to + feature #1273 + +2025-11-22 moko + + * src/classes/amqp.C: delivery_tag changed from string to double + (related to feature #1288) + +2025-11-14 moko + + * src/types/pa_vstatus.C, tests/448.html, + tests/results/448.processed: $status:limit-cpu, + $status:limit-mem, $status:limit-nproc unlimited support added, + test added (related to feature #1280) + + * src/types/: pa_vstatus.C, pa_vstatus.h: r/w $status:limit-cpu, + $status:limit-mem, $status:limit-nproc added (implements feature + #1280) + +2025-11-12 moko + + * tests/results/: 323.processed, 421.processed: tests results + updated after amqp class added + +2025-11-08 moko + + * src/classes/amqp.C: tls support added, errors reporting improved + (related to feature #1288) + + * src/classes/amqp.C: tls support added (related to feature #1288) + + * src/classes/amqp.C: exceptions text now printed (related to + feature #1288) + + * src/classes/amqp.C: properties hash simplified (related to + feature #1288) + +2025-11-07 moko + + * src/classes/amqp.C: consume fixed (related to feature #1288) + + * src/classes/classes.C: + amqp class + + * buildall, configure, configure.ac, src/classes/Makefile.am, + src/include/pa_config_auto.h.in, src/targets/apache/Makefile.am, + src/targets/cgi/Makefile.am, src/types/Makefile.am: build scripts + updated for librabbitmq support (relates to feature #1288) + + * src/: classes/amqp.C, types/pa_vamqp.h: amqp class draft with + basic RabbitMQ C library (librabbitmq) support (partially + implements #1288) + +2025-10-05 moko + + * src/classes/: array.C, file.C, hash.C, image.C, json.C, op.C, + reflection.C, string.C: Optimization: valid_options optimized + where HashStringValue::Iterator used + + * tests/results/224.processed: test result updated after date + functions updated (related to #1287) + +2025-10-04 moko + + * operators.ru.txt, operators.txt: actualized + + * operators.ru.txt, operators.txt: actualized after #1285 and #1286 + + * tests/: 447.html, results/447.processed: tests for + ^reflection:override[$method] added (related to feature #1286) + + * tests/: 446.html, results/446.processed: tests for $n1 eq n2 + added (related to feature #1285) + + * src/classes/reflection.C: + ^reflection:override[$method[;$.to[class] $.name[another_name]]] + added (implements feature #1286) + + * src/main/execute.C: bugfix: when method is attached from another + class, it's junction_template is initialized with another class, + thus get_vjunction should be used (related to feature #1286) + + * src/classes/date.C: ^date:sql-string[], ^date:gmt-string[], + ^date:iso-string[] - static call now formats current date + (implements feature #1287) + +2025-10-01 moko + + * buildall: built-in mailreceive path actualized + +2025-09-01 moko + + * src/classes/math.C: old compilers support in ^math:eq + +2025-08-31 moko + + * tests/: 446.html, results/446.processed: tests for + ^math:eq(a;b[;max URL distance]) added (related to feature #1285) + + * src/classes/math.C: ^math:eq(a;b[;precision]) added (partly + implements #1285) + +2025-08-30 moko + + * operators.ru.txt, operators.txt: actualized + + * tests/: 230.html, results/230.processed: test for ^file.save + $.append(false|true) option added (related to feature #1284) + + * src/: classes/file.C, types/pa_vfile.C, types/pa_vfile.h: + ^file.save $.append(false|true) option added (implements feature + #1284) + +2025-08-16 moko + + * etc/auto.p.in: LIMIT max_array_size actualized + +2025-08-01 moko + + * src/: lib/gc/include/gc.h, main/pa_globals.C, main/pa_memory.C: + pa_GC_abort_func added and used (implements feature #1283) + + * src/include/: pa_array.h, pa_config_includes.h: + PA_DEBUG_DISABLE_GC mode fixed for sparse array + +2025-07-04 moko + + * src/main/pa_common.C: typo fixed (related to bug #1282) + + * src/main/pa_common.C: minor optimization + create_dir_for_file + checks for \ (related to bug #1282) + +2025-07-03 moko + + * src/main/pa_common.C: _wrename, _wrmdir и _wmkdir are now used + under Windows (fixes bug #1282) + + * src/main/pa_common.C: file:delete for UTF-8 files now works under + Windows (fixes bug #1282) + +2025-06-28 moko + + * src/targets/apache/mod_parser3.c: GCC 15 compatibility fixed by + Yavor Doganov + + * src/main/pa_charset.C: typo fixed (related to feature #1281) + + * src/: include/pa_charset.h, main/pa_charset.C: libxml 2.14 + compatibility fixed (implements feature #1281) + +2025-05-31 moko + + * src/main/pa_http.C: old gcc compilation fix (related to feature + #1277) + +2025-05-28 moko + + * src/: classes/array.C, include/pa_array.h: last + Array_iterator::key() removed (related to feature #1277) + +2025-05-27 moko + + * src/: classes/array.C, classes/table.C, include/pa_array.h, + types/pa_vstring.C, types/pa_vstring.h: VString::uitoa() added + and used (related to feature #1277) + +2025-05-26 moko + + * src/: classes/array.C, classes/curl.C, classes/hash.C, + classes/hashfile.C, classes/image.C, classes/table.C, + main/pa_request.C, main/pa_xml_io.C, types/pa_vconsole.h, + types/pa_venv.C, types/pa_vmail.C, types/pa_vregex.C, + types/pa_vrequest.C, types/pa_vresponse.C, types/pa_vstring.h: + VString(const char *avalue) added and used to optimize new + VString(*new String(i.key(), String::L_TAINTED)) (related to + feature #1277) + + * src/: classes/array.C, classes/curl.C, classes/file.C, + classes/hash.C, classes/image.C, classes/json.C, + classes/reflection.C, classes/xnode.C, include/pa_charset.h, + include/pa_hash.h, include/pa_http.h, include/pa_string.h, + main/pa_charsets.C, main/pa_http.C, main/pa_request.C, + main/pa_string.C, main/pa_xml_io.C, targets/cgi/pa_sapi_info.h, + types/pa_varray.C, types/pa_vform.C, types/pa_vhash.h, + types/pa_vhashfile.C, types/pa_vimage.C, types/pa_vmail.C, + types/pa_vmethod_frame.h, types/pa_vstatus.C, types/pa_vtable.C, + types/pa_vxnode.C: implements feature #1277 String::Body(const + char *abody) now explicit but HashString::put(const char *str, V + value) added for simplicity optimizations: HASH_PUT_CSTR used + where hash.put called several time during execution; caching + String::Body::uitoa used at all pash.put( calls. + +2025-05-25 moko + + * src/: include/pa_request.h, main/pa_request.C: minor opt (related + to feature #1277) + + * src/include/pa_hash.h: HASH_PUT_CSTR added (related to #1277) + + * src/: include/pa_string.h, main/pa_string.C: String::Body::uitoa + added for caching (related to feature #1277) + + * src/include/pa_string.h: optimized String:pos versions added + (without language + char *) (related to feature #1277) + +2025-05-24 moko + + * tests/: 445.html, results/445.processed: test for + ^hash.array[[keys|values]] added (related to feature #1274) + + * src/classes/hash.C: ^hash.array[[keys|values]] added (implements + feature #1274) + +2025-01-26 moko + + * src/include/pa_config_includes.h: synced with pa_config_auto.h.in + +2025-01-25 moko + + * configure.ac, src/include/pa_version.h: version 3.5.1 -> 3.5.2b + + * aclocal.m4, configure, src/include/pa_config_auto.h.in, + src/lib/ltdl/aclocal.m4, src/lib/ltdl/configure: aclocal && + autoheader && automake && autoconf + + * src/lib/ltdl/configure.ac: new autotools used + + * acsite.m4, configure.ac: new autotools warnings fixed + +2025-01-10 moko + + * tests/results/320.processed: test result updated after syslog + added + + * src/classes/op.C: minor MSVC fixes + + * src/lib/md5/pa_md5c.c: MSVC warnings fixed + + * operators.ru.txt, operators.txt: + + ^syslog[ident;message[;info|warning|error|debug]] + + * src/classes/op.C: + + ^syslog[ident;message[;info|warning|error|debug]] (implelents + feature #1270) + + * configure, configure.ac, src/include/pa_config_auto.h.in, + src/include/pa_version.h: 3.5.0 -> 3.5.1, syslog check + +2025-01-06 moko + + * src/include/pa_hash.h: own prime numbers (nearest primes to 5 * + 2^n) calculated and used + + * src/lib/md5/: pa_md5.h, pa_md5c.c: MD5 code now taken from + https://www.hadrons.org/software/libmd/ + +2024-12-28 moko + + * tests/httpd/run_tests.sh: for FreeBSD compatibility + + * tests/httpd/: 032.txt, 033.txt, 034.txt, 035.txt, 036.txt, + 037.txt, 038.txt, ok.log, site/404.html, site/httpd.p: + $request:uri and $request:path tests added (related to feature + #1269) + + * operators.ru.txt, operators.txt: + $request:path documented + (related to feature #1269) + + * tests/: 065.html, results/065.processed: $request:path, + $request:uri tested + + * src/types/pa_vrequest.C: $request:path default is empty string to + match an empty URI in console mode (related to feature #1269) + + * etc/auto.p.in: $request:path used (related to feature #1269) + + * src/types/: pa_vrequest.C, pa_vrequest.h: $request:path added + (implements feature #1269) + +2024-12-26 moko + + * configure, configure.ac, src/include/pa_version.h: 3.5.0rc -> + 3.5.0 + + * src/lib/sdbm/: pa_strings.C, sdbm.c, sdbm_private.h, + pa-include/pa_errno.h, pa-include/pa_file_info.h, + pa-include/pa_file_io.h, pa-include/pa_sdbm.h, + pa-include/pa_strings.h: unused code cleaned, pa_pstrcat uses + pa_strcat + + * tests/results/223.processed: apache upgraded @parser.ru + + * src/lib/sdbm/: sdbm.c, sdbm_hash.c, sdbm_lock.c, sdbm_pair.c, + sdbm_pair.h, sdbm_private.h, sdbm_tune.h, pa-include/pa_apr.h, + pa-include/pa_errno.h, pa-include/pa_file_info.h, + pa-include/pa_file_io.h, pa-include/pa_sdbm.h, + pa-include/pa_strings.h: sdbm updated from version included in + apache 2.0.43 to version included in apache 2.0.65 + +2024-12-24 moko + + * etc/auto.p.in: to avoid patching Debian package + + * src/main/: pa_exec.C, pa_http.C: final fixes for + --with-build-warnings (dangling-reference warnings can be + ignored) + +2024-12-23 moko + + * src/: classes/file.C, classes/hash.C, classes/op.C, + include/pa_common.h, main/pa_http.C, main/pa_request.C, + types/pa_vcookie.C, types/pa_vform.C: more fixes for + --with-build-warnings + + * src/: classes/date.C, classes/inet.C, classes/op.C, + classes/reflection.C, include/pa_array.h, + include/pa_config_includes.h, main/execute.C, main/pa_base64.C, + main/pa_common.C, main/pa_globals.C, types/pa_vfile.C: fixes for + --with-build-warnings + 2024-12-21 moko * Makefile.am: +operators.ru.txt @@ -7018,15 +7454,13 @@ config_auto.h.in, config_fixed.h, configure, configure.ac, configure.in, lt__alloc.c, lt__dirent.c, lt__strl.c, lt_dlloader.c, lt_error.c, ltdl.c, ltdl.h, slist.c, - config/compile, config/config.guess, config/config.sub, - config/depcomp, config/install-sh, config/ltmain.sh, - config/missing, libltdl/lt__alloc.h, libltdl/lt__dirent.h, - libltdl/lt__glibc.h, libltdl/lt__private.h, libltdl/lt__strl.h, - libltdl/lt_dlloader.h, libltdl/lt_error.h, libltdl/lt_system.h, - libltdl/slist.h, loaders/dld_link.c, loaders/dlopen.c, - loaders/dyld.c, loaders/load_add_on.c, loaders/loadlibrary.c, - loaders/preopen.c, loaders/shl_load.c, m4/argz.m4, m4/libtool.m4, - m4/ltdl.m4, m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4, + libltdl/lt__alloc.h, libltdl/lt__dirent.h, libltdl/lt__glibc.h, + libltdl/lt__private.h, libltdl/lt__strl.h, libltdl/lt_dlloader.h, + libltdl/lt_error.h, libltdl/lt_system.h, libltdl/slist.h, + loaders/dld_link.c, loaders/dlopen.c, loaders/dyld.c, + loaders/load_add_on.c, loaders/loadlibrary.c, loaders/preopen.c, + loaders/shl_load.c, m4/argz.m4, m4/libtool.m4, m4/ltdl.m4, + m4/ltoptions.m4, m4/ltsugar.m4, m4/ltversion.m4, m4/lt~obsolete.m4: libtool updated to version 2.4.2 * configure.in: preparation for new libtool