|
|
| version 1.195, 2024/09/02 02:05:14 | version 1.209, 2024/12/09 02:05:13 |
|---|---|
| Line 1 | Line 1 |
| 2024-12-09 moko | |
| * tests/results/119.processed: newline corrected for some OS | |
| * tests/: 441.html, results/441.processed: Debian-specific test | |
| commented | |
| * buildall: pcre2 10.42 -> 10.44 | |
| 2024-12-08 moko | |
| * buildall: external links fixed | |
| * src/include/pa_version.h: 3.4.7b -> 3.5.0rc | |
| * src/include/pa_table.h: some clang versions compilation fix | |
| * configure.ac: 3.4.7b -> 3.5.0rc | |
| 2024-12-07 moko | |
| * tests/: 443.html, 444.html, results/443.processed, | |
| results/444.processed: tests for named params (related to feature | |
| #1205) | |
| * src/: classes/reflection.C, types/pa_method.h: named_params | |
| support in reflection (related to feature #1205) | |
| * src/types/pa_vmethod_frame.h: extra_params and named params | |
| should be also inited in ^method[] call (related to feature | |
| #1205) | |
| * src/types/: pa_method.h, pa_vmethod_frame.h: named arguments | |
| support using @method[arg;.named_arg;.named_arg2] syntax | |
| (implements feature #1205) | |
| * tests/: 443.html, results/443.processed: test for *args inited | |
| added (related to bug #1264) | |
| * src/types/pa_vmethod_frame.h: *args are now inited even if not | |
| specified (fixes bug #1264) | |
| * tests/: 442.html, results/442.processed: tests for | |
| params.as_file_name(N) with empty file name added (related to | |
| feature #1121) | |
| * src/: classes/file.C, classes/hashfile.C, classes/image.C, | |
| classes/op.C, classes/string.C, classes/table.C, classes/xdoc.C, | |
| include/pa_exception.h, types/pa_vmethod_frame.h: | |
| params.as_file_name(N) added and used instead of | |
| params.as_string(1, FILE_NAME_MUST_BE_STRING) where appropriate | |
| (implements feature #1121) | |
| * src/: classes/file.C, classes/image.C, classes/op.C, | |
| classes/table.C, include/pa_exception.h: filename is everywhere | |
| params.as_string, unify exception and remove | |
| FILE_NAME_MUST_NOT_BE_CODE (related to feature #1121) | |
| * tests/: 141.html, results/141.processed: test for | |
| ^math:digest[...; $.hmac[$file] $.format[file] ] added (related | |
| to feature #1263) | |
| * src/classes/math.C: ^math:digest[...; $.hmac[$file] | |
| $.format[file] ] now supported (implements feature #1263) | |
| 2024-12-06 moko | |
| * src/: targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, | |
| targets/isapi/parser3isapi.C, types/pa_vstatus.C: $status:mode | |
| (cgi/console/mail/httpd/apache/isapi) added (related to feature | |
| #1262) | |
| 2024-12-05 moko | |
| * src/targets/cgi/parser3.C: more correct arguments processing to | |
| block -fl config.file log.file logic (related to feature #1262) | |
| 2024-12-04 moko | |
| * src/targets/cgi/parser3.C: now only one log location is selected | |
| and tried. -l - supported for stderr specification (related to | |
| feature #1262) | |
| 2024-12-03 moko | |
| * tests/: 010.html, 415_dir/30.p, 415_dir/31.p, | |
| results/010.processed, results/415.processed: tests for | |
| $.(expression)[value], $a.(expression), ^v.(expression)[args] | |
| added (related to feature #1064) | |
| * src/main/compile.y: $.(expression)[value], $a.(expression), | |
| ^v.(expression)[args] now supported (implements feature #1064) | |
| 2024-12-02 moko | |
| * src/targets/cgi/parser3.C: -l /path/to/log options added | |
| (implements feature #1262) | |
| 2024-12-01 moko | |
| * tests/: 010.html, results/010.processed: some tests related to | |
| bug #1149 added | |
| * src/main/compile.y: the check pc.pos.col > 1 is not required | |
| because we can't be here without a '$' before. The begin == end | |
| check was incorrect since $[a]{b} fits this condition (fixes bug | |
| #1149) | |
| 2024-11-29 moko | |
| * src/classes/array.C: warning war | |
| 2024-11-26 moko | |
| * tests/: 441.html, results/441.processed: a bit more testing | |
| (related to bug #1238) | |
| * src/main/pa_exec.C: only " now quoted (related to bug #1239) | |
| * src/main/pa_exec.C: simplification arg_quote added (related to | |
| bug #1229) | |
| 2024-11-25 moko | |
| * src/main/pa_exec.C: separated cmd_quote and exe_quote (related to | |
| bug #1239) | |
| 2024-11-24 moko | |
| * src/main/pa_exec.C: added cmd.exe specific | |
| * tests/: 441.html, cat-windows.sh, cat.sh, results/441.processed: | |
| tests for ^file::exec env and args tainting tests (related to bug | |
| #1239) | |
| * src/main/pa_exec.C: shell_quote added (partial fix for bug #1239) | |
| * src/include/pa_config_includes.h: added recommendations for | |
| libxslt.a and and libexslt.a compilation under cygwin | |
| * tests/results/102.processed: $form:fields.value is now writable, | |
| as $form:value (related to feature #1254) | |
| * src/include/pa_config_includes.h: cigwin compilation fixes | |
| 2024-11-23 moko | |
| * tests/httpd/site/run_server.sh: to simplify testing | |
| * tests/httpd/: 030.txt, 031.curl, 040.txt, ok.log, run_tests.sh, | |
| site/form.html: $form:files and $form:elements tests added, tests | |
| with curl supported (related to feature #1254) | |
| * src/: include/pa_symbols.h, main/pa_symbols.C, types/pa_vform.C, | |
| types/pa_vform.h: $form:elements implemented, VForm::get_element | |
| uses faster SYMBOLS_EQ, hashes no longer copied when using | |
| $form:fields/tables/files/imap and can be edited (implements | |
| feature #1254) | |
| * src/main/pa_http.C: pa_send added to handle partial writes (fixes | |
| bug #1261) | |
| 2024-11-17 moko | |
| * tests/: 440.html, results/440.processed: tests for | |
| ^table.array[], offset restoration, iterators robust tests | |
| (related to bug #1258, features #1259 and #1260) | |
| * tests/: 439.html, results/439.processed: array and hash iterators | |
| robust tests (related to feature #1260) | |
| * src/: classes/array.C, classes/table.C, include/pa_array.h, | |
| include/pa_table.h: Array_robust_iterator added and used in cases | |
| where array can be modified during iteration (implements feature | |
| #1260) | |
| * src/classes/table.C: ^table.array[], ^table.array[column name], | |
| ^table.array{code} added (implements feature #1259) | |
| 2024-11-16 moko | |
| * src/: classes/table.C, include/pa_table.h, main/pa_table.C: fixed | |
| table current row restoration after exception and table changes | |
| (fixes bug #1258) | |
| 2024-11-13 moko | |
| * src/classes/table.C: minor optimization | |
| * src/main/pa_string.C: \r added to default ^string.trim chars list | |
| (https://www.parser.ru/forum/?id=86648) | |
| 2024-11-11 moko | |
| * src/classes/classes.C: set_base commented | |
| * src/classes/: classes.C, xdoc.C: cleanup after classes.awk | |
| deleted | |
| * src/classes/classes.vcproj: no more classes.awk and classes.inc | |
| * src/classes/: Makefile.am, classes.awk: no more classes.awk and | |
| classes.inc | |
| * src/: classes/classes.C, classes/classes.awk, classes/classes.h, | |
| main/pa_globals.C: classes.awk is useless, preparing to delete it | |
| * src/classes/classes.h: temp fix | |
| 2024-11-10 moko | |
| * src/: classes/date.C, classes/file.C, classes/image.C, | |
| classes/op.C, main/pa_string.C: minor optimization | |
| * src/: classes/date.C, classes/file.C, classes/image.C, | |
| classes/op.C, main/pa_string.C: typo fixed | |
| * src/: classes/classes.awk, classes/classes.h, classes/date.C, | |
| classes/file.C, classes/image.C, classes/op.C, | |
| main/pa_charsets.C, main/pa_string.C: singletones used to reduce | |
| memory allocation befor main(). Only 3 allocations in chatsets | |
| left (implements feature #1257) | |
| * src/targets/: apache/mod_parser3_core.C, isapi/parser3isapi.C: | |
| minor naming convention fix | |
| * tests/: 437.html, 438.html, httpd/ok.log, httpd/site/029.html, | |
| results/436.processed, results/437.processed, | |
| results/438.processed: tests for @unhandled_exception processing | |
| (related to feature #1256) | |
| * src/: main/pa_request.C, targets/apache/mod_parser3_core.C, | |
| targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C, | |
| targets/isapi/parser3isapi.C: Exceptions in @unhandled_exception | |
| are now processed in request::core for correct logging and | |
| reporting (feature #1256) | |
| * src/: include/pa_sapi.h, main/pa_request.C, | |
| targets/apache/mod_parser3_core.C, targets/cgi/parser3.C, | |
| targets/isapi/parser3isapi.C: unhandled exception now called if | |
| exception occures during $response:download processing (related | |
| to bug #1255) | |
| * etc/auto.p.in: better 404 error reporting | |
| 2024-11-09 moko | |
| * src/main/pa_memory.C: more detailed usage comment | |
| * src/main/pa_memory.C: usage commented | |
| * src/main/pa_memory.C: minor cleanup | |
| * src/types/: pa_varray.h, pa_vregex.h: warnings war | |
| * tests/: 436.html, httpd/029.txt, httpd/ok.log, | |
| httpd/site/029.html, results/436.processed: test for exception in | |
| $response:download[] added | |
| * src/targets/cgi/parser3.C: sync CGI mode behavior with httpd mode | |
| and avoid exit status 1 on die | |
| * tests/results/: 007.processed, 019.processed, 098.processed, | |
| 103.processed, 233.processed: windows headers matter for binary | |
| files | |
| * tests/httpd/ok.log: tests results updated as extra headers now | |
| cleared on error (related to bug #1255) | |
| * src/: include/pa_sapi.h, targets/apache/mod_parser3_core.C, | |
| targets/cgi/pa_sapi_info.h, targets/cgi/parser3.C, | |
| targets/isapi/parser3isapi.C: headers buffering to avoid extra | |
| headers in errors, custom send_error in cgi/httpd mode to avoid | |
| memory allocations (fixes bug #1255) | |
| 2024-11-07 moko | |
| * tests/: 264.html, results/264.processed: tests updated to test | |
| removal of only trailing empty arguments for backward | |
| compatibility (related to feature #1252) | |
| * src/classes/file.C: remove trailing empty arguments for backward | |
| compatibility (related to feature #1252) | |
| 2024-11-05 moko | |
| * src/targets/cgi/: pa_sapi_info.h, parser3.C: avoid GPF in very | |
| low memory case, when static initialization failed even before | |
| main() start | |
| 2024-11-04 moko | |
| * configure, src/include/pa_config_auto.h.in, | |
| src/include/pa_config_fixed.h: _locking no longer used | |
| * configure.ac: _locking no longer used (related to bug #1231) | |
| * src/main/pa_os.C: lock error fine-tuning (related to bug #1231) | |
| * src/main/pa_os.C: lock errors tuning (related to bug #1231) | |
| * src/lib/sdbm/: pa_file_io.C, pa-include/pa_file_io.h: remove | |
| unused | |
| * src/: lib/sdbm/pa_file_io.C, main/pa_common.C: errno should not | |
| be used on locking errors (related to bug #1231) | |
| * src/main/pa_os.C: GetLastError used as errno is not set (related | |
| to bug #1231) | |
| * src/main/pa_os.C: under windows _locking replaced with LockFileEx | |
| allowing shared lock to work (fixes bug #1231) | |
| * INSTALL: actualized, minor fixes | |
| * etc/auto.p.in: default LIMITS added | |
| * AUTHORS: links actualized | |
| * src/: classes/array.C, classes/bool.C, classes/classes.C, | |
| classes/classes.awk, classes/classes.h, classes/curl.C, | |
| classes/date.C, classes/double.C, classes/file.C, classes/form.C, | |
| classes/hash.C, classes/hashfile.C, classes/image.C, | |
| classes/inet.C, classes/int.C, classes/json.C, classes/mail.C, | |
| classes/math.C, classes/memcached.C, classes/memory.C, | |
| classes/op.C, classes/reflection.C, classes/regex.C, | |
| classes/response.C, classes/string.C, classes/table.C, | |
| classes/void.C, classes/xdoc.C, classes/xnode.C, classes/xnode.h, | |
| include/pa_array.h, include/pa_base64.h, | |
| include/pa_cache_managers.h, include/pa_charset.h, | |
| include/pa_charsets.h, include/pa_common.h, | |
| include/pa_config_fixed.h, include/pa_config_includes.h, | |
| include/pa_dictionary.h, include/pa_dir.h, | |
| include/pa_exception.h, include/pa_exec.h, include/pa_globals.h, | |
| include/pa_hash.h, include/pa_http.h, include/pa_memory.h, | |
| include/pa_opcode.h, include/pa_operation.h, include/pa_os.h, | |
| include/pa_pool.h, include/pa_random.h, include/pa_request.h, | |
| include/pa_request_charsets.h, include/pa_request_info.h, | |
| include/pa_sapi.h, include/pa_socks.h, | |
| include/pa_sql_connection.h, include/pa_sql_driver_manager.h, | |
| include/pa_stack.h, include/pa_string.h, | |
| include/pa_stylesheet_connection.h, | |
| include/pa_stylesheet_manager.h, include/pa_symbols.h, | |
| include/pa_table.h, include/pa_threads.h, include/pa_types.h, | |
| include/pa_uue.h, include/pa_xml_exception.h, | |
| include/pa_xml_io.h, lib/gd/gif.C, lib/gd/gif.h, lib/gd/gifio.C, | |
| lib/md5/pa_md5.h, lib/md5/pa_md5c.c, | |
| lib/memcached/pa_memcached.C, lib/memcached/pa_memcached.h, | |
| lib/punycode/pa_idna.c, lib/punycode/pa_idna.h, | |
| lib/sdbm/pa_file_io.C, lib/sdbm/pa_strings.C, lib/smtp/comms.C, | |
| lib/smtp/smtp.C, lib/smtp/smtp.h, main/compile.C, | |
| main/compile.tab.C, main/compile.y, main/compile_tools.C, | |
| main/compile_tools.h, main/execute.C, main/pa_base64.C, | |
| main/pa_cache_managers.C, main/pa_charset.C, main/pa_charsets.C, | |
| main/pa_common.C, main/pa_dictionary.C, main/pa_dir.C, | |
| main/pa_exception.C, main/pa_exec.C, main/pa_globals.C, | |
| main/pa_http.C, main/pa_memory.C, main/pa_os.C, main/pa_pool.C, | |
| main/pa_random.C, main/pa_request.C, main/pa_socks.C, | |
| main/pa_sql_driver_manager.C, main/pa_string.C, | |
| main/pa_stylesheet_connection.C, main/pa_stylesheet_manager.C, | |
| main/pa_symbols.C, main/pa_table.C, main/pa_threads.C, | |
| main/pa_uue.C, main/pa_xml_exception.C, main/pa_xml_io.C, | |
| main/untaint.C, sql/pa_sql_driver.h, | |
| targets/apache/mod_parser3.c, targets/apache/mod_parser3_core.C, | |
| targets/apache/pa_httpd.h, targets/cgi/parser3.C, | |
| targets/isapi/parser3isapi.C, types/pa_junction.h, | |
| types/pa_method.h, types/pa_property.h, types/pa_value.C, | |
| types/pa_value.h, types/pa_varray.C, types/pa_varray.h, | |
| types/pa_vbool.h, types/pa_vcaller_wrapper.h, types/pa_vclass.C, | |
| types/pa_vclass.h, types/pa_vcode_frame.h, types/pa_vconsole.h, | |
| types/pa_vcookie.C, types/pa_vcookie.h, types/pa_vdate.C, | |
| types/pa_vdate.h, types/pa_vdouble.h, types/pa_venv.C, | |
| types/pa_venv.h, types/pa_vfile.C, types/pa_vfile.h, | |
| types/pa_vform.C, types/pa_vform.h, types/pa_vhash.C, | |
| types/pa_vhash.h, types/pa_vhashfile.C, types/pa_vhashfile.h, | |
| types/pa_vimage.C, types/pa_vimage.h, types/pa_vint.h, | |
| types/pa_vjunction.C, types/pa_vjunction.h, types/pa_vmail.C, | |
| types/pa_vmail.h, types/pa_vmath.C, types/pa_vmath.h, | |
| types/pa_vmemcached.C, types/pa_vmemcached.h, types/pa_vmemory.h, | |
| types/pa_vmethod_frame.C, types/pa_vmethod_frame.h, | |
| types/pa_vobject.C, types/pa_vobject.h, types/pa_vregex.C, | |
| types/pa_vregex.h, types/pa_vrequest.C, types/pa_vrequest.h, | |
| types/pa_vresponse.C, types/pa_vresponse.h, | |
| types/pa_vstateless_class.C, types/pa_vstateless_class.h, | |
| types/pa_vstateless_object.h, types/pa_vstatus.C, | |
| types/pa_vstatus.h, types/pa_vstring.C, types/pa_vstring.h, | |
| types/pa_vtable.C, types/pa_vtable.h, types/pa_vvoid.C, | |
| types/pa_vvoid.h, types/pa_vxdoc.C, types/pa_vxdoc.h, | |
| types/pa_vxnode.C, types/pa_vxnode.h, types/pa_wcontext.C, | |
| types/pa_wcontext.h, types/pa_wwrapper.h: Copyright year updated | |
| 2024-10-28 moko | |
| * src/classes/array.C: avoid invalidate() | |
| * src/: classes/array.C, types/pa_varray.h: minor optimization for | |
| fused to survive in ^array::copy[$a] (related to feature #930) | |
| * src/types/pa_varray.h: minor optimization as last element is | |
| allways defined if present | |
| * tests/: 435.html, results/435.processed: tests for | |
| ^hash.set[first|last;value], ^hash.set([-+]index)[value] and same | |
| for array added (related to feature #1253) | |
| * src/classes/array.C: typo fixed | |
| * src/classes/: array.C, hash.C: ^hash.set[first|last;value] + | |
| ^hash.set([-+]index)[value], and same for array added (implements | |
| feature #1253) | |
| * tests/results/: 246.processed, 298.processed, 342.processed, | |
| 389.processed, 397.processed, 430.processed, 432.processed: tests | |
| results update after minor exceptions texts fixes | |
| 2024-10-27 moko | |
| * src/: classes/array.C, classes/hash.C, classes/math.C, | |
| classes/reflection.C, classes/string.C, classes/table.C, | |
| main/pa_string.C, types/pa_varray.h, types/pa_vfile.C, | |
| types/pa_vmethod_frame.h: handy as_index() added, several | |
| exceptions texts fixed (related to feature #930) | |
| * src/: classes/array.C, types/pa_varray.h: non-working | |
| $array.fields removed, ^array.delete[index] supported (related to | |
| feature #930) | |
| * tests/: 431.html, results/431.processed: tests updated after | |
| ^a.delete[3] supported | |
| * tests/: 431.html, 434.html, results/434.processed: tests for last | |
| element used, push/pop, exceptions during arguments processing | |
| and used caching (related to feature #930) | |
| * src/: classes/array.C, types/pa_varray.h: change_used added for | |
| better used caching and now no issues if exception occures during | |
| append arguments processing (related to feature #930) | |
| * src/: classes/array.C, types/pa_varray.h: ^array.push[] / | |
| ^array.pop[] added, last element is allways used (related to | |
| feature #930) | |
| 2024-10-26 moko | |
| * src/: classes/array.C, include/pa_array.h, types/pa_varray.C, | |
| types/pa_varray.h: confirm_all_used added where possible (related | |
| to feature #930) | |
| * src/: classes/array.C, include/pa_array.h, types/pa_varray.h: | |
| small array optimizations (related to feature #930) | |
| * src/types/pa_varray.h: DEBUG_ARRAY_USED added to simplify testing | |
| * tests/: 431.html, results/431.processed: test for | |
| ^array.compact[undef] added | |
| * src/classes/array.C: ^array.compact[] now have optional 'undef' | |
| argument to also compact undefined elements (related to feature | |
| #930) | |
| 2024-10-24 moko | |
| * src/: classes/array.C, types/pa_varray.C, types/pa_varray.h: | |
| VArray::hash is used rarery, no longer caching the result | |
| * tests/results/432.processed: testing removed from tests | |
| 2024-10-23 moko | |
| * tests/: 431.html, results/431.processed: ^array.compact[] test | |
| added | |
| * src/: classes/array.C, types/pa_varray.h: ^array.compact[] added | |
| * tests/: 432.html, results/432.processed: testing ^array.at[] for | |
| both "solid" and "sparse" arrays | |
| * src/classes/array.C: ^array.at[] speedup for "solid" arrays | |
| 2024-10-22 moko | |
| * tests/results/264.processed: spelling | |
| * src/classes/file.C: spelling | |
| * tests/: 264.html, cat-windows.sh, cat.sh, results/264.processed: | |
| tests updated after ^file::exec[cmd;;$array] implemented and | |
| empty arguments not skipped (related to feature #1252) | |
| * src/classes/file.C: ^file::exec[cmd;;$array] supported | |
| (implements feature #1252) bugfix: empty arguments no longer | |
| skipped | |
| 2024-10-21 moko | |
| * tests/httpd/: 001.txt, 002.txt, 003.txt, 004.txt, 005.txt, | |
| 007.txt, 008.txt, 009.txt, 010.txt, 011.txt, 012.txt, 013.txt, | |
| 014.txt, 015.txt, 016.txt, 017.txt, 018.txt, 019.txt, 020.txt, | |
| 021.txt, 022.txt, 023.txt, 024.txt, 025.txt, 026.txt, 027.txt, | |
| 028.txt, 030.txt, ok.log, run_tests.sh, site/httpd.p, | |
| site/index.html, site/test.txt: httpd tests added | |
| 2024-10-20 moko | |
| * src/classes/string.C: warnings war | |
| * src/: main/pa_string.C, classes/array.C: warnings war | |
| * src/classes/json.C: warnings war | |
| * src/classes/image.C: warnings war | |
| * src/: classes/table.C, types/pa_varray.C: warnings war | |
| * src/classes/array.C: warning war | |
| * src/: classes/classes.vcproj, types/types.vcproj: vcproj: +=array | |
| * src/main/main.vcproj: warnings war | |
| 2024-10-19 moko | |
| * tests/427.html: test updated after constructors renamed | |
| 2024-10-18 moko | |
| * tests/: 421.html, 430.html, 431.html, 432.html, 433.html, | |
| results/421.processed, results/430.processed, | |
| results/431.processed: test updated after constructors renamed | |
| * src/classes/array.C: create -> copy, new -> create according to | |
| https://www.parser.ru/forum/?id=86603 discussion (related to | |
| feature #930) | |
| 2024-10-16 moko | |
| * src/classes/json.C: $json:array[array or hash] added to provide | |
| more backward compatibility (implements feature #1251) | |
| 2024-10-15 moko | |
| * tests/: 421.html, results/421.processed: test results updated | |
| after missing constuctor error check added and array is_index | |
| check added | |
| * src/main/execute.C: absent constructor message fixed | |
| 2024-10-13 moko | |
| * src/types/pa_varray.h: ^array.$i[arg] is rare, thus checking i | |
| with is_index() before calling index() for better error reporting | |
| in method name typo (was invalid number, not method not found | |
| exception). | |
| 2024-10-08 moko | |
| * src/types/pa_varray.C: Visual Studio compatibilty issues fixed | |
| * src/include/pa_array.h: warnings war | |
| 2024-10-05 moko | |
| * src/classes/table.C: ^table.cells[] / ^table.cells(limit) added, | |
| returns current row cells array (implements feature #1250) | |
| * tests/: 405.html, results/169.processed, results/405.processed: | |
| tests updated after ^string.split[;a] implemented (related to | |
| feature #1249) | |
| * src/classes/string.C: ^string.split[] - 'a' option added for | |
| splitting into an array (implements feature #1249) | |
| 2024-10-04 moko | |
| * tests/: 431.html, results/431.processed: final code coverage | |
| array tests | |
| * src/: classes/array.C, include/pa_array.h, types/pa_varray.h: | |
| array: confirm_all_used() added and used where possible, expand() | |
| now expends faster | |
| 2024-10-03 moko | |
| * tests/: 357.html, results/auto.p: max_recoursion -> max_recursion | |
| * tests/: 256.html, results/256.processed: test for | |
| $.date[unix-timestamp] handling large dates | |
| * src/: classes/file.C, classes/op.C, classes/reflection.C, | |
| classes/string.C, classes/table.C, include/pa_common.h, | |
| main/pa_common.C, main/pa_http.C, main/pa_request.C, | |
| types/pa_vdate.C, types/pa_vmethod_frame.h, types/pa_vtable.C: | |
| format replaced with pa_uitoa where applicable, | |
| $.date[unix-timestamp] fixed for handling large dates | |
| * tests/: 433.html, results/433.processed: more tests, including | |
| test for possible endless recursion in ^o.GET[] | |
| * src/types/pa_vobject.C: bugfix: detecting possible endless | |
| recursion in get_scalar_value inside ^o.GET[] | |
| * src/: classes/json.C, include/pa_request.h, main/execute.C, | |
| main/pa_request.C, types/pa_value.h, types/pa_vmethod_frame.C: | |
| Temp_recursion class added; spelling: $LIMITS.max_recoursion -> | |
| $LIMITS.max_recursion | |
| 2024-10-02 moko | |
| * tests/: 253.html, 287.html, 430.html, 431.html, 433.html, | |
| results/253.processed, results/287.processed, | |
| results/430.processed, results/433.processed: more tests for full | |
| array and json code coverage | |
| * tests/: 433.html, results/433.processed: tests for hash functions | |
| with array param | |
| * src/classes/: array.C, hash.C: ^hash::create[$array] optimized | |
| * tests/: 432.html, results/432.processed: modified ^hash.at tests | |
| in 246.html used to test ^array.at, same result produced | |
| * tests/: 430.html, 431.html, results/430.processed, | |
| results/431.processed: more array tests for 100% code coverage | |
| (related to feature #930) | |
| * tests/: 427.html, 430.html, results/427.processed, | |
| results/430.processed: first portion of array tests added | |
| (related to feature #930) | |
| * src/classes/array.C: allow only whitespace string as argument for | |
| add and join | |
| * src/classes/array.C: add behavour for array synced with hash | |
| 2024-09-30 moko | |
| * tests/: 429-sql.html, results/429-sql.processed: code coverage | |
| tests added | |
| * src/classes/array.C: $.distinct should not be used unless | |
| $.sparse(true) | |
| * tests/: 429-sql.html, results/388-sql.processed, | |
| results/429-sql.processed: tests for ^array::sql{}, including | |
| multi_statements mode (related to feature #930) | |
| 2024-09-29 moko | |
| * src/classes/array.C: synced ^array::sql multi_statements logic | |
| with ^hash::sql new behavour | |
| 2024-09-28 moko | |
| * tests/: 428-sql.html, results/388-sql.processed, | |
| results/428-sql.processed: tests updated after column names were | |
| fixed in multi_statements mode (related to feature #1197) | |
| * src/classes/hash.C: column names are fixed for most cases in | |
| multi_statements mode (related to feature #1197) | |
| * tests/: 428-sql.html, results/195.processed, | |
| results/224.processed, results/239.processed, | |
| results/254.processed, results/261.processed, | |
| results/306.processed, results/333.processed, | |
| results/341.processed, results/343.processed, | |
| results/344.processed, results/348.processed, | |
| results/364.processed, results/389.processed, | |
| results/390.processed, results/415.processed, | |
| results/420.processed, results/421.processed: tests results | |
| updated after error messages spelling minor fixes | |
| * src/types/: pa_value.h, pa_vstateless_class.h: a bit more | |
| spelling | |
| * src/: classes/curl.C, classes/file.C, classes/hash.C, | |
| classes/image.C, classes/math.C, classes/string.C, | |
| classes/table.C, lib/memcached/pa_memcached.C, main/compile.y, | |
| main/execute.C, main/pa_charset.C, main/pa_common.C, | |
| main/pa_http.C, main/pa_request.C, main/pa_socks.C, | |
| main/pa_sql_driver_manager.C, types/pa_value.C, types/pa_value.h, | |
| types/pa_vmail.C, types/pa_vobject.C, | |
| types/pa_vstateless_class.C, types/pa_vstateless_class.h, | |
| types/pa_vxdoc.C: minor error messages spelling fixes | |
| * src/: classes/array.C, types/pa_varray.h: initial ^array::sql{} | |
| implementation (related to feature #930) | |
| * tests/: 388-sql.html, results/388-sql.processed: test results | |
| updated after rows number ^file::sql{} check added | |
| * src/classes/file.C: rows number now checked in ^file::sql{} | |
| * tests/: 428-sql.html, results/428-sql.processed: more tests | |
| * tests/: 428-sql.html, results/428-sql.processed: more | |
| multi_statements testing before bugfix | |
| * tests/: 388-sql.html, 428-sql.html, results/388-sql.processed, | |
| results/428-sql.processed: support for multiple sql test files | |
| added | |
| * tests/: 388-sql.html, results/388-sql.processed: more sql testing | |
| * src/classes/hash.C: more accurate one_bool_column processing | |
| * tests/: 427.html, results/427.processed: Constructors as methods | |
| behavour documented in test | |
| * src/classes/hash.C: HashStringValue::Iterator used for options | |
| * tests/: 388-sql.html, results/388-sql.processed: even more tests | |
| * tests/: 388-sql.html, results/388-sql.processed: a bit more | |
| testing | |
| * tests/results/367-curl.processed: test result updated after | |
| server charset changed | |
| * tests/results/347-curl.processed: error messages updated | |
| * tests/results/: 346-curl.processed, 379-curl.processed, | |
| 394-curl.processed: tests results updated after Type -> Exception | |
| type replacement | |
| * tests/results/388-sql.processed: tests result updated after Type | |
| -> Exception type | |
| 2024-09-27 moko | |
| * src/classes/hash.C: minor simplification | |
| 2024-09-24 moko | |
| * src/main/pa_string.C: atoui error messages improved | |
| * tests/: 165.html, 312.html, results/165.processed, | |
| results/312.processed, results/379.processed: tests updated after | |
| default endless loop limit increased, atoi error messages | |
| improved | |
| * src/classes/hash.C: VBool::get used, unification | |
| 2024-09-22 moko | |
| * src/classes/array.C: minor simplification | |
| * src/classes/array.C: ^array.left(N), | |
| ^array.right(N),^array.mid(P;N) added (related to feature #930) | |
| * src/: classes/array.C, include/pa_request.h, main/pa_request.C, | |
| types/pa_varray.C, types/pa_varray.h: $MAIN:LIMITS.max_array_size | |
| added, default 1000000 (related to feature #930) | |
| * tests/: 426.html, results/426.processed: test for negative limit | |
| and offset processing for table options added | |
| * src/: classes/table.C, include/pa_array.h, main/pa_table.C: | |
| bugfix: negative limit and offset processing for table options | |
| fixed | |
| 2024-09-21 moko | |
| * src/: classes/array.C, types/pa_varray.h: join supports hash; | |
| ^for added that also iterates holes; ^remove added (related to | |
| feature #930) | |
| * src/classes/array.C: ^array.join[$another_array; $.limit(N) | |
| $.offset(M) ] added (related to feature #930) | |
| 2024-09-20 moko | |
| * src/: classes/array.C, types/pa_varray.h: array: | |
| +foreach[value]{code}, + add[hash with numeric keys] (related to | |
| feature #930) | |
| 2024-09-19 moko | |
| * src/: include/pa_opcode.h, main/compile.y, main/compile_tools.h, | |
| main/execute.C, types/pa_varray.h: OP_CONSTRUCT_ARRAY added to | |
| support $a[v1;v2;...] syntax (related to feature #930) | |
| 2024-09-17 moko | |
| * src/: classes/reflection.C, include/pa_request.h, | |
| main/compile_tools.h, main/pa_request.C: | |
| ^reflection:class_alias[existing class name;alias class name] | |
| added. The array class can now be redefined regardless of the | |
| $.replace(bool) option value (related to feature #930) | |
| * src/main/: compile.y, compile_tools.h: class_add return value | |
| inverted to add it to request class | |
| * src/: classes/array.C, include/pa_array.h, include/pa_request.h, | |
| include/pa_stack.h, types/pa_varray.C, types/pa_varray.h, | |
| types/pa_vmethod_frame.h: array: fused -> fsize, fit(index) to | |
| resize if required. spared array - added fused, append. | |
| 2024-09-16 moko | |
| * src/types/pa_varray.h: get moved to where it belongs | |
| 2024-09-15 moko | |
| * src/: include/pa_array.h, types/pa_varray.h: more agressive | |
| expansion to minimize reallocs: fallocated/32 -> fallocated/4 | |
| * tests/: 421.html, results/323.processed, results/421.processed: | |
| tests updated after 'spared-array' class renamed to 'array' | |
| following a discussion on the forum (related to feature #930) | |
| * src/: include/pa_array.h, types/pa_value.h, types/pa_varray.h, | |
| types/pa_vmail.C: initial SparseArray separation from Array, | |
| parser class now 'array' | |
| 2024-09-14 moko | |
| * tests/: 030.html, results/030.processed: out of range expires | |
| check added | |
| * src/types/pa_vcookie.C: VDate range is narrower than gmtime, thus | |
| checking expires time using VDate | |
| 2024-09-13 moko | |
| * src/: classes/array.C, classes/curl.C, classes/date.C, | |
| classes/file.C, classes/hash.C, classes/image.C, classes/json.C, | |
| classes/memcached.C, classes/op.C, classes/regex.C, | |
| classes/string.C, classes/xdoc.C, classes/xnode.C, | |
| main/execute.C, main/pa_http.C, main/pa_request.C, | |
| types/pa_value.C, types/pa_value.h, types/pa_vclass.C, | |
| types/pa_vclass.h, types/pa_vcookie.C, types/pa_vhashfile.C, | |
| types/pa_vmail.C, types/pa_vobject.C, types/pa_vobject.h, | |
| types/pa_vxdoc.C, types/pa_vxdoc.h: optimization: Value::as() | |
| removed as dynamic_cast is faster, Value::is() is still required | |
| for is operator. | |
| 2024-09-12 moko | |
| * src/: classes/file.C, classes/image.C, classes/reflection.C, | |
| classes/table.C, classes/xnode.C, include/pa_array.h, | |
| include/pa_string.h, main/pa_common.C, main/pa_request.C, | |
| main/pa_string.C, targets/cgi/pa_sapi_info.h, types/pa_vform.C, | |
| types/pa_vhash.h, types/pa_vtable.C, types/pa_vxnode.C: faster | |
| templated pa_itoa/pa_uitoa added to work with any integer type, | |
| String::Body::Format removed | |
| 2024-09-10 moko | |
| * src/classes/array.C: append and insert methods added to | |
| sparse-array (related to feature #930) | |
| * tests/: 253.html, 255.html, 421.html, results/421.processed: | |
| tests updated after sparse-array was added to avoid ^json:parse[] | |
| using it in old tests (related to feature #930) | |
| * src/: classes/array.C, classes/json.C, types/pa_varray.C, | |
| types/pa_varray.h: sparse-array class added (initial feature #930 | |
| implementation) | |
| * src/: classes/Makefile.am, types/Makefile.am: Makefiles update | |
| for sparse-array class files (related to feature #930) | |
| * src/: classes/json.C, include/pa_array.h, types/pa_value.h, | |
| types/pa_vhash.h: VArray support functions without actual VArray | |
| files (related to feature #930) | |
| 2024-09-07 moko | |
| * src/: classes/curl.C, classes/string.C, classes/table.C, | |
| include/pa_array.h, main/execute.C, main/pa_dictionary.C, | |
| main/pa_http.C, main/pa_sql_driver_manager.C, | |
| main/pa_stylesheet_manager.C, main/pa_table.C, types/pa_vclass.C, | |
| types/pa_vmethod_frame.C, types/pa_vstateless_class.C, | |
| types/pa_vtable.C, types/pa_wcontext.C: Array::Iterator unified | |
| with Hash::Iterator, has_next() replaced with operator bool | |
| (related to feature #930) | |
| * src/: classes/string.C, include/pa_array.h, main/pa_http.C, | |
| main/pa_table.C, types/pa_vclass.C, types/pa_vmethod_frame.C, | |
| types/pa_vstateless_class.C: Array class extended, | |
| Array::Iterator added and used (related to feature #930) | |
| 2024-08-26 moko | 2024-08-26 moko |
| * src/targets/cgi/parser3.C: under Windows back_slashes_to_slashes | * src/targets/cgi/parser3.C: under Windows back_slashes_to_slashes |