After months of development, Brighter V10 RC1 is finally available! Listed as 10.0.0-preview.6 in releases
, this version introduces significant enhancements, breaking changes, and groundwork for future updates. Below, we break down the key updates and what they mean for developers.
New feature
Here some of the new feature available in Brighter V10
Default mapper
Brighter now supports a default message mapper for unregistered types. By default, it uses JSON serialization, but developers can switch to CloudEvents (JSON mode) or custom mappers. This simplifies configuration while maintaining flexibility.
CloudEvents
Brighter integrates with the CloudEvents standard for event-driven architectures. Binary mode is the default, automatically setting headers for compatibility, though JSON mode remains optional via attributes or the default mapper.
Scheduler
A built-in in-memory scheduler enables message/command/event scheduling. Additionally, Brighter now integrates with external systems like AWS Scheduler, Hangfire, Quartz.NET, and Azure Service Bus.
MongoDB Support
MongoDB is now fully supported, including outbox, inbox, claim-check patterns, and distributed locking. This expands Brighter’s compatibility with NoSQL ecosystems.
RabbitMQ C# Library V7
Developers can now leverage the latest RabbitMQ C# client (V7) for improved performance and compatibility with modern messaging workflows.
Breaking changes
Here some of breaking changes on V10
Async Interface Overhaul
Most interfaces now provide both synchronous and asynchronous versions, aligning with modern .NET practices and ensuring better scalability for async-first applications.
Mapper
The new IAmAMessageMapperAsync
interface handles async pipelines. Additionally, MapToMessage
now accepts a Publication parameter, enabling dynamic mapping based on publication settings (e.g., matching RequestType).
Primitive Obsession Reduction
Primitive types like string for IDs and partition keys have been replaced with dedicated types (Id
, PartitionKey
).
Dependency Injection Registration
The registration process for Microsoft DI has been redesigned, requiring updates to startup configurations for compatibility with V10.
Upcoming Features for RC2/Final Release
While RC1 stabilizes core changes, work continues on additional features:
Framework Adaptors
Adaptors for JustSaying
and MassTransit
will simplify integration with these popular messaging libraries, reducing boilerplate code.
AWS SDK v4 Support
A new package will add compatibility with AWS SDK v4, allowing gradual migration from v3 without disrupting existing workflows.
RocketMQ Integration
RocketMQ support will empower users with a scalable, distributed messaging system, ideal for high-throughput architectures.
Google Cloud Platform (GCP) Support
Brighter will expand its cloud capabilities with GCP integrations for Pub/Sub, GCS, Firestore, and Spanner.
Enhanced Nullable Reference Types
Improved support for C# nullable features will reduce runtime null exceptions and enhance code reliability.
Conclusion
Brighter V10 RC1 marks a major milestone, balancing innovation with backward compatibility. While breaking changes require careful migration, they pave the way for a more robust and flexible framework. Stay tuned for RC2 and the final release, which will further expand Brighter’s capabilities across cloud platforms and messaging ecosystems.
Top comments (0)