You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
feat: add configurable logging support to SDK clients
Introduce a structured logging system that allows SDK consumers to
capture HTTP request/response activity at configurable levels. Logging
is silent by default — no output is produced unless explicitly
configured via LogConfig.
Additionally, request objects that send query parameters (GetFilesMetadataRequest,
GetEarnedRewardsRequest, GetLocationsByUserRequest, GetOffersByUserRequest,
GetSubscriptionsRequest, ActivateOfferRequest, BoostOfferRequest) have
their getter annotations corrected from @JsonProperty to @JsonIgnore,
ensuring these fields are not accidentally serialized into a request body.
Jackson dependencies are bumped from 2.18.2 to 2.18.6.
Key changes:
- Add `LogConfig`, `LogLevel`, `ILogger`, `Logger`, and `ConsoleLogger` to `com.kard.api.core` for opt-in HTTP logging
- Expose `logging(LogConfig)` builder method on `KardApiClientBuilder` and `AsyncKardApiClientBuilder`
- Replace `@JsonProperty` with `@JsonIgnore` on query-parameter getters across multiple request types to prevent incorrect body serialization
- Refactor `RetryInterceptor` to create a fresh `ExponentialBackoff` instance per retry cycle (internal correctness fix)
- Upgrade Jackson dependencies from 2.18.2 to 2.18.6
🌿 Generated with Fern