boojack
9eabb554d5
feat(settings): move tag metadata to user settings ( #6017 )
2026-06-07 23:58:00 +08:00
boojack
d69f1aab27
chore: tweak demo data
2026-06-03 00:21:45 +08:00
boojack
e53b7d96e7
fix: delete user cleanup ( #5981 )
2026-05-25 22:10:29 +08:00
boojack
d1208a68e9
chore: update sponsors
2026-05-25 20:39:25 +09:00
boojack
858f7419b4
chore(seed): tweak seed data
2026-05-15 09:04:28 +08:00
boojack
ab2b08a21e
chore(seed): refresh demo memos and sponsor showcase
2026-05-15 00:23:11 +08:00
boojack
02096836c3
test: stabilize backend tests in CI
...
- Avoid requiring built frontend assets in cache header tests.
- Skip Testcontainers-backed store tests when Docker is unavailable.
2026-05-08 22:24:54 +08:00
Steven
ea0625da45
feat(stats): admin instance resource statistics
2026-05-01 23:15:56 +08:00
Steven
35bf761b8c
fix(security): enforce attachment ownership on memo updates
2026-05-01 18:23:53 +08:00
boojack
616487fa37
chore: update backend and frontend dependencies ( #5900 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-04-28 08:25:26 +08:00
boojack
0fb83a745d
fix(auth): harden authorization and username validation ( #5890 )
2026-04-25 21:24:16 +08:00
boojack
ee1799851e
feat: redesign account and SSO management ( #5886 )
2026-04-24 09:08:58 +08:00
boojack
d688914b28
feat(auth): add SSO user identity linkage ( #5883 )
2026-04-23 08:51:45 +08:00
boojack
50638040f6
fix: reduce list memo query overhead ( #5880 )
2026-04-22 09:31:48 +08:00
boojack
f8a304bae3
fix(release): inject build version into artifacts
2026-04-19 12:02:32 +08:00
boojack
c45663761d
fix(api): reduce memory pressure in backend paths
2026-04-16 23:08:48 +08:00
boojack
101704c8ea
feat(ai): add BYOK audio transcription ( #5832 )
2026-04-13 22:09:24 +08:00
memoclaw
83ed32f119
feat(ai): add instance AI providers and transcription ( #5829 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-04-12 19:23:34 +08:00
memoclaw
24fc8ab8ca
feat(mentions): add memo mention parsing, notifications, and rendering ( #5811 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-04-06 22:16:53 +08:00
boojack
10a955fd62
refactor: move plugin packages under internal
2026-04-06 11:10:32 +08:00
boojack
4b4e719470
feat(attachments): add Live Photo and Motion Photo support ( #5810 )
2026-04-06 10:47:01 +08:00
memoclaw
1921b57662
fix(tags): allow blur-only tag metadata ( #5800 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-03-31 21:38:55 +08:00
boojack
0e89407ee9
fix(filter): enforce CEL syntax semantics
...
Reject non-standard truthy numeric expressions in filters and document the parser as a supported subset of standard CEL syntax.
- remove legacy filter rewrites
- support standard equality in tag exists predicates
- add regression coverage for accepted and rejected expressions
2026-03-31 08:10:49 +08:00
boojack
7c708ee27e
chore: add migration upgrade coverage ( #5796 )
2026-03-30 23:51:57 +08:00
memoclaw
4add9b04ad
fix: prevent local attachment uploads from overwriting files
2026-03-26 21:46:51 +08:00
memoclaw
acddef1f3d
fix(api): switch user resource names to usernames ( #5779 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-03-25 09:11:17 +08:00
memoclaw
4818bf3559
refactor(store): remove synthetic system bot user lookup ( #5778 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-03-24 22:16:30 +08:00
google-labs-jules[bot]
e0cc247823
chore: optimize multi-user RSS feed generation by fixing N+1 query ( #5749 )
...
Co-authored-by: google-labs-jules[bot] <161369871+google-labs-jules[bot]@users.noreply.github.com>
2026-03-20 18:09:24 +08:00
memoclaw
3f3133d6e2
feat(memo): add share links for private memos ( #5742 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-03-19 23:47:22 +08:00
memoclaw
e164517773
test: remove raw SQL migration backfill test setup
2026-03-19 19:54:39 +08:00
memoclaw
f759b416af
refactor(inbox): store memo comment payloads without activity records ( #5741 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-03-19 19:33:25 +08:00
memoclaw
a249d06e2e
feat(instance): add notification transport setting ( #5737 )
...
Co-authored-by: memoclaw <265580040+memoclaw@users.noreply.github.com>
2026-03-19 09:18:28 +08:00
boojack
65d14fbb63
feat(instance): add canonical tag metadata setting ( #5736 )
2026-03-19 08:54:43 +08:00
boojack
330291d4d9
feat(user): add per-user tag metadata settings ( #5735 )
2026-03-18 23:15:14 +08:00
memoclaw
12e2205cb6
chore(backend): update Go toolchain and dependencies ( #5730 )
2026-03-16 21:07:52 +08:00
memoclaw
8f43e8075b
fix: correct typos in comments, error messages, and identifiers ( #5704 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-08 18:40:17 +08:00
memoclaw
851e090ff9
chore: align branding with brand guidelines ( #5693 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 11:32:36 +08:00
memoclaw
1e82714a52
perf: batch load memo relations when listing memos ( #5692 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-07 11:19:19 +08:00
memoclaw
92d937b1aa
feat: replace auto-increment ID with UID for identity provider resource names ( #5687 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 21:01:22 +08:00
memoclaw
f0c4489468
chore: move storage setting migration to v0.27.0 ( #5686 )
...
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-05 19:44:36 +08:00
Biplav Barua
def123232a
feat: implement ListActivities pagination ( #5468 )
2026-03-04 19:08:47 +08:00
Steven
737acbba2f
fix(markdown): support height/width attributes on img elements
2026-03-02 22:45:36 +08:00
Steven
dfab67f035
chore(seed): polish demo data with realistic multi-user content
2026-03-02 21:50:47 +08:00
Johnny
9628d3de21
fix: detect legacy installations with empty schema version
2026-03-01 20:59:39 +08:00
Johnny
78efa6802e
feat(store): change default storage type to local filesystem
...
Add migration scripts for existing instances without a storage setting
to explicitly preserve DATABASE as their storage type, ensuring backward
compatibility. Change the default for new installations to LOCAL to
improve out-of-the-box performance.
2026-03-01 19:42:01 +08:00
Johnny
252b3eff90
test(store): add tests for CreateMemo with custom timestamps
2026-03-01 19:08:27 +08:00
Mudkip
09d73e8b6e
fix(mysql): handle CreateMemo custom timestamps with FROM_UNIXTIME ( #5673 )
2026-03-01 19:01:54 +08:00
Mudkip
ff3e4c5cfe
fix: avoid truncating memo batch attachments ( #5654 )
2026-02-23 20:09:39 +08:00
Steven
704503e556
fix(store): allow memo/attachment deletion when local file is missing
...
Fixes two bugs reported in #5603 :
1. store/attachment.go: ignore os.ErrNotExist when removing a local
attachment file so that a missing file on disk (broken state from
failed uploads) no longer blocks deletion of the DB record, allowing
memos referencing corrupt attachments to be deleted normally.
2. memo_attachment_service.go: add nil guard on GetAttachment result
before dereferencing it in SetMemoAttachments, preventing a nil
pointer panic when an attachment UID no longer exists in the DB.
2026-02-23 10:26:40 +08:00
Steven
2b19d8a969
fix(tests): update PAT tests to accept both custom and SQL errors
...
The PostgreSQL implementation returns 'PAT not found' when no rows match,
while SQLite/MySQL return 'sql: no rows in result set' from QueryRowContext.
Both behaviors are correct - the key fix is that PostgreSQL no longer
throws JSONB errors on missing/malformed data.
Changes:
- Update test assertions to accept either error type
- Fix comment punctuation for godot linter
- Maintain backward compatibility across all database drivers
2026-02-09 21:09:19 +08:00