ayn2op
1c62b37bc6
refactor(cmd): parse log level with slog.Level.UnmarshalText
2026-09-29 01:13:48 -04:00
ayn2op
ce576a42d4
refactor: drop redundant return nil before trailing return nil
2026-09-29 01:13:48 -04:00
ayn2op
129ded84c0
refactor: drop tautological tls tests, password.ErrMsg, and go-cmp
2026-09-29 01:13:48 -04:00
ayn2op
d6415666de
refactor(keyring): inline wrapper package into root
2026-09-29 01:13:48 -04:00
ayn2op
708b9d0357
fix(qr): serialize websocket I/O and keep reading past heartbeat_ack
2026-09-29 00:36:22 -04:00
ayn2op
139a172d75
build(deps): bump arikawa & ningen to latest
2026-09-28 22:39:32 -04:00
ayn2op
acd2fe0050
build(deps): bump arikawa and ningen
2026-09-28 21:19:37 -04:00
ayn2op
3cbf1cda85
docs(README): update preview
2026-09-28 20:28:46 -04:00
ayn2op
8c0506a831
docs(README): move Disclaimer back to bottom (we spoof TLS fingerprint now!)
2026-09-28 20:12:12 -04:00
ayn2op
7e920c1620
build(deps): bump ningen
2026-09-28 20:09:56 -04:00
ayn2op
08f27eb60d
feat(chat): add members tree
2026-09-28 18:51:38 -04:00
ayn2op
05e622e753
refactor(ui): share tree and picker widgets
2026-09-28 18:51:16 -04:00
ayn2op
d9ce1260af
build(deps): bump arikawa and ningen
2026-09-28 18:51:16 -04:00
ayn2op
9dc509e300
refactor(ui): adopt tview Change and Keybind APIs
2026-09-28 18:51:16 -04:00
ayn2op
2b651a1459
refactor(guildstree): move help keymap to keymap.go
2026-09-28 18:51:16 -04:00
ayn2op
3de72a697d
refactor(guildstree): index guild and channel nodes in one map
2026-09-28 18:51:16 -04:00
ayn2op
f04b4e509c
docs(README): remove go report card badge ( #841 )
2026-09-28 16:40:47 -04:00
ayn2op
07733bc436
refactor(ui): use tview/inert for dialogs and pickers
2026-09-27 20:46:49 -04:00
ayn2op
24342490e5
refactor(ui)!: make models immutable values
2026-09-27 20:33:19 -04:00
ayn2op
f45dfd58ad
fix(chat): expire typing indicators by deadline instead of timestamp equality
...
On Windows the coarse clock can return the same time for two addTyper
calls, so a stale expiry matched the extended indicator and removed it
early. Compare the stored deadline against the current time instead.
2026-09-27 19:19:07 -04:00
ayn2op
25bc35212e
build(deps): bump golang.design/x/clipboard from v0.10.0 to v0.11.0
2026-09-27 19:02:13 -04:00
ayn2op
f7115a250c
build(deps): bump github.com/klauspost/compress from v1.20.0 to v1.20.1
2026-09-27 19:00:46 -04:00
ayn2op
eff6da25fd
build(deps): bump github.com/andybalholm/brotli from v1.2.4 to v1.2.5
2026-09-27 18:56:38 -04:00
ayn2op
30810afde2
refactor(ui): migrate to declarative tview
2026-09-27 18:12:18 -04:00
ayn2op
08b41176c0
build(deps): bump golang.design/x/clipboard from v0.9.0 to v0.10.0
2026-09-25 20:05:22 -04:00
ayn2op
219e34aa78
refactor(ui): update tview and migrate to Model.Init
2026-09-24 18:09:16 -04:00
ayn2op
de2f2c94f0
test(config): use method call for applyDefaults in test
2026-09-21 20:14:43 -04:00
ayn2op
9d914c280e
refactor(config): move MIMETypes to top and make applyDefaults a method
2026-09-21 18:57:22 -04:00
ayn2op
5ea609b6ea
build(deps): update to latest
2026-09-21 18:57:22 -04:00
ayn2op
56cfe8386c
docs: remove CLAUDE.md in favor of AGENTS.md
2026-09-20 13:57:52 -04:00
ayn2op
7fb5e8fdf7
feat(config): add sidebar.visible field to hide sidebar (guilds tree) on startup ( #839 )
2026-09-20 11:34:15 -04:00
ayn2op
e87645a180
build(deps): update all dependencies to latest
2026-09-12 14:30:06 -07:00
ayn2op
bbb8cf0d65
refactor(config): use shellwords to parse editor commands ( #838 )
2026-09-12 14:23:32 -07:00
ayn2op
f983dbff0d
build(deps): update all dependencies to latest
2026-09-09 18:34:31 -04:00
ayn2op
c38fc3d9c0
refactor(ui): bump tview and adapt to tview.Screen API
2026-09-09 18:34:29 -04:00
ayn2op
24ced4d8bf
fix(chat): keep original attachment extension and surface open errors
2026-09-06 23:03:07 -04:00
ayn2op
1750d7dfb6
test: use identifier-based names and subtests
2026-09-06 19:38:11 -04:00
ayn2op
39cb1b5698
refactor(chat): unify message list items
2026-09-06 19:38:11 -04:00
ayn2op
8390e9773a
feat(chat): edit latest own message with configurable Up keybind ( #837 )
2026-09-05 01:56:23 -04:00
ayn2op
bdea99d4f9
refactor(chat): simplify member search cache
2026-09-05 01:17:15 -04:00
ayn2op
8ccfd47046
build(deps): bump tview
2026-09-04 23:43:01 -04:00
ayn2op
b7ddfdc050
refactor(ui): simplify picker keybind setup
2026-09-04 16:20:26 -04:00
ayn2op
358ccd546d
refactor(guildstree): simplify model initialization
2026-09-04 14:59:24 -04:00
ayn2op
9146328e59
build: update deps to latest
2026-09-04 00:57:39 -04:00
ayn2op
c5692cac29
style(config): improve theme option spacing
2026-09-02 21:30:53 -04:00
ayn2op
091d4711ea
fix(chat): preserve focus without guilds tree
2026-09-02 20:24:03 -04:00
ayn2op
8f38996b8a
feat(chat): toggle reply mentions from composer
2026-09-02 20:03:49 -04:00
ayn2op
5122bdea4a
fix(root): do not block quit on session cleanup
2026-09-02 18:17:08 -04:00
ayn2op
8b9c28ce56
test(markdown,guildstree,qr,root): use identifier-based names and subtests
2026-09-02 18:09:21 -04:00
ayn2op
9d38982a8f
feat(tls): update browser profile to Chrome 152
2026-09-02 16:49:50 -04:00