From 7ef7b60cf5df41cf64858fba32ba0c94e36ba19d Mon Sep 17 00:00:00 2001 From: roboogg133 Date: Sun, 5 Oct 2025 12:17:33 -0300 Subject: [PATCH] fixed databaseschema again --- doc/indexdbSchema.txt | 6 ++++-- internal/consts/consts.go | 6 ++++-- internal/utils/utils.go | 13 +++++-------- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/doc/indexdbSchema.txt b/doc/indexdbSchema.txt index 37589fb..25b712e 100644 --- a/doc/indexdbSchema.txt +++ b/doc/indexdbSchema.txt @@ -35,11 +35,13 @@ CREATE TABLE IF NOT EXISTS packages ( version TEXT NOT NULL, dependencies TEXT NOT NULL DEFAULT '', description TEXT NOT NULL, - family TEXT NOT NULL, package_d TEXT NOT NULL, filename TEXT NOT NULL, os TEXT NOT NULL, arch TEXT NOT NULL, in_cache INTEGER NOT NULL DEFAULT 1, - serial INTEGER NOT NULL + serial INTEGER NOT NULL, + + UNIQUE(query_name, version), + UNIQUE(query_name, serial) ); \ No newline at end of file diff --git a/internal/consts/consts.go b/internal/consts/consts.go index 6643a88..182078a 100644 --- a/internal/consts/consts.go +++ b/internal/consts/consts.go @@ -20,13 +20,15 @@ const InstalledDatabaseSchema = `CREATE TABLE IF NOT EXISTS packages ( version TEXT NOT NULL, dependencies TEXT NOT NULL DEFAULT '', description TEXT NOT NULL, - family TEXT NOT NULL, package_d TEXT NOT NULL, filename TEXT NOT NULL, os TEXT NOT NULL, arch TEXT NOT NULL, in_cache INTEGER NOT NULL DEFAULT 1, - serial INTEGER NOT NULL + serial INTEGER NOT NULL, + + UNIQUE(query_name, version), + UNIQUE(query_name, serial) ); CREATE TABLE package_dependencies( diff --git a/internal/utils/utils.go b/internal/utils/utils.go index 2646ad6..c8aa2e4 100644 --- a/internal/utils/utils.go +++ b/internal/utils/utils.go @@ -44,7 +44,6 @@ type Package struct { Manifest configs.Manifest - Family string Serial int } @@ -221,13 +220,12 @@ func (p *Package) AddToInstalledDB(inCache int, packagePath string) error { _, err = db.Exec(` INSERT INTO packages ( query_name, id, version, description, - family, serial, package_d, filename, os, arch, in_cache - ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, + serial, package_d, filename, os, arch, in_cache + ) VALUES (?, ?, ?, ?, ?, ?, ?, ?, ?, ?)`, p.QueryName, p.Manifest.Info.Id, p.Version, p.Description, - p.Family, p.Serial, packagePath, p.Filename, @@ -255,7 +253,7 @@ func CheckIfPackageInstalled(name string) (bool, error) { defer db.Close() var exists bool - err = db.QueryRow("SELECT EXISTS(SELECT 1 FROM packages WHERE id = ?)", name).Scan(&exists) + err = db.QueryRow("SELECT EXISTS(SELECT 1 FROM packages WHERE id = ? OR query_name = ?)", name, name).Scan(&exists) if err != nil { return false, err } @@ -359,7 +357,7 @@ func RemoveFromInstalledDB(id string) error { return err } - if _, err = db.Exec("DELETE FROM packages WHERE id = ?", id); err != nil { + if _, err = db.Exec("DELETE FROM packages WHERE id = ? OR query_name = ?", id, id); err != nil { return err } @@ -379,7 +377,7 @@ func GetPackage(id string) (Package, error) { defer db.Close() var packageUrl string - err = db.QueryRow("SELECT query_name, version, package_url, image_url, description, author, author_verified, os, arch, signature, public_key, family, serial, size FROM packages WHERE id = ?", id). + err = db.QueryRow("SELECT query_name, version, package_url, image_url, description, author, author_verified, os, arch, signature, public_key, serial, size FROM packages WHERE id = ?", id). Scan( &this.QueryName, &this.Version, @@ -392,7 +390,6 @@ func GetPackage(id string) (Package, error) { &this.Arch, &this.Signature, &this.PublicKey, - &this.Family, &this.Serial, &this.Size, )