Interesting idea - I like seeing a list of pet-peeves followed by a proposal for a straightforward way to have a set of 'alternative defaults' that remains backwards compatible. If you don't want to opt in, don't run the new PRAGMA edition = 2026. Too often it's just a list of issues and a wish that everyone else will change. In (mild) defense of SQLITE_BUSY - busy_timeout just tells sqlite to sleep and retry up to t…
This isn't so much a list of pet peeves as it is the almost universal way people that work seriously with SQLite configure the database. It's reasonable to suggest that the alternative settings for each of these suggestions is probably the wrong default for 2026.
SQLite should have (Rust-style) editions
41–50 of 186 posts
Re: SQLite should have (Rust-style) editions
#42Re: SQLite should have (Rust-style) editions
#43Oh hi, author here. Fun to see this make it to HN.
Re: SQLite should have (Rust-style) editions
#44Re: SQLite should have (Rust-style) editions
#45It is sqlite3. Emphasis on the 3 - it already has 'editions'.
Re: SQLite should have (Rust-style) editions
#46Re: SQLite should have (Rust-style) editions
#47Interesting idea - I like seeing a list of pet-peeves followed by a proposal for a straightforward way to have a set of 'alternative defaults' that remains backwards compatible. If you don't want to opt in, don't run the new PRAGMA edition = 2026. Too often it's just a list of issues and a wish that everyone else will change. In (mild) defense of SQLITE_BUSY - busy_timeout just tells sqlite to sleep and retry up to t…
Because it not tied to the data but to the code.
Instead, what I think should be is that the PRAGMAs become "data" that is always checked in full with "if manually set" and then on next "open" THEY GET APPLIED.
That is.
(and in the command line when open interactively they show up).
Re: SQLite should have (Rust-style) editions
#48It is sqlite3. Emphasis on the 3 - it already has 'editions'.
The "3" refers to the file format (or rather, represents a breaking file format change vs 2), which the devs have committed to keep backward-compatible until 2050. https://sqlite.org/lts.html
They even had an sqlite4: