1 parent
beae94e932
commit
de4d70970c
51 files changed
+4034
-421
No files matched your search
+12
-1
@@ -32,7 +32,18 @@ V053 adds two appearance columns to `display_preferences`.
|
||||
|
||||
Fresh installations already contain both columns in `schema.sql` and are registered at the latest schema version. Existing V052 tenants execute `V053__skin_depth_and_gradients.sql`.
|
||||
|
||||
The next migration number is **V054**.
|
||||
## V054 — RustBox 0.2.24
|
||||
|
||||
V054 adds three appearance columns to `display_preferences` and calendar reminder columns:
|
||||
|
||||
- `theme_light_from` / `theme_dark_from`, defaults `07:00` / `19:00` (`HH:MM`, local time of the browser) — used when `theme = 'schedule'`: light between the two times, dark otherwise (the window may wrap past midnight);
|
||||
- `account_color`, default empty — an optional per-account colour shown as a stripe on the app bar and a dot next to the account address;
|
||||
- `calendar_events.reminder_extra_minutes` (nullable) — an optional second reminder per event, e.g. one day before;
|
||||
- `calendar_settings.default_reminder_minutes` / `default_extra_reminder_minutes` (nullable) — reminders pre-selected for new events.
|
||||
|
||||
Fresh installations already contain the columns in `schema.sql`. Existing V053 tenants execute `V054__theme_schedule_account_color_and_reminders.sql`.
|
||||
|
||||
The next migration number is **V055**.
|
||||
|
||||
## Migration rules
|
||||
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
ALTER TABLE {{p}}display_preferences
|
||||
ADD COLUMN theme_light_from TEXT NOT NULL DEFAULT ('07:00'),
|
||||
ADD COLUMN theme_dark_from TEXT NOT NULL DEFAULT ('19:00'),
|
||||
ADD COLUMN account_color TEXT NOT NULL DEFAULT ('');
|
||||
|
||||
ALTER TABLE {{p}}calendar_events
|
||||
ADD COLUMN reminder_extra_minutes BIGINT;
|
||||
|
||||
ALTER TABLE {{p}}calendar_settings
|
||||
ADD COLUMN default_reminder_minutes BIGINT,
|
||||
ADD COLUMN default_extra_reminder_minutes BIGINT;
|
||||
@@ -1,7 +1,7 @@
|
||||
-- RustBox 0.2.0 MySQL schema.
|
||||
-- One physical database contains global sessions plus isolated per-account tables.
|
||||
-- Application tables are materialized by replacing {{p}} with a collision-checked prefix.
|
||||
-- Squashed compatibility baseline: V052; current schema: V053.
|
||||
-- Squashed compatibility baseline: V052; current schema: V054.
|
||||
|
||||
-- RUSTBOX:GLOBAL-BEGIN
|
||||
CREATE TABLE IF NOT EXISTS rustbox_accounts (
|
||||
@@ -58,6 +58,7 @@ CREATE TABLE {{p}}calendar_events (
|
||||
meeting_url TEXT,
|
||||
color TEXT,
|
||||
reminder_minutes BIGINT,
|
||||
reminder_extra_minutes BIGINT,
|
||||
created_at VARCHAR(64) NOT NULL DEFAULT (CAST(CURRENT_TIMESTAMP AS CHAR)),
|
||||
updated_at VARCHAR(64) NOT NULL DEFAULT (CAST(CURRENT_TIMESTAMP AS CHAR))
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
@@ -76,6 +77,8 @@ CREATE TABLE {{p}}calendar_settings (
|
||||
caldav_username TEXT NOT NULL DEFAULT (''),
|
||||
caldav_password TEXT NOT NULL DEFAULT (''),
|
||||
caldav_enabled BIGINT NOT NULL DEFAULT 0,
|
||||
default_reminder_minutes BIGINT,
|
||||
default_extra_reminder_minutes BIGINT,
|
||||
updated_at VARCHAR(64) NOT NULL DEFAULT (CAST(CURRENT_TIMESTAMP AS CHAR))
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
@@ -179,7 +182,10 @@ CREATE TABLE {{p}}display_preferences (
|
||||
preset_scale_unlocked BIGINT NOT NULL DEFAULT 0,
|
||||
adaptive_email_colors BIGINT NOT NULL DEFAULT 0,
|
||||
skin_depth TEXT NOT NULL DEFAULT ('standard'),
|
||||
skin_gradients BIGINT NOT NULL DEFAULT 0
|
||||
skin_gradients BIGINT NOT NULL DEFAULT 0,
|
||||
theme_light_from TEXT NOT NULL DEFAULT ('07:00'),
|
||||
theme_dark_from TEXT NOT NULL DEFAULT ('19:00'),
|
||||
account_color TEXT NOT NULL DEFAULT ('')
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
|
||||
|
||||
CREATE TABLE {{p}}draft_attachments (
|
||||
|
||||
@@ -0,0 +1,11 @@
|
||||
ALTER TABLE {{p}}display_preferences
|
||||
ADD COLUMN theme_light_from TEXT NOT NULL DEFAULT '07:00',
|
||||
ADD COLUMN theme_dark_from TEXT NOT NULL DEFAULT '19:00',
|
||||
ADD COLUMN account_color TEXT NOT NULL DEFAULT '';
|
||||
|
||||
ALTER TABLE {{p}}calendar_events
|
||||
ADD COLUMN reminder_extra_minutes BIGINT;
|
||||
|
||||
ALTER TABLE {{p}}calendar_settings
|
||||
ADD COLUMN default_reminder_minutes BIGINT,
|
||||
ADD COLUMN default_extra_reminder_minutes BIGINT;
|
||||
@@ -1,7 +1,7 @@
|
||||
-- RustBox 0.2.0 PostgreSQL schema.
|
||||
-- One physical database contains global sessions plus isolated per-account tables.
|
||||
-- Application tables are materialized by replacing {{p}} with a collision-checked prefix.
|
||||
-- Squashed compatibility baseline: V052; current schema: V053.
|
||||
-- Squashed compatibility baseline: V052; current schema: V054.
|
||||
|
||||
-- RUSTBOX:GLOBAL-BEGIN
|
||||
CREATE TABLE IF NOT EXISTS rustbox_accounts (
|
||||
@@ -58,6 +58,7 @@ CREATE TABLE {{p}}calendar_events (
|
||||
meeting_url TEXT,
|
||||
color TEXT,
|
||||
reminder_minutes BIGINT,
|
||||
reminder_extra_minutes BIGINT,
|
||||
created_at TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP::text),
|
||||
updated_at TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP::text)
|
||||
);
|
||||
@@ -76,6 +77,8 @@ CREATE TABLE {{p}}calendar_settings (
|
||||
caldav_username TEXT NOT NULL DEFAULT '',
|
||||
caldav_password TEXT NOT NULL DEFAULT '',
|
||||
caldav_enabled BIGINT NOT NULL DEFAULT 0,
|
||||
default_reminder_minutes BIGINT,
|
||||
default_extra_reminder_minutes BIGINT,
|
||||
updated_at TEXT NOT NULL DEFAULT (CURRENT_TIMESTAMP::text)
|
||||
);
|
||||
|
||||
@@ -179,7 +182,10 @@ CREATE TABLE {{p}}display_preferences (
|
||||
preset_scale_unlocked BIGINT NOT NULL DEFAULT 0,
|
||||
adaptive_email_colors BIGINT NOT NULL DEFAULT 0,
|
||||
skin_depth TEXT NOT NULL DEFAULT 'standard',
|
||||
skin_gradients BIGINT NOT NULL DEFAULT 0
|
||||
skin_gradients BIGINT NOT NULL DEFAULT 0,
|
||||
theme_light_from TEXT NOT NULL DEFAULT '07:00',
|
||||
theme_dark_from TEXT NOT NULL DEFAULT '19:00',
|
||||
account_color TEXT NOT NULL DEFAULT ''
|
||||
);
|
||||
|
||||
CREATE TABLE {{p}}draft_attachments (
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
ALTER TABLE {{p}}display_preferences
|
||||
ADD COLUMN theme_light_from TEXT NOT NULL DEFAULT '07:00';
|
||||
|
||||
ALTER TABLE {{p}}display_preferences
|
||||
ADD COLUMN theme_dark_from TEXT NOT NULL DEFAULT '19:00';
|
||||
|
||||
ALTER TABLE {{p}}display_preferences
|
||||
ADD COLUMN account_color TEXT NOT NULL DEFAULT '';
|
||||
|
||||
ALTER TABLE {{p}}calendar_events
|
||||
ADD COLUMN reminder_extra_minutes INTEGER;
|
||||
|
||||
ALTER TABLE {{p}}calendar_settings
|
||||
ADD COLUMN default_reminder_minutes INTEGER;
|
||||
|
||||
ALTER TABLE {{p}}calendar_settings
|
||||
ADD COLUMN default_extra_reminder_minutes INTEGER;
|
||||
@@ -1,7 +1,7 @@
|
||||
-- RustBox 0.2.0 SQLite schema.
|
||||
-- One physical database contains global sessions plus isolated per-account tables.
|
||||
-- Application tables are materialized from the tenant section by replacing {{p}}.
|
||||
-- Squashed compatibility baseline: V052; current schema: V053.
|
||||
-- Squashed compatibility baseline: V052; current schema: V054.
|
||||
|
||||
-- RUSTBOX:GLOBAL-BEGIN
|
||||
CREATE TABLE IF NOT EXISTS rustbox_accounts (
|
||||
@@ -58,6 +58,7 @@ CREATE TABLE {{p}}calendar_events (
|
||||
meeting_url TEXT,
|
||||
color TEXT,
|
||||
reminder_minutes INTEGER,
|
||||
reminder_extra_minutes INTEGER,
|
||||
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
||||
);
|
||||
@@ -76,6 +77,8 @@ CREATE TABLE {{p}}calendar_settings (
|
||||
caldav_username TEXT NOT NULL DEFAULT '',
|
||||
caldav_password TEXT NOT NULL DEFAULT '',
|
||||
caldav_enabled INTEGER NOT NULL DEFAULT 0,
|
||||
default_reminder_minutes INTEGER,
|
||||
default_extra_reminder_minutes INTEGER,
|
||||
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
||||
);
|
||||
|
||||
@@ -122,7 +125,7 @@ CREATE TABLE {{p}}display_preferences (
|
||||
theme TEXT NOT NULL DEFAULT 'system',
|
||||
language TEXT NOT NULL DEFAULT 'en',
|
||||
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
||||
compose_format TEXT NOT NULL DEFAULT 'html', deep_index BOOLEAN NOT NULL DEFAULT 0, animation_mode TEXT NULL, preview_pane TEXT NOT NULL DEFAULT 'right', ui_scale TEXT NOT NULL DEFAULT 'normal', color_preset TEXT NOT NULL DEFAULT 'sage', accent_color TEXT NOT NULL DEFAULT '#6f9c86', font_family TEXT NOT NULL DEFAULT 'system', font_size INTEGER NOT NULL DEFAULT 13, row_height INTEGER NOT NULL DEFAULT 58, folder_pane_width INTEGER NOT NULL DEFAULT 228, message_pane_width INTEGER NOT NULL DEFAULT 420, border_radius INTEGER NOT NULL DEFAULT 4, contrast TEXT NOT NULL DEFAULT 'normal', show_avatars INTEGER NOT NULL DEFAULT 1, show_attachment_icons INTEGER NOT NULL DEFAULT 1, show_flags INTEGER NOT NULL DEFAULT 1, reduce_motion INTEGER NOT NULL DEFAULT 0, date_format TEXT NOT NULL DEFAULT 'locale', time_format TEXT NOT NULL DEFAULT 'locale', background_color TEXT NOT NULL DEFAULT '#121513', panel_color TEXT NOT NULL DEFAULT '#181c19', text_color TEXT NOT NULL DEFAULT '#edf0ec', compose_autosave_ms INTEGER NOT NULL DEFAULT 3000, default_priority TEXT NOT NULL DEFAULT 'normal', request_mdn_default INTEGER NOT NULL DEFAULT 0, attachment_reminder INTEGER NOT NULL DEFAULT 1, icon_size INTEGER NOT NULL DEFAULT 18, toolbar_density TEXT NOT NULL DEFAULT 'normal', sidebar_item_height INTEGER NOT NULL DEFAULT 29, reader_max_width INTEGER NOT NULL DEFAULT 0, composer_width INTEGER NOT NULL DEFAULT 900, selection_color TEXT NOT NULL DEFAULT '#28352e', unread_font_weight INTEGER NOT NULL DEFAULT 730, unread_badge_style TEXT NOT NULL DEFAULT 'dot', compact_headers INTEGER NOT NULL DEFAULT 0, show_borders INTEGER NOT NULL DEFAULT 1, scrollbar_density TEXT NOT NULL DEFAULT 'thin', monochrome INTEGER NOT NULL DEFAULT 0, folder_background TEXT NOT NULL DEFAULT '', message_background TEXT NOT NULL DEFAULT '', reader_background TEXT NOT NULL DEFAULT '', compose_font_family TEXT NOT NULL DEFAULT 'system', reply_position TEXT NOT NULL DEFAULT 'above', quote_style TEXT NOT NULL DEFAULT 'standard', forward_mode TEXT NOT NULL DEFAULT 'inline', spellcheck_enabled INTEGER NOT NULL DEFAULT 1, interface_skin TEXT NOT NULL DEFAULT 'rustbox', preset_scale_unlocked INTEGER NOT NULL DEFAULT 0, adaptive_email_colors INTEGER NOT NULL DEFAULT 0, skin_depth TEXT NOT NULL DEFAULT 'standard', skin_gradients INTEGER NOT NULL DEFAULT 0);
|
||||
compose_format TEXT NOT NULL DEFAULT 'html', deep_index BOOLEAN NOT NULL DEFAULT 0, animation_mode TEXT NULL, preview_pane TEXT NOT NULL DEFAULT 'right', ui_scale TEXT NOT NULL DEFAULT 'normal', color_preset TEXT NOT NULL DEFAULT 'sage', accent_color TEXT NOT NULL DEFAULT '#6f9c86', font_family TEXT NOT NULL DEFAULT 'system', font_size INTEGER NOT NULL DEFAULT 13, row_height INTEGER NOT NULL DEFAULT 58, folder_pane_width INTEGER NOT NULL DEFAULT 228, message_pane_width INTEGER NOT NULL DEFAULT 420, border_radius INTEGER NOT NULL DEFAULT 4, contrast TEXT NOT NULL DEFAULT 'normal', show_avatars INTEGER NOT NULL DEFAULT 1, show_attachment_icons INTEGER NOT NULL DEFAULT 1, show_flags INTEGER NOT NULL DEFAULT 1, reduce_motion INTEGER NOT NULL DEFAULT 0, date_format TEXT NOT NULL DEFAULT 'locale', time_format TEXT NOT NULL DEFAULT 'locale', background_color TEXT NOT NULL DEFAULT '#121513', panel_color TEXT NOT NULL DEFAULT '#181c19', text_color TEXT NOT NULL DEFAULT '#edf0ec', compose_autosave_ms INTEGER NOT NULL DEFAULT 3000, default_priority TEXT NOT NULL DEFAULT 'normal', request_mdn_default INTEGER NOT NULL DEFAULT 0, attachment_reminder INTEGER NOT NULL DEFAULT 1, icon_size INTEGER NOT NULL DEFAULT 18, toolbar_density TEXT NOT NULL DEFAULT 'normal', sidebar_item_height INTEGER NOT NULL DEFAULT 29, reader_max_width INTEGER NOT NULL DEFAULT 0, composer_width INTEGER NOT NULL DEFAULT 900, selection_color TEXT NOT NULL DEFAULT '#28352e', unread_font_weight INTEGER NOT NULL DEFAULT 730, unread_badge_style TEXT NOT NULL DEFAULT 'dot', compact_headers INTEGER NOT NULL DEFAULT 0, show_borders INTEGER NOT NULL DEFAULT 1, scrollbar_density TEXT NOT NULL DEFAULT 'thin', monochrome INTEGER NOT NULL DEFAULT 0, folder_background TEXT NOT NULL DEFAULT '', message_background TEXT NOT NULL DEFAULT '', reader_background TEXT NOT NULL DEFAULT '', compose_font_family TEXT NOT NULL DEFAULT 'system', reply_position TEXT NOT NULL DEFAULT 'above', quote_style TEXT NOT NULL DEFAULT 'standard', forward_mode TEXT NOT NULL DEFAULT 'inline', spellcheck_enabled INTEGER NOT NULL DEFAULT 1, interface_skin TEXT NOT NULL DEFAULT 'rustbox', preset_scale_unlocked INTEGER NOT NULL DEFAULT 0, adaptive_email_colors INTEGER NOT NULL DEFAULT 0, skin_depth TEXT NOT NULL DEFAULT 'standard', skin_gradients INTEGER NOT NULL DEFAULT 0, theme_light_from TEXT NOT NULL DEFAULT '07:00', theme_dark_from TEXT NOT NULL DEFAULT '19:00', account_color TEXT NOT NULL DEFAULT '');
|
||||
|
||||
CREATE TABLE {{p}}draft_attachments (
|
||||
id TEXT PRIMARY KEY,
|
||||
|
||||
Reference in new issue
Block a user