1 -- Updates from version 0.3-stable
4 DROP INDEX IF EXISTS messages_index_idx;
5 CREATE INDEX messages_index_idx ON messages (user_id, cache_key, idx);
6 DROP INDEX contacts_user_id_idx;
7 CREATE INDEX contacts_user_id_idx ON contacts (user_id, email);
9 -- Updates from version 0.3.1
11 DROP INDEX identities_user_id_idx;
12 CREATE INDEX identities_user_id_idx ON identities (user_id, del);
14 ALTER TABLE identities ADD changed timestamp with time zone DEFAULT now() NOT NULL;
16 CREATE SEQUENCE contactgroups_ids
22 CREATE TABLE contactgroups (
23 contactgroup_id integer DEFAULT nextval('contactgroups_ids'::text) PRIMARY KEY,
24 user_id integer NOT NULL
25 REFERENCES users(user_id) ON DELETE CASCADE ON UPDATE CASCADE,
26 changed timestamp with time zone DEFAULT now() NOT NULL,
27 del smallint NOT NULL DEFAULT 0,
28 name varchar(128) NOT NULL DEFAULT ''
31 CREATE INDEX contactgroups_user_id_idx ON contactgroups (user_id, del);
33 CREATE TABLE contactgroupmembers (
34 contactgroup_id integer NOT NULL
35 REFERENCES contactgroups(contactgroup_id) ON DELETE CASCADE ON UPDATE CASCADE,
36 contact_id integer NOT NULL
37 REFERENCES contacts(contact_id) ON DELETE CASCADE ON UPDATE CASCADE,
38 created timestamp with time zone DEFAULT now() NOT NULL,
39 PRIMARY KEY (contactgroup_id, contact_id)
42 -- Updates from version 0.4-beta
44 ALTER TABLE users ALTER last_login DROP NOT NULL;
45 ALTER TABLE users ALTER last_login SET DEFAULT NULL;
47 -- Updates from version 0.4.2
49 DROP INDEX users_username_id_idx;
50 ALTER TABLE users ADD UNIQUE (username, mail_host);
51 ALTER TABLE contacts ALTER email TYPE varchar(255);