all repos

smutok @ 47b0d33

yet another tui rss reader (not abandoned, just paused development)
2 files changed, 7 insertions(+), 17 deletions(-)
fix: change the way stream content is parsed
Author: Oleksandr Smirnov olexsmir@gmail.com
Committed at: 2025-12-28 19:20:24 +0200
Change ID: qknlwwrywxvvqwunryrmzqtuzqsotzkw
Parent: 54180a9
M internal/freshrss/client.go

@@ -120,15 +120,11 @@ ID string

Published int64 Title string Author string - Canonical []string + Href string Content string Categories []string TimestampUsec string - Origin struct { - HTMLURL string - StreamID string - Title string - } + FeedID string } type StreamContents struct {

@@ -161,18 +157,12 @@ var ci ContentItem

ci.ID = item.Get("id").String() ci.Title = item.Get("title").String() ci.Published = item.Get("published").Int() - ci.Author = item.Get("author").String() + ci.Author = item.Get("origin.title").String() ci.Content = item.Get("summary.content").String() - ci.Origin.StreamID = item.Get("origin.streamId").String() - ci.Origin.HTMLURL = item.Get("origin.htmlUrl").String() - ci.Origin.Title = item.Get("origin.title").String() + ci.Href = item.Get("alternate|0.href").String() + ci.FeedID = item.Get("origin.streamId").String() ci.TimestampUsec = item.Get("timestampUsec").String() - for _, href := range item.Get("canonical.#.href").Array() { - if h := href.String(); h != "" { - ci.Canonical = append(ci.Canonical, h) - } - } for _, cat := range item.Get("categories").Array() { ci.Categories = append(ci.Categories, cat.String()) }
M internal/freshrss/sync.go

@@ -162,7 +162,7 @@ slog.Debug("got unread items", "len", len(items))

var errs []error for _, item := range items { - if err := f.store.UpsertArticle(ctx, item.TimestampUsec, item.Origin.StreamID, item.Title, item.Content, item.Author, item.Origin.HTMLURL, int(item.Published)); err != nil { + if err := f.store.UpsertArticle(ctx, item.TimestampUsec, item.FeedID, item.Title, item.Content, item.Author, item.Href, int(item.Published)); err != nil { errs = append(errs, err) } }

@@ -206,7 +206,7 @@ slog.Debug("got starred items", "len", len(items))

var errs []error for _, item := range items { - if err := f.store.UpsertArticle(ctx, item.TimestampUsec, item.Origin.StreamID, item.Title, item.Content, item.Author, item.Origin.HTMLURL, int(item.Published)); err != nil { + if err := f.store.UpsertArticle(ctx, item.TimestampUsec, item.FeedID, item.Title, item.Content, item.Author, item.Href, int(item.Published)); err != nil { errs = append(errs, err) } }