| Did you know ... | Search Documentation: |
| Pack asadb -- RELEASE_NOTES.md |
Current release: 1.5.0 Stable, prepared 2026-08-02
Status: Stable for the documented Linux/PCLinuxOS backend and source-package scope
Publication summary: RELEASE.md Compatibility matrix: COMPATIBILITY.md
| Version | Prepared/released | Status | Release focus |
|---|---|---|---|
| 1.5.0 | 2026-08-02 | Current Stable | Local TVCC reads, view-aware interchange, bounded ordering, and complete source distribution. |
| 1.4.0 | 2026-07-23 | Superseded Stable | Backend-produced `.asb` backup/restore and production backup validation. |
| 1.3.1 | 2026-07-21 | Superseded Release Candidate | Schema-aware editor assistance, syntax feedback, and Windows source launchers. |
| 1.3.0 | 2026-07-19 | Historical Stable | Reservoir admission, result paging, and indexed JOIN improvements. |
Only 1.5.0 is the current release line. Earlier entries are retained as an ordered compatibility and operational-history reference; their original scope and limitations are not silently reclassified as 1.5.0 guarantees.
| Area | 1.4.0 Stable | 1.5.0 Stable | Operational benefit |
|---|---|---|---|
| Concurrent panel reads | One mutable local store was used by every request. | Local TVCC gives read-only panel SELECT requests an immutable catalog plus heap/index generation while retaining one authoritative writer. | A reader cannot pair an old catalog with new pages during a committed write. |
| TVCC publication safety | The initial local snapshot path existed on the development branch. | Publication flushes before exposure, builds an unpublished generation before retiring an old one, binds database context with files, and preserves read-your-writes inside transactions. | Snapshot visibility and transaction semantics have explicit regression coverage. |
| Portable view export | Tables were backend-scanned, but saved views were absent from export selection. | MySQL/PostgreSQL export preserves selected view definitions; CSV/XLSX evaluates selected views against backend storage and exports their rows. | The export menu represents tables and views without falling back to browser cache. |
| Large result ordering | `ORDER BY *` was a compatibility no-op, while projected ordered results could repeatedly evaluate sort expressions. | The bounded top-window sorter caches each matching row's order key once and merges sorted buffers deterministically. | Filtered, projected text ordering avoids repeated expression work while preserving stable tie order. |
| Production backup | Backend `.asb` backup and verified restore were introduced in 1.4.0. | The backup route remains backend-owned and is re-audited together with TVCC, portable interchange, and view export. | Complete logical backup never depends on loaded browser rows or visible result pages. |
| Release integrity | Linux/Windows-source package checks existed. | Version, engine metadata, pack manifest, runtime sources, docs, archive checksums, and release artifacts are released as one 1.5.0 set. | Operators can match a package, its checksum, and its reported engine version. |
The documented SQL surface remains the supported contract: database and table DDL; INSERT, SELECT, UPDATE, and DELETE; filters; ordering and limits; INNER/LEFT/RIGHT/CROSS and comma joins; grouping and aggregate functions; basic scalar/IN/EXISTS subqueries; UNION; CASE; views; transaction commands; and the documented metadata/user catalog commands. The parser and executor suites exercise aliases, qualified columns, `JOIN ... USING`, `ORDER BY *`, view selection, restart persistence, recovery, and compatibility diagnostics.
For large result sets, 1.5.0 retains the bounded result window and the historical no-op meaning of `ORDER BY *`. A regular `ORDER BY column` still must inspect and order qualifying rows when no usable index can provide that order; it is not represented as an instant indexed lookup. The new bounded sorter avoids re-evaluating the same order expressions during comparisons and keeps equal sort keys in scan order.
The source package now includes tools/asadb_pack.pl, a cross-platform
repository-channel helper for install, upgrade, info, version, and
remove. It invokes SWI-Prolog's supported library(prolog_pack) API and
forces the canonical asadb pack name for Git installs, avoiding the
repository-basename naming difference on current SWI-Prolog versions. The
standard public-registry commands remain `swipl pack install asadb and
swipl pack install --upgrade asadb; swipl install asadb` is not valid stock
SWI-Prolog syntax and is intentionally not emulated by replacing swipl.
The command and API behavior follows SWI-Prolog's official
library(prolog_pack) documentation
and pack_install/2 reference.
Export → AsaDB Backup creates a backend-produced `.asb` logical backup. The backend scans paged storage under the execution lock and writes schema, all rows, indexes, and catalog objects with integrity fields for both payload and manifest. Restore validates those fields, rebuilds in a transaction, rescans table/row totals before commit, and rejects restore or creation while another database transaction is active.
MySQL SQL, PostgreSQL SQL, CSV, and XLSX are selected-object interchange formats, not substitutes for an `.asb` disaster-recovery backup. They scan the backend rather than browser state. MySQL/PostgreSQL preserve selected views as definitions; CSV/XLSX materialize selected views through the normal executor. Unsupported vendor-specific procedural dump syntax is rejected or remains outside the portable dialect surface rather than being silently changed.
The release audit runs on PCLinuxOS 2026, Linux 6.18.37-pclos1, x86_64, with
SWI-Prolog 10.0.2. The release gates cover core parser/executor, catalog
persistence, metadata upgrade, recovery, local TVCC, 15,000-row indexed JOIN,
production backup/restore including authenticated HTTP, backend interchange
including selected views and 20,000-row stress, and 100,000-row storage stress.
Module loading, launchers, Guardian, Linux archive, Windows source archive, pack
installation/removal, and SHA-256 verification are also covered.
Node.js is not installed on the PCLinuxOS audit host. The Node-only browser regression is therefore executed by GitHub Actions, while the checked-in modern/legacy bundle contract is checked locally. Native Windows execution is not claimed from Linux; the Windows deliverable is a complete source-launcher ZIP that requires a compatible SWI-Prolog installation on Windows.
AsaDB-1.5.0-linux-x86_64.tar.Z and SHA-256.AsaDB-1.5.0-windows-source.zip and SHA-256, including run_asadb.bat and run_panel.bat.AsaDB-1.5.0-main-repo.tar.Z and SHA-256.AsaDB-1.5.0-main-repo source tree.
Every source artifact is built from the same release tree and contains the engine,
storage modules, TVCC, backup/interchange, AsAPanel bundles, launchers, tests,
documentation, pack manifest, and GPL notices.1.4.0 moved production export and restore fully into the backend: `.asb` artifacts carry schema, rows, indexes, catalog objects, and integrity metadata. It also added transaction guards and restore-total validation, establishing the backup baseline that 1.5.0 retains and re-tests.
1.3.1 introduced local-catalog SQL completion, supported-syntax coloring, consistent ID/JP/EN typography, the compatible `ORDER BY *` no-op, and the checksummed Windows source-launcher package. Those editor and packaging capabilities were stabilized by the subsequent 1.4.0 release.
1.3.0 established the earlier large-workload foundation: Reservoir admission
and recovery, paged result/table presentation, the karyawan.pl advisor, and
an indexed path for qualified equality joins. The 1.3.x release line remains
historical context rather than a substitute for the current 1.5.0 scope.
AsaDB is distributed under the GNU General Public License v3.0 only.