diff --git a/reader/processor/processor.go b/reader/processor/processor.go index e0bdf36d..67f50b28 100644 --- a/reader/processor/processor.go +++ b/reader/processor/processor.go @@ -44,7 +44,10 @@ func ProcessFeedEntries(store *storage.Storage, feed *model.Feed, user *model.Us // array used for bulk push 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) if isBlockedEntry(feed, entry) || !isAllowedEntry(feed, entry) { diff --git a/tests/entry_test.go b/tests/entry_test.go index c25019fb..97ce4cbe 100644 --- a/tests/entry_test.go +++ b/tests/entry_test.go @@ -43,7 +43,7 @@ func TestGetAllFeedEntries(t *testing.T) { 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 { t.Fatal(err) } @@ -83,7 +83,7 @@ func TestGetAllCategoryEntries(t *testing.T) { 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 { t.Fatal(err) }