Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '22'

- name: Install dependencies
run: npm install --legacy-peer-deps
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/deploy.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ jobs:
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '22'

- name: Install dependencies
run: npm install --legacy-peer-deps
Expand Down
4 changes: 2 additions & 2 deletions .github/workflows/harness.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '22'
- name: npm audit --audit-level=high
# Fails on a high-or-critical advisory. Production-only because we
# don't act on devDep advisories (no runtime exposure).
Expand All @@ -48,7 +48,7 @@ jobs:
- uses: actions/checkout@v4
- uses: actions/setup-node@v4
with:
node-version: '20'
node-version: '22'
- name: Install dependencies
run: npm install --legacy-peer-deps --no-audit --no-fund
- name: Run knip
Expand Down
2 changes: 1 addition & 1 deletion knip.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"$schema": "https://unpkg.com/knip@5/schema.json",
"entry": ["src/lib/components/SearchModal.svelte!"],
"ignoreDependencies": ["@cloudflare/workers-types"],
"ignoreDependencies": ["@cloudflare/workers-types", "cloudflare"],
"rules": {
"exports": "off",
"types": "off",
Expand Down
14 changes: 10 additions & 4 deletions migrations/0002_add_alias.sql
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,15 @@
-- Created: 2024-02-01
-- Note: SQLite doesn't support "IF NOT EXISTS" for ALTER TABLE ADD COLUMN
-- This migration may fail if already applied - that's expected behavior
--
-- 2026 update: SQLite forbids `ADD COLUMN ... UNIQUE` (hosted D1 silently
-- tolerated this in the past, local Miniflare D1 rejects it strictly per
-- the SQLite spec). Replaced with the canonical pattern:
-- ADD COLUMN (no constraint) + CREATE UNIQUE INDEX. Equivalent uniqueness
-- guarantee, runs on both hosted and local D1. Safe to re-apply on prod:
-- this migration is already recorded in d1_migrations, so it will not
-- re-execute against the hosted DB.

-- Add alias column (will fail if exists - that's OK)
ALTER TABLE configs ADD COLUMN alias TEXT UNIQUE;
ALTER TABLE configs ADD COLUMN alias TEXT;

-- Create index (idempotent)
CREATE INDEX IF NOT EXISTS idx_configs_alias ON configs(alias);
CREATE UNIQUE INDEX IF NOT EXISTS idx_configs_alias_unique ON configs(alias);
Loading
Loading