Commit log

dd7551f Actually finish 🤞 DB-/ID-related refactors

Amolith created

b6db773 Add ID to project cards so mobile works

Amolith created

203cc09 Add license header to git_test

Amolith created

292db50 Bump git-go and its deps

Click to expand commit body
govulncheck reported that we're calling vulnerable codepaths from an
older version of git-go, so I upgraded git-go and its direct
dependencies.

Amolith created

d5c7bf7 Implement new UI, fix DB use

Click to expand commit body
- Implement dual-column UI
- Swap project table index from URL to ID
- Enable WAL for concurrent reads
- Use a Mutex to protect writes

Amolith created

89e8944 Move hardcoded defaults to top of checkConfig()

Amolith created

8cf4a4c Add test for stringifyRepo

Amolith created

edfeefe Trim trailing .git, / from repo URIs

Amolith created

e107cf7 docs: mention prefix for emailed patches

Amolith created

c4cd8ac Switch font to Atkinson Hyperlegible

Amolith created

3eb99aa remove unused license

Amolith created

df8827c Remove FLA requirement

Amolith created

53bc9bb Add license to WIP vhs thing

Amolith created

0675278 Implement migration system, add first migration

Click to expand commit body
Thank you for the help Chris!
https://github.com/whereswaldon

Amolith created

fc27ee8 add WIP VHS file

Click to expand commit body
https://github.com/charmbracelet/vhs

Amolith created

ac63dcb Thank you for hiding this Goland :angery:

Amolith created

274e052 ignore website build artifacts

Amolith created

0e19ed2 improve wording around FLA

Amolith created

fc10ca3 correct plurality

Amolith created

2dc6200 improve wording around FLA

Amolith created

2e19319 fix form fields in FLAs

Amolith created

306d662 improve wording around the FLA

Amolith created

ff3b5fc correct image link

Amolith created

d2bacfc remove brackets from auto-linked email addr

Amolith created

d80b598 remove emoji from heading

Amolith created

7d40d0c Introduce FLA, mention in README, improve README

Amolith created

46728eb link SQL script for initial schema

Amolith created

35f3ba1 remove SQL comments

Amolith created

89f122b mvoe ID generation logic to helper function

Amolith created

54c05b4 ignore future website directory

Amolith created

68be501 Fix error handling bug introduced in last commit

Amolith created

8ca0376 Pre-select current $running when modifying it

Click to expand commit body
Implements: https://todo.sr.ht/~amolith/willow/25

Amolith created

61c551a Add note about limited RSS entries

Click to expand commit body
Implements: https://todo.sr.ht/~amolith/willow/8

Amolith created

b1af277 Use FlexVer to sort by tag instead of date

Click to expand commit body
Implements: https://todo.sr.ht/~amolith/willow/24

Amolith created

b2c5dbe bump dependencies

Amolith created

a810f20 add link to lightning talk

Amolith created

7ce1feb correct typo in readme

Amolith created

65873c0 add note about binary installation

Amolith created

0981d38 compliant with reuse again

Amolith created

1fbf0af group outdated software and reword

Click to expand commit body
Implements: https://todo.sr.ht/~amolith/willow/17
Implements: https://todo.sr.ht/~amolith/willow/15

Amolith created

90db8d5 correct div nesting in home HTML template

Amolith created

aa29366 BREAKING-ish: SQL schema correction

Click to expand commit body
While refactoring the schema yesterday, I forgot to add primary keys
back to the sessions and projects tables. Databases existing before
commit 984d44775bcd1331eb73e4a7812d768fd8c485bb are fine and new
databases should be initialised correctly, but databases created between
commit 984d44775bcd1331eb73e4a7812d768fd8c485bb and this one require
either SQL migrations or deleting willow.sqlite (which will remove all
users, projects, login sessions, etc.).

For the migrations, open the database with `sqlite3 willow.sqlite` and
paste the SQL statements below.

```
ALTER TABLE sessions RENAME TO sessions_bak;
CREATE TABLE sessions
(
    token      TEXT      NOT NULL PRIMARY KEY,
    username   TEXT      NOT NULL,
    expires    TIMESTAMP NOT NULL,
    created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO sessions (token, username, expires, created_at)
    SELECT token, username, expires, created_at FROM sessions_bak;
ALTER TABLE projects RENAME TO projects_bak;
CREATE TABLE projects
(
    url        TEXT      NOT NULL PRIMARY KEY,
    name       TEXT      NOT NULL,
    forge      TEXT      NOT NULL,
    version    TEXT      NOT NULL,
    created_at TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);
INSERT INTO projects (url, name, forge, version, created_at)
    SELECT url, name, forge, version, created_at FROM projects_bak;
```

Assuming the statements execute without error, Willow starts up
correctly, and you can log in, you can safely drop open the database
again and drop the projects_bak and sessions_bak tables with

```
DROP TABLE projects_bak;
DROP TABLE sessions_bak;
```

---

References: https://todo.sr.ht/~amolith/willow/14

Amolith created

181509f adding padding to bottom

Amolith created

ff409eb use different screenshot

Amolith created

91434f4 update screenshot

Amolith created

d9bf2f6 embed the inter font

Amolith created

53705af bump go version and dependencies

Amolith created

61c24da correct minor webserver issues

Amolith created

984d447 BREAKING: SQL schema change

Click to expand commit body
- Redo schema to improve handling of lightweight tags
- Try to clean up empty directories when untracking a project

To resolve schema conflict, run `sqlite3 willow.sqlite` and paste the
following:

ALTER TABLE releases RENAME TO releases_bak;
CREATE TABLE releases
(
    id          TEXT      NOT NULL PRIMARY KEY,
    project_url TEXT      NOT NULL,
    release_url TEXT      NOT NULL,
    tag         TEXT      NOT NULL,
    content     TEXT      NOT NULL,
    date        TIMESTAMP NOT NULL,
    created_at  TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP
);

If everything works as expected, you can `DROP TABLE releases_bak`.

Amolith created

3612ffc handle .git in RSS URLs and add missing returns

Amolith created