Changes for version 5.26.2 - 2026-09-28
- [STANDALONE EXECUTABLE BUILDER & CI RELEASE AUTOMATION]
- Resolved Strawberry Perl PAR::Packer ('pp') compilation failure on Windows by decoupling attached module search switch into separated '-I lib' arguments.
- Configured GitHub Actions build-exe workflow to automatically compile and smoke-test amberdb.exe on pushes to main and master branches.
- Enforced dynamic release tag formatting ('v<VERSION>_exe', e.g. 'v5.26.2_exe') to prevent refspec collisions with Git branch 'main' and keep binary releases isolated from source tags.
- Updated bin/build_exe.bat with fixed compiler flags and registered script in MANIFEST.
- [CLI ENGINE VERSION INTROSPECTION]
- Added '--version', '-v', and 'version' commands to bin/amberdb_cli.pl.
- Emits standard release banner 'AmberDB v<VERSION> (CLI)' or structured JSON schema when combined with 'format=json'.
- [DOCUMENT-STORE SINGLE HASH / REFERENCE ENCODING FIX]
- Fixed AmberDB::recs_put to ensure single reference record payloads (HASH/ARRAY, e.g. 'data={...}') are passed through db_encode rather than stringified to 'HASH(0x...)'.
- Verified complete recursive serialization and round-trip fidelity for deeply nested hashes and arrays inside array records (tested in t/amberdb_escape_encode.t).
- [CLI DEFAULT TABLE OUTPUT RENDERING & POSITIONAL ARGUMENTS]
- Configured clean, formatted ASCII box tables ('+----+----+') as default CLI output for single records ('read <table_name> <id>') and multi-record lists ('read all', 'search', 'fetch'), replacing legacy Data::Dumper fallback.
- Enhanced CLI positional argument parsing for multi-block records, enabling seamless scalar, JSON array, and JSON hash parameters directly via command line (e.g. 'amberdb insert items 0 "Mouse" \'["wireless","bt"]\' \'{"brand":"Razer"}\'').
- Fixed TSV output formatting ('format=tsv' / 'tsv') to join record fields strictly with tabs on a single line ('<id>\t<field_1>\t<field_2>...') instead of splitting fields across separate newlines.
- Preserved full backwards compatibility with explicit format switches: 'format=dumper' / 'dumper', 'format=json' / 'json', 'format=pretty' / 'pretty', and 'format=tsv' / 'tsv'.
- Added bilingual command-line usage screen support: 'amberdb usage' / 'amberdb help' renders in English, while 'amberdb usage.tr' / 'amberdb help.tr' (or 'usage tr') renders in Turkish.
- Added subtest 13 in t/amberdb_cli.t to verify default table output, TSV tab separation, column headers, and explicit dumper formatting.
Documentation
High-performance Command-Line Console & Embedded Management Utility for AmberDB
Modules
High-performance embedded NoSQL database engine for Perl
Array, matrix manipulation, and set operations utility
Date manipulation, chronological ID generation, range calculation, and formatting utility
Multilingual text processing, collation, number/currency formatting, and search normalization engine
Database maintenance, CLI reindexing, migrations, and bulk conversion toolset