laconic_sqlite 3.0.1
laconic_sqlite: ^3.0.1 copied to clipboard
SQLite driver for the Laconic query builder.
3.0.1 #
- Republish with a plain semantic version without build metadata.
- Update the core dependency to
laconic: ^5.0.1. - Update README installation examples for the coordinated patch release.
- No runtime behavior changes.
3.0.0 #
Breaking changes and migration #
- Requires
laconic: ^5.0.0and adopts its UNION, cursor-pagination and custom-grammar contracts. - Queue overlapping transactions and unrelated queries on the driver's single connection. Reject nested transactions on the same driver instance with
LaconicException.
Fixes #
- Only roll back transactions successfully opened by the current call, preventing failed or overlapping transactions from rolling back another transaction's writes.
- Keep unrelated writes outside an active transaction and reject queries originating from an expired transaction context.
Performance #
- Convert row values directly into shared result metadata, preserving mutable columns and values and duplicate-column behavior.
- Read the last inserted ID through the native getter without executing a second SQL query.
2.3.0 #
Features #
LaconicExceptionfrom driver errors now fillsdriver: 'sqlite'andcodewith the SQLite extended result code (e.g.2067for a UNIQUE constraint violation,1555for a PRIMARY KEY violation).SqliteDriver.driverNameconstant identifies the driver.
2.2.0 #
Changed #
- Requires
laconic: ^4.0.0(removes theLaconicException.cause/stackTracefields) - Driver errors are embedded in the
LaconicExceptionmessage; an existingLaconicExceptionis rethrown as-is instead of being wrapped again
2.0.0 #
1.3.1 #
Bug Fixes #
whereDay/whereMonth/whereYearinvalid SQL — Fixedstrftime()expressions missing closing parenthesis and producing type-mismatched comparisons. Now wrapsstrftime()withCAST(... AS INTEGER)for correct type coercion.- Refactored
_dateFunction→_dateExpression(column)to return complete SQL expressions
1.3.0 #
Features #
- New Grammar Methods:
compileTruncate(),compileInsertOrIgnore(),compileUpsert()— supports new core laconic v2.3.0 features - Support for
dateWHERE type:whereDate(),whereTime(),whereDay(),whereMonth(),whereYear()— uses SQLite'sdate(),time(), andstrftime()functions - Support for
existsWHERE type:whereExists()/whereNotExists()— EXISTS subqueries in WHERE and JOIN conditions - Support for
locks:lockForUpdate()compiles toFOR UPDATE;sharedLock()throws (not supported by SQLite)
Improvements #
- Alignment with laconic v2.3.0: Compile-time compatibility with new
SqlGrammarabstract methods and updatedcompileSelectsignature
1.2.0 #
Bug Fixes #
- sqlite3 v3 Compatibility - Updated
sqlite3dependency from^2.7.5to^3.3.2and replaced deprecateddispose()calls withclose()throughout the driver
1.1.0 #
Features #
- Implement
compileIncrement()/compileDecrement()- Grammar methods for increment/decrement SQL generation with?placeholders - JoinClause BETWEEN Support - Add
betweenandbetweenColumnstype handling in_compileJoinConditions()
1.0.1 #
Bug Fixes #
- Improved Transaction Error Handling - Rollback failures are now caught and reported alongside the original error instead of silently replacing it
Improvements #
- Grammar Singleton -
SqliteGrammaris now a static singleton instance, avoiding unnecessary allocations on each access - Enhanced Exception Handling - All catch blocks now preserve the original exception
causeandstackTraceinLaconicException
1.0.0 #
Initial release of the SQLite driver for Laconic query builder.
Features #
- SQLite database driver using
sqlite3native library - Parameterized queries with
?placeholders - Transaction support with BEGIN/COMMIT/ROLLBACK
- Lazy database connection initialization
- Auto-increment ID retrieval via
last_insert_rowid()