Releases: kpn/combadge
Releases · kpn/combadge
4.0.2
4.0.1
4.0.0
3.2.0
3.1.0
3.0.1
3.0.0
Notable changes
- Response markers allow transforming response payload before validating it with a model. This release includes the basic built-in
Map
andStatusCodeMixin
markers as a proof-of-concept. More response markers will be added before3.0.0
to restore similar functionality from2.x
- Preparation work to reduce coupling to Pydantic. Simple response types, which are not data classes or models, are already supported without a need to wrap them into
BaseModel
- Fixed the critical bug when Combadge failed on non-dict responses
- Re-organized documentation
Migrating Protocol
classes from 2.x
- Replace
Json
andJsonField
markers withPayload
andField
, correspondingly - Replace
StatusCode
,Content
, andReason
pseudo-fields with response markers
All changes
💥 Breaking changes
- BREAK: refactor
BaseBackendRequest
by @eigenein in #66 - BREAK: refactor request mixins and markers by @eigenein in #67
- BREAK: get rid of the marker shortcuts 🧚 by @eigenein in #72
- BREAK: redesign response markers by @eigenein in #84
- BREAK: make marker interfaces more consistent with each other by @eigenein in #85
⚡️ Improvements
- OPT: group request preparers by their corresponding parameters by @eigenein in #71
- NEW: support response markers on HTTPX and Zeep by @eigenein in #73
- NEW: implement the basic response markers by @eigenein in #74
- OPT: re-organize the docs by @eigenein in #75
- NEW: support Python 3.12 by @eigenein in #78
- NEW: test on PyPy 3.10 by @eigenein in #79
- BREAK: add the
Map
core response marker by @eigenein in #80 - NEW: markers
GetItem
,Drop
,ReasonPhraseMixin
,TextMixin
, andStatusCode
by @eigenein in #83
🐛 Fixes
🎨 Other changes
- OPT: Update all non-major dependencies ⬆️ by @renovate in #63
- OPT: extract
combadge.core.BaseRequest
by @eigenein in #65 - OPT: refactor
Signature
by @eigenein in #69 - OPT: missing return type does not need to be wrapped into
RootModel
by @eigenein in #70 - OPT: replace
RootModel
withTypeAdapter
by @eigenein in #76 - OPT: remove
RootModel
where it is unnecessary by @eigenein in #82 - OPT: add
@override
decorators and fixpytest
imports by @eigenein in #86 - OPT: Update all non-major dependencies ⬆️ by @renovate in #87
Full Changelog: 2.0.1...3.0.0
3.0.0rc3
3.0.0rc2
3.0.0rc1
Notable changes
- Response markers allow transforming response payload before validating it with a model. This release includes the basic built-in
Map
andStatusCodeMixin
markers as a proof-of-concept. More response markers will be added before3.0.0
to restore similar functionality from2.x
- Preparation work to reduce coupling to Pydantic. Simple types, which are not data classes or models, are already supported without a need to wrap them into
BaseModel
- Fixed the critical bug when Combadge failed on non-dict responses
- Re-organized documentation
Migrating Protocol
classes from 2.x
- Replace
Json
andJsonField
markers withPayload
andField
, correspondingly
All changes
💥 Breaking changes
- BREAK: refactor
BaseBackendRequest
by @eigenein in #66 - BREAK: refactor request mixins and markers by @eigenein in #67
- BREAK: get rid of the marker shortcuts 🧚 by @eigenein in #72
⚡️ Improvements
- OPT: group request preparers by their corresponding parameters by @eigenein in #71
- NEW: support response markers on HTTPX and Zeep by @eigenein in #73
- NEW: implement the basic response markers by @eigenein in #74
- OPT: re-organize the docs by @eigenein in #75
- NEW: support Python 3.12 by @eigenein in #78
- NEW: test on PyPy 3.10 by @eigenein in #79
- BREAK: add the
Map
core response marker by @eigenein in #80
🐛 Fixes
🎨 Other changes
- OPT: Update all non-major dependencies ⬆️ by @renovate in #63
- OPT: extract
combadge.core.BaseRequest
by @eigenein in #65 - OPT: refactor
Signature
by @eigenein in #69 - OPT: missing return type does not need to be wrapped into
RootModel
by @eigenein in #70 - OPT: replace
RootModel
withTypeAdapter
by @eigenein in #76 - OPT: remove
RootModel
where it is unnecessary by @eigenein in #82
Full Changelog: 2.0.1...3.0.0rc1