mirror of https://github.com/miniflux/v2.git
Process older entries first
Feed entries are usually ordered from most to least recent. Processing older entries first ensures that their creation timestamp is lower than that of newer entries. This is useful when we order by creation, because then we get a consistent timeline.
This commit is contained in:
parent
ac8f64d7a1
commit
034e46700c
|
@ -44,7 +44,10 @@ func ProcessFeedEntries(store *storage.Storage, feed *model.Feed, user *model.Us
|
||||||
// array used for bulk push
|
// array used for bulk push
|
||||||
entriesToPush := model.Entries{}
|
entriesToPush := model.Entries{}
|
||||||
|
|
||||||
for _, entry := range feed.Entries {
|
// Process older entries first
|
||||||
|
for i := len(feed.Entries) - 1; i >= 0; i-- {
|
||||||
|
entry := feed.Entries[i]
|
||||||
|
|
||||||
logger.Debug("[Processor] Processing entry %q from feed %q", entry.URL, feed.FeedURL)
|
logger.Debug("[Processor] Processing entry %q from feed %q", entry.URL, feed.FeedURL)
|
||||||
|
|
||||||
if isBlockedEntry(feed, entry) || !isAllowedEntry(feed, entry) {
|
if isBlockedEntry(feed, entry) || !isAllowedEntry(feed, entry) {
|
||||||
|
|
|
@ -43,7 +43,7 @@ func TestGetAllFeedEntries(t *testing.T) {
|
||||||
t.Fatal(`Filtered entries should be different than previous results`)
|
t.Fatal(`Filtered entries should be different than previous results`)
|
||||||
}
|
}
|
||||||
|
|
||||||
filteredResultsByEntryID, err := client.FeedEntries(feed.ID, &miniflux.Filter{BeforeEntryID: allResults.Entries[0].ID})
|
filteredResultsByEntryID, err := client.FeedEntries(feed.ID, &miniflux.Filter{AfterEntryID: allResults.Entries[0].ID})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
@ -83,7 +83,7 @@ func TestGetAllCategoryEntries(t *testing.T) {
|
||||||
t.Fatal(`Filtered entries should be different than previous results`)
|
t.Fatal(`Filtered entries should be different than previous results`)
|
||||||
}
|
}
|
||||||
|
|
||||||
filteredResultsByEntryID, err := client.CategoryEntries(category.ID, &miniflux.Filter{BeforeEntryID: allResults.Entries[0].ID})
|
filteredResultsByEntryID, err := client.CategoryEntries(category.ID, &miniflux.Filter{AfterEntryID: allResults.Entries[0].ID})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
t.Fatal(err)
|
t.Fatal(err)
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue