Latest Tech News

Stay updated with the latest in technology, AI, cybersecurity, and more

Filtered by: sqlite Clear Filter

SQLiteData: A fast, lightweight replacement for SwiftData using SQL and CloudKit

SQLiteData A fast, lightweight replacement for SwiftData, powered by SQL and supporting CloudKit synchronization. Learn more This library was motivated and designed over the course of many episodes on Point-Free, a video series exploring advanced programming topics in the Swift language, hosted by Brandon Williams and Stephen Celis. To support the continued development of this library, subscribe today. Overview SQLiteData is a fast, lightweight replacement for SwiftData, including CloudKit

Rails on SQLite: new ways to cause outages

Rails on SQLite: exciting new ways to cause outages This post was originally given as a talk for Friendly.rb. The slides are also available. Between Litestack and the Rails 8 trifecta of Solid Cable, Solid Cache, and Solid Queue, it’s easier than ever to spin up a Rails app that doesn’t need a database service, or a redis service, or a file storage service. It’s great to simplify things, but even after 20 years of deploying Rails apps I was still caught out by some of the ways things are diffe

SQLite's Use of Tcl (2017)

SQLite's Use Of Tcl D. Richard Hipp 24th Annual Tcl/Tk Conference Houston, TX 2017-10-19 1.0 Introduction SQLite is a TCL extension that has escaped into the wild. The design of SQLite was inspired by the design of TCL, both in the way it handles datatypes and in the formatting of its source code. The index use case for SQLite was in a Tcl/Tk application for an industrial company. From its inception, SQLite has always depended heavily on TCL. These days, SQLite no longer uses TCL internal

SQLite's Use of Tcl

SQLite's Use Of Tcl D. Richard Hipp 24th Annual Tcl/Tk Conference Houston, TX 2017-10-19 1.0 Introduction SQLite is a TCL extension that has escaped into the wild. The design of SQLite was inspired by the design of TCL, both in the way it handles datatypes and in the formatting of its source code. The index use case for SQLite was in a Tcl/Tk application for an industrial company. From its inception, SQLite has always depended heavily on TCL. These days, SQLite no longer uses TCL internal

What If OpenDocument Used SQLite?

Small. Fast. Reliable. Choose any three. Home Menu About Documentation Download License Support Purchase Search About Documentation Download Support Purchase Search Documentation Search Changelog What If OpenDocument Used SQLite? Introduction Suppose the OpenDocument file format, and specifically the "ODP" OpenDocument Presentation format, were built around SQLite. Benefits would include: Smaller documents Faster File/Save times Faster startup times Less memory used Document

An adventure in writing compatible systems

Turso is a rewrite of SQLite from scratch in Rust. We aim to keep full compatibility with SQLite, while adding new and exciting features like CDC, concurrent writes, encryption, among many others. It is currently in alpha, but progressing fast and getting close to a point where it can be used for production workloads. Rewriting existing software systems is a special kind of hard. Aside from the difficulty in writing the software itself, you have to deal with behaviors of the existing system tha

SQLite's documentation about its durability properties is unclear

One of the most important properties of a database is durability. Durability means that after a transaction commits, you can be confident that, absent catastrophic hardware failure, the changes made by the commit won't be lost. This should remain true even if the operating system crashes or the system loses power soon after the commit. On Linux, and most other Unix operating systems, durability is ensured by calling the fsync system call at the right time. Durability comes at a performance cost

SQLite's Durability Settings Are a Mess

One of the most important properties of a database is durability. Durability means that after a transaction commits, you can be confident that, absent catastrophic hardware failure, the changes made by the commit won't be lost. This should remain true even if the operating system crashes or the system loses power soon after the commit. On Linux, and most other Unix operating systems, durability is ensured by calling the fsync system call at the right time. Durability comes at a performance cost

Lessons learned from building a sync-engine and reactivity system with SQLite

Over the last couple of months, I've been trying to build the dream: A local-first, end-to-end encrypted and reactive app, with all of the user's data in a local SQL database but continually synced to a remote server. This article summarizes my learning and how I ended up building a minimal sync engine for SQLite with full reactivity. First Try: PGlite and Electric My first try was with Electric and a WASM-based version of PostgreSQL called PGlite that can run directly in the browser. I ev

Long Term Support

Long Term Support The intent of the developers is to support SQLite through the year 2050. At this writing, 2050 is still 25 years in the future. Nobody knows what will happen in that time, and we cannot absolutely promise that SQLite will be viable or useful that far out. But we can promise this: we plan as if we will be supporting SQLite until 2050. That long-term outlook affects our decisions in important ways. Cross-platform Code → SQLite runs on any platform with an 8-bit byte, two's com

SQLx – Rust SQL Toolkit

SQLx 🧰 The Rust SQL Toolkit SQLx is an async, pure Rust † SQL crate featuring compile-time checked queries without a DSL. † The SQLite driver uses the libsqlite3 C library as SQLite is an embedded database (the only way we could be pure Rust for SQLite is by porting all of SQLite to Rust). †† SQLx uses #![forbid(unsafe_code)] unless the sqlite feature is enabled. The SQLite driver directly invokes the SQLite3 API via libsqlite3-sys , which requires unsafe . Cross-platform. Being native Rust

SQLx – The Rust SQL Toolkit

SQLx 🧰 The Rust SQL Toolkit SQLx is an async, pure Rust † SQL crate featuring compile-time checked queries without a DSL. † The SQLite driver uses the libsqlite3 C library as SQLite is an embedded database (the only way we could be pure Rust for SQLite is by porting all of SQLite to Rust). †† SQLx uses #![forbid(unsafe_code)] unless the sqlite feature is enabled. The SQLite driver directly invokes the SQLite3 API via libsqlite3-sys , which requires unsafe . Cross-platform. Being native Rust

PSA: SQLite WAL checksums fail silently and may lose data

PSA: SQLite WAL checksums fail silently and may lose data This is a follow-up post to my PSA: SQLite does not do checksums and PSA: Most databases do not do checksums by default. In the previous posts I mentioned that SQLite does not do checksums by default, but it has checksums in WAL mode. However, on checksum errors, instead of raising error, it drops all the subsequent frames. Even if they are not corrupt. This is not a bug; it’s intentional. SQLite WAL SQLite introduced WAL in 2010. It’s

ZeQLplus: Terminal SQLite Database Browser

ZeQL+ : Terminal SQLite Database Browser Features Open any SQLite database file Very fast Runs in a Terminal / CMD window Tiny executable with no dependencies List all tables in the database to browse Paginated view of table rows Run custom SQL queries and view the results Cross platform: macOS, Linux, Windows Open source Install Pre-built binaries for macOS, Linux, Windows 10+ are available as zip files in the releases page. Just extract and run directly with no need to install. Ho