From 6f11d950fb90e484f4daddfbe8a5232aad18d536 Mon Sep 17 00:00:00 2001 From: Victor Sokolov Date: Fri, 5 Sep 2025 15:31:48 +0200 Subject: [PATCH] imagefetcher -> fetcher (#1514) --- {imagefetcher => fetcher}/config.go | 2 +- {imagefetcher => fetcher}/errors.go | 2 +- {imagefetcher => fetcher}/fetcher.go | 4 ++-- {imagefetcher => fetcher}/request.go | 2 +- handlers/processing/request.go | 4 ++-- handlers/stream/handler.go | 10 +++++----- handlers/stream/handler_test.go | 18 +++++++++--------- imagedata/download.go | 8 ++++---- imagedata/errors.go | 4 ++-- imagedata/factory.go | 4 ++-- 10 files changed, 29 insertions(+), 29 deletions(-) rename {imagefetcher => fetcher}/config.go (98%) rename {imagefetcher => fetcher}/errors.go (99%) rename {imagefetcher => fetcher}/fetcher.go (95%) rename {imagefetcher => fetcher}/request.go (99%) diff --git a/imagefetcher/config.go b/fetcher/config.go similarity index 98% rename from imagefetcher/config.go rename to fetcher/config.go index c5b1fad0..6ca2e926 100644 --- a/imagefetcher/config.go +++ b/fetcher/config.go @@ -1,4 +1,4 @@ -package imagefetcher +package fetcher import ( "errors" diff --git a/imagefetcher/errors.go b/fetcher/errors.go similarity index 99% rename from imagefetcher/errors.go rename to fetcher/errors.go index 1d8eac9d..b11f2fb1 100644 --- a/imagefetcher/errors.go +++ b/fetcher/errors.go @@ -1,4 +1,4 @@ -package imagefetcher +package fetcher import ( "context" diff --git a/imagefetcher/fetcher.go b/fetcher/fetcher.go similarity index 95% rename from imagefetcher/fetcher.go rename to fetcher/fetcher.go index 129bb47a..5ef81c65 100644 --- a/imagefetcher/fetcher.go +++ b/fetcher/fetcher.go @@ -1,6 +1,6 @@ -// imagefetcher is responsible for downloading images using HTTP requests through various protocols +// fetcher is responsible for downloading images using HTTP requests through various protocols // defined in transport package -package imagefetcher +package fetcher import ( "context" diff --git a/imagefetcher/request.go b/fetcher/request.go similarity index 99% rename from imagefetcher/request.go rename to fetcher/request.go index 5c90912d..93ed5bfa 100644 --- a/imagefetcher/request.go +++ b/fetcher/request.go @@ -1,4 +1,4 @@ -package imagefetcher +package fetcher import ( "compress/gzip" diff --git a/handlers/processing/request.go b/handlers/processing/request.go index 79e43052..db178ef5 100644 --- a/handlers/processing/request.go +++ b/handlers/processing/request.go @@ -5,9 +5,9 @@ import ( "errors" "net/http" + "github.com/imgproxy/imgproxy/v3/fetcher" "github.com/imgproxy/imgproxy/v3/headerwriter" "github.com/imgproxy/imgproxy/v3/ierrors" - "github.com/imgproxy/imgproxy/v3/imagefetcher" "github.com/imgproxy/imgproxy/v3/imagetype" "github.com/imgproxy/imgproxy/v3/monitoring" "github.com/imgproxy/imgproxy/v3/monitoring/stats" @@ -81,7 +81,7 @@ func (r *request) execute(ctx context.Context) error { } // Respond with NotModified if image was not modified - var nmErr imagefetcher.NotModifiedError + var nmErr fetcher.NotModifiedError if errors.As(err, &nmErr) { r.hwr.SetOriginHeaders(nmErr.Headers()) diff --git a/handlers/stream/handler.go b/handlers/stream/handler.go index 4d1f955c..594994ee 100644 --- a/handlers/stream/handler.go +++ b/handlers/stream/handler.go @@ -7,10 +7,10 @@ import ( "sync" "github.com/imgproxy/imgproxy/v3/cookies" + "github.com/imgproxy/imgproxy/v3/fetcher" "github.com/imgproxy/imgproxy/v3/headerwriter" "github.com/imgproxy/imgproxy/v3/httpheaders" "github.com/imgproxy/imgproxy/v3/ierrors" - "github.com/imgproxy/imgproxy/v3/imagefetcher" "github.com/imgproxy/imgproxy/v3/monitoring" "github.com/imgproxy/imgproxy/v3/monitoring/stats" "github.com/imgproxy/imgproxy/v3/options" @@ -35,9 +35,9 @@ var ( // Handler handles image passthrough requests, allowing images to be streamed directly type Handler struct { - config *Config // Configuration for the streamer - fetcher *imagefetcher.Fetcher // Fetcher instance to handle image fetching - hw *headerwriter.Writer // Configured HeaderWriter instance + config *Config // Configuration for the streamer + fetcher *fetcher.Fetcher // Fetcher instance to handle image fetching + hw *headerwriter.Writer // Configured HeaderWriter instance } // request holds the parameters and state for a single streaming request @@ -52,7 +52,7 @@ type request struct { } // New creates new handler object -func New(config *Config, hw *headerwriter.Writer, fetcher *imagefetcher.Fetcher) (*Handler, error) { +func New(config *Config, hw *headerwriter.Writer, fetcher *fetcher.Fetcher) (*Handler, error) { if err := config.Validate(); err != nil { return nil, err } diff --git a/handlers/stream/handler_test.go b/handlers/stream/handler_test.go index 59c165d5..843ce352 100644 --- a/handlers/stream/handler_test.go +++ b/handlers/stream/handler_test.go @@ -16,9 +16,9 @@ import ( "github.com/stretchr/testify/suite" "github.com/imgproxy/imgproxy/v3/config" + "github.com/imgproxy/imgproxy/v3/fetcher" "github.com/imgproxy/imgproxy/v3/headerwriter" "github.com/imgproxy/imgproxy/v3/httpheaders" - "github.com/imgproxy/imgproxy/v3/imagefetcher" "github.com/imgproxy/imgproxy/v3/options" "github.com/imgproxy/imgproxy/v3/transport" ) @@ -55,9 +55,9 @@ func (s *HandlerTestSuite) SetupTest() { tr, err := transport.New(trc) s.Require().NoError(err) - fc := imagefetcher.NewDefaultConfig() + fc := fetcher.NewDefaultConfig() - fetcher, err := imagefetcher.NewFetcher(tr, fc) + fetcher, err := fetcher.NewFetcher(tr, fc) s.Require().NoError(err) cfg := NewDefaultConfig() @@ -356,9 +356,9 @@ func (s *HandlerTestSuite) TestHandlerCacheControl() { tr, err := transport.New(trc) s.Require().NoError(err) - fc := imagefetcher.NewDefaultConfig() + fc := fetcher.NewDefaultConfig() - fetcher, err := imagefetcher.NewFetcher(tr, fc) + fetcher, err := fetcher.NewFetcher(tr, fc) s.Require().NoError(err) cfg := NewDefaultConfig() @@ -453,8 +453,8 @@ func (s *HandlerTestSuite) TestHandlerCookiePassthrough() { tr, err := transport.New(trc) s.Require().NoError(err) - fc := imagefetcher.NewDefaultConfig() - fetcher, err := imagefetcher.NewFetcher(tr, fc) + fc := fetcher.NewDefaultConfig() + fetcher, err := fetcher.NewFetcher(tr, fc) s.Require().NoError(err) cfg := NewDefaultConfig() @@ -513,8 +513,8 @@ func (s *HandlerTestSuite) TestHandlerCanonicalHeader() { tr, err := transport.New(trc) s.Require().NoError(err) - fc := imagefetcher.NewDefaultConfig() - fetcher, err := imagefetcher.NewFetcher(tr, fc) + fc := fetcher.NewDefaultConfig() + fetcher, err := fetcher.NewFetcher(tr, fc) s.Require().NoError(err) cfg := NewDefaultConfig() diff --git a/imagedata/download.go b/imagedata/download.go index 1897f169..8132f980 100644 --- a/imagedata/download.go +++ b/imagedata/download.go @@ -5,13 +5,13 @@ import ( "net/http" "github.com/imgproxy/imgproxy/v3/config" + "github.com/imgproxy/imgproxy/v3/fetcher" "github.com/imgproxy/imgproxy/v3/ierrors" - "github.com/imgproxy/imgproxy/v3/imagefetcher" "github.com/imgproxy/imgproxy/v3/transport" ) var ( - Fetcher *imagefetcher.Fetcher + Fetcher *fetcher.Fetcher // For tests. This needs to move to fetcher once we will have a way to isolate // the fetcher in tests. @@ -45,12 +45,12 @@ func initDownloading() error { return err } - c, err := imagefetcher.LoadFromEnv(imagefetcher.NewDefaultConfig()) + c, err := fetcher.LoadFromEnv(fetcher.NewDefaultConfig()) if err != nil { return ierrors.Wrap(err, 0, ierrors.WithPrefix("configuration error")) } - Fetcher, err = imagefetcher.NewFetcher(ts, c) + Fetcher, err = fetcher.NewFetcher(ts, c) if err != nil { return ierrors.Wrap(err, 0, ierrors.WithPrefix("can't create image fetcher")) } diff --git a/imagedata/errors.go b/imagedata/errors.go index 2432d9e3..c89edb95 100644 --- a/imagedata/errors.go +++ b/imagedata/errors.go @@ -3,13 +3,13 @@ package imagedata import ( "fmt" + "github.com/imgproxy/imgproxy/v3/fetcher" "github.com/imgproxy/imgproxy/v3/ierrors" - "github.com/imgproxy/imgproxy/v3/imagefetcher" ) func wrapDownloadError(err error, desc string) error { return ierrors.Wrap( - imagefetcher.WrapError(err), 0, + fetcher.WrapError(err), 0, ierrors.WithPrefix(fmt.Sprintf("can't download %s", desc)), ) } diff --git a/imagedata/factory.go b/imagedata/factory.go index da897b6b..72cd0989 100644 --- a/imagedata/factory.go +++ b/imagedata/factory.go @@ -9,7 +9,7 @@ import ( "os" "github.com/imgproxy/imgproxy/v3/asyncbuffer" - "github.com/imgproxy/imgproxy/v3/imagefetcher" + "github.com/imgproxy/imgproxy/v3/fetcher" "github.com/imgproxy/imgproxy/v3/imagetype" "github.com/imgproxy/imgproxy/v3/security" ) @@ -63,7 +63,7 @@ func NewFromBase64(encoded string) (ImageData, error) { } // sendRequest is a common logic between sync and async download. -func sendRequest(ctx context.Context, url string, opts DownloadOptions) (*imagefetcher.Request, *http.Response, http.Header, error) { +func sendRequest(ctx context.Context, url string, opts DownloadOptions) (*fetcher.Request, *http.Response, http.Header, error) { h := make(http.Header) // NOTE: This will be removed in the future when our test context gets better isolation