All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.17.0 (2026-11-05)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.16.0 (2026-10-26)
- http-httpx: export ObservabilityOptions and assert all in typing tests (36b4089)
- http-httpx: export HttpxRequestAdapter and KiotaClientFactory from kiota_http package (06f4492)
- http-httpx: export HttpxRequestAdapter and KiotaClientFactory from kiota_http package (0571b03)
- http: handle null request, keep span open over call, and isolate options in HeadersInspectionHandler (5dc3d01)
- http: handle null request, keep span open over call, and isolate options in HeadersInspectionHandler (1a7350a)
- http: improve parameters name decoding precision and span lifecycle (806a09d)
- http: improve parameters name decoding precision and span lifecycle (f654760)
- http: isolate parent span per request, extend user agent span over transport, and record telemetry errors (524e2a3)
- http: isolate parent span per request, extend user agent span over transport, and record telemetry errors (73ff55f)
- http: preserve repeated single value headers and assert span open during transport (7f2763c)
- http: preserve request parent span across retries and transport cleanup (a73da33)
1.15.0 (2026-10-21)
- add Python 3.15 support to all packages (0815ace)
- http: call RedirectHandler.increment again (8cdbee3)
- http: consider port in redirect handler same origin check (a0a1b72)
- http: consider port in redirect handler same origin check (69925c0)
- http: count redirects instead of building a history in RedirectHandler (4127807)
- http: end the deserialization spans in a finally instead of a with block (f813ad8)
- http: keep the UrlReplaceHandler span open over the downstream call (6b43a82)
- http: pass mypy --strict in middleware options and fix three option bugs (2d13770)
- http: pass mypy --strict in middleware options and fix three option bugs (9b813a6)
- http: pass mypy --strict in the other middleware handlers and fix four handler bugs (9ff5c10)
- http: pass mypy --strict in the other middleware handlers and fix four handler bugs (af83c26)
- http: pass mypy --strict in the request adapter and end its spans on every path (9bb22a1)
- http: pass mypy --strict in the request adapter and end its spans on every path (6f507de)
- http: pass mypy --strict in the retry handler and pipeline and fix the bugs it shows (6ddcf12)
- http: pass mypy --strict in the retry handler and pipeline and fix the bugs it shows (fb16c11)
- http: scope the adapter's deserialization spans with a with block (c654d2d)
- http: trim response media types before parser lookup (11f2883)
- http: trim response media types before parser lookup (03291e1)
1.14.4 (2026-10-14)
- abstractions: default the type params of RequestAdapter and ParsableFactory (47b8104)
- keep RequestType importable and make HttpxRequestAdapter a RequestAdapter[httpx.Request] (0ad6349)
1.14.3 (2026-10-13)
- declare public exports for strict type checkers and ship py.typed in bundle (cf69dc3)
- declare public exports for strict type checkers and ship py.typed in bundle (8a657b4)
1.14.2 (2026-10-05)
- http: honor and deprecate HttpxRequestAdapter's base_url argument (85c6976)
- http: honor and deprecate HttpxRequestAdapter's base_url argument (f2206fd)
- http: warn when base_url is passed as an empty string (af66edd)
1.14.1 (2026-09-25)
- http: name the status code for an error without a body and end the get_object_value span (480ad44)
- http: name the status code for an error without a body and end the get_object_value span (0c94dd8)
- http: set url.uri_template only when the request has a template (b442a5c)
- http: set url.uri_template only when the request has a template (431540a)
1.14.0 (2026-09-21)
- add support for the HTTP QUERY verb (RFC 10008) (ade9630)
- Add support for the HTTP QUERY verb (RFC 10008) (6fbde05)
- don't turn redirected QUERY requests into GETs (96b1113)
1.13.0 (2026-09-18)
- http: implement body inspection handler (bb78cc0)
- http: implement body inspection handler (closes #418) (244d00a)
- http: address body inspection review feedback (ee0ea54)
- http: align inspection guard and span lifecycle (867f2e6)
- http: close the wrapped async transport (0590bc3)
- http: close the wrapped async transport (09acb74)
- http: eliminate request options reflection across middleware handlers in favor of request extensions (d9180bb)
- http: end redirect and CAE retry spans (ac310b4)
- http: end redirect and CAE retry spans (ee1682a), closes #508
- http: guard body inspection fast paths (22d08e5)
- http: isolate captures and byte accounting (b80f4fc)
- http: preserve inspection stream state (1dc4c07)
- http: preserve options with request extensions (eaa50db)
- http: preserve restored response lifecycle (ae25c49)
- http: read request extensions in body inspection and fallback to request.options in redirect handler (925196e)
1.12.3 (2026-09-11)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.12.2 (2026-09-10)
- give each request configuration and headers inspection handler its own HeadersCollection (e1d47d6)
1.12.1 (2026-09-04)
- keep the parse-failure APIError message stable and record the cause on the span (5604794)
- raise APIError when an error body cannot be parsed (c6e13cd)
- raise APIError when an error body cannot be parsed (41fdc28)
1.12.0 (2026-08-27)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.9 (2026-08-14)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.8 (2026-08-10)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.7 (2026-06-30)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.6 (2026-06-23)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.5 (2026-06-19)
1.11.4 (2026-06-19)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.3 (2026-06-19)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.2 (2026-06-18)
- version: bump version to 1.11.1 for all packages and update dependencies accordingly (89cc424)
- version: bump version to 1.11.1 for all packages and update dependencies accordingly (cfa9aab)
1.11.1 (2026-06-16)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.11.0 (2026-06-16)
- pipeline: add Azure Pipelines configuration for building and publishing Kiota Python packages to PyPI (#562) (a0e7a88)
1.10.3 (2026-06-07)
- close streaming responses before retrying (d5ac3ee)
- close streaming responses before retrying (88fe8fd)
1.10.2 (2026-05-28)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.10.1 (2026-04-08)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.10.0 (2026-04-07)
- add Python 3.14 classifier to all pyproject.toml files (6c13439)
1.9.10 (2026-03-12)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.9.9 (2026-03-02)
- add header removal handler (d066e9c)
- add header removal handler (67bb784)
- add header removal handler (44e8d94)
- add header removal handler (b64ec6e)
- add header removal handler (648d31b)
- add header removal handler (9700ed9)
1.9.8 (2025-12-29)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.9.7 (2025-09-09)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.9.6 (2025-08-21)
- ensures BaseMiddleware always creates a new span instead of returning the current span (8cf1771)
- ensures BaseMiddleware creates a new span instead of returning the current span (8ad6559)
1.9.5 (2025-07-18)
- use asyncio.sleep for non-blocking delay in RetryHandler (6fa6ca5)
- use asyncio.sleep for non-blocking delay in RetryHandler (93f409d)
1.9.4 (2025-06-27)
- grab the first value if the server response contains a comma (#482) (dc32a10)
- only use base_uri from http client (b5e2fd1)
- only use base_uri from http client (9b0ec30)
1.9.3 (2025-03-24)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.9.2 (2025-02-06)
- return error response if CAE claims are not present in WWW-Authenticate header (068a92f)
- return error response if CAE claims are not present in WWW-Authenticate header (b86e347)
1.9.1 (2025-01-29)
- removes the urllib3 extraneous dependency (a0ad6d5)
- ensure 304 status code does not result in an error (1b0d8ac)
- use the httpx client base url when available (e0b0421)
1.9.0 (2025-01-20)
1.8.0 (2025-01-17)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.7.1 (2025-01-15)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.7.0 (2025-01-13)
1.6.8 (2025-01-02)
1.6.7 (2024-12-17)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.6.6 (2024-12-05)
1.6.5 (2024-12-05)
- outdated documentation links (f298ba2)
1.6.4 (2024-12-04)
- bumps httpx minimum version to avoid confusion with API breaking changes (bfb5bb7)
1.6.3 (2024-12-02)
- Ensure calculated retry delay validated against correct maximum value of 180 secs (886f28e)
- Ensures retry count is incremented based on value in retry-attempt header (c655fa2)
- Fixes retry handler exponential back-off to consider the delay specified in the retry handler option (fd87c67)
1.6.2 (2024-11-11)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.6.1 (2024-11-09)
- fixes typing issues discovered from github api generation (92cf4c5)
- fixes typing issues discovered from github api generation (6e68068)
- type information for collection of primitives (b3afe83)
1.6.0 (2024-10-28)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.5.0 (2024-10-22)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.4.6 (2024-10-18)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.4.5 (2024-10-16)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.4.4 (2024-10-16)
- microsoft-kiota-http: Synchronize microsoft-kiota versions
1.4.3 (2024-10-16)
- include licence file in distribution package. (645af28)
1.4.1 (2024-10-15)
- include licence file in distribution package. (645af28)
1.4.0 (2024-10-14)
- Updated HTTP span attributes to comply with updated OpenTelemetry semantic conventions. #409
- Avoid raising an exception when a relative url is used as redirect location.
- Do not use mutable default arguments for HttpxRequestAdapter.#383
- Bugfix issues with middleware maintaining state across requests.#281
- Fix issue with redirect handler not closing old responses.#299
- Added support for
XXXstatus code error mapping in RequestAdapter.#280
- Fixed bug with redirect handler maintaing
max_redirectacross requests.#246
- Added headers inspection handler to allow clients to inspect request and response headers.
- Added support for additional status codes.
- GA release.
- Decoupled uri decoding logic used for Telemetry span naming from logic used for Parameter middleware
- Added support for providing custom client when creating with middleware.
- Replace default transport with kiota transport when using custom client with proxy.
- Ensures only URL query parameter names are decoded by
ParametersNameDecodingHandler. [#207]
- Added support for continuous access evaluation.
- Added a translator method to change a
RequestInformationobject into a HTTPX client request object. - Enabled backing store support
- Added a url replace handler for replacing url segments.
- Fixes bug in getting content from redirected request.
- Includes Response headers in APIException for failed requests.
- Fixed bug with mapping when deserializing primitive response types.
- Added the HTTP response status code on APIError class.
- Fixed bug with middleware not respecting request options.
- Enabled configuring of middleware during client creation by passing custom options in call to create with default middleware. #56
- Changes the ResponeHandler parameter in RequestAdapter to be a RequestOption