X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=db.sql;h=2c03a4a43d1827e3cce1b159b2522ad587485fe5;hb=84e08226b00a2fc1d248d9df9ee2dbc1c5deef50;hp=6a8f51ed05ec56e63b639cceeb5efb7c48f6284e;hpb=2e359b7bc9f28854271fc816e73cb72d8c29e6f6;p=zpackage diff --git a/db.sql b/db.sql index 6a8f51e..2c03a4a 100644 --- a/db.sql +++ b/db.sql @@ -28,6 +28,7 @@ create table packages ( description text, architecture text, url text, + status text, licenses text, -- hash of actual license? need table for more than one? packager text, build_time integer default (strftime('%s', 'now')), @@ -38,12 +39,12 @@ create table packages ( without rowid ; -create table packagestatus ( - pkgid text primary key, - status text, -- installed installing removed upgraded - -- asof timestamp - asof integer default (strftime('%s', 'now')) -); +-- handle package status history with a logging trigger. +create trigger logpkgstatus after update of status on packages +begin insert into zpmlog (action,target,info) + values (printf('status change %s %s', OLD.status, NEW.status), + printf('%s-%s-%s', NEW.package, NEW.version, NEW.release), + NULL); END; create table packagetags ( -- package id triple @@ -197,7 +198,8 @@ create table packagegroups ( -- sub-invocations, probably an environment variable set if not -- already set by zpm, probably a uuid or a timestamp create table zpmlog ( - ts integer, -- timestamp of action, may need sub-second + ts text default (strftime('%Y-%m-%d %H:%M:%f', 'now')), + -- timestamp of action action text, target text, -- packagename, repo name, etc info text -- human readable