What's Changed
- fix: stop subscribers concurrently on broker shutdown by @davidsmfreire in #3225
- fix(nats): batch consuming by @draincoder in #3238
- fix: do not re-raise exceptions in FakeContext by @Vitaly312 in #3244
- fix(redis): stop ListBatchPublisher from passing as a ListPublisher by @vyhuholl in #3242
- fix(kafka): log partition assignment when a custom rebalance listener… by @vyhuholl in #3241
- fix(mqtt): import MQTT when only the OpenTelemetry API is installed by @SinitsynAndrey in #3261
- Fix: exit already entered middlewares if one fails to enter by @Vitaly312 in #3252
- fix: strip credentials from AsyncAPI specification URLs by @Vitaly312 in #3239
- fix(redis): wait for the actual reply in request by @Vitaly312 in #3277
- fix(kafka): rewind every partition of a batch on nack by @powersemmi in #3281
- fix(redis): deliver test batches to non-batch list subscribers by @zhechen-cs in #3276
- fix: apply ack_policy if error occurs before handler (in middleware/parser) by @Vitaly312 in #3272
- fix(nats): clean up failed JetStream request subscriptions by @Kuang-xianxin in #3097
- fix(redis): preserve empty messages in manual list reads by @zhechen-cs in #3275
- fix(redis): honor no_ack in manual stream reads by @zhechen-cs in #3274
- feat (#3065): name the context annotation when a handler is hinted with a driver class by @MannXo in #3068
- feat(mqtt): Support CONNECT MQTT5 properties, expose UNSUBACK and CONNACK properties by @borisalekseev in #3247
- feat(kafka): add Topic schema and hang declare on TopicPartition by @ce1ebrimbor in #3223
- feat(testing): Kafka handlers and publishers assert on
keyandpartitionby @Lancetnik in #3113 - Feature: Implementation of the AsyncContextManager interface for Application #3228 by @ProstoKiReal in #3233
- feat: 2978 snapshot redis and nats by @StepanKatin in #3260
- feat(rabbit): add connection event callbacks by @C3EQUALZz in #3266
- Add MWS to ADOPTERS.md by @dolfinus in #3248
- Pass
api_versionandclient_rackonly to an aiokafka that takes them by @vyhuholl in #3237 - Handover the message for the middleware for the on_receive method by @ApusBerliozi in #3235
- Require a destination in subscriber() and publisher() overloads by @vyhuholl in #3234
- refactor(redis): bind client and group to stream messages by @Vitaly312 in #3264
- refactor: replace FakeContext with contextlib.nullcontext by @Lancetnik in #3246
- test: add syrupy JSON snapshot across NATS by @StepanKatin in #3249
- ci: check the docs links 4 at a time and cap the lychee retry wait by @Lancetnik in #3250
- ci: drop stale zizmor ignores and keep trigger suppressions inline by @Lancetnik in #3232
- docs: expand international FastStream adoption evidence by @Lancetnik in #3258
- docs(nats): document broker event callbacks by @C3EQUALZz in #3265
- docs(nats): say that a pull batch is not filled up to batch_size by waiting by @Lancetnik in #3236
New Contributors
- @davidsmfreire made their first contribution in #3225
- @ProstoKiReal made their first contribution in #3233
- @SinitsynAndrey made their first contribution in #3261
- @zhechen-cs made their first contribution in #3276
- @Kuang-xianxin made their first contribution in #3097
- @MannXo made their first contribution in #3068
Full Changelog: 0.7.7...0.7.8