Releases: BEagle1984/silverback
Releases · BEagle1984/silverback
v3.0.1
v3.0.0
- Add support for MQTT
- Simplify configuration and reduce boiler plate
- Refactor Silverback.Integration to support streaming
- Improve Kafka partitions handling
- Add option to throw an exception if no subscriber is handling a message that was published to the internal bus or was consumed from a message broker
- Handle null messages as Tombstone
- Replace Newtonsoft.Json with System.Text.Json to improve serialization and deserialization performance
- Improve outbound routing customization options with endpoint name resolvers
- Add non-blocking
Produce
/ProduceAsync
/RawProduce
/RawProduceAsync
overloads to IProducer, better suitable for higher throughput scenarios - Refactor broker event handlers
- Add log levels configuration
- Allow header names customization
- Add consumer status information and statistics
- Add basic consumers health check
- Allow broker behaviors to be registered as transient, meaning that an instance will be created per each producer or consumer
- Released some utilities to help writing automated tests involving Silverback.Integration
- Upgrade to Confluent.Kafka 1.6.2
- Upgrade to RabbitMQ.Client 6.2.1
- Fix OutboxWorker not publishing custom headers [#102]
See docs for details.
v2.2.0
v2.1.1
- Multiple message brokers (Kafka and RabbitMQ) can be used together in the same application
- End-to-End message encryption
- Dynamic custom routing of outbound messages
- Better support for message headers
- Binary files support
- The
IIntegrationMessage
is not required to have anId
property anymore (thex-message-id
header will still be generated and if the property exists will continue to be automatically initialized) x-first-chunk-offset
header added by default- [kafka] The
KafkaStasticsEvent
JSON is now being deserialized and provided as object (in addition to the raw JSON) - [kafka] Added support for Apache Avro and schema registry
- [kafka] Upgrade to Confluent.Kafka 1.4.2
- [rabbit] Added consumer
PrefetchSize
andPrefetchCount
settings - [rabbit] Added
AcknowledgeEach
to theRabbitConsumerEndpoint
to define the number of message processed before sending the acknowledgment to the server - [rabbit] Upgrade to RabbitMQ.Client 6.0.0
- Improved message type resolution performance and reliability in
JsonMessageSerializer
LogWithLevel
method added toSkipMessageErrorPolicy
to specify the desired level for the "Message skipped" log entry (the default is now increased toError
)
See docs for details.
v2.0.0
- Created Silverback.Integration.RabbitMQ package to connect Silverback with RabbitMQ
- Messages with an empty body can now be subscribed [#57]
- The Kafka partition start offset can now be manually set when a partition is assigned to the consumer [#57]
- Full support for multiple consumer groups running in the same process [#59]
- A KafkaStatisticsEvents is published also by the KafkaPRoducer
See docs for details.
v1.2.0
v1.1.0
- Added
IEndpointsConfigurator
interface to allow splitting the endpoints configuration across multiple types - Added support for distributed tracing (based on standard System.Diagnostics.DiagnosticSource)
- Added
IProducerBehavior
andIConsumerBehavior
to create an extension point closer to the actual message broker logic
See docs for details.
v1.0.5
- Upgrade to Confluent.Kafka 1.3.0
- Fixed
OutboundQueueHealthCheck
[#43] - The
KafkaProducer
is not disposed by default anymore when aKafkaException
in thrown - Fixed the bug preventing a
KafkaConsumerEndpoint
pointing to multiple topics to be successfully subscribed
See docs for details.