Update CHANGELOG.md

This commit is contained in:
Pekka Enberg
2025-06-19 10:38:30 +03:00
parent 627e7daa65
commit 782ee09279

View File

@@ -1,5 +1,97 @@
# Changelog
## 0.0.22 -- 2025-06-19
### Added
* Implement pragma wal_checkpoint(<MODE>) (Pedro Muniz)
* Add abbreviated alias for `.quit` and `.exit` (Krishna Vishal)
* Add manual WAL sync before checkpoint in con.close, fix async bug in checkpoint (Preston Thorpe)
* Complete ALTER TABLE implementation (Levy A.)
* Add affinity-based type coercion for seek and comparison operation (Krishna Vishal)
* bindings/javascript: Add pragma() support (Anton Harniakou)
* Add sleep between write tests to avoid database locking issues (Pedro Muniz)
* bindings/java: Implement JDBC4DatabaseMetadata getTables (Kim Seon Woo)
* bindings/javascript: Add source property to Statement (Anton Harniakou)
* Support `sqlite_master` schema table name alias (Anton Harniakou)
* js-bindings/implement .name property (Anton Harniakou)
* bindings/java: Add support for Linux build (Diego Reis)
* bindings/javascript: Add database property to Statement (Anton Harniakou)
* simulator: add CREATE INDEX to interactions (Jussi Saurio)
* Add support for pragma table-valued functions (Piotr Rżysko)
* bindings/javascript: Add proper exec() method and raw() mode (Diego Reis)
* Add simulator-docker-runner for running limbo-sim in a loop on AWS (Jussi Saurio)
* simulator: add option to disable BugBase (Jussi Saurio)
* simulator: switch to tracing, run io.run_once and add update queries (Pere Diaz Bou)
* Fix: aggregate regs must be initialized as NULL at the start (Jussi Saurio)
* add stress test with 1 thread 10k iterations to ci (Pere Diaz Bou)
### Updated
* antithesis: Build Python package from sources (Pekka Enberg)
* overwrite sqlite3 in install_sqlite (Pere Diaz Bou)
* stress: Run integrity check for every iteration (Pekka Enberg)
* core: Clean up `integrity_check()` (Pekka Enberg)
* Simple integrity check on btree (Pere Diaz Bou)
* Make SQLite bindings thread-safe (Pekka Enberg)
* Switch Connection to use Arc instead of Rc (Pekka Enberg)
* Drop unused code in op_column (meteorgan)
* NOT NULL constraint (Anton Harniakou)
* Simulator Ast Generation + Simulator Unary Operator + Refactor to use `limbo_core::Value` in Simulator for massive code reuse (Pedro Muniz)
* Refactor compound select (meteorgan)
* Disable index usage in DELETE because it does not work safely (Jussi Saurio)
* Simulator: Better Shrinking (Pedro Muniz)
* Simulator integrity_check (Pedro Muniz)
* Remove leftover info trace (Jussi Saurio)
* Namespace functions that operate on `Value` (Pedro Muniz)
* Remove plan.to_sql_string() from optimize_plan() as it panics on TODOs (Jussi Saurio)
* Minor: use use_eq_ignore_ascii_case in some places (Anton Harniakou)
* Remove the FromValue trait (Anton Harniakou)
* bindings/javascript: Refactor presentation mode and enhance test suite (Diego Reis)
* Beginnings of AUTOVACUUM (Zaid Humayun)
* Reverse Parse Limbo `ast` and Plans (Pedro Muniz)
* simulator: log the interaction about to be executed with INFO (Jussi Saurio)
* stress: Use temporary file unless one explicitly specified (Jussi Saurio)
* Write database header via normal pager route (meteorgan)
* simulator: options to disable certain query types (Pedro Muniz)
* Make cursor seek reentrant (Pedro Muniz)
* Pass input string to `translate` function (Pedro Muniz)
* Small tracing enhancement (Pedro Muniz)
* Adjust write cursors for delete to avoid opening more than once. (Pedro Muniz)
* Convert u64 rowid to i64 (Pere Diaz Bou)
* Use tempfile in constraint test (Jussi Saurio)
* Remove frame id from key (Pere Diaz Bou)
* clear page cache on transaction failure (Pere Diaz Bou)
### Fixed
* Fix incorrect lossy conversion of `Value::Blob` to a utf-8 `String` (Luca Muscat)
* Fix update queries to set `n_changes` (Kim Seon Woo)
* bindings/rust: Fix Rows::next() I/O dispatcher handling (Pekka Enberg)
* cli: fix panic of queries with less than 7 chars (Nils Koch)
* Return parse error instead of corrupt error for `no such table` (Pedro Muniz)
* simulator: disable all ansi encodings for debug print log file (Pedro Muniz)
* Fix large inserts to unique indexes hanging (Jussi Saurio)
* betters instrumentation for btree related operations + cleaner debug for `RefValue` (Pedro Muniz)
* sim/aws: fix vibecoding errors in logic (Jussi Saurio)
* Fix incorrect handling of OR clauses in HAVING (Jussi Saurio)
* fix: Incorrect placeholder label in where clause translation (Pedro Muniz)
* Fix rowid to_sql_string (Pedro Muniz)
* Fix incorrect usage of indexes with non-contiguous columns (Jussi Saurio)
* BTree traversal refactor and bugfixes (Pere Diaz Bou)
* `LimboRwLock` write and read lock fixes (Pere Diaz Bou)
* fix: make keyword_token safe by validating UTF-8 input (ankit)
* Fix UPDATE straight up not working on non-unique indexes (Jussi Saurio)
* Fix: ensure `PRAGMA cache_size` changes persist only for current session (meteorgan)
* sim/aws: fix sim timeout handling (Jussi Saurio)
* Fix WAL frame checksum mismatch (Diego Reis)
* Set maximum open simulator-created issues (Jussi Saurio)
* Fix cursors not being opened for indexes in DELETE (Jussi Saurio)
* Fix: allow DeferredSeek on more than one cursor per program (Jussi Saurio)
* Fix stress test to ignore unique constraint violation (krishna sindhur)
* Fix ProgramBuilder::cursor_ref not having unique keys (Jussi Saurio)
* Fix `serialize()` unreachable panic (Krishna Vishal)
* Btree: fix cursor record state not being updated in insert_into_page() (Jussi Saurio)
## 0.0.21 - 2025-05-28
### Added