From 027641ef9efec9ed5dfc463d9c2f38c32716d9b5 Mon Sep 17 00:00:00 2001 From: Stefan Majewsky Date: Fri, 24 Apr 2026 15:41:00 +0200 Subject: remove support for SQL dialects that rely on LastInsertId() While researching for Upsert(), I noticed that both SQLite and MariaDB support INSERT with RETURNING clause, which is objectively better than LastInsertId() and cuts out a lot of useless crap from the codebase (esp. from monomorphization-relevant methods). The only tangible downside is that this drops support specifically for MySQL, but you know what? Fuck Oracle. --- CHANGELOG.md | 11 +++++++++++ 1 file changed, 11 insertions(+) (limited to 'CHANGELOG.md') diff --git a/CHANGELOG.md b/CHANGELOG.md index e5e73eb..8d7c623 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -3,6 +3,17 @@ SPDX-FileCopyrightText: 2026 Stefan Majewsky SPDX-License-Identifier: Apache-2.0 --> +# v0.3.0 (TBD) + +Changes: + +- `Store.Insert()` now takes its arguments by-pointer. This is probably slightly less efficient, + but significantly safer because autogenerated field values cannot be disregarded by accident. +- Removed support for SQL dialects that rely on LastInsertId() for ID columns. + Using a RETURNING clause to collect autogenerated field values is objectively better in every way, + and has been supported by both MariaDB and SQLite for at least six years. + In practice, this only drops support specifically for Oracle MySQL. + # v0.2.0 (2026-04-18) Changes: -- cgit v1.2.3