Switch to modernc.org/sqlite and update dockerfile

This commit is contained in:
2026-05-06 19:00:28 +02:00
parent b28b9b127b
commit e5fd59f3ed
16 changed files with 162 additions and 127 deletions
-1
View File
@@ -8,7 +8,6 @@ import (
"quay/app/repository"
"github.com/google/uuid"
_ "github.com/mattn/go-sqlite3"
)
type SQLiteSiteRepository struct {
+2 -2
View File
@@ -3,11 +3,11 @@ package database
import (
"database/sql"
_ "github.com/mattn/go-sqlite3"
_ "modernc.org/sqlite"
)
func ConnectSQLite(dbPath string) (*sql.DB, error) {
db, err := sql.Open("sqlite3", dbPath+"?_busy_timeout=5000&_journal_mode=WAL")
db, err := sql.Open("sqlite", dbPath+"?_busy_timeout=5000&_journal_mode=WAL")
if err != nil {
return nil, err
}
+4 -4
View File
@@ -8,7 +8,8 @@ import (
"quay/app/repository"
"github.com/google/uuid"
"github.com/mattn/go-sqlite3"
"modernc.org/sqlite"
sqlite3 "modernc.org/sqlite/lib"
)
type SQLiteUserRepository struct {
@@ -149,10 +150,9 @@ func (r *SQLiteUserRepository) AdminUserExists() (bool, error) {
}
func isSQLiteUniqueConstraintError(err error) bool {
var sqliteErr sqlite3.Error
var sqliteErr *sqlite.Error
if !errors.As(err, &sqliteErr) {
return false
}
return sqliteErr.Code == sqlite3.ErrConstraint && sqliteErr.ExtendedCode == sqlite3.ErrConstraintUnique
return sqliteErr.Code() == sqlite3.SQLITE_CONSTRAINT_UNIQUE
}