From fe0ef8b5795e4e2a4092a22d6a4ace9b6b0a7783 Mon Sep 17 00:00:00 2001 From: Thomas J Faughnan Jr Date: Wed, 29 Nov 2023 17:10:19 -0500 Subject: [PATCH] Fix conditional requests regression The recent HTTP client refactor in 14e25ab9fe09b9951b38e56af2bdff7a0737b280 caused feed refreshes to no longer make conditional requests. Prior to the refactor, `client.WithCacheHeaders` handled this. Now this function is split into `fetcher.WithETag` and `fetcher.WithLastModified` but these functions are only declared and never actually used. Fix this by calling them inside `handler.RefreshFeed`. --- internal/reader/handler/handler.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/internal/reader/handler/handler.go b/internal/reader/handler/handler.go index 559098f0..1d2b5f51 100644 --- a/internal/reader/handler/handler.go +++ b/internal/reader/handler/handler.go @@ -232,6 +232,8 @@ func RefreshFeed(store *storage.Storage, userID, feedID int64, forceRefresh bool requestBuilder.WithUsernameAndPassword(originalFeed.Username, originalFeed.Password) requestBuilder.WithUserAgent(originalFeed.UserAgent, config.Opts.HTTPClientUserAgent()) requestBuilder.WithCookie(originalFeed.Cookie) + requestBuilder.WithETag(originalFeed.EtagHeader) + requestBuilder.WithLastModified(originalFeed.LastModifiedHeader) requestBuilder.WithTimeout(config.Opts.HTTPClientTimeout()) requestBuilder.WithProxy(config.Opts.HTTPClientProxy()) requestBuilder.UseProxy(originalFeed.FetchViaProxy)