Releases: prkumar/uplink
Releases · prkumar/uplink
v0.9.7
v0.9.6
Added
- Add a new base class,
uplink.retry.RetryBackoff
, which can be extended to
implement custom backoff strategies. An instance of aRetryBackoff
subclass
can be provided through thebackoff
argument of the@retry
decorator.
(#238)
Changed
- Bump minimum version of
six
to1.13.0
. (#246)
Fixed
- Fix
@returns.json
to cast JSON response (or field referenced by thekey
argument) using thetype
argument when the given type is callable. This
restores behavior that was inadvertently changed in v0.9.3. (#215) - Remove all usages of
asyncio.coroutine
in the library code to fix warnings
related to the function's deprecation in Python 3.8+. (#203)
v0.9.5
v0.9.4
Fixed
- A type set as a consumer method's return annotation should not be used to
deserialize a response object if no registered converters can handle the type.
(3653a672ee)
v0.9.3
v0.9.2
v0.9.1
v0.9.0
Added
- Create consumer method templates to reduce boilerplate in request
definitions. (#151, #159) Context
argument annotation to pass request-specific information to
middleware. (#143, #155)Session.context
property to pass session-specific information to
middleware. (#143, #155)- Built-in authentication support for API tokens in the querystring
and header, Bearer tokens, and multi-auth. (#137)
Fixed
- Schema defined using
@returns.*
decorators should override the
consumer method's return annotation. (#144, #154) @returns.*
decorators should propagate to all consumer method when used
as a class decorator. (#145, #154)- Decorating a
Consumer
subclass no longer affects other subclasses. (#152)
Changed
- Renamed
uplink.retry.stop.DISABLE
touplink.retry.stop.NEVER
v0.8.0
Added
- A
retry
decorator to enable reattempts of failed requests. (#132) - A
ratelimit
decorator to constrain consumers to making some maximum number
of calls within a given time period. (#132) Timeout
argument annotation to be able to pass the timeout as a consumer
method argument or to inject it as a transaction hook using aConsumer
instance's_inject
method. (#133 by @daa)
Changed
Consumer
subclasses now inherit class decorators from their
Consumer
parents, so those decorators are also applied to the subclasses'
methods that are decorated with@get
,@post
,@patch
, etc.
(#138 by @daa)
Fixed
v0.7.0
Added
Consumer.exceptions
property for handling common client exceptions in a client-agnostic way. (#117)- Optional argument
requires_consumer
forresponse_handler
anderror_handler
; when set toTrue
, the registered callback should accept a reference to aConsumer
instance as its leading argument. (#118)
Changed
- For a
Query
-annotated argument, aNone
value indicates that the query parameter should be excluded from the request. Previous behavior was to encode the parameter as...?name=None
. To retain this behavior, specify the newencode_none
parameter (i.e.,Query(..., encode_none="None")
). (#126 by @nphilipp)
Fixed
- Support for changes to
Schema().load
andSchema().dump
inmarshmallow
v3. (#109)