Make configured FeedReader defaults available throughout remote requests and custom transports.
Scope
Apply option resolution to stream/2, stream_verified/2, and fetch_and_parse/2, including :max_items validation before download.
Allow application config to select :http_client and provide custom transport-specific keyword options.
Pass configured options through to FeedReader.Transport.request/2; call-level options override matching config keys.
Cover configured download limits and retry settings without changing existing defaults.
Acceptance
Tests verify configured transport selection, custom option pass-through, call-level overrides, and configured remote limits.
Keep this PR below 150 changed lines, counting additions and deletions including tests.
## Goal
Make configured FeedReader defaults available throughout remote requests and custom transports.
## Scope
- Apply option resolution to `stream/2`, `stream_verified/2`, and `fetch_and_parse/2`, including `:max_items` validation before download.
- Allow application config to select `:http_client` and provide custom transport-specific keyword options.
- Pass configured options through to `FeedReader.Transport.request/2`; call-level options override matching config keys.
- Cover configured download limits and retry settings without changing existing defaults.
## Acceptance
- Tests verify configured transport selection, custom option pass-through, call-level overrides, and configured remote limits.
- Keep this PR below 150 changed lines, counting additions and deletions including tests.
mmacia
self-assigned this 2026-10-27 23:42:11 +00:00
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.
Goal
Make configured FeedReader defaults available throughout remote requests and custom transports.
Scope
stream/2,stream_verified/2, andfetch_and_parse/2, including:max_itemsvalidation before download.:http_clientand provide custom transport-specific keyword options.FeedReader.Transport.request/2; call-level options override matching config keys.Acceptance