LumoSQL Project Repositories

Non-technical Introduction

This is the home for the three open source-licensed LumoSQL repositories. LumoSQL is a modification of SQLite, the world’s most-used software, to add technical enhancements for performance, security and measurement. The modifications are done in cooperation with SQLite community and its twin project Fossil.

LumoSQL is supported by NLnet.

LumoSQL Database Project

The LumoSQL Database Project builds modified SQLite. The user can specify which version of SQLite is to have which features added to it, and whether to benchmark the resulting binary. Features that can be added to SQLite relate to different key-value storage backends, and to security/integrity.

LumoSQL has code to:

LumoSQL Database preview version 0.4 was released on 2021-01-10 .

LumoSQL Documentation Project

The LumoSQL Documentation Project contains:

The Not-Forking Tool

The Not-Forking Tool is how LumoSQL combines codebases with minimal disruption. The ultimate goal is is to have a stable storage backend API in SQLite, but to develop that we need to see the codebases joined together, and to understand 20 years of closely-coupled history in SQLite internals. Not-forking has allowed us to work with multiple different versions of SQLite, LMDB and BDB without having to maintain ports or APIs. Not-forking is relevant to any project that needs to keep in synch with multiple upstreams each with multiple versions, whether available via Git, tarball or Fossil.

SQLite is conservative about breaking compatibility due to its immense userbase, but LumoSQL can apply new features without forking SQLite thus getting the best of both worlds. SQLite can see alternate futures, while LumoSQL is not carrying the burden of forking.

The LumoSQL Archives of Dead Code

Archive 2: Early LumoSQL on Fossil has lots of experimentation, dead-ends and more. It was imported from GitHub, and that sparked some Fossil development because once upon a time a previous SQLite Fossil had been imported into an upstream. This archive also was the last time LumoSQL was a monolithic project.

Archive 1: Early LumoSQL on Github has the very earliest work including excavations of ancient code. All the Gihub issues from this project have been moved to the current LumoSQL fossil archive, or wiki pages, or otherwise dealt with.