Faststream

Latest version: v0.5.37

Safety actively analyzes 723166 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 5 of 15

0.5.13

What's Changed

* feat: nats filter JS subscription support by Lancetnik in https://github.com/airtai/faststream/pull/1519
* fix: correct RabbitExchange processing by OTEL in broker.publish case by Lancetnik in https://github.com/airtai/faststream/pull/1521
* fix: correct Nats ObjectStorage get file behavior inside watch subscriber by Lancetnik in https://github.com/airtai/faststream/pull/1523
* Resolve Issue 1386, Add rpc_prefix by aKardasz in https://github.com/airtai/faststream/pull/1484
* fix: correct spans linking in batches case by draincoder in https://github.com/airtai/faststream/pull/1532
* fix (1539): correct anyio.create_memory_object_stream annotation by Lancetnik in https://github.com/airtai/faststream/pull/1541
* fix: correct publish_coverage CI by Lancetnik in https://github.com/airtai/faststream/pull/1536
* Add NatsBroker.new_inbox() by maxalbert in https://github.com/airtai/faststream/pull/1543
* fix (1544): correct Redis message nack & reject signature by Lancetnik in https://github.com/airtai/faststream/pull/1546

New Contributors
* aKardasz made their first contribution in https://github.com/airtai/faststream/pull/1484
* maxalbert made their first contribution in https://github.com/airtai/faststream/pull/1543

**Full Changelog**: https://github.com/airtai/faststream/compare/0.5.12...0.5.13

0.5.12

What's Changed

Now, `FastStream` provides users with the ability to pass the `config` dictionary to `confluent-kafka-python` for greater customizability. The following example sets the parameter `topic.metadata.refresh.fast.interval.ms`'s value to `300` instead of the default value `100` via the `config` parameter.

python
from faststream import FastStream
from faststream.confluent import KafkaBroker

config = {"topic.metadata.refresh.fast.interval.ms": 300}
broker = KafkaBroker("localhost:9092", config=config)
app = FastStream(broker)


* Update Release Notes for 0.5.11 by faststream-release-notes-updater in https://github.com/airtai/faststream/pull/1511
* docs: update filters example by Lancetnik in https://github.com/airtai/faststream/pull/1516
* Add config param to pass additional parameters to confluent-kafka-python by kumaranvpl in https://github.com/airtai/faststream/pull/1505


**Full Changelog**: https://github.com/airtai/faststream/compare/0.5.11...0.5.12

0.5.11

What's Changed
* Update Release Notes for 0.5.10 by faststream-release-notes-updater in https://github.com/airtai/faststream/pull/1482
* feat: provide with an ability to create default RMQ Exchange by Lancetnik in https://github.com/airtai/faststream/pull/1485
* docs: fix typos by crazymidnight in https://github.com/airtai/faststream/pull/1489
* chore: update CI triggers to minify useless runs by Lancetnik in https://github.com/airtai/faststream/pull/1483
* Update link to badges by kumaranvpl in https://github.com/airtai/faststream/pull/1496
* Run tests every day at 12:00 AM by kumaranvpl in https://github.com/airtai/faststream/pull/1497
* Chore: update deps by kumaranvpl in https://github.com/airtai/faststream/pull/1503
* fix: include NatsRouter streams to original broker by Lancetnik in https://github.com/airtai/faststream/pull/1509

New Contributors
* crazymidnight made their first contribution in https://github.com/airtai/faststream/pull/1489

**Full Changelog**: https://github.com/airtai/faststream/compare/0.5.10...0.5.11

0.5.10

What's Changed

Now you can return Response class to set more specific outgoing message parameters:

python
from faststream import Response

broker.subscriber("in")
broker.subscriber("out")
async def handler():
return Response(body=b"", headers={})


* Pass logger to confluent producer and consumer by kumaranvpl in https://github.com/airtai/faststream/pull/1464
* Fixes 1412 with `TestKafkaBroker` behaviour where Consumer Groups weren't being respected by sifex in https://github.com/airtai/faststream/pull/1413
* Chore: update dependency versions by kumaranvpl in https://github.com/airtai/faststream/pull/1478
* Remove typing-extensions version restriction by kumaranvpl in https://github.com/airtai/faststream/pull/1477
* feat (1431): add Response class by Lancetnik in https://github.com/airtai/faststream/pull/1481

New Contributors
* sifex made their first contribution in https://github.com/airtai/faststream/pull/1413

**Full Changelog**: https://github.com/airtai/faststream/compare/0.5.9...0.5.10

0.5.9

What's Changed
* Update Release Notes for 0.5.8 by faststream-release-notes-updater in https://github.com/airtai/faststream/pull/1462
* Exclude typing_extensions version 4.12.* by kumaranvpl in https://github.com/airtai/faststream/pull/1467
* fix: add group/consumer to hash to avoid overwriting by fbraem in https://github.com/airtai/faststream/pull/1463
* Bump version to 0.5.9 by kumaranvpl in https://github.com/airtai/faststream/pull/1468

New Contributors
* fbraem made their first contribution in https://github.com/airtai/faststream/pull/1463

**Full Changelog**: https://github.com/airtai/faststream/compare/0.5.8...0.5.9

0.5.8

What's Changed

This is the time for a new **NATS** features! **FastStream** supports **NATS Key-Value** and **Object Storage** subscribption features in a native way now (big thx for sheldygg)!

1. KeyValue creation and watching API added (you can read updated [documentation section](https://faststream.airt.ai/latest/nats/jetstream/key-value/) for changes):

python
from faststream import FastStream, Logger
from faststream.nats import NatsBroker

broker = NatsBroker()
app = FastStream(broker)

broker.subscriber("some-key", kv_watch="bucket")
async def handler(msg: int, logger: Logger):
logger.info(msg)

app.after_startup
async def test():
kv = await broker.key_value("bucket")
await kv.put("some-key", b"1")


2. ObjectStore API added as well (you can read updated [documentation section](https://faststream.airt.ai/latest/nats/jetstream/object/) for changes):

python
from faststream import FastStream, Logger
from faststream.nats import NatsBroker

broker = NatsBroker()
app = FastStream(broker)

broker.subscriber("file-bucket", obj_watch=True)
async def handler(filename: str, logger: Logger):
logger.info(filename)

app.after_startup
async def test():
object_store = await broker.object_storage("file-bucket")
await object_store.put("some-file.txt", b"1")


3. Also now you can use just `pull_sub=True` instead of `pull_sub=PullSub()` in basic case:

python
from faststream import FastStream, Logger
from faststream.nats import NatsBroker

broker = NatsBroker()
app = FastStream(broker)

broker.subscriber("test", stream="stream", pull_sub=True)
async def handler(msg, logger: Logger):
logger.info(msg)


Finally, we have a new feature, related to all brokers: special flag to suppress automatic RPC and reply_to responses:

python
broker.subscriber("tests", no_reply=True)
async def handler():
....

will fail with timeout, because there is no automatic response
msg = await broker.publish("msg", "test", rpc=True)


* fix: when headers() returns None in AsyncConfluentParser, replace it with an empty tuple by andreaimprovised in https://github.com/airtai/faststream/pull/1460
* Implement Kv/Obj watch. by sheldygg in https://github.com/airtai/faststream/pull/1383
* feat: add subscriber no-reply option by Lancetnik in https://github.com/airtai/faststream/pull/1461

New Contributors
* andreaimprovised made their first contribution in https://github.com/airtai/faststream/pull/1460

**Full Changelog**: https://github.com/airtai/faststream/compare/0.5.7...0.5.8

Page 5 of 15

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.