Releases: CodeShayk/SourceFlow.Net
v2.0.0
SourceFlow.Net v2.0.0 - Changelog
Release Date: TBC
Status: In Development
Note: This release includes AWS cloud integration support. Azure cloud integration will be available in a future release.
🎉 Major Changes
Cloud Core Consolidation
The SourceFlow.Cloud.Core project has been consolidated into the main SourceFlow package. This architectural change simplifies the dependency structure and reduces the number of separate packages required for cloud integration.
Benefits:
- ✅ Simplified package management (one less NuGet package)
- ✅ Reduced build complexity
- ✅ Improved discoverability (cloud functionality is part of core)
- ✅ Better performance (eliminates one layer of assembly loading)
- ✅ Easier testing (no intermediate package dependencies)
✨ New Features
Integrated Cloud Functionality
The following components are now part of the core SourceFlow package:
Configuration
BusConfiguration- Fluent API for routing configurationIBusBootstrapConfiguration- Bootstrapper integrationICommandRoutingConfiguration- Command routing abstractionIEventRoutingConfiguration- Event routing abstractionIIdempotencyService- Duplicate message detectionInMemoryIdempotencyService- Default implementationIdempotencyConfigurationBuilder- Fluent API for idempotency configuration
Resilience
ICircuitBreaker- Circuit breaker pattern interfaceCircuitBreaker- Implementation with state managementCircuitBreakerOptions- Configuration optionsCircuitBreakerOpenException- Exception for open circuitsCircuitBreakerStateChangedEventArgs- State transition events
Security
IMessageEncryption- Message encryption abstractionSensitiveDataAttribute- Marks properties for encryptionSensitiveDataMasker- Automatic log maskingEncryptionOptions- Encryption configuration
Dead Letter Processing
IDeadLetterProcessor- Failed message handlingIDeadLetterStore- Failed message persistenceDeadLetterRecord- Failed message modelInMemoryDeadLetterStore- Default implementation
Observability
CloudActivitySource- OpenTelemetry activity sourceCloudMetrics- Standard cloud metricsCloudTelemetry- Centralized telemetry
Serialization
PolymorphicJsonConverter- Handles inheritance hierarchies
Idempotency Configuration Builder
New fluent API for configuring idempotency services:
// Entity Framework-based (multi-instance)
var idempotencyBuilder = new IdempotencyConfigurationBuilder()
.UseEFIdempotency(connectionString, cleanupIntervalMinutes: 60);
// In-memory (single-instance)
var idempotencyBuilder = new IdempotencyConfigurationBuilder()
.UseInMemory();
// Custom implementation
var idempotencyBuilder = new IdempotencyConfigurationBuilder()
.UseCustom<MyCustomIdempotencyService>();
// Apply configuration
idempotencyBuilder.Build(services);Builder Methods:
UseEFIdempotency(connectionString, cleanupIntervalMinutes)- Entity Framework-based (requires SourceFlow.Stores.EntityFramework package)UseInMemory()- In-memory implementationUseCustom<TImplementation>()- Custom implementation by typeUseCustom(factory)- Custom implementation with factory function
Enhanced AWS Integration
AWS cloud extension now supports explicit idempotency configuration:
services.UseSourceFlowAws(
options => { options.Region = RegionEndpoint.USEast1; },
bus => bus.Send.Command<CreateOrderCommand>(q => q.Queue("orders.fifo")),
configureIdempotency: services =>
{
services.AddSourceFlowIdempotency(connectionString);
});📚 Documentation Updates
New Documentation
- Cloud Core Consolidation Guide - Complete migration guide
- Cloud Message Idempotency Guide - Comprehensive idempotency setup guide
Updated Documentation
- SourceFlow Core - Updated with cloud functionality
- AWS Cloud Architecture - Updated with idempotency configuration
🐛 Bug Fixes
- None (this is a major architectural release)
🔧 Internal Changes
Project Structure
- Consolidated
src/SourceFlow.Cloud.Core/intosrc/SourceFlow/Cloud/ - Simplified dependency graph for cloud extensions
- Reduced NuGet package count
Build System
- Updated project references to remove Cloud.Core dependency
- Simplified build pipeline
- Reduced compilation time
📦 Package Dependencies
SourceFlow v2.0.0
- No new dependencies added
- Cloud functionality now integrated
SourceFlow.Cloud.AWS v2.0.0
- Depends on:
SourceFlow >= 2.0.0 - Removed:
SourceFlow.Cloud.Coredependency
🚀 Upgrade Path
For AWS Extension Users
If you're using the AWS cloud extension, no code changes are required. The consolidation is transparent to consumers of the cloud package.
📝 Notes
- This is a major version release due to breaking namespace changes
- The consolidation improves the overall architecture and developer experience
- All functionality from Cloud.Core is preserved in the main SourceFlow package
- AWS cloud extension remains a separate package with simplified dependencies
- Azure cloud integration will be available in a future release
🔗 Related Documentation
Version: 2.0.0
Date: 15th March 2026
Status: In Development
v1.0.0
Release Notes
[v1.0.0] * 29-11-2025
Core Framework (SourceFlow.Net)
- Complete event sourcing implementation with Domain-Driven Design (DDD) principles
- CQRS pattern implementation with command/query segregation
- Aggregate pattern for managing root entities within bounded contexts
- Saga orchestration for long-running transactions and workflow management
- Event-first design with comprehensive event sourcing foundation
- Command and event publishing/subscription infrastructure
- View model projection system for read-optimized data models
- Support for multiple .NET frameworks:
- .NET 10.0
- .NET 9.0
- .NET Standard 2.1
- .NET Standard 2.0
- .NET Framework 4.6.2
- OpenTelemetry integration for observability and tracing
- Dependency injection support via Microsoft.Extensions.DependencyInjection
- Structured logging support via Microsoft.Extensions.Logging
Entity Framework Store Provider (SourceFlow.Stores.EntityFramework)
ICommandStoreimplementation using Entity Framework CoreIEntityStoreimplementation using Entity Framework CoreIViewModelStoreimplementation using Entity Framework Core- Configurable connection strings per store type (separate or shared databases)
- Support for .NET 10.0, .NET 9.0, and .NET 8.0
- SQL Server database provider support
- Polly-based resilience and retry policies
- OpenTelemetry instrumentation for Entity Framework Core operations
Architecture & Patterns
- Clean architecture principles
- Separation of concerns between read and write models
- Event-driven communication between aggregates
- State preservation and consistency guarantees
- Extensible framework design for custom implementations
Documentation
- Comprehensive README with architecture diagrams
- Developer guide available on GitHub Wiki
- Package documentation and XML comments
- Architecture diagram showing complete system design
- Roadmap for future cloud provider support (v2.0.0)
Infrastructure
- NuGet package generation on build
- GitHub Actions CI/CD pipeline integration
- CodeQL security analysis
- Symbol packages for debugging support
- MIT License
v1.0.0-alpha.1
Release Notes:
- Targets -
.Net Framework 4.6.2,.Net Standard2.0&2.1,.Net 9.0.
Functionality
- Includes core functionality of the framework for
Event sourcingandCQRS.
For complete details please see documentation